diff --git a/.bumpversion.cfg b/.bumpversion.cfg index dcdb39db6989..19f1ac91e85a 100644 --- a/.bumpversion.cfg +++ b/.bumpversion.cfg @@ -1,5 +1,5 @@ [bumpversion] -current_version = 0.50.25 +current_version = 0.50.30 commit = False tag = False parse = (?P\d+)\.(?P\d+)\.(?P\d+)(\-[a-z]+)? diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 476fd613df7e..0c7b54bb6634 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -81,7 +81,7 @@ If this is a community PR, the Airbyte engineer reviewing this PR is responsible - Issue acceptance criteria met - PR name follows [PR naming conventions](https://docs.airbyte.com/contributing-to-airbyte/issues-and-pull-requests#pull-request-title-convention) - If adding a new generator, add it to the [list of scaffold modules being tested](https://github.com/airbytehq/airbyte/blob/master/airbyte-integrations/connector-templates/generator/build.gradle#L41) -- The generator test modules (all connectors with `-scaffold` in their name) have been updated with the latest scaffold by running `./gradlew :airbyte-integrations:connector-templates:generator:testScaffoldTemplates` then checking in your changes +- The generator test modules (all connectors with `-scaffold` in their name) have been updated with the latest scaffold by running `./gradlew :airbyte-integrations:connector-templates:generator:generateScaffolds` then checking in your changes - Documentation which references the generator is updated as needed diff --git a/.github/workflows/airbyte-ci-tests.yml b/.github/workflows/airbyte-ci-tests.yml index c5e5e6edb12b..0c5812a3bdd5 100644 --- a/.github/workflows/airbyte-ci-tests.yml +++ b/.github/workflows/airbyte-ci-tests.yml @@ -1,4 +1,4 @@ -name: Airbyte CI pipeline tests +name: Connector Ops CI - Pipeline Unit Test concurrency: group: ${{ github.workflow }}-${{ github.ref }} diff --git a/.github/workflows/cat-tests.yml b/.github/workflows/cat-tests.yml index 78b7ac86c3c4..97de1c1fda89 100644 --- a/.github/workflows/cat-tests.yml +++ b/.github/workflows/cat-tests.yml @@ -1,4 +1,4 @@ -name: CAT unit tests +name: Connector Ops CI - CAT Unit Tests concurrency: group: ${{ github.workflow }}-${{ github.ref }} diff --git a/.github/workflows/connectors_nightly_build.yml b/.github/workflows/connectors_nightly_build.yml index acd7d024e3bb..e34fd9837dd5 100644 --- a/.github/workflows/connectors_nightly_build.yml +++ b/.github/workflows/connectors_nightly_build.yml @@ -1,4 +1,4 @@ -name: Connectors nightly build +name: Connector Ops CI - Connectors Nightly Tests on: schedule: diff --git a/.github/workflows/connectors_tests.yml b/.github/workflows/connectors_tests.yml index 56820c787cc8..6fb35a6e9cea 100644 --- a/.github/workflows/connectors_tests.yml +++ b/.github/workflows/connectors_tests.yml @@ -1,4 +1,4 @@ -name: Connectors tests +name: Connector Ops CI - Connectors Acceptance Tests concurrency: group: ${{ github.workflow }}-${{ github.ref }} diff --git a/.github/workflows/connectors_weekly_build.yml b/.github/workflows/connectors_weekly_build.yml index 63ee82dfe646..6d88da4285c8 100644 --- a/.github/workflows/connectors_weekly_build.yml +++ b/.github/workflows/connectors_weekly_build.yml @@ -1,4 +1,4 @@ -name: Connectors weekly build +name: Connector Ops CI - Connectors Weekly Tests on: schedule: @@ -41,4 +41,4 @@ jobs: gcp_gsm_credentials: ${{ secrets.GCP_GSM_CREDENTIALS }} git_branch: ${{ steps.extract_branch.outputs.branch }} github_token: ${{ secrets.GITHUB_TOKEN }} - subcommand: "connectors ${{ inputs.test-connectors-options || '--concurrency=3 --support-level=community' }} test" + subcommand: "--show-dagger-logs connectors ${{ inputs.test-connectors-options || '--concurrency=3 --metadata-query=\"(data.ab_internal.ql > 100) & (data.ab_internal.sl < 200)\"' }} test" diff --git a/.github/workflows/create-release.yml b/.github/workflows/create-release.yml deleted file mode 100644 index 348fe691854a..000000000000 --- a/.github/workflows/create-release.yml +++ /dev/null @@ -1,73 +0,0 @@ -# This is an action that runs when an Airbyte version bump is merged into master. -# It fetches the changelog from the version bump PR and automatically creates a -# Release for the version bump. - -name: Create Airbyte GH Release - -on: - push: - branches: - - master - -jobs: - create-release: - if: startsWith(github.event.head_commit.message, 'Bump Airbyte version') - runs-on: ubuntu-latest - permissions: - contents: write - pull-requests: read - steps: - - name: Fetch Version Bump PR Body - id: fetch_pr_body - env: - COMMIT_ID: ${{ github.event.head_commit.id }} - shell: bash - run: |- - set -x - PR=$(curl \ - -H "Accept: application/vnd.github.v3+json" \ - -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}" \ - https://api.github.com/repos/${{ github.repository }}/commits/$COMMIT_ID/pulls) - # The printf helps escape characters so that jq can parse the output. - # The sed removes carriage returns so that the body is easier to parse later, and - # escapes backticks so that they are not executed as commands. - PR_BODY=$(printf '%s' "$PR" | jq '.[0].body' | sed 's/\\r//g' | sed 's/`/\\`/g') - echo "pr_body<> $GITHUB_ENV - echo "$PR_BODY" >> $GITHUB_ENV - echo "EOF" >> $GITHUB_ENV - - name: Extract Changelog - id: extract_changelog - shell: bash - run: |- - set -x - PR_BODY=${{ env.pr_body}} - if [[ $PR_BODY = "null" ]]; then - echo "No PR body exists for this commit, so a release cannot be generated." - exit 1 - fi - # this regex extracts just the changelog contents - if [[ $PR_BODY =~ Changelog:(\\n)*(.*)\\n\\n ]]; then - CHANGELOG="${BASH_REMATCH[2]}" - else - echo "PR body does not match the changelog extraction regex" - exit 1 - fi - # save CHANGELOG into a multiline env var on the action itself, since Github Actions do not support outputting multiline strings well - echo "CHANGELOG<> $GITHUB_ENV - echo -e "$CHANGELOG" >> $GITHUB_ENV - echo "EOF" >> $GITHUB_ENV - - name: Checkout Airbyte - uses: actions/checkout@v3 - - name: Get Version - id: get_version - shell: bash - run: | - VERSION=$(grep -w VERSION .env | cut -d"=" -f2) - echo VERSION=${VERSION} >> $GITHUB_OUTPUT - - name: Create Release - id: create_release - uses: ncipollo/release-action@v1 - with: - body: ${{ env.CHANGELOG }} - token: ${{ secrets.GITHUB_TOKEN }} - tag: v${{ steps.get_version.outputs.VERSION }} diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index aead5f00f06e..e30e4da8d8cd 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -102,10 +102,11 @@ jobs: with: ref: ${{ github.head_ref }} - - name: Cache Build Artifacts - uses: ./.github/actions/cache-build-artifacts - with: - cache-key: ${{ secrets.CACHE_VERSION }}-format + # Caching causes occasional failure of the checkPython step which can't find the venv + # - name: Cache Build Artifacts + # uses: ./.github/actions/cache-build-artifacts + # with: + # cache-key: ${{ secrets.CACHE_VERSION }}-format - uses: actions/setup-java@v3 with: @@ -141,12 +142,12 @@ jobs: - name: Remove any files that have been gitignored run: git ls-files -i -c --exclude-from=.gitignore | xargs -r git rm --cached - - name: Commit Formatting Changes - uses: stefanzweifel/git-auto-commit-action@v4 - with: - commit_message: Automated Commit - Formatting Changes - commit_user_name: Octavia Squidington III - commit_user_email: octavia-squidington-iii@users.noreply.github.com + # - name: Commit Formatting Changes + # uses: stefanzweifel/git-auto-commit-action@v4 + # with: + # commit_message: Automated Commit - Formatting Changes + # commit_user_name: Octavia Squidington III + # commit_user_email: octavia-squidington-iii@users.noreply.github.com ## BUILDS octavia-cli-build: @@ -398,7 +399,7 @@ jobs: - name: Generate Template scaffold uses: Wandalen/wretry.action@v1.0.42 with: - command: ./gradlew :airbyte-integrations:connector-templates:generator:testScaffoldTemplates --scan + command: ./gradlew :airbyte-integrations:connector-templates:generator:generateScaffolds --scan attempt_limit: 3 attempt_delay: 5000 # in ms diff --git a/.github/workflows/metadata_service_deploy_orchestrator_dagger.yml b/.github/workflows/metadata_service_deploy_orchestrator_dagger.yml index 2d36306392fc..0da841726893 100644 --- a/.github/workflows/metadata_service_deploy_orchestrator_dagger.yml +++ b/.github/workflows/metadata_service_deploy_orchestrator_dagger.yml @@ -1,4 +1,4 @@ -name: Connector metadata service deploy orchestrator +name: Connector Ops CI - Metadata Service Deploy Orchestrator on: workflow_dispatch: diff --git a/.github/workflows/metadata_service_tests_dagger.yml b/.github/workflows/metadata_service_tests_dagger.yml index 83117161d1b4..4af1a83ded50 100644 --- a/.github/workflows/metadata_service_tests_dagger.yml +++ b/.github/workflows/metadata_service_tests_dagger.yml @@ -1,4 +1,4 @@ -name: Connector metadata service CI +name: Connector Ops CI - Metadata Service Tests on: workflow_dispatch: diff --git a/.github/workflows/publish_connectors.yml b/.github/workflows/publish_connectors.yml index 566fea7f1024..62ffbd0cc6fc 100644 --- a/.github/workflows/publish_connectors.yml +++ b/.github/workflows/publish_connectors.yml @@ -1,4 +1,4 @@ -name: Publish connectors on merge to master +name: Connector Ops CI - Publish Connectors on: push: diff --git a/.github/workflows/run-qa-engine.yml b/.github/workflows/run-qa-engine.yml index fba479628190..6b7ae8b3ca37 100644 --- a/.github/workflows/run-qa-engine.yml +++ b/.github/workflows/run-qa-engine.yml @@ -1,4 +1,4 @@ -name: Run QA Engine +name: Connector Ops CI - QA Engine on: workflow_dispatch: diff --git a/.github/workflows/slash-commands.yml b/.github/workflows/slash-commands.yml index 8ca3c87f9280..1a630bdf00de 100644 --- a/.github/workflows/slash-commands.yml +++ b/.github/workflows/slash-commands.yml @@ -19,7 +19,7 @@ jobs: id: scd uses: peter-evans/slash-command-dispatch@v2 with: - token: ${{ secrets.GITHUB_TOKEN }} + token: ${{ secrets.GH_PAT_MAINTENANCE_OCTAVIA }} permission: write commands: | test diff --git a/.github/workflows/upload-metadata-files.yml b/.github/workflows/upload-metadata-files.yml index 0853f382a750..a3da50247748 100644 --- a/.github/workflows/upload-metadata-files.yml +++ b/.github/workflows/upload-metadata-files.yml @@ -1,4 +1,4 @@ -name: "Upload any Changed Metadata Files [Exceptional Use!]" +name: "Connector Ops CI - Upload Changed Metadata Files [Emergency Use!]" on: workflow_dispatch: diff --git a/.gitignore b/.gitignore index 56790f53bd9a..81e0331917c7 100644 --- a/.gitignore +++ b/.gitignore @@ -102,3 +102,6 @@ tools/ci_connector_ops/pipeline_reports/ # ignore local build scan uri output scan-journal.log + +# connectors' cache +*.sqlite diff --git a/airbyte-api/build.gradle b/airbyte-api/build.gradle index f08c7799436f..6fc0e73d0e88 100644 --- a/airbyte-api/build.gradle +++ b/airbyte-api/build.gradle @@ -7,8 +7,10 @@ plugins { def specFile = "$projectDir/src/main/openapi/config.yaml" +def generate = tasks.register('generate') + // Deprecated -- can be removed once airbyte-server is converted to use the per-domain endpoints generated by generateApiServer -task generateApiServerLegacy(type: GenerateTask) { +def generateApiServerLegacy = tasks.register('generateApiServerLegacy', GenerateTask) { def serverOutputDir = "$buildDir/generated/api/server" inputs.file specFile @@ -22,7 +24,7 @@ task generateApiServerLegacy(type: GenerateTask) { invokerPackage = "io.airbyte.api.invoker.generated" modelPackage = "io.airbyte.api.model.generated" - schemaMappings = [ + schemaMappings.set([ 'OAuthConfiguration' : 'com.fasterxml.jackson.databind.JsonNode', 'SourceDefinitionSpecification' : 'com.fasterxml.jackson.databind.JsonNode', 'SourceConfiguration' : 'com.fasterxml.jackson.databind.JsonNode', @@ -31,11 +33,11 @@ task generateApiServerLegacy(type: GenerateTask) { 'StreamJsonSchema' : 'com.fasterxml.jackson.databind.JsonNode', 'StateBlob' : 'com.fasterxml.jackson.databind.JsonNode', 'FieldSchema' : 'com.fasterxml.jackson.databind.JsonNode', - ] + ]) generateApiDocumentation = false - configOptions = [ + configOptions.set([ dateLibrary : "java8", generatePom : "false", interfaceOnly: "true", @@ -47,10 +49,13 @@ task generateApiServerLegacy(type: GenerateTask) { Feel free to read the conversation on https://github.com/airbytehq/airbyte/pull/13370 for more details. */ additionalModelTypeAnnotations: "\n@com.fasterxml.jackson.annotation.JsonInclude(com.fasterxml.jackson.annotation.JsonInclude.Include.NON_NULL)", - ] + ]) +} +generate.configure { + dependsOn generateApiServerLegacy } -task generateApiServer(type: GenerateTask) { +def generateApiServer = tasks.register('generateApiServer', GenerateTask) { def serverOutputDir = "$buildDir/generated/api/server" inputs.file specFile @@ -64,7 +69,7 @@ task generateApiServer(type: GenerateTask) { invokerPackage = "io.airbyte.api.invoker.generated" modelPackage = "io.airbyte.api.model.generated" - schemaMappings = [ + schemaMappings.set([ 'OAuthConfiguration' : 'com.fasterxml.jackson.databind.JsonNode', 'SourceDefinitionSpecification' : 'com.fasterxml.jackson.databind.JsonNode', 'SourceConfiguration' : 'com.fasterxml.jackson.databind.JsonNode', @@ -73,11 +78,11 @@ task generateApiServer(type: GenerateTask) { 'StreamJsonSchema' : 'com.fasterxml.jackson.databind.JsonNode', 'StateBlob' : 'com.fasterxml.jackson.databind.JsonNode', 'FieldSchema' : 'com.fasterxml.jackson.databind.JsonNode', - ] + ]) generateApiDocumentation = false - configOptions = [ + configOptions.set([ dateLibrary : "java8", generatePom : "false", interfaceOnly: "true", @@ -92,12 +97,13 @@ task generateApiServer(type: GenerateTask) { // Generate separate classes for each endpoint "domain" useTags: "true" - ] + ]) +} +generate.configure { + dependsOn generateApiServer } -compileJava.dependsOn tasks.generateApiServerLegacy, tasks.generateApiServer - -task generateApiClient(type: GenerateTask) { +def generateApiClient = tasks.register('generateApiClient', GenerateTask) { def clientOutputDir = "$buildDir/generated/api/client" inputs.file specFile @@ -111,7 +117,7 @@ task generateApiClient(type: GenerateTask) { invokerPackage = "io.airbyte.api.client.invoker.generated" modelPackage = "io.airbyte.api.client.model.generated" - schemaMappings = [ + schemaMappings.set([ 'OAuthConfiguration' : 'com.fasterxml.jackson.databind.JsonNode', 'SourceDefinitionSpecification' : 'com.fasterxml.jackson.databind.JsonNode', 'SourceConfiguration' : 'com.fasterxml.jackson.databind.JsonNode', @@ -120,21 +126,23 @@ task generateApiClient(type: GenerateTask) { 'StreamJsonSchema' : 'com.fasterxml.jackson.databind.JsonNode', 'StateBlob' : 'com.fasterxml.jackson.databind.JsonNode', 'FieldSchema' : 'com.fasterxml.jackson.databind.JsonNode', - ] + ]) library = "native" generateApiDocumentation = false - configOptions = [ + configOptions.set([ dateLibrary : "java8", generatePom : "false", interfaceOnly: "true" - ] + ]) +} +generate.configure { + dependsOn generateApiClient } -compileJava.dependsOn tasks.generateApiClient -task generateApiDocs(type: GenerateTask) { +def generateApiDocs = tasks.register('generateApiDocs', GenerateTask) { def docsOutputDir = "$buildDir/generated/api/docs" generatorName = "html" @@ -145,7 +153,7 @@ task generateApiDocs(type: GenerateTask) { invokerPackage = "io.airbyte.api.client.invoker.generated" modelPackage = "io.airbyte.api.client.model.generated" - schemaMappings = [ + schemaMappings.set([ 'OAuthConfiguration' : 'com.fasterxml.jackson.databind.JsonNode', 'SourceDefinitionSpecification' : 'com.fasterxml.jackson.databind.JsonNode', 'SourceConfiguration' : 'com.fasterxml.jackson.databind.JsonNode', @@ -154,15 +162,15 @@ task generateApiDocs(type: GenerateTask) { 'StreamJsonSchema' : 'com.fasterxml.jackson.databind.JsonNode', 'StateBlob' : 'com.fasterxml.jackson.databind.JsonNode', 'FieldSchema' : 'com.fasterxml.jackson.databind.JsonNode', - ] + ]) generateApiDocumentation = false - configOptions = [ + configOptions.set([ dateLibrary : "java8", generatePom : "false", interfaceOnly: "true" - ] + ]) doLast { def target = file(rootProject.file("docs/reference/api/generated-api-html")) @@ -176,7 +184,9 @@ task generateApiDocs(type: GenerateTask) { } } } -compileJava.dependsOn tasks.generateApiDocs +generate.configure { + dependsOn generateApiDocs +} dependencies { implementation group: 'com.fasterxml.jackson.datatype', name: 'jackson-datatype-jsr310' @@ -201,4 +211,6 @@ sourceSets { } } -Task publishArtifactsTask = getPublishArtifactsTask("$rootProject.ext.version", project) +tasks.named('compileJava').configure { + dependsOn generate +} diff --git a/airbyte-cdk/java/airbyte-cdk/build.gradle b/airbyte-cdk/java/airbyte-cdk/build.gradle index 8b7800baa7a1..1ea6db8a67f3 100644 --- a/airbyte-cdk/java/airbyte-cdk/build.gradle +++ b/airbyte-cdk/java/airbyte-cdk/build.gradle @@ -36,7 +36,9 @@ publishing { } // Adds publishToMavenLocal as final command in the list of 'build' tasks. -build.dependsOn(publishToMavenLocal) +tasks.named('build').configure { + dependsOn tasks.named('publishToMavenLocal') +} publishToMavenLocal { // Always re-publish the artifact to MavenLocal @@ -50,12 +52,15 @@ publishToMavenLocal { } } + // This task will be a no-op if CDK version does not end with '-SNAPSHOT'. -task publishSnapshotIfNeeded {} +def publishSnapshotIfNeeded = tasks.register('publishSnapshotIfNeeded') {} if (version.endsWith("-SNAPSHOT")) { logger.lifecycle("Version ${version} ends with '-SNAPSHOT'. Enqueing 'publishToMavenLocal'...") - publishSnapshotIfNeeded.dependsOn publishToMavenLocal + publishSnapshotIfNeeded.configure { + dependsOn publishToMavenLocal + } } else { logger.lifecycle("Version ${version} does not end with '-SNAPSHOT'. Skipping task 'publishToMavenLocal'.") } diff --git a/airbyte-cdk/python/.bumpversion.cfg b/airbyte-cdk/python/.bumpversion.cfg index 870a3b3182ab..e49f12893fda 100644 --- a/airbyte-cdk/python/.bumpversion.cfg +++ b/airbyte-cdk/python/.bumpversion.cfg @@ -1,5 +1,5 @@ [bumpversion] -current_version = 0.51.10 +current_version = 0.51.18 commit = False [bumpversion:file:setup.py] diff --git a/airbyte-cdk/python/CHANGELOG.md b/airbyte-cdk/python/CHANGELOG.md index 7e3e98b3ea6d..b7ee647133de 100644 --- a/airbyte-cdk/python/CHANGELOG.md +++ b/airbyte-cdk/python/CHANGELOG.md @@ -1,5 +1,29 @@ # Changelog +## 0.51.18 +Vector DB CDK adjustments: Prevent failures with big records and OpenAI embedder + +## 0.51.17 +[ISSUE #30353] File-Based CDK: remove file_type from stream config + +## 0.51.16 +Connector Builder: fix datetime format inference for str parsable as int but not isdecimal + +## 0.51.15 +Vector DB CDK: Add Azure OpenAI embedder + +## 0.51.14 +File-based CDK: improve error message for CSV parsing error + +## 0.51.13 +File-based CDK: migrated parsing error to config error to avoid sentry alerts + +## 0.51.12 +Add from-field embedder to vector db CDK + +## 0.51.11 +FIle-based CDK: Update spec and fix autogenerated headers with skip after + ## 0.51.10 Vector DB CDK adjustments: Fix id generation, improve config spec, add base test case diff --git a/airbyte-cdk/python/Dockerfile b/airbyte-cdk/python/Dockerfile index 02ae23f2cf54..c2f4a877797f 100644 --- a/airbyte-cdk/python/Dockerfile +++ b/airbyte-cdk/python/Dockerfile @@ -10,7 +10,7 @@ RUN apk --no-cache upgrade \ && apk --no-cache add tzdata build-base # install airbyte-cdk -RUN pip install --prefix=/install airbyte-cdk==0.51.10 +RUN pip install --prefix=/install airbyte-cdk==0.51.18 # build a clean environment FROM base @@ -32,5 +32,5 @@ ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] # needs to be the same as CDK -LABEL io.airbyte.version=0.51.10 +LABEL io.airbyte.version=0.51.18 LABEL io.airbyte.name=airbyte/source-declarative-manifest diff --git a/airbyte-cdk/python/README.md b/airbyte-cdk/python/README.md index 1efd6f48104a..b50fec2755e7 100644 --- a/airbyte-cdk/python/README.md +++ b/airbyte-cdk/python/README.md @@ -130,6 +130,27 @@ To run acceptance tests for multiple connectors using the local CDK, from the ro ./airbyte-cdk/python/bin/run-cats-with-local-cdk.sh -c ,,... ``` +#### When you don't have access to the API +There can be some time where you do not have access to the API (either because you don't have the credentials, network access, etc...) You will probably still want to do end-to-end testing at least once. In order to do so, you can emulate the server you would be reaching using a server stubbing tool. + +For example, using [mockserver](https://www.mock-server.com/), you can set up an expectation file like this: +``` +{ + "httpRequest": { + "method": "GET", + "path": "/data" + }, + "httpResponse": { + "body": "{\"data\": [{\"record_key\": 1}, {\"record_key\": 2}]}" + } +} +``` + +Assuming this file has been created at `secrets/mock_server_config/expectations.json`, running the following command will allow to match any requests on path `/data` to return the response defined in the expectation file: +`docker run -d --rm -v $(pwd)/secrets/mock_server_config:/config -p 8113:8113 --env MOCKSERVER_LOG_LEVEL=TRACE --env MOCKSERVER_SERVER_PORT=8113 --env MOCKSERVER_WATCH_INITIALIZATION_JSON=true --env MOCKSERVER_PERSISTED_EXPECTATIONS_PATH=/config/expectations.json --env MOCKSERVER_INITIALIZATION_JSON_PATH=/config/expectations.json mockserver/mockserver:5.15.0` + +HTTP requests to `localhost:8113/data` should now return the body defined in the expectations file. To test this, the implementer either has to change the code which defines the base URL for Python source or update the `url_base` from low-code. With the Connector Builder running in docker, you will have to use domain `host.docker.internal` instead of `localhost` as the requests are executed within docker. + #### Publishing a new version to PyPi 1. Open a PR diff --git a/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/README.md b/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/README.md index b5ee51df1f10..b5e84b6b9786 100644 --- a/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/README.md +++ b/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/README.md @@ -24,15 +24,12 @@ This is how the components interact: ┌─────────────┐ │MyDestination│ └┬────────────┘ -┌▽────────────────────┐ -│Writer │ -└┬──────────┬────────┬┘ -┌▽────────┐┌▽──────┐┌▽────────────────┐ -│MyIndexer││Batcher││DocumentProcessor│ -└┬────────┘└───────┘└─────────────────┘ -┌▽───────┐ -│Embedder│ -└────────┘ +┌▽───────────────────────────────┐ +│Writer │ +└┬─────────┬──────────┬────────┬─┘ +┌▽───────┐┌▽────────┐┌▽──────┐┌▽────────────────┐ +│Embedder││MyIndexer││Batcher││DocumentProcessor│ +└────────┘└─────────┘└───────┘└─────────────────┘ ``` Normally, only the `MyDestination` class and the `MyIndexer` class has to be implemented specifically for the destination. The other classes are provided as is by the helpers. \ No newline at end of file diff --git a/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/config.py b/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/config.py index f327097b2a72..608a8eae3323 100644 --- a/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/config.py +++ b/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/config.py @@ -49,6 +49,34 @@ class Config: } +class AzureOpenAIEmbeddingConfigModel(BaseModel): + mode: Literal["azure_openai"] = Field("azure_openai", const=True) + openai_key: str = Field( + ..., + title="Azure OpenAI API key", + airbyte_secret=True, + description="The API key for your Azure OpenAI resource. You can find this in the Azure portal under your Azure OpenAI resource", + ) + api_base: str = Field( + ..., + title="Resource base URL", + description="The base URL for your Azure OpenAI resource. You can find this in the Azure portal under your Azure OpenAI resource", + examples=["https://your-resource-name.openai.azure.com"], + ) + deployment: str = Field( + ..., + title="Deployment", + description="The deployment for your Azure OpenAI resource. You can find this in the Azure portal under your Azure OpenAI resource", + examples=["your-resource-name"], + ) + + class Config: + title = "Azure OpenAI" + schema_extra = { + "description": "Use the Azure-hosted OpenAI API to embed text. This option is using the text-embedding-ada-002 model with 1536 embedding dimensions." + } + + class FakeEmbeddingConfigModel(BaseModel): mode: Literal["fake"] = Field("fake", const=True) @@ -59,6 +87,22 @@ class Config: } +class FromFieldEmbeddingConfigModel(BaseModel): + mode: Literal["from_field"] = Field("from_field", const=True) + field_name: str = Field( + ..., title="Field name", description="Name of the field in the record that contains the embedding", examples=["embedding", "vector"] + ) + dimensions: int = Field( + ..., title="Embedding dimensions", description="The number of dimensions the embedding model is generating", examples=[1536, 384] + ) + + class Config: + title = "From Field" + schema_extra = { + "description": "Use a field in the record as the embedding. This is useful if you already have an embedding for your data and want to store it in the vector store." + } + + class CohereEmbeddingConfigModel(BaseModel): mode: Literal["cohere"] = Field("cohere", const=True) cohere_key: str = Field(..., title="Cohere API key", airbyte_secret=True) diff --git a/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/document_processor.py b/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/document_processor.py index c2596c1ec7d4..92d2153225f4 100644 --- a/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/document_processor.py +++ b/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/document_processor.py @@ -9,6 +9,7 @@ import dpath.util from airbyte_cdk.destinations.vector_db_based.config import ProcessingConfigModel from airbyte_cdk.models import AirbyteRecordMessage, AirbyteStream, ConfiguredAirbyteCatalog, ConfiguredAirbyteStream, DestinationSyncMode +from airbyte_cdk.utils.traced_exception import AirbyteTracedException, FailureType from langchain.document_loaders.base import Document from langchain.text_splitter import RecursiveCharacterTextSplitter from langchain.utils import stringify_dict @@ -21,8 +22,8 @@ class Chunk: page_content: str metadata: Dict[str, Any] - stream: str - namespace: Optional[str] = None + record: AirbyteRecordMessage + embedding: Optional[List[float]] = None class DocumentProcessor: @@ -66,11 +67,14 @@ def process(self, record: AirbyteRecordMessage) -> Tuple[List[Chunk], Optional[s """ doc = self._generate_document(record) if doc is None: - raise ValueError(f"Record {str(record.data)[:250]}... does not contain any text fields.") - chunks = [ - Chunk( - page_content=chunk_document.page_content, metadata=chunk_document.metadata, stream=record.stream, namespace=record.namespace + text_fields = ", ".join(self.text_fields) if self.text_fields else "all fields" + raise AirbyteTracedException( + internal_message="No text fields found in record", + message=f"Record {str(record.data)[:250]}... does not contain any of the configured text fields: {text_fields}. Please check your processing configuration, there has to be at least one text field set in each record.", + failure_type=FailureType.config_error, ) + chunks = [ + Chunk(page_content=chunk_document.page_content, metadata=chunk_document.metadata, record=record) for chunk_document in self._split_document(doc) ] id_to_delete = doc.metadata[METADATA_RECORD_ID_FIELD] if METADATA_RECORD_ID_FIELD in doc.metadata else None diff --git a/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/embedder.py b/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/embedder.py index 2ed33f2a6327..9757e0978dbe 100644 --- a/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/embedder.py +++ b/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/embedder.py @@ -5,8 +5,16 @@ from abc import ABC, abstractmethod from typing import List, Optional -from airbyte_cdk.destinations.vector_db_based.config import CohereEmbeddingConfigModel, FakeEmbeddingConfigModel, OpenAIEmbeddingConfigModel -from airbyte_cdk.destinations.vector_db_based.utils import format_exception +from airbyte_cdk.destinations.vector_db_based.config import ( + AzureOpenAIEmbeddingConfigModel, + CohereEmbeddingConfigModel, + FakeEmbeddingConfigModel, + FromFieldEmbeddingConfigModel, + OpenAIEmbeddingConfigModel, +) +from airbyte_cdk.destinations.vector_db_based.document_processor import Chunk +from airbyte_cdk.destinations.vector_db_based.utils import create_chunks, format_exception +from airbyte_cdk.utils.traced_exception import AirbyteTracedException, FailureType from langchain.embeddings.cohere import CohereEmbeddings from langchain.embeddings.fake import FakeEmbeddings from langchain.embeddings.openai import OpenAIEmbeddings @@ -17,7 +25,7 @@ class Embedder(ABC): Embedder is an abstract class that defines the interface for embedding text. The Indexer class uses the Embedder class to internally embed text - each indexer is responsible to pass the text of all documents to the embedder and store the resulting embeddings in the destination. - The destination connector is responsible to create an embedder instance and pass it to the indexer. + The destination connector is responsible to create an embedder instance and pass it to the writer. The CDK defines basic embedders that should be supported in each destination. It is possible to implement custom embedders for special destinations if needed. """ @@ -29,7 +37,11 @@ def check(self) -> Optional[str]: pass @abstractmethod - def embed_texts(self, texts: List[str]) -> List[List[float]]: + def embed_chunks(self, chunks: List[Chunk]) -> List[Optional[List[float]]]: + """ + Embed the text of each chunk and return the resulting embedding vectors. + If a chunk cannot be embedded or is configured to not be embedded, return None for that chunk. + """ pass @property @@ -40,12 +52,14 @@ def embedding_dimensions(self) -> int: OPEN_AI_VECTOR_SIZE = 1536 +OPEN_AI_TOKEN_LIMIT = 150_000 # limit of tokens per minute -class OpenAIEmbedder(Embedder): - def __init__(self, config: OpenAIEmbeddingConfigModel): + +class BaseOpenAIEmbedder(Embedder): + def __init__(self, embeddings: OpenAIEmbeddings, chunk_size: int): super().__init__() - # Client is set internally - self.embeddings = OpenAIEmbeddings(openai_api_key=config.openai_key, chunk_size=8191, max_retries=15) # type: ignore + self.embeddings = embeddings + self.chunk_size = chunk_size def check(self) -> Optional[str]: try: @@ -54,8 +68,21 @@ def check(self) -> Optional[str]: return format_exception(e) return None - def embed_texts(self, texts: List[str]) -> List[List[float]]: - return self.embeddings.embed_documents(texts) + def embed_chunks(self, chunks: List[Chunk]) -> List[List[float]]: + """ + Embed the text of each chunk and return the resulting embedding vectors. + + As the OpenAI API will fail if more than the per-minute limit worth of tokens is sent at once, we split the request into batches and embed each batch separately. + It's still possible to run into the rate limit between each embed call because the available token budget hasn't recovered between the calls, + but the built-in retry mechanism of the OpenAI client handles that. + """ + # Each chunk can hold at most self.chunk_size tokens, so tokens-per-minute by maximum tokens per chunk is the number of chunks that can be embedded at once without exhausting the limit in a single request + embedding_batch_size = OPEN_AI_TOKEN_LIMIT // self.chunk_size + batches = create_chunks(chunks, batch_size=embedding_batch_size) + embeddings = [] + for batch in batches: + embeddings.extend(self.embeddings.embed_documents([chunk.page_content for chunk in batch])) + return embeddings @property def embedding_dimensions(self) -> int: @@ -63,6 +90,16 @@ def embedding_dimensions(self) -> int: return OPEN_AI_VECTOR_SIZE +class OpenAIEmbedder(BaseOpenAIEmbedder): + def __init__(self, config: OpenAIEmbeddingConfigModel, chunk_size: int): + super().__init__(OpenAIEmbeddings(openai_api_key=config.openai_key, chunk_size=8191, max_retries=15), chunk_size) # type: ignore + + +class AzureOpenAIEmbedder(BaseOpenAIEmbedder): + def __init__(self, config: AzureOpenAIEmbeddingConfigModel, chunk_size: int): + super().__init__(OpenAIEmbeddings(openai_api_key=config.openai_key, chunk_size=8191, max_retries=15, openai_api_type="azure", openai_api_version="2023-05-15", openai_api_base=config.api_base, deployment=config.deployment), chunk_size) # type: ignore + + COHERE_VECTOR_SIZE = 1024 @@ -79,8 +116,8 @@ def check(self) -> Optional[str]: return format_exception(e) return None - def embed_texts(self, texts: List[str]) -> List[List[float]]: - return self.embeddings.embed_documents(texts) + def embed_chunks(self, chunks: List[Chunk]) -> List[List[float]]: + return self.embeddings.embed_documents([chunk.page_content for chunk in chunks]) @property def embedding_dimensions(self) -> int: @@ -100,10 +137,54 @@ def check(self) -> Optional[str]: return format_exception(e) return None - def embed_texts(self, texts: List[str]) -> List[List[float]]: - return self.embeddings.embed_documents(texts) + def embed_chunks(self, chunks: List[Chunk]) -> List[List[float]]: + return self.embeddings.embed_documents([chunk.page_content for chunk in chunks]) @property def embedding_dimensions(self) -> int: # use same vector size as for OpenAI embeddings to keep it realistic return OPEN_AI_VECTOR_SIZE + + +class FromFieldEmbedder(Embedder): + def __init__(self, config: FromFieldEmbeddingConfigModel): + super().__init__() + self.config = config + + def check(self) -> Optional[str]: + return None + + def embed_chunks(self, chunks: List[Chunk]) -> List[List[float]]: + """ + From each chunk, pull the embedding from the field specified in the config. + Check that the field exists, is a list of numbers and is the correct size. If not, raise an AirbyteTracedException explaining the problem. + """ + embeddings = [] + for chunk in chunks: + data = chunk.record.data + if self.config.field_name not in data: + raise AirbyteTracedException( + internal_message="Embedding vector field not found", + failure_type=FailureType.config_error, + message=f"Record {str(data)[:250]}... in stream {chunk.record.stream} does not contain embedding vector field {self.config.field_name}. Please check your embedding configuration, the embedding vector field has to be set correctly on every record.", + ) + field = data[self.config.field_name] + if not isinstance(field, list) or not all(isinstance(x, (int, float)) for x in field): + raise AirbyteTracedException( + internal_message="Embedding vector field not a list of numbers", + failure_type=FailureType.config_error, + message=f"Record {str(data)[:250]}... in stream {chunk.record.stream} does contain embedding vector field {self.config.field_name}, but it is not a list of numbers. Please check your embedding configuration, the embedding vector field has to be a list of numbers of length {self.config.dimensions} on every record.", + ) + if len(field) != self.config.dimensions: + raise AirbyteTracedException( + internal_message="Embedding vector field has wrong length", + failure_type=FailureType.config_error, + message=f"Record {str(data)[:250]}... in stream {chunk.record.stream} does contain embedding vector field {self.config.field_name}, but it has length {len(field)} instead of the configured {self.config.dimensions}. Please check your embedding configuration, the embedding vector field has to be a list of numbers of length {self.config.dimensions} on every record.", + ) + embeddings.append(field) + + return embeddings + + @property + def embedding_dimensions(self) -> int: + return self.config.dimensions diff --git a/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/indexer.py b/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/indexer.py index 28514bb27fb5..7ce883cb3b7a 100644 --- a/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/indexer.py +++ b/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/indexer.py @@ -7,7 +7,6 @@ from typing import Any, Generator, Iterable, List, Optional, Tuple, TypeVar from airbyte_cdk.destinations.vector_db_based.document_processor import Chunk -from airbyte_cdk.destinations.vector_db_based.embedder import Embedder from airbyte_cdk.models import AirbyteMessage, ConfiguredAirbyteCatalog @@ -19,9 +18,8 @@ class Indexer(ABC): In a destination connector, implement a custom indexer by extending this class and implementing the abstract methods. """ - def __init__(self, config: Any, embedder: Embedder): + def __init__(self, config: Any): self.config = config - self.embedder = embedder pass def pre_sync(self, catalog: ConfiguredAirbyteCatalog) -> None: diff --git a/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/test_utils.py b/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/test_utils.py index 7cda46f4882c..7f8cfe5fbd8a 100644 --- a/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/test_utils.py +++ b/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/test_utils.py @@ -48,6 +48,6 @@ def _record(self, stream: str, str_value: str, int_value: int) -> AirbyteMessage type=Type.RECORD, record=AirbyteRecordMessage(stream=stream, data={"str_col": str_value, "int_col": int_value}, emitted_at=0) ) - def setUp(self): + def setUp(self) -> None: with open("secrets/config.json", "r") as f: self.config = json.loads(f.read()) diff --git a/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/utils.py b/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/utils.py index 320f400c01f9..03310e7a5706 100644 --- a/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/utils.py +++ b/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/utils.py @@ -2,8 +2,18 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # +import itertools import traceback def format_exception(exception: Exception) -> str: return str(exception) + "\n" + "".join(traceback.TracebackException.from_exception(exception).format()) + + +def create_chunks(iterable, batch_size): + """A helper function to break an iterable into chunks of size batch_size.""" + it = iter(iterable) + chunk = tuple(itertools.islice(it, batch_size)) + while chunk: + yield chunk + chunk = tuple(itertools.islice(it, batch_size)) diff --git a/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/writer.py b/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/writer.py index 3410db5dfee6..9e1d26df0e89 100644 --- a/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/writer.py +++ b/airbyte-cdk/python/airbyte_cdk/destinations/vector_db_based/writer.py @@ -8,24 +8,27 @@ from airbyte_cdk.destinations.vector_db_based.batcher import Batcher from airbyte_cdk.destinations.vector_db_based.config import ProcessingConfigModel from airbyte_cdk.destinations.vector_db_based.document_processor import Chunk, DocumentProcessor +from airbyte_cdk.destinations.vector_db_based.embedder import Embedder from airbyte_cdk.destinations.vector_db_based.indexer import Indexer from airbyte_cdk.models import AirbyteMessage, AirbyteRecordMessage, ConfiguredAirbyteCatalog, Type class Writer: """ - The Writer class is orchestrating the document processor, the batcher and the indexer: + The Writer class is orchestrating the document processor, the batcher, the embedder and the indexer: * Incoming records are collected using the batcher * The document processor generates documents from all records in the batch - * The indexer indexes the resulting documents in the destination + * The embedder embeds the documents + * The indexer indexes the resulting documents and their embeddings in the destination The destination connector is responsible to create a writer instance and pass the input messages iterable to the write method. The batch size can be configured by the destination connector to give the freedom of either letting the user configure it or hardcoding it to a sensible value depending on the destination. """ - def __init__(self, processing_config: ProcessingConfigModel, indexer: Indexer, batch_size: int) -> None: + def __init__(self, processing_config: ProcessingConfigModel, indexer: Indexer, embedder: Embedder, batch_size: int) -> None: self.processing_config = processing_config self.indexer = indexer + self.embedder = embedder self.batcher = Batcher(batch_size, lambda batch: self._process_batch(batch)) def _process_batch(self, batch: List[AirbyteRecordMessage]) -> None: @@ -36,6 +39,9 @@ def _process_batch(self, batch: List[AirbyteRecordMessage]) -> None: documents.extend(record_documents) if record_id_to_delete is not None: ids_to_delete.append(record_id_to_delete) + embeddings = self.embedder.embed_chunks(documents) + for i, document in enumerate(documents): + document.embedding = embeddings[i] self.indexer.index(documents, ids_to_delete) def write(self, configured_catalog: ConfiguredAirbyteCatalog, input_messages: Iterable[AirbyteMessage]) -> Iterable[AirbyteMessage]: diff --git a/airbyte-cdk/python/airbyte_cdk/sources/abstract_source.py b/airbyte-cdk/python/airbyte_cdk/sources/abstract_source.py index 29c120d43145..f05c4bbe5cfc 100644 --- a/airbyte-cdk/python/airbyte_cdk/sources/abstract_source.py +++ b/airbyte-cdk/python/airbyte_cdk/sources/abstract_source.py @@ -22,8 +22,6 @@ from airbyte_cdk.sources.message import MessageRepository from airbyte_cdk.sources.source import Source from airbyte_cdk.sources.streams import Stream -from airbyte_cdk.sources.streams.abstract_stream import AbstractStream -from airbyte_cdk.sources.streams.concurrent.concurrent_stream import ConcurrentStream from airbyte_cdk.sources.streams.core import StreamData from airbyte_cdk.sources.streams.http.http import HttpStream from airbyte_cdk.sources.utils.record_helper import stream_data_to_airbyte_message @@ -54,7 +52,7 @@ def check_connection(self, logger: logging.Logger, config: Mapping[str, Any]) -> """ @abstractmethod - def streams(self, config: Mapping[str, Any]) -> List[AbstractStream]: + def streams(self, config: Mapping[str, Any]) -> List[Stream]: """ :param config: The user-provided configuration as specified by the source's spec. Any stream construction related operation should happen here. @@ -62,7 +60,7 @@ def streams(self, config: Mapping[str, Any]) -> List[AbstractStream]: """ # Stream name to instance map for applying output object transformation - _stream_to_instance_map: Dict[str, AbstractStream] = {} + _stream_to_instance_map: Dict[str, Stream] = {} _slice_logger: SliceLogger = DebugSliceLogger() @property @@ -153,7 +151,7 @@ def per_stream_state_enabled(self) -> bool: def _read_stream( self, logger: logging.Logger, - stream_instance: AbstractStream, + stream_instance: Stream, configured_stream: ConfiguredAirbyteStream, state_manager: ConnectorStateManager, internal_config: InternalConfig, @@ -180,13 +178,9 @@ def _read_stream( use_incremental = configured_stream.sync_mode == SyncMode.incremental and stream_instance.supports_incremental if use_incremental: - if isinstance(stream_instance, ConcurrentStream): - raise ValueError( - f"ConcurrentStream do not support incremental sync yet. Please use a different stream type for {stream_instance.name}" - ) record_iterator = self._read_incremental( logger, - stream_instance, # type: ignore # stream_instance is a Stream if it is not a ConcurrentStream + stream_instance, configured_stream, state_manager, internal_config, @@ -290,12 +284,30 @@ def _emit_queued_messages(self) -> Iterable[AirbyteMessage]: def _read_full_refresh( self, logger: logging.Logger, - stream_instance: AbstractStream, + stream_instance: Stream, configured_stream: ConfiguredAirbyteStream, internal_config: InternalConfig, ) -> Iterator[AirbyteMessage]: - for data_or_message in stream_instance.read(configured_stream.cursor_field, logger, self._slice_logger, internal_config): - yield self._get_message(data_or_message, stream_instance) + slices = stream_instance.stream_slices(sync_mode=SyncMode.full_refresh, cursor_field=configured_stream.cursor_field) + logger.debug( + f"Processing stream slices for {configured_stream.stream.name} (sync_mode: full_refresh)", extra={"stream_slices": slices} + ) + total_records_counter = 0 + for _slice in slices: + if self._slice_logger.should_log_slice_message(logger): + yield self._slice_logger.create_slice_log_message(_slice) + record_data_or_messages = stream_instance.read_records( + stream_slice=_slice, + sync_mode=SyncMode.full_refresh, + cursor_field=configured_stream.cursor_field, + ) + for record_data_or_message in record_data_or_messages: + message = self._get_message(record_data_or_message, stream_instance) + yield message + if message.type == MessageType.RECORD: + total_records_counter += 1 + if internal_config.is_limit_reached(total_records_counter): + return def _checkpoint_state(self, stream: Stream, stream_state: Mapping[str, Any], state_manager: ConnectorStateManager) -> AirbyteMessage: # First attempt to retrieve the current state using the stream's state property. We receive an AttributeError if the state @@ -309,7 +321,7 @@ def _checkpoint_state(self, stream: Stream, stream_state: Mapping[str, Any], sta return state_manager.create_state_message(stream.name, stream.namespace, send_per_stream_state=self.per_stream_state_enabled) @staticmethod - def _apply_log_level_to_stream_logger(logger: logging.Logger, stream_instance: AbstractStream) -> None: + def _apply_log_level_to_stream_logger(logger: logging.Logger, stream_instance: Stream) -> None: """ Necessary because we use different loggers at the source and stream levels. We must apply the source's log level to each stream's logger. @@ -317,7 +329,7 @@ def _apply_log_level_to_stream_logger(logger: logging.Logger, stream_instance: A if hasattr(logger, "level"): stream_instance.logger.setLevel(logger.level) - def _get_message(self, record_data_or_message: Union[StreamData, AirbyteMessage], stream: AbstractStream) -> AirbyteMessage: + def _get_message(self, record_data_or_message: Union[StreamData, AirbyteMessage], stream: Stream) -> AirbyteMessage: """ Converts the input to an AirbyteMessage if it is a StreamData. Returns the input as is if it is already an AirbyteMessage """ diff --git a/airbyte-cdk/python/airbyte_cdk/sources/declarative/models/declarative_component_schema.py b/airbyte-cdk/python/airbyte_cdk/sources/declarative/models/declarative_component_schema.py index 24e3a907b115..c790291e9fc0 100644 --- a/airbyte-cdk/python/airbyte_cdk/sources/declarative/models/declarative_component_schema.py +++ b/airbyte-cdk/python/airbyte_cdk/sources/declarative/models/declarative_component_schema.py @@ -11,12 +11,12 @@ class AddedFieldDefinition(BaseModel): - type: Literal["AddedFieldDefinition"] + type: Literal['AddedFieldDefinition'] path: List[str] = Field( ..., - description="List of strings defining the path where to add the value on the record.", - examples=[["segment_id"], ["metadata", "segment_id"]], - title="Path", + description='List of strings defining the path where to add the value on the record.', + examples=[['segment_id'], ['metadata', 'segment_id']], + title='Path', ) value: str = Field( ..., @@ -26,601 +26,607 @@ class AddedFieldDefinition(BaseModel): "{{ record['MetaData']['LastUpdatedTime'] }}", "{{ stream_partition['segment_id'] }}", ], - title="Value", + title='Value', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class AddFields(BaseModel): - type: Literal["AddFields"] + type: Literal['AddFields'] fields: List[AddedFieldDefinition] = Field( ..., - description="List of transformations (path and corresponding value) that will be added to the record.", - title="Fields", + description='List of transformations (path and corresponding value) that will be added to the record.', + title='Fields', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class AuthFlowType(Enum): - oauth2_0 = "oauth2.0" - oauth1_0 = "oauth1.0" + oauth2_0 = 'oauth2.0' + oauth1_0 = 'oauth1.0' class BasicHttpAuthenticator(BaseModel): - type: Literal["BasicHttpAuthenticator"] + type: Literal['BasicHttpAuthenticator'] username: str = Field( ..., - description="The username that will be combined with the password, base64 encoded and used to make requests. Fill it in the user inputs.", + description='The username that will be combined with the password, base64 encoded and used to make requests. Fill it in the user inputs.', examples=["{{ config['username'] }}", "{{ config['api_key'] }}"], - title="Username", + title='Username', ) password: Optional[str] = Field( - "", - description="The password that will be combined with the username, base64 encoded and used to make requests. Fill it in the user inputs.", - examples=["{{ config['password'] }}", ""], - title="Password", + '', + description='The password that will be combined with the username, base64 encoded and used to make requests. Fill it in the user inputs.', + examples=["{{ config['password'] }}", ''], + title='Password', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class BearerAuthenticator(BaseModel): - type: Literal["BearerAuthenticator"] + type: Literal['BearerAuthenticator'] api_token: str = Field( ..., - description="Token to inject as request header for authenticating with the API.", + description='Token to inject as request header for authenticating with the API.', examples=["{{ config['api_key'] }}", "{{ config['token'] }}"], - title="Bearer Token", + title='Bearer Token', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class CheckStream(BaseModel): - type: Literal["CheckStream"] + type: Literal['CheckStream'] stream_names: List[str] = Field( ..., - description="Names of the streams to try reading from when running a check operation.", - examples=[["users"], ["users", "contacts"]], - title="Stream Names", + description='Names of the streams to try reading from when running a check operation.', + examples=[['users'], ['users', 'contacts']], + title='Stream Names', ) class ConstantBackoffStrategy(BaseModel): - type: Literal["ConstantBackoffStrategy"] + type: Literal['ConstantBackoffStrategy'] backoff_time_in_seconds: Union[float, str] = Field( ..., - description="Backoff time in seconds.", + description='Backoff time in seconds.', examples=[30, 30.5, "{{ config['backoff_time'] }}"], - title="Backoff Time", + title='Backoff Time', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class CustomAuthenticator(BaseModel): class Config: extra = Extra.allow - type: Literal["CustomAuthenticator"] + type: Literal['CustomAuthenticator'] class_name: str = Field( ..., - description="Fully-qualified name of the class that will be implementing the custom authentication strategy. Has to be a sub class of DeclarativeAuthenticator. The format is `source_..`.", - examples=["source_railz.components.ShortLivedTokenAuthenticator"], - title="Class Name", + description='Fully-qualified name of the class that will be implementing the custom authentication strategy. Has to be a sub class of DeclarativeAuthenticator. The format is `source_..`.', + examples=['source_railz.components.ShortLivedTokenAuthenticator'], + title='Class Name', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class CustomBackoffStrategy(BaseModel): class Config: extra = Extra.allow - type: Literal["CustomBackoffStrategy"] + type: Literal['CustomBackoffStrategy'] class_name: str = Field( ..., - description="Fully-qualified name of the class that will be implementing the custom backoff strategy. The format is `source_..`.", - examples=["source_railz.components.MyCustomBackoffStrategy"], - title="Class Name", + description='Fully-qualified name of the class that will be implementing the custom backoff strategy. The format is `source_..`.', + examples=['source_railz.components.MyCustomBackoffStrategy'], + title='Class Name', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class CustomErrorHandler(BaseModel): class Config: extra = Extra.allow - type: Literal["CustomErrorHandler"] + type: Literal['CustomErrorHandler'] class_name: str = Field( ..., - description="Fully-qualified name of the class that will be implementing the custom error handler. The format is `source_..`.", - examples=["source_railz.components.MyCustomErrorHandler"], - title="Class Name", + description='Fully-qualified name of the class that will be implementing the custom error handler. The format is `source_..`.', + examples=['source_railz.components.MyCustomErrorHandler'], + title='Class Name', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class CustomIncrementalSync(BaseModel): class Config: extra = Extra.allow - type: Literal["CustomIncrementalSync"] + type: Literal['CustomIncrementalSync'] class_name: str = Field( ..., - description="Fully-qualified name of the class that will be implementing the custom incremental sync. The format is `source_..`.", - examples=["source_railz.components.MyCustomIncrementalSync"], - title="Class Name", + description='Fully-qualified name of the class that will be implementing the custom incremental sync. The format is `source_..`.', + examples=['source_railz.components.MyCustomIncrementalSync'], + title='Class Name', ) cursor_field: str = Field( ..., - description="The location of the value on a record that will be used as a bookmark during sync.", + description='The location of the value on a record that will be used as a bookmark during sync.', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class CustomPaginationStrategy(BaseModel): class Config: extra = Extra.allow - type: Literal["CustomPaginationStrategy"] + type: Literal['CustomPaginationStrategy'] class_name: str = Field( ..., - description="Fully-qualified name of the class that will be implementing the custom pagination strategy. The format is `source_..`.", - examples=["source_railz.components.MyCustomPaginationStrategy"], - title="Class Name", + description='Fully-qualified name of the class that will be implementing the custom pagination strategy. The format is `source_..`.', + examples=['source_railz.components.MyCustomPaginationStrategy'], + title='Class Name', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class CustomRecordExtractor(BaseModel): class Config: extra = Extra.allow - type: Literal["CustomRecordExtractor"] + type: Literal['CustomRecordExtractor'] class_name: str = Field( ..., - description="Fully-qualified name of the class that will be implementing the custom record extraction strategy. The format is `source_..`.", - examples=["source_railz.components.MyCustomRecordExtractor"], - title="Class Name", + description='Fully-qualified name of the class that will be implementing the custom record extraction strategy. The format is `source_..`.', + examples=['source_railz.components.MyCustomRecordExtractor'], + title='Class Name', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class CustomRequester(BaseModel): class Config: extra = Extra.allow - type: Literal["CustomRequester"] + type: Literal['CustomRequester'] class_name: str = Field( ..., - description="Fully-qualified name of the class that will be implementing the custom requester strategy. The format is `source_..`.", - examples=["source_railz.components.MyCustomRecordExtractor"], - title="Class Name", + description='Fully-qualified name of the class that will be implementing the custom requester strategy. The format is `source_..`.', + examples=['source_railz.components.MyCustomRecordExtractor'], + title='Class Name', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class CustomRetriever(BaseModel): class Config: extra = Extra.allow - type: Literal["CustomRetriever"] + type: Literal['CustomRetriever'] class_name: str = Field( ..., - description="Fully-qualified name of the class that will be implementing the custom retriever strategy. The format is `source_..`.", - examples=["source_railz.components.MyCustomRetriever"], - title="Class Name", + description='Fully-qualified name of the class that will be implementing the custom retriever strategy. The format is `source_..`.', + examples=['source_railz.components.MyCustomRetriever'], + title='Class Name', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class CustomPartitionRouter(BaseModel): class Config: extra = Extra.allow - type: Literal["CustomPartitionRouter"] + type: Literal['CustomPartitionRouter'] class_name: str = Field( ..., - description="Fully-qualified name of the class that will be implementing the custom partition router. The format is `source_..`.", - examples=["source_railz.components.MyCustomPartitionRouter"], - title="Class Name", + description='Fully-qualified name of the class that will be implementing the custom partition router. The format is `source_..`.', + examples=['source_railz.components.MyCustomPartitionRouter'], + title='Class Name', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class CustomTransformation(BaseModel): class Config: extra = Extra.allow - type: Literal["CustomTransformation"] + type: Literal['CustomTransformation'] class_name: str = Field( ..., - description="Fully-qualified name of the class that will be implementing the custom transformation. The format is `source_..`.", - examples=["source_railz.components.MyCustomTransformation"], - title="Class Name", + description='Fully-qualified name of the class that will be implementing the custom transformation. The format is `source_..`.', + examples=['source_railz.components.MyCustomTransformation'], + title='Class Name', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class RefreshTokenUpdater(BaseModel): refresh_token_name: Optional[str] = Field( - "refresh_token", - description="The name of the property which contains the updated refresh token in the response from the token refresh endpoint.", - examples=["refresh_token"], - title="Refresh Token Property Name", + 'refresh_token', + description='The name of the property which contains the updated refresh token in the response from the token refresh endpoint.', + examples=['refresh_token'], + title='Refresh Token Property Name', ) access_token_config_path: Optional[List[str]] = Field( - ["credentials", "access_token"], - description="Config path to the access token. Make sure the field actually exists in the config.", - examples=[["credentials", "access_token"], ["access_token"]], - title="Config Path To Access Token", + ['credentials', 'access_token'], + description='Config path to the access token. Make sure the field actually exists in the config.', + examples=[['credentials', 'access_token'], ['access_token']], + title='Config Path To Access Token', ) refresh_token_config_path: Optional[List[str]] = Field( - ["credentials", "refresh_token"], - description="Config path to the access token. Make sure the field actually exists in the config.", - examples=[["credentials", "refresh_token"], ["refresh_token"]], - title="Config Path To Refresh Token", + ['credentials', 'refresh_token'], + description='Config path to the access token. Make sure the field actually exists in the config.', + examples=[['credentials', 'refresh_token'], ['refresh_token']], + title='Config Path To Refresh Token', ) token_expiry_date_config_path: Optional[List[str]] = Field( - ["credentials", "token_expiry_date"], - description="Config path to the expiry date. Make sure actually exists in the config.", - examples=[["credentials", "token_expiry_date"]], - title="Config Path To Expiry Date", + ['credentials', 'token_expiry_date'], + description='Config path to the expiry date. Make sure actually exists in the config.', + examples=[['credentials', 'token_expiry_date']], + title='Config Path To Expiry Date', ) class OAuthAuthenticator(BaseModel): - type: Literal["OAuthAuthenticator"] + type: Literal['OAuthAuthenticator'] client_id: str = Field( ..., - description="The OAuth client ID. Fill it in the user inputs.", + description='The OAuth client ID. Fill it in the user inputs.', examples=["{{ config['client_id }}", "{{ config['credentials']['client_id }}"], - title="Client ID", + title='Client ID', ) client_secret: str = Field( ..., - description="The OAuth client secret. Fill it in the user inputs.", + description='The OAuth client secret. Fill it in the user inputs.', examples=[ "{{ config['client_secret }}", "{{ config['credentials']['client_secret }}", ], - title="Client Secret", + title='Client Secret', ) refresh_token: Optional[str] = Field( None, - description="Credential artifact used to get a new access token.", + description='Credential artifact used to get a new access token.', examples=[ "{{ config['refresh_token'] }}", "{{ config['credentials]['refresh_token'] }}", ], - title="Refresh Token", + title='Refresh Token', ) token_refresh_endpoint: str = Field( ..., - description="The full URL to call to obtain a new access token.", - examples=["https://connect.squareup.com/oauth2/token"], - title="Token Refresh Endpoint", + description='The full URL to call to obtain a new access token.', + examples=['https://connect.squareup.com/oauth2/token'], + title='Token Refresh Endpoint', ) access_token_name: Optional[str] = Field( - "access_token", - description="The name of the property which contains the access token in the response from the token refresh endpoint.", - examples=["access_token"], - title="Access Token Property Name", + 'access_token', + description='The name of the property which contains the access token in the response from the token refresh endpoint.', + examples=['access_token'], + title='Access Token Property Name', ) expires_in_name: Optional[str] = Field( - "expires_in", - description="The name of the property which contains the expiry date in the response from the token refresh endpoint.", - examples=["expires_in"], - title="Token Expiry Property Name", + 'expires_in', + description='The name of the property which contains the expiry date in the response from the token refresh endpoint.', + examples=['expires_in'], + title='Token Expiry Property Name', ) grant_type: Optional[str] = Field( - "refresh_token", - description="Specifies the OAuth2 grant type. If set to refresh_token, the refresh_token needs to be provided as well. For client_credentials, only client id and secret are required. Other grant types are not officially supported.", - examples=["refresh_token", "client_credentials"], - title="Grant Type", + 'refresh_token', + description='Specifies the OAuth2 grant type. If set to refresh_token, the refresh_token needs to be provided as well. For client_credentials, only client id and secret are required. Other grant types are not officially supported.', + examples=['refresh_token', 'client_credentials'], + title='Grant Type', ) refresh_request_body: Optional[Dict[str, Any]] = Field( None, - description="Body of the request sent to get a new access token.", + description='Body of the request sent to get a new access token.', examples=[ { - "applicationId": "{{ config['application_id'] }}", - "applicationSecret": "{{ config['application_secret'] }}", - "token": "{{ config['token'] }}", + 'applicationId': "{{ config['application_id'] }}", + 'applicationSecret': "{{ config['application_secret'] }}", + 'token': "{{ config['token'] }}", } ], - title="Refresh Request Body", + title='Refresh Request Body', ) scopes: Optional[List[str]] = Field( None, - description="List of scopes that should be granted to the access token.", - examples=[["crm.list.read", "crm.objects.contacts.read", "crm.schema.contacts.read"]], - title="Scopes", + description='List of scopes that should be granted to the access token.', + examples=[ + ['crm.list.read', 'crm.objects.contacts.read', 'crm.schema.contacts.read'] + ], + title='Scopes', ) token_expiry_date: Optional[str] = Field( None, - description="The access token expiry date.", - examples=["2023-04-06T07:12:10.421833+00:00", 1680842386], - title="Token Expiry Date", + description='The access token expiry date.', + examples=['2023-04-06T07:12:10.421833+00:00', 1680842386], + title='Token Expiry Date', ) token_expiry_date_format: Optional[str] = Field( None, - description="The format of the time to expiration datetime. Provide it if the time is returned as a date-time string instead of seconds.", - examples=["%Y-%m-%d %H:%M:%S.%f+00:00"], - title="Token Expiry Date Format", + description='The format of the time to expiration datetime. Provide it if the time is returned as a date-time string instead of seconds.', + examples=['%Y-%m-%d %H:%M:%S.%f+00:00'], + title='Token Expiry Date Format', ) refresh_token_updater: Optional[RefreshTokenUpdater] = Field( None, - description="When the token updater is defined, new refresh tokens, access tokens and the access token expiry date are written back from the authentication response to the config object. This is important if the refresh token can only used once.", - title="Token Updater", + description='When the token updater is defined, new refresh tokens, access tokens and the access token expiry date are written back from the authentication response to the config object. This is important if the refresh token can only used once.', + title='Token Updater', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class ExponentialBackoffStrategy(BaseModel): - type: Literal["ExponentialBackoffStrategy"] + type: Literal['ExponentialBackoffStrategy'] factor: Optional[Union[float, str]] = Field( 5, - description="Multiplicative constant applied on each retry.", - examples=[5, 5.5, "10"], - title="Factor", + description='Multiplicative constant applied on each retry.', + examples=[5, 5.5, '10'], + title='Factor', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class SessionTokenRequestBearerAuthenticator(BaseModel): - type: Literal["Bearer"] + type: Literal['Bearer'] class HttpMethodEnum(Enum): - GET = "GET" - POST = "POST" + GET = 'GET' + POST = 'POST' class Action(Enum): - SUCCESS = "SUCCESS" - FAIL = "FAIL" - RETRY = "RETRY" - IGNORE = "IGNORE" + SUCCESS = 'SUCCESS' + FAIL = 'FAIL' + RETRY = 'RETRY' + IGNORE = 'IGNORE' class HttpResponseFilter(BaseModel): - type: Literal["HttpResponseFilter"] + type: Literal['HttpResponseFilter'] action: Action = Field( ..., - description="Action to execute if a response matches the filter.", - examples=["SUCCESS", "FAIL", "RETRY", "IGNORE"], - title="Action", + description='Action to execute if a response matches the filter.', + examples=['SUCCESS', 'FAIL', 'RETRY', 'IGNORE'], + title='Action', ) error_message: Optional[str] = Field( None, - description="Error Message to display if the response matches the filter.", - title="Error Message", + description='Error Message to display if the response matches the filter.', + title='Error Message', ) error_message_contains: Optional[str] = Field( None, - description="Match the response if its error message contains the substring.", - example=["This API operation is not enabled for this site"], - title="Error Message Substring", + description='Match the response if its error message contains the substring.', + example=['This API operation is not enabled for this site'], + title='Error Message Substring', ) http_codes: Optional[List[int]] = Field( None, - description="Match the response if its HTTP code is included in this list.", + description='Match the response if its HTTP code is included in this list.', examples=[[420, 429], [500]], - title="HTTP Codes", + title='HTTP Codes', ) predicate: Optional[str] = Field( None, - description="Match the response if the predicate evaluates to true.", + description='Match the response if the predicate evaluates to true.', examples=[ "{{ 'Too much requests' in response }}", "{{ 'error_code' in response and response['error_code'] == 'ComplexityException' }}", ], - title="Predicate", + title='Predicate', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class InlineSchemaLoader(BaseModel): - type: Literal["InlineSchemaLoader"] + type: Literal['InlineSchemaLoader'] schema_: Optional[Dict[str, Any]] = Field( None, - alias="schema", + alias='schema', description='Describes a streams\' schema. Refer to the Data Types documentation for more details on which types are valid.', - title="Schema", + title='Schema', ) class JsonFileSchemaLoader(BaseModel): - type: Literal["JsonFileSchemaLoader"] + type: Literal['JsonFileSchemaLoader'] file_path: Optional[str] = Field( None, description="Path to the JSON file defining the schema. The path is relative to the connector module's root.", - example=["./schemas/users.json"], - title="File Path", + example=['./schemas/users.json'], + title='File Path', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class JsonDecoder(BaseModel): - type: Literal["JsonDecoder"] + type: Literal['JsonDecoder'] class MinMaxDatetime(BaseModel): - type: Literal["MinMaxDatetime"] + type: Literal['MinMaxDatetime'] datetime: str = Field( ..., - description="Datetime value.", - examples=["2021-01-01", "2021-01-01T00:00:00Z", "{{ config['start_time'] }}"], - title="Datetime", + description='Datetime value.', + examples=['2021-01-01', '2021-01-01T00:00:00Z', "{{ config['start_time'] }}"], + title='Datetime', ) datetime_format: Optional[str] = Field( - "", + '', description='Format of the datetime value. Defaults to "%Y-%m-%dT%H:%M:%S.%f%z" if left empty. Use placeholders starting with "%" to describe the format the API is using. The following placeholders are available:\n * **%s**: Epoch unix timestamp - `1686218963`\n * **%ms**: Epoch unix timestamp - `1686218963123`\n * **%a**: Weekday (abbreviated) - `Sun`\n * **%A**: Weekday (full) - `Sunday`\n * **%w**: Weekday (decimal) - `0` (Sunday), `6` (Saturday)\n * **%d**: Day of the month (zero-padded) - `01`, `02`, ..., `31`\n * **%b**: Month (abbreviated) - `Jan`\n * **%B**: Month (full) - `January`\n * **%m**: Month (zero-padded) - `01`, `02`, ..., `12`\n * **%y**: Year (without century, zero-padded) - `00`, `01`, ..., `99`\n * **%Y**: Year (with century) - `0001`, `0002`, ..., `9999`\n * **%H**: Hour (24-hour, zero-padded) - `00`, `01`, ..., `23`\n * **%I**: Hour (12-hour, zero-padded) - `01`, `02`, ..., `12`\n * **%p**: AM/PM indicator\n * **%M**: Minute (zero-padded) - `00`, `01`, ..., `59`\n * **%S**: Second (zero-padded) - `00`, `01`, ..., `59`\n * **%f**: Microsecond (zero-padded to 6 digits) - `000000`, `000001`, ..., `999999`\n * **%z**: UTC offset - `(empty)`, `+0000`, `-04:00`\n * **%Z**: Time zone name - `(empty)`, `UTC`, `GMT`\n * **%j**: Day of the year (zero-padded) - `001`, `002`, ..., `366`\n * **%U**: Week number of the year (Sunday as first day) - `00`, `01`, ..., `53`\n * **%W**: Week number of the year (Monday as first day) - `00`, `01`, ..., `53`\n * **%c**: Date and time representation - `Tue Aug 16 21:30:00 1988`\n * **%x**: Date representation - `08/16/1988`\n * **%X**: Time representation - `21:30:00`\n * **%%**: Literal \'%\' character\n\n Some placeholders depend on the locale of the underlying system - in most cases this locale is configured as en/US. For more information see the [Python documentation](https://docs.python.org/3/library/datetime.html#strftime-and-strptime-format-codes).\n', - examples=["%Y-%m-%dT%H:%M:%S.%f%z", "%Y-%m-%d", "%s"], - title="Datetime Format", + examples=['%Y-%m-%dT%H:%M:%S.%f%z', '%Y-%m-%d', '%s'], + title='Datetime Format', ) max_datetime: Optional[str] = Field( None, - description="Ceiling applied on the datetime value. Must be formatted with the datetime_format field.", - examples=["2021-01-01T00:00:00Z", "2021-01-01"], - title="Max Datetime", + description='Ceiling applied on the datetime value. Must be formatted with the datetime_format field.', + examples=['2021-01-01T00:00:00Z', '2021-01-01'], + title='Max Datetime', ) min_datetime: Optional[str] = Field( None, - description="Floor applied on the datetime value. Must be formatted with the datetime_format field.", - examples=["2010-01-01T00:00:00Z", "2010-01-01"], - title="Min Datetime", + description='Floor applied on the datetime value. Must be formatted with the datetime_format field.', + examples=['2010-01-01T00:00:00Z', '2010-01-01'], + title='Min Datetime', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class NoAuth(BaseModel): - type: Literal["NoAuth"] - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + type: Literal['NoAuth'] + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class NoPagination(BaseModel): - type: Literal["NoPagination"] + type: Literal['NoPagination'] class OAuthConfigSpecification(BaseModel): class Config: extra = Extra.allow - oauth_user_input_from_connector_config_specification: Optional[Dict[str, Any]] = Field( + oauth_user_input_from_connector_config_specification: Optional[ + Dict[str, Any] + ] = Field( None, description="OAuth specific blob. This is a Json Schema used to validate Json configurations used as input to OAuth.\nMust be a valid non-nested JSON that refers to properties from ConnectorSpecification.connectionSpecification\nusing special annotation 'path_in_connector_config'.\nThese are input values the user is entering through the UI to authenticate to the connector, that might also shared\nas inputs for syncing data via the connector.\nExamples:\nif no connector values is shared during oauth flow, oauth_user_input_from_connector_config_specification=[]\nif connector values such as 'app_id' inside the top level are used to generate the API url for the oauth flow,\n oauth_user_input_from_connector_config_specification={\n app_id: {\n type: string\n path_in_connector_config: ['app_id']\n }\n }\nif connector values such as 'info.app_id' nested inside another object are used to generate the API url for the oauth flow,\n oauth_user_input_from_connector_config_specification={\n app_id: {\n type: string\n path_in_connector_config: ['info', 'app_id']\n }\n }", examples=[ - {"app_id": {"type": "string", "path_in_connector_config": ["app_id"]}}, + {'app_id': {'type': 'string', 'path_in_connector_config': ['app_id']}}, { - "app_id": { - "type": "string", - "path_in_connector_config": ["info", "app_id"], + 'app_id': { + 'type': 'string', + 'path_in_connector_config': ['info', 'app_id'], } }, ], - title="OAuth user input", + title='OAuth user input', ) complete_oauth_output_specification: Optional[Dict[str, Any]] = Field( None, description="OAuth specific blob. This is a Json Schema used to validate Json configurations produced by the OAuth flows as they are\nreturned by the distant OAuth APIs.\nMust be a valid JSON describing the fields to merge back to `ConnectorSpecification.connectionSpecification`.\nFor each field, a special annotation `path_in_connector_config` can be specified to determine where to merge it,\nExamples:\n complete_oauth_output_specification={\n refresh_token: {\n type: string,\n path_in_connector_config: ['credentials', 'refresh_token']\n }\n }", examples=[ { - "refresh_token": { - "type": "string,", - "path_in_connector_config": ["credentials", "refresh_token"], + 'refresh_token': { + 'type': 'string,', + 'path_in_connector_config': ['credentials', 'refresh_token'], } } ], - title="OAuth output specification", + title='OAuth output specification', ) complete_oauth_server_input_specification: Optional[Dict[str, Any]] = Field( None, - description="OAuth specific blob. This is a Json Schema used to validate Json configurations persisted as Airbyte Server configurations.\nMust be a valid non-nested JSON describing additional fields configured by the Airbyte Instance or Workspace Admins to be used by the\nserver when completing an OAuth flow (typically exchanging an auth code for refresh token).\nExamples:\n complete_oauth_server_input_specification={\n client_id: {\n type: string\n },\n client_secret: {\n type: string\n }\n }", - examples=[{"client_id": {"type": "string"}, "client_secret": {"type": "string"}}], - title="OAuth input specification", + description='OAuth specific blob. This is a Json Schema used to validate Json configurations persisted as Airbyte Server configurations.\nMust be a valid non-nested JSON describing additional fields configured by the Airbyte Instance or Workspace Admins to be used by the\nserver when completing an OAuth flow (typically exchanging an auth code for refresh token).\nExamples:\n complete_oauth_server_input_specification={\n client_id: {\n type: string\n },\n client_secret: {\n type: string\n }\n }', + examples=[ + {'client_id': {'type': 'string'}, 'client_secret': {'type': 'string'}} + ], + title='OAuth input specification', ) complete_oauth_server_output_specification: Optional[Dict[str, Any]] = Field( None, description="OAuth specific blob. This is a Json Schema used to validate Json configurations persisted as Airbyte Server configurations that\nalso need to be merged back into the connector configuration at runtime.\nThis is a subset configuration of `complete_oauth_server_input_specification` that filters fields out to retain only the ones that\nare necessary for the connector to function with OAuth. (some fields could be used during oauth flows but not needed afterwards, therefore\nthey would be listed in the `complete_oauth_server_input_specification` but not `complete_oauth_server_output_specification`)\nMust be a valid non-nested JSON describing additional fields configured by the Airbyte Instance or Workspace Admins to be used by the\nconnector when using OAuth flow APIs.\nThese fields are to be merged back to `ConnectorSpecification.connectionSpecification`.\nFor each field, a special annotation `path_in_connector_config` can be specified to determine where to merge it,\nExamples:\n complete_oauth_server_output_specification={\n client_id: {\n type: string,\n path_in_connector_config: ['credentials', 'client_id']\n },\n client_secret: {\n type: string,\n path_in_connector_config: ['credentials', 'client_secret']\n }\n }", examples=[ { - "client_id": { - "type": "string,", - "path_in_connector_config": ["credentials", "client_id"], + 'client_id': { + 'type': 'string,', + 'path_in_connector_config': ['credentials', 'client_id'], }, - "client_secret": { - "type": "string,", - "path_in_connector_config": ["credentials", "client_secret"], + 'client_secret': { + 'type': 'string,', + 'path_in_connector_config': ['credentials', 'client_secret'], }, } ], - title="OAuth server output specification", + title='OAuth server output specification', ) class OffsetIncrement(BaseModel): - type: Literal["OffsetIncrement"] + type: Literal['OffsetIncrement'] page_size: Optional[Union[int, str]] = Field( None, - description="The number of records to include in each pages.", + description='The number of records to include in each pages.', examples=[100, "{{ config['page_size'] }}"], - title="Limit", + title='Limit', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class PageIncrement(BaseModel): - type: Literal["PageIncrement"] + type: Literal['PageIncrement'] page_size: Optional[int] = Field( None, - description="The number of records to include in each pages.", - examples=[100, "100"], - title="Page Size", + description='The number of records to include in each pages.', + examples=[100, '100'], + title='Page Size', ) start_from_page: Optional[int] = Field( 0, - description="Index of the first page to request.", + description='Index of the first page to request.', examples=[0, 1], - title="Start From Page", + title='Start From Page', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class PrimaryKey(BaseModel): __root__: Union[str, List[str], List[List[str]]] = Field( ..., - description="The stream field to be used to distinguish unique records. Can either be a single field, an array of fields representing a composite key, or an array of arrays representing a composite key where the fields are nested fields.", - examples=["id", ["code", "type"]], - title="Primary Key", + description='The stream field to be used to distinguish unique records. Can either be a single field, an array of fields representing a composite key, or an array of arrays representing a composite key where the fields are nested fields.', + examples=['id', ['code', 'type']], + title='Primary Key', ) class RecordFilter(BaseModel): - type: Literal["RecordFilter"] + type: Literal['RecordFilter'] condition: Optional[str] = Field( - "", - description="The predicate to filter a record. Records will be removed if evaluated to False.", + '', + description='The predicate to filter a record. Records will be removed if evaluated to False.', examples=[ "{{ record['created_at'] >= stream_interval['start_time'] }}", "{{ record.status in ['active', 'expired'] }}", ], ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class RemoveFields(BaseModel): - type: Literal["RemoveFields"] + type: Literal['RemoveFields'] field_pointers: List[List[str]] = Field( ..., - description="Array of paths defining the field to remove. Each item is an array whose field describe the path of a field to remove.", - examples=[["tags"], [["content", "html"], ["content", "plain_text"]]], - title="Field Paths", + description='Array of paths defining the field to remove. Each item is an array whose field describe the path of a field to remove.', + examples=[['tags'], [['content', 'html'], ['content', 'plain_text']]], + title='Field Paths', ) class RequestPath(BaseModel): - type: Literal["RequestPath"] + type: Literal['RequestPath'] class InjectInto(Enum): - request_parameter = "request_parameter" - header = "header" - body_data = "body_data" - body_json = "body_json" + request_parameter = 'request_parameter' + header = 'header' + body_data = 'body_data' + body_json = 'body_json' class RequestOption(BaseModel): - type: Literal["RequestOption"] + type: Literal['RequestOption'] field_name: str = Field( ..., - description="Configures which key should be used in the location that the descriptor is being injected into", - examples=["segment_id"], - title="Request Option", + description='Configures which key should be used in the location that the descriptor is being injected into', + examples=['segment_id'], + title='Request Option', ) inject_into: InjectInto = Field( ..., - description="Configures where the descriptor should be set on the HTTP requests. Note that request parameters that are already encoded in the URL path will not be duplicated.", - examples=["request_parameter", "header", "body_data", "body_json"], - title="Inject Into", + description='Configures where the descriptor should be set on the HTTP requests. Note that request parameters that are already encoded in the URL path will not be duplicated.', + examples=['request_parameter', 'header', 'body_data', 'body_json'], + title='Inject Into', ) @@ -632,251 +638,253 @@ class Config: class LegacySessionTokenAuthenticator(BaseModel): - type: Literal["LegacySessionTokenAuthenticator"] + type: Literal['LegacySessionTokenAuthenticator'] header: str = Field( ..., - description="The name of the session token header that will be injected in the request", - examples=["X-Session"], - title="Session Request Header", + description='The name of the session token header that will be injected in the request', + examples=['X-Session'], + title='Session Request Header', ) login_url: str = Field( ..., - description="Path of the login URL (do not include the base URL)", - examples=["session"], - title="Login Path", + description='Path of the login URL (do not include the base URL)', + examples=['session'], + title='Login Path', ) session_token: Optional[str] = Field( None, - description="Session token to use if using a pre-defined token. Not needed if authenticating with username + password pair", + description='Session token to use if using a pre-defined token. Not needed if authenticating with username + password pair', example=["{{ config['session_token'] }}"], - title="Session Token", + title='Session Token', ) session_token_response_key: str = Field( ..., - description="Name of the key of the session token to be extracted from the response", - examples=["id"], - title="Response Token Response Key", + description='Name of the key of the session token to be extracted from the response', + examples=['id'], + title='Response Token Response Key', ) username: Optional[str] = Field( None, - description="Username used to authenticate and obtain a session token", + description='Username used to authenticate and obtain a session token', examples=[" {{ config['username'] }}"], - title="Username", + title='Username', ) password: Optional[str] = Field( - "", - description="Password used to authenticate and obtain a session token", - examples=["{{ config['password'] }}", ""], - title="Password", + '', + description='Password used to authenticate and obtain a session token', + examples=["{{ config['password'] }}", ''], + title='Password', ) validate_session_url: str = Field( ..., - description="Path of the URL to use to validate that the session token is valid (do not include the base URL)", - examples=["user/current"], - title="Validate Session Path", + description='Path of the URL to use to validate that the session token is valid (do not include the base URL)', + examples=['user/current'], + title='Validate Session Path', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class WaitTimeFromHeader(BaseModel): - type: Literal["WaitTimeFromHeader"] + type: Literal['WaitTimeFromHeader'] header: str = Field( ..., - description="The name of the response header defining how long to wait before retrying.", - examples=["Retry-After"], - title="Response Header Name", + description='The name of the response header defining how long to wait before retrying.', + examples=['Retry-After'], + title='Response Header Name', ) regex: Optional[str] = Field( None, - description="Optional regex to apply on the header to extract its value. The regex should define a capture group defining the wait time.", - examples=["([-+]?\\d+)"], - title="Extraction Regex", + description='Optional regex to apply on the header to extract its value. The regex should define a capture group defining the wait time.', + examples=['([-+]?\\d+)'], + title='Extraction Regex', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class WaitUntilTimeFromHeader(BaseModel): - type: Literal["WaitUntilTimeFromHeader"] + type: Literal['WaitUntilTimeFromHeader'] header: str = Field( ..., - description="The name of the response header defining how long to wait before retrying.", - examples=["wait_time"], - title="Response Header", + description='The name of the response header defining how long to wait before retrying.', + examples=['wait_time'], + title='Response Header', ) min_wait: Optional[Union[float, str]] = Field( None, - description="Minimum time to wait before retrying.", - examples=[10, "60"], - title="Minimum Wait Time", + description='Minimum time to wait before retrying.', + examples=[10, '60'], + title='Minimum Wait Time', ) regex: Optional[str] = Field( None, - description="Optional regex to apply on the header to extract its value. The regex should define a capture group defining the wait time.", - examples=["([-+]?\\d+)"], - title="Extraction Regex", + description='Optional regex to apply on the header to extract its value. The regex should define a capture group defining the wait time.', + examples=['([-+]?\\d+)'], + title='Extraction Regex', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class ApiKeyAuthenticator(BaseModel): - type: Literal["ApiKeyAuthenticator"] + type: Literal['ApiKeyAuthenticator'] api_token: Optional[str] = Field( None, - description="The API key to inject in the request. Fill it in the user inputs.", + description='The API key to inject in the request. Fill it in the user inputs.', examples=["{{ config['api_key'] }}", "Token token={{ config['api_key'] }}"], - title="API Key", + title='API Key', ) header: Optional[str] = Field( None, - description="The name of the HTTP header that will be set to the API key. This setting is deprecated, use inject_into instead. Header and inject_into can not be defined at the same time.", - examples=["Authorization", "Api-Token", "X-Auth-Token"], - title="Header Name", + description='The name of the HTTP header that will be set to the API key. This setting is deprecated, use inject_into instead. Header and inject_into can not be defined at the same time.', + examples=['Authorization', 'Api-Token', 'X-Auth-Token'], + title='Header Name', ) inject_into: Optional[RequestOption] = Field( None, - description="Configure how the API Key will be sent in requests to the source API. Either inject_into or header has to be defined.", + description='Configure how the API Key will be sent in requests to the source API. Either inject_into or header has to be defined.', examples=[ - {"inject_into": "header", "field_name": "Authorization"}, - {"inject_into": "request_parameter", "field_name": "authKey"}, + {'inject_into': 'header', 'field_name': 'Authorization'}, + {'inject_into': 'request_parameter', 'field_name': 'authKey'}, ], - title="Inject API Key Into Outgoing HTTP Request", + title='Inject API Key Into Outgoing HTTP Request', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class AuthFlow(BaseModel): - auth_flow_type: Optional[AuthFlowType] = Field(None, description="The type of auth to use", title="Auth flow type") + auth_flow_type: Optional[AuthFlowType] = Field( + None, description='The type of auth to use', title='Auth flow type' + ) predicate_key: Optional[List[str]] = Field( None, - description="JSON path to a field in the connectorSpecification that should exist for the advanced auth to be applicable.", - examples=[["credentials", "auth_type"]], - title="Predicate key", + description='JSON path to a field in the connectorSpecification that should exist for the advanced auth to be applicable.', + examples=[['credentials', 'auth_type']], + title='Predicate key', ) predicate_value: Optional[str] = Field( None, - description="Value of the predicate_key fields for the advanced auth to be applicable.", - examples=["Oauth"], - title="Predicate value", + description='Value of the predicate_key fields for the advanced auth to be applicable.', + examples=['Oauth'], + title='Predicate value', ) oauth_config_specification: Optional[OAuthConfigSpecification] = None class CursorPagination(BaseModel): - type: Literal["CursorPagination"] + type: Literal['CursorPagination'] cursor_value: str = Field( ..., - description="Value of the cursor defining the next page to fetch.", + description='Value of the cursor defining the next page to fetch.', examples=[ - "{{ headers.link.next.cursor }}", + '{{ headers.link.next.cursor }}', "{{ last_records[-1]['key'] }}", "{{ response['nextPage'] }}", ], - title="Cursor Value", + title='Cursor Value', ) page_size: Optional[int] = Field( None, - description="The number of records to include in each pages.", + description='The number of records to include in each pages.', examples=[100], - title="Page Size", + title='Page Size', ) stop_condition: Optional[str] = Field( None, - description="Template string evaluating when to stop paginating.", + description='Template string evaluating when to stop paginating.', examples=[ - "{{ response.data.has_more is false }}", + '{{ response.data.has_more is false }}', "{{ 'next' not in headers['link'] }}", ], - title="Stop Condition", + title='Stop Condition', ) decoder: Optional[JsonDecoder] = Field( None, - description="Component decoding the response so records can be extracted.", - title="Decoder", + description='Component decoding the response so records can be extracted.', + title='Decoder', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class DatetimeBasedCursor(BaseModel): - type: Literal["DatetimeBasedCursor"] + type: Literal['DatetimeBasedCursor'] cursor_field: str = Field( ..., - description="The location of the value on a record that will be used as a bookmark during sync. To ensure no data loss, the API must return records in ascending order based on the cursor field. Nested fields are not supported, so the field must be at the top level of the record. You can use a combination of Add Field and Remove Field transformations to move the nested field to the top.", - examples=["created_at", "{{ config['record_cursor'] }}"], - title="Cursor Field", + description='The location of the value on a record that will be used as a bookmark during sync. To ensure no data loss, the API must return records in ascending order based on the cursor field. Nested fields are not supported, so the field must be at the top level of the record. You can use a combination of Add Field and Remove Field transformations to move the nested field to the top.', + examples=['created_at', "{{ config['record_cursor'] }}"], + title='Cursor Field', ) datetime_format: str = Field( ..., - description="The datetime format used to format the datetime values that are sent in outgoing requests to the API. Use placeholders starting with \"%\" to describe the format the API is using. The following placeholders are available:\n * **%s**: Epoch unix timestamp - `1686218963`\n * **%ms**: Epoch unix timestamp (milliseconds) - `1686218963123`\n * **%a**: Weekday (abbreviated) - `Sun`\n * **%A**: Weekday (full) - `Sunday`\n * **%w**: Weekday (decimal) - `0` (Sunday), `6` (Saturday)\n * **%d**: Day of the month (zero-padded) - `01`, `02`, ..., `31`\n * **%b**: Month (abbreviated) - `Jan`\n * **%B**: Month (full) - `January`\n * **%m**: Month (zero-padded) - `01`, `02`, ..., `12`\n * **%y**: Year (without century, zero-padded) - `00`, `01`, ..., `99`\n * **%Y**: Year (with century) - `0001`, `0002`, ..., `9999`\n * **%H**: Hour (24-hour, zero-padded) - `00`, `01`, ..., `23`\n * **%I**: Hour (12-hour, zero-padded) - `01`, `02`, ..., `12`\n * **%p**: AM/PM indicator\n * **%M**: Minute (zero-padded) - `00`, `01`, ..., `59`\n * **%S**: Second (zero-padded) - `00`, `01`, ..., `59`\n * **%f**: Microsecond (zero-padded to 6 digits) - `000000`\n * **%z**: UTC offset - `(empty)`, `+0000`, `-04:00`\n * **%Z**: Time zone name - `(empty)`, `UTC`, `GMT`\n * **%j**: Day of the year (zero-padded) - `001`, `002`, ..., `366`\n * **%U**: Week number of the year (starting Sunday) - `00`, ..., `53`\n * **%W**: Week number of the year (starting Monday) - `00`, ..., `53`\n * **%c**: Date and time - `Tue Aug 16 21:30:00 1988`\n * **%x**: Date standard format - `08/16/1988`\n * **%X**: Time standard format - `21:30:00`\n * **%%**: Literal '%' character\n\n Some placeholders depend on the locale of the underlying system - in most cases this locale is configured as en/US. For more information see the [Python documentation](https://docs.python.org/3/library/datetime.html#strftime-and-strptime-format-codes).\n", - examples=["%Y-%m-%dT%H:%M:%S.%f%z", "%Y-%m-%d", "%s", "%ms"], - title="Outgoing Datetime Format", + description='The datetime format used to format the datetime values that are sent in outgoing requests to the API. Use placeholders starting with "%" to describe the format the API is using. The following placeholders are available:\n * **%s**: Epoch unix timestamp - `1686218963`\n * **%ms**: Epoch unix timestamp (milliseconds) - `1686218963123`\n * **%a**: Weekday (abbreviated) - `Sun`\n * **%A**: Weekday (full) - `Sunday`\n * **%w**: Weekday (decimal) - `0` (Sunday), `6` (Saturday)\n * **%d**: Day of the month (zero-padded) - `01`, `02`, ..., `31`\n * **%b**: Month (abbreviated) - `Jan`\n * **%B**: Month (full) - `January`\n * **%m**: Month (zero-padded) - `01`, `02`, ..., `12`\n * **%y**: Year (without century, zero-padded) - `00`, `01`, ..., `99`\n * **%Y**: Year (with century) - `0001`, `0002`, ..., `9999`\n * **%H**: Hour (24-hour, zero-padded) - `00`, `01`, ..., `23`\n * **%I**: Hour (12-hour, zero-padded) - `01`, `02`, ..., `12`\n * **%p**: AM/PM indicator\n * **%M**: Minute (zero-padded) - `00`, `01`, ..., `59`\n * **%S**: Second (zero-padded) - `00`, `01`, ..., `59`\n * **%f**: Microsecond (zero-padded to 6 digits) - `000000`\n * **%z**: UTC offset - `(empty)`, `+0000`, `-04:00`\n * **%Z**: Time zone name - `(empty)`, `UTC`, `GMT`\n * **%j**: Day of the year (zero-padded) - `001`, `002`, ..., `366`\n * **%U**: Week number of the year (starting Sunday) - `00`, ..., `53`\n * **%W**: Week number of the year (starting Monday) - `00`, ..., `53`\n * **%c**: Date and time - `Tue Aug 16 21:30:00 1988`\n * **%x**: Date standard format - `08/16/1988`\n * **%X**: Time standard format - `21:30:00`\n * **%%**: Literal \'%\' character\n\n Some placeholders depend on the locale of the underlying system - in most cases this locale is configured as en/US. For more information see the [Python documentation](https://docs.python.org/3/library/datetime.html#strftime-and-strptime-format-codes).\n', + examples=['%Y-%m-%dT%H:%M:%S.%f%z', '%Y-%m-%d', '%s', '%ms'], + title='Outgoing Datetime Format', ) start_datetime: Union[str, MinMaxDatetime] = Field( ..., - description="The datetime that determines the earliest record that should be synced.", - examples=["2020-01-1T00:00:00Z", "{{ config['start_time'] }}"], - title="Start Datetime", + description='The datetime that determines the earliest record that should be synced.', + examples=['2020-01-1T00:00:00Z', "{{ config['start_time'] }}"], + title='Start Datetime', ) cursor_datetime_formats: Optional[List[str]] = Field( None, - description="The possible formats for the cursor field, in order of preference. The first format that matches the cursor field value will be used to parse it. If not provided, the `datetime_format` will be used.", - title="Cursor Datetime Formats", + description='The possible formats for the cursor field, in order of preference. The first format that matches the cursor field value will be used to parse it. If not provided, the `datetime_format` will be used.', + title='Cursor Datetime Formats', ) cursor_granularity: Optional[str] = Field( None, - description="Smallest increment the datetime_format has (ISO 8601 duration) that is used to ensure the start of a slice does not overlap with the end of the previous one, e.g. for %Y-%m-%d the granularity should be P1D, for %Y-%m-%dT%H:%M:%SZ the granularity should be PT1S. Given this field is provided, `step` needs to be provided as well.", - examples=["PT1S"], - title="Cursor Granularity", + description='Smallest increment the datetime_format has (ISO 8601 duration) that is used to ensure the start of a slice does not overlap with the end of the previous one, e.g. for %Y-%m-%d the granularity should be P1D, for %Y-%m-%dT%H:%M:%SZ the granularity should be PT1S. Given this field is provided, `step` needs to be provided as well.', + examples=['PT1S'], + title='Cursor Granularity', ) end_datetime: Optional[Union[str, MinMaxDatetime]] = Field( None, - description="The datetime that determines the last record that should be synced. If not provided, `{{ now_utc() }}` will be used.", - examples=["2021-01-1T00:00:00Z", "{{ now_utc() }}", "{{ day_delta(-1) }}"], - title="End Datetime", + description='The datetime that determines the last record that should be synced. If not provided, `{{ now_utc() }}` will be used.', + examples=['2021-01-1T00:00:00Z', '{{ now_utc() }}', '{{ day_delta(-1) }}'], + title='End Datetime', ) end_time_option: Optional[RequestOption] = Field( None, - description="Optionally configures how the end datetime will be sent in requests to the source API.", - title="Inject End Time Into Outgoing HTTP Request", + description='Optionally configures how the end datetime will be sent in requests to the source API.', + title='Inject End Time Into Outgoing HTTP Request', ) is_data_feed: Optional[bool] = Field( None, - description="A data feed API is an API that does not allow filtering and paginates the content from the most recent to the least recent. Given this, the CDK needs to know when to stop paginating and this field will generate a stop condition for pagination.", - title="Whether the target API is formatted as a data feed", + description='A data feed API is an API that does not allow filtering and paginates the content from the most recent to the least recent. Given this, the CDK needs to know when to stop paginating and this field will generate a stop condition for pagination.', + title='Whether the target API is formatted as a data feed', ) lookback_window: Optional[str] = Field( None, - description="Time interval before the start_datetime to read data for, e.g. P1M for looking back one month.", - examples=["P1D", "P{{ config['lookback_days'] }}D"], - title="Lookback Window", + description='Time interval before the start_datetime to read data for, e.g. P1M for looking back one month.', + examples=['P1D', "P{{ config['lookback_days'] }}D"], + title='Lookback Window', ) partition_field_end: Optional[str] = Field( None, - description="Name of the partition start time field.", - examples=["ending_time"], - title="Partition Field End", + description='Name of the partition start time field.', + examples=['ending_time'], + title='Partition Field End', ) partition_field_start: Optional[str] = Field( None, - description="Name of the partition end time field.", - examples=["starting_time"], - title="Partition Field Start", + description='Name of the partition end time field.', + examples=['starting_time'], + title='Partition Field Start', ) start_time_option: Optional[RequestOption] = Field( None, - description="Optionally configures how the start datetime will be sent in requests to the source API.", - title="Inject Start Time Into Outgoing HTTP Request", + description='Optionally configures how the start datetime will be sent in requests to the source API.', + title='Inject Start Time Into Outgoing HTTP Request', ) step: Optional[str] = Field( None, - description="The size of the time window (ISO8601 duration). Given this field is provided, `cursor_granularity` needs to be provided as well.", - examples=["P1W", "{{ config['step_increment'] }}"], - title="Step", + description='The size of the time window (ISO8601 duration). Given this field is provided, `cursor_granularity` needs to be provided as well.', + examples=['P1W', "{{ config['step_increment'] }}"], + title='Step', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class DefaultErrorHandler(BaseModel): - type: Literal["DefaultErrorHandler"] + type: Literal['DefaultErrorHandler'] backoff_strategies: Optional[ List[ Union[ @@ -889,142 +897,144 @@ class DefaultErrorHandler(BaseModel): ] ] = Field( None, - description="List of backoff strategies to use to determine how long to wait before retrying a retryable request.", - title="Backoff Strategies", + description='List of backoff strategies to use to determine how long to wait before retrying a retryable request.', + title='Backoff Strategies', ) max_retries: Optional[int] = Field( 5, - description="The maximum number of time to retry a retryable request before giving up and failing.", + description='The maximum number of time to retry a retryable request before giving up and failing.', examples=[5, 0, 10], - title="Max Retry Count", + title='Max Retry Count', ) response_filters: Optional[List[HttpResponseFilter]] = Field( None, description="List of response filters to iterate on when deciding how to handle an error. When using an array of multiple filters, the filters will be applied sequentially and the response will be selected if it matches any of the filter's predicate.", - title="Response Filters", + title='Response Filters', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class DefaultPaginator(BaseModel): - type: Literal["DefaultPaginator"] - pagination_strategy: Union[CursorPagination, CustomPaginationStrategy, OffsetIncrement, PageIncrement] = Field( + type: Literal['DefaultPaginator'] + pagination_strategy: Union[ + CursorPagination, CustomPaginationStrategy, OffsetIncrement, PageIncrement + ] = Field( ..., - description="Strategy defining how records are paginated.", - title="Pagination Strategy", + description='Strategy defining how records are paginated.', + title='Pagination Strategy', ) decoder: Optional[JsonDecoder] = Field( None, - description="Component decoding the response so records can be extracted.", - title="Decoder", + description='Component decoding the response so records can be extracted.', + title='Decoder', ) page_size_option: Optional[RequestOption] = None page_token_option: Optional[Union[RequestOption, RequestPath]] = None - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class DpathExtractor(BaseModel): - type: Literal["DpathExtractor"] + type: Literal['DpathExtractor'] field_path: List[str] = Field( ..., description='List of potentially nested fields describing the full path of the field to extract. Use "*" to extract all values from an array. See more info in the [docs](https://docs.airbyte.com/connector-development/config-based/understanding-the-yaml-file/record-selector).', examples=[ - ["data"], - ["data", "records"], - ["data", "{{ parameters.name }}"], - ["data", "*", "record"], + ['data'], + ['data', 'records'], + ['data', '{{ parameters.name }}'], + ['data', '*', 'record'], ], - title="Field Path", + title='Field Path', ) decoder: Optional[JsonDecoder] = Field( None, - description="Component decoding the response so records can be extracted.", - title="Decoder", + description='Component decoding the response so records can be extracted.', + title='Decoder', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class SessionTokenRequestApiKeyAuthenticator(BaseModel): - type: Literal["ApiKey"] + type: Literal['ApiKey'] inject_into: RequestOption = Field( ..., - description="Configure how the API Key will be sent in requests to the source API.", + description='Configure how the API Key will be sent in requests to the source API.', examples=[ - {"inject_into": "header", "field_name": "Authorization"}, - {"inject_into": "request_parameter", "field_name": "authKey"}, + {'inject_into': 'header', 'field_name': 'Authorization'}, + {'inject_into': 'request_parameter', 'field_name': 'authKey'}, ], - title="Inject API Key Into Outgoing HTTP Request", + title='Inject API Key Into Outgoing HTTP Request', ) class ListPartitionRouter(BaseModel): - type: Literal["ListPartitionRouter"] + type: Literal['ListPartitionRouter'] cursor_field: str = Field( ..., description='While iterating over list values, the name of field used to reference a list value. The partition value can be accessed with string interpolation. e.g. "{{ stream_partition[\'my_key\'] }}" where "my_key" is the value of the cursor_field.', - examples=["section", "{{ config['section_key'] }}"], - title="Current Partition Value Identifier", + examples=['section', "{{ config['section_key'] }}"], + title='Current Partition Value Identifier', ) values: Union[str, List[str]] = Field( ..., - description="The list of attributes being iterated over and used as input for the requests made to the source API.", - examples=[["section_a", "section_b", "section_c"], "{{ config['sections'] }}"], - title="Partition Values", + description='The list of attributes being iterated over and used as input for the requests made to the source API.', + examples=[['section_a', 'section_b', 'section_c'], "{{ config['sections'] }}"], + title='Partition Values', ) request_option: Optional[RequestOption] = Field( None, - description="A request option describing where the list value should be injected into and under what field name if applicable.", - title="Inject Partition Value Into Outgoing HTTP Request", + description='A request option describing where the list value should be injected into and under what field name if applicable.', + title='Inject Partition Value Into Outgoing HTTP Request', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class RecordSelector(BaseModel): - type: Literal["RecordSelector"] + type: Literal['RecordSelector'] extractor: Union[CustomRecordExtractor, DpathExtractor] record_filter: Optional[RecordFilter] = Field( None, - description="Responsible for filtering records to be emitted by the Source.", - title="Record Filter", + description='Responsible for filtering records to be emitted by the Source.', + title='Record Filter', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class Spec(BaseModel): - type: Literal["Spec"] + type: Literal['Spec'] connection_specification: Dict[str, Any] = Field( ..., - description="A connection specification describing how a the connector can be configured.", - title="Connection Specification", + description='A connection specification describing how a the connector can be configured.', + title='Connection Specification', ) documentation_url: Optional[str] = Field( None, description="URL of the connector's documentation page.", - examples=["https://docs.airbyte.com/integrations/sources/dremio"], - title="Documentation URL", + examples=['https://docs.airbyte.com/integrations/sources/dremio'], + title='Documentation URL', ) advanced_auth: Optional[AuthFlow] = Field( None, - description="Advanced specification for configuring the authentication flow.", - title="Advanced Auth", + description='Advanced specification for configuring the authentication flow.', + title='Advanced Auth', ) class CompositeErrorHandler(BaseModel): - type: Literal["CompositeErrorHandler"] + type: Literal['CompositeErrorHandler'] error_handlers: List[Union[CompositeErrorHandler, DefaultErrorHandler]] = Field( ..., - description="List of error handlers to iterate on to determine how to handle a failed response.", - title="Error Handlers", + description='List of error handlers to iterate on to determine how to handle a failed response.', + title='Error Handlers', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class DeclarativeSource(BaseModel): class Config: extra = Extra.forbid - type: Literal["DeclarativeSource"] + type: Literal['DeclarativeSource'] check: CheckStream streams: List[DeclarativeStream] version: str @@ -1033,7 +1043,7 @@ class Config: spec: Optional[Spec] = None metadata: Optional[Dict[str, Any]] = Field( None, - description="For internal Airbyte use only - DO NOT modify manually. Used by consumers of declarative manifests for storing related metadata.", + description='For internal Airbyte use only - DO NOT modify manually. Used by consumers of declarative manifests for storing related metadata.', ) @@ -1041,91 +1051,101 @@ class DeclarativeStream(BaseModel): class Config: extra = Extra.allow - type: Literal["DeclarativeStream"] + type: Literal['DeclarativeStream'] retriever: Union[CustomRetriever, SimpleRetriever] = Field( ..., - description="Component used to coordinate how records are extracted across stream slices and request pages.", - title="Retriever", + description='Component used to coordinate how records are extracted across stream slices and request pages.', + title='Retriever', ) - incremental_sync: Optional[Union[CustomIncrementalSync, DatetimeBasedCursor]] = Field( + incremental_sync: Optional[ + Union[CustomIncrementalSync, DatetimeBasedCursor] + ] = Field( None, - description="Component used to fetch data incrementally based on a time field in the data.", - title="Incremental Sync", + description='Component used to fetch data incrementally based on a time field in the data.', + title='Incremental Sync', + ) + name: Optional[str] = Field( + '', description='The stream name.', example=['Users'], title='Name' + ) + primary_key: Optional[PrimaryKey] = Field( + '', description='The primary key of the stream.', title='Primary Key' ) - name: Optional[str] = Field("", description="The stream name.", example=["Users"], title="Name") - primary_key: Optional[PrimaryKey] = Field("", description="The primary key of the stream.", title="Primary Key") schema_loader: Optional[Union[InlineSchemaLoader, JsonFileSchemaLoader]] = Field( None, - description="Component used to retrieve the schema for the current stream.", - title="Schema Loader", + description='Component used to retrieve the schema for the current stream.', + title='Schema Loader', ) - transformations: Optional[List[Union[AddFields, CustomTransformation, RemoveFields]]] = Field( + transformations: Optional[ + List[Union[AddFields, CustomTransformation, RemoveFields]] + ] = Field( None, - description="A list of transformations to be applied to each output record.", - title="Transformations", + description='A list of transformations to be applied to each output record.', + title='Transformations', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class SessionTokenAuthenticator(BaseModel): - type: Literal["SessionTokenAuthenticator"] + type: Literal['SessionTokenAuthenticator'] login_requester: HttpRequester = Field( ..., - description="Description of the request to perform to obtain a session token to perform data requests. The response body is expected to be a JSON object with a session token property.", + description='Description of the request to perform to obtain a session token to perform data requests. The response body is expected to be a JSON object with a session token property.', examples=[ { - "type": "HttpRequester", - "url_base": "https://my_api.com", - "path": "/login", - "authenticator": { - "type": "BasicHttpAuthenticator", - "username": "{{ config.username }}", - "password": "{{ config.password }}", + 'type': 'HttpRequester', + 'url_base': 'https://my_api.com', + 'path': '/login', + 'authenticator': { + 'type': 'BasicHttpAuthenticator', + 'username': '{{ config.username }}', + 'password': '{{ config.password }}', }, } ], - title="Login Requester", + title='Login Requester', ) session_token_path: List[str] = Field( ..., - description="The path in the response body returned from the login requester to the session token.", - examples=[["access_token"], ["result", "token"]], - title="Session Token Path", + description='The path in the response body returned from the login requester to the session token.', + examples=[['access_token'], ['result', 'token']], + title='Session Token Path', ) expiration_duration: Optional[str] = Field( None, - description="The duration in ISO 8601 duration notation after which the session token expires, starting from the time it was obtained. Omitting it will result in the session token being refreshed for every request.", - examples=["PT1H", "P1D"], - title="Expiration Duration", + description='The duration in ISO 8601 duration notation after which the session token expires, starting from the time it was obtained. Omitting it will result in the session token being refreshed for every request.', + examples=['PT1H', 'P1D'], + title='Expiration Duration', ) - request_authentication: Union[SessionTokenRequestApiKeyAuthenticator, SessionTokenRequestBearerAuthenticator] = Field( + request_authentication: Union[ + SessionTokenRequestApiKeyAuthenticator, SessionTokenRequestBearerAuthenticator + ] = Field( ..., - description="Authentication method to use for requests sent to the API, specifying how to inject the session token.", - title="Data Request Authentication", + description='Authentication method to use for requests sent to the API, specifying how to inject the session token.', + title='Data Request Authentication', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class HttpRequester(BaseModel): - type: Literal["HttpRequester"] + type: Literal['HttpRequester'] url_base: str = Field( ..., - description="Base URL of the API source. Do not put sensitive information (e.g. API tokens) into this field - Use the Authentication component for this.", + description='Base URL of the API source. Do not put sensitive information (e.g. API tokens) into this field - Use the Authentication component for this.', examples=[ - "https://connect.squareup.com/v2", + 'https://connect.squareup.com/v2', "{{ config['base_url'] or 'https://app.posthog.com'}}/api/", ], - title="API Base URL", + title='API Base URL', ) path: str = Field( ..., - description="Path the specific API endpoint that this stream represents. Do not put sensitive information (e.g. API tokens) into this field - Use the Authentication component for this.", + description='Path the specific API endpoint that this stream represents. Do not put sensitive information (e.g. API tokens) into this field - Use the Authentication component for this.', examples=[ - "/products", + '/products', "/quotes/{{ stream_partition['id'] }}/quote_line_groups", "/trades/{{ config['symbol_id'] }}/history", ], - title="URL Path", + title='URL Path', ) authenticator: Optional[ Union[ @@ -1140,92 +1160,96 @@ class HttpRequester(BaseModel): ] ] = Field( None, - description="Authentication method to use for requests sent to the API.", - title="Authenticator", + description='Authentication method to use for requests sent to the API.', + title='Authenticator', ) - error_handler: Optional[Union[DefaultErrorHandler, CustomErrorHandler, CompositeErrorHandler]] = Field( + error_handler: Optional[ + Union[DefaultErrorHandler, CustomErrorHandler, CompositeErrorHandler] + ] = Field( None, - description="Error handler component that defines how to handle errors.", - title="Error Handler", + description='Error handler component that defines how to handle errors.', + title='Error Handler', ) http_method: Optional[Union[str, HttpMethodEnum]] = Field( - "GET", - description="The HTTP method used to fetch data from the source (can be GET or POST).", - examples=["GET", "POST"], - title="HTTP Method", + 'GET', + description='The HTTP method used to fetch data from the source (can be GET or POST).', + examples=['GET', 'POST'], + title='HTTP Method', ) request_body_data: Optional[Union[str, Dict[str, str]]] = Field( None, - description="Specifies how to populate the body of the request with a non-JSON payload. Plain text will be sent as is, whereas objects will be converted to a urlencoded form.", + description='Specifies how to populate the body of the request with a non-JSON payload. Plain text will be sent as is, whereas objects will be converted to a urlencoded form.', examples=[ '[{"clause": {"type": "timestamp", "operator": 10, "parameters":\n [{"value": {{ stream_interval[\'start_time\'] | int * 1000 }} }]\n }, "orderBy": 1, "columnName": "Timestamp"}]/\n' ], - title="Request Body Payload (Non-JSON)", + title='Request Body Payload (Non-JSON)', ) request_body_json: Optional[Union[str, Dict[str, Any]]] = Field( None, - description="Specifies how to populate the body of the request with a JSON payload. Can contain nested objects.", + description='Specifies how to populate the body of the request with a JSON payload. Can contain nested objects.', examples=[ - {"sort_order": "ASC", "sort_field": "CREATED_AT"}, - {"key": "{{ config['value'] }}"}, - {"sort": {"field": "updated_at", "order": "ascending"}}, + {'sort_order': 'ASC', 'sort_field': 'CREATED_AT'}, + {'key': "{{ config['value'] }}"}, + {'sort': {'field': 'updated_at', 'order': 'ascending'}}, ], - title="Request Body JSON Payload", + title='Request Body JSON Payload', ) request_headers: Optional[Union[str, Dict[str, str]]] = Field( None, - description="Return any non-auth headers. Authentication headers will overwrite any overlapping headers returned from this method.", - examples=[{"Output-Format": "JSON"}, {"Version": "{{ config['version'] }}"}], - title="Request Headers", + description='Return any non-auth headers. Authentication headers will overwrite any overlapping headers returned from this method.', + examples=[{'Output-Format': 'JSON'}, {'Version': "{{ config['version'] }}"}], + title='Request Headers', ) request_parameters: Optional[Union[str, Dict[str, str]]] = Field( None, - description="Specifies the query parameters that should be set on an outgoing HTTP request given the inputs.", + description='Specifies the query parameters that should be set on an outgoing HTTP request given the inputs.', examples=[ - {"unit": "day"}, + {'unit': 'day'}, { - "query": 'last_event_time BETWEEN TIMESTAMP "{{ stream_interval.start_time }}" AND TIMESTAMP "{{ stream_interval.end_time }}"' + 'query': 'last_event_time BETWEEN TIMESTAMP "{{ stream_interval.start_time }}" AND TIMESTAMP "{{ stream_interval.end_time }}"' }, - {"searchIn": "{{ ','.join(config.get('search_in', [])) }}"}, - {"sort_by[asc]": "updated_at"}, + {'searchIn': "{{ ','.join(config.get('search_in', [])) }}"}, + {'sort_by[asc]': 'updated_at'}, ], - title="Query Parameters", + title='Query Parameters', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class ParentStreamConfig(BaseModel): - type: Literal["ParentStreamConfig"] + type: Literal['ParentStreamConfig'] parent_key: str = Field( ..., - description="The primary key of records from the parent stream that will be used during the retrieval of records for the current substream. This parent identifier field is typically a characteristic of the child records being extracted from the source API.", - examples=["id", "{{ config['parent_record_id'] }}"], - title="Parent Key", + description='The primary key of records from the parent stream that will be used during the retrieval of records for the current substream. This parent identifier field is typically a characteristic of the child records being extracted from the source API.', + examples=['id', "{{ config['parent_record_id'] }}"], + title='Parent Key', + ) + stream: DeclarativeStream = Field( + ..., description='Reference to the parent stream.', title='Parent Stream' ) - stream: DeclarativeStream = Field(..., description="Reference to the parent stream.", title="Parent Stream") partition_field: str = Field( ..., - description="While iterating over parent records during a sync, the parent_key value can be referenced by using this field.", - examples=["parent_id", "{{ config['parent_partition_field'] }}"], - title="Current Parent Key Value Identifier", + description='While iterating over parent records during a sync, the parent_key value can be referenced by using this field.', + examples=['parent_id', "{{ config['parent_partition_field'] }}"], + title='Current Parent Key Value Identifier', ) request_option: Optional[RequestOption] = Field( None, - description="A request option describing where the parent key value should be injected into and under what field name if applicable.", - title="Request Option", + description='A request option describing where the parent key value should be injected into and under what field name if applicable.', + title='Request Option', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class SimpleRetriever(BaseModel): - type: Literal["SimpleRetriever"] + type: Literal['SimpleRetriever'] record_selector: RecordSelector = Field( ..., - description="Component that describes how to extract records from a HTTP response.", + description='Component that describes how to extract records from a HTTP response.', ) requester: Union[CustomRequester, HttpRequester] = Field( ..., - description="Requester component that describes how to prepare HTTP requests to send to the source API.", + description='Requester component that describes how to prepare HTTP requests to send to the source API.', ) paginator: Optional[Union[DefaultPaginator, NoPagination]] = Field( None, @@ -1236,24 +1260,28 @@ class SimpleRetriever(BaseModel): CustomPartitionRouter, ListPartitionRouter, SubstreamPartitionRouter, - List[Union[CustomPartitionRouter, ListPartitionRouter, SubstreamPartitionRouter]], + List[ + Union[ + CustomPartitionRouter, ListPartitionRouter, SubstreamPartitionRouter + ] + ], ] ] = Field( [], - description="PartitionRouter component that describes how to partition the stream, enabling incremental syncs and checkpointing.", - title="Partition Router", + description='PartitionRouter component that describes how to partition the stream, enabling incremental syncs and checkpointing.', + title='Partition Router', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') class SubstreamPartitionRouter(BaseModel): - type: Literal["SubstreamPartitionRouter"] + type: Literal['SubstreamPartitionRouter'] parent_stream_configs: List[ParentStreamConfig] = Field( ..., - description="Specifies which parent streams are being iterated over and how parent records should be used to partition the child stream data set.", - title="Parent Stream Configs", + description='Specifies which parent streams are being iterated over and how parent records should be used to partition the child stream data set.', + title='Parent Stream Configs', ) - parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters") + parameters: Optional[Dict[str, Any]] = Field(None, alias='$parameters') CompositeErrorHandler.update_forward_refs() diff --git a/airbyte-cdk/python/airbyte_cdk/sources/file_based/availability_strategy/default_file_based_availability_strategy.py b/airbyte-cdk/python/airbyte_cdk/sources/file_based/availability_strategy/default_file_based_availability_strategy.py index ff7390167068..30955686b44b 100644 --- a/airbyte-cdk/python/airbyte_cdk/sources/file_based/availability_strategy/default_file_based_availability_strategy.py +++ b/airbyte-cdk/python/airbyte_cdk/sources/file_based/availability_strategy/default_file_based_availability_strategy.py @@ -73,7 +73,7 @@ def _check_list_files(self, stream: "AbstractFileBasedStream") -> List[RemoteFil return files def _check_parse_record(self, stream: "AbstractFileBasedStream", file: RemoteFile, logger: logging.Logger) -> None: - parser = stream.get_parser(stream.config.file_type) + parser = stream.get_parser() try: record = next(iter(parser.parse_records(stream.config, file, self.stream_reader, logger, discovered_schema=None))) diff --git a/airbyte-cdk/python/airbyte_cdk/sources/file_based/config/avro_format.py b/airbyte-cdk/python/airbyte_cdk/sources/file_based/config/avro_format.py index ee7b955a325b..b0de46102b3d 100644 --- a/airbyte-cdk/python/airbyte_cdk/sources/file_based/config/avro_format.py +++ b/airbyte-cdk/python/airbyte_cdk/sources/file_based/config/avro_format.py @@ -3,14 +3,16 @@ # from pydantic import BaseModel, Field -from typing_extensions import Literal class AvroFormat(BaseModel): class Config: title = "Avro Format" - filetype: Literal["avro"] = "avro" + filetype: str = Field( + "avro", + const=True, + ) double_as_string: bool = Field( title="Convert Double Fields to Strings", diff --git a/airbyte-cdk/python/airbyte_cdk/sources/file_based/config/csv_format.py b/airbyte-cdk/python/airbyte_cdk/sources/file_based/config/csv_format.py index d85482a54737..585a2808c01f 100644 --- a/airbyte-cdk/python/airbyte_cdk/sources/file_based/config/csv_format.py +++ b/airbyte-cdk/python/airbyte_cdk/sources/file_based/config/csv_format.py @@ -7,7 +7,6 @@ from typing import Any, Dict, List, Optional, Set, Union from pydantic import BaseModel, Field, ValidationError, root_validator, validator -from typing_extensions import Literal class InferenceType(Enum): @@ -25,7 +24,10 @@ class CsvHeaderFromCsv(BaseModel): class Config: title = "From CSV" - header_definition_type: Literal[CsvHeaderDefinitionType.FROM_CSV.value] = CsvHeaderDefinitionType.FROM_CSV.value # type: ignore + header_definition_type: str = Field( + CsvHeaderDefinitionType.FROM_CSV.value, + const=True, + ) def has_header_row(self) -> bool: return True @@ -35,7 +37,10 @@ class CsvHeaderAutogenerated(BaseModel): class Config: title = "Autogenerated" - header_definition_type: Literal[CsvHeaderDefinitionType.AUTOGENERATED.value] = CsvHeaderDefinitionType.AUTOGENERATED.value # type: ignore + header_definition_type: str = Field( + CsvHeaderDefinitionType.AUTOGENERATED.value, + const=True, + ) def has_header_row(self) -> bool: return False @@ -45,7 +50,10 @@ class CsvHeaderUserProvided(BaseModel): class Config: title = "User Provided" - header_definition_type: Literal[CsvHeaderDefinitionType.USER_PROVIDED.value] = CsvHeaderDefinitionType.USER_PROVIDED.value # type: ignore + header_definition_type: str = Field( + CsvHeaderDefinitionType.USER_PROVIDED.value, + const=True, + ) column_names: List[str] = Field( title="Column Names", description="The column names that will be used while emitting the CSV records", @@ -69,7 +77,10 @@ class CsvFormat(BaseModel): class Config: title = "CSV Format" - filetype: Literal["csv"] = "csv" + filetype: str = Field( + "csv", + const=True, + ) delimiter: str = Field( title="Delimiter", description="The character delimiting individual cells in the CSV data. This may only be a 1-character string. For tab-delimited data enter '\\t'.", diff --git a/airbyte-cdk/python/airbyte_cdk/sources/file_based/config/file_based_stream_config.py b/airbyte-cdk/python/airbyte_cdk/sources/file_based/config/file_based_stream_config.py index 6f38ed4abf56..827603d3eeb3 100644 --- a/airbyte-cdk/python/airbyte_cdk/sources/file_based/config/file_based_stream_config.py +++ b/airbyte-cdk/python/airbyte_cdk/sources/file_based/config/file_based_stream_config.py @@ -3,7 +3,7 @@ # from enum import Enum -from typing import Any, List, Mapping, Optional, Type, Union +from typing import Any, List, Mapping, Optional, Union from airbyte_cdk.sources.file_based.config.avro_format import AvroFormat from airbyte_cdk.sources.file_based.config.csv_format import CsvFormat @@ -16,9 +16,6 @@ PrimaryKeyType = Optional[Union[str, List[str]]] -VALID_FILE_TYPES: Mapping[str, Type[BaseModel]] = {"avro": AvroFormat, "csv": CsvFormat, "jsonl": JsonlFormat, "parquet": ParquetFormat} - - class ValidationPolicy(Enum): emit_record = "Emit Record" skip_record = "Skip Record" @@ -27,7 +24,6 @@ class ValidationPolicy(Enum): class FileBasedStreamConfig(BaseModel): name: str = Field(title="Name", description="The name of the stream.") - file_type: str = Field(title="File Type", description="The data file type that is being extracted for a stream.") globs: Optional[List[str]] = Field( title="Globs", description='The pattern used to specify which files should be selected from the file system. For more information on glob pattern matching look here.', @@ -54,7 +50,7 @@ class FileBasedStreamConfig(BaseModel): description="When the state history of the file store is full, syncs will only read files that were last modified in the provided day range.", default=3, ) - format: Optional[Union[AvroFormat, CsvFormat, JsonlFormat, ParquetFormat]] = Field( + format: Union[AvroFormat, CsvFormat, JsonlFormat, ParquetFormat] = Field( title="Format", description="The configuration options that are used to alter how to read incoming files that deviate from the standard formatting.", ) @@ -64,37 +60,6 @@ class FileBasedStreamConfig(BaseModel): default=False, ) - @validator("file_type", pre=True) - def validate_file_type(cls, v: str) -> str: - if v not in VALID_FILE_TYPES: - raise ValueError(f"Format filetype {v} is not a supported file type") - return v - - @classmethod - def _transform_legacy_config(cls, legacy_config: Mapping[str, Any], file_type: str) -> Mapping[str, Any]: - if file_type.casefold() not in VALID_FILE_TYPES: - raise ValueError(f"Format filetype {file_type} is not a supported file type") - if file_type.casefold() == "parquet" or file_type.casefold() == "avro": - legacy_config = cls._transform_legacy_parquet_or_avro_config(legacy_config) - return {file_type: VALID_FILE_TYPES[file_type.casefold()].parse_obj({key: val for key, val in legacy_config.items()})} - - @classmethod - def _transform_legacy_parquet_or_avro_config(cls, config: Mapping[str, Any]) -> Mapping[str, Any]: - """ - The legacy parquet parser converts decimal fields to numbers. This isn't desirable because it can lead to precision loss. - To avoid introducing a breaking change with the new default, we will set decimal_as_float to True in the legacy configs. - """ - filetype = config.get("filetype") - if filetype != "parquet" and filetype != "avro": - raise ValueError( - f"Expected {filetype} format, got {config}. This is probably due to a CDK bug. Please reach out to the Airbyte team for support." - ) - if config.get("decimal_as_float"): - raise ValueError( - f"Received legacy {filetype} file form with 'decimal_as_float' set. This is unexpected. Please reach out to the Airbyte team for support." - ) - return {**config, **{"decimal_as_float": True}} - @validator("input_schema", pre=True) def validate_input_schema(cls, v: Optional[str]) -> Optional[str]: if v: diff --git a/airbyte-cdk/python/airbyte_cdk/sources/file_based/config/jsonl_format.py b/airbyte-cdk/python/airbyte_cdk/sources/file_based/config/jsonl_format.py index 99010d3aeca5..6f25f25190b6 100644 --- a/airbyte-cdk/python/airbyte_cdk/sources/file_based/config/jsonl_format.py +++ b/airbyte-cdk/python/airbyte_cdk/sources/file_based/config/jsonl_format.py @@ -2,12 +2,14 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # -from pydantic import BaseModel -from typing_extensions import Literal +from pydantic import BaseModel, Field class JsonlFormat(BaseModel): class Config: title = "Jsonl Format" - filetype: Literal["jsonl"] = "jsonl" + filetype: str = Field( + "jsonl", + const=True, + ) diff --git a/airbyte-cdk/python/airbyte_cdk/sources/file_based/config/parquet_format.py b/airbyte-cdk/python/airbyte_cdk/sources/file_based/config/parquet_format.py index de7f1b62969d..e717b3ad7346 100644 --- a/airbyte-cdk/python/airbyte_cdk/sources/file_based/config/parquet_format.py +++ b/airbyte-cdk/python/airbyte_cdk/sources/file_based/config/parquet_format.py @@ -3,14 +3,16 @@ # from pydantic import BaseModel, Field -from typing_extensions import Literal class ParquetFormat(BaseModel): class Config: title = "Parquet Format" - filetype: Literal["parquet"] = "parquet" + filetype: str = Field( + "parquet", + const=True, + ) # This option is not recommended, but necessary for backwards compatibility decimal_as_float: bool = Field( title="Convert Decimal Fields to Floats", diff --git a/airbyte-cdk/python/airbyte_cdk/sources/file_based/exceptions.py b/airbyte-cdk/python/airbyte_cdk/sources/file_based/exceptions.py index 3d2cf212fe58..dc07f0c96781 100644 --- a/airbyte-cdk/python/airbyte_cdk/sources/file_based/exceptions.py +++ b/airbyte-cdk/python/airbyte_cdk/sources/file_based/exceptions.py @@ -22,6 +22,8 @@ class FileBasedSourceError(Enum): ERROR_PARSING_RECORD = "Error parsing record. This could be due to a mismatch between the config's file type and the actual file type, or because the file or record is not parseable." ERROR_PARSING_USER_PROVIDED_SCHEMA = "The provided schema could not be transformed into valid JSON Schema." ERROR_VALIDATING_RECORD = "One or more records do not pass the schema validation policy. Please modify your input schema, or select a more lenient validation policy." + ERROR_PARSING_RECORD_MISMATCHED_COLUMNS = "A header field has resolved to `None`. This indicates that the CSV has more rows than the number of header fields. If you input your schema or headers, please verify that the number of columns corresponds to the number of columns in your CSV's rows." + ERROR_PARSING_RECORD_MISMATCHED_ROWS = "A row's value has resolved to `None`. This indicates that the CSV has more columns in the header field than the number of columns in the row(s). If you input your schema or headers, please verify that the number of columns corresponds to the number of columns in your CSV's rows." STOP_SYNC_PER_SCHEMA_VALIDATION_POLICY = ( "Stopping sync in accordance with the configured validation policy. Records in file did not conform to the schema." ) @@ -54,6 +56,10 @@ class MissingSchemaError(BaseFileBasedSourceError): pass +class NoFilesMatchingError(BaseFileBasedSourceError): + pass + + class RecordParseError(BaseFileBasedSourceError): pass diff --git a/airbyte-cdk/python/airbyte_cdk/sources/file_based/file_based_source.py b/airbyte-cdk/python/airbyte_cdk/sources/file_based/file_based_source.py index c5b643d6fa63..de690c08d108 100644 --- a/airbyte-cdk/python/airbyte_cdk/sources/file_based/file_based_source.py +++ b/airbyte-cdk/python/airbyte_cdk/sources/file_based/file_based_source.py @@ -33,7 +33,7 @@ def __init__( catalog_path: Optional[str] = None, availability_strategy: Optional[AbstractFileBasedAvailabilityStrategy] = None, discovery_policy: AbstractDiscoveryPolicy = DefaultDiscoveryPolicy(), - parsers: Mapping[str, FileTypeParser] = default_parsers, + parsers: Mapping[Type[Any], FileTypeParser] = default_parsers, validation_policies: Mapping[ValidationPolicy, AbstractSchemaValidationPolicy] = DEFAULT_SCHEMA_VALIDATION_POLICIES, cursor_cls: Type[AbstractFileBasedCursor] = DefaultFileBasedCursor, ): diff --git a/airbyte-cdk/python/airbyte_cdk/sources/file_based/file_types/__init__.py b/airbyte-cdk/python/airbyte_cdk/sources/file_based/file_types/__init__.py index 80922439a45f..36daaec3b906 100644 --- a/airbyte-cdk/python/airbyte_cdk/sources/file_based/file_types/__init__.py +++ b/airbyte-cdk/python/airbyte_cdk/sources/file_based/file_types/__init__.py @@ -1,4 +1,9 @@ -from typing import Mapping +from typing import Any, Mapping, Type + +from airbyte_cdk.sources.file_based.config.avro_format import AvroFormat +from airbyte_cdk.sources.file_based.config.csv_format import CsvFormat +from airbyte_cdk.sources.file_based.config.jsonl_format import JsonlFormat +from airbyte_cdk.sources.file_based.config.parquet_format import ParquetFormat from .avro_parser import AvroParser from .csv_parser import CsvParser @@ -6,11 +11,11 @@ from .jsonl_parser import JsonlParser from .parquet_parser import ParquetParser -default_parsers: Mapping[str, FileTypeParser] = { - "avro": AvroParser(), - "csv": CsvParser(), - "jsonl": JsonlParser(), - "parquet": ParquetParser(), +default_parsers: Mapping[Type[Any], FileTypeParser] = { + AvroFormat: AvroParser(), + CsvFormat: CsvParser(), + JsonlFormat: JsonlParser(), + ParquetFormat: ParquetParser(), } __all__ = ["AvroParser", "CsvParser", "JsonlParser", "ParquetParser", "default_parsers"] diff --git a/airbyte-cdk/python/airbyte_cdk/sources/file_based/file_types/avro_parser.py b/airbyte-cdk/python/airbyte_cdk/sources/file_based/file_types/avro_parser.py index d578ce957c79..d2ee78abae62 100644 --- a/airbyte-cdk/python/airbyte_cdk/sources/file_based/file_types/avro_parser.py +++ b/airbyte-cdk/python/airbyte_cdk/sources/file_based/file_types/avro_parser.py @@ -49,7 +49,7 @@ async def infer_schema( stream_reader: AbstractFileBasedStreamReader, logger: logging.Logger, ) -> SchemaType: - avro_format = config.format or AvroFormat() + avro_format = config.format if not isinstance(avro_format, AvroFormat): raise ValueError(f"Expected ParquetFormat, got {avro_format}") diff --git a/airbyte-cdk/python/airbyte_cdk/sources/file_based/file_types/csv_parser.py b/airbyte-cdk/python/airbyte_cdk/sources/file_based/file_types/csv_parser.py index 86e19a197087..e1d4c5e1471c 100644 --- a/airbyte-cdk/python/airbyte_cdk/sources/file_based/file_types/csv_parser.py +++ b/airbyte-cdk/python/airbyte_cdk/sources/file_based/file_types/csv_parser.py @@ -11,6 +11,7 @@ from io import IOBase from typing import Any, Callable, Dict, Generator, Iterable, List, Mapping, Optional, Set +from airbyte_cdk.models import FailureType from airbyte_cdk.sources.file_based.config.csv_format import CsvFormat, CsvHeaderAutogenerated, CsvHeaderUserProvided, InferenceType from airbyte_cdk.sources.file_based.config.file_based_stream_config import FileBasedStreamConfig from airbyte_cdk.sources.file_based.exceptions import FileBasedSourceError, RecordParseError @@ -18,6 +19,7 @@ from airbyte_cdk.sources.file_based.file_types.file_type_parser import FileTypeParser from airbyte_cdk.sources.file_based.remote_file import RemoteFile from airbyte_cdk.sources.file_based.schema_helpers import TYPE_PYTHON_MAPPING, SchemaType +from airbyte_cdk.utils.traced_exception import AirbyteTracedException DIALECT_NAME = "_config_dialect" @@ -32,6 +34,7 @@ def read_data( file_read_mode: FileReadMode, ) -> Generator[Dict[str, Any], None, None]: config_format = _extract_format(config) + lineno = 0 # Formats are configured individually per-stream so a unique dialect should be registered for each stream. # We don't unregister the dialect because we are lazily parsing each csv file to generate records @@ -54,14 +57,23 @@ def read_data( + config_format.skip_rows_after_header ) self._skip_rows(fp, rows_to_skip) + lineno += rows_to_skip reader = csv.DictReader(fp, dialect=dialect_name, fieldnames=headers) # type: ignore try: for row in reader: + lineno += 1 + # The row was not properly parsed if any of the values are None. This will most likely occur if there are more columns # than headers or more headers dans columns - if None in row or None in row.values(): - raise RecordParseError(FileBasedSourceError.ERROR_PARSING_RECORD) + if None in row: + raise RecordParseError( + FileBasedSourceError.ERROR_PARSING_RECORD_MISMATCHED_COLUMNS, + filename=file.uri, + lineno=lineno, + ) + if None in row.values(): + raise RecordParseError(FileBasedSourceError.ERROR_PARSING_RECORD_MISMATCHED_ROWS, filename=file.uri, lineno=lineno) yield row finally: # due to RecordParseError or GeneratorExit @@ -75,11 +87,12 @@ def _get_headers(self, fp: IOBase, config_format: CsvFormat, dialect_name: str) if isinstance(config_format.header_definition, CsvHeaderUserProvided): return config_format.header_definition.column_names # type: ignore # should be CsvHeaderUserProvided given the type - self._skip_rows(fp, config_format.skip_rows_before_header) if isinstance(config_format.header_definition, CsvHeaderAutogenerated): + self._skip_rows(fp, config_format.skip_rows_before_header + config_format.skip_rows_after_header) headers = self._auto_generate_headers(fp, dialect_name) else: # Then read the header + self._skip_rows(fp, config_format.skip_rows_before_header) reader = csv.reader(fp, dialect=dialect_name) # type: ignore headers = list(next(reader)) @@ -141,6 +154,12 @@ async def infer_schema( if read_bytes >= self._MAX_BYTES_PER_FILE_FOR_SCHEMA_INFERENCE: break + if not type_inferrer_by_field: + raise AirbyteTracedException( + message=f"Could not infer schema as there are no rows in {file.uri}. If having an empty CSV file is expected, ignore this. " + f"Else, please contact Airbyte.", + failure_type=FailureType.config_error, + ) schema = {header.strip(): {"type": type_inferred.infer()} for header, type_inferred in type_inferrer_by_field.items()} data_generator.close() return schema @@ -403,7 +422,7 @@ def _no_cast(row: Mapping[str, str]) -> Mapping[str, str]: def _extract_format(config: FileBasedStreamConfig) -> CsvFormat: - config_format = config.format or CsvFormat() + config_format = config.format if not isinstance(config_format, CsvFormat): raise ValueError(f"Invalid format config: {config_format}") return config_format diff --git a/airbyte-cdk/python/airbyte_cdk/sources/file_based/file_types/parquet_parser.py b/airbyte-cdk/python/airbyte_cdk/sources/file_based/file_types/parquet_parser.py index 851608cfffd5..3989010b3db5 100644 --- a/airbyte-cdk/python/airbyte_cdk/sources/file_based/file_types/parquet_parser.py +++ b/airbyte-cdk/python/airbyte_cdk/sources/file_based/file_types/parquet_parser.py @@ -30,7 +30,7 @@ async def infer_schema( stream_reader: AbstractFileBasedStreamReader, logger: logging.Logger, ) -> SchemaType: - parquet_format = config.format or ParquetFormat() + parquet_format = config.format if not isinstance(parquet_format, ParquetFormat): raise ValueError(f"Expected ParquetFormat, got {parquet_format}") @@ -54,7 +54,7 @@ def parse_records( logger: logging.Logger, discovered_schema: Optional[Mapping[str, SchemaType]], ) -> Iterable[Dict[str, Any]]: - parquet_format = config.format or ParquetFormat() + parquet_format = config.format if not isinstance(parquet_format, ParquetFormat): logger.info(f"Expected ParquetFormat, got {parquet_format}") raise ConfigValidationError(FileBasedSourceError.CONFIG_VALIDATION_ERROR) diff --git a/airbyte-cdk/python/airbyte_cdk/sources/file_based/remote_file.py b/airbyte-cdk/python/airbyte_cdk/sources/file_based/remote_file.py index c78065f8d2d3..fd50b5660444 100644 --- a/airbyte-cdk/python/airbyte_cdk/sources/file_based/remote_file.py +++ b/airbyte-cdk/python/airbyte_cdk/sources/file_based/remote_file.py @@ -3,7 +3,6 @@ # from datetime import datetime -from typing import Optional from pydantic import BaseModel @@ -15,11 +14,3 @@ class RemoteFile(BaseModel): uri: str last_modified: datetime - - def extension_agrees_with_file_type(self, file_type: Optional[str]) -> bool: - extensions = self.uri.split(".")[1:] - if not extensions: - return True - if not file_type: - return True - return any(file_type.casefold() in e.casefold() for e in extensions) diff --git a/airbyte-cdk/python/airbyte_cdk/sources/file_based/stream/abstract_file_based_stream.py b/airbyte-cdk/python/airbyte_cdk/sources/file_based/stream/abstract_file_based_stream.py index 7499316ea2d7..15d444919dca 100644 --- a/airbyte-cdk/python/airbyte_cdk/sources/file_based/stream/abstract_file_based_stream.py +++ b/airbyte-cdk/python/airbyte_cdk/sources/file_based/stream/abstract_file_based_stream.py @@ -4,7 +4,7 @@ from abc import abstractmethod from functools import cached_property, lru_cache -from typing import Any, Dict, Iterable, List, Mapping, Optional +from typing import Any, Dict, Iterable, List, Mapping, Optional, Type from airbyte_cdk.models import SyncMode from airbyte_cdk.sources.file_based.availability_strategy import AbstractFileBasedAvailabilityStrategy @@ -42,7 +42,7 @@ def __init__( stream_reader: AbstractFileBasedStreamReader, availability_strategy: AbstractFileBasedAvailabilityStrategy, discovery_policy: AbstractDiscoveryPolicy, - parsers: Dict[str, FileTypeParser], + parsers: Dict[Type[Any], FileTypeParser], validation_policy: AbstractSchemaValidationPolicy, ): super().__init__() @@ -121,11 +121,11 @@ def infer_schema(self, files: List[RemoteFile]) -> Mapping[str, Any]: """ ... - def get_parser(self, file_type: str) -> FileTypeParser: + def get_parser(self) -> FileTypeParser: try: - return self._parsers[file_type] + return self._parsers[type(self.config.format)] except KeyError: - raise UndefinedParserError(FileBasedSourceError.UNDEFINED_PARSER, stream=self.name, file_type=file_type) + raise UndefinedParserError(FileBasedSourceError.UNDEFINED_PARSER, stream=self.name, format=type(self.config.format)) def record_passes_validation_policy(self, record: Mapping[str, Any]) -> bool: if self.validation_policy: diff --git a/airbyte-cdk/python/airbyte_cdk/sources/file_based/stream/default_file_based_stream.py b/airbyte-cdk/python/airbyte_cdk/sources/file_based/stream/default_file_based_stream.py index 087ea525b3af..9225aa9dadc9 100644 --- a/airbyte-cdk/python/airbyte_cdk/sources/file_based/stream/default_file_based_stream.py +++ b/airbyte-cdk/python/airbyte_cdk/sources/file_based/stream/default_file_based_stream.py @@ -5,16 +5,18 @@ import asyncio import itertools import traceback +from copy import deepcopy from functools import cache from typing import Any, Iterable, List, Mapping, MutableMapping, Optional, Set, Union -from airbyte_cdk.models import AirbyteLogMessage, AirbyteMessage, Level +from airbyte_cdk.models import AirbyteLogMessage, AirbyteMessage, FailureType, Level from airbyte_cdk.models import Type as MessageType from airbyte_cdk.sources.file_based.config.file_based_stream_config import PrimaryKeyType from airbyte_cdk.sources.file_based.exceptions import ( FileBasedSourceError, InvalidSchemaError, MissingSchemaError, + NoFilesMatchingError, RecordParseError, SchemaInferenceError, StopSyncPerValidationPolicy, @@ -27,6 +29,7 @@ from airbyte_cdk.sources.streams import IncrementalMixin from airbyte_cdk.sources.streams.core import JsonSchema from airbyte_cdk.sources.utils.record_helper import stream_data_to_airbyte_message +from airbyte_cdk.utils.traced_exception import AirbyteTracedException class DefaultFileBasedStream(AbstractFileBasedStream, IncrementalMixin): @@ -77,7 +80,7 @@ def read_records_from_slice(self, stream_slice: StreamSlice) -> Iterable[Airbyte # On read requests we should always have the catalog available raise MissingSchemaError(FileBasedSourceError.MISSING_SCHEMA, stream=self.name) # The stream only supports a single file type, so we can use the same parser for all files - parser = self.get_parser(self.config.file_type) + parser = self.get_parser() for file in stream_slice["files"]: # only serialize the datetime once file_datetime_string = file.last_modified.strftime(self.DATE_TIME_FORMAT) @@ -154,6 +157,10 @@ def get_json_schema(self) -> JsonSchema: } try: schema = self._get_raw_json_schema() + except (InvalidSchemaError, NoFilesMatchingError) as config_exception: + raise AirbyteTracedException( + message=FileBasedSourceError.SCHEMA_INFERENCE_ERROR.value, exception=config_exception, failure_type=FailureType.config_error + ) from config_exception except Exception as exc: raise SchemaInferenceError(FileBasedSourceError.SCHEMA_INFERENCE_ERROR, stream=self.name) from exc else: @@ -169,7 +176,7 @@ def _get_raw_json_schema(self) -> JsonSchema: total_n_files = len(files) if total_n_files == 0: - raise SchemaInferenceError(FileBasedSourceError.EMPTY_STREAM, stream=self.name) + raise NoFilesMatchingError(FileBasedSourceError.EMPTY_STREAM, stream=self.name) max_n_files_for_schema_inference = self._discovery_policy.max_n_files_for_schema_inference if total_n_files > max_n_files_for_schema_inference: @@ -184,7 +191,7 @@ def _get_raw_json_schema(self) -> JsonSchema: if not inferred_schema: raise InvalidSchemaError( FileBasedSourceError.INVALID_SCHEMA_ERROR, - details=f"Empty schema. Please check that the files are valid {self.config.file_type}", + details=f"Empty schema. Please check that the files are valid for format {self.config.format}", stream=self.name, ) @@ -204,7 +211,8 @@ def list_files(self) -> List[RemoteFile]: def infer_schema(self, files: List[RemoteFile]) -> Mapping[str, Any]: loop = asyncio.get_event_loop() schema = loop.run_until_complete(self._infer_schema(files)) - return self._fill_nulls(schema) + # as infer schema returns a Mapping that is assumed to be immutable, we need to create a deepcopy to avoid modifying the reference + return self._fill_nulls(deepcopy(schema)) @staticmethod def _fill_nulls(schema: Mapping[str, Any]) -> Mapping[str, Any]: @@ -252,11 +260,11 @@ async def _infer_schema(self, files: List[RemoteFile]) -> Mapping[str, Any]: async def _infer_file_schema(self, file: RemoteFile) -> SchemaType: try: - return await self.get_parser(self.config.file_type).infer_schema(self.config, file, self._stream_reader, self.logger) + return await self.get_parser().infer_schema(self.config, file, self._stream_reader, self.logger) except Exception as exc: raise SchemaInferenceError( FileBasedSourceError.SCHEMA_INFERENCE_ERROR, file=file.uri, - stream_file_type=self.config.file_type, + format=str(self.config.format), stream=self.name, ) from exc diff --git a/airbyte-cdk/python/airbyte_cdk/sources/streams/abstract_stream.py b/airbyte-cdk/python/airbyte_cdk/sources/streams/abstract_stream.py index 603d9253fb89..04f61d14f80f 100644 --- a/airbyte-cdk/python/airbyte_cdk/sources/streams/abstract_stream.py +++ b/airbyte-cdk/python/airbyte_cdk/sources/streams/abstract_stream.py @@ -2,30 +2,16 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # -import logging from abc import ABC, abstractmethod -from functools import lru_cache -from typing import Any, Iterable, List, Mapping, Optional, Tuple, Union +from typing import Iterable -import requests -from airbyte_cdk.models import AirbyteMessage, AirbyteStream, SyncMode -from airbyte_cdk.models import Type as MessageType -from airbyte_cdk.sources.source import Source -from airbyte_cdk.sources.utils import casing -from airbyte_cdk.sources.utils.schema_helpers import InternalConfig -from airbyte_cdk.sources.utils.slice_logger import SliceLogger -from airbyte_cdk.sources.utils.transform import TransformConfig, TypeTransformer -from airbyte_cdk.sources.utils.types import JsonType, StreamData +from airbyte_cdk.sources.utils.types import StreamData class AbstractStream(ABC): @abstractmethod def read( self, - cursor_field: Optional[List[str]], - logger: logging.Logger, - slice_logger: SliceLogger, - internal_config: InternalConfig = InternalConfig(), ) -> Iterable[StreamData]: """ Read a stream in full refresh mode @@ -36,178 +22,3 @@ def read( :param internal_config: :return: The stream's records """ - - @property - def logger(self) -> logging.Logger: - return logging.getLogger(f"airbyte.streams.{self.name}") - - @property - def name(self) -> str: - """ - :return: Stream name. By default this is the implementing class name, but it can be overridden as needed. - """ - return casing.camel_to_snake(self.__class__.__name__) - - def get_error_display_message(self, exception: BaseException) -> Optional[str]: - """ - Retrieves the user-friendly display message that corresponds to an exception. - This will be called when encountering an exception while reading records from the stream, and used to build the AirbyteTraceMessage. - - The default implementation of this method does not return user-friendly messages for any exception type, but it should be overriden as needed. - - :param exception: The exception that was raised - :return: A user-friendly message that indicates the cause of the error - """ - return None - - @abstractmethod - def check_availability(self, logger: logging.Logger, source: Optional[Source] = None) -> Tuple[bool, Optional[str]]: - """ - Checks whether this stream is available. - - :param logger: source logger - :param source: (optional) source - :return: A tuple of (boolean, str). If boolean is true, then this stream - is available, and no str is required. Otherwise, this stream is unavailable - for some reason and the str should describe what went wrong and how to - resolve the unavailability, if possible. - """ - - @property - @abstractmethod - def primary_key(self) -> Optional[Union[str, List[str], List[List[str]]]]: - """ - :return: string if single primary key, list of strings if composite primary key, list of list of strings if composite primary key consisting of nested fields. - If the stream has no primary keys, return None. - """ - - @property - @abstractmethod - def cursor_field(self) -> Union[str, List[str]]: - """ - Override to return the default cursor field used by this stream e.g: an API entity might always use created_at as the cursor field. - :return: The name of the field used as a cursor. If the cursor is nested, return an array consisting of the path to the cursor. - """ - - # TypeTransformer object to perform output data transformation - transformer: TypeTransformer = TypeTransformer(TransformConfig.NoTransform) - - @lru_cache(maxsize=None) - @abstractmethod - def get_json_schema(self) -> Mapping[str, Any]: - """ - :return: A dict of the JSON schema representing this stream. - - The default implementation of this method looks for a JSONSchema file with the same name as this stream's "name" property. - Override as needed. - """ - - @property - def supports_incremental(self) -> bool: - """ - :return: True if this stream supports incrementally reading data - """ - return len(self._wrapped_cursor_field()) > 0 - - def _wrapped_cursor_field(self) -> List[str]: - return [self.cursor_field] if isinstance(self.cursor_field, str) else self.cursor_field - - @classmethod - def parse_response_error_message(cls, response: requests.Response) -> Optional[str]: - """ - Parses the raw response object from a failed request into a user-friendly error message. - By default, this method tries to grab the error message from JSON responses by following common API patterns. Override to parse differently. - - :param response: - :return: A user-friendly message that indicates the cause of the error - """ - - # default logic to grab error from common fields - def _try_get_error(value: Optional[JsonType]) -> Optional[str]: - if isinstance(value, str): - return value - elif isinstance(value, list): - errors_in_value = [_try_get_error(v) for v in value] - return ", ".join(v for v in errors_in_value if v is not None) - elif isinstance(value, dict): - new_value = ( - value.get("message") - or value.get("messages") - or value.get("error") - or value.get("errors") - or value.get("failures") - or value.get("failure") - or value.get("detail") - ) - return _try_get_error(new_value) - return None - - try: - body = response.json() - return _try_get_error(body) - except requests.exceptions.JSONDecodeError: - return None - - @property - def namespace(self) -> Optional[str]: - """ - Override to return the namespace of this stream, e.g. the Postgres schema which this stream will emit records for. - :return: A string containing the name of the namespace. - """ - return None - - def as_airbyte_stream(self) -> AirbyteStream: - stream = AirbyteStream(name=self.name, json_schema=dict(self.get_json_schema()), supported_sync_modes=[SyncMode.full_refresh]) - - if self.namespace: - stream.namespace = self.namespace - - if self.supports_incremental: - stream.source_defined_cursor = self.source_defined_cursor - stream.supported_sync_modes.append(SyncMode.incremental) # type: ignore - stream.default_cursor_field = self._wrapped_cursor_field() - - keys = AbstractStream._wrapped_primary_key(self.primary_key) - if keys and len(keys) > 0: - stream.source_defined_primary_key = keys - - return stream - - @staticmethod - def is_record(record_data_or_message: StreamData) -> bool: - if isinstance(record_data_or_message, dict): - return True - elif isinstance(record_data_or_message, AirbyteMessage): - return bool(record_data_or_message.type == MessageType.RECORD) - else: - return False - - @property - @abstractmethod - def source_defined_cursor(self) -> bool: - """ - Return False if the cursor can be configured by the user. - """ - - @staticmethod - def _wrapped_primary_key(keys: Optional[Union[str, List[str], List[List[str]]]]) -> Optional[List[List[str]]]: - """ - :return: wrap the primary_key property in a list of list of strings required by the Airbyte Stream object. - """ - if not keys: - return None - - if isinstance(keys, str): - return [[keys]] - elif isinstance(keys, list): - wrapped_keys = [] - for component in keys: - if isinstance(component, str): - wrapped_keys.append([component]) - elif isinstance(component, list): - wrapped_keys.append(component) - else: - raise ValueError(f"Element must be either list or str. Got: {type(component)}") - return wrapped_keys - else: - raise ValueError(f"Element must be either list or str. Got: {type(keys)}") diff --git a/airbyte-cdk/python/airbyte_cdk/sources/streams/concurrent/concurrent_stream.py b/airbyte-cdk/python/airbyte_cdk/sources/streams/concurrent/concurrent_stream.py index d82ed1100ffb..5c7b65044d71 100644 --- a/airbyte-cdk/python/airbyte_cdk/sources/streams/concurrent/concurrent_stream.py +++ b/airbyte-cdk/python/airbyte_cdk/sources/streams/concurrent/concurrent_stream.py @@ -154,3 +154,11 @@ def get_json_schema(self) -> Mapping[str, Any]: @property def source_defined_cursor(self) -> bool: return True + + @property + def supports_incremental(self) -> bool: + """ + :return: True if this stream supports incrementally reading data + """ + # Incremental reads are not supported yet. This override should be deleted when incremental reads are supported. + return False diff --git a/airbyte-cdk/python/airbyte_cdk/sources/streams/core.py b/airbyte-cdk/python/airbyte_cdk/sources/streams/core.py index eec7377527de..03698afa5747 100644 --- a/airbyte-cdk/python/airbyte_cdk/sources/streams/core.py +++ b/airbyte-cdk/python/airbyte_cdk/sources/streams/core.py @@ -11,13 +11,11 @@ from typing import Any, Iterable, List, Mapping, MutableMapping, Optional, Tuple, Union import airbyte_cdk.sources.utils.casing as casing -from airbyte_cdk.models import SyncMode -from airbyte_cdk.sources.streams.abstract_stream import AbstractStream +from airbyte_cdk.models import AirbyteMessage, AirbyteStream, SyncMode # list of all possible HTTP methods which can be used for sending of request bodies -from airbyte_cdk.sources.utils.schema_helpers import InternalConfig, ResourceSchemaLoader -from airbyte_cdk.sources.utils.slice_logger import SliceLogger -from airbyte_cdk.sources.utils.types import StreamData +from airbyte_cdk.sources.utils.schema_helpers import ResourceSchemaLoader +from airbyte_cdk.sources.utils.transform import TransformConfig, TypeTransformer from deprecated.classic import deprecated if typing.TYPE_CHECKING: @@ -27,9 +25,9 @@ # A stream's read method can return one of the following types: # Mapping[str, Any]: The content of an AirbyteRecordMessage # AirbyteMessage: An AirbyteMessage. Could be of any type +StreamData = Union[Mapping[str, Any], AirbyteMessage] JsonSchema = Mapping[str, Any] -StreamData = StreamData def package_name_from_class(cls: object) -> str: @@ -75,41 +73,19 @@ def state(self, value: MutableMapping[str, Any]) -> None: """State setter, accept state serialized by state getter.""" -class Stream(AbstractStream, ABC): +class Stream(ABC): """ Base abstract class for an Airbyte Stream. Makes no assumption of the Stream's underlying transport protocol. """ - def read( - self, - cursor_field: Optional[List[str]], - logger: logging.Logger, - slice_logger: SliceLogger, - internal_config: InternalConfig = InternalConfig(), - ) -> Iterable[StreamData]: - slices = self.stream_slices(sync_mode=SyncMode.full_refresh, cursor_field=cursor_field) - logger.debug(f"Processing stream slices for {self.name} (sync_mode: full_refresh)") - total_records_counter = 0 - for _slice in slices: - if slice_logger.should_log_slice_message(logger): - yield slice_logger.create_slice_log_message(_slice) - record_data_or_messages = self.read_records( - stream_slice=_slice, - sync_mode=SyncMode.full_refresh, - cursor_field=cursor_field, - ) - for record_data_or_message in record_data_or_messages: - yield record_data_or_message - if AbstractStream.is_record(record_data_or_message): - total_records_counter += 1 - if internal_config and internal_config.is_limit_reached(total_records_counter): - return - # Use self.logger in subclasses to log any messages @property def logger(self) -> logging.Logger: return logging.getLogger(f"airbyte.streams.{self.name}") + # TypeTransformer object to perform output data transformation + transformer: TypeTransformer = TypeTransformer(TransformConfig.NoTransform) + @property def name(self) -> str: """ @@ -117,6 +93,18 @@ def name(self) -> str: """ return casing.camel_to_snake(self.__class__.__name__) + def get_error_display_message(self, exception: BaseException) -> Optional[str]: + """ + Retrieves the user-friendly display message that corresponds to an exception. + This will be called when encountering an exception while reading records from the stream, and used to build the AirbyteTraceMessage. + + The default implementation of this method does not return user-friendly messages for any exception type, but it should be overriden as needed. + + :param exception: The exception that was raised + :return: A user-friendly message that indicates the cause of the error + """ + return None + @abstractmethod def read_records( self, @@ -140,6 +128,33 @@ def get_json_schema(self) -> Mapping[str, Any]: # TODO show an example of using pydantic to define the JSON schema, or reading an OpenAPI spec return ResourceSchemaLoader(package_name_from_class(self.__class__)).get_schema(self.name) + def as_airbyte_stream(self) -> AirbyteStream: + stream = AirbyteStream(name=self.name, json_schema=dict(self.get_json_schema()), supported_sync_modes=[SyncMode.full_refresh]) + + if self.namespace: + stream.namespace = self.namespace + + if self.supports_incremental: + stream.source_defined_cursor = self.source_defined_cursor + stream.supported_sync_modes.append(SyncMode.incremental) # type: ignore + stream.default_cursor_field = self._wrapped_cursor_field() + + keys = Stream._wrapped_primary_key(self.primary_key) + if keys and len(keys) > 0: + stream.source_defined_primary_key = keys + + return stream + + @property + def supports_incremental(self) -> bool: + """ + :return: True if this stream supports incrementally reading data + """ + return len(self._wrapped_cursor_field()) > 0 + + def _wrapped_cursor_field(self) -> List[str]: + return [self.cursor_field] if isinstance(self.cursor_field, str) else self.cursor_field + @property def cursor_field(self) -> Union[str, List[str]]: """ @@ -148,6 +163,14 @@ def cursor_field(self) -> Union[str, List[str]]: """ return [] + @property + def namespace(self) -> Optional[str]: + """ + Override to return the namespace of this stream, e.g. the Postgres schema which this stream will emit records for. + :return: A string containing the name of the namespace. + """ + return None + @property def source_defined_cursor(self) -> bool: """ @@ -177,6 +200,14 @@ def availability_strategy(self) -> Optional["AvailabilityStrategy"]: """ return None + @property + @abstractmethod + def primary_key(self) -> Optional[Union[str, List[str], List[List[str]]]]: + """ + :return: string if single primary key, list of strings if composite primary key, list of list of strings if composite primary key consisting of nested fields. + If the stream has no primary keys, return None. + """ + def stream_slices( self, *, sync_mode: SyncMode, cursor_field: Optional[List[str]] = None, stream_state: Optional[Mapping[str, Any]] = None ) -> Iterable[Optional[Mapping[str, Any]]]: @@ -220,3 +251,26 @@ def get_updated_state( :return: An updated state object """ return {} + + @staticmethod + def _wrapped_primary_key(keys: Optional[Union[str, List[str], List[List[str]]]]) -> Optional[List[List[str]]]: + """ + :return: wrap the primary_key property in a list of list of strings required by the Airbyte Stream object. + """ + if not keys: + return None + + if isinstance(keys, str): + return [[keys]] + elif isinstance(keys, list): + wrapped_keys = [] + for component in keys: + if isinstance(component, str): + wrapped_keys.append([component]) + elif isinstance(component, list): + wrapped_keys.append(component) + else: + raise ValueError(f"Element must be either list or str. Got: {type(component)}") + return wrapped_keys + else: + raise ValueError(f"Element must be either list or str. Got: {type(keys)}") diff --git a/airbyte-cdk/python/airbyte_cdk/utils/datetime_format_inferrer.py b/airbyte-cdk/python/airbyte_cdk/utils/datetime_format_inferrer.py index 8e29a274d25d..cd423db9c201 100644 --- a/airbyte-cdk/python/airbyte_cdk/utils/datetime_format_inferrer.py +++ b/airbyte-cdk/python/airbyte_cdk/utils/datetime_format_inferrer.py @@ -36,10 +36,14 @@ def _can_be_datetime(self, value: Any) -> bool: This is the case if the value is a string or an integer between 1_000_000_000 and 2_000_000_000 for seconds or between 1_000_000_000_000 and 2_000_000_000_000 for milliseconds. This is separate from the format check for performance reasons""" - for timestamp_range in self._timestamp_heuristic_ranges: - if isinstance(value, str) and (not value.isdecimal() or int(value) in timestamp_range): - return True - if isinstance(value, int) and value in timestamp_range: + if isinstance(value, (str, int)): + try: + value_as_int = int(value) + for timestamp_range in self._timestamp_heuristic_ranges: + if value_as_int in timestamp_range: + return True + except ValueError: + # given that it's not parsable as an int, it can represent a datetime with one of the self._formats return True return False diff --git a/airbyte-cdk/python/bin/run-mypy-on-modified-files.sh b/airbyte-cdk/python/bin/run-mypy-on-modified-files.sh index 6b45a7548f9d..0b42bc8a7a8f 100755 --- a/airbyte-cdk/python/bin/run-mypy-on-modified-files.sh +++ b/airbyte-cdk/python/bin/run-mypy-on-modified-files.sh @@ -1,3 +1,13 @@ +#!/usr/bin/env sh + set -e + +# Ensure script always runs from the project directory. +cd "$(dirname "${0}")/.." || exit 1 + # TODO change this to include unit_tests as well once it's in a good state -{ git diff --name-only --relative ':(exclude)unit_tests'; git diff --name-only --staged --relative ':(exclude)unit_tests'; git diff --name-only master... --relative ':(exclude)unit_tests'; } | grep -E '\.py$' | sort | uniq | xargs .venv/bin/python -m mypy --config-file mypy.ini --install-types --non-interactive +{ + git diff --name-only --relative ':(exclude)unit_tests' + git diff --name-only --staged --relative ':(exclude)unit_tests' + git diff --name-only master... --relative ':(exclude)unit_tests' +} | grep -E '\.py$' | sort | uniq | xargs .venv/bin/python -m mypy --config-file mypy.ini --install-types --non-interactive diff --git a/airbyte-cdk/python/build.gradle b/airbyte-cdk/python/build.gradle index 9624bcac5804..8c5eaa625266 100644 --- a/airbyte-cdk/python/build.gradle +++ b/airbyte-cdk/python/build.gradle @@ -7,29 +7,23 @@ airbytePython { moduleDirectory 'airbyte_cdk' } -task generateComponentManifestClassFiles(type: Exec) { +def generateComponentManifestClassFiles = tasks.register('generateComponentManifestClassFiles', Exec) { environment 'ROOT_DIR', rootDir.absolutePath commandLine 'bin/generate-component-manifest-files.sh' - dependsOn ':tools:code-generator:airbyteDocker' +} +generateComponentManifestClassFiles.configure { + dependsOn project(':tools:code-generator').tasks.named('assemble') +} +tasks.register('generate').configure { + dependsOn generateComponentManifestClassFiles } -task validateSourceYamlManifest(type: Exec) { +tasks.register('validateSourceYamlManifest', Exec) { environment 'ROOT_DIR', rootDir.absolutePath commandLine 'bin/validate-yaml-schema.sh' } -task runLowCodeConnectorUnitTests(type: Exec) { +tasks.register('runLowCodeConnectorUnitTests', Exec) { environment 'ROOT_DIR', rootDir.absolutePath commandLine 'bin/low-code-unit-tests.sh' } - -task runMypyOnModifiedFiles(type: Exec) { - environment 'ROOT_DIR', rootDir.absolutePath - commandLine 'bin/run-mypy-on-modified-files.sh' -} - -blackFormat.dependsOn runMypyOnModifiedFiles -isortFormat.dependsOn generateComponentManifestClassFiles -flakeCheck.dependsOn generateComponentManifestClassFiles -installReqs.dependsOn generateComponentManifestClassFiles -runMypyOnModifiedFiles.dependsOn generateComponentManifestClassFiles \ No newline at end of file diff --git a/airbyte-cdk/python/setup.py b/airbyte-cdk/python/setup.py index d3af292b5fbd..bc7be23bd903 100644 --- a/airbyte-cdk/python/setup.py +++ b/airbyte-cdk/python/setup.py @@ -26,7 +26,7 @@ name="airbyte-cdk", # The version of the airbyte-cdk package is used at runtime to validate manifests. That validation must be # updated if our semver format changes such as using release candidate versions. - version="0.51.10", + version="0.51.18", description="A framework for writing Airbyte Connectors.", long_description=README, long_description_content_type="text/markdown", diff --git a/airbyte-cdk/python/unit_tests/destinations/vector_db_based/document_processor_test.py b/airbyte-cdk/python/unit_tests/destinations/vector_db_based/document_processor_test.py index e8b0b1b71f2f..f7b2a342f9b4 100644 --- a/airbyte-cdk/python/unit_tests/destinations/vector_db_based/document_processor_test.py +++ b/airbyte-cdk/python/unit_tests/destinations/vector_db_based/document_processor_test.py @@ -10,6 +10,7 @@ from airbyte_cdk.destinations.vector_db_based.document_processor import DocumentProcessor from airbyte_cdk.models import AirbyteStream, ConfiguredAirbyteCatalog, ConfiguredAirbyteStream from airbyte_cdk.models.airbyte_protocol import AirbyteRecordMessage, DestinationSyncMode, SyncMode +from airbyte_cdk.utils.traced_exception import AirbyteTracedException def initialize_processor(): @@ -181,7 +182,7 @@ def test_no_text_fields(): processor.logger = MagicMock() # assert process is throwing with no text fields found - with pytest.raises(ValueError): + with pytest.raises(AirbyteTracedException): processor.process(record) diff --git a/airbyte-cdk/python/unit_tests/destinations/vector_db_based/embedder_test.py b/airbyte-cdk/python/unit_tests/destinations/vector_db_based/embedder_test.py new file mode 100644 index 000000000000..24095ca55907 --- /dev/null +++ b/airbyte-cdk/python/unit_tests/destinations/vector_db_based/embedder_test.py @@ -0,0 +1,89 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + +from unittest.mock import MagicMock, call + +import pytest +from airbyte_cdk.destinations.vector_db_based.config import ( + AzureOpenAIEmbeddingConfigModel, + CohereEmbeddingConfigModel, + FakeEmbeddingConfigModel, + FromFieldEmbeddingConfigModel, + OpenAIEmbeddingConfigModel, +) +from airbyte_cdk.destinations.vector_db_based.document_processor import Chunk +from airbyte_cdk.destinations.vector_db_based.embedder import ( + COHERE_VECTOR_SIZE, + OPEN_AI_VECTOR_SIZE, + AzureOpenAIEmbedder, + CohereEmbedder, + FakeEmbedder, + FromFieldEmbedder, + OpenAIEmbedder, +) +from airbyte_cdk.models.airbyte_protocol import AirbyteRecordMessage +from airbyte_cdk.utils.traced_exception import AirbyteTracedException + + +@pytest.mark.parametrize( + "embedder_class, args, dimensions", + ( + (OpenAIEmbedder, [OpenAIEmbeddingConfigModel(**{"mode": "openai", "openai_key": "abc"}), 1000], OPEN_AI_VECTOR_SIZE), + (CohereEmbedder, [CohereEmbeddingConfigModel(**{"mode": "cohere", "cohere_key": "abc"})], COHERE_VECTOR_SIZE), + (FakeEmbedder, [FakeEmbeddingConfigModel(**{"mode": "fake"})], OPEN_AI_VECTOR_SIZE), + (AzureOpenAIEmbedder, [AzureOpenAIEmbeddingConfigModel(**{"mode": "azure_openai", "openai_key": "abc", "api_base": "https://my-resource.openai.azure.com", "deployment": "my-deployment"}), 1000], OPEN_AI_VECTOR_SIZE), + ) +) +def test_embedder(embedder_class, args, dimensions): + embedder = embedder_class(*args) + mock_embedding_instance = MagicMock() + embedder.embeddings = mock_embedding_instance + + mock_embedding_instance.embed_query.side_effect = Exception("Some error") + assert embedder.check().startswith("Some error") + + mock_embedding_instance.embed_query.side_effect = None + assert embedder.check() is None + + assert embedder.embedding_dimensions == dimensions + + mock_embedding_instance.embed_documents.return_value = [[0] * dimensions] * 2 + + chunks = [Chunk(page_content="a", metadata={}, record=AirbyteRecordMessage(stream="mystream", data={}, emitted_at=0)),Chunk(page_content="b", metadata={}, record=AirbyteRecordMessage(stream="mystream", data={}, emitted_at=0))] + assert embedder.embed_chunks(chunks) == mock_embedding_instance.embed_documents.return_value + mock_embedding_instance.embed_documents.assert_called_with(["a", "b"]) + + +@pytest.mark.parametrize( + "field_name, dimensions, metadata, expected_embedding, expected_error", + ( + ("a", 2, {"a": [1,2]}, [1,2], False), + ("a", 2, {"b": "b"}, None, True), + ("a", 2, {}, None, True), + ("a", 2, {"a": []}, None, True), + ("a", 2, {"a": [1,2,3]}, None, True), + ("a", 2, {"a": [1,"2",3]}, None, True), + ) +) +def test_from_field_embedder(field_name, dimensions, metadata, expected_embedding, expected_error): + embedder = FromFieldEmbedder(FromFieldEmbeddingConfigModel(mode="from_field", dimensions=dimensions, field_name=field_name)) + chunks = [Chunk(page_content="a", metadata=metadata, record=AirbyteRecordMessage(stream="mystream", data=metadata, emitted_at=0))] + if expected_error: + with pytest.raises(AirbyteTracedException): + embedder.embed_chunks(chunks) + else: + assert embedder.embed_chunks(chunks) == [expected_embedding] + + +def test_openai_chunking(): + config = OpenAIEmbeddingConfigModel(**{"mode": "openai", "openai_key": "abc"}) + embedder = OpenAIEmbedder(config, 150) + mock_embedding_instance = MagicMock() + embedder.embeddings = mock_embedding_instance + + mock_embedding_instance.embed_documents.side_effect = lambda texts: [[0] * OPEN_AI_VECTOR_SIZE] * len(texts) + + chunks = [Chunk(page_content="a", metadata={}, record=AirbyteRecordMessage(stream="mystream", data={}, emitted_at=0)) for _ in range(1005)] + assert embedder.embed_chunks(chunks) == [[0] * OPEN_AI_VECTOR_SIZE] * 1005 + mock_embedding_instance.embed_documents.assert_has_calls([call(["a"]*1000), call(["a"]*5)]) diff --git a/airbyte-cdk/python/unit_tests/destinations/vector_db_based/writer_test.py b/airbyte-cdk/python/unit_tests/destinations/vector_db_based/writer_test.py index 97c580cba20d..b5d4a71da592 100644 --- a/airbyte-cdk/python/unit_tests/destinations/vector_db_based/writer_test.py +++ b/airbyte-cdk/python/unit_tests/destinations/vector_db_based/writer_test.py @@ -54,12 +54,16 @@ def test_write(): # messages are also flushed once the input messages are exhausted, so this will trigger another batch input_messages.extend([_generate_record_message(i) for i in range(5)]) + mock_embedder = MagicMock() + mock_embedder.embed_chunks.return_value = [[0] * 1536] * (BATCH_SIZE + 5 + 5) + mock_embedder.embed_chunks.side_effect = lambda chunks: [[0] * 1536] * len(chunks) + mock_indexer = MagicMock() post_sync_log_message = AirbyteMessage(type=Type.LOG, log=AirbyteLogMessage(level=Level.INFO, message="post sync")) mock_indexer.post_sync.return_value = [post_sync_log_message] # Create the DestinationLangchain instance - writer = Writer(config_model, mock_indexer, BATCH_SIZE) + writer = Writer(config_model, mock_indexer, mock_embedder, BATCH_SIZE) output_messages = writer.write(configured_catalog, input_messages) output_message = next(output_messages) @@ -70,6 +74,7 @@ def test_write(): # 1 batches due to max batch size reached and 1 batch due to state message assert mock_indexer.index.call_count == 2 + assert mock_embedder.embed_chunks.call_count == 2 output_message = next(output_messages) assert output_message == post_sync_log_message @@ -82,5 +87,6 @@ def test_write(): # 1 batch due to end of message stream assert mock_indexer.index.call_count == 3 + assert mock_embedder.embed_chunks.call_count == 3 mock_indexer.post_sync.assert_called() diff --git a/airbyte-cdk/python/unit_tests/sources/file_based/file_types/test_avro_parser.py b/airbyte-cdk/python/unit_tests/sources/file_based/file_types/test_avro_parser.py index 106e9dc1e68c..e624fab5c1b3 100644 --- a/airbyte-cdk/python/unit_tests/sources/file_based/file_types/test_avro_parser.py +++ b/airbyte-cdk/python/unit_tests/sources/file_based/file_types/test_avro_parser.py @@ -142,17 +142,17 @@ id="test_decimal_missing_precision"), pytest.param(_default_avro_format, {"type": "bytes", "logicalType": "decimal", "precision": 9}, None, ValueError, id="test_decimal_missing_scale"), - pytest.param(_default_avro_format, {"type": "bytes", "logicalType": "uuid"}, {"type": ["null", "string"]}, None, id="test_uuid"), - pytest.param(_default_avro_format, {"type": "int", "logicalType": "date"}, {"type": ["null", "string"], "format": "date"}, None, + pytest.param(_default_avro_format, {"type": "bytes", "logicalType": "uuid"}, {"type": "string"}, None, id="test_uuid"), + pytest.param(_default_avro_format, {"type": "int", "logicalType": "date"}, {"type": "string", "format": "date"}, None, id="test_date"), - pytest.param(_default_avro_format, {"type": "int", "logicalType": "time-millis"}, {"type": ["null", "integer"]}, None, id="test_time_millis"), - pytest.param(_default_avro_format, {"type": "long", "logicalType": "time-micros"}, {"type": ["null", "integer"]}, None, + pytest.param(_default_avro_format, {"type": "int", "logicalType": "time-millis"}, {"type": "integer"}, None, id="test_time_millis"), + pytest.param(_default_avro_format, {"type": "long", "logicalType": "time-micros"}, {"type": "integer"}, None, id="test_time_micros"), pytest.param( _default_avro_format, - {"type": "long", "logicalType": "timestamp-millis"}, {"type": ["null", "string"], "format": "date-time"}, None, id="test_timestamp_millis" + {"type": "long", "logicalType": "timestamp-millis"}, {"type": "string", "format": "date-time"}, None, id="test_timestamp_millis" ), - pytest.param(_default_avro_format, {"type": "long", "logicalType": "timestamp-micros"}, {"type": ["null", "string"]}, None, + pytest.param(_default_avro_format, {"type": "long", "logicalType": "timestamp-micros"}, {"type": "string"}, None, id="test_timestamp_micros"), pytest.param( _default_avro_format, diff --git a/airbyte-cdk/python/unit_tests/sources/file_based/file_types/test_csv_parser.py b/airbyte-cdk/python/unit_tests/sources/file_based/file_types/test_csv_parser.py index e55022ad0c1a..1bc7a45b0947 100644 --- a/airbyte-cdk/python/unit_tests/sources/file_based/file_types/test_csv_parser.py +++ b/airbyte-cdk/python/unit_tests/sources/file_based/file_types/test_csv_parser.py @@ -13,6 +13,7 @@ from unittest.mock import Mock import pytest +from airbyte_cdk.models import FailureType from airbyte_cdk.sources.file_based.config.csv_format import ( DEFAULT_FALSE_VALUES, DEFAULT_TRUE_VALUES, @@ -26,6 +27,7 @@ from airbyte_cdk.sources.file_based.file_based_stream_reader import AbstractFileBasedStreamReader, FileReadMode from airbyte_cdk.sources.file_based.file_types.csv_parser import CsvParser, _CsvReader from airbyte_cdk.sources.file_based.remote_file import RemoteFile +from airbyte_cdk.utils.traced_exception import AirbyteTracedException PROPERTY_TYPES = { "col1": "null", @@ -169,7 +171,7 @@ def setUp(self) -> None: self._config.get_input_schema.return_value = None self._config.format = self._config_format - self._file = Mock(spec=RemoteFile) + self._file = RemoteFile(uri="a uri", last_modified=datetime.now()) self._stream_reader = Mock(spec=AbstractFileBasedStreamReader) self._logger = Mock(spec=logging.Logger) self._csv_reader = Mock(spec=_CsvReader) @@ -222,6 +224,12 @@ def test_given_big_file_when_infer_schema_then_stop_early(self) -> None: # since the type is number, we know the string at the end was not considered assert inferred_schema == {self._HEADER_NAME: {"type": "number"}} + def test_given_empty_csv_file_when_infer_schema_then_raise_config_error(self) -> None: + self._csv_reader.read_data.return_value = [] + with pytest.raises(AirbyteTracedException) as exception: + self._infer_schema() + assert exception.value.failure_type == FailureType.config_error + def _test_infer_schema(self, rows: List[str], expected_type: str) -> None: self._csv_reader.read_data.return_value = ({self._HEADER_NAME: row} for row in rows) inferred_schema = self._infer_schema() @@ -260,7 +268,7 @@ def setUp(self) -> None: self._config.name = self._CONFIG_NAME self._config.format = self._config_format - self._file = Mock(spec=RemoteFile) + self._file = RemoteFile(uri="a uri", last_modified=datetime.now()) self._stream_reader = Mock(spec=AbstractFileBasedStreamReader) self._logger = Mock(spec=logging.Logger) self._csv_reader = _CsvReader() @@ -292,6 +300,21 @@ def test_given_autogenerated_headers_when_read_data_then_generate_headers_with_f assert list(data_generator) == [{"f0": "0", "f1": "1", "f2": "2", "f3": "3", "f4": "4", "f5": "5", "f6": "6"}] + def test_given_skip_row_before_and_after_and_autogenerated_headers_when_read_data_then_generate_headers_with_format_fX(self) -> None: + self._config_format.header_definition = CsvHeaderAutogenerated() + self._config_format.skip_rows_before_header = 1 + self._config_format.skip_rows_after_header = 2 + self._stream_reader.open_file.return_value = CsvFileBuilder().with_data([ + "skip before", + "skip after 1", + "skip after 2", + "0,1,2,3,4,5,6" + ]).build() + + data_generator = self._read_data() + + assert list(data_generator) == [{"f0": "0", "f1": "1", "f2": "2", "f3": "3", "f4": "4", "f5": "5", "f6": "6"}] + def test_given_user_provided_headers_when_read_data_then_use_user_provided_headers(self) -> None: self._config_format.header_definition = CsvHeaderUserProvided(column_names=["first", "second", "third", "fourth"]) self._stream_reader.open_file.return_value = CsvFileBuilder().with_data(["0,1,2,3"]).build() diff --git a/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/avro_scenarios.py b/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/avro_scenarios.py index 27ef71fd9005..342e8b759994 100644 --- a/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/avro_scenarios.py +++ b/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/avro_scenarios.py @@ -203,7 +203,7 @@ "streams": [ { "name": "stream1", - "file_type": "avro", + "format": {"filetype": "avro"}, "globs": ["*"], "validation_policy": "Emit Record", } @@ -266,7 +266,7 @@ "streams": [ { "name": "stream1", - "file_type": "avro", + "format": {"filetype": "avro"}, "globs": ["*"], "validation_policy": "Emit Record", } @@ -362,7 +362,7 @@ "streams": [ { "name": "stream1", - "file_type": "avro", + "format": {"filetype": "avro"}, "globs": ["*"], "validation_policy": "Emit Record", } @@ -463,13 +463,13 @@ "streams": [ { "name": "songs_stream", - "file_type": "avro", + "format": {"filetype": "avro"}, "globs": ["*_songs.avro"], "validation_policy": "Emit Record", }, { "name": "festivals_stream", - "file_type": "avro", + "format": {"filetype": "avro"}, "globs": ["*_festivals.avro"], "validation_policy": "Emit Record", }, @@ -629,7 +629,6 @@ "streams": [ { "name": "stream1", - "file_type": "avro", "globs": ["*"], "validation_policy": "Emit Record", "format": { diff --git a/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/check_scenarios.py b/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/check_scenarios.py index 880046bb1ef2..aa7d26e9383a 100644 --- a/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/check_scenarios.py +++ b/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/check_scenarios.py @@ -17,7 +17,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv"], "validation_policy": "Emit Record", } @@ -55,13 +55,13 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv", "*.gz"], "validation_policy": "Emit Record", }, { "name": "stream2", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv", "*.gz"], "validation_policy": "Emit Record", } @@ -79,7 +79,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*"], "validation_policy": "Emit Record", } @@ -109,7 +109,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv"], "validation_policy": "Emit Record", "input_schema": '{"col1": "string", "col2": "string"}', @@ -158,7 +158,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv"], "validation_policy": "always_fail", "input_schema": '{"col1": "number", "col2": "string"}', @@ -179,13 +179,13 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv"], "validation_policy": "Emit Record", }, { "name": "stream2", - "file_type": "jsonl", + "format": {"filetype": "jsonl"}, "globs": ["*.csv"], "validation_policy": "Emit Record", } diff --git a/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/csv_scenarios.py b/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/csv_scenarios.py index 52374b3aadb4..86b6a163a8ce 100644 --- a/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/csv_scenarios.py +++ b/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/csv_scenarios.py @@ -2,7 +2,9 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # -from airbyte_cdk.sources.file_based.exceptions import ConfigValidationError, FileBasedSourceError, SchemaInferenceError +from airbyte_cdk.sources.file_based.config.csv_format import CsvFormat +from airbyte_cdk.sources.file_based.exceptions import ConfigValidationError, FileBasedSourceError +from airbyte_cdk.utils.traced_exception import AirbyteTracedException from unit_tests.sources.file_based.helpers import EmptySchemaParser, LowInferenceLimitDiscoveryPolicy from unit_tests.sources.file_based.scenarios.scenario_builder import TestScenarioBuilder @@ -14,7 +16,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*"], "validation_policy": "Emit Record", } @@ -63,11 +65,6 @@ "type": "object", "properties": { "name": {"title": "Name", "description": "The name of the stream.", "type": "string"}, - "file_type": { - "title": "File Type", - "description": "The data file type that is being extracted for a stream.", - "type": "string", - }, "globs": { "title": "Globs", "description": 'The pattern used to specify which files should be selected from the file system. For more information on glob pattern matching look here.', @@ -111,7 +108,7 @@ "title": "Avro Format", "type": "object", "properties": { - "filetype": {"title": "Filetype", "default": "avro", "enum": ["avro"], "type": "string"}, + "filetype": {"title": "Filetype", "default": "avro", "const": "avro", "type": "string"}, "double_as_string": { "title": "Convert Double Fields to Strings", "description": "Whether to convert double fields to strings. This is recommended if you have decimal numbers with a high degree of precision because there can be a loss precision when handling floating point numbers.", @@ -124,7 +121,7 @@ "title": "CSV Format", "type": "object", "properties": { - "filetype": {"title": "Filetype", "default": "csv", "enum": ["csv"], "type": "string"}, + "filetype": {"title": "Filetype", "default": "csv", "const": "csv", "type": "string"}, "delimiter": { "title": "Delimiter", "description": "The character delimiting individual cells in the CSV data. This may only be a 1-character string. For tab-delimited data enter '\\t'.", @@ -190,21 +187,21 @@ "title": "From CSV", "type": "object", "properties": { - "header_definition_type": {"title": "Header Definition Type", "default": "From CSV", "enum": ["From CSV"], "type": "string"}, + "header_definition_type": {"title": "Header Definition Type", "default": "From CSV", "const": "From CSV", "type": "string"}, }, }, { "title": "Autogenerated", "type": "object", "properties": { - "header_definition_type": {"title": "Header Definition Type", "default": "Autogenerated", "enum": ["Autogenerated"], "type": "string"}, + "header_definition_type": {"title": "Header Definition Type", "default": "Autogenerated", "const": "Autogenerated", "type": "string"}, }, }, { "title": "User Provided", "type": "object", "properties": { - "header_definition_type": {"title": "Header Definition Type", "default": "User Provided", "enum": ["User Provided"], "type": "string"}, + "header_definition_type": {"title": "Header Definition Type", "default": "User Provided", "const": "User Provided", "type": "string"}, "column_names": { "title": "Column Names", "description": "The column names that will be used while emitting the CSV records", @@ -247,7 +244,7 @@ "title": "Jsonl Format", "type": "object", "properties": { - "filetype": {"title": "Filetype", "default": "jsonl", "enum": ["jsonl"], "type": "string"} + "filetype": {"title": "Filetype", "default": "jsonl", "const": "jsonl", "type": "string"} }, }, { @@ -257,7 +254,7 @@ "filetype": { "title": "Filetype", "default": "parquet", - "enum": ["parquet"], + "const": "parquet", "type": "string", }, "decimal_as_float": { @@ -277,7 +274,7 @@ "type": "boolean", }, }, - "required": ["name", "file_type"], + "required": ["name", "format"], }, }, }, @@ -338,7 +335,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*"], "validation_policy": "Emit Record", } @@ -440,7 +437,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*"], "validation_policy": "Emit Record", } @@ -534,13 +531,13 @@ invalid_csv_scenario = ( TestScenarioBuilder() - .set_name("invalid_csv_scenario") + .set_name("invalid_csv_scenario") # too many values for the number of headers .set_config( { "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*"], "validation_policy": "Emit Record", } @@ -582,7 +579,7 @@ } ) .set_expected_records([]) - .set_expected_discover_error(SchemaInferenceError, FileBasedSourceError.SCHEMA_INFERENCE_ERROR.value) + .set_expected_discover_error(AirbyteTracedException, FileBasedSourceError.SCHEMA_INFERENCE_ERROR.value) .set_expected_logs( { "read": [ @@ -603,7 +600,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv"], "validation_policy": "Emit Record", } @@ -683,13 +680,13 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv"], "validation_policy": "Emit Record", }, { "name": "stream2", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["b.csv"], "validation_policy": "Emit Record", }, @@ -801,7 +798,6 @@ "streams": [ { "name": "stream1", - "file_type": "csv", "globs": ["*"], "validation_policy": "Emit Record", "format": { @@ -907,14 +903,12 @@ "streams": [ { "name": "stream1", - "file_type": "csv", "globs": ["*.csv"], "validation_policy": "Emit Record", "format": {"filetype": "csv", "delimiter": "#", "escape_char": "!", "double_quote": True, "newlines_in_values": False}, }, { "name": "stream2", - "file_type": "csv", "globs": ["b.csv"], "validation_policy": "Emit Record", "format": { @@ -1054,7 +1048,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*"], "validation_policy": "Emit Record", } @@ -1095,8 +1089,8 @@ ] } ) - .set_parsers({"csv": EmptySchemaParser()}) - .set_expected_discover_error(SchemaInferenceError, FileBasedSourceError.SCHEMA_INFERENCE_ERROR.value) + .set_parsers({CsvFormat: EmptySchemaParser()}) + .set_expected_discover_error(AirbyteTracedException, FileBasedSourceError.SCHEMA_INFERENCE_ERROR.value) .set_expected_records( [ { @@ -1129,7 +1123,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*"], "validation_policy": "Skip Record", "schemaless": True, @@ -1224,14 +1218,14 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["a.csv"], "validation_policy": "Skip Record", "schemaless": True, }, { "name": "stream2", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["b.csv"], "validation_policy": "Skip Record", }, @@ -1331,7 +1325,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*"], "validation_policy": "Skip Record", "input_schema": '{"col1": "string", "col2": "string", "col3": "string"}', @@ -1395,7 +1389,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["a.csv"], "validation_policy": "Skip Record", "schemaless": True, @@ -1403,7 +1397,7 @@ }, { "name": "stream2", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["b.csv"], "validation_policy": "Skip Record", }, @@ -1479,7 +1473,6 @@ "streams": [ { "name": "stream1", - "file_type": "csv", "globs": ["*"], "validation_policy": "Emit Record", "input_schema": '{"col1": "string", "col2": "string"}', @@ -1548,7 +1541,6 @@ "streams": [ { "name": "stream1", - "file_type": "csv", "globs": ["*"], "validation_policy": "Emit Record", "input_schema": '{"col1": "string", "col2": "string"}', @@ -1618,7 +1610,6 @@ "streams": [ { "name": "stream1", - "file_type": "csv", "globs": ["*"], "validation_policy": "Emit Record", "format": { @@ -1685,7 +1676,6 @@ "streams": [ { "name": "stream1", - "file_type": "csv", "globs": ["*"], "validation_policy": "Emit Record", "format": {"filetype": "csv", "null_values": ["null"]}, @@ -1750,7 +1740,6 @@ "streams": [ { "name": "stream1", - "file_type": "csv", "globs": ["*"], "validation_policy": "Emit Record", "format": { @@ -1817,7 +1806,6 @@ "streams": [ { "name": "stream1", - "file_type": "csv", "globs": ["*"], "validation_policy": "Emit Record", "format": { @@ -1885,7 +1873,7 @@ ] } ) - .set_expected_discover_error(SchemaInferenceError, FileBasedSourceError.SCHEMA_INFERENCE_ERROR.value) + .set_expected_discover_error(AirbyteTracedException, FileBasedSourceError.SCHEMA_INFERENCE_ERROR.value) ).build() csv_escape_char_is_set_scenario = ( @@ -1896,7 +1884,6 @@ "streams": [ { "name": "stream1", - "file_type": "csv", "globs": ["*"], "validation_policy": "Emit Record", "format": { @@ -1968,7 +1955,6 @@ "streams": [ { "name": "stream1", - "file_type": "csv", "globs": ["*"], "validation_policy": "Emit Record", "format": { @@ -2039,7 +2025,6 @@ "streams": [ { "name": "stream1", - "file_type": "csv", "globs": ["*"], "validation_policy": "Emit Record", "format": {"filetype": "csv", "double_quotes": True, "quote_char": "@", "delimiter": "|", "escape_char": "+"}, @@ -2105,7 +2090,6 @@ "streams": [ { "name": "stream1", - "file_type": "csv", "globs": ["*"], "validation_policy": "Emit Record", "format": { @@ -2175,7 +2159,6 @@ "streams": [ { "name": "stream1", - "file_type": "csv", "globs": ["*"], "validation_policy": "Emit Record", "format": {"filetype": "csv", "skip_rows_before_header": 2}, @@ -2242,7 +2225,6 @@ "streams": [ { "name": "stream1", - "file_type": "csv", "globs": ["*"], "validation_policy": "Emit Record", "format": {"filetype": "csv", "skip_rows_after_header": 2}, @@ -2309,7 +2291,6 @@ "streams": [ { "name": "stream1", - "file_type": "csv", "globs": ["*"], "validation_policy": "Emit Record", "format": { @@ -2380,7 +2361,6 @@ "streams": [ { "name": "stream1", - "file_type": "csv", "globs": ["*"], "validation_policy": "Emit Record", "format": { @@ -2447,7 +2427,6 @@ "streams": [ { "name": "stream1", - "file_type": "csv", "globs": ["*"], "validation_policy": "Emit Record", "input_schema": '{"col1": "boolean", "col2": "boolean"}', @@ -2517,7 +2496,6 @@ "streams": [ { "name": "stream1", - "file_type": "csv", "globs": ["*"], "validation_policy": "Emit Record", "input_schema": '{"col1": "boolean", "col2": "string"}', @@ -2586,7 +2564,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*"], "validation_policy": "Emit Record", } @@ -2630,5 +2608,5 @@ } ) .set_expected_records([]) - .set_expected_discover_error(SchemaInferenceError, FileBasedSourceError.SCHEMA_INFERENCE_ERROR.value) + .set_expected_discover_error(AirbyteTracedException, FileBasedSourceError.SCHEMA_INFERENCE_ERROR.value) ).build() diff --git a/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/incremental_scenarios.py b/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/incremental_scenarios.py index 3f4a95933b02..78eb33a6cadc 100644 --- a/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/incremental_scenarios.py +++ b/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/incremental_scenarios.py @@ -13,7 +13,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv"], "validation_policy": "Emit Record", } @@ -100,7 +100,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv"], "validation_policy": "Emit Record", } @@ -184,7 +184,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv"], "validation_policy": "Emit Record", } @@ -270,7 +270,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv"], "validation_policy": "Emit Record", } @@ -344,7 +344,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv"], "validation_policy": "Emit Record", } @@ -435,7 +435,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv"], "validation_policy": "Emit Record", } @@ -521,7 +521,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv"], "validation_policy": "Emit Record", } @@ -620,7 +620,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv"], "validation_policy": "Emit Record", } @@ -733,7 +733,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv"], "validation_policy": "Emit Record", } @@ -855,7 +855,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv"], "validation_policy": "Emit Record", } @@ -969,7 +969,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv"], "validation_policy": "Emit Record", } @@ -1107,7 +1107,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv"], "validation_policy": "Emit Record", "days_to_sync_if_history_is_full": 3, @@ -1225,7 +1225,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv"], "validation_policy": "Emit Record", "days_to_sync_if_history_is_full": 3, @@ -1342,7 +1342,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv"], "validation_policy": "Emit Record", "days_to_sync_if_history_is_full": 3, @@ -1465,7 +1465,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv"], "validation_policy": "Emit Record", "days_to_sync_if_history_is_full": 3, diff --git a/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/jsonl_scenarios.py b/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/jsonl_scenarios.py index 6e305f75ba0a..f93ad3712e98 100644 --- a/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/jsonl_scenarios.py +++ b/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/jsonl_scenarios.py @@ -2,7 +2,9 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # -from airbyte_cdk.sources.file_based.exceptions import FileBasedSourceError, SchemaInferenceError +from airbyte_cdk.sources.file_based.config.jsonl_format import JsonlFormat +from airbyte_cdk.sources.file_based.exceptions import FileBasedSourceError +from airbyte_cdk.utils.traced_exception import AirbyteTracedException from unit_tests.sources.file_based.helpers import LowInferenceBytesJsonlParser, LowInferenceLimitDiscoveryPolicy from unit_tests.sources.file_based.scenarios.scenario_builder import TestScenarioBuilder @@ -14,7 +16,7 @@ "streams": [ { "name": "stream1", - "file_type": "jsonl", + "format": {"filetype": "jsonl"}, "globs": ["*"], "validation_policy": "Emit Record", } @@ -81,7 +83,7 @@ "streams": [ { "name": "stream1", - "file_type": "jsonl", + "format": {"filetype": "jsonl"}, "globs": ["*"], "validation_policy": "Emit Record", } @@ -162,7 +164,7 @@ "streams": [ { "name": "stream1", - "file_type": "jsonl", + "format": {"filetype": "jsonl"}, "globs": ["*"], "validation_policy": "Emit Record", } @@ -240,7 +242,7 @@ "streams": [ { "name": "stream1", - "file_type": "jsonl", + "format": {"filetype": "jsonl"}, "globs": ["*"], "validation_policy": "Emit Record", } @@ -306,7 +308,7 @@ "_ab_source_file_url": "b.jsonl"}, "stream": "stream1"}, ] ) - .set_parsers({"jsonl": LowInferenceBytesJsonlParser()}) + .set_parsers({JsonlFormat: LowInferenceBytesJsonlParser()}) ).build() @@ -318,7 +320,7 @@ "streams": [ { "name": "stream1", - "file_type": "jsonl", + "format": {"filetype": "jsonl"}, "globs": ["*"], "validation_policy": "Emit Record", } @@ -367,7 +369,7 @@ {"data": {"col1": "val1", "_ab_source_file_last_modified": "2023-06-05T03:54:07.000000Z", "_ab_source_file_url": "a.jsonl"}, "stream": "stream1"}, ]) - .set_expected_discover_error(SchemaInferenceError, FileBasedSourceError.SCHEMA_INFERENCE_ERROR.value) + .set_expected_discover_error(AirbyteTracedException, FileBasedSourceError.SCHEMA_INFERENCE_ERROR.value) .set_expected_logs( { "read": [ @@ -389,13 +391,13 @@ "streams": [ { "name": "stream1", - "file_type": "jsonl", + "format": {"filetype": "jsonl"}, "globs": ["*.jsonl"], "validation_policy": "Emit Record", }, { "name": "stream2", - "file_type": "jsonl", + "format": {"filetype": "jsonl"}, "globs": ["b.jsonl"], "validation_policy": "Emit Record", } @@ -500,7 +502,7 @@ "streams": [ { "name": "stream1", - "file_type": "jsonl", + "format": {"filetype": "jsonl"}, "globs": ["*"], "validation_policy": "Skip Record", "schemaless": True, @@ -576,14 +578,14 @@ "streams": [ { "name": "stream1", - "file_type": "jsonl", + "format": {"filetype": "jsonl"}, "globs": ["a.jsonl"], "validation_policy": "Skip Record", "schemaless": True, }, { "name": "stream2", - "file_type": "jsonl", + "format": {"filetype": "jsonl"}, "globs": ["b.jsonl"], "validation_policy": "Skip Record", } @@ -677,7 +679,7 @@ "streams": [ { "name": "stream1", - "file_type": "jsonl", + "format": {"filetype": "jsonl"}, "globs": ["*"], "validation_policy": "Emit Record", "input_schema": '{"col1": "integer", "col2": "string"}' diff --git a/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/parquet_scenarios.py b/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/parquet_scenarios.py index efba1c4bc043..c605c79d4ebc 100644 --- a/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/parquet_scenarios.py +++ b/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/parquet_scenarios.py @@ -6,7 +6,7 @@ import decimal import pyarrow as pa -from airbyte_cdk.sources.file_based.exceptions import SchemaInferenceError +from airbyte_cdk.utils.traced_exception import AirbyteTracedException from unit_tests.sources.file_based.in_memory_files_source import TemporaryParquetFilesStreamReader from unit_tests.sources.file_based.scenarios.scenario_builder import TestScenarioBuilder @@ -171,7 +171,7 @@ "streams": [ { "name": "stream1", - "file_type": "parquet", + "format": {"filetype": "parquet"}, "globs": ["*"], "validation_policy": "Emit Record", } @@ -227,7 +227,7 @@ "streams": [ { "name": "stream1", - "file_type": "parquet", + "format": {"filetype": "parquet"}, "globs": ["path_prefix/**/*"], "validation_policy": "Emit Record", } @@ -289,7 +289,7 @@ "streams": [ { "name": "stream1", - "file_type": "parquet", + "format": {"filetype": "parquet"}, "globs": ["*"], "validation_policy": "Emit Record", } @@ -352,7 +352,7 @@ "streams": [ { "name": "stream1", - "file_type": "parquet", + "format": {"filetype": "parquet"}, "globs": ["*"], "validation_policy": "Emit Record", } @@ -493,7 +493,7 @@ "streams": [ { "name": "stream1", - "file_type": "parquet", + "format": {"filetype": "parquet"}, "globs": ["*"], "validation_policy": "Emit Record", } @@ -544,7 +544,6 @@ "streams": [ { "name": "stream1", - "file_type": "parquet", "globs": ["*"], "validation_policy": "Emit Record", "format": { @@ -599,7 +598,6 @@ "streams": [ { "name": "stream1", - "file_type": "parquet", "globs": ["*"], "validation_policy": "Emit Record", "format": { @@ -654,7 +652,6 @@ "streams": [ { "name": "stream1", - "file_type": "parquet", "format": { "filetype": "parquet", }, @@ -708,7 +705,6 @@ "streams": [ { "name": "stream1", - "file_type": "parquet", "globs": ["*"], "validation_policy": "Emit Record", "format": { @@ -730,7 +726,7 @@ "message": "Error parsing record" } ]}) - .set_expected_discover_error(SchemaInferenceError, "Error inferring schema from files") + .set_expected_discover_error(AirbyteTracedException, "Error inferring schema from files") .set_expected_catalog( { "streams": [ diff --git a/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/scenario_builder.py b/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/scenario_builder.py index b3cf8c44037e..0b6616ed57a9 100644 --- a/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/scenario_builder.py +++ b/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/scenario_builder.py @@ -163,7 +163,7 @@ def set_expected_records(self, expected_records: List[Mapping[str, Any]]) -> "Te self._expected_records = expected_records return self - def set_parsers(self, parsers: Mapping[str, FileTypeParser]) -> "TestScenarioBuilder": + def set_parsers(self, parsers: Mapping[Type[Any], FileTypeParser]) -> "TestScenarioBuilder": self._parsers = parsers return self diff --git a/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/user_input_schema_scenarios.py b/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/user_input_schema_scenarios.py index 33c8587a04d2..9306b47b3e6d 100644 --- a/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/user_input_schema_scenarios.py +++ b/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/user_input_schema_scenarios.py @@ -78,7 +78,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*"], "validation_policy": "Emit Record", "input_schema": '{"col1": "string", "col2": "string"}', @@ -98,7 +98,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*"], "validation_policy": "Emit Record", "input_schema": '{"col1": "x", "col2": "string"}', @@ -121,7 +121,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*"], "validation_policy": "Emit Record", "input_schema": '{"col1": "integer", "col2": "string"}', @@ -171,7 +171,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*"], "validation_policy": "Skip Record", "input_schema": '{"col1": "integer", "col2": "string"}', @@ -364,21 +364,21 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["a.csv"], "validation_policy": "Emit Record", "input_schema": '{"col1": "string", "col2": "integer"}', }, { "name": "stream2", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["b.csv"], "validation_policy": "Emit Record", "input_schema": '{"col1": "string", "col2": "string", "col3": "string"}', }, { "name": "stream3", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["c.csv"], "validation_policy": "Emit Record", }, @@ -398,21 +398,21 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["a.csv"], "validation_policy": "Emit Record", "input_schema": '{"col1": "string", "col2": "integer"}', }, { "name": "stream2", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["b.csv"], "validation_policy": "Emit Record", "input_schema": '{"col1": "x", "col2": "string", "col3": "string"}', # this stream's schema is invalid }, { "name": "stream3", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["c.csv"], "validation_policy": "Emit Record", }, @@ -435,21 +435,21 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["a.csv"], "validation_policy": "Emit Record", "input_schema": '{"col1": "string", "col2": "integer"}', }, { "name": "stream2", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["b.csv"], "validation_policy": "Emit Record", "input_schema": '{"col1": "string", "col2": "integer", "col3": "string"}', # this stream's records do not conform to the schema }, { "name": "stream3", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["c.csv"], "validation_policy": "Emit Record", }, @@ -574,21 +574,21 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["a.csv"], "validation_policy": "Emit Record", "input_schema": '{"col1": "string", "col2": "integer"}', }, { "name": "stream2", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["b.csv"], "validation_policy": "Skip Record", "input_schema": '{"col1": "string", "col2": "integer", "col3": "string"}', # this stream's records do not conform to the schema }, { "name": "stream3", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["c.csv"], "validation_policy": "Emit Record", }, diff --git a/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/validation_policy_scenarios.py b/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/validation_policy_scenarios.py index fb2abf648e1e..e87959a08da0 100644 --- a/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/validation_policy_scenarios.py +++ b/airbyte-cdk/python/unit_tests/sources/file_based/scenarios/validation_policy_scenarios.py @@ -204,7 +204,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv"], "validation_policy": "Skip Record", } @@ -250,13 +250,13 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["a/*.csv"], "validation_policy": "Skip Record", }, { "name": "stream2", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["b/*.csv"], "validation_policy": "Skip Record", } @@ -317,7 +317,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv"], "validation_policy": "Emit Record", } @@ -359,13 +359,13 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["a/*.csv"], "validation_policy": "Emit Record", }, { "name": "stream2", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["b/*.csv"], "validation_policy": "Emit Record", } @@ -418,7 +418,7 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["*.csv"], "validation_policy": "Wait for Discover", } @@ -453,13 +453,13 @@ "streams": [ { "name": "stream1", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["a/*.csv"], "validation_policy": "Wait for Discover", }, { "name": "stream2", - "file_type": "csv", + "format": {"filetype": "csv"}, "globs": ["b/*.csv"], "validation_policy": "Wait for Discover", } diff --git a/airbyte-cdk/python/unit_tests/sources/file_based/stream/test_default_file_based_cursor.py b/airbyte-cdk/python/unit_tests/sources/file_based/stream/test_default_file_based_cursor.py index fdf755b42cdd..731ba3ff8278 100644 --- a/airbyte-cdk/python/unit_tests/sources/file_based/stream/test_default_file_based_cursor.py +++ b/airbyte-cdk/python/unit_tests/sources/file_based/stream/test_default_file_based_cursor.py @@ -7,6 +7,7 @@ from unittest.mock import MagicMock import pytest +from airbyte_cdk.sources.file_based.config.csv_format import CsvFormat from airbyte_cdk.sources.file_based.config.file_based_stream_config import FileBasedStreamConfig, ValidationPolicy from airbyte_cdk.sources.file_based.remote_file import RemoteFile from airbyte_cdk.sources.file_based.stream.cursor.default_file_based_cursor import DefaultFileBasedCursor @@ -264,5 +265,5 @@ def get_cursor(max_history_size: int, days_to_sync_if_history_is_full: int) -> D cursor_cls = DefaultFileBasedCursor cursor_cls.DEFAULT_MAX_HISTORY_SIZE = max_history_size config = FileBasedStreamConfig( - file_type="csv", name="test", validation_policy=ValidationPolicy.emit_record, days_to_sync_if_history_is_full=days_to_sync_if_history_is_full) + format=CsvFormat(), name="test", validation_policy=ValidationPolicy.emit_record, days_to_sync_if_history_is_full=days_to_sync_if_history_is_full) return cursor_cls(config) diff --git a/airbyte-cdk/python/unit_tests/sources/file_based/stream/test_default_file_based_stream.py b/airbyte-cdk/python/unit_tests/sources/file_based/stream/test_default_file_based_stream.py index 99b2ae789a4e..34e114a22f3f 100644 --- a/airbyte-cdk/python/unit_tests/sources/file_based/stream/test_default_file_based_stream.py +++ b/airbyte-cdk/python/unit_tests/sources/file_based/stream/test_default_file_based_stream.py @@ -19,6 +19,10 @@ from airbyte_cdk.sources.file_based.stream.default_file_based_stream import DefaultFileBasedStream +class MockFormat: + pass + + @pytest.mark.parametrize( "input_schema, expected_output", [ @@ -60,13 +64,12 @@ def test_fill_nulls(input_schema: Mapping[str, Any], expected_output: Mapping[st class DefaultFileBasedStreamTest(unittest.TestCase): - _FILE_TYPE = "file_type" _NOW = datetime(2022, 10, 22, tzinfo=timezone.utc) _A_RECORD = {"a_record": 1} def setUp(self) -> None: self._stream_config = Mock() - self._stream_config.file_type = self._FILE_TYPE + self._stream_config.format = MockFormat() self._stream_config.name = "a stream name" self._catalog_schema = Mock() self._stream_reader = Mock(spec=AbstractFileBasedStreamReader) @@ -83,7 +86,7 @@ def setUp(self) -> None: stream_reader=self._stream_reader, availability_strategy=self._availability_strategy, discovery_policy=self._discovery_policy, - parsers={self._FILE_TYPE: self._parser}, + parsers={MockFormat: self._parser}, validation_policy=self._validation_policy, cursor=self._cursor, ) diff --git a/airbyte-cdk/python/unit_tests/sources/file_based/test_scenarios.py b/airbyte-cdk/python/unit_tests/sources/file_based/test_scenarios.py index e89e320430a6..4866423ac8db 100644 --- a/airbyte-cdk/python/unit_tests/sources/file_based/test_scenarios.py +++ b/airbyte-cdk/python/unit_tests/sources/file_based/test_scenarios.py @@ -13,6 +13,7 @@ from airbyte_cdk.entrypoint import launch from airbyte_cdk.logger import AirbyteLogFormatter from airbyte_cdk.models import SyncMode +from airbyte_cdk.utils.traced_exception import AirbyteTracedException from freezegun import freeze_time from pytest import LogCaptureFixture from unit_tests.sources.file_based.scenarios.avro_scenarios import ( @@ -422,4 +423,6 @@ def make_file(path: Path, file_contents: Optional[Union[Mapping[str, Any], List[ def get_error_message_from_exc(exc: ExceptionInfo[Any]) -> str: + if isinstance(exc.value, AirbyteTracedException): + return exc.value.message return str(exc.value.args[0]) diff --git a/airbyte-cdk/python/unit_tests/utils/test_datetime_format_inferrer.py b/airbyte-cdk/python/unit_tests/utils/test_datetime_format_inferrer.py index 68152184b66f..766007467184 100644 --- a/airbyte-cdk/python/unit_tests/utils/test_datetime_format_inferrer.py +++ b/airbyte-cdk/python/unit_tests/utils/test_datetime_format_inferrer.py @@ -22,6 +22,7 @@ ("timestamp_ms_match_string", [{"d": "1686058051000"}], {"d": "%ms"}), ("timestamp_no_match_integer", [{"d": 99}], {}), ("timestamp_no_match_string", [{"d": "99999999999999999999"}], {}), + ("timestamp_overflow", [{"d": f"{10**100}_100"}], {}), # this case was previously causing OverflowError hence this test ("simple_no_match", [{"d": "20220203"}], {}), ("multiple_match", [{"d": "2022-02-03", "e": "2022-02-03"}], {"d": "%Y-%m-%d", "e": "%Y-%m-%d"}), ( diff --git a/airbyte-ci/connectors/connector_ops/README.md b/airbyte-ci/connectors/connector_ops/README.md index ef306478b7cb..344d985bc717 100644 --- a/airbyte-ci/connectors/connector_ops/README.md +++ b/airbyte-ci/connectors/connector_ops/README.md @@ -1,35 +1,46 @@ # connector_ops -A collection of tools and checks run by Github Actions +A collection of utilities for working with Airbyte connectors. -## Running Locally +# Setup -From this directory, create a virtual environment: +## Prerequisites -``` -python3 -m venv .venv +#### Poetry + +Before you can start working on this project, you will need to have Poetry installed on your system. Please follow the instructions below to install Poetry: + +1. Open your terminal or command prompt. +2. Install Poetry using the recommended installation method: + +```bash +curl -sSL https://install.python-poetry.org | POETRY_VERSION=1.5.1 python3 - ``` -This will generate a virtualenv for this module in `.venv/`. Make sure this venv is active in your -development environment of choice. To activate it from the terminal, run: +Alternatively, you can use `pip` to install Poetry: ```bash -source .venv/bin/activate -pip install -e . # assuming you are in the ./airbyte-ci/connectors/connector_ops directory +pip install --user poetry ``` -pip will make binaries for all the commands in setup.py, so you can run `allowed-hosts-checks` directly from the virtual-env +3. After the installation is complete, close and reopen your terminal to ensure the newly installed `poetry` command is available in your system's PATH. -## Testing Locally +For more detailed instructions and alternative installation methods, please refer to the official Poetry documentation: https://python-poetry.org/docs/#installation -To install requirements to run unit tests, use: +### Using Poetry in the Project -``` -pip install -e ".[tests]" -``` +Once Poetry is installed, you can use it to manage the project's dependencies and virtual environment. To get started, navigate to the project's root directory in your terminal and follow these steps: -Unit tests are currently configured to be run from the base `airbyte` directory. You can run the tests from that directory with the following command: +## Installation +```bash +poetry install ``` -pytest -s airbyte-ci/connector_ops/connectors/tests + + +## Testing Locally + +Simply run +```bash +poetry run pytest ``` \ No newline at end of file diff --git a/airbyte-ci/connectors/connector_ops/connector_ops/utils.py b/airbyte-ci/connectors/connector_ops/connector_ops/utils.py index ef3b83e9dd80..32bf07a2dd1e 100644 --- a/airbyte-ci/connectors/connector_ops/connector_ops/utils.py +++ b/airbyte-ci/connectors/connector_ops/connector_ops/utils.py @@ -18,6 +18,7 @@ from ci_credentials import SecretsManager from pydash.objects import get from rich.console import Console +from simpleeval import simple_eval console = Console() @@ -259,7 +260,6 @@ def language(self) -> ConnectorLanguage: except FileNotFoundError: pass return None - # raise ConnectorLanguageError(f"We could not infer {self.technical_name} connector language") @property def version(self) -> str: @@ -288,6 +288,37 @@ def name_from_metadata(self) -> Optional[str]: def support_level(self) -> Optional[str]: return self.metadata.get("supportLevel") if self.metadata else None + def metadata_query_match(self, query_string: str) -> bool: + """Evaluate a query string against the connector metadata. + + Based on the simpleeval library: + https://github.com/danthedeckie/simpleeval + + Examples + -------- + >>> connector.metadata_query_match("'s3' in data.name") + True + + >>> connector.metadata_query_match("data.supportLevel == 'certified'") + False + + >>> connector.metadata_query_match("data.ab_internal.ql >= 100") + True + + Args: + query_string (str): The query string to evaluate. + + Returns: + bool: True if the query string matches the connector metadata, False otherwise. + """ + try: + matches = simple_eval(query_string, names={"data": self.metadata}) + return bool(matches) + except Exception as e: + # Skip on error as we not all fields are present in all connectors. + logging.debug(f"Failed to evaluate query string {query_string} for connector {self.technical_name}, error: {e}") + return False + @property def ab_internal_sl(self) -> int: """Airbyte Internal Field. diff --git a/airbyte-ci/connectors/connector_ops/poetry.lock b/airbyte-ci/connectors/connector_ops/poetry.lock index 1a1e547ab392..298e1371e485 100644 --- a/airbyte-ci/connectors/connector_ops/poetry.lock +++ b/airbyte-ci/connectors/connector_ops/poetry.lock @@ -1090,6 +1090,17 @@ files = [ [package.dependencies] pyasn1 = ">=0.1.3" +[[package]] +name = "simpleeval" +version = "0.9.13" +description = "A simple, safe single expression evaluator library." +optional = false +python-versions = "*" +files = [ + {file = "simpleeval-0.9.13-py2.py3-none-any.whl", hash = "sha256:22a2701a5006e4188d125d34accf2405c2c37c93f6b346f2484b6422415ae54a"}, + {file = "simpleeval-0.9.13.tar.gz", hash = "sha256:4a30f9cc01825fe4c719c785e3762623e350c4840d5e6855c2a8496baaa65fac"}, +] + [[package]] name = "six" version = "1.16.0" @@ -1248,4 +1259,4 @@ files = [ [metadata] lock-version = "2.0" python-versions = "^3.10" -content-hash = "e601115553c94d23c6d25303190d48216b7a6ccc9d93fd3dec2369ffc5094a5b" +content-hash = "90d4eb642ae88b77052b419c50abfe1d56ddf9425af44561123cd140f6baf00c" diff --git a/airbyte-ci/connectors/connector_ops/pyproject.toml b/airbyte-ci/connectors/connector_ops/pyproject.toml index 3faca6122351..f1531f73abe1 100644 --- a/airbyte-ci/connectors/connector_ops/pyproject.toml +++ b/airbyte-ci/connectors/connector_ops/pyproject.toml @@ -1,5 +1,5 @@ [build-system] -requires = ["poetry-core>=1.0.0"] +requires = ["poetry-core>=1.1.0"] build-backend = "poetry.core.masonry.api" [tool.poetry] @@ -21,6 +21,7 @@ pydash = "^7.0.4" google-cloud-storage = "^2.8.0" ci-credentials = {path = "../ci_credentials"} pandas = "^2.0.3" +simpleeval = "^0.9.13" [tool.poetry.group.test.dependencies] pytest = "^7.4.0" diff --git a/airbyte-ci/connectors/connector_ops/tests/conftest.py b/airbyte-ci/connectors/connector_ops/tests/conftest.py index fbc90e8a1f59..78aad3d1c104 100644 --- a/airbyte-ci/connectors/connector_ops/tests/conftest.py +++ b/airbyte-ci/connectors/connector_ops/tests/conftest.py @@ -3,6 +3,7 @@ # +import os from datetime import datetime import pandas as pd @@ -53,3 +54,12 @@ def dummy_qa_report() -> pd.DataFrame: } ] ) + + +@pytest.fixture(autouse=True) +def set_working_dir_to_repo_root(monkeypatch): + """Set working directory to the root of the repository. + + HACK: This is a workaround for the fact that these tests are not run from the root of the repository. + """ + monkeypatch.chdir(os.path.join(os.path.dirname(__file__), "..", "..", "..", "..")) diff --git a/airbyte-ci/connectors/connector_ops/tests/test_utils.py b/airbyte-ci/connectors/connector_ops/tests/test_utils.py index c2cc09db0e19..b4f6ca7746cb 100644 --- a/airbyte-ci/connectors/connector_ops/tests/test_utils.py +++ b/airbyte-ci/connectors/connector_ops/tests/test_utils.py @@ -44,13 +44,13 @@ def test_init(self, connector, exists, mocker, tmp_path): assert isinstance(connector.metadata, dict) assert isinstance(connector.support_level, str) assert isinstance(connector.acceptance_test_config, dict) - assert connector.icon_path == Path(f"./airbyte-config-oss/init-oss/src/main/resources/icons/{connector.metadata['icon']}") + assert connector.icon_path == Path(f"./airbyte-integrations/connectors/{connector.technical_name}/icon.svg") assert len(connector.version.split(".")) == 3 else: assert connector.metadata is None assert connector.support_level is None assert connector.acceptance_test_config is None - assert connector.icon_path == Path(f"./airbyte-config-oss/init-oss/src/main/resources/icons/{connector.name}.svg") + assert connector.icon_path == Path(f"./airbyte-integrations/connectors/{connector.technical_name}/icon.svg") with pytest.raises(FileNotFoundError): connector.version with pytest.raises(utils.ConnectorVersionNotFound): @@ -58,6 +58,21 @@ def test_init(self, connector, exists, mocker, tmp_path): mocker.patch.object(utils.Connector, "code_directory", tmp_path) utils.Connector(connector.technical_name).version + def test_metadata_query_match(self, mocker): + connector = utils.Connector("source-faker") + mocker.patch.object(utils.Connector, "metadata", {"dockerRepository": "airbyte/source-faker", "ab_internal": {"ql": 100}}) + assert connector.metadata_query_match("data.dockerRepository == 'airbyte/source-faker'") + assert connector.metadata_query_match("'source' in data.dockerRepository") + assert not connector.metadata_query_match("data.dockerRepository == 'airbyte/source-faker2'") + assert not connector.metadata_query_match("'destination' in data.dockerRepository") + assert connector.metadata_query_match("data.ab_internal.ql == 100") + assert connector.metadata_query_match("data.ab_internal.ql >= 100") + assert connector.metadata_query_match("data.ab_internal.ql > 1") + assert not connector.metadata_query_match("data.ab_internal.ql == 101") + assert not connector.metadata_query_match("data.ab_internal.ql >= 101") + assert not connector.metadata_query_match("data.ab_internal.ql > 101") + assert not connector.metadata_query_match("data.ab_internal == whatever") + @pytest.fixture() def gradle_file_with_dependencies(tmpdir) -> Path: @@ -77,7 +92,7 @@ def gradle_file_with_dependencies(tmpdir) -> Path: } """ ) - expected_dependencies = [Path("path/to/dependency1"), Path("path/to/dependency2")] + expected_dependencies = [Path("path/to/dependency1"), Path("path/to/dependency2"), Path("airbyte-cdk/java/airbyte-cdk")] expected_test_dependencies = [Path("path/to/test/dependency"), Path("path/to/test/dependency1"), Path("path/to/test/dependency2")] return test_gradle_file, expected_dependencies, expected_test_dependencies @@ -85,7 +100,7 @@ def gradle_file_with_dependencies(tmpdir) -> Path: def test_parse_dependencies(gradle_file_with_dependencies): gradle_file, expected_regular_dependencies, expected_test_dependencies = gradle_file_with_dependencies - regular_dependencies, test_dependencies = utils.parse_dependencies(gradle_file) + regular_dependencies, test_dependencies = utils.parse_gradle_dependencies(gradle_file) assert len(regular_dependencies) == len(expected_regular_dependencies) assert all([regular_dependency in expected_regular_dependencies for regular_dependency in regular_dependencies]) assert len(test_dependencies) == len(expected_test_dependencies) diff --git a/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/ConnectorBuildOptions.py b/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/ConnectorBuildOptions.py new file mode 100644 index 000000000000..fad581333416 --- /dev/null +++ b/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/ConnectorBuildOptions.py @@ -0,0 +1,19 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + +# generated by datamodel-codegen: +# filename: ConnectorBuildOptions.yaml + +from __future__ import annotations + +from typing import Optional + +from pydantic import BaseModel, Extra + + +class ConnectorBuildOptions(BaseModel): + class Config: + extra = Extra.forbid + + baseImage: Optional[str] = None diff --git a/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/ConnectorMetadataDefinitionV0.py b/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/ConnectorMetadataDefinitionV0.py index 4721e9f15f21..37765d28966c 100644 --- a/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/ConnectorMetadataDefinitionV0.py +++ b/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/ConnectorMetadataDefinitionV0.py @@ -15,6 +15,13 @@ from typing_extensions import Literal +class ConnectorBuildOptions(BaseModel): + class Config: + extra = Extra.forbid + + baseImage: Optional[str] = None + + class ReleaseStage(BaseModel): __root__: Literal["alpha", "beta", "generally_available", "custom"] = Field( ..., @@ -103,9 +110,7 @@ class Config: ..., description="The deadline by which to upgrade before the breaking change takes effect.", ) - message: str = Field( - ..., description="Descriptive message detailing the breaking change." - ) + message: str = Field(..., description="Descriptive message detailing the breaking change.") migrationDocumentationUrl: Optional[AnyUrl] = Field( None, description="URL to documentation on how to migrate to the current version. Defaults to ${documentationUrl}-migrations#${version}", @@ -189,11 +194,12 @@ class Config: class Data(BaseModel): class Config: - extra = Extra.allow + extra = Extra.forbid name: str icon: Optional[str] = None definitionId: UUID + connectorBuildOptions: Optional[ConnectorBuildOptions] = None connectorType: Literal["destination", "source"] dockerRepository: str dockerImageTag: str @@ -210,12 +216,8 @@ class Config: None, description="The date when this connector was first released, in yyyy-mm-dd format.", ) - protocolVersion: Optional[str] = Field( - None, description="the Airbyte Protocol version supported by the connector" - ) - connectorSubtype: Literal[ - "api", "database", "file", "custom", "message_queue", "unknown" - ] + protocolVersion: Optional[str] = Field(None, description="the Airbyte Protocol version supported by the connector") + connectorSubtype: Literal["api", "database", "file", "custom", "message_queue", "unknown"] releaseStage: ReleaseStage supportLevel: Optional[SupportLevel] = None tags: Optional[List[str]] = Field( diff --git a/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/ConnectorRegistryDestinationDefinition.py b/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/ConnectorRegistryDestinationDefinition.py index 5b7e71acb9f1..e34a2e5bde17 100644 --- a/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/ConnectorRegistryDestinationDefinition.py +++ b/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/ConnectorRegistryDestinationDefinition.py @@ -93,9 +93,7 @@ class Config: ..., description="The deadline by which to upgrade before the breaking change takes effect.", ) - message: str = Field( - ..., description="Descriptive message detailing the breaking change." - ) + message: str = Field(..., description="Descriptive message detailing the breaking change.") migrationDocumentationUrl: Optional[AnyUrl] = Field( None, description="URL to documentation on how to migrate to the current version. Defaults to ${documentationUrl}-migrations#${version}", @@ -170,9 +168,7 @@ class Config: False, description="true if this connector definition is available to all workspaces", ) - custom: Optional[bool] = Field( - False, description="whether this is a custom connector definition" - ) + custom: Optional[bool] = Field(False, description="whether this is a custom connector definition") releaseStage: Optional[ReleaseStage] = None supportLevel: Optional[SupportLevel] = None releaseDate: Optional[date] = Field( @@ -184,9 +180,7 @@ class Config: description="An array of tags that describe the connector. E.g: language:python, keyword:rds, etc.", ) resourceRequirements: Optional[ActorDefinitionResourceRequirements] = None - protocolVersion: Optional[str] = Field( - None, description="the Airbyte Protocol version supported by the connector" - ) + protocolVersion: Optional[str] = Field(None, description="the Airbyte Protocol version supported by the connector") normalizationConfig: Optional[NormalizationDestinationDefinitionConfig] = None supportsDbt: Optional[bool] = Field( None, diff --git a/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/ConnectorRegistrySourceDefinition.py b/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/ConnectorRegistrySourceDefinition.py index 7836ffe5ed44..3c20a89061e2 100644 --- a/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/ConnectorRegistrySourceDefinition.py +++ b/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/ConnectorRegistrySourceDefinition.py @@ -85,9 +85,7 @@ class Config: ..., description="The deadline by which to upgrade before the breaking change takes effect.", ) - message: str = Field( - ..., description="Descriptive message detailing the breaking change." - ) + message: str = Field(..., description="Descriptive message detailing the breaking change.") migrationDocumentationUrl: Optional[AnyUrl] = Field( None, description="URL to documentation on how to migrate to the current version. Defaults to ${documentationUrl}-migrations#${version}", @@ -163,9 +161,7 @@ class Config: False, description="true if this connector definition is available to all workspaces", ) - custom: Optional[bool] = Field( - False, description="whether this is a custom connector definition" - ) + custom: Optional[bool] = Field(False, description="whether this is a custom connector definition") releaseStage: Optional[ReleaseStage] = None supportLevel: Optional[SupportLevel] = None releaseDate: Optional[date] = Field( @@ -173,9 +169,7 @@ class Config: description="The date when this connector was first released, in yyyy-mm-dd format.", ) resourceRequirements: Optional[ActorDefinitionResourceRequirements] = None - protocolVersion: Optional[str] = Field( - None, description="the Airbyte Protocol version supported by the connector" - ) + protocolVersion: Optional[str] = Field(None, description="the Airbyte Protocol version supported by the connector") allowedHosts: Optional[AllowedHosts] = None suggestedStreams: Optional[SuggestedStreams] = None maxSecondsBetweenMessages: Optional[int] = Field( diff --git a/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/ConnectorRegistryV0.py b/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/ConnectorRegistryV0.py index 290b76e527ea..17ca45d6eb22 100644 --- a/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/ConnectorRegistryV0.py +++ b/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/ConnectorRegistryV0.py @@ -93,9 +93,7 @@ class Config: ..., description="The deadline by which to upgrade before the breaking change takes effect.", ) - message: str = Field( - ..., description="Descriptive message detailing the breaking change." - ) + message: str = Field(..., description="Descriptive message detailing the breaking change.") migrationDocumentationUrl: Optional[AnyUrl] = Field( None, description="URL to documentation on how to migrate to the current version. Defaults to ${documentationUrl}-migrations#${version}", @@ -181,9 +179,7 @@ class Config: False, description="true if this connector definition is available to all workspaces", ) - custom: Optional[bool] = Field( - False, description="whether this is a custom connector definition" - ) + custom: Optional[bool] = Field(False, description="whether this is a custom connector definition") releaseStage: Optional[ReleaseStage] = None supportLevel: Optional[SupportLevel] = None releaseDate: Optional[date] = Field( @@ -191,9 +187,7 @@ class Config: description="The date when this connector was first released, in yyyy-mm-dd format.", ) resourceRequirements: Optional[ActorDefinitionResourceRequirements] = None - protocolVersion: Optional[str] = Field( - None, description="the Airbyte Protocol version supported by the connector" - ) + protocolVersion: Optional[str] = Field(None, description="the Airbyte Protocol version supported by the connector") allowedHosts: Optional[AllowedHosts] = None suggestedStreams: Optional[SuggestedStreams] = None maxSecondsBetweenMessages: Optional[int] = Field( @@ -224,9 +218,7 @@ class Config: False, description="true if this connector definition is available to all workspaces", ) - custom: Optional[bool] = Field( - False, description="whether this is a custom connector definition" - ) + custom: Optional[bool] = Field(False, description="whether this is a custom connector definition") releaseStage: Optional[ReleaseStage] = None supportLevel: Optional[SupportLevel] = None releaseDate: Optional[date] = Field( @@ -238,9 +230,7 @@ class Config: description="An array of tags that describe the connector. E.g: language:python, keyword:rds, etc.", ) resourceRequirements: Optional[ActorDefinitionResourceRequirements] = None - protocolVersion: Optional[str] = Field( - None, description="the Airbyte Protocol version supported by the connector" - ) + protocolVersion: Optional[str] = Field(None, description="the Airbyte Protocol version supported by the connector") normalizationConfig: Optional[NormalizationDestinationDefinitionConfig] = None supportsDbt: Optional[bool] = Field( None, diff --git a/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/ConnectorReleases.py b/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/ConnectorReleases.py index 493f56fcb0c1..6f20fe5a53af 100644 --- a/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/ConnectorReleases.py +++ b/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/ConnectorReleases.py @@ -21,9 +21,7 @@ class Config: ..., description="The deadline by which to upgrade before the breaking change takes effect.", ) - message: str = Field( - ..., description="Descriptive message detailing the breaking change." - ) + message: str = Field(..., description="Descriptive message detailing the breaking change.") migrationDocumentationUrl: Optional[AnyUrl] = Field( None, description="URL to documentation on how to migrate to the current version. Defaults to ${documentationUrl}-migrations#${version}", diff --git a/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/__init__.py b/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/__init__.py index ec5d6b7b85cf..7363fd7f6bdf 100644 --- a/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/__init__.py +++ b/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/generated/__init__.py @@ -1,7 +1,12 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + # generated by generate-python-classes from .ActorDefinitionResourceRequirements import * from .AirbyteInternal import * from .AllowedHosts import * +from .ConnectorBuildOptions import * from .ConnectorMetadataDefinitionV0 import * from .ConnectorRegistryDestinationDefinition import * from .ConnectorRegistrySourceDefinition import * diff --git a/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/src/ConnectorBuildOptions.yaml b/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/src/ConnectorBuildOptions.yaml new file mode 100644 index 000000000000..c040dd5404be --- /dev/null +++ b/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/src/ConnectorBuildOptions.yaml @@ -0,0 +1,10 @@ +--- +"$schema": http://json-schema.org/draft-07/schema# +"$id": https://github.com/airbytehq/airbyte/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/src/ConnectorBuildOptions.yaml +title: ConnectorBuildOptions +description: metadata specific to the build process. +type: object +additionalProperties: false +properties: + baseImage: + type: string diff --git a/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/src/ConnectorMetadataDefinitionV0.yaml b/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/src/ConnectorMetadataDefinitionV0.yaml index d35b63633b69..8aae33a3f5f6 100644 --- a/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/src/ConnectorMetadataDefinitionV0.yaml +++ b/airbyte-ci/connectors/metadata_service/lib/metadata_service/models/src/ConnectorMetadataDefinitionV0.yaml @@ -25,7 +25,7 @@ properties: - githubIssueLabel - connectorSubtype - releaseStage - additionalProperties: true + additionalProperties: false properties: name: type: string @@ -34,6 +34,8 @@ properties: definitionId: type: string format: uuid + connectorBuildOptions: + "$ref": ConnectorBuildOptions.yaml connectorType: type: string enum: diff --git a/airbyte-ci/connectors/metadata_service/lib/pyproject.toml b/airbyte-ci/connectors/metadata_service/lib/pyproject.toml index 860a58c88bdb..316cdb294fb4 100644 --- a/airbyte-ci/connectors/metadata_service/lib/pyproject.toml +++ b/airbyte-ci/connectors/metadata_service/lib/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "metadata-service" -version = "0.1.4" +version = "0.1.6" description = "" authors = ["Ben Church "] readme = "README.md" diff --git a/airbyte-ci/connectors/metadata_service/lib/tests/fixtures/metadata_validate/invalid/metadata_build_base_image_wrong_type.yaml b/airbyte-ci/connectors/metadata_service/lib/tests/fixtures/metadata_validate/invalid/metadata_build_base_image_wrong_type.yaml new file mode 100644 index 000000000000..b3ecd5aee1f7 --- /dev/null +++ b/airbyte-ci/connectors/metadata_service/lib/tests/fixtures/metadata_validate/invalid/metadata_build_base_image_wrong_type.yaml @@ -0,0 +1,29 @@ +data: + allowedHosts: + hosts: + - "*.googleapis.com" + connectorBuildOptions: + unexpectedField: additionalProperties are not allowed ('unexpectedField' was unexpected) + connectorSubtype: file + connectorType: source + definitionId: 71607ba1-c0ac-4799-8049-7f4b90dd50f7 + dockerImageTag: 0.3.7 + dockerRepository: airbyte/source-google-sheets + githubIssueLabel: source-google-sheets + icon: google-sheets.svg + license: Elv2 + name: Google Sheets + registries: + cloud: + enabled: true + oss: + enabled: true + releaseStage: generally_available + documentationUrl: https://docs.airbyte.com/integrations/sources/google-sheets + tags: + - language:python + ab_internal: + sl: 300 + ql: 400 + supportLevel: certified +metadataSpecVersion: "1.0" diff --git a/airbyte-ci/connectors/metadata_service/lib/tests/fixtures/metadata_validate/valid/metadata_extra_data.yaml b/airbyte-ci/connectors/metadata_service/lib/tests/fixtures/metadata_validate/invalid/metadata_extra_data.yaml similarity index 100% rename from airbyte-ci/connectors/metadata_service/lib/tests/fixtures/metadata_validate/valid/metadata_extra_data.yaml rename to airbyte-ci/connectors/metadata_service/lib/tests/fixtures/metadata_validate/invalid/metadata_extra_data.yaml diff --git a/airbyte-ci/connectors/metadata_service/lib/tests/fixtures/metadata_validate/valid/metadata_build_base_image.yaml b/airbyte-ci/connectors/metadata_service/lib/tests/fixtures/metadata_validate/valid/metadata_build_base_image.yaml new file mode 100644 index 000000000000..b8127ce16f83 --- /dev/null +++ b/airbyte-ci/connectors/metadata_service/lib/tests/fixtures/metadata_validate/valid/metadata_build_base_image.yaml @@ -0,0 +1,29 @@ +data: + allowedHosts: + hosts: + - "*.googleapis.com" + connectorBuildOptions: + baseImage: airbyte/airbyte-python-connectors-base:0.1.0 + connectorSubtype: file + connectorType: source + definitionId: 71607ba1-c0ac-4799-8049-7f4b90dd50f7 + dockerImageTag: 0.3.7 + dockerRepository: airbyte/source-google-sheets + githubIssueLabel: source-google-sheets + icon: google-sheets.svg + license: Elv2 + name: Google Sheets + registries: + cloud: + enabled: true + oss: + enabled: true + releaseStage: generally_available + documentationUrl: https://docs.airbyte.com/integrations/sources/google-sheets + tags: + - language:python + ab_internal: + sl: 300 + ql: 400 + supportLevel: certified +metadataSpecVersion: "1.0" diff --git a/airbyte-ci/connectors/metadata_service/orchestrator/orchestrator/assets/registry_entry.py b/airbyte-ci/connectors/metadata_service/orchestrator/orchestrator/assets/registry_entry.py index c00aa7e8e655..bb41e2d48c8f 100644 --- a/airbyte-ci/connectors/metadata_service/orchestrator/orchestrator/assets/registry_entry.py +++ b/airbyte-ci/connectors/metadata_service/orchestrator/orchestrator/assets/registry_entry.py @@ -446,10 +446,15 @@ def registry_entry(context: OpExecutionContext, metadata_entry: Optional[LatestM for registry_name in enabled_registries } - deleted_registry_entries = { - registry_name: delete_registry_entry(registry_name, metadata_entry, root_metadata_directory_manager) - for registry_name in disabled_registries - } + # Only delete the registry entry if it is the latest version + # This is to preserve any registry specific overrides even if they were removed + deleted_registry_entries = {} + if metadata_entry.is_latest_version_path: + context.log.debug(f"Deleting previous registry entries enabled {metadata_entry.file_path}") + deleted_registry_entries = { + registry_name: delete_registry_entry(registry_name, metadata_entry, root_metadata_directory_manager) + for registry_name in disabled_registries + } dagster_metadata_persist = { f"create_{registry_name}": MetadataValue.url(registry_url) for registry_name, registry_url in persisted_registry_entries.items() diff --git a/airbyte-ci/connectors/metadata_service/orchestrator/orchestrator/assets/registry_report.py b/airbyte-ci/connectors/metadata_service/orchestrator/orchestrator/assets/registry_report.py index 8895b963eff1..a1e26af19329 100644 --- a/airbyte-ci/connectors/metadata_service/orchestrator/orchestrator/assets/registry_report.py +++ b/airbyte-ci/connectors/metadata_service/orchestrator/orchestrator/assets/registry_report.py @@ -324,7 +324,6 @@ def connector_registry_report(context, all_destinations_dataframe, all_sources_d metadata = { "first_10_preview": MetadataValue.md(all_connectors_dataframe.head(10).to_markdown()), - "json": MetadataValue.json(json_string), "json_gcs_url": MetadataValue.url(json_file_handle.public_url), "html_gcs_url": MetadataValue.url(html_file_handle.public_url), } diff --git a/airbyte-ci/connectors/metadata_service/orchestrator/orchestrator/models/metadata.py b/airbyte-ci/connectors/metadata_service/orchestrator/orchestrator/models/metadata.py index 4e5ac4b38299..f73d3aa96346 100644 --- a/airbyte-ci/connectors/metadata_service/orchestrator/orchestrator/models/metadata.py +++ b/airbyte-ci/connectors/metadata_service/orchestrator/orchestrator/models/metadata.py @@ -2,9 +2,9 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # -from dataclasses import dataclass from typing import Any, Optional, Tuple +from metadata_service.constants import METADATA_FILE_NAME from metadata_service.models.generated.ConnectorMetadataDefinitionV0 import ConnectorMetadataDefinitionV0 from pydantic import BaseModel, ValidationError @@ -51,3 +51,11 @@ class LatestMetadataEntry(BaseModel): icon_url: Optional[str] = None bucket_name: Optional[str] = None file_path: Optional[str] = None + + @property + def is_latest_version_path(self) -> bool: + """ + Path is considered a latest version path if the subfolder containing METADATA_FILE_NAME is "latest" + """ + ending_path = f"latest/{METADATA_FILE_NAME}" + return self.file_path.endswith(ending_path) diff --git a/airbyte-ci/connectors/metadata_service/orchestrator/orchestrator/utils/dagster_helpers.py b/airbyte-ci/connectors/metadata_service/orchestrator/orchestrator/utils/dagster_helpers.py index 3ccc4fa0841b..dc59a1d13c1a 100644 --- a/airbyte-ci/connectors/metadata_service/orchestrator/orchestrator/utils/dagster_helpers.py +++ b/airbyte-ci/connectors/metadata_service/orchestrator/orchestrator/utils/dagster_helpers.py @@ -16,7 +16,16 @@ def output_dataframe(result_df: pd.DataFrame) -> Output[pd.DataFrame]: """ Returns a Dagster Output object with a dataframe as the result and a markdown preview. """ - return Output(result_df, metadata={"count": len(result_df), "preview": MetadataValue.md(result_df.to_markdown())}) + + # Truncate to 100 rows to avoid dagster throwing a "too large" error + MAX_PREVIEW_ROWS = 100 + is_truncated = len(result_df) > MAX_PREVIEW_ROWS + preview_result_df = result_df.head(MAX_PREVIEW_ROWS) + + return Output( + result_df, + metadata={"count": len(result_df), "preview": MetadataValue.md(preview_result_df.to_markdown()), "is_truncated": is_truncated}, + ) def string_array_to_hash(strings: List[str]) -> str: diff --git a/airbyte-ci/connectors/metadata_service/orchestrator/poetry.lock b/airbyte-ci/connectors/metadata_service/orchestrator/poetry.lock index fafe163819a5..d3c0cc588629 100644 --- a/airbyte-ci/connectors/metadata_service/orchestrator/poetry.lock +++ b/airbyte-ci/connectors/metadata_service/orchestrator/poetry.lock @@ -2013,7 +2013,7 @@ files = [ [[package]] name = "metadata-service" -version = "0.1.4" +version = "0.1.5" description = "" optional = false python-versions = "^3.9" @@ -4353,4 +4353,4 @@ testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "p [metadata] lock-version = "2.0" python-versions = "^3.9" -content-hash = "8c6fa8dc9750af9e32ac39bfb45a960721098d735bd81f5baf8134921127f16d" +content-hash = "134eed98a16bd7c49f885a97a2c8955bef284d92d8a9fa833593044ec39a497a" diff --git a/airbyte-ci/connectors/pipelines/README.md b/airbyte-ci/connectors/pipelines/README.md index fc8ffec73cef..34e3801e224e 100644 --- a/airbyte-ci/connectors/pipelines/README.md +++ b/airbyte-ci/connectors/pipelines/README.md @@ -18,7 +18,7 @@ This documentation should be helpful for both local and CI use of the CLI. We in This project requires Python 3.10 and pipx. -## General Installation +## Install or Update The recommended way to install `airbyte-ci` is using pipx. This ensures the tool and its dependencies are isolated from your other Python projects. @@ -32,11 +32,13 @@ python -m pipx ensurepath Once pipx is installed, navigate to the root directory of the project, then run: ```bash -pipx install airbyte-ci/connectors/pipelines/ +pipx install airbyte-ci/connectors/pipelines/ --force ``` This command installs `airbyte-ci` and makes it globally available in your terminal. +_Note: `--force` is required to ensure updates are applied on subsequent installs._ + If you face any installation problem feel free to reach out the Airbyte Connectors Operations team. ## Installation for development @@ -120,6 +122,7 @@ Available commands: | `--use-remote-secrets` | False | True | If True, connectors configuration will be pulled from Google Secret Manager. Requires the GCP_GSM_CREDENTIALS environment variable to be set with a service account with permission to read GSM secrets. If False the connector configuration will be read from the local connector `secrets` folder. | | `--name` | True | | Select a specific connector for which the pipeline will run. Can be used multiple time to select multiple connectors. The expected name is the connector technical name. e.g. `source-pokeapi` | | `--support-level` | True | | Select connectors with a specific support level: `community`, `certified`. Can be used multiple times to select multiple support levels. | +| `--metadata-query` | False | | Filter connectors by the `data` field in the metadata file using a [simpleeval](https://github.com/danthedeckie/simpleeval) query. e.g. 'data.ab_internal.ql == 200' | | `--language` | True | | Select connectors with a specific language: `python`, `low-code`, `java`. Can be used multiple times to select multiple languages. | | `--modified` | False | False | Run the pipeline on only the modified connectors on the branch or previous commit (depends on the pipeline implementation). | | `--concurrency` | False | 5 | Control the number of connector pipelines that can run in parallel. Useful to speed up pipelines or control their resource usage. | @@ -402,7 +405,14 @@ This command runs the Python tests for a airbyte-ci poetry package. ## Changelog | Version | PR | Description | -| ------- | --------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | +|---------| --------------------------------------------------------- |-----------------------------------------------------------------------------------------------------------| +| 1.2.3 | [#30477](https://github.com/airbytehq/airbyte/pull/30477) | Fix a test regression introduced the previous version. | +| 1.2.2 | [#30438](https://github.com/airbytehq/airbyte/pull/30438) | Add workaround to always stream logs properly with --is-local. | +| 1.2.1 | [#30384](https://github.com/airbytehq/airbyte/pull/30384) | Java connector test performance fixes. | +| 1.2.0 | [#30330](https://github.com/airbytehq/airbyte/pull/30330) | Add `--metadata-query` option to connectors command | +| 1.1.3 | [#30314](https://github.com/airbytehq/airbyte/pull/30314) | Stop patching gradle files to make them work with airbyte-ci. | +| 1.1.2 | [#30279](https://github.com/airbytehq/airbyte/pull/30279) | Fix correctness issues in layer caching by making atomic execution groupings | +| 1.1.1 | [#30252](https://github.com/airbytehq/airbyte/pull/30252) | Fix redundancies and broken logic in GradleTask, to speed up the CI runs. | | 1.1.0 | [#29509](https://github.com/airbytehq/airbyte/pull/29509) | Refactor the airbyte-ci test command to run tests on any poetry package. | | 1.0.0 | [#28000](https://github.com/airbytehq/airbyte/pull/29232) | Remove release stages in favor of support level from airbyte-ci. | | 0.5.0 | [#28000](https://github.com/airbytehq/airbyte/pull/28000) | Run connector acceptance tests with dagger-in-dagger. | diff --git a/airbyte-ci/connectors/pipelines/pipelines/actions/environments.py b/airbyte-ci/connectors/pipelines/pipelines/actions/environments.py index f5dc397646a5..9dc21f916ead 100644 --- a/airbyte-ci/connectors/pipelines/pipelines/actions/environments.py +++ b/airbyte-ci/connectors/pipelines/pipelines/actions/environments.py @@ -14,17 +14,21 @@ from typing import TYPE_CHECKING, Callable, List, Optional import toml -from dagger import CacheVolume, Client, Container, DaggerError, Directory, File, Platform, Secret +from dagger import CacheSharingMode, CacheVolume, Client, Container, DaggerError, Directory, File, Platform, Secret from dagger.engine._version import CLI_VERSION as dagger_engine_version from pipelines import consts from pipelines.consts import ( + AMAZONCORRETTO_IMAGE, CI_CREDENTIALS_SOURCE_PATH, CONNECTOR_OPS_SOURCE_PATHSOURCE_PATH, CONNECTOR_TESTING_REQUIREMENTS, + DOCKER_HOST_NAME, + DOCKER_HOST_PORT, + DOCKER_TMP_VOLUME_NAME, LICENSE_SHORT_FILE_PATH, PYPROJECT_TOML_FILE_PATH, ) -from pipelines.utils import check_path_in_workdir, get_file_contents +from pipelines.utils import check_path_in_workdir, get_file_contents, sh_dash_c if TYPE_CHECKING: from pipelines.contexts import ConnectorContext, PipelineContext @@ -49,10 +53,16 @@ def with_python_base(context: PipelineContext, python_version: str = "3.10") -> base_container = ( context.dagger_client.container() .from_(f"python:{python_version}-slim") - .with_exec(["apt-get", "update"]) - .with_exec(["apt-get", "install", "-y", "build-essential", "cmake", "g++", "libffi-dev", "libstdc++6", "git"]) .with_mounted_cache("/root/.cache/pip", pip_cache) - .with_exec(["pip", "install", "pip==23.1.2"]) + .with_exec( + sh_dash_c( + [ + "apt-get update", + "apt-get install -y build-essential cmake g++ libffi-dev libstdc++6 git", + "pip install pip==23.1.2", + ] + ) + ) ) return base_container @@ -82,17 +92,29 @@ def with_git(dagger_client, ci_github_access_token_secret, ci_git_user) -> Conta return ( dagger_client.container() .from_("alpine:latest") + .with_exec( + sh_dash_c( + [ + "apk update", + "apk add git tar wget", + f"git config --global user.email {ci_git_user}@users.noreply.github.com", + f"git config --global user.name {ci_git_user}", + "git config --global --add --bool push.autoSetupRemote true", + ] + ) + ) .with_secret_variable("GITHUB_TOKEN", ci_github_access_token_secret) - .with_exec(["apk", "update"]) - .with_exec(["apk", "add", "git", "tar", "wget"]) .with_workdir("/ghcli") - .with_exec(["wget", "https://github.com/cli/cli/releases/download/v2.30.0/gh_2.30.0_linux_amd64.tar.gz", "-O", "ghcli.tar.gz"]) - .with_exec(["tar", "--strip-components=1", "-xf", "ghcli.tar.gz"]) - .with_exec(["rm", "ghcli.tar.gz"]) - .with_exec(["cp", "bin/gh", "/usr/local/bin/gh"]) - .with_exec(["git", "config", "--global", "user.email", f"{ci_git_user}@users.noreply.github.com"]) - .with_exec(["git", "config", "--global", "user.name", ci_git_user]) - .with_exec(["git", "config", "--global", "--add", "--bool", "push.autoSetupRemote", "true"]) + .with_exec( + sh_dash_c( + [ + "wget https://github.com/cli/cli/releases/download/v2.30.0/gh_2.30.0_linux_amd64.tar.gz -O ghcli.tar.gz", + "tar --strip-components=1 -xf ghcli.tar.gz", + "rm ghcli.tar.gz", + "cp bin/gh /usr/local/bin/gh", + ] + ) + ) ) @@ -452,14 +474,34 @@ def with_global_dockerd_service(dagger_client: Client) -> Container: Container: The container running dockerd as a service """ return ( - dagger_client.container() - .from_(consts.DOCKER_DIND_IMAGE) - .with_mounted_cache( - "/tmp", - dagger_client.cache_volume("shared-tmp"), + dagger_client.container().from_(consts.DOCKER_DIND_IMAGE) + # We set this env var because we need to use a non-default zombie reaper setting. + # The reason for this is that by default it will want to set its parent process ID to 1 when reaping. + # This won't be possible because of container-ception: dind is running inside the dagger engine. + # See https://github.com/krallin/tini#subreaping for details. + .with_env_variable("TINI_SUBREAPER", "") + # Similarly, because of container-ception, we have to use the fuse-overlayfs storage engine. + .with_exec( + sh_dash_c( + [ + # Update package metadata. + "apk update", + # Install the storage driver package. + "apk add fuse-overlayfs", + # Update daemon config with storage driver. + "mkdir /etc/docker", + '(echo {\\"storage-driver\\": \\"fuse-overlayfs\\"} > /etc/docker/daemon.json)', + ] + ) + ) + # Expose the docker host port. + .with_exposed_port(DOCKER_HOST_PORT) + # Mount the docker cache volumes. + .with_mounted_cache("/tmp", dagger_client.cache_volume(DOCKER_TMP_VOLUME_NAME)) + # Run the docker daemon and bind it to the exposed TCP port. + .with_exec( + ["dockerd", "--log-level=error", f"--host=tcp://0.0.0.0:{DOCKER_HOST_PORT}", "--tls=false"], insecure_root_capabilities=True ) - .with_exposed_port(2375) - .with_exec(["dockerd", "--log-level=error", "--host=tcp://0.0.0.0:2375", "--tls=false"], insecure_root_capabilities=True) ) @@ -475,16 +517,14 @@ def with_bound_docker_host( Returns: Container: The container bound to the docker host. """ - dockerd = context.dockerd_service - docker_hostname = "global-docker-host" return ( - container.with_env_variable("DOCKER_HOST", f"tcp://{docker_hostname}:2375") - .with_service_binding(docker_hostname, dockerd) - .with_mounted_cache("/tmp", context.dagger_client.cache_volume("shared-tmp")) + container.with_env_variable("DOCKER_HOST", f"tcp://{DOCKER_HOST_NAME}:{DOCKER_HOST_PORT}") + .with_service_binding(DOCKER_HOST_NAME, context.dockerd_service) + .with_mounted_cache("/tmp", context.dagger_client.cache_volume(DOCKER_TMP_VOLUME_NAME)) ) -def bound_docker_host(context: ConnectorContext) -> Container: +def bound_docker_host(context: ConnectorContext) -> Callable[[Container], Container]: def bound_docker_host_inner(container: Container) -> Container: return with_bound_docker_host(context, container) @@ -504,73 +544,6 @@ def with_docker_cli(context: ConnectorContext) -> Container: return with_bound_docker_host(context, docker_cli) -def with_gradle( - context: ConnectorContext, - sources_to_include: List[str] = None, - bind_to_docker_host: bool = True, -) -> Container: - """Create a container with Gradle installed and bound to a persistent docker host. - - Args: - context (ConnectorContext): The current connector context. - sources_to_include (List[str], optional): List of additional source path to mount to the container. Defaults to None. - bind_to_docker_host (bool): Whether to bind the gradle container to a docker host. - - Returns: - Container: A container with Gradle installed and Java sources from the repository. - """ - - include = [ - ".root", - ".env", - "build.gradle", - "deps.toml", - "gradle.properties", - "gradle", - "gradlew", - "LICENSE_SHORT", - "publish-repositories.gradle", - "settings.gradle", - "build.gradle", - "tools/gradle", - "spotbugs-exclude-filter-file.xml", - "buildSrc", - "tools/bin/build_image.sh", - "tools/lib/lib.sh", - "tools/gradle/codestyle", - "pyproject.toml", - ] - - if sources_to_include: - include += sources_to_include - # TODO re-enable once we have fixed the over caching issue - # gradle_dependency_cache: CacheVolume = context.dagger_client.cache_volume("gradle-dependencies-caching") - # gradle_build_cache: CacheVolume = context.dagger_client.cache_volume(f"{context.connector.technical_name}-gradle-build-cache") - - openjdk_with_docker = ( - context.dagger_client.container() - .from_("openjdk:17.0.1-jdk-slim") - .with_exec(["apt-get", "update"]) - .with_exec(["apt-get", "install", "-y", "curl", "jq", "rsync", "npm", "pip"]) - .with_env_variable("VERSION", consts.DOCKER_VERSION) - .with_exec(["sh", "-c", "curl -fsSL https://get.docker.com | sh"]) - .with_env_variable("GRADLE_HOME", "/root/.gradle") - .with_exec(["mkdir", "/airbyte"]) - .with_workdir("/airbyte") - .with_mounted_directory("/airbyte", context.get_repo_dir(".", include=include)) - .with_exec(["mkdir", "-p", consts.GRADLE_READ_ONLY_DEPENDENCY_CACHE_PATH]) - # TODO (ben) reenable once we have fixed the over caching issue - # .with_mounted_cache(consts.GRADLE_BUILD_CACHE_PATH, gradle_build_cache, sharing=CacheSharingMode.LOCKED) - # .with_mounted_cache(consts.GRADLE_READ_ONLY_DEPENDENCY_CACHE_PATH, gradle_dependency_cache) - .with_env_variable("GRADLE_RO_DEP_CACHE", consts.GRADLE_READ_ONLY_DEPENDENCY_CACHE_PATH) - ) - - if bind_to_docker_host: - return with_bound_docker_host(context, openjdk_with_docker) - else: - return openjdk_with_docker - - async def load_image_to_docker_host(context: ConnectorContext, tar_file: File, image_tag: str): """Load a docker image tar archive to the docker host. @@ -655,23 +628,47 @@ def with_integration_base(context: PipelineContext, build_platform: Platform) -> ) -def with_integration_base_java(context: PipelineContext, build_platform: Platform, jdk_version: str = "17.0.4") -> Container: +def with_integration_base_java(context: PipelineContext, build_platform: Platform) -> Container: integration_base = with_integration_base(context, build_platform) + yum_packages_to_install = [ + "tar", # required to untar java connector binary distributions. + "openssl", # required because we need to ssh and scp sometimes. + "findutils", # required for xargs, which is shipped as part of findutils. + ] return ( context.dagger_client.container(platform=build_platform) - .from_(f"amazoncorretto:{jdk_version}") + # Use a linux+jdk base image with long-term support, such as amazoncorretto. + .from_(AMAZONCORRETTO_IMAGE) + # Install a bunch of packages as early as possible. + .with_exec( + sh_dash_c( + [ + # Update first, but in the same .with_exec step as the package installation. + # Otherwise, we risk caching stale package URLs. + "yum update -y", + # + f"yum install -y {' '.join(yum_packages_to_install)}", + # Remove any dangly bits. + "yum clean all", + ] + ) + ) + # Add what files we need to the /airbyte directory. + # Copy base.sh from the airbyte/integration-base image. .with_directory("/airbyte", integration_base.directory("/airbyte")) - .with_exec(["yum", "install", "-y", "tar", "openssl"]) - .with_exec(["yum", "clean", "all"]) .with_workdir("/airbyte") + # Download a utility jar from the internet. .with_file("dd-java-agent.jar", context.dagger_client.http("https://dtdg.co/latest-java-tracer")) + # Copy javabase.sh from the git repo. .with_file("javabase.sh", context.get_repo_dir("airbyte-integrations/bases/base-java", include=["javabase.sh"]).file("javabase.sh")) + # Set a bunch of env variables used by base.sh. .with_env_variable("AIRBYTE_SPEC_CMD", "/airbyte/javabase.sh --spec") .with_env_variable("AIRBYTE_CHECK_CMD", "/airbyte/javabase.sh --check") .with_env_variable("AIRBYTE_DISCOVER_CMD", "/airbyte/javabase.sh --discover") .with_env_variable("AIRBYTE_READ_CMD", "/airbyte/javabase.sh --read") .with_env_variable("AIRBYTE_WRITE_CMD", "/airbyte/javabase.sh --write") .with_env_variable("AIRBYTE_ENTRYPOINT", "/airbyte/base.sh") + # Set image labels. .with_label("io.airbyte.version", "0.1.2") .with_label("io.airbyte.name", "airbyte/integration-base-java") ) @@ -775,27 +772,37 @@ def with_integration_base_java_and_normalization(context: PipelineContext, build return ( with_integration_base_java(context, build_platform) - .with_exec(["yum", "install", "-y"] + yum_packages_to_install) - .with_exec(["yum", "clean", "all"]) - .with_exec(["alternatives", "--install", "/usr/bin/python", "python", "/usr/bin/python3", "60"]) + .with_exec( + sh_dash_c( + [ + "yum update -y", + f"yum install -y {' '.join(yum_packages_to_install)}", + "yum clean all", + "alternatives --install /usr/bin/python python /usr/bin/python3 60", + ] + ) + ) .with_mounted_cache("/root/.cache/pip", pip_cache) - .with_exec(["python", "-m", "ensurepip", "--upgrade"]) - # Workaround for https://github.com/yaml/pyyaml/issues/601 - .with_exec(["pip3", "install", "Cython<3.0", "pyyaml~=5.4", "--no-build-isolation"]) - .with_exec(["pip3", "install", dbt_adapter_package]) + .with_exec( + sh_dash_c( + [ + "python -m ensurepip --upgrade", + # Workaround for https://github.com/yaml/pyyaml/issues/601 + "pip3 install Cython<3.0 pyyaml~=5.4 --no-build-isolation", + f"pip3 install {dbt_adapter_package}", + # amazon linux 2 isn't compatible with urllib3 2.x, so force 1.x + "pip3 install urllib3<2", + ] + ) + ) .with_directory("airbyte_normalization", with_normalization(context, build_platform).directory("/airbyte")) .with_workdir("airbyte_normalization") - .with_exec(["sh", "-c", "mv * .."]) + .with_exec(sh_dash_c(["mv * .."])) .with_workdir("/airbyte") .with_exec(["rm", "-rf", "airbyte_normalization"]) - # We don't install the airbyte-protocol legacy package as its not used anymore and not compatible with Cython 3.x - # .with_workdir("/airbyte/base_python_structs") - # .with_exec(["pip3", "install", "--force-reinstall", "Cython<3.0", ".",]) .with_workdir("/airbyte/normalization_code") .with_exec(["pip3", "install", "."]) .with_workdir("/airbyte/normalization_code/dbt-template/") - # amazon linux 2 isn't compatible with urllib3 2.x, so force 1.x - .with_exec(["pip3", "install", "urllib3<2"]) .with_exec(["dbt", "deps"]) .with_workdir("/airbyte") .with_file( @@ -817,8 +824,14 @@ async def with_airbyte_java_connector(context: ConnectorContext, connector_java_ .with_workdir("/airbyte") .with_env_variable("APPLICATION", context.connector.technical_name) .with_file(f"{application}.tar", connector_java_tar_file) - .with_exec(["tar", "xf", f"{application}.tar", "--strip-components=1"]) - .with_exec(["rm", "-rf", f"{application}.tar"]) + .with_exec( + sh_dash_c( + [ + f"tar xf {application}.tar --strip-components=1", + f"rm -rf {application}.tar", + ] + ) + ) ) if ( @@ -834,8 +847,8 @@ async def with_airbyte_java_connector(context: ConnectorContext, connector_java_ connector_container = ( base.with_workdir("/airbyte") .with_env_variable("APPLICATION", application) - .with_mounted_directory("builts_artifacts", build_stage.directory("/airbyte")) - .with_exec(["sh", "-c", "mv builts_artifacts/* ."]) + .with_mounted_directory("built_artifacts", build_stage.directory("/airbyte")) + .with_exec(sh_dash_c(["mv built_artifacts/* ."])) .with_label("io.airbyte.version", context.metadata["dockerImageTag"]) .with_label("io.airbyte.name", context.metadata["dockerRepository"]) .with_entrypoint(entrypoint) @@ -925,11 +938,17 @@ async def with_airbyte_python_connector_full_dagger(context: ConnectorContext, b entrypoint = ["python", "/airbyte/integration_code/main.py"] builder = ( base.with_workdir("/airbyte/integration_code") - .with_env_variable("DAGGER_BUILD", "True") - .with_exec(["apt-get", "update"]) + .with_env_variable("DAGGER_BUILD", "1") .with_mounted_cache("/root/.cache/pip", pip_cache) - .with_exec(["pip", "install", "--upgrade", "pip"]) - .with_exec(["apt-get", "install", "-y", "tzdata"]) + .with_exec( + sh_dash_c( + [ + "apt-get update", + "apt-get install -y tzdata", + "pip install --upgrade pip", + ] + ) + ) .with_file("setup.py", (await context.get_connector_dir(include="setup.py")).file("setup.py")) ) @@ -941,10 +960,17 @@ async def with_airbyte_python_connector_full_dagger(context: ConnectorContext, b connector_container = ( base.with_workdir("/airbyte/integration_code") + .with_exec( + sh_dash_c( + [ + "apt-get update", + "apt-get install -y bash", + ] + ) + ) .with_directory("/usr/local", builder.directory("/install")) .with_file("/usr/localtime", builder.file("/usr/share/zoneinfo/Etc/UTC")) .with_new_file("/etc/timezone", contents="Etc/UTC") - .with_exec(["apt-get", "install", "-y", "bash"]) .with_file("main.py", (await context.get_connector_dir(include="main.py")).file("main.py")) .with_directory(snake_case_name, (await context.get_connector_dir(include=snake_case_name)).directory(snake_case_name)) .with_env_variable("AIRBYTE_ENTRYPOINT", " ".join(entrypoint)) @@ -976,18 +1002,55 @@ def with_crane( # We use sh -c to be able to use environment variables in the command # This is a workaround as the default crane entrypoint doesn't support environment variables .with_exec( - ["sh", "-c", "crane auth login index.docker.io -u $DOCKER_HUB_USERNAME -p $DOCKER_HUB_PASSWORD"], skip_entrypoint=True + sh_dash_c(["crane auth login index.docker.io -u $DOCKER_HUB_USERNAME -p $DOCKER_HUB_PASSWORD"]), skip_entrypoint=True ) ) return base_container -def mounted_connector_secrets(context: PipelineContext, secret_directory_path="secrets") -> Callable: - def mounted_connector_secrets_inner(container: Container): +async def mounted_connector_secrets(context: PipelineContext, secret_directory_path: str) -> Callable[[Container], Container]: + # By default, mount the secrets properly as dagger secret files. + # + # This will cause the contents of these files to be scrubbed from the logs. This scrubbing comes at the cost of + # unavoidable latency in the log output, see next paragraph for details as to why. This is fine in a CI environment + # however this becomes a nuisance locally: the developer wants the logs to be displayed to them in an as timely + # manner as possible. Since the secrets aren't really secret in that case anyway, we mount them in the container as + # regular files instead. + # + # The buffering behavior that comes into play when logs are scrubbed is both unavoidable and not configurable. + # It's fundamentally unavoidable because dagger needs to match a bunch of regexes (one per secret) and therefore + # needs to buffer at least as many bytes as the longest of all possible matches. Still, this isn't that long in + # practice in our case. The real problem is that the buffering is not configurable: dagger relies on a golang + # library called transform [1] to perform the regexp matching on a stream and this library hard-codes a buffer + # size of 4096 bytes for each regex [2]. + # + # Remove the special local case whenever dagger implements scrubbing differently [3,4]. + # + # [1] https://golang.org/x/text/transform + # [2] https://cs.opensource.google/go/x/text/+/refs/tags/v0.13.0:transform/transform.go;l=130 + # [3] https://github.com/dagger/dagger/blob/v0.6.4/cmd/shim/main.go#L294 + # [4] https://github.com/airbytehq/airbyte/issues/30394 + # + if context.is_local: + # Special case for local development. + # Query dagger for the contents of the secrets and mount these strings as files in the container. + contents = {} + for secret_file_name, secret in context.connector_secrets.items(): + contents[secret_file_name] = await secret.plaintext() + + def with_secrets_mounted_as_regular_files(container: Container) -> Container: + container = container.with_exec(["mkdir", secret_directory_path], skip_entrypoint=True) + for secret_file_name, secret_content_str in contents.items(): + container = container.with_new_file(f"{secret_directory_path}/{secret_file_name}", secret_content_str, permissions=0o600) + return container + + return with_secrets_mounted_as_regular_files + + def with_secrets_mounted_as_dagger_secrets(container: Container) -> Container: container = container.with_exec(["mkdir", secret_directory_path], skip_entrypoint=True) for secret_file_name, secret in context.connector_secrets.items(): container = container.with_mounted_secret(f"{secret_directory_path}/{secret_file_name}", secret) return container - return mounted_connector_secrets_inner + return with_secrets_mounted_as_dagger_secrets diff --git a/airbyte-ci/connectors/pipelines/pipelines/builds/java_connectors.py b/airbyte-ci/connectors/pipelines/pipelines/builds/java_connectors.py index ffd6ff1e8bd4..902f29ebeb14 100644 --- a/airbyte-ci/connectors/pipelines/pipelines/builds/java_connectors.py +++ b/airbyte-ci/connectors/pipelines/pipelines/builds/java_connectors.py @@ -11,36 +11,42 @@ class BuildConnectorDistributionTar(GradleTask): + """ + A step to build a Java connector image using the distTar Gradle task. + """ + title = "Build connector tar" gradle_task_name = "distTar" + async def _run(self) -> StepResult: - cdk_includes = ["./airbyte-cdk/java/airbyte-cdk/**"] - with_built_tar = ( - environments.with_gradle( - self.context, - self.build_include + cdk_includes, - ) - .with_exec(["./gradlew", ":airbyte-cdk:java:airbyte-cdk:publishSnapshotIfNeeded"]) - .with_mounted_directory(str(self.context.connector.code_directory), await self.context.get_connector_dir()) - .with_exec(self._get_gradle_command()) - .with_workdir(f"{self.context.connector.code_directory}/build/distributions") - ) + result = await super()._run() + if result.status is not StepStatus.SUCCESS: + return result + + with_built_tar = result.output_artifact.with_workdir(f"{self.context.connector.code_directory}/build/distributions") distributions = await with_built_tar.directory(".").entries() tar_files = [f for f in distributions if f.endswith(".tar")] - await self._export_gradle_dependency_cache(with_built_tar) if len(tar_files) == 1: return StepResult( self, StepStatus.SUCCESS, - stdout="The tar file for the current connector was successfully built.", + stdout="The distribution tar file for the current java connector was built.", output_artifact=with_built_tar.file(tar_files[0]), ) + elif len(tar_files) == 0: + return StepResult( + self, + StepStatus.FAILURE, + stderr="The distribution tar file for the current java connector was not built.", + ) else: return StepResult( self, StepStatus.FAILURE, - stderr="The distributions directory contains multiple connector tar files. We can't infer which one should be used. Please review and delete any unnecessary tar files.", + stderr="The distributions directory for this java connector contains multiple tar files. " + "We can't infer which one should be used. " + "Please review and delete any unnecessary tar files.", ) diff --git a/airbyte-ci/connectors/pipelines/pipelines/commands/groups/connectors.py b/airbyte-ci/connectors/pipelines/pipelines/commands/groups/connectors.py index 1fe82c244cff..3af9576c9d03 100644 --- a/airbyte-ci/connectors/pipelines/pipelines/commands/groups/connectors.py +++ b/airbyte-ci/connectors/pipelines/pipelines/commands/groups/connectors.py @@ -54,6 +54,7 @@ def get_selected_connectors_with_modified_files( selected_languages: Tuple[str], modified: bool, metadata_changes_only: bool, + metadata_query: str, modified_files: Set[Path], enable_dependency_scanning: bool = False, ) -> List[ConnectorWithModifiedFiles]: @@ -81,17 +82,22 @@ def get_selected_connectors_with_modified_files( selected_connectors_by_name = {c for c in ALL_CONNECTORS if c.technical_name in selected_names} selected_connectors_by_support_level = {connector for connector in ALL_CONNECTORS if connector.support_level in selected_support_levels} selected_connectors_by_language = {connector for connector in ALL_CONNECTORS if connector.language in selected_languages} + selected_connectors_by_query = ( + {connector for connector in ALL_CONNECTORS if connector.metadata_query_match(metadata_query)} if metadata_query else set() + ) + non_empty_connector_sets = [ connector_set for connector_set in [ selected_connectors_by_name, selected_connectors_by_support_level, selected_connectors_by_language, + selected_connectors_by_query, selected_modified_connectors, ] if connector_set ] - # The selected connectors are the intersection of the selected connectors by name, support_level, language and modified. + # The selected connectors are the intersection of the selected connectors by name, support_level, language, simpleeval query and modified. selected_connectors = set.intersection(*non_empty_connector_sets) if non_empty_connector_sets else set() selected_connectors_with_modified_files = [] @@ -134,6 +140,11 @@ def get_selected_connectors_with_modified_files( default=False, type=bool, ) +@click.option( + "--metadata-query", + help="Filter connectors by metadata query using `simpleeval`. e.g. 'data.ab_internal.ql == 200'", + type=str, +) @click.option("--concurrency", help="Number of connector tests pipeline to run in parallel.", default=5, type=int) @click.option( "--execute-timeout", @@ -156,6 +167,7 @@ def connectors( support_levels: Tuple[str], modified: bool, metadata_changes_only: bool, + metadata_query: str, concurrency: int, execute_timeout: int, enable_dependency_scanning: bool, @@ -168,7 +180,14 @@ def connectors( ctx.obj["concurrency"] = concurrency ctx.obj["execute_timeout"] = execute_timeout ctx.obj["selected_connectors_with_modified_files"] = get_selected_connectors_with_modified_files( - names, support_levels, languages, modified, metadata_changes_only, ctx.obj["modified_files"], enable_dependency_scanning + names, + support_levels, + languages, + modified, + metadata_changes_only, + metadata_query, + ctx.obj["modified_files"], + enable_dependency_scanning, ) log_selected_connectors(ctx.obj["selected_connectors_with_modified_files"]) @@ -500,6 +519,6 @@ def format_code(ctx: click.Context) -> bool: def log_selected_connectors(selected_connectors_with_modified_files: List[ConnectorWithModifiedFiles]) -> None: if selected_connectors_with_modified_files: selected_connectors_names = [c.technical_name for c in selected_connectors_with_modified_files] - main_logger.info(f"Will run on the following connectors: {', '.join(selected_connectors_names)}.") + main_logger.info(f"Will run on the following {len(selected_connectors_names)} connectors: {', '.join(selected_connectors_names)}.") else: main_logger.info("No connectors to run.") diff --git a/airbyte-ci/connectors/pipelines/pipelines/commands/groups/metadata.py b/airbyte-ci/connectors/pipelines/pipelines/commands/groups/metadata.py index a9988db89fe2..3edecaebc2e7 100644 --- a/airbyte-ci/connectors/pipelines/pipelines/commands/groups/metadata.py +++ b/airbyte-ci/connectors/pipelines/pipelines/commands/groups/metadata.py @@ -44,6 +44,7 @@ def validate(ctx: click.Context, modified_only: bool) -> bool: ctx.obj["git_branch"], ctx.obj["git_revision"], ctx.obj.get("gha_workflow_run_url"), + ctx.obj.get("dagger_logs_url"), ctx.obj.get("pipeline_start_timestamp"), ctx.obj.get("ci_context"), metadata_to_validate, diff --git a/airbyte-ci/connectors/pipelines/pipelines/commands/groups/tests.py b/airbyte-ci/connectors/pipelines/pipelines/commands/groups/tests.py index c9cd4248a170..b7a3bfce26f7 100644 --- a/airbyte-ci/connectors/pipelines/pipelines/commands/groups/tests.py +++ b/airbyte-ci/connectors/pipelines/pipelines/commands/groups/tests.py @@ -13,6 +13,8 @@ import anyio import click import dagger +from pipelines.consts import DOCKER_VERSION +from pipelines.utils import sh_dash_c @click.command() @@ -52,14 +54,20 @@ async def run_test(poetry_package_path: str, test_directory: str) -> bool: pytest_container = await ( dagger_client.container() .from_("python:3.10.12") - .with_exec(["apt-get", "update"]) - .with_exec(["apt-get", "install", "-y", "bash", "git", "curl"]) - .with_env_variable("VERSION", "24.0.2") - .with_exec(["sh", "-c", "curl -fsSL https://get.docker.com | sh"]) - .with_exec(["pip", "install", "pipx"]) - .with_exec(["pipx", "ensurepath"]) .with_env_variable("PIPX_BIN_DIR", "/usr/local/bin") - .with_exec(["pipx", "install", "poetry"]) + .with_exec( + sh_dash_c( + [ + "apt-get update", + "apt-get install -y bash git curl", + "pip install pipx", + "pipx ensurepath", + "pipx install poetry", + ] + ) + ) + .with_env_variable("VERSION", DOCKER_VERSION) + .with_exec(sh_dash_c(["curl -fsSL https://get.docker.com | sh"])) .with_mounted_directory( "/airbyte", dagger_client.host().directory( diff --git a/airbyte-ci/connectors/pipelines/pipelines/consts.py b/airbyte-ci/connectors/pipelines/pipelines/consts.py index 445479449ddc..ae7d6add4926 100644 --- a/airbyte-ci/connectors/pipelines/pipelines/consts.py +++ b/airbyte-ci/connectors/pipelines/pipelines/consts.py @@ -26,11 +26,15 @@ CONNECTOR_OPS_SOURCE_PATHSOURCE_PATH = "airbyte-ci/connectors/connector_ops" BUILD_PLATFORMS = [Platform("linux/amd64"), Platform("linux/arm64")] LOCAL_BUILD_PLATFORM = Platform(f"linux/{platform.machine()}") +AMAZONCORRETTO_IMAGE = "amazoncorretto:17.0.8-al2023" DOCKER_VERSION = "24.0.2" -DOCKER_DIND_IMAGE = "docker:24-dind" -DOCKER_CLI_IMAGE = "docker:24-cli" +DOCKER_DIND_IMAGE = f"docker:{DOCKER_VERSION}-dind" +DOCKER_CLI_IMAGE = f"docker:{DOCKER_VERSION}-cli" GRADLE_CACHE_PATH = "/root/.gradle/caches" GRADLE_BUILD_CACHE_PATH = f"{GRADLE_CACHE_PATH}/build-cache-1" GRADLE_READ_ONLY_DEPENDENCY_CACHE_PATH = "/root/gradle_dependency_cache" LOCAL_REPORTS_PATH_ROOT = "airbyte-ci/connectors/pipelines/pipeline_reports/" GCS_PUBLIC_DOMAIN = "https://storage.cloud.google.com" +DOCKER_HOST_NAME = "global-docker-host" +DOCKER_HOST_PORT = 2375 +DOCKER_TMP_VOLUME_NAME = "shared-tmp" diff --git a/airbyte-ci/connectors/pipelines/pipelines/contexts.py b/airbyte-ci/connectors/pipelines/pipelines/contexts.py index 897006696f90..e3807b41df07 100644 --- a/airbyte-ci/connectors/pipelines/pipelines/contexts.py +++ b/airbyte-ci/connectors/pipelines/pipelines/contexts.py @@ -53,6 +53,7 @@ class PipelineContext: + glob("**/.mypy_cache", recursive=True) + glob("**/.DS_Store", recursive=True) + glob("**/airbyte_ci_logs", recursive=True) + + glob("**/.gradle", recursive=True) ) def __init__( @@ -436,7 +437,7 @@ async def get_connector_dir(self, exclude=None, include=None) -> Directory: Directory: The connector under test source code directory. """ vanilla_connector_dir = self.get_repo_dir(str(self.connector.code_directory), exclude=exclude, include=include) - return await hacks.patch_connector_dir(self, vanilla_connector_dir) + return await vanilla_connector_dir.with_timestamps(1) async def __aexit__( self, exception_type: Optional[type[BaseException]], exception_value: Optional[BaseException], traceback: Optional[TracebackType] diff --git a/airbyte-ci/connectors/pipelines/pipelines/format/java_connectors.py b/airbyte-ci/connectors/pipelines/pipelines/format/java_connectors.py index 7d73f3ab40fb..aba30683fc41 100644 --- a/airbyte-ci/connectors/pipelines/pipelines/format/java_connectors.py +++ b/airbyte-ci/connectors/pipelines/pipelines/format/java_connectors.py @@ -15,18 +15,14 @@ class FormatConnectorCode(GradleTask): """ title = "Format connector code" + gradle_task_name = "format" async def _run(self) -> StepResult: - formatted = ( - environments.with_gradle(self.context, self.build_include, bind_to_docker_host=self.BIND_TO_DOCKER_HOST) - .with_mounted_directory(str(self.context.connector.code_directory), await self.context.get_connector_dir()) - .with_exec(["./gradlew", "format"]) - ) - exit_code, stdout, stderr = await get_exec_result(formatted) + result = await super()._run() return StepResult( self, - self.get_step_status_from_exit_code(exit_code), - stderr=stderr, - stdout=stdout, - output_artifact=formatted.directory(str(self.context.connector.code_directory)), + result.status, + stderr=result.stderr, + stdout=result.stdout, + output_artifact=result.output_artifact.directory(str(self.context.connector.code_directory)), ) diff --git a/airbyte-ci/connectors/pipelines/pipelines/git.py b/airbyte-ci/connectors/pipelines/pipelines/git.py index acf23c2e8eef..01c1d180d4f7 100644 --- a/airbyte-ci/connectors/pipelines/pipelines/git.py +++ b/airbyte-ci/connectors/pipelines/pipelines/git.py @@ -6,6 +6,7 @@ from pipelines.actions import environments from pipelines.bases import Step, StepResult from pipelines.github import AIRBYTE_GITHUB_REPO +from pipelines.utils import sh_dash_c class GitPushChanges(Step): @@ -109,7 +110,7 @@ async def _run(self, commit_message: str, skip_ci: bool = True) -> StepResult: .with_mounted_directory("/airbyte", self.airbyte_repo) .with_workdir("/airbyte") .with_exec(["git", "checkout", self.git_branch]) - .with_exec(["sh", "-c", "git remote set-url origin $AUTHENTICATED_REPO_URL"]) + .with_exec(sh_dash_c(["git remote set-url origin $AUTHENTICATED_REPO_URL"])) .with_exec(["git", "commit", "--allow-empty", "-m", self.get_commit_message(commit_message, skip_ci)]) .with_exec(["git", "pull", "--rebase", "origin", self.git_branch]) .with_exec(["git", "push"]) diff --git a/airbyte-ci/connectors/pipelines/pipelines/gradle.py b/airbyte-ci/connectors/pipelines/pipelines/gradle.py index c1dbf283d7a5..d868d3b0433e 100644 --- a/airbyte-ci/connectors/pipelines/pipelines/gradle.py +++ b/airbyte-ci/connectors/pipelines/pipelines/gradle.py @@ -5,13 +5,14 @@ from __future__ import annotations from abc import ABC -from typing import ClassVar, Tuple +from typing import ClassVar, List, Tuple -from dagger import CacheVolume, Container, Directory, QueryError -from pipelines import consts +from dagger import CacheSharingMode, CacheVolume, Container, Directory from pipelines.actions import environments -from pipelines.bases import Step, StepResult +from pipelines.bases import Step, StepResult, StepStatus +from pipelines.consts import AMAZONCORRETTO_IMAGE from pipelines.contexts import PipelineContext +from pipelines.utils import sh_dash_c class GradleTask(Step, ABC): @@ -19,22 +20,24 @@ class GradleTask(Step, ABC): A step to run a Gradle task. Attributes: - task_name (str): The Gradle task name to run. title (str): The step title. + gradle_task_name (str): The Gradle task name to run. + bind_to_docker_host (bool): Whether to install the docker client and bind it to the host. + mount_connector_secrets (bool): Whether to mount connector secrets. """ - DEFAULT_TASKS_TO_EXCLUDE = ["airbyteDocker"] - BIND_TO_DOCKER_HOST = True - gradle_task_name: ClassVar - gradle_task_options: Tuple[str, ...] = () + DEFAULT_GRADLE_TASK_OPTIONS = ("--no-daemon", "--scan", "--build-cache", "--console=plain") - def __init__(self, context: PipelineContext, with_java_cdk_snapshot: bool = True) -> None: + gradle_task_name: ClassVar[str] + bind_to_docker_host: ClassVar[bool] = False + mount_connector_secrets: ClassVar[bool] = False + + def __init__(self, context: PipelineContext) -> None: super().__init__(context) - self.with_java_cdk_snapshot = with_java_cdk_snapshot @property def connector_java_build_cache(self) -> CacheVolume: - return self.context.dagger_client.cache_volume("connector_java_build_cache") + return self.context.dagger_client.cache_volume("gradle-cache") @property def build_include(self) -> List[str]: @@ -50,83 +53,106 @@ def build_include(self) -> List[str]: for dependency_directory in self.context.connector.get_local_dependency_paths(with_test_dependencies=True) ] - async def _get_patched_build_src_dir(self) -> Directory: - """Patch some gradle plugins. - - Returns: - Directory: The patched buildSrc directory - """ - - build_src_dir = self.context.get_repo_dir("buildSrc") - cat_gradle_plugin_content = await build_src_dir.file("src/main/groovy/airbyte-connector-acceptance-test.gradle").contents() - # When running integrationTest in Dagger we don't want to run connectorAcceptanceTest - # connectorAcceptanceTest is run in the AcceptanceTest step - cat_gradle_plugin_content = cat_gradle_plugin_content.replace( - "project.integrationTest.dependsOn(project.connectorAcceptanceTest)", "" - ) - return build_src_dir.with_new_file("src/main/groovy/airbyte-connector-acceptance-test.gradle", contents=cat_gradle_plugin_content) - - def _get_gradle_command(self, extra_options: Tuple[str, ...] = ("--no-daemon", "--scan", "--build-cache")) -> List: - command = ( - ["./gradlew"] - + list(extra_options) - + [f":airbyte-integrations:connectors:{self.context.connector.technical_name}:{self.gradle_task_name}"] - + list(self.gradle_task_options) + def _get_gradle_command(self, task: str) -> List[str]: + return sh_dash_c( + [ + # The gradle command is chained in between a couple of rsyncs which load from- and store to the cache volume. + "(rsync -a --stats /root/gradle-cache/ /root/.gradle || true)", + f"./gradlew {' '.join(self.DEFAULT_GRADLE_TASK_OPTIONS)} {task}", + "(rsync -a --stats /root/.gradle/ /root/gradle-cache || true)", + ] ) - for task in self.DEFAULT_TASKS_TO_EXCLUDE: - command += ["-x", task] - return command async def _run(self) -> StepResult: - includes = self.build_include - if self.with_java_cdk_snapshot: - includes + ["./airbyte-cdk/java/airbyte-cdk/**"] - connector_under_test = ( - environments.with_gradle(self.context, includes, bind_to_docker_host=self.BIND_TO_DOCKER_HOST) + include = [ + ".root", + ".env", + "build.gradle", + "deps.toml", + "gradle.properties", + "gradle", + "gradlew", + "LICENSE_SHORT", + "settings.gradle", + "build.gradle", + "tools/gradle", + "spotbugs-exclude-filter-file.xml", + "buildSrc", + "tools/bin/build_image.sh", + "tools/lib/lib.sh", + "tools/gradle/codestyle", + "pyproject.toml", + "airbyte-cdk/java/airbyte-cdk/**", + ] + self.build_include + + yum_packages_to_install = [ + "docker", # required by :integrationTestJava. + "findutils", # gradle requires xargs, which is shipped in findutils. + "jq", # required by :airbyte-connector-test-harnesses:acceptance-test-harness to inspect docker images. + "npm", # required by :format. + "pip", # required by :format. + "rsync", # required for gradle cache synchronization. + ] + + # Define a gradle container which will be cached and re-used for all tasks. + # We should do our best to cram any generic & expensive layers in here. + gradle_container = ( + self.dagger_client.container() + # Use a linux+jdk base image with long-term support, such as amazoncorretto. + .from_(AMAZONCORRETTO_IMAGE) + # Install a bunch of packages as early as possible. + .with_exec( + sh_dash_c( + [ + # Update first, but in the same .with_exec step as the package installation. + # Otherwise, we risk caching stale package URLs. + "yum update -y", + f"yum install -y {' '.join(yum_packages_to_install)}", + # Remove any dangly bits. + "yum clean all", + # Deliberately soft-remove docker, so that the `docker` CLI is unavailable by default. + # This is a defensive choice to enforce the expectation that, as a general rule, gradle tasks do not rely on docker. + "yum remove -y --noautoremove docker", # remove docker package but not its dependencies + "yum install -y --downloadonly docker", # have docker package in place for quick install + ] + ) + ) + # Set GRADLE_HOME and GRADLE_USER_HOME to the directory which will be rsync-ed with the gradle cache volume. + .with_env_variable("GRADLE_HOME", "/root/.gradle") + .with_env_variable("GRADLE_USER_HOME", "/root/.gradle") + # Set RUN_IN_AIRBYTE_CI to tell gradle how to configure its build cache. + # This is consumed by settings.gradle in the repo root. + .with_env_variable("RUN_IN_AIRBYTE_CI", "1") + # Mount the gradle cache volume. + # We deliberately don't mount it at $GRADLE_HOME, instead we load it there and store it from there using rsync. + # This is because the volume is accessed concurrently by all GradleTask instances. + # Hence, why we synchronize the writes by setting the `sharing` parameter to LOCKED. + .with_mounted_cache("/root/gradle-cache", self.connector_java_build_cache, sharing=CacheSharingMode.LOCKED) + # Mount the parts of the repo which interest us in /airbyte. + .with_workdir("/airbyte") + .with_mounted_directory("/airbyte", self.context.get_repo_dir(".", include=include)) .with_mounted_directory(str(self.context.connector.code_directory), await self.context.get_connector_dir()) - .with_mounted_directory("buildSrc", await self._get_patched_build_src_dir()) # Disable the Ryuk container because it needs privileged docker access that does not work: .with_env_variable("TESTCONTAINERS_RYUK_DISABLED", "true") - .with_(environments.mounted_connector_secrets(self.context, f"{self.context.connector.code_directory}/secrets")) + # Run gradle once to populate the container's local maven repository. + # This step is useful also to serve as a basic sanity check and to warm the gradle cache. + # This will download gradle itself, a bunch of poms and jars, compile the gradle plugins, configure tasks, etc. + .with_exec(self._get_gradle_command(":airbyte-cdk:java:airbyte-cdk:publishSnapshotIfNeeded")) ) - if self.with_java_cdk_snapshot: - connector_under_test = connector_under_test.with_exec(["./gradlew", ":airbyte-cdk:java:airbyte-cdk:publishSnapshotIfNeeded"]) - connector_under_test = connector_under_test.with_exec(self._get_gradle_command()) - - results = await self.get_step_result(connector_under_test) - - await self._export_gradle_dependency_cache(connector_under_test) - return results - async def _export_gradle_dependency_cache(self, gradle_container: Container) -> Container: - """Export the Gradle writable dependency cache to the read-only dependency cache path. - The read-only dependency cache is persisted thanks to mounted cache volumes in environments.with_gradle(). - You can read more about Shared readonly cache here: https://docs.gradle.org/current/userguide/dependency_resolution.html#sub:shared-readonly-cache - Args: - gradle_container (Container): The Gradle container. - - Returns: - Container: The Gradle container, with the updated cache. - """ - try: - cache_dirs = await gradle_container.directory(consts.GRADLE_CACHE_PATH).entries() - except QueryError: - cache_dirs = [] - if "modules-2" in cache_dirs: - with_cache = gradle_container.with_exec( - [ - "rsync", - "--archive", - "--quiet", - "--times", - "--exclude", - "*.lock", - "--exclude", - "gc.properties", - f"{consts.GRADLE_CACHE_PATH}/modules-2/", - f"{consts.GRADLE_READ_ONLY_DEPENDENCY_CACHE_PATH}/modules-2/", - ] + # From this point on, we add layers which are task-dependent. + if self.mount_connector_secrets: + gradle_container = gradle_container.with_( + await environments.mounted_connector_secrets(self.context, f"{self.context.connector.code_directory}/secrets") ) - return await with_cache - return gradle_container + if self.bind_to_docker_host: + # If this GradleTask subclass needs docker, then install it and bind it to the existing global docker host container. + gradle_container = environments.with_bound_docker_host(self.context, gradle_container) + # This installation should be cheap, as the package has already been downloaded, and its dependencies are already installed. + gradle_container = gradle_container.with_exec(["yum", "install", "-y", "docker"]) + + # Run the gradle task that we actually care about. + connector_task = f":airbyte-integrations:connectors:{self.context.connector.technical_name}:{self.gradle_task_name}" + gradle_container = gradle_container.with_exec(self._get_gradle_command(connector_task)) + return await self.get_step_result(gradle_container) diff --git a/airbyte-ci/connectors/pipelines/pipelines/hacks.py b/airbyte-ci/connectors/pipelines/pipelines/hacks.py index b6a4d79cce9d..a447424c921a 100644 --- a/airbyte-ci/connectors/pipelines/pipelines/hacks.py +++ b/airbyte-ci/connectors/pipelines/pipelines/hacks.py @@ -9,66 +9,9 @@ from typing import TYPE_CHECKING, Callable, List import requests -from connector_ops.utils import ConnectorLanguage -from dagger import DaggerError if TYPE_CHECKING: - from dagger import Client, Container, Directory - from pipelines.contexts import ConnectorContext - - -LINES_TO_REMOVE_FROM_GRADLE_FILE = [ - # Do not build normalization with Gradle - we build normalization with Dagger in the BuildOrPullNormalization step. - "project(':airbyte-integrations:bases:base-normalization').airbyteDocker.output", -] - - -async def _patch_gradle_file(context: ConnectorContext, connector_dir: Directory) -> Directory: - """Patch the build.gradle file of the connector under test by removing the lines declared in LINES_TO_REMOVE_FROM_GRADLE_FILE. - - Underlying issue: - Java connectors build.gradle declare a dependency to the normalization module. - It means every time we test a java connector the normalization is built. - This is time consuming and not required as normalization is now baked in containers. - Normalization is going away soon so hopefully this hack will be removed soon. - - Args: - context (ConnectorContext): The initialized connector context. - connector_dir (Directory): The directory containing the build.gradle file to patch. - Returns: - Directory: The directory containing the patched gradle file. - """ - if context.connector.language is not ConnectorLanguage.JAVA: - context.logger.info(f"Connector language {context.connector.language} does not require a patched build.gradle file.") - return connector_dir - - try: - gradle_file_content = await connector_dir.file("build.gradle").contents() - except DaggerError: - context.logger.info("Could not find build.gradle file in the connector directory. Skipping patching.") - return connector_dir - - context.logger.warn("Patching build.gradle file to remove normalization build.") - - patched_gradle_file = [] - - for line in gradle_file_content.splitlines(): - if not any(line_to_remove in line for line_to_remove in LINES_TO_REMOVE_FROM_GRADLE_FILE): - patched_gradle_file.append(line) - return connector_dir.with_new_file("build.gradle", contents="\n".join(patched_gradle_file)) - - -async def patch_connector_dir(context: ConnectorContext, connector_dir: Directory) -> Directory: - """Patch a connector directory: patch cat config, gradle file and dockerfile. - - Args: - context (ConnectorContext): The initialized connector context. - connector_dir (Directory): The directory containing the connector to patch. - Returns: - Directory: The directory containing the patched connector. - """ - patched_connector_dir = await _patch_gradle_file(context, connector_dir) - return patched_connector_dir.with_timestamps(1) + from dagger import Client, Container async def cache_latest_cdk(dagger_client: Client, pip_cache_volume_name: str = "pip_cache") -> None: diff --git a/airbyte-ci/connectors/pipelines/pipelines/pipelines/connectors.py b/airbyte-ci/connectors/pipelines/pipelines/pipelines/connectors.py index 5acb57b9558f..43303bdf8612 100644 --- a/airbyte-ci/connectors/pipelines/pipelines/pipelines/connectors.py +++ b/airbyte-ci/connectors/pipelines/pipelines/pipelines/connectors.py @@ -14,6 +14,7 @@ from dagger import Config from pipelines.actions import environments from pipelines.bases import NoOpStep, Report, StepResult, StepStatus +from pipelines.consts import DOCKER_CLI_IMAGE, DOCKER_HOST_NAME, DOCKER_HOST_PORT from pipelines.contexts import ConnectorContext, ContextState from pipelines.utils import create_and_open_file @@ -90,7 +91,13 @@ async def run_connectors_pipelines( dockerd_service = environments.with_global_dockerd_service(dagger_client) async with anyio.create_task_group() as tg_main: tg_main.start_soon(dockerd_service.sync) - await anyio.sleep(10) # Wait for the docker service to be ready + await ( # Wait for the docker service to be ready + dagger_client.container() + .from_(DOCKER_CLI_IMAGE) + .with_env_variable("DOCKER_HOST", f"tcp://{DOCKER_HOST_NAME}:{DOCKER_HOST_PORT}") + .with_service_binding(DOCKER_HOST_NAME, dockerd_service) + .with_exec(["docker", "info"]) + ) async with anyio.create_task_group() as tg_connectors: for context in contexts: context.dagger_client = dagger_client.pipeline(f"{pipeline_name} - {context.connector.technical_name}") diff --git a/airbyte-ci/connectors/pipelines/pipelines/tests/common.py b/airbyte-ci/connectors/pipelines/pipelines/tests/common.py index 374152d87e8a..90d0f5f7db48 100644 --- a/airbyte-ci/connectors/pipelines/pipelines/tests/common.py +++ b/airbyte-ci/connectors/pipelines/pipelines/tests/common.py @@ -270,7 +270,7 @@ async def _build_connector_acceptance_test(self, connector_under_test_image_tar: .with_env_variable("CONNECTOR_UNDER_TEST_IMAGE_TAR_PATH", "/dagger_share/connector_under_test_image.tar") .with_workdir("/test_input") .with_mounted_directory("/test_input", test_input) - .with_(environments.mounted_connector_secrets(self.context, secret_directory_path="/test_input/secrets")) + .with_(await environments.mounted_connector_secrets(self.context, "/test_input/secrets")) ) if "_EXPERIMENTAL_DAGGER_RUNNER_HOST" in os.environ: self.context.logger.info("Using experimental dagger runner host to run CAT with dagger-in-dagger") diff --git a/airbyte-ci/connectors/pipelines/pipelines/tests/java_connectors.py b/airbyte-ci/connectors/pipelines/pipelines/tests/java_connectors.py index 052547ac46e4..ea312eb637bc 100644 --- a/airbyte-ci/connectors/pipelines/pipelines/tests/java_connectors.py +++ b/airbyte-ci/connectors/pipelines/pipelines/tests/java_connectors.py @@ -22,9 +22,10 @@ class IntegrationTests(GradleTask): """A step to run integrations tests for Java connectors using the integrationTestJava Gradle task.""" - gradle_task_name = "integrationTest" - DEFAULT_TASKS_TO_EXCLUDE = ["airbyteDocker"] title = "Java Connector Integration Tests" + gradle_task_name = "integrationTestJava -x airbyteDocker -x assemble" + mount_connector_secrets = True + bind_to_docker_host = True async def _load_normalization_image(self, normalization_tar_file: File): normalization_image_tag = f"{self.context.connector.normalization_repository}:dev" @@ -44,25 +45,18 @@ async def _run(self, connector_tar_file: File, normalization_tar_file: Optional[ if normalization_tar_file: tg.start_soon(self._load_normalization_image, normalization_tar_file) tg.start_soon(self._load_connector_image, connector_tar_file) - return await super()._run() except QueryError as e: return StepResult(self, StepStatus.FAILURE, stderr=str(e)) + # Run the gradle integration test task now that the required docker images have been loaded. + return await super()._run() class UnitTests(GradleTask): """A step to run unit tests for Java connectors.""" title = "Java Connector Unit Tests" - gradle_task_name = "test" - context: ConnectorContext - - @property - def gradle_task_options(self) -> tuple[str, ...]: - """Return the Gradle task options to use when running unit tests.""" - if self.context.fail_fast: - return ("--fail-fast",) - - return () + gradle_task_name = "check" + bind_to_docker_host = True async def run_all_tests(context: ConnectorContext) -> List[StepResult]: @@ -82,12 +76,6 @@ async def run_all_tests(context: ConnectorContext) -> List[StepResult]: context.connector_secrets = await secrets.get_connector_secrets(context) step_results = [] - unit_tests_results = await UnitTests(context).run() - step_results.append(unit_tests_results) - - if context.fail_fast and unit_tests_results.status is StepStatus.FAILURE: - return step_results - build_distribution_tar_results = await BuildConnectorDistributionTar(context).run() step_results.append(build_distribution_tar_results) if build_distribution_tar_results.status is StepStatus.FAILURE: @@ -100,6 +88,11 @@ async def run_all_tests(context: ConnectorContext) -> List[StepResult]: if build_connector_image_results.status is StepStatus.FAILURE: return step_results + unit_tests_results = await UnitTests(context).run() + step_results.append(unit_tests_results) + if context.fail_fast and unit_tests_results.status is StepStatus.FAILURE: + return step_results + if context.connector.supports_normalization: normalization_image = f"{context.connector.normalization_repository}:dev" context.logger.info(f"This connector supports normalization: will build {normalization_image}.") diff --git a/airbyte-ci/connectors/pipelines/pipelines/tests/python_connectors.py b/airbyte-ci/connectors/pipelines/pipelines/tests/python_connectors.py index 8470fc6ff84b..0a5b0aedd236 100644 --- a/airbyte-ci/connectors/pipelines/pipelines/tests/python_connectors.py +++ b/airbyte-ci/connectors/pipelines/pipelines/tests/python_connectors.py @@ -86,7 +86,9 @@ async def _run(self, connector_under_test: Container) -> StepResult: Returns: StepResult: Failure or success of the unit tests with stdout and stdout. """ - connector_under_test_with_secrets = connector_under_test.with_(environments.mounted_connector_secrets(self.context)) + connector_under_test_with_secrets = connector_under_test.with_( + await environments.mounted_connector_secrets(self.context, "secrets") + ) return await self._run_tests_in_directory(connector_under_test_with_secrets, "unit_tests") @@ -106,7 +108,7 @@ async def _run(self, connector_under_test: Container) -> StepResult: """ connector_under_test = connector_under_test.with_(environments.bound_docker_host(self.context)).with_( - environments.mounted_connector_secrets(self.context) + await environments.mounted_connector_secrets(self.context, "secrets") ) return await self._run_tests_in_directory(connector_under_test, "integration_tests") diff --git a/airbyte-ci/connectors/pipelines/pipelines/utils.py b/airbyte-ci/connectors/pipelines/pipelines/utils.py index d80fe8d744ed..93aacf5b063b 100644 --- a/airbyte-ci/connectors/pipelines/pipelines/utils.py +++ b/airbyte-ci/connectors/pipelines/pipelines/utils.py @@ -623,6 +623,11 @@ def upload_to_gcs(file_path: Path, bucket_name: str, object_name: str, credentia return gcs_uri, public_url +def sh_dash_c(lines: List[str]) -> List[str]: + """Wrap sequence of commands in shell for safe usage of dagger Container's with_exec method.""" + return ["sh", "-c", " && ".join(["set -o xtrace"] + lines)] + + def transform_strs_to_paths(str_paths: List[str]) -> List[Path]: """Transform a list of string paths to a list of Path objects. diff --git a/airbyte-ci/connectors/pipelines/poetry.lock b/airbyte-ci/connectors/pipelines/poetry.lock index f48430f798f6..7e0af449a697 100644 --- a/airbyte-ci/connectors/pipelines/poetry.lock +++ b/airbyte-ci/connectors/pipelines/poetry.lock @@ -396,19 +396,21 @@ description = "Packaged maintained by the connector operations team to perform C optional = false python-versions = "^3.10" files = [] -develop = false +develop = true [package.dependencies] ci-credentials = {path = "../ci_credentials"} click = "^8.1.3" GitPython = "^3.1.29" google-cloud-storage = "^2.8.0" +pandas = "^2.0.3" pydantic = "^1.9" pydash = "^7.0.4" PyGithub = "^1.58.0" PyYAML = "^6.0" requests = "^2.28.2" rich = "^11.0.1" +simpleeval = "^0.9.13" [package.source] type = "directory" @@ -1131,6 +1133,40 @@ files = [ {file = "multidict-6.0.4.tar.gz", hash = "sha256:3666906492efb76453c0e7b97f2cf459b0682e7402c0489a95484965dbc1da49"}, ] +[[package]] +name = "numpy" +version = "1.25.2" +description = "Fundamental package for array computing in Python" +optional = false +python-versions = ">=3.9" +files = [ + {file = "numpy-1.25.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:db3ccc4e37a6873045580d413fe79b68e47a681af8db2e046f1dacfa11f86eb3"}, + {file = "numpy-1.25.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:90319e4f002795ccfc9050110bbbaa16c944b1c37c0baeea43c5fb881693ae1f"}, + {file = "numpy-1.25.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dfe4a913e29b418d096e696ddd422d8a5d13ffba4ea91f9f60440a3b759b0187"}, + {file = "numpy-1.25.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f08f2e037bba04e707eebf4bc934f1972a315c883a9e0ebfa8a7756eabf9e357"}, + {file = "numpy-1.25.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:bec1e7213c7cb00d67093247f8c4db156fd03075f49876957dca4711306d39c9"}, + {file = "numpy-1.25.2-cp310-cp310-win32.whl", hash = "sha256:7dc869c0c75988e1c693d0e2d5b26034644399dd929bc049db55395b1379e044"}, + {file = "numpy-1.25.2-cp310-cp310-win_amd64.whl", hash = "sha256:834b386f2b8210dca38c71a6e0f4fd6922f7d3fcff935dbe3a570945acb1b545"}, + {file = "numpy-1.25.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c5462d19336db4560041517dbb7759c21d181a67cb01b36ca109b2ae37d32418"}, + {file = "numpy-1.25.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:c5652ea24d33585ea39eb6a6a15dac87a1206a692719ff45d53c5282e66d4a8f"}, + {file = "numpy-1.25.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0d60fbae8e0019865fc4784745814cff1c421df5afee233db6d88ab4f14655a2"}, + {file = "numpy-1.25.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:60e7f0f7f6d0eee8364b9a6304c2845b9c491ac706048c7e8cf47b83123b8dbf"}, + {file = "numpy-1.25.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:bb33d5a1cf360304754913a350edda36d5b8c5331a8237268c48f91253c3a364"}, + {file = "numpy-1.25.2-cp311-cp311-win32.whl", hash = "sha256:5883c06bb92f2e6c8181df7b39971a5fb436288db58b5a1c3967702d4278691d"}, + {file = "numpy-1.25.2-cp311-cp311-win_amd64.whl", hash = "sha256:5c97325a0ba6f9d041feb9390924614b60b99209a71a69c876f71052521d42a4"}, + {file = "numpy-1.25.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b79e513d7aac42ae918db3ad1341a015488530d0bb2a6abcbdd10a3a829ccfd3"}, + {file = "numpy-1.25.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:eb942bfb6f84df5ce05dbf4b46673ffed0d3da59f13635ea9b926af3deb76926"}, + {file = "numpy-1.25.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3e0746410e73384e70d286f93abf2520035250aad8c5714240b0492a7302fdca"}, + {file = "numpy-1.25.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d7806500e4f5bdd04095e849265e55de20d8cc4b661b038957354327f6d9b295"}, + {file = "numpy-1.25.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8b77775f4b7df768967a7c8b3567e309f617dd5e99aeb886fa14dc1a0791141f"}, + {file = "numpy-1.25.2-cp39-cp39-win32.whl", hash = "sha256:2792d23d62ec51e50ce4d4b7d73de8f67a2fd3ea710dcbc8563a51a03fb07b01"}, + {file = "numpy-1.25.2-cp39-cp39-win_amd64.whl", hash = "sha256:76b4115d42a7dfc5d485d358728cdd8719be33cc5ec6ec08632a5d6fca2ed380"}, + {file = "numpy-1.25.2-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:1a1329e26f46230bf77b02cc19e900db9b52f398d6722ca853349a782d4cff55"}, + {file = "numpy-1.25.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4c3abc71e8b6edba80a01a52e66d83c5d14433cbcd26a40c329ec7ed09f37901"}, + {file = "numpy-1.25.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:1b9735c27cea5d995496f46a8b1cd7b408b3f34b6d50459d9ac8fe3a20cc17bf"}, + {file = "numpy-1.25.2.tar.gz", hash = "sha256:fd608e19c8d7c55021dffd43bfe5492fab8cc105cc8986f813f8c3c048b38760"}, +] + [[package]] name = "packaging" version = "23.1" @@ -1142,6 +1178,67 @@ files = [ {file = "packaging-23.1.tar.gz", hash = "sha256:a392980d2b6cffa644431898be54b0045151319d1e7ec34f0cfed48767dd334f"}, ] +[[package]] +name = "pandas" +version = "2.1.0" +description = "Powerful data structures for data analysis, time series, and statistics" +optional = false +python-versions = ">=3.9" +files = [ + {file = "pandas-2.1.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:40dd20439ff94f1b2ed55b393ecee9cb6f3b08104c2c40b0cb7186a2f0046242"}, + {file = "pandas-2.1.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:d4f38e4fedeba580285eaac7ede4f686c6701a9e618d8a857b138a126d067f2f"}, + {file = "pandas-2.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6e6a0fe052cf27ceb29be9429428b4918f3740e37ff185658f40d8702f0b3e09"}, + {file = "pandas-2.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9d81e1813191070440d4c7a413cb673052b3b4a984ffd86b8dd468c45742d3cc"}, + {file = "pandas-2.1.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:eb20252720b1cc1b7d0b2879ffc7e0542dd568f24d7c4b2347cb035206936421"}, + {file = "pandas-2.1.0-cp310-cp310-win_amd64.whl", hash = "sha256:38f74ef7ebc0ffb43b3d633e23d74882bce7e27bfa09607f3c5d3e03ffd9a4a5"}, + {file = "pandas-2.1.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:cda72cc8c4761c8f1d97b169661f23a86b16fdb240bdc341173aee17e4d6cedd"}, + {file = "pandas-2.1.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d97daeac0db8c993420b10da4f5f5b39b01fc9ca689a17844e07c0a35ac96b4b"}, + {file = "pandas-2.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d8c58b1113892e0c8078f006a167cc210a92bdae23322bb4614f2f0b7a4b510f"}, + {file = "pandas-2.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:629124923bcf798965b054a540f9ccdfd60f71361255c81fa1ecd94a904b9dd3"}, + {file = "pandas-2.1.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:70cf866af3ab346a10debba8ea78077cf3a8cd14bd5e4bed3d41555a3280041c"}, + {file = "pandas-2.1.0-cp311-cp311-win_amd64.whl", hash = "sha256:d53c8c1001f6a192ff1de1efe03b31a423d0eee2e9e855e69d004308e046e694"}, + {file = "pandas-2.1.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:86f100b3876b8c6d1a2c66207288ead435dc71041ee4aea789e55ef0e06408cb"}, + {file = "pandas-2.1.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:28f330845ad21c11db51e02d8d69acc9035edfd1116926ff7245c7215db57957"}, + {file = "pandas-2.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b9a6ccf0963db88f9b12df6720e55f337447aea217f426a22d71f4213a3099a6"}, + {file = "pandas-2.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d99e678180bc59b0c9443314297bddce4ad35727a1a2656dbe585fd78710b3b9"}, + {file = "pandas-2.1.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:b31da36d376d50a1a492efb18097b9101bdbd8b3fbb3f49006e02d4495d4c644"}, + {file = "pandas-2.1.0-cp39-cp39-win_amd64.whl", hash = "sha256:0164b85937707ec7f70b34a6c3a578dbf0f50787f910f21ca3b26a7fd3363437"}, + {file = "pandas-2.1.0.tar.gz", hash = "sha256:62c24c7fc59e42b775ce0679cfa7b14a5f9bfb7643cfbe708c960699e05fb918"}, +] + +[package.dependencies] +numpy = [ + {version = ">=1.22.4", markers = "python_version < \"3.11\""}, + {version = ">=1.23.2", markers = "python_version >= \"3.11\""}, +] +python-dateutil = ">=2.8.2" +pytz = ">=2020.1" +tzdata = ">=2022.1" + +[package.extras] +all = ["PyQt5 (>=5.15.6)", "SQLAlchemy (>=1.4.36)", "beautifulsoup4 (>=4.11.1)", "bottleneck (>=1.3.4)", "dataframe-api-compat (>=0.1.7)", "fastparquet (>=0.8.1)", "fsspec (>=2022.05.0)", "gcsfs (>=2022.05.0)", "html5lib (>=1.1)", "hypothesis (>=6.46.1)", "jinja2 (>=3.1.2)", "lxml (>=4.8.0)", "matplotlib (>=3.6.1)", "numba (>=0.55.2)", "numexpr (>=2.8.0)", "odfpy (>=1.4.1)", "openpyxl (>=3.0.10)", "pandas-gbq (>=0.17.5)", "psycopg2 (>=2.9.3)", "pyarrow (>=7.0.0)", "pymysql (>=1.0.2)", "pyreadstat (>=1.1.5)", "pytest (>=7.3.2)", "pytest-asyncio (>=0.17.0)", "pytest-xdist (>=2.2.0)", "pyxlsb (>=1.0.9)", "qtpy (>=2.2.0)", "s3fs (>=2022.05.0)", "scipy (>=1.8.1)", "tables (>=3.7.0)", "tabulate (>=0.8.10)", "xarray (>=2022.03.0)", "xlrd (>=2.0.1)", "xlsxwriter (>=3.0.3)", "zstandard (>=0.17.0)"] +aws = ["s3fs (>=2022.05.0)"] +clipboard = ["PyQt5 (>=5.15.6)", "qtpy (>=2.2.0)"] +compression = ["zstandard (>=0.17.0)"] +computation = ["scipy (>=1.8.1)", "xarray (>=2022.03.0)"] +consortium-standard = ["dataframe-api-compat (>=0.1.7)"] +excel = ["odfpy (>=1.4.1)", "openpyxl (>=3.0.10)", "pyxlsb (>=1.0.9)", "xlrd (>=2.0.1)", "xlsxwriter (>=3.0.3)"] +feather = ["pyarrow (>=7.0.0)"] +fss = ["fsspec (>=2022.05.0)"] +gcp = ["gcsfs (>=2022.05.0)", "pandas-gbq (>=0.17.5)"] +hdf5 = ["tables (>=3.7.0)"] +html = ["beautifulsoup4 (>=4.11.1)", "html5lib (>=1.1)", "lxml (>=4.8.0)"] +mysql = ["SQLAlchemy (>=1.4.36)", "pymysql (>=1.0.2)"] +output-formatting = ["jinja2 (>=3.1.2)", "tabulate (>=0.8.10)"] +parquet = ["pyarrow (>=7.0.0)"] +performance = ["bottleneck (>=1.3.4)", "numba (>=0.55.2)", "numexpr (>=2.8.0)"] +plot = ["matplotlib (>=3.6.1)"] +postgresql = ["SQLAlchemy (>=1.4.36)", "psycopg2 (>=2.9.3)"] +spss = ["pyreadstat (>=1.1.5)"] +sql-other = ["SQLAlchemy (>=1.4.36)"] +test = ["hypothesis (>=6.46.1)", "pytest (>=7.3.2)", "pytest-asyncio (>=0.17.0)", "pytest-xdist (>=2.2.0)"] +xml = ["lxml (>=4.8.0)"] + [[package]] name = "platformdirs" version = "3.10.0" @@ -1459,6 +1556,17 @@ files = [ [package.dependencies] six = ">=1.5" +[[package]] +name = "pytz" +version = "2023.3.post1" +description = "World timezone definitions, modern and historical" +optional = false +python-versions = "*" +files = [ + {file = "pytz-2023.3.post1-py2.py3-none-any.whl", hash = "sha256:ce42d816b81b68506614c11e8937d3aa9e41007ceb50bfdcb0749b921bf646c7"}, + {file = "pytz-2023.3.post1.tar.gz", hash = "sha256:7b4fddbeb94a1eba4b557da24f19fdf9db575192544270a9101d8509f9f43d7b"}, +] + [[package]] name = "pywin32" version = "227" @@ -1636,6 +1744,17 @@ starlette = ["starlette (>=0.19.1)"] starlite = ["starlite (>=1.48)"] tornado = ["tornado (>=5)"] +[[package]] +name = "simpleeval" +version = "0.9.13" +description = "A simple, safe single expression evaluator library." +optional = false +python-versions = "*" +files = [ + {file = "simpleeval-0.9.13-py2.py3-none-any.whl", hash = "sha256:22a2701a5006e4188d125d34accf2405c2c37c93f6b346f2484b6422415ae54a"}, + {file = "simpleeval-0.9.13.tar.gz", hash = "sha256:4a30f9cc01825fe4c719c785e3762623e350c4840d5e6855c2a8496baaa65fac"}, +] + [[package]] name = "six" version = "1.16.0" @@ -1716,6 +1835,17 @@ files = [ {file = "typing_extensions-4.7.1.tar.gz", hash = "sha256:b75ddc264f0ba5615db7ba217daeb99701ad295353c45f9e95963337ceeeffb2"}, ] +[[package]] +name = "tzdata" +version = "2023.3" +description = "Provider of IANA time zone data" +optional = false +python-versions = ">=2" +files = [ + {file = "tzdata-2023.3-py2.py3-none-any.whl", hash = "sha256:7e65763eef3120314099b6939b5546db7adce1e7d6f2e179e3df563c70511eda"}, + {file = "tzdata-2023.3.tar.gz", hash = "sha256:11ef1e08e54acb0d4f95bdb1be05da659673de4acbd21bf9c69e94cc5e907a3a"}, +] + [[package]] name = "urllib3" version = "1.26.16" @@ -1922,4 +2052,4 @@ multidict = ">=4.0" [metadata] lock-version = "2.0" python-versions = "^3.10" -content-hash = "2903a2c7f1a7ebc91ada22a4e6b73aa96e7195e0d3da72310254862e49c6f22b" +content-hash = "af9fca8fc8b614482fef8d85b15f4b351e97757b05fd3de6f054d3cd3119ad07" diff --git a/airbyte-ci/connectors/pipelines/pyproject.toml b/airbyte-ci/connectors/pipelines/pyproject.toml index 20001f87d260..e447764ab61b 100644 --- a/airbyte-ci/connectors/pipelines/pyproject.toml +++ b/airbyte-ci/connectors/pipelines/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "poetry.core.masonry.api" [tool.poetry] name = "pipelines" -version = "1.1.0" +version = "1.2.3" description = "Packaged maintained by the connector operations team to perform CI for connectors' pipelines" authors = ["Airbyte "] @@ -20,7 +20,7 @@ airbyte-protocol-models = "*" tabulate = "^0.8.9" jinja2 = "^3.0.2" requests = "^2.28.2" -connector-ops = {path = "../connector_ops"} +connector-ops = {path = "../connector_ops", develop = true} toml = "^0.10.2" sentry-sdk = "^1.28.1" diff --git a/airbyte-ci/connectors/pipelines/tests/test_actions/test_environments.py b/airbyte-ci/connectors/pipelines/tests/test_actions/test_environments.py index f48c061dbec2..f3e1a4a33c05 100644 --- a/airbyte-ci/connectors/pipelines/tests/test_actions/test_environments.py +++ b/airbyte-ci/connectors/pipelines/tests/test_actions/test_environments.py @@ -30,7 +30,7 @@ def context(dagger_client): async def test_with_installed_python_package(context, python_connector): - python_environment = context.dagger_client.container().from_("python:3.9") + python_environment = context.dagger_client.container().from_("python:3.10") installed_connector_package = await environments.with_installed_python_package( context, python_environment, diff --git a/airbyte-ci/connectors/pipelines/tests/test_commands/test_groups/test_connectors.py b/airbyte-ci/connectors/pipelines/tests/test_commands/test_groups/test_connectors.py index 0f9cda290e27..e7bf1141845d 100644 --- a/airbyte-ci/connectors/pipelines/tests/test_commands/test_groups/test_connectors.py +++ b/airbyte-ci/connectors/pipelines/tests/test_commands/test_groups/test_connectors.py @@ -25,6 +25,7 @@ def test_get_selected_connectors_by_name_no_file_modification(): selected_languages=(), modified=False, metadata_changes_only=False, + metadata_query=None, modified_files=set(), ) @@ -41,6 +42,7 @@ def test_get_selected_connectors_by_support_level_no_file_modification(): selected_languages=(), modified=False, metadata_changes_only=False, + metadata_query=None, modified_files=set(), ) @@ -54,6 +56,7 @@ def test_get_selected_connectors_by_language_no_file_modification(): selected_languages=(ConnectorLanguage.LOW_CODE,), modified=False, metadata_changes_only=False, + metadata_query=None, modified_files=set(), ) @@ -69,6 +72,7 @@ def test_get_selected_connectors_by_name_with_file_modification(): selected_languages=(), modified=False, metadata_changes_only=False, + metadata_query=None, modified_files=modified_files, ) @@ -87,6 +91,7 @@ def test_get_selected_connectors_by_name_and_support_level_or_languages_leads_to selected_languages=(connector.language,), modified=False, metadata_changes_only=False, + metadata_query=None, modified_files=modified_files, ) @@ -103,6 +108,7 @@ def test_get_selected_connectors_with_modified(): selected_languages=(), modified=True, metadata_changes_only=False, + metadata_query=None, modified_files=modified_files, ) @@ -119,6 +125,7 @@ def test_get_selected_connectors_with_modified_and_language(): selected_languages=(ConnectorLanguage.JAVA,), modified=True, metadata_changes_only=False, + metadata_query=None, modified_files=modified_files, ) @@ -136,6 +143,7 @@ def test_get_selected_connectors_with_modified_and_support_level(): selected_languages=(), modified=True, metadata_changes_only=False, + metadata_query=None, modified_files=modified_files, ) @@ -157,6 +165,7 @@ def test_get_selected_connectors_with_modified_and_metadata_only(): selected_languages=(), modified=True, metadata_changes_only=True, + metadata_query=None, modified_files=modified_files, ) @@ -182,6 +191,7 @@ def test_get_selected_connectors_with_metadata_only(): selected_languages=(), modified=False, metadata_changes_only=True, + metadata_query=None, modified_files=modified_files, ) @@ -193,6 +203,25 @@ def test_get_selected_connectors_with_metadata_only(): } +def test_get_selected_connectors_with_metadata_query(): + connector = pick_a_random_connector() + metadata_query = f"data.dockerRepository == '{connector.metadata['dockerRepository']}'" + selected_connectors = connectors.get_selected_connectors_with_modified_files( + selected_names=(), + selected_support_levels=(), + selected_languages=(), + modified=False, + metadata_changes_only=False, + metadata_query=metadata_query, + modified_files=set(), + ) + + assert len(selected_connectors) == 1 + assert isinstance(selected_connectors[0], ConnectorWithModifiedFiles) + assert selected_connectors[0].technical_name == connector.technical_name + assert not selected_connectors[0].modified_files + + @pytest.fixture() def click_context_obj(): return { diff --git a/airbyte-ci/connectors/pipelines/tests/test_tests/test_common.py b/airbyte-ci/connectors/pipelines/tests/test_tests/test_common.py index 0bdcd5158c93..b167c094ffa9 100644 --- a/airbyte-ci/connectors/pipelines/tests/test_tests/test_common.py +++ b/airbyte-ci/connectors/pipelines/tests/test_tests/test_common.py @@ -167,6 +167,11 @@ async def test_cat_container_provisioning( - that the entrypoint is correctly set. - the current working directory is correctly set. """ + # The mounted_connector_secrets behaves differently when the test is run locally or in CI. + # It is not masking the secrets when run locally. + # We want to confirm that the secrets are correctly masked when run in CI. + test_context.is_local = False + test_context.is_ci = True acceptance_test_step = self.get_patched_acceptance_test_step(dagger_client, mocker, test_context, test_input_dir) cat_container = await acceptance_test_step._build_connector_acceptance_test(dummy_connector_under_test_image_tar, test_input_dir) assert (await cat_container.with_exec(["pwd"]).stdout()).strip() == acceptance_test_step.CONTAINER_TEST_INPUT_DIRECTORY diff --git a/airbyte-ci/connectors/pipelines/tests/test_utils.py b/airbyte-ci/connectors/pipelines/tests/test_utils.py index 58b9c9fd78cd..8070b34e42de 100644 --- a/airbyte-ci/connectors/pipelines/tests/test_utils.py +++ b/airbyte-ci/connectors/pipelines/tests/test_utils.py @@ -181,3 +181,9 @@ async def test_check_path_in_workdir(dagger_client): assert await utils.check_path_in_workdir(container, "setup.py") assert await utils.check_path_in_workdir(container, "requirements.txt") assert await utils.check_path_in_workdir(container, "not_existing_file") is False + + +def test_sh_dash_c(): + assert utils.sh_dash_c(["foo", "bar"]) == ["sh", "-c", "set -o xtrace && foo && bar"] + assert utils.sh_dash_c(["foo"]) == ["sh", "-c", "set -o xtrace && foo"] + assert utils.sh_dash_c([]) == ["sh", "-c", "set -o xtrace"] diff --git a/airbyte-commons-cli/build.gradle b/airbyte-commons-cli/build.gradle index 2b9e141d8164..3dbb175d2ad9 100644 --- a/airbyte-commons-cli/build.gradle +++ b/airbyte-commons-cli/build.gradle @@ -5,5 +5,3 @@ plugins { dependencies { implementation 'commons-cli:commons-cli:1.4' } - -Task publishArtifactsTask = getPublishArtifactsTask("$rootProject.ext.version", project) diff --git a/airbyte-commons-protocol/build.gradle b/airbyte-commons-protocol/build.gradle index 5787c7af290d..88aa34508982 100644 --- a/airbyte-commons-protocol/build.gradle +++ b/airbyte-commons-protocol/build.gradle @@ -8,5 +8,3 @@ dependencies { implementation libs.airbyte.protocol implementation project(':airbyte-json-validation') } - -Task publishArtifactsTask = getPublishArtifactsTask("$rootProject.ext.version", project) diff --git a/airbyte-commons/build.gradle b/airbyte-commons/build.gradle index 4a2dd07625ac..a0eefe5f73da 100644 --- a/airbyte-commons/build.gradle +++ b/airbyte-commons/build.gradle @@ -1,5 +1,6 @@ plugins { - id "java-library" + id 'java-library' + id 'de.undercouch.download' version "5.4.0" } dependencies { @@ -10,4 +11,9 @@ dependencies { implementation 'com.jayway.jsonpath:json-path:2.7.0' } -Task publishArtifactsTask = getPublishArtifactsTask("$rootProject.ext.version", project) +def downloadSpecSecretMask = tasks.register('downloadSpecSecretMask', Download) { + src 'https://connectors.airbyte.com/files/registries/v0/specs_secrets_mask.yaml' + dest new File(projectDir, 'src/main/resources/seed/specs_secrets_mask.yaml') + overwrite true +} +tasks.named('processResources').configure { dependsOn downloadSpecSecretMask } diff --git a/airbyte-config-oss/config-models-oss/build.gradle b/airbyte-config-oss/config-models-oss/build.gradle index c0e92fb85ce0..09ea16120034 100644 --- a/airbyte-config-oss/config-models-oss/build.gradle +++ b/airbyte-config-oss/config-models-oss/build.gradle @@ -29,6 +29,9 @@ jsonSchema2Pojo { includeSetters = true serializable = true } +tasks.register('generate').configure { + dependsOn tasks.named('generateJsonSchema2Pojo') +} test { useJUnitPlatform { @@ -39,7 +42,7 @@ test { } } -task log4j2IntegrationTest(type: Test) { +tasks.register('log4j2IntegrationTest', Test) { useJUnitPlatform { includeTags 'log4j2-config' } @@ -48,7 +51,7 @@ task log4j2IntegrationTest(type: Test) { } } -task logClientsIntegrationTest(type: Test) { +tasks.register('logClientsIntegrationTest', Test) { useJUnitPlatform { includeTags 'logger-client' } @@ -56,5 +59,3 @@ task logClientsIntegrationTest(type: Test) { events "passed", "skipped", "failed" } } - -Task publishArtifactsTask = getPublishArtifactsTask("$rootProject.ext.version", project) diff --git a/airbyte-config-oss/init-oss/build.gradle b/airbyte-config-oss/init-oss/build.gradle index a810c1ec6bb3..ebed9ec60d81 100644 --- a/airbyte-config-oss/init-oss/build.gradle +++ b/airbyte-config-oss/init-oss/build.gradle @@ -1,7 +1,6 @@ plugins { id 'java-library' id "de.undercouch.download" version "5.4.0" - } dependencies { @@ -20,19 +19,11 @@ dependencies { testImplementation 'com.squareup.okhttp3:mockwebserver:4.9.1' } -task downloadConnectorRegistry(type: Download) { +def downloadConnectorRegistry = tasks.register('downloadConnectorRegistry', Download) { src 'https://connectors.airbyte.com/files/registries/v0/oss_registry.json' dest new File(projectDir, 'src/main/resources/seed/oss_registry.json') overwrite true } - -task downloadSpecSecretMask(type: Download) { - src 'https://connectors.airbyte.com/files/registries/v0/specs_secrets_mask.yaml' - dest new File(project(":airbyte-commons").projectDir, 'src/main/resources/seed/specs_secrets_mask.yaml') - overwrite true +tasks.named('processResources')configure { + dependsOn downloadConnectorRegistry } - -processResources.dependsOn(downloadConnectorRegistry) -processResources.dependsOn(downloadSpecSecretMask) - -Task publishArtifactsTask = getPublishArtifactsTask("$rootProject.ext.version", project) diff --git a/airbyte-connector-test-harnesses/acceptance-test-harness/build.gradle b/airbyte-connector-test-harnesses/acceptance-test-harness/build.gradle index 9aac14c201f2..af7a535d0442 100644 --- a/airbyte-connector-test-harnesses/acceptance-test-harness/build.gradle +++ b/airbyte-connector-test-harnesses/acceptance-test-harness/build.gradle @@ -33,12 +33,10 @@ dependencies { testImplementation 'com.jayway.jsonpath:json-path:2.7.0' testImplementation 'org.mockito:mockito-inline:4.7.0' testImplementation libs.postgresql - testImplementation libs.platform.testcontainers - testImplementation libs.platform.testcontainers.postgresql + testImplementation libs.testcontainers + testImplementation libs.testcontainers.postgresql testImplementation libs.jmh.core testImplementation libs.jmh.annotations testImplementation 'com.github.docker-java:docker-java:3.2.8' testImplementation 'com.github.docker-java:docker-java-transport-httpclient5:3.2.8' } - -Task publishArtifactsTask = getPublishArtifactsTask("$rootProject.ext.version", project) diff --git a/airbyte-db/db-lib/build.gradle b/airbyte-db/db-lib/build.gradle index a7002bd82234..9d525bd63148 100644 --- a/airbyte-db/db-lib/build.gradle +++ b/airbyte-db/db-lib/build.gradle @@ -2,11 +2,6 @@ plugins { id 'java-library' } -// Add a configuration for our migrations tasks defined below to encapsulate their dependencies -configurations { - migrations.extendsFrom implementation -} - configurations.all { exclude group: 'io.micronaut.flyway' } @@ -22,12 +17,9 @@ dependencies { implementation project(':airbyte-config-oss:config-models-oss') implementation libs.flyway.core - migrations libs.platform.testcontainers.postgresql - migrations sourceSets.main.output - // Mark as compile only to avoid leaking transitively to connectors - compileOnly libs.platform.testcontainers.postgresql - compileOnly libs.connectors.testcontainers.mysql + compileOnly libs.testcontainers.postgresql + compileOnly libs.testcontainers.mysql // These are required because gradle might be using lower version of Jna from other // library transitive dependency. Can be removed if we can figure out which library is the cause. @@ -37,8 +29,8 @@ dependencies { testImplementation project(':airbyte-test-utils') testImplementation 'org.apache.commons:commons-lang3:3.11' - testImplementation libs.platform.testcontainers.postgresql - testImplementation libs.connectors.testcontainers.mysql + testImplementation libs.testcontainers.postgresql + testImplementation libs.testcontainers.mysql // Big Query implementation('com.google.cloud:google-cloud-bigquery:1.133.1') @@ -57,5 +49,3 @@ dependencies { implementation 'mysql:mysql-connector-java:8.0.30' } - -Task publishArtifactsTask = getPublishArtifactsTask("$rootProject.ext.version", project) diff --git a/airbyte-integrations/bases/base-java-s3/build.gradle b/airbyte-integrations/bases/base-java-s3/build.gradle index 55da35f87c44..46b147cc355e 100644 --- a/airbyte-integrations/bases/base-java-s3/build.gradle +++ b/airbyte-integrations/bases/base-java-s3/build.gradle @@ -6,7 +6,6 @@ dependencies { implementation project(':airbyte-config-oss:config-models-oss') implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation 'org.apache.commons:commons-csv:1.4' implementation 'com.github.alexmojaki:s3-stream-upload:2.2.2' diff --git a/airbyte-integrations/bases/base-java/build.gradle b/airbyte-integrations/bases/base-java/build.gradle index 6bbbf4e847ff..224251f23047 100644 --- a/airbyte-integrations/bases/base-java/build.gradle +++ b/airbyte-integrations/bases/base-java/build.gradle @@ -19,12 +19,10 @@ dependencies { implementation 'org.bouncycastle:bctls-jdk15on:1.66' implementation libs.jackson.annotations - implementation libs.connectors.testcontainers - implementation libs.connectors.testcontainers.jdbc + implementation libs.testcontainers + implementation libs.testcontainers.jdbc implementation libs.bundles.datadog - implementation files(project(':airbyte-integrations:bases:base').airbyteDocker.outputs) - testImplementation 'commons-lang:commons-lang:2.6' implementation group: 'org.apache.logging.log4j', name: 'log4j-layout-template-json', version: '2.17.2' } diff --git a/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/base/IntegrationRunner.java b/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/base/IntegrationRunner.java index f35a78407842..e6dbd5e8b3ac 100644 --- a/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/base/IntegrationRunner.java +++ b/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/base/IntegrationRunner.java @@ -52,6 +52,8 @@ public class IntegrationRunner { private static final Logger LOGGER = LoggerFactory.getLogger(IntegrationRunner.class); + public static final String TYPE_AND_DEDUPE_THREAD_NAME = "type-and-dedupe"; + /** * Filters threads that should not be considered when looking for orphaned threads at shutdown of * the integration runner. @@ -63,7 +65,7 @@ public class IntegrationRunner { */ @VisibleForTesting static final Predicate ORPHANED_THREAD_FILTER = runningThread -> !runningThread.getName().equals(Thread.currentThread().getName()) - && !runningThread.isDaemon(); + && !runningThread.isDaemon() && !TYPE_AND_DEDUPE_THREAD_NAME.equals(runningThread.getName()); public static final int INTERRUPT_THREAD_DELAY_MINUTES = 60; public static final int EXIT_THREAD_DELAY_MINUTES = 70; diff --git a/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/base/ssh/SshBastionContainer.java b/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/base/ssh/SshBastionContainer.java index 4a32e6e43eff..20ed20bbb082 100644 --- a/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/base/ssh/SshBastionContainer.java +++ b/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/base/ssh/SshBastionContainer.java @@ -12,6 +12,7 @@ import com.fasterxml.jackson.databind.JsonNode; import com.google.common.collect.ImmutableMap; import io.airbyte.commons.json.Jsons; +import io.airbyte.integrations.util.HostPortResolver; import java.io.IOException; import java.util.List; import java.util.Objects; @@ -63,12 +64,10 @@ public ImmutableMap.Builder getBasicDbConfigBuider(final JdbcDat public ImmutableMap.Builder getBasicDbConfigBuider(final JdbcDatabaseContainer db, final String schemaName) { return ImmutableMap.builder() - .put("host", Objects.requireNonNull(db.getContainerInfo().getNetworkSettings() - .getNetworks() - .entrySet().stream().findFirst().get().getValue().getIpAddress())) + .put("host", Objects.requireNonNull(HostPortResolver.resolveHost(db))) .put("username", db.getUsername()) .put("password", db.getPassword()) - .put("port", db.getExposedPorts().get(0)) + .put("port", HostPortResolver.resolvePort(db)) .put("database", schemaName) .put("ssl", false); } diff --git a/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/base/ssh/SshHelpers.java b/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/base/ssh/SshHelpers.java index e1446c34c0a1..df86bcf998d2 100644 --- a/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/base/ssh/SshHelpers.java +++ b/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/base/ssh/SshHelpers.java @@ -61,7 +61,8 @@ public static ImmutablePair getInnerContainerAddress(final Cont * @return a pair of host and port */ public static ImmutablePair getOuterContainerAddress(final Container container) { - return ImmutablePair.of(container.getHost(), + return ImmutablePair.of( + container.getHost(), container.getFirstMappedPort()); } diff --git a/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/destination/record_buffer/SerializedBufferingStrategy.java b/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/destination/record_buffer/SerializedBufferingStrategy.java index d69451440e03..1557ab51beac 100644 --- a/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/destination/record_buffer/SerializedBufferingStrategy.java +++ b/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/destination/record_buffer/SerializedBufferingStrategy.java @@ -4,7 +4,7 @@ package io.airbyte.integrations.destination.record_buffer; -import io.airbyte.commons.string.Strings; +import io.airbyte.integrations.util.ConnectorExceptionUtil; import io.airbyte.protocol.models.v0.AirbyteMessage; import io.airbyte.protocol.models.v0.AirbyteStreamNameNamespacePair; import io.airbyte.protocol.models.v0.ConfiguredAirbyteCatalog; @@ -60,7 +60,6 @@ public SerializedBufferingStrategy(final BufferCreateFunction onCreateBuffer, * @param stream stream associated with record * @param message {@link AirbyteMessage} to buffer * @return Optional which contains a {@link BufferFlushType} if a flush occurred, otherwise empty) - * @throws Exception */ @Override public Optional addRecord(final AirbyteStreamNameNamespacePair stream, final AirbyteMessage message) throws Exception { @@ -163,9 +162,8 @@ public void close() throws Exception { LOGGER.error("Exception while closing stream buffer", e); } } - if (!exceptionsThrown.isEmpty()) { - throw new RuntimeException(String.format("Exceptions thrown while closing buffers: %s", Strings.join(exceptionsThrown, "\n"))); - } + + ConnectorExceptionUtil.logAllAndThrowFirst("Exceptions thrown while closing buffers: ", exceptionsThrown); } } diff --git a/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/destination_async/AsyncStreamConsumer.java b/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/destination_async/AsyncStreamConsumer.java index 435a0b11a94c..caac2e43f253 100644 --- a/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/destination_async/AsyncStreamConsumer.java +++ b/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/destination_async/AsyncStreamConsumer.java @@ -18,7 +18,6 @@ import io.airbyte.protocol.models.v0.AirbyteMessage.Type; import io.airbyte.protocol.models.v0.ConfiguredAirbyteCatalog; import io.airbyte.protocol.models.v0.StreamDescriptor; -import java.util.Optional; import java.util.Set; import java.util.function.Consumer; import lombok.extern.slf4j.Slf4j; @@ -110,16 +109,14 @@ public void accept(final String messageString, final Integer sizeInBytes) throws * to try to use a thread pool to partially deserialize to get record type and stream name, we can * do it without touching buffer manager. */ - deserializeAirbyteMessage(messageString) - .ifPresent(message -> { - if (Type.RECORD.equals(message.getType())) { - if (Strings.isNullOrEmpty(message.getRecord().getNamespace())) { - message.getRecord().setNamespace(defaultNamespace); - } - validateRecord(message); - } - bufferEnqueue.addRecord(message, sizeInBytes + PARTIAL_DESERIALIZE_REF_BYTES); - }); + final var message = deserializeAirbyteMessage(messageString); + if (Type.RECORD.equals(message.getType())) { + if (Strings.isNullOrEmpty(message.getRecord().getNamespace())) { + message.getRecord().setNamespace(defaultNamespace); + } + validateRecord(message); + } + bufferEnqueue.addRecord(message, sizeInBytes + PARTIAL_DESERIALIZE_REF_BYTES); } /** @@ -134,24 +131,27 @@ public void accept(final String messageString, final Integer sizeInBytes) throws * @return PartialAirbyteMessage if the message is valid, empty otherwise */ @VisibleForTesting - public static Optional deserializeAirbyteMessage(final String messageString) { + public static PartialAirbyteMessage deserializeAirbyteMessage(final String messageString) { // TODO: (ryankfu) plumb in the serialized AirbyteStateMessage to match AirbyteRecordMessage code // parity. https://github.com/airbytehq/airbyte/issues/27530 for additional context - final Optional messageOptional = Jsons.tryDeserialize(messageString, PartialAirbyteMessage.class) - .map(partial -> { - if (Type.RECORD.equals(partial.getType()) && partial.getRecord().getData() != null) { - return partial.withSerialized(partial.getRecord().getData().toString()); - } else if (Type.STATE.equals(partial.getType())) { - return partial.withSerialized(messageString); - } else { - return null; - } - }); - - if (messageOptional.isPresent()) { - return messageOptional; + final var partial = Jsons.tryDeserialize(messageString, PartialAirbyteMessage.class) + .orElseThrow(() -> new RuntimeException("Unable to deserialize PartialAirbyteMessage.")); + + final var msgType = partial.getType(); + if (Type.RECORD.equals(msgType) && partial.getRecord().getData() != null) { + // store serialized json + partial.withSerialized(partial.getRecord().getData().toString()); + // The connector doesn't need to be able to access to the record value. We can serialize it here and + // drop the json + // object. Having this data stored as a string is slightly more optimal for the memory usage. + partial.getRecord().setData(null); + } else if (Type.STATE.equals(msgType)) { + partial.withSerialized(messageString); + } else { + throw new RuntimeException(String.format("Unsupported message type: %s", msgType)); } - throw new RuntimeException("Invalid serialized message"); + + return partial; } @Override @@ -175,6 +175,9 @@ public void close() throws Exception { private void propagateFlushWorkerExceptionIfPresent() throws Exception { if (flushFailure.isFailed()) { + if (flushFailure.getException() == null) { + throw new RuntimeException("The Destination failed with a missing exception. This should not happen. Please check logs."); + } throw flushFailure.getException(); } } diff --git a/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/destination_async/DetectStreamToFlush.java b/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/destination_async/DetectStreamToFlush.java index 6d230dec56d7..c76698adf15d 100644 --- a/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/destination_async/DetectStreamToFlush.java +++ b/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/destination_async/DetectStreamToFlush.java @@ -7,13 +7,15 @@ import com.google.common.annotations.VisibleForTesting; import io.airbyte.integrations.destination_async.buffers.BufferDequeue; import io.airbyte.protocol.models.v0.StreamDescriptor; +import java.time.Clock; import java.time.Instant; -import java.time.temporal.ChronoUnit; import java.util.Comparator; import java.util.List; import java.util.Map; import java.util.Optional; import java.util.Set; +import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.ConcurrentMap; import java.util.concurrent.atomic.AtomicBoolean; import java.util.stream.Collectors; import lombok.extern.slf4j.Slf4j; @@ -27,20 +29,32 @@ public class DetectStreamToFlush { private static final double EAGER_FLUSH_THRESHOLD = 0.90; private static final long QUEUE_FLUSH_THRESHOLD_BYTES = 10 * 1024 * 1024; // 10MB - private static final long MAX_TIME_BETWEEN_REC_MIN = 5L; + private static final long MAX_TIME_BETWEEN_FLUSH_MS = 5 * 60 * 1000; private final BufferDequeue bufferDequeue; private final RunningFlushWorkers runningFlushWorkers; private final AtomicBoolean isClosing; private final DestinationFlushFunction flusher; + private final Clock nowProvider; + private final ConcurrentMap latestFlushTimeMsPerStream = new ConcurrentHashMap<>(); public DetectStreamToFlush(final BufferDequeue bufferDequeue, final RunningFlushWorkers runningFlushWorkers, final AtomicBoolean isClosing, final DestinationFlushFunction flusher) { + this(bufferDequeue, runningFlushWorkers, isClosing, flusher, Clock.systemUTC()); + } + + @VisibleForTesting + DetectStreamToFlush(final BufferDequeue bufferDequeue, + final RunningFlushWorkers runningFlushWorkers, + final AtomicBoolean isClosing, + final DestinationFlushFunction flusher, + final Clock nowProvider) { this.bufferDequeue = bufferDequeue; this.runningFlushWorkers = runningFlushWorkers; this.isClosing = isClosing; this.flusher = flusher; + this.nowProvider = nowProvider; } /** @@ -83,8 +97,8 @@ long computeQueueThreshold() { * Return an empty optional if no streams are ready. *

* A stream is ready to flush if it either meets a size threshold or a time threshold. See - * {@link #isSizeTriggered(StreamDescriptor, long)} and {@link #isTimeTriggered(StreamDescriptor)} - * for details on these triggers. + * {@link #isSizeTriggered(StreamDescriptor, long)} and {@link #isTimeTriggered(long)} for details + * on these triggers. * * @param queueSizeThresholdBytes - the size threshold to use for determining if a stream is ready * to flush. @@ -93,7 +107,8 @@ long computeQueueThreshold() { @VisibleForTesting Optional getNextStreamToFlush(final long queueSizeThresholdBytes) { for (final StreamDescriptor stream : orderStreamsByPriority(bufferDequeue.getBufferedStreams())) { - final ImmutablePair isTimeTriggeredResult = isTimeTriggered(stream); + final long latestFlushTimeMs = latestFlushTimeMsPerStream.computeIfAbsent(stream, _k -> nowProvider.millis()); + final ImmutablePair isTimeTriggeredResult = isTimeTriggered(latestFlushTimeMs); final ImmutablePair isSizeTriggeredResult = isSizeTriggered(stream, queueSizeThresholdBytes); final String debugString = String.format( @@ -106,7 +121,7 @@ Optional getNextStreamToFlush(final long queueSizeThresholdByt if (isSizeTriggeredResult.getLeft() || isTimeTriggeredResult.getLeft()) { log.info("flushing: {}", debugString); - + latestFlushTimeMsPerStream.put(stream, nowProvider.millis()); return Optional.of(stream); } } @@ -122,15 +137,13 @@ Optional getNextStreamToFlush(final long queueSizeThresholdByt * This method also returns debug string with info that about the computation. We do it this way, so * that the debug info that is printed is exactly what is used in the computation. * - * @param stream stream + * @param latestFlushTimeMs latestFlushTimeMs * @return is time triggered and a debug string */ @VisibleForTesting - ImmutablePair isTimeTriggered(final StreamDescriptor stream) { - final Boolean isTimeTriggered = bufferDequeue.getTimeOfLastRecord(stream) - .map(time -> time.isBefore(Instant.now().minus(MAX_TIME_BETWEEN_REC_MIN, ChronoUnit.MINUTES))) - .orElse(false); - + ImmutablePair isTimeTriggered(final long latestFlushTimeMs) { + final long timeSinceLastFlushMs = nowProvider.millis() - latestFlushTimeMs; + final Boolean isTimeTriggered = timeSinceLastFlushMs >= MAX_TIME_BETWEEN_FLUSH_MS; final String debugString = String.format("time trigger: %s", isTimeTriggered); return ImmutablePair.of(isTimeTriggered, debugString); diff --git a/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/destination_async/buffers/BufferManager.java b/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/destination_async/buffers/BufferManager.java index 3216135fdf73..b9aa5d75e26d 100644 --- a/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/destination_async/buffers/BufferManager.java +++ b/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/destination_async/buffers/BufferManager.java @@ -74,7 +74,9 @@ public void close() throws Exception { } private void printQueueInfo() { - final var queueInfo = new StringBuilder().append("QUEUE INFO").append(System.lineSeparator()); + final var queueInfo = new StringBuilder().append("START OF QUEUE INFO").append(System.lineSeparator()) + .append("This represents an estimation of the size of the elements contain in the in memory buffer.") + .append(System.lineSeparator()); queueInfo .append(String.format(" Global Mem Manager -- max: %s, allocated: %s (%s MB), %% used: %s", @@ -91,6 +93,12 @@ private void printQueueInfo() { entry.getKey().getName(), queue.size(), AirbyteFileUtils.byteCountToDisplaySize(queue.getCurrentMemoryUsage()))) .append(System.lineSeparator()); } + + queueInfo.append(stateManager.getMemoryUsageMessage()) + .append(System.lineSeparator()); + + queueInfo.append("END OF QUEUE INFO"); + log.info(queueInfo.toString()); } diff --git a/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/destination_async/state/GlobalAsyncStateManager.java b/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/destination_async/state/GlobalAsyncStateManager.java index 420f892a66ef..2ddc643763cc 100644 --- a/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/destination_async/state/GlobalAsyncStateManager.java +++ b/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/destination_async/state/GlobalAsyncStateManager.java @@ -18,6 +18,7 @@ import java.util.LinkedList; import java.util.List; import java.util.Map; +import java.util.Objects; import java.util.Optional; import java.util.Set; import java.util.UUID; @@ -68,9 +69,8 @@ public class GlobalAsyncStateManager { private final AtomicLong memoryUsed; boolean preState = true; + private final ConcurrentMap> descToStateIdQ = new ConcurrentHashMap<>(); private final ConcurrentMap stateIdToCounter = new ConcurrentHashMap<>(); - private final ConcurrentMap> streamToStateIdQ = new ConcurrentHashMap<>(); - private final ConcurrentMap> stateIdToState = new ConcurrentHashMap<>(); // empty in the STREAM case. @@ -144,30 +144,39 @@ public void decrement(final long stateId, final long count) { public List flushStates() { final List output = new ArrayList<>(); Long bytesFlushed = 0L; - for (final Map.Entry> entry : streamToStateIdQ.entrySet()) { - // Remove all states with 0 counters. - // Per-stream synchronized is required to make sure the state (at the head of the queue) - // logic is applied to is the state actually removed. - synchronized (this) { + synchronized (this) { + for (final Map.Entry> entry : descToStateIdQ.entrySet()) { + // Remove all states with 0 counters. + // Per-stream synchronized is required to make sure the state (at the head of the queue) + // logic is applied to is the state actually removed. + final LinkedList stateIdQueue = entry.getValue(); while (true) { - final Long oldestState = stateIdQueue.peek(); - if (oldestState == null) { + final Long oldestStateId = stateIdQueue.peek(); + // no state to flush for this stream + if (oldestStateId == null) { break; } // technically possible this map hasn't been updated yet. - final boolean noCorrespondingStateMsg = stateIdToState.get(oldestState) == null; - if (noCorrespondingStateMsg) { + final var oldestStateCounter = stateIdToCounter.get(oldestStateId); + Objects.requireNonNull(oldestStateCounter, "Invariant Violation: No record counter found for state message."); + + final var oldestState = stateIdToState.get(oldestStateId); + // no state to flush for this stream + if (oldestState == null) { break; } - final boolean noPrevRecs = !stateIdToCounter.containsKey(oldestState); - final boolean allRecsEmitted = stateIdToCounter.get(oldestState).get() == 0; - if (noPrevRecs || allRecsEmitted) { - var polled = entry.getValue().poll(); // poll to remove. no need to read as the earlier peek is still valid. - output.add(stateIdToState.get(oldestState).getLeft()); - bytesFlushed += stateIdToState.get(oldestState).getRight(); + final var allRecordsCommitted = oldestStateCounter.get() == 0; + if (allRecordsCommitted) { + output.add(oldestState.getLeft()); + bytesFlushed += oldestState.getRight(); + + // cleanup + entry.getValue().poll(); + stateIdToState.remove(oldestStateId); + stateIdToCounter.remove(oldestStateId); } else { break; } @@ -183,10 +192,10 @@ private Long getStateIdAndIncrement(final StreamDescriptor streamDescriptor, fin final StreamDescriptor resolvedDescriptor = stateType == AirbyteStateMessage.AirbyteStateType.STREAM ? streamDescriptor : SENTINEL_GLOBAL_DESC; // As concurrent collections do not guarantee data consistency when iterating, use `get` instead of // `containsKey`. - if (streamToStateIdQ.get(resolvedDescriptor) == null) { + if (descToStateIdQ.get(resolvedDescriptor) == null) { registerNewStreamDescriptor(resolvedDescriptor); } - final Long stateId = streamToStateIdQ.get(resolvedDescriptor).peekLast(); + final Long stateId = descToStateIdQ.get(resolvedDescriptor).peekLast(); final var update = stateIdToCounter.get(stateId).addAndGet(increment); log.trace("State id: {}, count: {}", stateId, update); return stateId; @@ -231,12 +240,12 @@ private void convertToGlobalIfNeeded(final PartialAirbyteMessage message) { // upon conversion, all previous tracking data structures need to be cleared as we move // into the non-STREAM world for correctness. - aliasIds.addAll(streamToStateIdQ.values().stream().flatMap(Collection::stream).toList()); - streamToStateIdQ.clear(); + aliasIds.addAll(descToStateIdQ.values().stream().flatMap(Collection::stream).toList()); + descToStateIdQ.clear(); retroactiveGlobalStateId = StateIdProvider.getNextId(); - streamToStateIdQ.put(SENTINEL_GLOBAL_DESC, new LinkedList<>()); - streamToStateIdQ.get(SENTINEL_GLOBAL_DESC).add(retroactiveGlobalStateId); + descToStateIdQ.put(SENTINEL_GLOBAL_DESC, new LinkedList<>()); + descToStateIdQ.get(SENTINEL_GLOBAL_DESC).add(retroactiveGlobalStateId); final long combinedCounter = stateIdToCounter.values() .stream() @@ -291,9 +300,12 @@ private void allocateMemoryToState(final long sizeInBytes) { throw new RuntimeException(e); } } + LOGGER.debug(getMemoryUsageMessage()); } - memoryUsed.addAndGet(sizeInBytes); - LOGGER.debug("State Manager memory usage: Allocated: {}, Used: {}, % Used {}", + } + + public String getMemoryUsageMessage() { + return String.format("State Manager memory usage: Allocated: %s, Used: %s, percentage Used %f", FileUtils.byteCountToDisplaySize(memoryAllocated.get()), FileUtils.byteCountToDisplaySize(memoryUsed.get()), (double) memoryUsed.get() / memoryAllocated.get()); @@ -312,14 +324,14 @@ private long getStateAfterAlias(final long stateId) { } private void registerNewStreamDescriptor(final StreamDescriptor resolvedDescriptor) { - streamToStateIdQ.put(resolvedDescriptor, new LinkedList<>()); + descToStateIdQ.put(resolvedDescriptor, new LinkedList<>()); registerNewStateId(resolvedDescriptor); } private void registerNewStateId(final StreamDescriptor resolvedDescriptor) { final long stateId = StateIdProvider.getNextId(); - streamToStateIdQ.get(resolvedDescriptor).add(stateId); stateIdToCounter.put(stateId, new AtomicLong(0)); + descToStateIdQ.get(resolvedDescriptor).add(stateId); } /** @@ -327,10 +339,10 @@ private void registerNewStateId(final StreamDescriptor resolvedDescriptor) { */ private static class StateIdProvider { - private static long pk = 0; + private static final AtomicLong pk = new AtomicLong(0); public static long getNextId() { - return pk++; + return pk.incrementAndGet(); } } diff --git a/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/util/ConnectorExceptionUtil.java b/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/util/ConnectorExceptionUtil.java index 65d6428fcdc3..888d5dc4677c 100644 --- a/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/util/ConnectorExceptionUtil.java +++ b/airbyte-integrations/bases/base-java/src/main/java/io/airbyte/integrations/util/ConnectorExceptionUtil.java @@ -4,21 +4,29 @@ package io.airbyte.integrations.util; +import static java.util.stream.Collectors.joining; + import com.google.common.collect.ImmutableList; import io.airbyte.commons.exceptions.ConfigErrorException; import io.airbyte.commons.exceptions.ConnectionErrorException; import io.airbyte.integrations.base.errors.messages.ErrorMessage; import java.sql.SQLException; import java.sql.SQLSyntaxErrorException; +import java.util.Collection; import java.util.List; import java.util.Locale; import java.util.function.Predicate; +import org.apache.commons.lang3.exception.ExceptionUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** * Utility class defining methods for handling configuration exceptions in connectors. */ public class ConnectorExceptionUtil { + private static final Logger LOGGER = LoggerFactory.getLogger(ConnectorExceptionUtil.class); + public static final String COMMON_EXCEPTION_MESSAGE_TEMPLATE = "Could not connect with provided configuration. Error: %s"; static final String RECOVERY_CONNECTION_ERROR_MESSAGE = "We're having issues syncing from a Postgres replica that is configured as a hot standby server. " + @@ -36,8 +44,7 @@ public static boolean isConfigError(final Throwable e) { public static String getDisplayMessage(final Throwable e) { if (e instanceof ConfigErrorException) { return ((ConfigErrorException) e).getDisplayMessage(); - } else if (e instanceof ConnectionErrorException) { - final ConnectionErrorException connEx = (ConnectionErrorException) e; + } else if (e instanceof final ConnectionErrorException connEx) { return ErrorMessage.getErrorMessage(connEx.getStateCode(), connEx.getErrorCode(), connEx.getExceptionMessage(), connEx); } else if (isRecoveryConnectionExceptionPredicate().test(e)) { return RECOVERY_CONNECTION_ERROR_MESSAGE; @@ -64,6 +71,23 @@ public static Throwable getRootConfigError(final Exception e) { return e; } + /** + * Log all the exceptions, and rethrow the first. This is useful for e.g. running multiple futures + * and waiting for them to complete/fail. Rather than combining them into a single mega-exception + * (which works poorly in the UI), we just log all of them, and throw the first exception. + *

+ * In most cases, all the exceptions will look very similar, so the user only needs to see the first + * exception anyway. This mimics e.g. a for-loop over multiple tasks, where the loop would break on + * the first exception. + */ + public static void logAllAndThrowFirst(final String initialMessage, final Collection throwables) throws T { + if (!throwables.isEmpty()) { + final String stacktraces = throwables.stream().map(ExceptionUtils::getStackTrace).collect(joining("\n")); + LOGGER.error(initialMessage + stacktraces + "\nRethrowing first exception."); + throw throwables.iterator().next(); + } + } + private static Predicate getConfigErrorPredicate() { return e -> e instanceof ConfigErrorException; } diff --git a/airbyte-integrations/bases/base-java/src/test/java/io/airbyte/integrations/destination_async/AsyncStreamConsumerTest.java b/airbyte-integrations/bases/base-java/src/test/java/io/airbyte/integrations/destination_async/AsyncStreamConsumerTest.java index 06e399d28f36..bb1bf7420499 100644 --- a/airbyte-integrations/bases/base-java/src/test/java/io/airbyte/integrations/destination_async/AsyncStreamConsumerTest.java +++ b/airbyte-integrations/bases/base-java/src/test/java/io/airbyte/integrations/destination_async/AsyncStreamConsumerTest.java @@ -39,7 +39,6 @@ import java.util.Collection; import java.util.List; import java.util.Map; -import java.util.Optional; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Future; @@ -236,8 +235,8 @@ void deserializeAirbyteMessageWithAirbyteRecord() { .withData(PAYLOAD)); final String serializedAirbyteMessage = Jsons.serialize(airbyteMessage); final String airbyteRecordString = Jsons.serialize(PAYLOAD); - final Optional partial = AsyncStreamConsumer.deserializeAirbyteMessage(serializedAirbyteMessage); - assertEquals(airbyteRecordString, partial.get().getSerialized()); + final PartialAirbyteMessage partial = AsyncStreamConsumer.deserializeAirbyteMessage(serializedAirbyteMessage); + assertEquals(airbyteRecordString, partial.getSerialized()); } @Test @@ -250,8 +249,8 @@ void deserializeAirbyteMessageWithEmptyAirbyteRecord() { .withNamespace(SCHEMA_NAME) .withData(Jsons.jsonNode(emptyMap))); final String serializedAirbyteMessage = Jsons.serialize(airbyteMessage); - final Optional partial = AsyncStreamConsumer.deserializeAirbyteMessage(serializedAirbyteMessage); - assertEquals(emptyMap.toString(), partial.get().getSerialized()); + final PartialAirbyteMessage partial = AsyncStreamConsumer.deserializeAirbyteMessage(serializedAirbyteMessage); + assertEquals(emptyMap.toString(), partial.getSerialized()); } @Test @@ -266,8 +265,8 @@ void deserializeAirbyteMessageWithNoStateOrRecord() { @Test void deserializeAirbyteMessageWithAirbyteState() { final String serializedAirbyteMessage = Jsons.serialize(STATE_MESSAGE1); - final Optional partial = AsyncStreamConsumer.deserializeAirbyteMessage(serializedAirbyteMessage); - assertEquals(serializedAirbyteMessage, partial.get().getSerialized()); + final PartialAirbyteMessage partial = AsyncStreamConsumer.deserializeAirbyteMessage(serializedAirbyteMessage); + assertEquals(serializedAirbyteMessage, partial.getSerialized()); } @Test diff --git a/airbyte-integrations/bases/base-java/src/test/java/io/airbyte/integrations/destination_async/DetectStreamToFlushTest.java b/airbyte-integrations/bases/base-java/src/test/java/io/airbyte/integrations/destination_async/DetectStreamToFlushTest.java index 723aec616e8c..9c68287c9bec 100644 --- a/airbyte-integrations/bases/base-java/src/test/java/io/airbyte/integrations/destination_async/DetectStreamToFlushTest.java +++ b/airbyte-integrations/bases/base-java/src/test/java/io/airbyte/integrations/destination_async/DetectStreamToFlushTest.java @@ -11,6 +11,8 @@ import io.airbyte.integrations.destination_async.buffers.BufferDequeue; import io.airbyte.protocol.models.v0.StreamDescriptor; +import java.time.Clock; +import java.time.Duration; import java.time.Instant; import java.util.List; import java.util.Optional; @@ -22,7 +24,7 @@ class DetectStreamToFlushTest { public static final Instant NOW = Instant.now(); - public static final Instant FIVE_MIN_AGO = NOW.minusSeconds(60 * 5); + public static final Duration FIVE_MIN = Duration.ofMinutes(5); private static final long SIZE_10MB = 10 * 1024 * 1024; private static final long SIZE_200MB = 200 * 1024 * 1024; @@ -75,21 +77,31 @@ void testGetNextPicksUpOnTimeTrigger() { final BufferDequeue bufferDequeue = mock(BufferDequeue.class); when(bufferDequeue.getBufferedStreams()).thenReturn(Set.of(DESC1)); when(bufferDequeue.getQueueSizeBytes(DESC1)).thenReturn(Optional.of(1L)); - when(bufferDequeue.getTimeOfLastRecord(DESC1)) - // because we eagerly load values and later access them again - // double the mocks for correctness; two calls here equals one test case. - .thenReturn(Optional.empty()) - .thenReturn(Optional.empty()) - .thenReturn(Optional.of(NOW)) - .thenReturn(Optional.of(NOW)) - .thenReturn(Optional.of(FIVE_MIN_AGO)) - .thenReturn(Optional.of(FIVE_MIN_AGO)); + final Clock mockedNowProvider = mock(Clock.class); final RunningFlushWorkers runningFlushWorkers = mock(RunningFlushWorkers.class); when(runningFlushWorkers.getSizesOfRunningWorkerBatches(any())).thenReturn(List.of(Optional.of(SIZE_10MB))); - final DetectStreamToFlush detect = new DetectStreamToFlush(bufferDequeue, runningFlushWorkers, new AtomicBoolean(false), flusher); + final DetectStreamToFlush detect = + new DetectStreamToFlush(bufferDequeue, runningFlushWorkers, new AtomicBoolean(false), flusher, mockedNowProvider); + + // initialize flush time + when(mockedNowProvider.millis()) + .thenReturn(NOW.toEpochMilli()); + assertEquals(Optional.empty(), detect.getNextStreamToFlush(0)); + + // check 5 minutes later + when(mockedNowProvider.millis()) + .thenReturn(NOW.plus(FIVE_MIN).toEpochMilli()); + + assertEquals(Optional.of(DESC1), detect.getNextStreamToFlush(0)); + + // just flush once assertEquals(Optional.empty(), detect.getNextStreamToFlush(0)); + + // check another 5 minutes later + when(mockedNowProvider.millis()) + .thenReturn(NOW.plus(FIVE_MIN).plus(FIVE_MIN).toEpochMilli()); assertEquals(Optional.of(DESC1), detect.getNextStreamToFlush(0)); } diff --git a/airbyte-integrations/bases/base-java/src/test/java/io/airbyte/integrations/destination_async/TimeTriggerTest.java b/airbyte-integrations/bases/base-java/src/test/java/io/airbyte/integrations/destination_async/TimeTriggerTest.java index 3e0632d372e1..0d997b6c385a 100644 --- a/airbyte-integrations/bases/base-java/src/test/java/io/airbyte/integrations/destination_async/TimeTriggerTest.java +++ b/airbyte-integrations/bases/base-java/src/test/java/io/airbyte/integrations/destination_async/TimeTriggerTest.java @@ -9,32 +9,27 @@ import static org.mockito.Mockito.when; import io.airbyte.integrations.destination_async.buffers.BufferDequeue; -import io.airbyte.protocol.models.v0.StreamDescriptor; -import java.time.Instant; -import java.util.Optional; -import java.util.Set; +import java.time.Clock; import org.junit.jupiter.api.Test; public class TimeTriggerTest { - public static final Instant NOW = Instant.now(); - public static final Instant FIVE_MIN_AGO = NOW.minusSeconds(60 * 5); - - private static final StreamDescriptor DESC1 = new StreamDescriptor().withName("test1"); + private static final long NOW_MS = System.currentTimeMillis(); + private static final long ONE_SEC = 1000L; + private static final long FIVE_MIN = 5 * 60 * 1000; @Test void testTimeTrigger() { final BufferDequeue bufferDequeue = mock(BufferDequeue.class); - when(bufferDequeue.getBufferedStreams()).thenReturn(Set.of(DESC1)); - when(bufferDequeue.getTimeOfLastRecord(DESC1)) - .thenReturn(Optional.empty()) - .thenReturn(Optional.of(NOW)) - .thenReturn(Optional.of(FIVE_MIN_AGO)); - - final DetectStreamToFlush detect = new DetectStreamToFlush(bufferDequeue, null, null, null); - assertEquals(false, detect.isTimeTriggered(DESC1).getLeft()); - assertEquals(false, detect.isTimeTriggered(DESC1).getLeft()); - assertEquals(true, detect.isTimeTriggered(DESC1).getLeft()); + + final Clock mockedNowProvider = mock(Clock.class); + when(mockedNowProvider.millis()) + .thenReturn(NOW_MS); + + final DetectStreamToFlush detect = new DetectStreamToFlush(bufferDequeue, null, null, null, mockedNowProvider); + assertEquals(false, detect.isTimeTriggered(NOW_MS).getLeft()); + assertEquals(false, detect.isTimeTriggered(NOW_MS - ONE_SEC).getLeft()); + assertEquals(true, detect.isTimeTriggered(NOW_MS - FIVE_MIN).getLeft()); } } diff --git a/airbyte-integrations/bases/base-normalization/build.gradle b/airbyte-integrations/bases/base-normalization/build.gradle index 03740e0f9019..b73ddaabc293 100644 --- a/airbyte-integrations/bases/base-normalization/build.gradle +++ b/airbyte-integrations/bases/base-normalization/build.gradle @@ -10,30 +10,47 @@ airbytePython { } dependencies { - implementation project(':airbyte-connector-test-harnesses:acceptance-test-harness') + project(':airbyte-connector-test-harnesses:acceptance-test-harness') } // we need to access the sshtunneling script from airbyte-workers for ssh support -task copySshScript(type: Copy, dependsOn: [project(':airbyte-connector-test-harnesses:acceptance-test-harness').processResources]) { +def copySshScript = tasks.register('copySshScript', Copy) { from "${project(':airbyte-connector-test-harnesses:acceptance-test-harness').buildDir}/resources/main" into "${buildDir}" include "sshtunneling.sh" } +copySshScript.configure { + dependsOn project(':airbyte-connector-test-harnesses:acceptance-test-harness').tasks.named('processResources') +} // make sure the copy task above worked (if it fails, it fails silently annoyingly) -task checkSshScriptCopy(type: Task, dependsOn: copySshScript) { +def checkSshScriptCopy = tasks.register('checkSshScriptCopy') { doFirst { assert file("${buildDir}/sshtunneling.sh").exists() : "Copy of sshtunneling.sh failed, check that it is present in airbyte-workers." } } +checkSshScriptCopy.configure { + dependsOn copySshScript +} -airbyteDocker.dependsOn(checkSshScriptCopy) -assemble.dependsOn(checkSshScriptCopy) -test.dependsOn(checkSshScriptCopy) +def generate = tasks.register('generate') +generate.configure { + dependsOn checkSshScriptCopy +} -integrationTest.dependsOn(build) +tasks.named('check').configure { + dependsOn generate +} +def customIntegrationTestPython = tasks.register('customIntegrationTestPython', PythonTask) { + module = "pytest" + command = "-s integration_tests" +} +customIntegrationTestPython.configure { + dependsOn tasks.named('installTestReqs') + dependsOn tasks.named('assemble') +} static def getDockerfile(String customConnector) { return "${customConnector}.Dockerfile" @@ -47,98 +64,34 @@ static def getImageNameWithTag(String customConnector) { return "${getDockerImageName(customConnector)}:dev" } - -def buildAirbyteDocker(String customConnector) { - // def baseCommand = ['docker', 'build', '.', '-f', getDockerfile(customConnector), '-t', getImageNameWithTag(customConnector)] - // As the base dbt image (https://hub.docker.com/r/fishtownanalytics/dbt/tags) we are using is only build for amd64, we need to use buildkit to force builds for your local environment - // We are lucky that all the python code dbt uses is mutli-arch compatible - - def arch = 'linux/amd64' - if (Os.isArch("aarch_64") || Os.isArch("aarch64")) { - arch = 'linux/arm64' +def customIntegrationTestsCoverage = tasks.named('_customIntegrationTestsCoverage') +customIntegrationTestsCoverage.configure { + dependsOn tasks.named('assemble') +} + +[ + 'bigquery', + 'mysql', + 'postgres', + 'redshift', + 'snowflake', + 'oracle', + 'mssql', + 'clickhouse', + 'tidb', + 'duckdb', +].each {destinationName -> + def destinationProject = project(":airbyte-integrations:connectors:destination-$destinationName") + customIntegrationTestPython.configure { + dependsOn destinationProject.tasks.named('assemble') } - - def cmdArray = ['docker', 'buildx', 'build', '--load', '--platform', arch, '-f', getDockerfile(customConnector), '-t', getImageNameWithTag(customConnector), '.'] - // println("Building normalization container: " + cmdArray.join(" ")) - - return { - commandLine cmdArray + // Not really sure what this task does differently from customIntegrationTestPython, + // but it seems to also run integration tests and as such it depends on the docker images. + customIntegrationTestsCoverage.configure { + dependsOn destinationProject.tasks.named('assemble') } } -task airbyteDockerMSSql(type: Exec, dependsOn: checkSshScriptCopy) { - configure buildAirbyteDocker('mssql') - dependsOn assemble -} -task airbyteDockerMySql(type: Exec, dependsOn: checkSshScriptCopy) { - configure buildAirbyteDocker('mysql') - dependsOn assemble -} -task airbyteDockerOracle(type: Exec, dependsOn: checkSshScriptCopy) { - configure buildAirbyteDocker('oracle') - dependsOn assemble -} -task airbyteDockerClickhouse(type: Exec, dependsOn: checkSshScriptCopy) { - configure buildAirbyteDocker('clickhouse') - dependsOn assemble -} -task airbyteDockerSnowflake(type: Exec, dependsOn: checkSshScriptCopy) { - configure buildAirbyteDocker('snowflake') - dependsOn assemble -} -task airbyteDockerRedshift(type: Exec, dependsOn: checkSshScriptCopy) { - configure buildAirbyteDocker('redshift') - dependsOn assemble -} -task airbyteDockerTiDB(type: Exec, dependsOn: checkSshScriptCopy) { - configure buildAirbyteDocker('tidb') - dependsOn assemble -} -task airbyteDockerDuckDB(type: Exec, dependsOn: checkSshScriptCopy) { - configure buildAirbyteDocker('duckdb') - dependsOn assemble -} - -airbyteDocker.dependsOn(airbyteDockerMSSql) -airbyteDocker.dependsOn(airbyteDockerMySql) -airbyteDocker.dependsOn(airbyteDockerOracle) -airbyteDocker.dependsOn(airbyteDockerClickhouse) -airbyteDocker.dependsOn(airbyteDockerSnowflake) -airbyteDocker.dependsOn(airbyteDockerRedshift) -airbyteDocker.dependsOn(airbyteDockerTiDB) -airbyteDocker.dependsOn(airbyteDockerDuckDB) - -task("customIntegrationTestPython", type: PythonTask, dependsOn: installTestReqs) { - module = "pytest" - command = "-s integration_tests" - - dependsOn ':airbyte-integrations:bases:base-normalization:airbyteDocker' - dependsOn ':airbyte-integrations:connectors:destination-bigquery:airbyteDocker' - dependsOn ':airbyte-integrations:connectors:destination-mysql:airbyteDocker' - dependsOn ':airbyte-integrations:connectors:destination-postgres:airbyteDocker' - dependsOn ':airbyte-integrations:connectors:destination-redshift:airbyteDocker' - dependsOn ':airbyte-integrations:connectors:destination-snowflake:airbyteDocker' - dependsOn ':airbyte-integrations:connectors:destination-oracle:airbyteDocker' - dependsOn ':airbyte-integrations:connectors:destination-mssql:airbyteDocker' - dependsOn ':airbyte-integrations:connectors:destination-clickhouse:airbyteDocker' - dependsOn ':airbyte-integrations:connectors:destination-tidb:airbyteDocker' - dependsOn ':airbyte-integrations:connectors:destination-duckdb:airbyteDocker' -} - -// not really sure what this task does differently from customIntegrationTestPython, but it seems to also run integration tests -// and as such it depends on the docker images. -project.tasks.findByName('_customIntegrationTestsCoverage').dependsOn ':airbyte-integrations:bases:base-normalization:airbyteDocker' -project.tasks.findByName('_customIntegrationTestsCoverage').dependsOn ':airbyte-integrations:connectors:destination-bigquery:airbyteDocker' -project.tasks.findByName('_customIntegrationTestsCoverage').dependsOn ':airbyte-integrations:connectors:destination-mysql:airbyteDocker' -project.tasks.findByName('_customIntegrationTestsCoverage').dependsOn ':airbyte-integrations:connectors:destination-postgres:airbyteDocker' -project.tasks.findByName('_customIntegrationTestsCoverage').dependsOn ':airbyte-integrations:connectors:destination-redshift:airbyteDocker' -project.tasks.findByName('_customIntegrationTestsCoverage').dependsOn ':airbyte-integrations:connectors:destination-snowflake:airbyteDocker' -project.tasks.findByName('_customIntegrationTestsCoverage').dependsOn ':airbyte-integrations:connectors:destination-oracle:airbyteDocker' -project.tasks.findByName('_customIntegrationTestsCoverage').dependsOn ':airbyte-integrations:connectors:destination-mssql:airbyteDocker' -project.tasks.findByName('_customIntegrationTestsCoverage').dependsOn ':airbyte-integrations:connectors:destination-clickhouse:airbyteDocker' -project.tasks.findByName('_customIntegrationTestsCoverage').dependsOn ':airbyte-integrations:connectors:destination-tidb:airbyteDocker' -project.tasks.findByName('_customIntegrationTestsCoverage').dependsOn ':airbyte-integrations:connectors:destination-duckdb:airbyteDocker' - // DATs have some additional tests that exercise normalization code paths, // so we want to run these in addition to the base-normalization integration tests. // If you add more items here, make sure to also to have CI fetch their credentials. @@ -148,14 +101,13 @@ project.tasks.findByName('_customIntegrationTestsCoverage').dependsOn ':airbyte- // integrationTest.dependsOn(":airbyte-integrations:connectors:destination-postgres:integrationTest") // integrationTest.dependsOn(":airbyte-integrations:connectors:destination-snowflake:integrationTest") -integrationTest.dependsOn("customIntegrationTestPython") -customIntegrationTests.dependsOn("customIntegrationTestPython") +tasks.named('customIntegrationTests').configure { + dependsOn customIntegrationTestPython +} // TODO fix and use https://github.com/airbytehq/airbyte/issues/3192 instead -task('mypyCheck', type: PythonTask) { +def mypyCheck = tasks.register('mypyCheck', PythonTask) { module = "mypy" command = "normalization --config-file ${project.rootProject.file('pyproject.toml').absolutePath}" - - dependsOn 'blackFormat' } -check.dependsOn mypyCheck +tasks.named('check').configure { dependsOn mypyCheck } diff --git a/airbyte-integrations/bases/base-typing-deduping-test/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/BaseSqlGeneratorIntegrationTest.java b/airbyte-integrations/bases/base-typing-deduping-test/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/BaseSqlGeneratorIntegrationTest.java index 72da04f4d445..e7bc11b346ae 100644 --- a/airbyte-integrations/bases/base-typing-deduping-test/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/BaseSqlGeneratorIntegrationTest.java +++ b/airbyte-integrations/bases/base-typing-deduping-test/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/BaseSqlGeneratorIntegrationTest.java @@ -84,10 +84,7 @@ public abstract class BaseSqlGeneratorIntegrationTest { Stream.of("_ab_cdc_deleted_at")).toList(); } - protected static final RecordDiffer DIFFER = new RecordDiffer( - Pair.of("id1", AirbyteProtocolType.INTEGER), - Pair.of("id2", AirbyteProtocolType.INTEGER), - Pair.of("updated_at", AirbyteProtocolType.TIMESTAMP_WITH_TIMEZONE)); + protected RecordDiffer DIFFER; /** * Subclasses may use these four StreamConfigs in their tests. @@ -118,6 +115,14 @@ public abstract class BaseSqlGeneratorIntegrationTest { protected abstract DestinationHandler getDestinationHandler(); + /** + * Subclasses should override this method if they need to make changes to the stream ID. For + * example, you could upcase the final table name here. + */ + protected StreamId buildStreamId(final String namespace, final String finalTableName, final String rawTableName) { + return new StreamId(namespace, finalTableName, namespace, rawTableName, namespace, finalTableName); + } + /** * Do any setup work to create a namespace for this test run. For example, this might create a * BigQuery dataset, or a Snowflake schema. @@ -198,12 +203,17 @@ public void setup() throws Exception { final LinkedHashMap cdcColumns = new LinkedHashMap<>(COLUMNS); cdcColumns.put(generator.buildColumnId("_ab_cdc_deleted_at"), AirbyteProtocolType.TIMESTAMP_WITH_TIMEZONE); + DIFFER = new RecordDiffer( + Pair.of(id1, AirbyteProtocolType.INTEGER), + Pair.of(id2, AirbyteProtocolType.INTEGER), + Pair.of(cursor, AirbyteProtocolType.TIMESTAMP_WITH_TIMEZONE)); + namespace = Strings.addRandomSuffix("sql_generator_test", "_", 5); // This is not a typical stream ID would look like, but SqlGenerator isn't allowed to make any // assumptions about StreamId structure. // In practice, the final table would be testDataset.users, and the raw table would be // airbyte_internal.testDataset_raw__stream_users. - streamId = new StreamId(namespace, "users_final", namespace, "users_raw", namespace, "users_final"); + streamId = buildStreamId(namespace, "users_final", "users_raw"); incrementalDedupStream = new StreamConfig( streamId, @@ -483,7 +493,7 @@ public void incrementalDedupNoCursor() throws Exception { actualFinalRecords); assertAll( () -> assertEquals("bar", actualRawRecords.get(0).get("_airbyte_data").get("string").asText()), - () -> assertEquals("bar", actualFinalRecords.get(0).get("string").asText())); + () -> assertEquals("bar", actualFinalRecords.get(0).get(generator.buildColumnId("string").name()).asText())); } @Test @@ -787,19 +797,14 @@ public void weirdColumnNames() throws Exception { * primary key, or cursor. */ @ParameterizedTest - @ValueSource(strings = {"$", "\"", "'", "`", ".", "$$", "\\"}) + @ValueSource(strings = {"$", "${", "${${", "${foo}", "\"", "'", "`", ".", "$$", "\\", "{", "}"}) public void noCrashOnSpecialCharacters(final String specialChars) throws Exception { - final String str = namespace + "_" + specialChars; + final String str = specialChars + "_" + namespace + "_" + specialChars; final StreamId originalStreamId = generator.buildStreamId(str, str, "unused"); - final StreamId modifiedStreamId = new StreamId( + final StreamId modifiedStreamId = buildStreamId( originalStreamId.finalNamespace(), originalStreamId.finalName(), - // hack for testing simplicity: put the raw tables in the final namespace. This makes cleanup - // easier. - originalStreamId.finalNamespace(), - "raw_table", - null, - null); + "raw_table"); final ColumnId columnId = generator.buildColumnId(str); try { createNamespace(modifiedStreamId.finalNamespace()); @@ -834,6 +839,41 @@ public void noCrashOnSpecialCharacters(final String specialChars) throws Excepti } } + /** + * Verify column names that are reserved keywords are handled successfully. Each destination should + * always have at least 1 column in the record data that is a reserved keyword. + */ + @Test + public void testReservedKeywords() throws Exception { + createRawTable(streamId); + insertRawTableRecords( + streamId, + BaseTypingDedupingTest.readRecords("sqlgenerator/reservedkeywords_inputrecords_raw.jsonl")); + final StreamConfig stream = new StreamConfig( + streamId, + SyncMode.INCREMENTAL, + DestinationSyncMode.APPEND, + null, + Optional.empty(), + new LinkedHashMap<>() { + + { + put(generator.buildColumnId("current_date"), AirbyteProtocolType.STRING); + put(generator.buildColumnId("join"), AirbyteProtocolType.STRING); + } + + }); + + final String createTable = generator.createTable(stream, "", false); + destinationHandler.execute(createTable); + final String updateTable = generator.updateTable(stream, ""); + destinationHandler.execute(updateTable); + + DIFFER.diffFinalTableRecords( + BaseTypingDedupingTest.readRecords("sqlgenerator/reservedkeywords_expectedrecords_final.jsonl"), + dumpFinalTableRecords(streamId, "")); + } + /** * A stream with no columns is weird, but we shouldn't treat it specially in any way. It should * create a final table as usual, and populate it with the relevant metadata columns. diff --git a/airbyte-integrations/bases/base-typing-deduping-test/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/BaseTypingDedupingTest.java b/airbyte-integrations/bases/base-typing-deduping-test/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/BaseTypingDedupingTest.java index 48ca40f32f88..b4b2d1210343 100644 --- a/airbyte-integrations/bases/base-typing-deduping-test/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/BaseTypingDedupingTest.java +++ b/airbyte-integrations/bases/base-typing-deduping-test/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/BaseTypingDedupingTest.java @@ -68,11 +68,7 @@ public abstract class BaseTypingDedupingTest { throw new RuntimeException(e); } } - private static final RecordDiffer DIFFER = new RecordDiffer( - Pair.of("id1", AirbyteProtocolType.INTEGER), - Pair.of("id2", AirbyteProtocolType.INTEGER), - Pair.of("updated_at", AirbyteProtocolType.TIMESTAMP_WITH_TIMEZONE), - Pair.of("old_cursor", AirbyteProtocolType.INTEGER)); + private RecordDiffer DIFFER; private String randomSuffix; private JsonNode config; @@ -112,7 +108,8 @@ public abstract class BaseTypingDedupingTest { /** * For a given stream, return the records that exist in the destination's final table. Each record * must be in the format {"_airbyte_raw_id": "...", "_airbyte_extracted_at": "...", "_airbyte_meta": - * {...}, "field1": ..., "field2": ..., ...}. + * {...}, "field1": ..., "field2": ..., ...}. If the destination renames (e.g. upcases) the airbyte + * fields, this method must revert that naming to use the exact strings "_airbyte_raw_id", etc. *

* For JSON-valued columns, there is some nuance: a SQL null should be represented as a missing * entry, whereas a JSON null should be represented as a @@ -137,6 +134,8 @@ public abstract class BaseTypingDedupingTest { */ protected abstract void teardownStreamAndNamespace(String streamNamespace, String streamName) throws Exception; + protected abstract SqlGenerator getSqlGenerator(); + /** * Destinations which need to clean up resources after an entire test finishes should override this * method. For example, if you want to gracefully close a database connection, you should do that @@ -164,6 +163,14 @@ public void setup() throws Exception { streamNamespace = "typing_deduping_test" + getUniqueSuffix(); streamName = "test_stream" + getUniqueSuffix(); streamsToTearDown = new ArrayList<>(); + + final SqlGenerator generator = getSqlGenerator(); + DIFFER = new RecordDiffer( + Pair.of(generator.buildColumnId("id1"), AirbyteProtocolType.INTEGER), + Pair.of(generator.buildColumnId("id2"), AirbyteProtocolType.INTEGER), + Pair.of(generator.buildColumnId("updated_at"), AirbyteProtocolType.TIMESTAMP_WITH_TIMEZONE), + Pair.of(generator.buildColumnId("old_cursor"), AirbyteProtocolType.INTEGER)); + LOGGER.info("Using stream namespace {} and name {}", streamNamespace, streamName); } @@ -409,7 +416,7 @@ public void testIncrementalSyncDropOneColumn() throws Exception { // The raw data is unaffected by the schema, but the final table should not have a `name` column. final List expectedRawRecords2 = readRecords("dat/sync2_expectedrecords_fullrefresh_append_raw.jsonl"); final List expectedFinalRecords2 = readRecords("dat/sync2_expectedrecords_fullrefresh_append_final.jsonl").stream() - .peek(record -> ((ObjectNode) record).remove("name")) + .peek(record -> ((ObjectNode) record).remove(getSqlGenerator().buildColumnId("name").name())) .toList(); verifySyncResult(expectedRawRecords2, expectedFinalRecords2); } diff --git a/airbyte-integrations/bases/base-typing-deduping-test/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/RecordDiffer.java b/airbyte-integrations/bases/base-typing-deduping-test/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/RecordDiffer.java index 058986346d29..e461b5f38bc1 100644 --- a/airbyte-integrations/bases/base-typing-deduping-test/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/RecordDiffer.java +++ b/airbyte-integrations/bases/base-typing-deduping-test/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/RecordDiffer.java @@ -37,19 +37,39 @@ */ public class RecordDiffer { - private final Comparator recordIdentityComparator; - private final Comparator recordSortComparator; - private final Function recordIdentityExtractor; + private final Comparator rawRecordIdentityComparator; + private final Comparator rawRecordSortComparator; + private final Function rawRecordIdentityExtractor; + + private final Comparator finalRecordIdentityComparator; + private final Comparator finalRecordSortComparator; + private final Function finalRecordIdentityExtractor; /** * @param identifyingColumns Which fields constitute a unique record (typically PK+cursor). Do _not_ * include extracted_at; it is handled automatically. */ @SafeVarargs - public RecordDiffer(final Pair... identifyingColumns) { - this.recordIdentityComparator = buildIdentityComparator(identifyingColumns); - this.recordSortComparator = recordIdentityComparator.thenComparing(record -> asString(record.get("_airbyte_raw_id"))); - this.recordIdentityExtractor = buildIdentityExtractor(identifyingColumns); + public RecordDiffer(final Pair... identifyingColumns) { + final Pair[] rawTableIdentifyingColumns = Arrays.stream(identifyingColumns) + .map(p -> Pair.of( + // Raw tables always retain the original column names + p.getLeft().originalName(), + p.getRight())) + .toArray(Pair[]::new); + this.rawRecordIdentityComparator = buildIdentityComparator(rawTableIdentifyingColumns); + this.rawRecordSortComparator = rawRecordIdentityComparator.thenComparing(record -> asString(record.get("_airbyte_raw_id"))); + this.rawRecordIdentityExtractor = buildIdentityExtractor(rawTableIdentifyingColumns); + + final Pair[] finalTableIdentifyingColumns = Arrays.stream(identifyingColumns) + .map(p -> Pair.of( + // Final tables may have modified the column names, so use the final name here. + p.getLeft().name(), + p.getRight())) + .toArray(Pair[]::new); + this.finalRecordIdentityComparator = buildIdentityComparator(finalTableIdentifyingColumns); + this.finalRecordSortComparator = finalRecordIdentityComparator.thenComparing(record -> asString(record.get("_airbyte_raw_id"))); + this.finalRecordIdentityExtractor = buildIdentityExtractor(finalTableIdentifyingColumns); } /** @@ -70,9 +90,9 @@ public void diffRawTableRecords(final List expectedRecords, final List final String diff = diffRecords( expectedRecords.stream().map(RecordDiffer::copyWithLiftedData).collect(toList()), actualRecords.stream().map(RecordDiffer::copyWithLiftedData).collect(toList()), - recordIdentityComparator, - recordSortComparator, - recordIdentityExtractor); + rawRecordIdentityComparator, + rawRecordSortComparator, + rawRecordIdentityExtractor); if (!diff.isEmpty()) { fail("Raw table was incorrect.\n" + diff); @@ -83,9 +103,9 @@ public void diffFinalTableRecords(final List expectedRecords, final Li final String diff = diffRecords( expectedRecords, actualRecords, - recordIdentityComparator, - recordSortComparator, - recordIdentityExtractor); + finalRecordIdentityComparator, + finalRecordSortComparator, + finalRecordIdentityExtractor); if (!diff.isEmpty()) { fail("Final table was incorrect.\n" + diff); diff --git a/airbyte-integrations/bases/base-typing-deduping-test/src/main/resources/sqlgenerator/reservedkeywords_inputrecords_raw.jsonl b/airbyte-integrations/bases/base-typing-deduping-test/src/main/resources/sqlgenerator/reservedkeywords_inputrecords_raw.jsonl new file mode 100644 index 000000000000..a2c5acd3fe7e --- /dev/null +++ b/airbyte-integrations/bases/base-typing-deduping-test/src/main/resources/sqlgenerator/reservedkeywords_inputrecords_raw.jsonl @@ -0,0 +1,2 @@ +// A column name that is a reserved keyword should be added for each typing & deduping destination. +{"_airbyte_raw_id": "b2e0efc4-38a8-47ba-970c-8103f09f08d5", "_airbyte_extracted_at": "2023-01-01T00:00:00Z", "_airbyte_data": {"current_date": "foo", "join": "bar"}} diff --git a/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/CatalogParser.java b/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/CatalogParser.java index 03ec4e06a8f0..5ef02be11acd 100644 --- a/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/CatalogParser.java +++ b/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/CatalogParser.java @@ -14,9 +14,13 @@ import java.util.Map.Entry; import java.util.Optional; import org.apache.commons.codec.digest.DigestUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; public class CatalogParser { + private static final Logger LOGGER = LoggerFactory.getLogger(CatalogParser.class); + private final SqlGenerator sqlGenerator; private final String rawNamespace; @@ -41,6 +45,9 @@ public ParsedCatalog parseCatalog(final ConfiguredAirbyteCatalog catalog) { || streamConfigs.stream().anyMatch(s -> s.id().rawTableId("").equals(originalStreamConfig.id().rawTableId("")))) { final String originalNamespace = stream.getStream().getNamespace(); final String originalName = stream.getStream().getName(); + + LOGGER.info("Detected table name collision for {}.{}", originalNamespace, originalName); + // ... this logic is ported from legacy normalization, and maybe should change? // We're taking a hash of the quoted namespace and the unquoted stream name final String hash = DigestUtils.sha1Hex(originalStreamConfig.id().finalNamespace() + "&airbyte&" + originalName).substring(0, 3); @@ -96,11 +103,16 @@ private StreamConfig toStreamConfig(final ConfiguredAirbyteStream stream) { // None of the existing columns have the same name. We can add this new column as-is. columnId = originalColumnId; } else { + LOGGER.info( + "Detected column name collision for {}.{}.{}", + stream.getStream().getNamespace(), + stream.getStream().getName(), + entry.getKey()); // One of the existing columns has the same name. We need to handle this collision. // Append _1, _2, _3, ... to the column name until we find one that doesn't collide. int i = 1; while (true) { - columnId = sqlGenerator.buildColumnId(entry.getKey() + "_" + i); + columnId = sqlGenerator.buildColumnId(entry.getKey(), "_" + i); final String canonicalName = columnId.canonicalName(); if (columns.keySet().stream().noneMatch(c -> c.canonicalName().equals(canonicalName))) { break; diff --git a/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/DefaultTyperDeduper.java b/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/DefaultTyperDeduper.java index 5c078e83c3c5..0915e1758468 100644 --- a/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/DefaultTyperDeduper.java +++ b/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/DefaultTyperDeduper.java @@ -4,11 +4,27 @@ package io.airbyte.integrations.base.destination.typing_deduping; +import static io.airbyte.integrations.base.IntegrationRunner.TYPE_AND_DEDUPE_THREAD_NAME; +import static io.airbyte.integrations.base.destination.typing_deduping.FutureUtils.countOfTypingDedupingThreads; +import static io.airbyte.integrations.base.destination.typing_deduping.FutureUtils.reduceExceptions; +import static java.util.Collections.singleton; + +import autovalue.shaded.kotlin.Pair; import io.airbyte.protocol.models.v0.DestinationSyncMode; import java.util.HashSet; +import java.util.Map; import java.util.Optional; import java.util.Set; +import java.util.concurrent.CompletableFuture; +import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReadWriteLock; +import java.util.concurrent.locks.ReentrantLock; +import java.util.concurrent.locks.ReentrantReadWriteLock; import org.apache.commons.lang3.StringUtils; +import org.apache.commons.lang3.concurrent.BasicThreadFactory; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -20,7 +36,7 @@ * In a typical sync, destinations should call the methods: *

    *
  1. {@link #prepareTables()} once at the start of the sync
  2. - *
  3. {@link #typeAndDedupe(String, String)} as needed throughout the sync
  4. + *
  5. {@link #typeAndDedupe(String, String, boolean)} as needed throughout the sync
  6. *
  7. {@link #commitFinalTables()} once at the end of the sync
  8. *
* Note that createFinalTables initializes some internal state. The other methods will throw an @@ -37,106 +53,195 @@ public class DefaultTyperDeduper implements TyperDeduper private final DestinationHandler destinationHandler; private final DestinationV1V2Migrator v1V2Migrator; - private final V2RawTableMigrator v2RawTableMigrator; + private final V2TableMigrator v2TableMigrator; private final ParsedCatalog parsedCatalog; private Set overwriteStreamsWithTmpTable; - private final Set streamsWithSuccesfulSetup; + private final Set> streamsWithSuccessfulSetup; + // We only want to run a single instance of T+D per stream at a time. These objects are used for + // synchronization per stream. + // Use a read-write lock because we need the same semantics: + // * any number of threads can insert to the raw tables at the same time, as long as T+D isn't + // running (i.e. "read lock") + // * T+D must run in complete isolation (i.e. "write lock") + private final Map tdLocks; + // These locks are used to prevent multiple simultaneous attempts to T+D the same stream. + // We use tryLock with these so that we don't queue up multiple T+D runs for the same stream. + private final Map internalTdLocks; + + private final ExecutorService executorService; public DefaultTyperDeduper(final SqlGenerator sqlGenerator, final DestinationHandler destinationHandler, final ParsedCatalog parsedCatalog, final DestinationV1V2Migrator v1V2Migrator, - final V2RawTableMigrator v2RawTableMigrator) { + final V2TableMigrator v2TableMigrator, + final int defaultThreadCount) { this.sqlGenerator = sqlGenerator; this.destinationHandler = destinationHandler; this.parsedCatalog = parsedCatalog; this.v1V2Migrator = v1V2Migrator; - this.v2RawTableMigrator = v2RawTableMigrator; - this.streamsWithSuccesfulSetup = new HashSet<>(); + this.v2TableMigrator = v2TableMigrator; + this.streamsWithSuccessfulSetup = ConcurrentHashMap.newKeySet(parsedCatalog.streams().size()); + this.tdLocks = new ConcurrentHashMap<>(); + this.internalTdLocks = new ConcurrentHashMap<>(); + this.executorService = Executors.newFixedThreadPool(countOfTypingDedupingThreads(defaultThreadCount), + new BasicThreadFactory.Builder().namingPattern(TYPE_AND_DEDUPE_THREAD_NAME).build()); } public DefaultTyperDeduper( final SqlGenerator sqlGenerator, final DestinationHandler destinationHandler, final ParsedCatalog parsedCatalog, - final DestinationV1V2Migrator v1V2Migrator) { - this(sqlGenerator, destinationHandler, parsedCatalog, v1V2Migrator, new NoopV2RawTableMigrator<>()); + final DestinationV1V2Migrator v1V2Migrator, + final int defaultThreadCount) { + this(sqlGenerator, destinationHandler, parsedCatalog, v1V2Migrator, new NoopV2TableMigrator<>(), defaultThreadCount); } - /** - * Create the tables that T+D will write to during the sync. In OVERWRITE mode, these might not be - * the true final tables. Specifically, other than an initial sync (i.e. table does not exist, or is - * empty) we write to a temporary final table, and swap it into the true final table at the end of - * the sync. This is to prevent user downtime during a sync. - */ public void prepareTables() throws Exception { if (overwriteStreamsWithTmpTable != null) { throw new IllegalStateException("Tables were already prepared."); } - overwriteStreamsWithTmpTable = new HashSet<>(); + overwriteStreamsWithTmpTable = ConcurrentHashMap.newKeySet(); LOGGER.info("Preparing final tables"); + final Set>> prepareTablesTasks = new HashSet<>(); + for (final StreamConfig stream : parsedCatalog.streams()) { + prepareTablesTasks.add(prepareTablesFuture(stream)); + } + CompletableFuture.allOf(prepareTablesTasks.toArray(CompletableFuture[]::new)).join(); + reduceExceptions(prepareTablesTasks, "The following exceptions were thrown attempting to prepare tables:\n"); + } + private CompletableFuture> prepareTablesFuture(final StreamConfig stream) { // For each stream, make sure that its corresponding final table exists. // Also, for OVERWRITE streams, decide if we're writing directly to the final table, or into an // _airbyte_tmp table. - for (final StreamConfig stream : parsedCatalog.streams()) { - // Migrate the Raw Tables if this is the first v2 sync after a v1 sync - v1V2Migrator.migrateIfNecessary(sqlGenerator, destinationHandler, stream); - v2RawTableMigrator.migrateIfNecessary(stream); - - final Optional existingTable = destinationHandler.findExistingTable(stream.id()); - if (existingTable.isPresent()) { - LOGGER.info("Final Table exists for stream {}", stream.id().finalName()); - // The table already exists. Decide whether we're writing to it directly, or using a tmp table. - if (stream.destinationSyncMode() == DestinationSyncMode.OVERWRITE) { - if (!destinationHandler.isFinalTableEmpty(stream.id()) || !sqlGenerator.existingSchemaMatchesStreamConfig(stream, existingTable.get())) { - // We want to overwrite an existing table. Write into a tmp table. We'll overwrite the table at the - // end of the sync. - overwriteStreamsWithTmpTable.add(stream.id()); - // overwrite an existing tmp table if needed. - destinationHandler.execute(sqlGenerator.createTable(stream, TMP_OVERWRITE_TABLE_SUFFIX, true)); - LOGGER.info("Using temp final table for stream {}, will overwrite existing table at end of sync", stream.id().finalName()); - } else { - LOGGER.info("Final Table for stream {} is empty and matches the expected v2 format, writing to table directly", stream.id().finalName()); - } + return CompletableFuture.supplyAsync(() -> { + try { + // Migrate the Raw Tables if this is the first v2 sync after a v1 sync + v1V2Migrator.migrateIfNecessary(sqlGenerator, destinationHandler, stream); + v2TableMigrator.migrateIfNecessary(stream); - } else if (!sqlGenerator.existingSchemaMatchesStreamConfig(stream, existingTable.get())) { - // We're loading data directly into the existing table. Make sure it has the right schema. - LOGGER.info("Existing schema for stream {} is different from expected schema. Executing soft reset.", stream.id().finalTableId("")); - destinationHandler.execute(sqlGenerator.softReset(stream)); + final Optional existingTable = destinationHandler.findExistingTable(stream.id()); + if (existingTable.isPresent()) { + LOGGER.info("Final Table exists for stream {}", stream.id().finalName()); + // The table already exists. Decide whether we're writing to it directly, or using a tmp table. + if (stream.destinationSyncMode() == DestinationSyncMode.OVERWRITE) { + if (!destinationHandler.isFinalTableEmpty(stream.id()) || !sqlGenerator.existingSchemaMatchesStreamConfig(stream, existingTable.get())) { + // We want to overwrite an existing table. Write into a tmp table. We'll overwrite the table at the + // end of the sync. + overwriteStreamsWithTmpTable.add(stream.id()); + // overwrite an existing tmp table if needed. + destinationHandler.execute(sqlGenerator.createTable(stream, TMP_OVERWRITE_TABLE_SUFFIX, true)); + LOGGER.info("Using temp final table for stream {}, will overwrite existing table at end of sync", stream.id().finalName()); + } else { + LOGGER.info("Final Table for stream {} is empty and matches the expected v2 format, writing to table directly", + stream.id().finalName()); + } + + } else if (!sqlGenerator.existingSchemaMatchesStreamConfig(stream, existingTable.get())) { + // We're loading data directly into the existing table. Make sure it has the right schema. + LOGGER.info("Existing schema for stream {} is different from expected schema. Executing soft reset.", stream.id().finalTableId("")); + destinationHandler.execute(sqlGenerator.softReset(stream)); + } + } else { + LOGGER.info("Final Table does not exist for stream {}, creating.", stream.id().finalName()); + // The table doesn't exist. Create it. Don't force. + destinationHandler.execute(sqlGenerator.createTable(stream, NO_SUFFIX, false)); } - } else { - LOGGER.info("Final Table does not exist for stream {}, creating.", stream.id().finalName()); - // The table doesn't exist. Create it. Don't force. - destinationHandler.execute(sqlGenerator.createTable(stream, NO_SUFFIX, false)); + streamsWithSuccessfulSetup.add(new Pair<>(stream.id().originalNamespace(), stream.id().originalName())); + + // Use fair locking. This slows down lock operations, but that performance hit is by far dwarfed + // by our IO costs. This lock needs to be fair because the raw table writers are running almost + // constantly, + // and we don't want them to starve T+D. + tdLocks.put(stream.id(), new ReentrantReadWriteLock(true)); + // This lock doesn't need to be fair; any T+D instance is equivalent and we'll skip T+D if we can't + // immediately acquire the lock. + internalTdLocks.put(stream.id(), new ReentrantLock()); + + return Optional.empty(); + } catch (final Exception e) { + LOGGER.error("Exception occurred while preparing tables for stream " + stream.id().originalName(), e); + return Optional.of(e); } + }, this.executorService); + } - streamsWithSuccesfulSetup.add(stream.id()); - } + public void typeAndDedupe(final String originalNamespace, final String originalName, final boolean mustRun) throws Exception { + final var streamConfig = parsedCatalog.getStream(originalNamespace, originalName); + final CompletableFuture> task = typeAndDedupeTask(streamConfig, mustRun); + reduceExceptions( + singleton(task), + String.format( + "The Following Exceptions were thrown while typing and deduping %s.%s:\n", + originalNamespace, + originalName)); } - /** - * Execute typing and deduping for a single stream (i.e. fetch new raw records into the final table, - * etc.). - *

- * This method is thread-safe; multiple threads can call it concurrently. - * - * @param originalNamespace The stream's namespace, as declared in the configured catalog - * @param originalName The stream's name, as declared in the configured catalog - */ - public void typeAndDedupe(final String originalNamespace, final String originalName) throws Exception { - LOGGER.info("Attempting typing and deduping for {}.{}", originalNamespace, originalName); + public Lock getRawTableInsertLock(final String originalNamespace, final String originalName) { final var streamConfig = parsedCatalog.getStream(originalNamespace, originalName); - if (streamsWithSuccesfulSetup.stream() - .noneMatch(streamId -> streamId.originalNamespace().equals(originalNamespace) && streamId.originalName().equals(originalName))) { - // For example, if T+D setup fails, but the consumer tries to run T+D on all streams during close, - // we should skip it. - LOGGER.warn("Skipping typing and deduping for {}.{} because we could not set up the tables for this stream.", originalNamespace, originalName); - return; - } - final String suffix = getFinalTableSuffix(streamConfig.id()); - final String sql = sqlGenerator.updateTable(streamConfig, suffix); - destinationHandler.execute(sql); + return tdLocks.get(streamConfig.id()).readLock(); + } + + public CompletableFuture> typeAndDedupeTask(final StreamConfig streamConfig, final boolean mustRun) { + return CompletableFuture.supplyAsync(() -> { + final var originalNamespace = streamConfig.id().originalNamespace(); + final var originalName = streamConfig.id().originalName(); + try { + if (!streamsWithSuccessfulSetup.contains(new Pair<>(originalNamespace, originalName))) { + // For example, if T+D setup fails, but the consumer tries to run T+D on all streams during close, + // we should skip it. + LOGGER.warn("Skipping typing and deduping for {}.{} because we could not set up the tables for this stream.", originalNamespace, + originalName); + return Optional.empty(); + } + + final boolean run; + final Lock internalLock = internalTdLocks.get(streamConfig.id()); + if (mustRun) { + // If we must run T+D, then wait until we acquire the lock. + internalLock.lock(); + run = true; + } else { + // Otherwise, try and get the lock. If another thread already has it, then we should noop here. + run = internalLock.tryLock(); + } + + if (run) { + LOGGER.info("Waiting for raw table writes to pause for {}.{}", originalNamespace, originalName); + final Lock externalLock = tdLocks.get(streamConfig.id()).writeLock(); + externalLock.lock(); + try { + LOGGER.info("Attempting typing and deduping for {}.{}", originalNamespace, originalName); + final String suffix = getFinalTableSuffix(streamConfig.id()); + final String sql = sqlGenerator.updateTable(streamConfig, suffix); + destinationHandler.execute(sql); + } finally { + LOGGER.info("Allowing other threads to proceed for {}.{}", originalNamespace, originalName); + externalLock.unlock(); + internalLock.unlock(); + } + } else { + LOGGER.info("Another thread is already trying to run typing and deduping for {}.{}. Skipping it here.", originalNamespace, + originalName); + } + return Optional.empty(); + } catch (final Exception e) { + LOGGER.error("Exception occurred while typing and deduping stream " + originalName, e); + return Optional.of(e); + } + }, this.executorService); + } + + @Override + public void typeAndDedupe() throws Exception { + LOGGER.info("Typing and deduping all tables"); + final Set>> typeAndDedupeTasks = new HashSet<>(); + parsedCatalog.streams().forEach(streamConfig -> { + typeAndDedupeTasks.add(typeAndDedupeTask(streamConfig, true)); + }); + CompletableFuture.allOf(typeAndDedupeTasks.toArray(CompletableFuture[]::new)).join(); + reduceExceptions(typeAndDedupeTasks, "The Following Exceptions were thrown while typing and deduping tables:\n"); } /** @@ -147,26 +252,47 @@ public void typeAndDedupe(final String originalNamespace, final String originalN */ public void commitFinalTables() throws Exception { LOGGER.info("Committing final tables"); + final Set>> tableCommitTasks = new HashSet<>(); for (final StreamConfig streamConfig : parsedCatalog.streams()) { - if (!streamsWithSuccesfulSetup.contains(streamConfig.id())) { + if (!streamsWithSuccessfulSetup.contains(new Pair<>(streamConfig.id().originalNamespace(), streamConfig.id().originalName()))) { LOGGER.warn("Skipping committing final table for for {}.{} because we could not set up the tables for this stream.", streamConfig.id().originalNamespace(), streamConfig.id().originalName()); continue; } if (DestinationSyncMode.OVERWRITE.equals(streamConfig.destinationSyncMode())) { - final StreamId streamId = streamConfig.id(); - final String finalSuffix = getFinalTableSuffix(streamId); - if (!StringUtils.isEmpty(finalSuffix)) { - final String overwriteFinalTable = sqlGenerator.overwriteFinalTable(streamId, finalSuffix); - LOGGER.info("Overwriting final table with tmp table for stream {}.{}", streamId.originalNamespace(), streamId.originalName()); + tableCommitTasks.add(commitFinalTableTask(streamConfig)); + } + } + CompletableFuture.allOf(tableCommitTasks.toArray(CompletableFuture[]::new)).join(); + reduceExceptions(tableCommitTasks, "The Following Exceptions were thrown while committing final tables:\n"); + } + + private CompletableFuture> commitFinalTableTask(final StreamConfig streamConfig) { + return CompletableFuture.supplyAsync(() -> { + final StreamId streamId = streamConfig.id(); + final String finalSuffix = getFinalTableSuffix(streamId); + if (!StringUtils.isEmpty(finalSuffix)) { + final String overwriteFinalTable = sqlGenerator.overwriteFinalTable(streamId, finalSuffix); + LOGGER.info("Overwriting final table with tmp table for stream {}.{}", streamId.originalNamespace(), streamId.originalName()); + try { destinationHandler.execute(overwriteFinalTable); + } catch (final Exception e) { + LOGGER.error("Exception Occurred while committing final table for stream " + streamId.originalName(), e); + return Optional.of(e); } } - } + return Optional.empty(); + }, this.executorService); } private String getFinalTableSuffix(final StreamId streamId) { return overwriteStreamsWithTmpTable.contains(streamId) ? TMP_OVERWRITE_TABLE_SUFFIX : NO_SUFFIX; } + @Override + public void cleanup() { + LOGGER.info("Cleaning Up type-and-dedupe thread pool"); + this.executorService.shutdown(); + } + } diff --git a/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/FutureUtils.java b/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/FutureUtils.java new file mode 100644 index 000000000000..5804345bc7ed --- /dev/null +++ b/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/FutureUtils.java @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2023 Airbyte, Inc., all rights reserved. + */ + +package io.airbyte.integrations.base.destination.typing_deduping; + +import io.airbyte.integrations.util.ConnectorExceptionUtil; +import java.util.Collection; +import java.util.List; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class FutureUtils { + + /** + * Allow for configuring the number of typing and deduping threads via an enviornment variable in + * the destination container. + * + * @return the number of threads to use in the typing and deduping pool + */ + public static int countOfTypingDedupingThreads(final int defaultThreads) { + return Optional.ofNullable(System.getenv("TD_THREADS")) + .map(Integer::valueOf) + .orElse(defaultThreads); + } + + /** + * Log all exceptions from a list of futures, and rethrow the first exception if there is one. This + * mimics the behavior of running the futures in serial, where the first failure + */ + public static void reduceExceptions(final Collection>> potentialExceptions, final String initialMessage) + throws Exception { + final List exceptions = potentialExceptions.stream() + .map(CompletableFuture::join) + .filter(Optional::isPresent) + .map(Optional::get) + .toList(); + ConnectorExceptionUtil.logAllAndThrowFirst(initialMessage, exceptions); + } + +} diff --git a/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/NoopTyperDeduper.java b/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/NoopTyperDeduper.java index a503914efa6a..efe1fbf472cb 100644 --- a/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/NoopTyperDeduper.java +++ b/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/NoopTyperDeduper.java @@ -4,6 +4,10 @@ package io.airbyte.integrations.base.destination.typing_deduping; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.locks.Condition; +import java.util.concurrent.locks.Lock; + public class NoopTyperDeduper implements TyperDeduper { @Override @@ -12,8 +16,46 @@ public void prepareTables() throws Exception { } @Override - public void typeAndDedupe(String originalNamespace, String originalName) throws Exception { + public void typeAndDedupe(final String originalNamespace, final String originalName, final boolean mustRun) throws Exception { + + } + + @Override + public Lock getRawTableInsertLock(final String originalNamespace, final String originalName) { + // Return a fake lock that does nothing. + return new Lock() { + + @Override + public void lock() { + + } + + @Override + public void lockInterruptibly() throws InterruptedException { + + } + + @Override + public boolean tryLock() { + return false; + } + + @Override + public boolean tryLock(final long time, final TimeUnit unit) throws InterruptedException { + return false; + } + @Override + public void unlock() { + + } + + @Override + public Condition newCondition() { + return null; + } + + }; } @Override @@ -21,4 +63,14 @@ public void commitFinalTables() throws Exception { } + @Override + public void typeAndDedupe() throws Exception { + + } + + @Override + public void cleanup() { + + } + } diff --git a/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/NoopV2RawTableMigrator.java b/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/NoopV2TableMigrator.java similarity index 67% rename from airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/NoopV2RawTableMigrator.java rename to airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/NoopV2TableMigrator.java index 8535481d7847..5ba825b5a49d 100644 --- a/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/NoopV2RawTableMigrator.java +++ b/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/NoopV2TableMigrator.java @@ -4,7 +4,7 @@ package io.airbyte.integrations.base.destination.typing_deduping; -public class NoopV2RawTableMigrator implements V2RawTableMigrator { +public class NoopV2TableMigrator implements V2TableMigrator { @Override public void migrateIfNecessary(final StreamConfig streamConfig) { diff --git a/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/SqlGenerator.java b/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/SqlGenerator.java index 4fe85355a931..5d8a3b6653d6 100644 --- a/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/SqlGenerator.java +++ b/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/SqlGenerator.java @@ -10,7 +10,11 @@ public interface SqlGenerator { StreamId buildStreamId(String namespace, String name, String rawNamespaceOverride); - ColumnId buildColumnId(String name); + default ColumnId buildColumnId(final String name) { + return buildColumnId(name, ""); + } + + ColumnId buildColumnId(String name, String suffix); /** * Generate a SQL statement to create a fresh table to match the given stream. diff --git a/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/TypeAndDedupeOperationValve.java b/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/TypeAndDedupeOperationValve.java index 524c052db0a1..2327421b419d 100644 --- a/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/TypeAndDedupeOperationValve.java +++ b/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/TypeAndDedupeOperationValve.java @@ -16,10 +16,7 @@ public class TypeAndDedupeOperationValve extends ConcurrentHashMap { private static final long NEGATIVE_MILLIS = -1; - private static final long FIFTEEN_MINUTES_MILLIS = 1000 * 60 * 15; - private static final long ONE_HOUR_MILLIS = 1000 * 60 * 60 * 1; - private static final long TWO_HOURS_MILLIS = 1000 * 60 * 60 * 2; - private static final long FOUR_HOURS_MILLIS = 1000 * 60 * 60 * 4; + private static final long SIX_HOURS_MILLIS = 1000 * 60 * 60 * 6; // New users of airbyte likely want to see data flowing into their tables as soon as possible, and // we want to catch new errors which might appear early within an incremental sync. @@ -28,12 +25,11 @@ public class TypeAndDedupeOperationValve extends ConcurrentHashMap typeAndDedupeIncreasingIntervals = - List.of(NEGATIVE_MILLIS, FIFTEEN_MINUTES_MILLIS, ONE_HOUR_MILLIS, TWO_HOURS_MILLIS, FOUR_HOURS_MILLIS); + public static final List typeAndDedupeIncreasingIntervals = List.of(NEGATIVE_MILLIS, SIX_HOURS_MILLIS); private static final Supplier SYSTEM_NOW = () -> System.currentTimeMillis(); - private ConcurrentHashMap incrementalIndex; + private final ConcurrentHashMap incrementalIndex; private final Supplier nowness; @@ -46,7 +42,7 @@ public TypeAndDedupeOperationValve() { * * @param nownessSupplier Supplier which will return a long value representing now */ - public TypeAndDedupeOperationValve(Supplier nownessSupplier) { + public TypeAndDedupeOperationValve(final Supplier nownessSupplier) { super(); incrementalIndex = new ConcurrentHashMap<>(); this.nowness = nownessSupplier; @@ -70,6 +66,11 @@ public void addStream(final AirbyteStreamNameNamespacePair key) { put(key, nowness.get()); } + public void addStreamIfAbsent(final AirbyteStreamNameNamespacePair key) { + putIfAbsent(key, nowness.get()); + incrementalIndex.putIfAbsent(key, 0); + } + /** * Whether we should type and dedupe at this point in time for this particular stream. * diff --git a/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/TyperDeduper.java b/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/TyperDeduper.java index 8a90791359f8..31a1baa1d3c3 100644 --- a/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/TyperDeduper.java +++ b/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/TyperDeduper.java @@ -4,12 +4,58 @@ package io.airbyte.integrations.base.destination.typing_deduping; +import java.util.concurrent.locks.Lock; + public interface TyperDeduper { + /** + * Create the tables that T+D will write to during the sync. In OVERWRITE mode, these might not be + * the true final tables. Specifically, other than an initial sync (i.e. table does not exist, or is + * empty) we write to a temporary final table, and swap it into the true final table at the end of + * the sync. This is to prevent user downtime during a sync. + */ void prepareTables() throws Exception; - void typeAndDedupe(String originalNamespace, String originalName) throws Exception; + /** + * Suggest that we execute typing and deduping for a single stream (i.e. fetch new raw records into + * the final table, etc.). + *

+ * This method is thread-safe; multiple threads can call it concurrently. If T+D is already running + * for the given stream, this method may choose to do nothing. If a caller wishes to force T+D to + * run (for example, at the end of a sync), they may set {@code mustRun} to true. + *

+ * This method relies on callers to prevent concurrent modification to the underlying raw tables. + * This is most easily accomplished using {@link #getRawTableInsertLock(String, String)}, if the + * caller guards all raw table writes using {@code getRawTableInsertLock().lock()} and + * {@code getRawTableInsertLock().unlock()}. While {@code typeAndDedupe} is executing, that lock + * will be unavailable. However, callers are free to enforce this in other ways (for example, + * single- threaded callers do not need to use the lock). + * + * @param originalNamespace The stream's namespace, as declared in the configured catalog + * @param originalName The stream's name, as declared in the configured catalog + */ + void typeAndDedupe(String originalNamespace, String originalName, boolean mustRun) throws Exception; + + /** + * Get the lock that should be used to synchronize inserts to the raw table for a given stream. This + * lock permits any number of threads to hold the lock, but + * {@link #typeAndDedupe(String, String, boolean)} will not proceed while this lock is held. + *

+ * This lock provides fairness guarantees, i.e. typeAndDedupe will not starve while waiting for the + * lock (and similarly, raw table writers will not starve if many typeAndDedupe calls are queued). + */ + Lock getRawTableInsertLock(final String originalNamespace, final String originalName); + + /** + * Does any "end of sync" work. For most streams, this is a noop. + *

+ * For OVERWRITE streams where we're writing to a temp table, this is where we swap the temp table + * into the final table. + */ + void typeAndDedupe() throws Exception; void commitFinalTables() throws Exception; + void cleanup(); + } diff --git a/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/V2RawTableMigrator.java b/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/V2TableMigrator.java similarity index 70% rename from airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/V2RawTableMigrator.java rename to airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/V2TableMigrator.java index d17722ac1279..19c04e81eb9a 100644 --- a/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/V2RawTableMigrator.java +++ b/airbyte-integrations/bases/base-typing-deduping/src/main/java/io/airbyte/integrations/base/destination/typing_deduping/V2TableMigrator.java @@ -4,8 +4,8 @@ package io.airbyte.integrations.base.destination.typing_deduping; -public interface V2RawTableMigrator { +public interface V2TableMigrator { - void migrateIfNecessary(final StreamConfig streamConfig) throws InterruptedException; + void migrateIfNecessary(final StreamConfig streamConfig) throws Exception; } diff --git a/airbyte-integrations/bases/base-typing-deduping/src/test/java/io/airbyte/integrations/base/destination/typing_deduping/CatalogParserTest.java b/airbyte-integrations/bases/base-typing-deduping/src/test/java/io/airbyte/integrations/base/destination/typing_deduping/CatalogParserTest.java index f79da6a374f6..3922f8ebe4bf 100644 --- a/airbyte-integrations/bases/base-typing-deduping/src/test/java/io/airbyte/integrations/base/destination/typing_deduping/CatalogParserTest.java +++ b/airbyte-integrations/bases/base-typing-deduping/src/test/java/io/airbyte/integrations/base/destination/typing_deduping/CatalogParserTest.java @@ -27,13 +27,13 @@ public void setup() { sqlGenerator = mock(SqlGenerator.class); // noop quoting logic when(sqlGenerator.buildColumnId(any())).thenAnswer(invocation -> { - String fieldName = invocation.getArgument(0); + final String fieldName = invocation.getArgument(0); return new ColumnId(fieldName, fieldName, fieldName); }); when(sqlGenerator.buildStreamId(any(), any(), any())).thenAnswer(invocation -> { - String namespace = invocation.getArgument(0); - String name = invocation.getArgument(1); - String rawNamespace = invocation.getArgument(1); + final String namespace = invocation.getArgument(0); + final String name = invocation.getArgument(1); + final String rawNamespace = invocation.getArgument(1); return new StreamId(namespace, name, rawNamespace, namespace + "_abab_" + name, namespace, name); }); @@ -47,12 +47,12 @@ public void setup() { @Test public void finalNameCollision() { when(sqlGenerator.buildStreamId(any(), any(), any())).thenAnswer(invocation -> { - String originalNamespace = invocation.getArgument(0); - String originalName = (invocation.getArgument(1)); - String originalRawNamespace = (invocation.getArgument(1)); + final String originalNamespace = invocation.getArgument(0); + final String originalName = (invocation.getArgument(1)); + final String originalRawNamespace = (invocation.getArgument(1)); // emulate quoting logic that causes a name collision - String quotedName = originalName.replaceAll("bar", ""); + final String quotedName = originalName.replaceAll("bar", ""); return new StreamId(originalNamespace, quotedName, originalRawNamespace, originalNamespace + "_abab_" + quotedName, originalNamespace, originalName); }); @@ -73,22 +73,22 @@ public void finalNameCollision() { */ @Test public void columnNameCollision() { - when(sqlGenerator.buildColumnId(any())).thenAnswer(invocation -> { - String originalName = invocation.getArgument(0); + when(sqlGenerator.buildColumnId(any(), any())).thenAnswer(invocation -> { + final String originalName = invocation.getArgument(0); // emulate quoting logic that causes a name collision - String quotedName = originalName.replaceAll("bar", ""); + final String quotedName = originalName.replaceAll("bar", ""); return new ColumnId(quotedName, originalName, quotedName); }); - JsonNode schema = Jsons.deserialize(""" - { - "type": "object", - "properties": { - "foobarfoo": {"type": "string"}, - "foofoo": {"type": "string"} - } - } - """); + final JsonNode schema = Jsons.deserialize(""" + { + "type": "object", + "properties": { + "foobarfoo": {"type": "string"}, + "foofoo": {"type": "string"} + } + } + """); final ConfiguredAirbyteCatalog catalog = new ConfiguredAirbyteCatalog().withStreams(List.of(stream("a", "a", schema))); final ParsedCatalog parsedCatalog = parser.parseCatalog(catalog); @@ -96,7 +96,7 @@ public void columnNameCollision() { assertEquals(2, parsedCatalog.streams().get(0).columns().size()); } - private static ConfiguredAirbyteStream stream(String namespace, String name) { + private static ConfiguredAirbyteStream stream(final String namespace, final String name) { return stream( namespace, name, @@ -110,7 +110,7 @@ private static ConfiguredAirbyteStream stream(String namespace, String name) { """)); } - private static ConfiguredAirbyteStream stream(String namespace, String name, JsonNode schema) { + private static ConfiguredAirbyteStream stream(final String namespace, final String name, final JsonNode schema) { return new ConfiguredAirbyteStream().withStream( new AirbyteStream() .withNamespace(namespace) diff --git a/airbyte-integrations/bases/base-typing-deduping/src/test/java/io/airbyte/integrations/base/destination/typing_deduping/DefaultTyperDeduperTest.java b/airbyte-integrations/bases/base-typing-deduping/src/test/java/io/airbyte/integrations/base/destination/typing_deduping/DefaultTyperDeduperTest.java index 62fb1374eed9..89b6c81fb0c2 100644 --- a/airbyte-integrations/bases/base-typing-deduping/src/test/java/io/airbyte/integrations/base/destination/typing_deduping/DefaultTyperDeduperTest.java +++ b/airbyte-integrations/bases/base-typing-deduping/src/test/java/io/airbyte/integrations/base/destination/typing_deduping/DefaultTyperDeduperTest.java @@ -60,7 +60,7 @@ void setup() { null, null))); - typerDeduper = new DefaultTyperDeduper<>(sqlGenerator, destinationHandler, parsedCatalog, migrator); + typerDeduper = new DefaultTyperDeduper<>(sqlGenerator, destinationHandler, parsedCatalog, migrator, 1); } /** @@ -77,11 +77,11 @@ void emptyDestination() throws Exception { verifyNoMoreInteractions(ignoreStubs(destinationHandler)); clearInvocations(destinationHandler); - typerDeduper.typeAndDedupe("overwrite_ns", "overwrite_stream"); + typerDeduper.typeAndDedupe("overwrite_ns", "overwrite_stream", false); verify(destinationHandler).execute("UPDATE TABLE overwrite_ns.overwrite_stream"); - typerDeduper.typeAndDedupe("append_ns", "append_stream"); + typerDeduper.typeAndDedupe("append_ns", "append_stream", false); verify(destinationHandler).execute("UPDATE TABLE append_ns.append_stream"); - typerDeduper.typeAndDedupe("dedup_ns", "dedup_stream"); + typerDeduper.typeAndDedupe("dedup_ns", "dedup_stream", false); verify(destinationHandler).execute("UPDATE TABLE dedup_ns.dedup_stream"); verifyNoMoreInteractions(ignoreStubs(destinationHandler)); clearInvocations(destinationHandler); @@ -107,11 +107,11 @@ void existingEmptyTable() throws Exception { verifyNoMoreInteractions(ignoreStubs(destinationHandler)); clearInvocations(destinationHandler); - typerDeduper.typeAndDedupe("overwrite_ns", "overwrite_stream"); + typerDeduper.typeAndDedupe("overwrite_ns", "overwrite_stream", false); verify(destinationHandler).execute("UPDATE TABLE overwrite_ns.overwrite_stream_airbyte_tmp"); - typerDeduper.typeAndDedupe("append_ns", "append_stream"); + typerDeduper.typeAndDedupe("append_ns", "append_stream", false); verify(destinationHandler).execute("UPDATE TABLE append_ns.append_stream"); - typerDeduper.typeAndDedupe("dedup_ns", "dedup_stream"); + typerDeduper.typeAndDedupe("dedup_ns", "dedup_stream", false); verify(destinationHandler).execute("UPDATE TABLE dedup_ns.dedup_stream"); verifyNoMoreInteractions(ignoreStubs(destinationHandler)); clearInvocations(destinationHandler); @@ -153,12 +153,12 @@ void existingNonemptyTable() throws Exception { verifyNoMoreInteractions(ignoreStubs(destinationHandler)); clearInvocations(destinationHandler); - typerDeduper.typeAndDedupe("overwrite_ns", "overwrite_stream"); + typerDeduper.typeAndDedupe("overwrite_ns", "overwrite_stream", false); // NB: no airbyte_tmp suffix on the non-overwrite streams verify(destinationHandler).execute("UPDATE TABLE overwrite_ns.overwrite_stream_airbyte_tmp"); - typerDeduper.typeAndDedupe("append_ns", "append_stream"); + typerDeduper.typeAndDedupe("append_ns", "append_stream", false); verify(destinationHandler).execute("UPDATE TABLE append_ns.append_stream"); - typerDeduper.typeAndDedupe("dedup_ns", "dedup_stream"); + typerDeduper.typeAndDedupe("dedup_ns", "dedup_stream", false); verify(destinationHandler).execute("UPDATE TABLE dedup_ns.dedup_stream"); verifyNoMoreInteractions(ignoreStubs(destinationHandler)); clearInvocations(destinationHandler); @@ -188,7 +188,7 @@ void existingNonemptyTableMatchingSchema() throws Exception { @Test void nonexistentStream() { assertThrows(IllegalArgumentException.class, - () -> typerDeduper.typeAndDedupe("nonexistent_ns", "nonexistent_stream")); + () -> typerDeduper.typeAndDedupe("nonexistent_ns", "nonexistent_stream", false)); verifyNoInteractions(ignoreStubs(destinationHandler)); } @@ -196,10 +196,10 @@ void nonexistentStream() { void failedSetup() throws Exception { doThrow(new RuntimeException("foo")).when(destinationHandler).execute(any()); - assertThrows(RuntimeException.class, () -> typerDeduper.prepareTables()); + assertThrows(Exception.class, () -> typerDeduper.prepareTables()); clearInvocations(destinationHandler); - typerDeduper.typeAndDedupe("dedup_ns", "dedup_stream"); + typerDeduper.typeAndDedupe("dedup_ns", "dedup_stream", false); typerDeduper.commitFinalTables(); verifyNoInteractions(ignoreStubs(destinationHandler)); diff --git a/airbyte-integrations/bases/base-typing-deduping/src/test/java/io/airbyte/integrations/base/destination/typing_deduping/MockSqlGenerator.java b/airbyte-integrations/bases/base-typing-deduping/src/test/java/io/airbyte/integrations/base/destination/typing_deduping/MockSqlGenerator.java index 3f56b61114e2..1f5c6f377367 100644 --- a/airbyte-integrations/bases/base-typing-deduping/src/test/java/io/airbyte/integrations/base/destination/typing_deduping/MockSqlGenerator.java +++ b/airbyte-integrations/bases/base-typing-deduping/src/test/java/io/airbyte/integrations/base/destination/typing_deduping/MockSqlGenerator.java @@ -15,7 +15,7 @@ public StreamId buildStreamId(final String namespace, final String name, final S } @Override - public ColumnId buildColumnId(final String name) { + public ColumnId buildColumnId(final String name, final String suffix) { return null; } diff --git a/airbyte-integrations/bases/base-typing-deduping/src/test/java/io/airbyte/integrations/base/destination/typing_deduping/TypeAndDedupeOperationValveTest.java b/airbyte-integrations/bases/base-typing-deduping/src/test/java/io/airbyte/integrations/base/destination/typing_deduping/TypeAndDedupeOperationValveTest.java index 3f6b35e6eaa3..49d4266dec7a 100644 --- a/airbyte-integrations/bases/base-typing-deduping/src/test/java/io/airbyte/integrations/base/destination/typing_deduping/TypeAndDedupeOperationValveTest.java +++ b/airbyte-integrations/bases/base-typing-deduping/src/test/java/io/airbyte/integrations/base/destination/typing_deduping/TypeAndDedupeOperationValveTest.java @@ -54,28 +54,15 @@ public void testReadyToTypeAndDedupe() { elapseTime(minuteUpdates, 1); Assertions.assertTrue(valve.readyToTypeAndDedupe(STREAM_B)); valve.updateTimeAndIncreaseInterval(STREAM_A); - Assertions.assertEquals(1000 * 60 * 15, + Assertions.assertEquals(1000 * 60 * 60 * 6, valve.getIncrementInterval(STREAM_A)); // method call increments time Assertions.assertFalse(valve.readyToTypeAndDedupe(STREAM_A)); // More than enough time has passed now - elapseTime(minuteUpdates, 15); + elapseTime(minuteUpdates, 60 * 6); Assertions.assertTrue(valve.readyToTypeAndDedupe(STREAM_A)); } - @Test - public void testIncrementInterval() { - final var valve = new TypeAndDedupeOperationValve(ALWAYS_ZERO); - valve.addStream(STREAM_A); - IntStream.rangeClosed(1, 4).forEach(i -> { - final var index = valve.incrementInterval(STREAM_A); - Assertions.assertEquals(i, index); - }); - Assertions.assertEquals(4, valve.incrementInterval(STREAM_A)); - // Twice to be sure - Assertions.assertEquals(4, valve.incrementInterval(STREAM_A)); - } - @Test public void testUpdateTimeAndIncreaseInterval() { final var valve = new TypeAndDedupeOperationValve(minuteUpdates); @@ -83,19 +70,7 @@ public void testUpdateTimeAndIncreaseInterval() { IntStream.range(0, 1).forEach(__ -> Assertions.assertTrue(valve.readyToTypeAndDedupe(STREAM_A))); // start ready to T&D Assertions.assertTrue(valve.readyToTypeAndDedupe(STREAM_A)); valve.updateTimeAndIncreaseInterval(STREAM_A); - IntStream.range(0, 15).forEach(__ -> Assertions.assertFalse(valve.readyToTypeAndDedupe(STREAM_A))); - Assertions.assertTrue(valve.readyToTypeAndDedupe(STREAM_A)); - valve.updateTimeAndIncreaseInterval(STREAM_A); - IntStream.range(0, 60).forEach(__ -> Assertions.assertFalse(valve.readyToTypeAndDedupe(STREAM_A))); - Assertions.assertTrue(valve.readyToTypeAndDedupe(STREAM_A)); - valve.updateTimeAndIncreaseInterval(STREAM_A); - IntStream.range(0, 120).forEach(__ -> Assertions.assertFalse(valve.readyToTypeAndDedupe(STREAM_A))); - Assertions.assertTrue(valve.readyToTypeAndDedupe(STREAM_A)); - valve.updateTimeAndIncreaseInterval(STREAM_A); - IntStream.range(0, 240).forEach(__ -> Assertions.assertFalse(valve.readyToTypeAndDedupe(STREAM_A))); - Assertions.assertTrue(valve.readyToTypeAndDedupe(STREAM_A)); - valve.updateTimeAndIncreaseInterval(STREAM_A); - IntStream.range(0, 240).forEach(__ -> Assertions.assertFalse(valve.readyToTypeAndDedupe(STREAM_A))); + IntStream.range(0, 360).forEach(__ -> Assertions.assertFalse(valve.readyToTypeAndDedupe(STREAM_A))); Assertions.assertTrue(valve.readyToTypeAndDedupe(STREAM_A)); } diff --git a/airbyte-integrations/bases/bases-destination-jdbc/build.gradle b/airbyte-integrations/bases/bases-destination-jdbc/build.gradle index 4b731d310b42..3c011b4bdabd 100644 --- a/airbyte-integrations/bases/bases-destination-jdbc/build.gradle +++ b/airbyte-integrations/bases/bases-destination-jdbc/build.gradle @@ -24,12 +24,9 @@ dependencies { // https://github.com/aesy/datasize implementation "io.aesy:datasize:1.0.0" - testImplementation libs.connectors.testcontainers.postgresql + testImplementation libs.testcontainers.postgresql testImplementation "org.mockito:mockito-inline:4.1.0" integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') - integrationTestJavaImplementation libs.connectors.testcontainers.postgresql - - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-normalization').airbyteDocker.outputs) + integrationTestJavaImplementation libs.testcontainers.postgresql } diff --git a/airbyte-integrations/bases/bases-destination-jdbc/src/main/java/io/airbyte/integrations/destination/staging/GeneralStagingFunctions.java b/airbyte-integrations/bases/bases-destination-jdbc/src/main/java/io/airbyte/integrations/destination/staging/GeneralStagingFunctions.java index 301ee7d649f2..69919deb6339 100644 --- a/airbyte-integrations/bases/bases-destination-jdbc/src/main/java/io/airbyte/integrations/destination/staging/GeneralStagingFunctions.java +++ b/airbyte-integrations/bases/bases-destination-jdbc/src/main/java/io/airbyte/integrations/destination/staging/GeneralStagingFunctions.java @@ -10,8 +10,10 @@ import io.airbyte.integrations.destination.buffered_stream_consumer.OnCloseFunction; import io.airbyte.integrations.destination.buffered_stream_consumer.OnStartFunction; import io.airbyte.integrations.destination.jdbc.WriteConfig; +import io.airbyte.protocol.models.v0.AirbyteStreamNameNamespacePair; import java.util.ArrayList; import java.util.List; +import java.util.concurrent.locks.Lock; import lombok.extern.slf4j.Slf4j; /** @@ -77,8 +79,21 @@ public static void copyIntoTableFromStage(final JdbcDatabase database, final TyperDeduper typerDeduper) throws Exception { try { - stagingOperations.copyIntoTableFromStage(database, stageName, stagingPath, stagedFiles, - tableName, schemaName); + final Lock rawTableInsertLock = typerDeduper.getRawTableInsertLock(streamNamespace, streamName); + rawTableInsertLock.lock(); + try { + stagingOperations.copyIntoTableFromStage(database, stageName, stagingPath, stagedFiles, + tableName, schemaName); + } finally { + rawTableInsertLock.unlock(); + } + + final AirbyteStreamNameNamespacePair streamId = new AirbyteStreamNameNamespacePair(streamName, streamNamespace); + typerDeduperValve.addStreamIfAbsent(streamId); + if (typerDeduperValve.readyToTypeAndDedupe(streamId)) { + typerDeduper.typeAndDedupe(streamId.getNamespace(), streamId.getName(), false); + typerDeduperValve.updateTimeAndIncreaseInterval(streamId); + } } catch (final Exception e) { stagingOperations.cleanUpStage(database, stageName, stagedFiles); log.info("Cleaning stage path {}", stagingPath); @@ -104,6 +119,7 @@ public static OnCloseFunction onCloseFunction(final JdbcDatabase database, // After moving data from staging area to the target table (airybte_raw) clean up the staging // area (if user configured) log.info("Cleaning up destination started for {} streams", writeConfigs.size()); + typerDeduper.typeAndDedupe(); for (final WriteConfig writeConfig : writeConfigs) { final String schemaName = writeConfig.getOutputSchemaName(); if (purgeStagingData) { @@ -112,11 +128,9 @@ public static OnCloseFunction onCloseFunction(final JdbcDatabase database, stageName); stagingOperations.dropStageIfExists(database, stageName); } - - typerDeduper.typeAndDedupe(writeConfig.getNamespace(), writeConfig.getStreamName()); } - typerDeduper.commitFinalTables(); + typerDeduper.cleanup(); log.info("Cleaning up destination completed."); }; } diff --git a/airbyte-integrations/bases/connector-acceptance-test/CHANGELOG.md b/airbyte-integrations/bases/connector-acceptance-test/CHANGELOG.md index 2ec9e3340168..da4940b84a15 100644 --- a/airbyte-integrations/bases/connector-acceptance-test/CHANGELOG.md +++ b/airbyte-integrations/bases/connector-acceptance-test/CHANGELOG.md @@ -1,5 +1,14 @@ # Changelog +## 2.0.1 +Changing `format` or `airbyte_type` in a field definition of a schema or specification is now a breaking change. + +## 2.0.0 +Update test_incremental.test_two_sequential_reads to be unaware of the contents of the state message. This is to support connectors that have a custom implementation of a cursor. + +## 1.0.4 +Fix edge case in skip_backward_compatibility_tests_fixture on discovery: if the current config structure is not compatible with the previous connector version, the discovery command failing and the previous connector version catalog could not be retrieved. + ## 1.0.3 Add tests for display_type property diff --git a/airbyte-integrations/bases/connector-acceptance-test/Dockerfile b/airbyte-integrations/bases/connector-acceptance-test/Dockerfile index 9061a32a9feb..e703258b099e 100644 --- a/airbyte-integrations/bases/connector-acceptance-test/Dockerfile +++ b/airbyte-integrations/bases/connector-acceptance-test/Dockerfile @@ -14,7 +14,7 @@ RUN curl -fsSL https://get.docker.com | sh RUN pip install poetry==1.5.1 -RUN poetry config virtualenvs.create false +RUN poetry config virtualenvs.create false RUN echo "Etc/UTC" > /etc/timezone WORKDIR /app @@ -24,7 +24,7 @@ RUN poetry install --no-root --only main --no-interaction --no-ansi COPY . /app RUN poetry install --only main --no-cache --no-interaction --no-ansi -LABEL io.airbyte.version=1.0.3 +LABEL io.airbyte.version=2.0.1 LABEL io.airbyte.name=airbyte/connector-acceptance-test WORKDIR /test_input ENTRYPOINT ["python", "-m", "pytest", "-p", "connector_acceptance_test.plugin", "-r", "fEsx", "--show-capture=log"] diff --git a/airbyte-integrations/bases/connector-acceptance-test/README.md b/airbyte-integrations/bases/connector-acceptance-test/README.md index d2703d10085a..55c4520a9c53 100644 --- a/airbyte-integrations/bases/connector-acceptance-test/README.md +++ b/airbyte-integrations/bases/connector-acceptance-test/README.md @@ -96,7 +96,7 @@ You may want to iterate on the acceptance test project itself: adding new tests, These iterations are more conveniently achieved by remaining in the current directory. 1. Install dependencies via `poetry install` -2. Run the unit tests on the acceptance tests themselves: `poetry run python -m pytest unit_tests` (add the `--pdb` option if you want to enable the debugger on test failure) +2. Run the unit tests on the acceptance tests themselves: `poetry run pytest unit_tests` (add the `--pdb` option if you want to enable the debugger on test failure) 3. To run specific unit test(s), add `-k` to the above command, e.g. `poetry run python -m pytest unit_tests -k 'test_property_can_store_secret'`. You can use wildcards `*` here as well. 4. Make the changes you want: * Global pytest fixtures are defined in `./connector_acceptance_test/conftest.py` diff --git a/airbyte-integrations/bases/connector-acceptance-test/connector_acceptance_test/config.py b/airbyte-integrations/bases/connector-acceptance-test/connector_acceptance_test/config.py index b79b939d958b..94e3dc3edfc2 100644 --- a/airbyte-integrations/bases/connector-acceptance-test/connector_acceptance_test/config.py +++ b/airbyte-integrations/bases/connector-acceptance-test/connector_acceptance_test/config.py @@ -160,16 +160,8 @@ class FutureStateConfig(BaseConfig): class IncrementalConfig(BaseConfig): config_path: str = config_path configured_catalog_path: Optional[str] = configured_catalog_path - cursor_paths: Optional[Mapping[str, List[Union[int, str]]]] = Field( - description="For each stream, the path of its cursor field in the output state messages." - ) future_state: Optional[FutureStateConfig] = Field(description="Configuration for the future state.") timeout_seconds: int = timeout_seconds - threshold_days: int = Field( - description="Allow records to be emitted with a cursor value this number of days before the state cursor", - default=0, - ge=0, - ) skip_comprehensive_incremental_tests: Optional[bool] = Field( description="Determines whether to skip more granular testing for incremental syncs", default=False ) diff --git a/airbyte-integrations/bases/connector-acceptance-test/connector_acceptance_test/tests/test_core.py b/airbyte-integrations/bases/connector-acceptance-test/connector_acceptance_test/tests/test_core.py index 2207aaf899b1..3d7c8bb2cc4e 100644 --- a/airbyte-integrations/bases/connector-acceptance-test/connector_acceptance_test/tests/test_core.py +++ b/airbyte-integrations/bases/connector-acceptance-test/connector_acceptance_test/tests/test_core.py @@ -472,7 +472,7 @@ def test_display_type(self, actual_connector_spec: ConnectorSpecification): if is_property_named_display_type: continue parent_object = schema_helper.get_parent(display_type_path) - if not "oneOf" in parent_object: + if "oneOf" not in parent_object: errors.append(f"display_type is only allowed on fields which have a oneOf property, but is set on {parent_path}") display_type_value = parent_object.get("display_type") if display_type_value != "dropdown" and display_type_value != "radio": @@ -594,7 +594,6 @@ async def test_check(self, connector_config, inputs: ConnectionTestConfig, docke @pytest.mark.default_timeout(30) class TestDiscovery(BaseTest): - VALID_TYPES = {"null", "string", "number", "integer", "boolean", "object", "array"} VALID_AIRBYTE_TYPES = {"timestamp_with_timezone", "timestamp_without_timezone", "integer"} VALID_FORMATS = {"date-time", "date"} @@ -614,10 +613,21 @@ class TestDiscovery(BaseTest): ({"number", "null"}, "integer"), ] + @pytest.fixture() + async def skip_backward_compatibility_tests_for_version( + self, inputs: DiscoveryTestConfig, previous_connector_docker_runner: ConnectorRunner + ): + # Get the real connector version in case 'latest' is used in the config: + previous_connector_version = await previous_connector_docker_runner.get_container_label("io.airbyte.version") + if previous_connector_version == inputs.backward_compatibility_tests_config.disable_for_version: + pytest.skip(f"Backward compatibility tests are disabled for version {previous_connector_version}.") + return False + @pytest.fixture(name="skip_backward_compatibility_tests") async def skip_backward_compatibility_tests_fixture( self, - inputs: DiscoveryTestConfig, + # Even if unused, this fixture is required to make sure that the skip_backward_compatibility_tests_for_version fixture is called. + skip_backward_compatibility_tests_for_version: bool, previous_connector_docker_runner: ConnectorRunner, discovered_catalog: MutableMapping[str, AirbyteStream], previous_discovered_catalog: MutableMapping[str, AirbyteStream], @@ -628,11 +638,6 @@ async def skip_backward_compatibility_tests_fixture( if previous_connector_docker_runner is None: pytest.skip("The previous connector image could not be retrieved.") - # Get the real connector version in case 'latest' is used in the config: - previous_connector_version = await previous_connector_docker_runner.get_container_label("io.airbyte.version") - - if previous_connector_version == inputs.backward_compatibility_tests_config.disable_for_version: - pytest.skip(f"Backward compatibility tests are disabled for version {previous_connector_version}.") return False async def test_discover(self, connector_config, docker_runner: ConnectorRunner): diff --git a/airbyte-integrations/bases/connector-acceptance-test/connector_acceptance_test/tests/test_incremental.py b/airbyte-integrations/bases/connector-acceptance-test/connector_acceptance_test/tests/test_incremental.py index 4fc301ecb8cd..5fbcc144ab69 100644 --- a/airbyte-integrations/bases/connector-acceptance-test/connector_acceptance_test/tests/test_incremental.py +++ b/airbyte-integrations/bases/connector-acceptance-test/connector_acceptance_test/tests/test_incremental.py @@ -3,6 +3,7 @@ # import json +from collections import defaultdict from datetime import datetime from pathlib import Path from typing import Any, Dict, Iterable, List, Mapping, MutableMapping, Tuple, Union @@ -13,6 +14,7 @@ from connector_acceptance_test import BaseTest from connector_acceptance_test.config import Config, EmptyStreamConfiguration, IncrementalConfig from connector_acceptance_test.utils import ConnectorRunner, JsonSchemaHelper, SecretDict, filter_output, incremental_only_catalog +from deepdiff import DeepDiff @pytest.fixture(name="future_state_configuration") @@ -53,18 +55,6 @@ def future_state_fixture(future_state_configuration, test_strictness_level, conf return states -@pytest.fixture(name="cursor_paths") -def cursor_paths_fixture(inputs, configured_catalog_for_incremental) -> Mapping[str, Any]: - cursor_paths = getattr(inputs, "cursor_paths") or {} - result = {} - - for stream in configured_catalog_for_incremental.streams: - path = cursor_paths.get(stream.stream.name, [stream.cursor_field[-1]]) - result[stream.stream.name] = path - - return result - - @pytest.fixture(name="configured_catalog_for_incremental") def configured_catalog_for_incremental_fixture(configured_catalog) -> ConfiguredAirbyteCatalog: catalog = incremental_only_catalog(configured_catalog) @@ -83,53 +73,6 @@ def configured_catalog_for_incremental_fixture(configured_catalog) -> Configured return catalog -def records_with_state(records, state, stream_mapping, state_cursor_paths) -> Iterable[Tuple[Any, Any, Any]]: - """Iterate over records and return cursor value with corresponding cursor value from state""" - for record in records: - stream_name = record.record.stream - stream = stream_mapping[stream_name] - helper = JsonSchemaHelper(schema=stream.stream.json_schema) - cursor_field = helper.field(stream.cursor_field) - record_value = cursor_field.parse(record=record.record.data) - try: - if state[stream_name] is None: - continue - - # first attempt to parse the state value assuming the state object is namespaced on stream names - state_value = cursor_field.parse(record=state[stream_name], path=state_cursor_paths[stream_name]) - except KeyError: - try: - # try second time as an absolute path in state file (i.e. bookmarks -> stream_name -> column -> value) - state_value = cursor_field.parse(record=state, path=state_cursor_paths[stream_name]) - except KeyError: - continue - yield record_value, state_value, stream_name - - -def compare_cursor_with_threshold(record_value, state_value, threshold_days: int) -> bool: - """ - Checks if the record's cursor value is older or equal to the state cursor value. - - If the threshold_days option is set, the values will be converted to dates so that the time-based offset can be applied. - :raises: pendulum.parsing.exceptions.ParserError: if threshold_days is passed with non-date cursor values. - """ - if threshold_days: - - def _parse_date_value(value) -> datetime: - if isinstance(value, datetime): - return value - if isinstance(value, (int, float)): - return pendulum.from_timestamp(value / 1000) - return pendulum.parse(value, strict=False) - - record_date_value = _parse_date_value(record_value) - state_date_value = _parse_date_value(state_value) - - return record_date_value >= (state_date_value - pendulum.duration(days=threshold_days)) - - return record_value >= state_value - - def is_per_stream_state(message: AirbyteMessage) -> bool: return message.state and isinstance(message.state, AirbyteStateMessage) and message.state.type == AirbyteStateType.STREAM @@ -148,59 +91,69 @@ def construct_latest_state_from_messages(messages: List[AirbyteMessage]) -> Dict return latest_per_stream_by_name +def naive_diff_records(records_1: List[AirbyteMessage], records_2: List[AirbyteMessage]) -> DeepDiff: + """ + Naively diff two lists of records by comparing their data field. + """ + records_1_data = [record.record.data for record in records_1] + records_2_data = [record.record.data for record in records_2] + + # ignore_order=True because the order of records in the list is not guaranteed + diff = DeepDiff(records_1_data, records_2_data, ignore_order=True) + return diff + + @pytest.mark.default_timeout(20 * 60) class TestIncremental(BaseTest): async def test_two_sequential_reads( self, - inputs: IncrementalConfig, connector_config: SecretDict, configured_catalog_for_incremental: ConfiguredAirbyteCatalog, - cursor_paths: dict[str, list[Union[int, str]]], docker_runner: ConnectorRunner, ): - threshold_days = getattr(inputs, "threshold_days") or 0 - stream_mapping = {stream.stream.name: stream for stream in configured_catalog_for_incremental.streams} + """ + This test makes two calls to the read method and verifies that the records returned are different. - output = await docker_runner.call_read(connector_config, configured_catalog_for_incremental) - records_1 = filter_output(output, type_=Type.RECORD) - states_1 = filter_output(output, type_=Type.STATE) + Important! + + Assert only that the reads are different. Nothing else. + This is because there is only a small subset of assertions we can make + in the absense of enforcing that all connectors return 3 or more state messages + during the first read. + + To learn more: https://github.com/airbytehq/airbyte/issues/29926 + """ + output_1 = await docker_runner.call_read(connector_config, configured_catalog_for_incremental) + records_1 = filter_output(output_1, type_=Type.RECORD) + states_1 = filter_output(output_1, type_=Type.STATE) - assert states_1, "Should produce at least one state" - assert records_1, "Should produce at least one record" + assert states_1, "First Read should produce at least one state" + assert records_1, "First Read should produce at least one record" # For legacy state format, the final state message contains the final state of all streams. For per-stream state format, # the complete final state of streams must be assembled by going through all prior state messages received - if is_per_stream_state(states_1[-1]): + is_per_stream = is_per_stream_state(states_1[-1]) + if is_per_stream: latest_state = construct_latest_state_from_messages(states_1) state_input = list( {"type": "STREAM", "stream": {"stream_descriptor": {"name": stream_name}, "stream_state": stream_state}} for stream_name, stream_state in latest_state.items() ) else: - latest_state = states_1[-1].state.data state_input = states_1[-1].state.data - parsed_records_1 = list(records_with_state(records_1, latest_state, stream_mapping, cursor_paths)) + # READ #2 - # This catches the case of a connector that emits an invalid state that is not compatible with the schema - # See https://github.com/airbytehq/airbyte/issues/21863 to understand more - assert parsed_records_1, "At least one valid state should be produced, given a cursor path" - - for record_value, state_value, stream_name in parsed_records_1: - assert ( - record_value <= state_value - ), f"First incremental sync should produce records younger or equal to cursor value from the state. Stream: {stream_name}" + output_2 = await docker_runner.call_read_with_state(connector_config, configured_catalog_for_incremental, state=state_input) + records_2 = filter_output(output_2, type_=Type.RECORD) - output = await docker_runner.call_read_with_state(connector_config, configured_catalog_for_incremental, state=state_input) - records_2 = filter_output(output, type_=Type.RECORD) - - for record_value, state_value, stream_name in records_with_state(records_2, latest_state, stream_mapping, cursor_paths): - assert compare_cursor_with_threshold( - record_value, state_value, threshold_days - ), f"Second incremental sync should produce records older or equal to cursor value from the state. Stream: {stream_name}" + diff = naive_diff_records(records_1, records_2) + assert ( + diff + ), f"Records should change between reads but did not.\n\n records_1: {records_1} \n\n state: {state_input} \n\n records_2: {records_2} \n\n diff: {diff}" async def test_read_sequential_slices( - self, inputs: IncrementalConfig, connector_config, configured_catalog_for_incremental, cursor_paths, docker_runner: ConnectorRunner + self, inputs: IncrementalConfig, connector_config, configured_catalog_for_incremental, docker_runner: ConnectorRunner ): """ Incremental test that makes calls to the read method without a state checkpoint. Then we partition the results by stream and @@ -212,52 +165,70 @@ async def test_read_sequential_slices( pytest.skip("Skipping new incremental test based on acceptance-test-config.yml") return - threshold_days = getattr(inputs, "threshold_days") or 0 - stream_mapping = {stream.stream.name: stream for stream in configured_catalog_for_incremental.streams} + output_1 = await docker_runner.call_read(connector_config, configured_catalog_for_incremental) + records_1 = filter_output(output_1, type_=Type.RECORD) + states_1 = filter_output(output_1, type_=Type.STATE) - output = await docker_runner.call_read(connector_config, configured_catalog_for_incremental) - records_1 = filter_output(output, type_=Type.RECORD) - states_1 = filter_output(output, type_=Type.STATE) + # We sometimes have duplicate identical state messages in a stream which we can filter out to speed things up + unique_state_messages = [message for index, message in enumerate(states_1) if message not in states_1[:index]] - assert states_1, "Should produce at least one state" - assert records_1, "Should produce at least one record" + # Important! + + # There is only a small subset of assertions we can make + # in the absense of enforcing that all connectors return 3 or more state messages + # during the first read. + + # To learn more: https://github.com/airbytehq/airbyte/issues/29926 + if len(unique_state_messages) < 3: + pytest.skip("Skipping test because there are not enough state messages to test with") + return + + assert records_1, "First Read should produce at least one record" # For legacy state format, the final state message contains the final state of all streams. For per-stream state format, # the complete final state of streams must be assembled by going through all prior state messages received is_per_stream = is_per_stream_state(states_1[-1]) - if is_per_stream: - latest_state = construct_latest_state_from_messages(states_1) - else: - latest_state = states_1[-1].state.data - for record_value, state_value, stream_name in records_with_state(records_1, latest_state, stream_mapping, cursor_paths): - assert ( - record_value <= state_value - ), f"First incremental sync should produce records younger or equal to cursor value from the state. Stream: {stream_name}" + # To avoid spamming APIs we only test a fraction of batches (10%) and enforce a minimum of 10 tested + min_batches_to_test = 5 + sample_rate = len(unique_state_messages) // min_batches_to_test - checkpoint_messages = filter_output(output, type_=Type.STATE) + mutating_stream_name_to_per_stream_state = dict() + for idx, state_message in enumerate(unique_state_messages): + assert state_message.type == Type.STATE - # We sometimes have duplicate identical state messages in a stream which we can filter out to speed things up - checkpoint_messages = [message for index, message in enumerate(checkpoint_messages) if message not in checkpoint_messages[:index]] + # if first state message, skip + # this is because we cannot assert if the first state message will result in new records + # as in this case it is possible for a connector to return an empty state message when it first starts. + # e.g. if the connector decides it wants to let the caller know that it has started with an empty state. + if idx == 0: + continue - # To avoid spamming APIs we only test a fraction of batches (10%) and enforce a minimum of 10 tested - min_batches_to_test = 10 - sample_rate = len(checkpoint_messages) // min_batches_to_test - stream_name_to_per_stream_state = dict() - for idx, state_message in enumerate(checkpoint_messages): - assert state_message.type == Type.STATE - state_input, complete_state = self.get_next_state_input(state_message, stream_name_to_per_stream_state, is_per_stream) + # if last state message, skip + # this is because we cannot assert if the last state message will result in new records + # as in this case it is possible for a connector to return a previous state message. + # e.g. if the connector is using pagination and the last page is only partially full + if idx == len(unique_state_messages) - 1: + continue - if len(checkpoint_messages) >= min_batches_to_test and idx % sample_rate != 0: + # if batching required, and not a sample, skip + if len(unique_state_messages) >= min_batches_to_test and idx % sample_rate != 0: continue - output = await docker_runner.call_read_with_state(connector_config, configured_catalog_for_incremental, state=state_input) - records = filter_output(output, type_=Type.RECORD) + state_input, mutating_stream_name_to_per_stream_state = self.get_next_state_input( + state_message, mutating_stream_name_to_per_stream_state, is_per_stream + ) + + output_N = await docker_runner.call_read_with_state(connector_config, configured_catalog_for_incremental, state=state_input) + records_N = filter_output(output_N, type_=Type.RECORD) + assert ( + records_N + ), f"Read {idx + 2} of {len(unique_state_messages)} should produce at least one record.\n\n state: {state_input} \n\n records_{idx + 2}: {records_N}" - for record_value, state_value, stream_name in records_with_state(records, complete_state, stream_mapping, cursor_paths): - assert compare_cursor_with_threshold( - record_value, state_value, threshold_days - ), f"Second incremental sync should produce records older or equal to cursor value from the state. Stream: {stream_name}" + diff = naive_diff_records(records_1, records_N) + assert ( + diff + ), f"Records for subsequent reads with new state should be different.\n\n records_1: {records_1} \n\n state: {state_input} \n\n records_{idx + 2}: {records_N} \n\n diff: {diff}" async def test_state_with_abnormally_large_values( self, connector_config, configured_catalog, future_state, docker_runner: ConnectorRunner diff --git a/airbyte-integrations/bases/connector-acceptance-test/connector_acceptance_test/utils/backward_compatibility.py b/airbyte-integrations/bases/connector-acceptance-test/connector_acceptance_test/utils/backward_compatibility.py index 13bcf9af0089..e91ee1935415 100644 --- a/airbyte-integrations/bases/connector-acceptance-test/connector_acceptance_test/utils/backward_compatibility.py +++ b/airbyte-integrations/bases/connector-acceptance-test/connector_acceptance_test/utils/backward_compatibility.py @@ -51,14 +51,15 @@ def compute_diffs(self): # pragma: no cover def assert_is_backward_compatible(self): # pragma: no cover pass - def check_if_value_of_type_field_changed(self, diff: DeepDiff): - """Check if a type was changed on a property""" - # Detect type value change in case type field is declared as a string (e.g "str" -> "int"): - changes_on_property_type = [ - change for change in diff.get("values_changed", []) if {"properties", "type"}.issubset(change.path(output_format="list")) - ] - if changes_on_property_type: - self._raise_error("The'type' field value was changed.", diff) + def check_if_value_of_a_field_changed(self, diff: DeepDiff, field: str): + """ + Check if a type / airbyte_type / format was changed on a property. + Detect field value change: "str" -> "int" / "date-time" -> "date" / "timestamp_without_timezone" -> "timestamp_with_timezone" + """ + diffs = diff.get("values_changed", set()) | diff.get("dictionary_item_added", set()) | diff.get("dictionary_item_removed", set()) + field_value_changes = [change for change in diffs if {"properties", field}.issubset(change.path(output_format="list"))] + if field_value_changes: + self._raise_error(f"The '{field}' field value was changed.", diff) def check_if_new_type_was_added(self, diff: DeepDiff): # pragma: no cover """Detect type value added to type list if new type value is not None (e.g ["str"] -> ["str", "int"])""" @@ -129,7 +130,9 @@ def compute_diffs(self): def assert_is_backward_compatible(self): self.check_if_declared_new_required_field(self.connection_specification_diff) self.check_if_added_a_new_required_property(self.connection_specification_diff) - self.check_if_value_of_type_field_changed(self.connection_specification_diff) + self.check_if_value_of_a_field_changed(self.connection_specification_diff, "type") + self.check_if_value_of_a_field_changed(self.connection_specification_diff, "airbyte_type") + self.check_if_value_of_a_field_changed(self.connection_specification_diff, "format") # self.check_if_new_type_was_added(self.connection_specification_diff) We want to allow type expansion atm self.check_if_type_of_type_field_changed(self.connection_specification_diff, allow_type_widening=True) self.check_if_field_was_made_not_nullable(self.connection_specification_diff) @@ -257,8 +260,10 @@ def compute_diffs(self): def assert_is_backward_compatible(self): self.check_if_stream_was_removed(self.streams_json_schemas_diff) - self.check_if_value_of_type_field_changed(self.streams_json_schemas_diff) self.check_if_type_of_type_field_changed(self.streams_json_schemas_diff, allow_type_widening=False) + self.check_if_value_of_a_field_changed(self.streams_json_schemas_diff, "type") + self.check_if_value_of_a_field_changed(self.streams_json_schemas_diff, "format") + self.check_if_value_of_a_field_changed(self.streams_json_schemas_diff, "airbyte_type") self.check_if_field_removed(self.streams_json_schemas_diff) self.check_if_cursor_field_was_changed(self.streams_cursor_fields_diff) diff --git a/airbyte-integrations/bases/connector-acceptance-test/pyproject.toml b/airbyte-integrations/bases/connector-acceptance-test/pyproject.toml index 141db6810674..6e0143119ac1 100644 --- a/airbyte-integrations/bases/connector-acceptance-test/pyproject.toml +++ b/airbyte-integrations/bases/connector-acceptance-test/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "poetry.core.masonry.api" [tool.poetry] name = "connector-acceptance-test" -version = "1.0.0" +version = "2.0.1" description = "Contains acceptance tests for connectors." authors = ["Airbyte "] license = "MIT" diff --git a/airbyte-integrations/bases/connector-acceptance-test/sample_files/acceptance-test-config.yml b/airbyte-integrations/bases/connector-acceptance-test/sample_files/acceptance-test-config.yml index efb1840ec4fc..dc6a5ea47839 100644 --- a/airbyte-integrations/bases/connector-acceptance-test/sample_files/acceptance-test-config.yml +++ b/airbyte-integrations/bases/connector-acceptance-test/sample_files/acceptance-test-config.yml @@ -22,9 +22,6 @@ tests: - config_path: "secrets/config.json" configured_catalog_path: "sample_files/configured_catalog.json" future_state_path: "sample_files/abnormal_state.json" - cursor_paths: - subscription_changes: ["timestamp"] - email_events: ["timestamp"] full_refresh: - config_path: "secrets/config.json" configured_catalog_path: "sample_files/configured_catalog.json" diff --git a/airbyte-integrations/bases/connector-acceptance-test/unit_tests/test_backward_compatibility.py b/airbyte-integrations/bases/connector-acceptance-test/unit_tests/test_backward_compatibility.py index d2fe626c25f8..0e3d10bfea4b 100644 --- a/airbyte-integrations/bases/connector-acceptance-test/unit_tests/test_backward_compatibility.py +++ b/airbyte-integrations/bases/connector-acceptance-test/unit_tests/test_backward_compatibility.py @@ -488,6 +488,132 @@ def as_pytest_param(self): should_fail=True, is_valid_json_schema=False, ), + Transition( + ConnectorSpecification( + connectionSpecification={ + "type": "object", + "properties": { + "my_string": {"type": "string"}, + }, + } + ), + ConnectorSpecification( + connectionSpecification={ + "type": "object", + "properties": { + "my_string": {"type": "string", "format": "date"}, + }, + } + ), + name="Adding a 'format' field should fail.", + should_fail=True, + is_valid_json_schema=False, + ), + Transition( + ConnectorSpecification( + connectionSpecification={ + "type": "object", + "properties": { + "my_string": {"type": "string", "format": "date"}, + }, + } + ), + ConnectorSpecification( + connectionSpecification={ + "type": "object", + "properties": { + "my_string": {"type": "string"}, + }, + } + ), + name="Removing a 'format' field should fail.", + should_fail=True, + is_valid_json_schema=False, + ), + Transition( + ConnectorSpecification( + connectionSpecification={ + "type": "object", + "properties": { + "my_string": {"type": "string", "format": "date"}, + }, + } + ), + ConnectorSpecification( + connectionSpecification={ + "type": "object", + "properties": { + "my_string": {"type": "string", "format": "date-time"}, + }, + } + ), + name="Changing a 'format' field value should fail.", + should_fail=True, + is_valid_json_schema=False, + ), + Transition( + ConnectorSpecification( + connectionSpecification={ + "type": "object", + "properties": { + "my_string": {"type": "string", "format": "time"}, + }, + } + ), + ConnectorSpecification( + connectionSpecification={ + "type": "object", + "properties": { + "my_string": {"type": "string", "format": "time", "airbyte_type": "time_with_timezone"}, + }, + } + ), + name="Adding an 'airbyte_type' field should fail.", + should_fail=True, + is_valid_json_schema=False, + ), + Transition( + ConnectorSpecification( + connectionSpecification={ + "type": "object", + "properties": { + "my_string": {"type": "string", "format": "time", "airbyte_type": "time_with_timezone"}, + }, + } + ), + ConnectorSpecification( + connectionSpecification={ + "type": "object", + "properties": { + "my_string": {"type": "string", "format": "time"}, + }, + } + ), + name="Removing an 'airbyte_type' field should fail.", + should_fail=True, + is_valid_json_schema=False, + ), + Transition( + ConnectorSpecification( + connectionSpecification={ + "type": "object", + "properties": { + "my_string": {"type": "string", "format": "time", "airbyte_type": "time_with_timezone"}, + }, + } + ), + ConnectorSpecification( + connectionSpecification={ + "type": "object", + "properties": { + "my_string": {"type": "string", "format": "time", "airbyte_type": "time_without_timezone"}, + }, + } + ), + name="Changing an 'airbyte_type' field value should fail.", + should_fail=True, + is_valid_json_schema=False, + ) ] VALID_SPEC_TRANSITIONS = [ @@ -1042,6 +1168,141 @@ def test_validate_previous_configs(previous_connector_spec, actual_connector_spe ) }, ), + Transition( + name="Removing a field format should fail.", + should_fail=True, + previous={ + "test_stream": AirbyteStream.parse_obj( + { + "name": "test_stream", + "json_schema": {"properties": {"user": {"type": "object", "properties": {"created": {"type": "string", "format": "date"}}}}}, + "supported_sync_modes": ["full_refresh"], + } + ) + }, + current={ + "test_stream": AirbyteStream.parse_obj( + { + "name": "test_stream", + "json_schema": {"properties": {"user": {"type": "object", "properties": {"created": {"type": "string"}}}}}, + "supported_sync_modes": ["full_refresh"], + } + ) + }, + ), + Transition( + name="Adding a field format should fail.", + should_fail=True, + previous={ + "test_stream": AirbyteStream.parse_obj( + { + "name": "test_stream", + "json_schema": {"properties": {"user": {"type": "object", "properties": {"created": {"type": "string"}}}}}, + "supported_sync_modes": ["full_refresh"], + } + ) + }, + current={ + "test_stream": AirbyteStream.parse_obj( + { + "name": "test_stream", + "json_schema": {"properties": {"user": {"type": "object", "properties": {"created": {"type": "string", "format": "date"}}}}}, + "supported_sync_modes": ["full_refresh"], + } + ) + }, + ), + Transition( + name="Changing a field format should fail.", + should_fail=True, + previous={ + "test_stream": AirbyteStream.parse_obj( + { + "name": "test_stream", + "json_schema": {"properties": {"user": {"type": "object", "properties": {"created": {"type": "string", "format": "date-time"}}}}}, + "supported_sync_modes": ["full_refresh"], + } + ) + }, + current={ + "test_stream": AirbyteStream.parse_obj( + { + "name": "test_stream", + "json_schema": { + "properties": {"user": {"type": "object", "properties": {"created": {"type": "string", "format": "date"}}}}}, + "supported_sync_modes": ["full_refresh"], + } + ) + }, + ), + Transition( + name="Removing a field airbyte type should fail.", + should_fail=True, + previous={ + "test_stream": AirbyteStream.parse_obj( + { + "name": "test_stream", + "json_schema": {"properties": {"user": {"type": "object", "properties": {"created": {"type": "string", "format": "time", "airbyte_type": "type_with_timezone"}}}}}, + "supported_sync_modes": ["full_refresh"], + } + ) + }, + current={ + "test_stream": AirbyteStream.parse_obj( + { + "name": "test_stream", + "json_schema": {"properties": {"user": {"type": "object", "properties": {"created": {"type": "string", "format": "time"}}}}}, + "supported_sync_modes": ["full_refresh"], + } + ) + }, + ), + Transition( + name="Adding a field airbyte type should fail.", + should_fail=True, + previous={ + "test_stream": AirbyteStream.parse_obj( + { + "name": "test_stream", + "json_schema": {"properties": {"user": {"type": "object", "properties": {"created": {"type": "string", "format": "time"}}}}}, + "supported_sync_modes": ["full_refresh"], + } + ) + }, + current={ + "test_stream": AirbyteStream.parse_obj( + { + "name": "test_stream", + "json_schema": {"properties": {"user": {"type": "object", "properties": {"created": {"type": "string", "format": "time", "airbyte_type": "time_with_timezone"}}}}}, + "supported_sync_modes": ["full_refresh"], + } + ) + }, + ), + Transition( + name="Changing a field airbyte type should fail.", + should_fail=True, + previous={ + "test_stream": AirbyteStream.parse_obj( + { + "name": "test_stream", + "json_schema": { + "properties": {"user": {"type": "object", "properties": {"created": {"type": "string", "format": "time", "airbyte_type": "time_with_timezone"}}}}}, + "supported_sync_modes": ["full_refresh"], + } + ) + }, + current={ + "test_stream": AirbyteStream.parse_obj( + { + "name": "test_stream", + "json_schema": { + "properties": {"user": {"type": "object", "properties": {"created": {"type": "string", "format": "time", "airbyte_type": "time_without_timezone"}}}}}, + "supported_sync_modes": ["full_refresh"], + } + ) + }, + ), Transition( name="Renaming a stream should fail.", should_fail=True, diff --git a/airbyte-integrations/bases/connector-acceptance-test/unit_tests/test_config.py b/airbyte-integrations/bases/connector-acceptance-test/unit_tests/test_config.py index 671129ceb922..2687bfaf5101 100644 --- a/airbyte-integrations/bases/connector-acceptance-test/unit_tests/test_config.py +++ b/airbyte-integrations/bases/connector-acceptance-test/unit_tests/test_config.py @@ -100,33 +100,6 @@ def test_config_parsing(self, raw_config, expected_output_config, expected_error parsed_config = config.Config.parse_obj(raw_config) assert parsed_config == expected_output_config - def test_cursor_path_union_str(self): - parsed_config = config.Config.parse_obj(self._config_with_incremental_cursor_paths(["2331"])) - assert type(parsed_config.acceptance_tests.incremental.tests[0].cursor_paths["stream_name"][0]) == str - - def test_cursor_path_union_int(self): - parsed_config = config.Config.parse_obj(self._config_with_incremental_cursor_paths([2331])) - assert type(parsed_config.acceptance_tests.incremental.tests[0].cursor_paths["stream_name"][0]) == int - - @staticmethod - def _config_with_incremental_cursor_paths(cursor_paths): - return { - "connector_image": "foo", - "acceptance_tests": { - "incremental": { - "tests": [ - { - "config_path": "config_path.json", - "cursor_paths": { - "stream_name": cursor_paths - } - } - ] - } - }, - "test_strictness_level": "low" - } - @pytest.mark.parametrize( "legacy_config, expected_parsed_config", [ diff --git a/airbyte-integrations/bases/connector-acceptance-test/unit_tests/test_incremental.py b/airbyte-integrations/bases/connector-acceptance-test/unit_tests/test_incremental.py index 58256392d49f..47db3442e13e 100644 --- a/airbyte-integrations/bases/connector-acceptance-test/unit_tests/test_incremental.py +++ b/airbyte-integrations/bases/connector-acceptance-test/unit_tests/test_incremental.py @@ -29,11 +29,7 @@ from connector_acceptance_test.config import Config, EmptyStreamConfiguration, IncrementalConfig from connector_acceptance_test.tests import test_incremental from connector_acceptance_test.tests.test_incremental import TestIncremental as _TestIncremental -from connector_acceptance_test.tests.test_incremental import ( - compare_cursor_with_threshold, - future_state_configuration_fixture, - future_state_fixture, -) +from connector_acceptance_test.tests.test_incremental import future_state_configuration_fixture, future_state_fixture pytestmark = [ pytest.mark.anyio, @@ -66,93 +62,70 @@ def build_per_stream_state_message( ) -@pytest.mark.parametrize( - "record_value, state_value, threshold_days, expected_result", - [ - (datetime(2020, 10, 10), datetime(2020, 10, 9), 0, True), - (datetime(2020, 10, 10), datetime(2020, 10, 11), 0, False), - (datetime(2020, 10, 10), datetime(2020, 10, 11), 1, True), - (pendulum.parse("2020-10-10"), pendulum.parse("2020-10-09"), 0, True), - (pendulum.parse("2020-10-10"), pendulum.parse("2020-10-11"), 0, False), - (pendulum.parse("2020-10-10"), pendulum.parse("2020-10-11"), 1, True), - ("2020-10-10", "2020-10-09", 0, True), - ("2020-10-10", "2020-10-11", 0, False), - ("2020-10-10", "2020-10-11", 1, True), - (1602288000000, 1602201600000, 0, True), - (1602288000000, 1602374400000, 0, False), - (1602288000000, 1602374400000, 1, True), - (1602288000, 1602201600, 0, True), - (1602288000, 1602374400, 0, False), - (1602288000, 1602374400, 1, True), - ("aaa", "bbb", 0, False), - ("bbb", "aaa", 0, True), - ], -) -def test_compare_cursor_with_threshold(record_value, state_value, threshold_days, expected_result): - assert compare_cursor_with_threshold(record_value, state_value, threshold_days) == expected_result - - @pytest.mark.parametrize("cursor_type", ["date", "string"]) @pytest.mark.parametrize( - "records1, records2, latest_state, threshold_days, expected_error", + "records1, records2, latest_state, expected_error", [ - ([{"date": "2020-01-01"}, {"date": "2020-01-02"}], [], "2020-01-02", 0, does_not_raise()), + ( + [{"date": "2020-01-01"}, {"date": "2020-01-02"}], + [], + "2020-01-01", + does_not_raise() + ), ( [{"date": "2020-01-02"}, {"date": "2020-01-03"}], [], "2020-01-02", - 0, - pytest.raises(AssertionError, match="First incremental sync should produce records younger"), + does_not_raise(), ), ( [{"date": "2020-01-01"}, {"date": "2020-01-02"}], [{"date": "2020-01-02"}, {"date": "2020-01-03"}], - "2020-01-02", - 0, + "2020-01-03", does_not_raise(), ), ( + [], [{"date": "2020-01-01"}], - [{"date": "2020-01-01"}], - "2020-01-02", - 0, - pytest.raises(AssertionError, match="Second incremental sync should produce records older"), + "2020-01-04", + pytest.raises(AssertionError, match="First Read should produce at least one record"), ), ( [{"date": "2020-01-01"}, {"date": "2020-01-02"}], [{"date": "2020-01-01"}, {"date": "2020-01-02"}], - "2020-01-03", - 2, - does_not_raise(), + "2020-01-05", + pytest.raises(AssertionError, match="Records should change between reads but did not."), ), ( [{"date": "2020-01-02"}, {"date": "2020-01-03"}], [], - "2020-01-02", - 2, - pytest.raises(AssertionError, match="First incremental sync should produce records younger"), + "2020-01-06", + does_not_raise(), ), ( [{"date": "2020-01-01"}], [{"date": "2020-01-02"}], - "2020-01-06", - 3, - pytest.raises(AssertionError, match="Second incremental sync should produce records older"), + "2020-01-07", + does_not_raise(), + ), + ( + [{"date": "2020-01-01"}], + [{"date": "2020-01-02"}], + "someunparseablenonsensestate", + does_not_raise(), ), ], ) @pytest.mark.parametrize( "run_per_stream_test", [ - # pytest.param(False, id="test_two_sequential_reads_using_a_mock_connector_emitting_legacy_state"), + pytest.param(False, id="test_two_sequential_reads_using_a_mock_connector_emitting_legacy_state"), pytest.param(True, id="test_two_sequential_reads_using_a_mock_connector_emitting_per_stream_state"), ], ) async def test_incremental_two_sequential_reads( - mocker, records1, records2, latest_state, threshold_days, cursor_type, expected_error, run_per_stream_test + mocker, records1, records2, latest_state, cursor_type, expected_error, run_per_stream_test ): - input_config = IncrementalConfig(threshold_days=threshold_days) - cursor_paths = {"test_stream": ["date"]} catalog = ConfiguredAirbyteCatalog( streams=[ ConfiguredAirbyteStream( @@ -188,96 +161,14 @@ async def test_incremental_two_sequential_reads( t = _TestIncremental() with expected_error: await t.test_two_sequential_reads( - inputs=input_config, - connector_config=MagicMock(), - configured_catalog_for_incremental=catalog, - cursor_paths=cursor_paths, - docker_runner=docker_runner_mock, - ) - - -@pytest.mark.parametrize( - "stream_name, cursor_type, cursor_paths, records1, records2, latest_state, expected_error", - [ - ( - "test_stream", - {"dateCreated": {"type": "string", "format": "date-time"}}, - {"test_stream": ["dateCreated"]}, - [{"dateCreated": "2020-01-01T01:01:01.000000Z"}, {"dateCreated": "2020-01-02T01:01:01.000000Z"}], - [], - {"dateCreated": "2020-01-02T01:01:01.000000Z"}, - does_not_raise(), - ), - ( - "test_stream", - {"dateCreated": {"type": "string", "format": "date-time"}}, - {"test_stream": ["dateCreated"]}, - [{"dateCreated": "2020-01-01T01:01:01.000000Z"}, {"dateCreated": "2020-01-02T01:01:01.000000Z"}], - [], - {}, - pytest.raises(AssertionError, match="At least one valid state should be produced, given a cursor path"), - ), - ], -) -@pytest.mark.parametrize( - "run_per_stream_test", - [ - pytest.param(False, id="test_two_sequential_reads_using_a_mock_connector_emitting_legacy_state"), - pytest.param(True, id="test_two_sequential_reads_using_a_mock_connector_emitting_per_stream_state"), - ], -) -async def test_incremental_two_sequential_reads_state_invalid( - mocker, stream_name, records1, records2, latest_state, cursor_type, cursor_paths, expected_error, run_per_stream_test -): - input_config = IncrementalConfig() - catalog = ConfiguredAirbyteCatalog( - streams=[ - ConfiguredAirbyteStream( - stream=AirbyteStream( - name=stream_name, - json_schema={"type": "object", "properties": cursor_type}, - supported_sync_modes=[SyncMode.full_refresh, SyncMode.incremental], - ), - sync_mode=SyncMode.incremental, - destination_sync_mode=DestinationSyncMode.overwrite, - default_cursor_field=["dateCreated"], - cursor_field=["dateCreated"], - ) - ] - ) - - if run_per_stream_test: - call_read_output_messages = [ - *build_messages_from_record_data(stream_name, records1), - build_per_stream_state_message(descriptor=StreamDescriptor(name=stream_name), stream_state=latest_state), - ] - else: - stream_state = dict() - stream_state[stream_name] = latest_state - call_read_output_messages = [ - *build_messages_from_record_data(stream_name, records1), - build_state_message(stream_state), - ] - - call_read_with_state_output_messages = build_messages_from_record_data(stream_name, records2) - - docker_runner_mock = MagicMock() - docker_runner_mock.call_read = mocker.AsyncMock(return_value=call_read_output_messages) - docker_runner_mock.call_read_with_state = mocker.AsyncMock(return_value=call_read_with_state_output_messages) - - t = _TestIncremental() - with expected_error: - await t.test_two_sequential_reads( - inputs=input_config, connector_config=MagicMock(), configured_catalog_for_incremental=catalog, - cursor_paths=cursor_paths, docker_runner=docker_runner_mock, ) @pytest.mark.parametrize( - "records, state_records, threshold_days, expected_error", + "first_records, subsequent_records, expected_error", [ pytest.param( [ @@ -294,9 +185,6 @@ async def test_incremental_two_sequential_reads_state_invalid( ], [ [ - {"type": Type.STATE, "name": "test_stream", "stream_state": {}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-07"}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-08"}}, {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-09"}}, {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-09"}}, {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-10"}}, @@ -305,6 +193,27 @@ async def test_incremental_two_sequential_reads_state_invalid( {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-12"}}, {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-13"}}, ], + [ + {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-11"}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-11"}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-12"}}, + {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-13"}}, + ], + [ + {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-13"}}, + ], + ], + does_not_raise(), + id="test_incremental_with_2_states", + ), + pytest.param( + [ + {"type": Type.STATE, "name": "test_stream", "stream_state": {}}, + {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-09"}}, + {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-11"}}, + {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-13"}}, + ], + [ [ {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-09"}}, {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-09"}}, @@ -324,43 +233,40 @@ async def test_incremental_two_sequential_reads_state_invalid( {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-13"}}, ], ], - 0, - does_not_raise(), - id="test_incremental_with_2_states", + pytest.raises(AssertionError, match="First Read should produce at least one record"), + id="test_incremental_no_record_on_first_read_raises_error", ), pytest.param( [ - {"type": Type.STATE, "name": "test_stream", "stream_state": {}}, {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-07"}}, {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-08"}}, - {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-09"}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-09"}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-10"}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-11"}}, {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-12"}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-13"}}, - {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-11"}}, ], [ [ - {"type": Type.STATE, "name": "test_stream", "stream_state": {}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-07"}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-08"}}, {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-09"}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-12"}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-13"}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-09"}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-10"}}, {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-11"}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-11"}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-12"}}, + {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-13"}}, ], [ - {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-09"}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-12"}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-13"}}, {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-11"}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-11"}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-12"}}, + {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-13"}}, ], [ - {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-11"}}, + {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-13"}}, ], ], - 0, - pytest.raises(AssertionError), - id="test_first_incremental_only_younger_records", + pytest.raises(AssertionError, match="First Read should produce at least one state"), + id="test_incremental_no_state_on_first_read_raises_error", ), pytest.param( [ @@ -368,33 +274,23 @@ async def test_incremental_two_sequential_reads_state_invalid( {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-07"}}, {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-08"}}, {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-09"}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-07"}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-08"}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-12"}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-13"}}, {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-11"}}, ], [ - [ - {"type": Type.STATE, "name": "test_stream", "stream_state": {}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-07"}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-08"}}, - {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-09"}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-07"}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-08"}}, - {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-11"}}, - ], [ {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-09"}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-07"}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-08"}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-12"}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-13"}}, {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-11"}}, ], [ {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-11"}}, ], ], - 3, does_not_raise(), - id="test_incremental_with_threshold", + id="test_first_incremental_only_younger_records", ), pytest.param( [ @@ -421,29 +317,10 @@ async def test_incremental_two_sequential_reads_state_invalid( {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-11"}}, {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-12"}}, {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-13"}}, - ], - [ - {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-09"}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-04"}}, # out of order - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-05"}}, # out of order - {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-11"}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-11"}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-12"}}, - {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-13"}}, - ], - [ - {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-11"}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-11"}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-12"}}, - {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-13"}}, - ], - [ - {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-13"}}, - ], + ] ], - 0, - pytest.raises(AssertionError), - id="test_incremental_with_incorrect_messages", + pytest.raises(AssertionError, match="Records for subsequent reads with new state should be different"), + id="test_incremental_returns_identical", ), pytest.param( [ @@ -472,31 +349,6 @@ async def test_incremental_two_sequential_reads_state_invalid( }, ], [ - [ - {"type": Type.STATE, "name": "test_stream", "stream_state": {}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-07"}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-08"}}, - {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-09"}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-09"}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-10"}}, - {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-11"}}, - {"type": Type.RECORD, "name": "test_stream_2", "data": {"date": "2022-05-11"}}, - {"type": Type.RECORD, "name": "test_stream_2", "data": {"date": "2022-05-12"}}, - { - "type": Type.STATE, - "name": "test_stream_2", - "stream_state": {"date": "2022-05-13"}, - "data": {"test_stream": {"date": "2022-05-11"}, "test_stream_2": {"date": "2022-05-13"}}, - }, - {"type": Type.RECORD, "name": "test_stream_2", "data": {"date": "2022-05-13"}}, - {"type": Type.RECORD, "name": "test_stream_2", "data": {"date": "2022-05-14"}}, - { - "type": Type.STATE, - "name": "test_stream_2", - "stream_state": {"date": "2022-05-15"}, - "data": {"test_stream": {"date": "2022-05-11"}, "test_stream_2": {"date": "2022-05-15"}}, - }, - ], [ {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-09"}}, {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-09"}}, @@ -563,7 +415,6 @@ async def test_incremental_two_sequential_reads_state_invalid( }, ], ], - 0, does_not_raise(), id="test_incremental_with_multiple_streams", ), @@ -576,17 +427,31 @@ async def test_incremental_two_sequential_reads_state_invalid( ], [ [ - {"type": Type.STATE, "name": "test_stream", "stream_state": None}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-07"}}, - {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-08"}}, {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-09"}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-09"}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-10"}}, + {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-11"}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-11"}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-12"}}, + {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-13"}}, ], - [], ], - 0, does_not_raise(), id="test_incremental_with_none_state", ), + pytest.param( + [ + {"type": Type.STATE, "name": "test_stream", "stream_state": {}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-07"}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-08"}}, + {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-09"}}, + ], + [ + [], + ], + does_not_raise(), + id="test_incremental_with_empty_second_read", + ), ], ) @pytest.mark.parametrize( @@ -596,9 +461,7 @@ async def test_incremental_two_sequential_reads_state_invalid( pytest.param(True, id="test_read_with_multiple_states_using_a_mock_connector_emitting_per_stream_state"), ], ) -async def test_per_stream_read_with_multiple_states(mocker, records, state_records, threshold_days, expected_error, run_per_stream_test): - input_config = IncrementalConfig(threshold_days=threshold_days) - cursor_paths = {"test_stream": ["date"], "test_stream_2": ["date"]} +async def test_per_stream_read_with_multiple_states(mocker, first_records, subsequent_records, expected_error, run_per_stream_test): catalog = ConfiguredAirbyteCatalog( streams=[ ConfiguredAirbyteStream( @@ -631,7 +494,7 @@ async def test_per_stream_read_with_multiple_states(mocker, records, state_recor ) if record["type"] == Type.STATE else build_record_message(record["name"], record["data"]) - for record in list(records) + for record in list(first_records) ] call_read_with_state_output_messages = [ [ @@ -642,14 +505,14 @@ async def test_per_stream_read_with_multiple_states(mocker, records, state_recor else build_record_message(stream=record["name"], data=record["data"]) for record in state_records_group ] - for state_records_group in list(state_records) + for state_records_group in list(subsequent_records) ] else: call_read_output_messages = [ build_state_message(state=record.get("data") or {record["name"]: record["stream_state"]}) if record["type"] == Type.STATE else build_record_message(stream=record["name"], data=record["data"]) - for record in list(records) + for record in list(first_records) ] call_read_with_state_output_messages = [ [ @@ -658,7 +521,7 @@ async def test_per_stream_read_with_multiple_states(mocker, records, state_recor else build_record_message(stream=record["name"], data=record["data"]) for record in state_records_group ] - for state_records_group in list(state_records) + for state_records_group in list(subsequent_records) ] docker_runner_mock = MagicMock() @@ -666,22 +529,22 @@ async def test_per_stream_read_with_multiple_states(mocker, records, state_recor docker_runner_mock.call_read_with_state = mocker.AsyncMock(side_effect=call_read_with_state_output_messages) t = _TestIncremental() + # test if skipped with expected_error: await t.test_read_sequential_slices( - inputs=input_config, connector_config=MagicMock(), configured_catalog_for_incremental=catalog, - cursor_paths=cursor_paths, docker_runner=docker_runner_mock, + inputs=IncrementalConfig(), ) -def test_config_skip_test(): +async def test_config_skip_test(mocker): docker_runner_mock = MagicMock() - docker_runner_mock.call_read.return_value = [] + docker_runner_mock.call_read = mocker.AsyncMock(return_value=[]) t = _TestIncremental() with patch.object(pytest, "skip", return_value=None): - t.test_read_sequential_slices( + await t.test_read_sequential_slices( inputs=IncrementalConfig(skip_comprehensive_incremental_tests=True), connector_config=MagicMock(), configured_catalog_for_incremental=ConfiguredAirbyteCatalog( @@ -698,13 +561,64 @@ def test_config_skip_test(): ) ] ), - cursor_paths={}, docker_runner=docker_runner_mock, ) # This is guaranteed to fail when the test gets executed docker_runner_mock.call_read.assert_not_called() +async def test_state_skip_test(mocker): + docker_runner_mock = MagicMock() + + first_records = [ + {"type": Type.STATE, "name": "test_stream", "stream_state": {}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-07"}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-08"}}, + {"type": Type.STATE, "name": "test_stream", "stream_state": {"date": "2022-05-09"}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-09"}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-10"}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-11"}}, + {"type": Type.RECORD, "name": "test_stream", "data": {"date": "2022-05-12"}}, + ] + + call_read_output_messages = [ + build_per_stream_state_message( + descriptor=StreamDescriptor(name=record["name"]), stream_state=record["stream_state"], data=record.get("data", None) + ) + if record["type"] == Type.STATE + else build_record_message(record["name"], record["data"]) + for record in list(first_records) + ] + + # There needs to be at least 3 state messages for the test to run + docker_runner_mock.call_read = mocker.AsyncMock(return_value=call_read_output_messages) + + t = _TestIncremental() + with patch.object(pytest, "skip", return_value=None): + await t.test_read_sequential_slices( + inputs=IncrementalConfig(), + connector_config=MagicMock(), + configured_catalog_for_incremental=ConfiguredAirbyteCatalog( + streams=[ + ConfiguredAirbyteStream( + stream=AirbyteStream( + name="test_stream", + json_schema={"type": "object", "properties": {"date": {"type": "date"}}}, + supported_sync_modes=[SyncMode.full_refresh, SyncMode.incremental], + ), + sync_mode=SyncMode.incremental, + destination_sync_mode=DestinationSyncMode.overwrite, + cursor_field=["date"], + ) + ] + ), + docker_runner=docker_runner_mock, + ) + + # This is guaranteed to fail when the test gets executed + docker_runner_mock.call_read.assert_called() + docker_runner_mock.call_read_with_state.assert_not_called() + @pytest.mark.parametrize( "read_output, expectation", diff --git a/airbyte-integrations/bases/connector-acceptance-test/unit_tests/test_json_schema_helper.py b/airbyte-integrations/bases/connector-acceptance-test/unit_tests/test_json_schema_helper.py index afb0ae67889c..a8f2f884d1f3 100644 --- a/airbyte-integrations/bases/connector-acceptance-test/unit_tests/test_json_schema_helper.py +++ b/airbyte-integrations/bases/connector-acceptance-test/unit_tests/test_json_schema_helper.py @@ -3,7 +3,7 @@ # from enum import Enum -from typing import Any, List, Text, Union +from typing import Any, Iterable, List, Text, Tuple, Union import pendulum import pytest @@ -16,11 +16,34 @@ SyncMode, Type, ) -from connector_acceptance_test.tests.test_incremental import records_with_state from connector_acceptance_test.utils.json_schema_helper import JsonSchemaHelper, get_expected_schema_structure, get_object_structure from pydantic import BaseModel +def records_with_state(records, state, stream_mapping, state_cursor_paths) -> Iterable[Tuple[Any, Any, Any]]: + """Iterate over records and return cursor value with corresponding cursor value from state""" + + for record in records: + stream_name = record.record.stream + stream = stream_mapping[stream_name] + helper = JsonSchemaHelper(schema=stream.stream.json_schema) + cursor_field = helper.field(stream.cursor_field) + record_value = cursor_field.parse(record=record.record.data) + try: + if state[stream_name] is None: + continue + + # first attempt to parse the state value assuming the state object is namespaced on stream names + state_value = cursor_field.parse(record=state[stream_name], path=state_cursor_paths[stream_name]) + except KeyError: + try: + # try second time as an absolute path in state file (i.e. bookmarks -> stream_name -> column -> value) + state_value = cursor_field.parse(record=state, path=state_cursor_paths[stream_name]) + except KeyError: + continue + yield record_value, state_value, stream_name + + @pytest.fixture(name="simple_state") def simple_state_fixture(): return { diff --git a/airbyte-integrations/bases/debezium/build.gradle b/airbyte-integrations/bases/debezium/build.gradle index 5e515f0c6876..1df3052e4ec9 100644 --- a/airbyte-integrations/bases/debezium/build.gradle +++ b/airbyte-integrations/bases/debezium/build.gradle @@ -16,9 +16,9 @@ dependencies { testFixturesImplementation project(':airbyte-integrations:bases:base-java') testImplementation project(':airbyte-test-utils') - testImplementation libs.connectors.testcontainers.jdbc - testImplementation libs.connectors.testcontainers.mysql - testImplementation libs.connectors.testcontainers.postgresql + testImplementation libs.testcontainers.jdbc + testImplementation libs.testcontainers.mysql + testImplementation libs.testcontainers.postgresql testFixturesImplementation 'org.junit.jupiter:junit-jupiter-engine:5.4.2' testFixturesImplementation 'org.junit.jupiter:junit-jupiter-api:5.4.2' diff --git a/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/AirbyteDebeziumHandler.java b/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/AirbyteDebeziumHandler.java index 97892af82046..dcc1c0eaaf86 100644 --- a/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/AirbyteDebeziumHandler.java +++ b/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/AirbyteDebeziumHandler.java @@ -4,12 +4,18 @@ package io.airbyte.integrations.debezium; +import static io.airbyte.integrations.debezium.DebeziumIteratorConstants.SYNC_CHECKPOINT_DURATION; +import static io.airbyte.integrations.debezium.DebeziumIteratorConstants.SYNC_CHECKPOINT_DURATION_PROPERTY; +import static io.airbyte.integrations.debezium.DebeziumIteratorConstants.SYNC_CHECKPOINT_RECORDS; +import static io.airbyte.integrations.debezium.DebeziumIteratorConstants.SYNC_CHECKPOINT_RECORDS_PROPERTY; + import com.fasterxml.jackson.databind.JsonNode; import io.airbyte.commons.util.AutoCloseableIterator; import io.airbyte.commons.util.AutoCloseableIterators; import io.airbyte.commons.util.MoreIterators; import io.airbyte.db.jdbc.JdbcUtils; import io.airbyte.integrations.debezium.internals.*; +import io.airbyte.integrations.debezium.internals.AirbyteSchemaHistoryStorage.SchemaHistory; import io.airbyte.protocol.models.v0.AirbyteMessage; import io.airbyte.protocol.models.v0.ConfiguredAirbyteCatalog; import io.airbyte.protocol.models.v0.ConfiguredAirbyteStream; @@ -72,7 +78,7 @@ public AutoCloseableIterator getSnapshotIterators( config, catalogContainingStreamsToSnapshot, offsetManager, - schemaHistoryManager(new EmptySavedInfo()), + schemaHistoryManager(new SchemaHistory<>(Optional.empty(), false), cdcStateHandler.compressSchemaHistoryForState()), debeziumConnectorType); tableSnapshotPublisher.start(queue); @@ -103,7 +109,9 @@ public AutoCloseableIterator getIncrementalIterators(final Confi final LinkedBlockingQueue> queue = new LinkedBlockingQueue<>(queueSize.orElse(QUEUE_CAPACITY)); final AirbyteFileOffsetBackingStore offsetManager = AirbyteFileOffsetBackingStore.initializeState(cdcSavedInfoFetcher.getSavedOffset(), addDbNameToState ? Optional.ofNullable(config.get(JdbcUtils.DATABASE_KEY).asText()) : Optional.empty()); - final Optional schemaHistoryManager = schemaHistoryManager(cdcSavedInfoFetcher); + final Optional schemaHistoryManager = + trackSchemaHistory ? schemaHistoryManager(cdcSavedInfoFetcher.getSavedSchemaHistory(), cdcStateHandler.compressSchemaHistoryForState()) + : Optional.empty(); final DebeziumRecordPublisher publisher = new DebeziumRecordPublisher(connectorProperties, config, catalog, offsetManager, schemaHistoryManager, debeziumConnectorType); publisher.start(queue); @@ -117,10 +125,10 @@ public AutoCloseableIterator getIncrementalIterators(final Confi firstRecordWaitTime); final Duration syncCheckpointDuration = - config.get("sync_checkpoint_seconds") != null ? Duration.ofSeconds(config.get("sync_checkpoint_seconds").asLong()) - : DebeziumStateDecoratingIterator.SYNC_CHECKPOINT_DURATION; - final Long syncCheckpointRecords = config.get("sync_checkpoint_records") != null ? config.get("sync_checkpoint_records").asLong() - : DebeziumStateDecoratingIterator.SYNC_CHECKPOINT_RECORDS; + config.get(SYNC_CHECKPOINT_DURATION_PROPERTY) != null ? Duration.ofSeconds(config.get(SYNC_CHECKPOINT_DURATION_PROPERTY).asLong()) + : SYNC_CHECKPOINT_DURATION; + final Long syncCheckpointRecords = config.get(SYNC_CHECKPOINT_RECORDS_PROPERTY) != null ? config.get(SYNC_CHECKPOINT_RECORDS_PROPERTY).asLong() + : SYNC_CHECKPOINT_RECORDS; return AutoCloseableIterators.fromIterator(new DebeziumStateDecoratingIterator<>( eventIterator, cdcStateHandler, @@ -134,31 +142,18 @@ public AutoCloseableIterator getIncrementalIterators(final Confi syncCheckpointRecords)); } - private Optional schemaHistoryManager(final CdcSavedInfoFetcher cdcSavedInfoFetcher) { + private Optional schemaHistoryManager(final SchemaHistory> schemaHistory, + final boolean compressSchemaHistoryForState) { if (trackSchemaHistory) { - return Optional.of(AirbyteSchemaHistoryStorage.initializeDBHistory(cdcSavedInfoFetcher.getSavedSchemaHistory())); + return Optional.of(AirbyteSchemaHistoryStorage.initializeDBHistory(schemaHistory, compressSchemaHistoryForState)); } return Optional.empty(); } - public static boolean shouldUseCDC(final ConfiguredAirbyteCatalog catalog) { + public static boolean isAnyStreamIncrementalSyncMode(final ConfiguredAirbyteCatalog catalog) { return catalog.getStreams().stream().map(ConfiguredAirbyteStream::getSyncMode) .anyMatch(syncMode -> syncMode == SyncMode.INCREMENTAL); } - private static class EmptySavedInfo implements CdcSavedInfoFetcher { - - @Override - public JsonNode getSavedOffset() { - return null; - } - - @Override - public Optional getSavedSchemaHistory() { - return Optional.empty(); - } - - } - } diff --git a/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/CdcSavedInfoFetcher.java b/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/CdcSavedInfoFetcher.java index dcd96fd3feae..431c0711d024 100644 --- a/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/CdcSavedInfoFetcher.java +++ b/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/CdcSavedInfoFetcher.java @@ -5,6 +5,7 @@ package io.airbyte.integrations.debezium; import com.fasterxml.jackson.databind.JsonNode; +import io.airbyte.integrations.debezium.internals.AirbyteSchemaHistoryStorage.SchemaHistory; import java.util.Optional; /** @@ -15,6 +16,6 @@ public interface CdcSavedInfoFetcher { JsonNode getSavedOffset(); - Optional getSavedSchemaHistory(); + SchemaHistory> getSavedSchemaHistory(); } diff --git a/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/CdcStateHandler.java b/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/CdcStateHandler.java index 16704ad135d5..21945d0b07bf 100644 --- a/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/CdcStateHandler.java +++ b/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/CdcStateHandler.java @@ -4,6 +4,7 @@ package io.airbyte.integrations.debezium; +import io.airbyte.integrations.debezium.internals.AirbyteSchemaHistoryStorage.SchemaHistory; import io.airbyte.protocol.models.v0.AirbyteMessage; import java.util.Map; @@ -13,10 +14,14 @@ */ public interface CdcStateHandler { - AirbyteMessage saveState(Map offset, String dbHistory); + AirbyteMessage saveState(final Map offset, final SchemaHistory dbHistory); AirbyteMessage saveStateAfterCompletionOfSnapshotOfNewStreams(); + default boolean compressSchemaHistoryForState() { + return false; + } + /** * This function is used as feature flag for sending state messages as checkpoints in CDC syncs. * diff --git a/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/DebeziumIteratorConstants.java b/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/DebeziumIteratorConstants.java new file mode 100644 index 000000000000..a6305c006fc9 --- /dev/null +++ b/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/DebeziumIteratorConstants.java @@ -0,0 +1,17 @@ +/* + * Copyright (c) 2023 Airbyte, Inc., all rights reserved. + */ + +package io.airbyte.integrations.debezium; + +import java.time.Duration; + +public class DebeziumIteratorConstants { + + public static final String SYNC_CHECKPOINT_DURATION_PROPERTY = "sync_checkpoint_seconds"; + public static final String SYNC_CHECKPOINT_RECORDS_PROPERTY = "sync_checkpoint_records"; + + public static final Duration SYNC_CHECKPOINT_DURATION = Duration.ofMinutes(15); + public static final Integer SYNC_CHECKPOINT_RECORDS = 10_000; + +} diff --git a/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/internals/AirbyteSchemaHistoryStorage.java b/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/internals/AirbyteSchemaHistoryStorage.java index 1aa158ea5406..7761962292a1 100644 --- a/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/internals/AirbyteSchemaHistoryStorage.java +++ b/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/internals/AirbyteSchemaHistoryStorage.java @@ -5,11 +5,16 @@ package io.airbyte.integrations.debezium.internals; import com.fasterxml.jackson.databind.JsonNode; +import com.google.common.annotations.VisibleForTesting; import io.airbyte.commons.json.Jsons; import io.debezium.document.Document; import io.debezium.document.DocumentReader; import io.debezium.document.DocumentWriter; +import java.io.BufferedReader; import java.io.BufferedWriter; +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.FileOutputStream; import java.io.IOException; import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; @@ -18,7 +23,11 @@ import java.nio.file.Path; import java.nio.file.StandardOpenOption; import java.util.Optional; +import java.util.zip.GZIPInputStream; +import java.util.zip.GZIPOutputStream; import org.apache.commons.io.FileUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** * The purpose of this class is : to , 1. Read the contents of the file {@link #path} which contains @@ -28,20 +37,54 @@ */ public class AirbyteSchemaHistoryStorage { - private final Path path; + private static final Logger LOGGER = LoggerFactory.getLogger(AirbyteSchemaHistoryStorage.class); + private static final long SIZE_LIMIT_TO_COMPRESS_MB = 3; + public static final int ONE_MB = 1024 * 1024; private static final Charset UTF8 = StandardCharsets.UTF_8; + private final DocumentReader reader = DocumentReader.defaultReader(); private final DocumentWriter writer = DocumentWriter.defaultWriter(); + private final Path path; + private final boolean compressSchemaHistoryForState; - public AirbyteSchemaHistoryStorage(final Path path) { + public AirbyteSchemaHistoryStorage(final Path path, final boolean compressSchemaHistoryForState) { this.path = path; + this.compressSchemaHistoryForState = compressSchemaHistoryForState; } public Path getPath() { return path; } - public String read() { + public record SchemaHistory (T schema, boolean isCompressed) {} + + public SchemaHistory read() { + final double fileSizeMB = (double) path.toFile().length() / (ONE_MB); + if ((fileSizeMB > SIZE_LIMIT_TO_COMPRESS_MB) && compressSchemaHistoryForState) { + LOGGER.info("File Size {} MB is greater than the size limit of {} MB, compressing the content of the file.", fileSizeMB, + SIZE_LIMIT_TO_COMPRESS_MB); + final String schemaHistory = readCompressed(); + final double compressedSizeMB = calculateSizeOfStringInMB(schemaHistory); + if (fileSizeMB > compressedSizeMB) { + LOGGER.info("Content Size post compression is {} MB ", compressedSizeMB); + } else { + throw new RuntimeException("Compressing increased the size of the content. Size before compression " + fileSizeMB + ", after compression " + + compressedSizeMB); + } + return new SchemaHistory<>(schemaHistory, true); + } + if (compressSchemaHistoryForState) { + LOGGER.info("File Size {} MB is less than the size limit of {} MB, reading the content of the file without compression.", fileSizeMB, + SIZE_LIMIT_TO_COMPRESS_MB); + } else { + LOGGER.info("File Size {} MB.", fileSizeMB); + } + final String schemaHistory = readUncompressed(); + return new SchemaHistory<>(schemaHistory, false); + } + + @VisibleForTesting + public String readUncompressed() { final StringBuilder fileAsString = new StringBuilder(); try { for (final String line : Files.readAllLines(path, UTF8)) { @@ -58,6 +101,30 @@ public String read() { } } + private String readCompressed() { + final String lineSeparator = System.lineSeparator(); + final ByteArrayOutputStream compressedStream = new ByteArrayOutputStream(); + try (final GZIPOutputStream gzipOutputStream = new GZIPOutputStream(compressedStream); + final BufferedReader bufferedReader = Files.newBufferedReader(path, UTF8)) { + for (;;) { + final String line = bufferedReader.readLine(); + if (line == null) { + break; + } + + if (!line.isEmpty()) { + final Document record = reader.read(line); + final String recordAsString = writer.write(record); + gzipOutputStream.write(recordAsString.getBytes(StandardCharsets.UTF_8)); + gzipOutputStream.write(lineSeparator.getBytes(StandardCharsets.UTF_8)); + } + } + } catch (IOException e) { + throw new RuntimeException(e); + } + return Jsons.serialize(compressedStream.toByteArray()); + } + private void makeSureFileExists() { try { // Make sure the file exists ... @@ -78,11 +145,11 @@ private void makeSureFileExists() { } } - public void persist(final Optional schemaHistory) { - if (schemaHistory.isEmpty()) { + private void persist(final SchemaHistory> schemaHistory) { + if (schemaHistory.schema().isEmpty()) { return; } - final String fileAsString = Jsons.object(schemaHistory.get(), String.class); + final String fileAsString = Jsons.object(schemaHistory.schema().get(), String.class); if (fileAsString == null || fileAsString.isEmpty()) { return; @@ -90,7 +157,11 @@ public void persist(final Optional schemaHistory) { FileUtils.deleteQuietly(path.toFile()); makeSureFileExists(); - writeToFile(fileAsString); + if (schemaHistory.isCompressed()) { + writeCompressedStringToFile(fileAsString); + } else { + writeToFile(fileAsString); + } } /** @@ -118,7 +189,27 @@ private void writeToFile(final String fileAsString) { } } - public static AirbyteSchemaHistoryStorage initializeDBHistory(final Optional schemaHistory) { + private void writeCompressedStringToFile(final String compressedString) { + try (final ByteArrayInputStream inputStream = new ByteArrayInputStream(Jsons.deserialize(compressedString, byte[].class)); + final GZIPInputStream gzipInputStream = new GZIPInputStream(inputStream); + final FileOutputStream fileOutputStream = new FileOutputStream(path.toFile())) { + final byte[] buffer = new byte[1024]; + int bytesRead; + while ((bytesRead = gzipInputStream.read(buffer)) != -1) { + fileOutputStream.write(buffer, 0, bytesRead); + } + } catch (IOException e) { + throw new RuntimeException(e); + } + } + + @VisibleForTesting + public static double calculateSizeOfStringInMB(final String string) { + return (double) string.getBytes(StandardCharsets.UTF_8).length / (ONE_MB); + } + + public static AirbyteSchemaHistoryStorage initializeDBHistory(final SchemaHistory> schemaHistory, + final boolean compressSchemaHistoryForState) { final Path dbHistoryWorkingDir; try { dbHistoryWorkingDir = Files.createTempDirectory(Path.of("/tmp"), "cdc-db-history"); @@ -127,7 +218,8 @@ public static AirbyteSchemaHistoryStorage initializeDBHistory(final Optional extends AbstractIterator implements Iterator { - public static final Duration SYNC_CHECKPOINT_DURATION = Duration.ofMinutes(15); - public static final Integer SYNC_CHECKPOINT_RECORDS = 10_000; - private static final Logger LOGGER = LoggerFactory.getLogger(DebeziumStateDecoratingIterator.class); private final Iterator changeEventIterator; diff --git a/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/internals/mysql/MySqlDebeziumStateUtil.java b/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/internals/mysql/MySqlDebeziumStateUtil.java index 99da4316a49b..73efad72dcfa 100644 --- a/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/internals/mysql/MySqlDebeziumStateUtil.java +++ b/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/internals/mysql/MySqlDebeziumStateUtil.java @@ -4,6 +4,7 @@ package io.airbyte.integrations.debezium.internals.mysql; +import static io.airbyte.integrations.debezium.internals.mysql.MysqlCdcStateConstants.COMPRESSION_ENABLED; import static io.debezium.relational.RelationalDatabaseConnectorConfig.DATABASE_NAME; import com.fasterxml.jackson.databind.JsonNode; @@ -13,6 +14,7 @@ import io.airbyte.db.jdbc.JdbcUtils; import io.airbyte.integrations.debezium.internals.AirbyteFileOffsetBackingStore; import io.airbyte.integrations.debezium.internals.AirbyteSchemaHistoryStorage; +import io.airbyte.integrations.debezium.internals.AirbyteSchemaHistoryStorage.SchemaHistory; import io.airbyte.integrations.debezium.internals.DebeziumPropertiesManager; import io.airbyte.integrations.debezium.internals.DebeziumRecordPublisher; import io.airbyte.integrations.debezium.internals.RelationalDbDebeziumPropertiesManager; @@ -29,6 +31,7 @@ import io.debezium.pipeline.spi.Partition; import java.sql.PreparedStatement; import java.sql.SQLException; +import java.time.Duration; import java.time.Instant; import java.util.Collections; import java.util.HashMap; @@ -53,8 +56,6 @@ public class MySqlDebeziumStateUtil { private static final Logger LOGGER = LoggerFactory.getLogger(MySqlDebeziumStateUtil.class); - public static final String MYSQL_CDC_OFFSET = "mysql_cdc_offset"; - public static final String MYSQL_DB_HISTORY = "mysql_db_history"; public boolean savedOffsetStillPresentOnServer(final JdbcDatabase database, final MysqlDebeziumStateAttributes savedState) { if (savedState.gtidSet().isPresent()) { @@ -255,7 +256,8 @@ public JsonNode constructInitialDebeziumState(final Properties properties, final AirbyteFileOffsetBackingStore offsetManager = AirbyteFileOffsetBackingStore.initializeState( constructBinlogOffset(database, database.getSourceConfig().get(JdbcUtils.DATABASE_KEY).asText()), Optional.empty()); - final AirbyteSchemaHistoryStorage schemaHistoryStorage = AirbyteSchemaHistoryStorage.initializeDBHistory(Optional.empty()); + final AirbyteSchemaHistoryStorage schemaHistoryStorage = + AirbyteSchemaHistoryStorage.initializeDBHistory(new SchemaHistory<>(Optional.empty(), false), COMPRESSION_ENABLED); final LinkedBlockingQueue> queue = new LinkedBlockingQueue<>(); try (final DebeziumRecordPublisher publisher = new DebeziumRecordPublisher(properties, database.getSourceConfig(), @@ -264,9 +266,15 @@ public JsonNode constructInitialDebeziumState(final Properties properties, Optional.of(schemaHistoryStorage), DebeziumPropertiesManager.DebeziumConnectorType.RELATIONALDB)) { publisher.start(queue); + final Instant engineStartTime = Instant.now(); while (!publisher.hasClosed()) { final ChangeEvent event = queue.poll(10, TimeUnit.SECONDS); if (event == null) { + if (Duration.between(engineStartTime, Instant.now()).compareTo(Duration.ofMinutes(5L)) > 0) { + LOGGER.error("No record is returned even after 5 minutes of waiting, closing the engine"); + publisher.close(); + + } continue; } LOGGER.info("A record is returned, closing the engine since the state is constructed"); @@ -278,21 +286,27 @@ public JsonNode constructInitialDebeziumState(final Properties properties, } final Map offset = offsetManager.read(); - final String dbHistory = schemaHistoryStorage.read(); + final SchemaHistory schemaHistory = schemaHistoryStorage.read(); assert !offset.isEmpty(); - assert Objects.nonNull(dbHistory); - - final Map state = new HashMap<>(); - state.put(MYSQL_CDC_OFFSET, offset); - state.put(MYSQL_DB_HISTORY, dbHistory); + assert Objects.nonNull(schemaHistory); + assert Objects.nonNull(schemaHistory.schema()); - final JsonNode asJson = Jsons.jsonNode(state); + final JsonNode asJson = serialize(offset, schemaHistory); LOGGER.info("Initial Debezium state constructed: {}", asJson); return asJson; } + public static JsonNode serialize(final Map offset, final SchemaHistory dbHistory) { + final Map state = new HashMap<>(); + state.put(MysqlCdcStateConstants.MYSQL_CDC_OFFSET, offset); + state.put(MysqlCdcStateConstants.MYSQL_DB_HISTORY, dbHistory.schema()); + state.put(MysqlCdcStateConstants.IS_COMPRESSED, dbHistory.isCompressed()); + + return Jsons.jsonNode(state); + } + /** * Method to construct initial Debezium state which can be passed onto Debezium engine to make it * process binlogs from a specific file and position and skip snapshot phase diff --git a/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/internals/mysql/MysqlCdcStateConstants.java b/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/internals/mysql/MysqlCdcStateConstants.java new file mode 100644 index 000000000000..b2b645e2436a --- /dev/null +++ b/airbyte-integrations/bases/debezium/src/main/java/io/airbyte/integrations/debezium/internals/mysql/MysqlCdcStateConstants.java @@ -0,0 +1,14 @@ +/* + * Copyright (c) 2023 Airbyte, Inc., all rights reserved. + */ + +package io.airbyte.integrations.debezium.internals.mysql; + +public class MysqlCdcStateConstants { + + public static final String MYSQL_CDC_OFFSET = "mysql_cdc_offset"; + public static final String MYSQL_DB_HISTORY = "mysql_db_history"; + public static final String IS_COMPRESSED = "is_compressed"; + public static final boolean COMPRESSION_ENABLED = true; + +} diff --git a/airbyte-integrations/bases/debezium/src/test/java/io/airbyte/integrations/debezium/AirbyteDebeziumHandlerTest.java b/airbyte-integrations/bases/debezium/src/test/java/io/airbyte/integrations/debezium/AirbyteDebeziumHandlerTest.java index eaf1e219d98a..3407b05e842a 100644 --- a/airbyte-integrations/bases/debezium/src/test/java/io/airbyte/integrations/debezium/AirbyteDebeziumHandlerTest.java +++ b/airbyte-integrations/bases/debezium/src/test/java/io/airbyte/integrations/debezium/AirbyteDebeziumHandlerTest.java @@ -33,7 +33,7 @@ public void shouldUseCdcTestShouldReturnTrue() { // set all streams to incremental. configuredCatalog.getStreams().forEach(s -> s.setSyncMode(SyncMode.INCREMENTAL)); - Assertions.assertTrue(AirbyteDebeziumHandler.shouldUseCDC(configuredCatalog)); + Assertions.assertTrue(AirbyteDebeziumHandler.isAnyStreamIncrementalSyncMode(configuredCatalog)); } @Test @@ -50,7 +50,7 @@ public void shouldUseCdcTestShouldReturnFalse() { final ConfiguredAirbyteCatalog configuredCatalog = CatalogHelpers .toDefaultConfiguredCatalog(catalog); - Assertions.assertFalse(AirbyteDebeziumHandler.shouldUseCDC(configuredCatalog)); + Assertions.assertFalse(AirbyteDebeziumHandler.isAnyStreamIncrementalSyncMode(configuredCatalog)); } } diff --git a/airbyte-integrations/bases/debezium/src/test/java/io/airbyte/integrations/debezium/internals/AirbyteSchemaHistoryStorageTest.java b/airbyte-integrations/bases/debezium/src/test/java/io/airbyte/integrations/debezium/internals/AirbyteSchemaHistoryStorageTest.java new file mode 100644 index 000000000000..0212dbb68e3e --- /dev/null +++ b/airbyte-integrations/bases/debezium/src/test/java/io/airbyte/integrations/debezium/internals/AirbyteSchemaHistoryStorageTest.java @@ -0,0 +1,79 @@ +/* + * Copyright (c) 2023 Airbyte, Inc., all rights reserved. + */ + +package io.airbyte.integrations.debezium.internals; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertTrue; + +import io.airbyte.commons.json.Jsons; +import io.airbyte.commons.resources.MoreResources; +import io.airbyte.integrations.debezium.internals.AirbyteSchemaHistoryStorage.SchemaHistory; +import java.io.IOException; +import java.util.Optional; +import org.junit.jupiter.api.Test; + +public class AirbyteSchemaHistoryStorageTest { + + @Test + public void testForContentBiggerThan3MBLimit() throws IOException { + final String contentReadDirectlyFromFile = MoreResources.readResource("dbhistory_greater_than_3_mb.dat"); + + final AirbyteSchemaHistoryStorage schemaHistoryStorageFromUncompressedContent = AirbyteSchemaHistoryStorage.initializeDBHistory( + new SchemaHistory<>(Optional.of(Jsons.jsonNode(contentReadDirectlyFromFile)), + false), + true); + final SchemaHistory schemaHistoryFromUncompressedContent = schemaHistoryStorageFromUncompressedContent.read(); + + assertTrue(schemaHistoryFromUncompressedContent.isCompressed()); + assertNotNull(schemaHistoryFromUncompressedContent.schema()); + assertEquals(contentReadDirectlyFromFile, schemaHistoryStorageFromUncompressedContent.readUncompressed()); + + final AirbyteSchemaHistoryStorage schemaHistoryStorageFromCompressedContent = AirbyteSchemaHistoryStorage.initializeDBHistory( + new SchemaHistory<>(Optional.of(Jsons.jsonNode(schemaHistoryFromUncompressedContent.schema())), + true), + true); + final SchemaHistory schemaHistoryFromCompressedContent = schemaHistoryStorageFromCompressedContent.read(); + + assertTrue(schemaHistoryFromCompressedContent.isCompressed()); + assertNotNull(schemaHistoryFromCompressedContent.schema()); + assertEquals(schemaHistoryFromUncompressedContent.schema(), schemaHistoryFromCompressedContent.schema()); + } + + @Test + public void sizeTest() throws IOException { + assertEquals(5.881045341491699, + AirbyteSchemaHistoryStorage.calculateSizeOfStringInMB(MoreResources.readResource("dbhistory_greater_than_3_mb.dat"))); + assertEquals(0.0038671493530273438, + AirbyteSchemaHistoryStorage.calculateSizeOfStringInMB(MoreResources.readResource("dbhistory_less_than_3_mb.dat"))); + } + + @Test + public void testForContentLessThan3MBLimit() throws IOException { + final String contentReadDirectlyFromFile = MoreResources.readResource("dbhistory_less_than_3_mb.dat"); + + final AirbyteSchemaHistoryStorage schemaHistoryStorageFromUncompressedContent = AirbyteSchemaHistoryStorage.initializeDBHistory( + new SchemaHistory<>(Optional.of(Jsons.jsonNode(contentReadDirectlyFromFile)), + false), + true); + final SchemaHistory schemaHistoryFromUncompressedContent = schemaHistoryStorageFromUncompressedContent.read(); + + assertFalse(schemaHistoryFromUncompressedContent.isCompressed()); + assertNotNull(schemaHistoryFromUncompressedContent.schema()); + assertEquals(contentReadDirectlyFromFile, schemaHistoryFromUncompressedContent.schema()); + + final AirbyteSchemaHistoryStorage schemaHistoryStorageFromCompressedContent = AirbyteSchemaHistoryStorage.initializeDBHistory( + new SchemaHistory<>(Optional.of(Jsons.jsonNode(schemaHistoryFromUncompressedContent.schema())), + false), + true); + final SchemaHistory schemaHistoryFromCompressedContent = schemaHistoryStorageFromCompressedContent.read(); + + assertFalse(schemaHistoryFromCompressedContent.isCompressed()); + assertNotNull(schemaHistoryFromCompressedContent.schema()); + assertEquals(schemaHistoryFromUncompressedContent.schema(), schemaHistoryFromCompressedContent.schema()); + } + +} diff --git a/airbyte-integrations/bases/debezium/src/test/java/io/airbyte/integrations/debezium/internals/MysqlDebeziumStateUtilTest.java b/airbyte-integrations/bases/debezium/src/test/java/io/airbyte/integrations/debezium/internals/MysqlDebeziumStateUtilTest.java index 3cddad443ba6..78cbcb68280a 100644 --- a/airbyte-integrations/bases/debezium/src/test/java/io/airbyte/integrations/debezium/internals/MysqlDebeziumStateUtilTest.java +++ b/airbyte-integrations/bases/debezium/src/test/java/io/airbyte/integrations/debezium/internals/MysqlDebeziumStateUtilTest.java @@ -67,7 +67,9 @@ public void debeziumInitialStateConstructTest() throws SQLException { final JdbcDatabase database = getJdbcDatabase(container); final MySqlDebeziumStateUtil mySqlDebeziumStateUtil = new MySqlDebeziumStateUtil(); final JsonNode debeziumState = mySqlDebeziumStateUtil.constructInitialDebeziumState(MYSQL_PROPERTIES, CONFIGURED_CATALOG, database); - Assertions.assertEquals(2, Jsons.object(debeziumState, Map.class).size()); + Assertions.assertEquals(3, Jsons.object(debeziumState, Map.class).size()); + Assertions.assertTrue(debeziumState.has("is_compressed")); + Assertions.assertFalse(debeziumState.get("is_compressed").asBoolean()); Assertions.assertTrue(debeziumState.has("mysql_db_history")); Assertions.assertNotNull(debeziumState.get("mysql_db_history")); Assertions.assertTrue(debeziumState.has("mysql_cdc_offset")); diff --git a/airbyte-integrations/bases/debezium/src/test/resources/dbhistory_greater_than_3_mb.dat b/airbyte-integrations/bases/debezium/src/test/resources/dbhistory_greater_than_3_mb.dat new file mode 100644 index 000000000000..2e2313ab7e26 --- /dev/null +++ b/airbyte-integrations/bases/debezium/src/test/resources/dbhistory_greater_than_3_mb.dat @@ -0,0 +1,410 @@ +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842665,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666200,"databaseName":"","ddl":"SET character_set_server=utf8mb4, collation_server=utf8mb4_0900_ai_ci","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666219,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`aastjaeyhuxcevpnrqwdjrvlewbgqqrz`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666221,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`adhcfqcfumxvmsokmylceoltlqhjewvw`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666222,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`ageaxrapcifxppadtgfmvnubppgguatn`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666222,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`agqfberalhewuryqncmijexehjvpvhya`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666223,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`aiuvcawgjavfsityazsbykuodftgteoa`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666224,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`arifozcdgamaweuwmigngbztyhjenxgr`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666225,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`avimlxteragkjlgouvjrcmgasysrsxih`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666226,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`bbvzwwmjvuibbndayvwmfsvfvkomvuwq`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666226,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`bekezigfgafwjjfcxlfvmohuwjxylbco`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666227,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`bfilzxoyiqgaczecequheguojdjdqgkw`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666228,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`brkqrwtvwkcngrjfgrxsbyjsgzuuyjxk`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666228,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`brznqjnnrwxnevpxwjrcthnvpxrsawok`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666229,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`cjbsiglppbkiwuokzgspunevqbbejmfp`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666230,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`crfncrfexubbsoqfpqdpbclcqxnclxmt`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666230,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`crgfzudloyryxyhjtwycumowtyrpwsly`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666231,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`cvducdrtmbckboypjfdtljlqxnmjlvqo`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666232,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`cxgskvumnqmwipfupfwozqwmfnftsxvs`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666232,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`daxdopqapywjintkxohdnessozxvwdwx`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666233,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`ddbewigwzztguunwgdgxqetfoxdxqaht`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666234,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`dfoaznlacthdivxcqnznziszzihljtyi`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666235,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`dfzbmvchizqxwzhseritnruikiymswoq`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666235,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`dktjgzfdvuzusxrwcdfekwieeadvscpa`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666236,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`dmpkfkxwkhuajbllpqhimtoiumvecdvq`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666236,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`eckmzheculilvvtgddqoabqhmblwjros`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666237,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`edtpgezoafwesgnsrttenofpfwbgvskp`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666237,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`efltdshxkjahnyuwforbiwbeqptladwm`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666238,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`ekgwnocryenlhifewsirhpralwokvicj`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666238,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`eniuwqlzawrgrhvrzrcpihxgkdvaarew`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666239,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`feporuidwlohgvwbtiusejyfqsrumrac`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666239,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`fhwposxtdpufqjciekvsudvzcdupkqjv`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666240,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`fknkmyhzgzdgbklxmknjahvidhearmkn`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666240,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`fmydwwpviyonaxoxelqmczxonlvjcnxv`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666241,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`fmyszhkkeojxcsveoimbanarqxdpbqkz`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666241,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`fovddzegnkcsydxjfcghvbhggpiujcxa`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666242,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`fqvrwbozmynffznjtosjaimyhkulylum`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666242,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`fughcvpxapxpanhpwimukohmafwcback`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666242,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`fvwhkwjojhrpuruerizhsjyneudltdgf`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666243,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`fwahqjmgxjbvouzmzetprekihxwdeptf`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666243,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`gchydfeczangasnmvfdlykinnhisenui`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666244,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`ghyqwlwuskidustonvfapzjfqxxirouo`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666244,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`giavkelmcovmviellbpxbpmjayywzwvr`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666245,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`gibjkzyrpmoaypiniuiyywvlmaidwzxy`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666245,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`gjwbaxlnvuczlhgbaytrbajtlzxhwmbn`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666246,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`gmhufugcytipzofjpeipcjeyfkrzjgne`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666246,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`gnrwwzzyowsyoqcxntaclfwfmptzfttq`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666246,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`gqrdivdtlwyumyqwlhrxuviktdbmfnew`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666247,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`grjhfhonuudoavlukzcyzstzmfayaezp`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666247,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`grlnyqotcwelxxfihmfytiykiyggwidh`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666248,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`grmuxqmusubjsziwgvwmpopfcnqtgvps`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666248,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`gsrskijzyhcygzvokrbnmkbtnlfyglog`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666249,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`hchcurdohntyovpxuhajvwyugafgeysr`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666249,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`hkcokgnihhdfnawwtqjefmgjhhitamsj`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666249,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`hvfxfpdbsddegbronmrpaixtvsqjqygk`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666250,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`hwpjwafzowgrotlquywyqtrcabzussxr`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666250,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`hyijqphvtvgdgegsnseyzeyooughktwe`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666251,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`ifbeclftxswghnufrctevakgzhdsmlko`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666251,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`ihrmsdgptsjleslopqmanczyqcdtudap`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666251,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`iigengzntldyhysbkebjxfctfqrglsed`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666252,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`itudgkajsibeeiwiqpdermkbhjhcuhez`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666252,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`ivjawdrlpjejctimphddwlktsjeoqpsc`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666252,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`iwnntobuwmkuzncjkkxxbjyvktvzwcla`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666253,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`jklxyfguyfwhbanvhqbtokakczltxncj`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666253,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`jnnbrmmdrkoflyyvppyijnmfxbdveonu`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666253,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`jwaehjgccilncrxqdqdzytzyjdhdrtfi`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666254,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`jwtirnhbsptqymlhedjwtfeddytgzipg`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666254,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`jxtszwleobqkzaxtmowwchvvkrzyootc`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666254,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`jzkrhqtehgofuwbzfrjzkrenxfjfbkjc`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666255,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`kdodfqyudmcpsufuzzqeocbauczaskpt`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666255,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`kepkeqfmkwienbdkjycwcyzjpzrrkrrg`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666255,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`kfixdbsknznmfkubbmksyozpamncervh`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666256,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`kftwodjtxilhqupkceqeadajangtxxfg`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666256,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`kgeadtdnymxzvfhjvvodgeoxonwagwll`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666256,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`kgjyjbtpzshoafctbllepaalknrmhmzy`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666257,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`kmifjrkanbihkzrymcquzyofrbogiygu`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666257,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`korrbwglsldbalqvsswaqstzuxvnlrps`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666257,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`kuykqleuwgycpydwatkgiczdqgleegnu`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666258,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`kvqskdqluyprqlisnljdnaxumzqetjoo`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666258,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`kwcrcymugsbqmlclxhvjycitcrcbqmuq`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666258,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`kxmwllnisximtjilqoifyciirajdkdqe`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666259,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`kybtprhlbzqgbnsogitpfetdycsqqqmu`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666259,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`lgzqspwbxcvbxbxdceywhoesgrnsmpga`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666259,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`lneozjmnjubkgsxmcosrybaevorbgvvn`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666260,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`lqbwjasfleffegotnszounuxojffyehx`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666260,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`lzbcpccmabxinidkpdxbjeyepkhowvqb`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666260,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`models`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666261,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`models_random`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666261,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`mrhwnmuraagswlujmtsibhxramzicgvh`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666261,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`mrorqfumguckiypivdoraipjpawwjdfq`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666262,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`mwyzswmpkowqnbzyvfhkpmvnjfrgnraz`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666262,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`mxslcfjftoitkvwkjafdifwuxfdmfsym`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666262,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`mykafjtkvhgjskiyabehpblifngdkhwu`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666263,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`nfqrzhysvyortaitkelwhsffveslnthx`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666263,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`nmbgkiphylqvhfzedfvrjrurcnseuvvw`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666263,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`nsbiwnxsqajlnasfuoofgvhmvbabaxfp`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666263,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`ntdsamdzxoluyqsidfutsijfjlwpulzz`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666264,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`nxwatrwouueiyynkxlmdmddfodlkdsgt`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666264,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`nyhwscsvzxplglrwnsgvsfidffshzfly`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666264,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`nyrgogpbmkyjitqgmdttnyaxvmfppyld`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666265,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`okabqmjgjiaxwjjcnmwstkkozaoeqiiu`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666265,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`opxnblpgxrgsptkxokfztqjhkvdodwud`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666265,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`orpveknrbipxbinvykmnqwjwotxsjuoq`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666265,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`otmhuzxdzfbyzubxhxxqqnfslkmomovx`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666266,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`ownvozuqbdsuwedyuvzwnksqhgkngezx`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666266,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`pefrclzfkqemnrdgutlyvuoyvtzxmtuv`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666266,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`pfhgocfvrcmabgqdldeflyidqlcdhbmz`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666267,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`pfqjiwqnmbfnwysrzbqigotyuehiiwaz`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666267,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`pghwpbsubektqcppdifryknztxnmsvhf`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666267,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`phfoifsjghtcrrrmlirrscflzgkfcilb`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666267,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`pmufyqauiycsugklnqmjlwtntfykevoj`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666268,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`ptxoeakypxcinxgiwxnegyucbfpderrz`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666268,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`qfgnabrfurvwokonupfzqzkpbgrlevbv`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666268,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`qggnhwqlqjkouhxetdqfuaqozrqqpcle`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666269,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`qiwtlstwkkhmomafokasfiebppralewy`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666269,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`qlasmsrgsfuikzxkdrpxtdwwbaalkjde`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666269,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`qmflonomnffllkxweddtjcrusntdyhwl`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666269,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`qmzbocxykzmpczrsllqbenafxqafrzhk`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666270,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`qnopovgcxspwoeghyuonqnbbnrvjvhow`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666270,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`qsirphfmlpnkopaqiayapzezhyeudrzs`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666270,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`qxqwzbxrbfsmpxxlxepnlllymnkkslug`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666271,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`qyylbziunhtqyqeloiskfjizpimemone`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666271,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`rdcfwajpujmymsqszcnekivknqxdoqil`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666271,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`rgjeprxzblxygbhnumnnjlryntqzuony`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666271,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`rjjpcxwartpnkawkhzhlboqncbbgzzgx`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666272,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`rklsysjbbggcyaheggpsezportemxlmu`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666272,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`rlpjqdqhwzurijhocbkdpovoiiqctrve`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666272,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`rmacnjxgjbzdfqdleytznzmsuzvkdjrq`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666272,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`rmcsuzfuprljobatuqxsqkuaffhpdtag`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666273,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`rmdvstrvymqpjlchedshuysqvdwtaegw`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666273,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`rrxmvbjbfyljiregbwvggjujgpkwekjf`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666273,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`rvwqmdxmybrqorpqethfdugrbikeeqen`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666274,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`sddicdunfmgiuvegaxtmieursdrycsld`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666274,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`seckcqhiaewieeiomssfzbhcvhkqmjnt`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666274,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`siftmoygptajwmczbovtnwqyjdpcmqfw`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666275,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`sktiezunkkczqbwwviueupxhgmwmasju`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666275,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`somkexlrchwjsnfjblemmdlxdrlqxiwe`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666276,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`sudibszqrvrxrwiazvcqqeovwgppgjth`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666276,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`suvqorxzmwvjejxhmiiitcxlimjbkmok`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666276,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`swgxwfoajgckubpfskppncstrxbnrpfl`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666276,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`sxmfnbngjuiquecrlxtfqulfkuqmjfzr`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666277,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`szptihpdgatfskwdlqlvratsglyrqnga`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666277,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`tcrradlvorgzjcciygegyfvojodcfdhl`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666277,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`tfoaqprarfoabbffxqiypuqnjuzesvmg`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666278,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`tgczemkospnlaxgjoudtzsgbgjwujcbh`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666278,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`tgtlonwoccyfoxpnlcdbuzcncumduhrs`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666278,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`tixcpagetyojezbmkaeetpemukblcpsr`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666278,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`tktrwfqkbwagctiwqbgzfdyjkzxqxrnt`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666279,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`tlawbzmwhcjjoudhkxvxmsfrdeygughc`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666279,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`tpksmtlcpcazciywpqiwdqlzxbnoiktq`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666279,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`tpkxfywbmayegsworhdugtdrzkjvveya`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666280,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`tzetkodbjogqjrhxuxwowogrhxsolvar`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666280,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`tzlncpqzqjgadnlmxsvbcgcpiljusbbe`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666280,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`udikvvdsawrybndbmlsacvseeqbudtkz`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666280,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`udizceykeqmjnuuejwuufbzihqpwbzfp`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666281,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`uflnnphheekurdaziorsgpfwdysuutca`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666281,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`uhncixqtyhjsicsgvnamwatzwbpgfqld`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666281,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`urtqvqjqqavkdscrqvcdnwnrtgnmfnbd`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666281,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`utrkrrrttkgoplueqarmsziysncokcgj`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666282,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`uwhvppgdytwyftjjcnihrmfdnhimzykv`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666282,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`uyjsubdlcesowgvppiweyyynybzozzcb`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666282,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`uyllrczkxxxqdijmtoeuaxgipxtztugl`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666283,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`uzfkyntmiqwwfluspuhyvetjysuvdqgr`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666283,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`uzwzfxgsmncskifwztscboirulhiccox`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666283,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`vankewnkqbxjamlctdsdjgswgeyvrjof`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666283,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`vhmohjbaalgeckwlqgznnqcvgjavlbzv`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666283,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`vlatilsnjpcfvjqannnvxnfclsppggel`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666284,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`vldtvucetkkwbkcoweeuxswdsnytbwak`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666284,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`vqxcfvfvkfrjtrlfeabxtnndjgrileqz`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666284,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`vrbvigqupjgsaeqqwingjxtcxidpztuo`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666284,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`vvukznvxvqlrpqvbrbvlexzlwndtibeh`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666285,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`wchuegpxotggojpmappheurpxfrcivka`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666285,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`wcvjylwqhadvqltmecxwsuarjnpxvtmi`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666285,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`wgkwfskbehhqasowhsdegiiatybhbuvq`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666285,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`wgxcetmtjwvmrtdbuchydagtylsvtsga`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666285,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`whclbatdragfegfzxazuownrpaxqfwpq`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666286,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`whemkduelgfkfynwcciloonbigfttakk`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666286,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`wjejvuvpihwabfbueufasjexzxfdfwxr`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666286,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`wjrpbvixffhcxmgwdtqlaaeddrzznowk`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666287,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`wnbrzqlwqabujjsfpielvqcwmrnmuqwu`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666287,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`wouewinkcurfknfxilwfeellhzmeqtjq`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666287,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`wqdandhuzkcuajvglffrvuwqfxsfunjn`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666287,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`wrlrqixavhpautdnbanimexxwqddrvmn`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666288,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`wzjzwsynaunsloezfpugchitwewtoxto`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666288,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`wzskeeofxzgrcdxuehzyhdhmmlzyxqxo`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666288,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`xkjqfzysfnzfwcmrzcgjzonrwhldoesm`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666288,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`xkwxygabgxrruwrhxqbyhhgahhzdbnwg`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666289,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`xlbwxatoglvtzyxuzszybrvskcdgicob`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666289,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`xmcvrffbufzmyibhrgpsdxwjjojyvegg`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666289,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`xrghycskudhhtjoegkkgwoksolissqht`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666289,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`xyfheiynhztwfzchczoqkoazqlkqybll`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666290,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`ydfgmjyjnfakxnzitneuzhmydvouvjes`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666290,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`yfcmxhvqnfmsqbirfafqjuymmgluegpl`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666291,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`ygbhxqnxduzibovvetyxidhqtnuizvhi`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666291,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`ynchpzshvnthrfykxjbnnndevivsthen`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666291,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`zcemsecafryitcsvmgpbhebgzwmycaiu`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666291,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`zfgsdjvymmttvoqeggdyoqbiudfvvjnu`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666292,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`zjynajtjehfzwlyfxrnocalgmomgzioq`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666292,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`zomwihdblysidiflhkqodbripxteqsje`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666292,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`zrjhsxwmexkwyntdmqgzgaxcjzqahncz`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666293,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`zrpahurtunmdbumraxjhiqvfumrdlnjn`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666293,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`ztpttwzzkgyxsjgpkltayosfjkjwfgok`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666293,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`zvizamagjrkoamcwmhgradfhuizonrdx`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666293,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`zxhltxrsmhtsyvtgrlcsbvouuzpmoisc`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666294,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`zxopybvdnhidckkbrsvwijsunafkxxtb`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666303,"databaseName":"models_schema","ddl":"DROP DATABASE IF EXISTS `models_schema`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666310,"databaseName":"models_schema","ddl":"CREATE DATABASE `models_schema` CHARSET utf8mb4 COLLATE utf8mb4_0900_ai_ci","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666311,"databaseName":"models_schema","ddl":"USE `models_schema`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666482,"databaseName":"models_schema","ddl":"CREATE TABLE `aastjaeyhuxcevpnrqwdjrvlewbgqqrz` (\n `ecsdzfgicetweccjwrzexfuehjztsumn` int NOT NULL,\n `ybqytsxeruqgjlxumznjkyqykgtzfdpy` int DEFAULT NULL,\n `rbzvwhbcszrorefhdjqhzukmeopjiila` int DEFAULT NULL,\n `zjkhtrqlvgowmcrrhrzsbnbxqayvcrqo` int DEFAULT NULL,\n `ulvnpfknymyylfahgsywzusmezyntwmc` int DEFAULT NULL,\n `oxmocspitjivttwebqruwtyrfvwtevho` int DEFAULT NULL,\n `uunkmslbtyztrljelopxgqyujccedqvr` int DEFAULT NULL,\n `lxriudwgopondobyungmdappngtkyabi` int DEFAULT NULL,\n `kdhlufzacbgiviimzsqglkjgfalejycw` int DEFAULT NULL,\n `wghzrkpmwvlpgghobatuvzxuuiulggei` int DEFAULT NULL,\n `kgbmyqnebkeebhviqakyytunqqcqcljd` int DEFAULT NULL,\n `dsxqqgbhcvtwkwtzeypxdsblsytaptxc` int DEFAULT NULL,\n `mmgdyehsavknovjdfwhhcawfvlhbujyl` int DEFAULT NULL,\n `thozzgtziknmgrgkvbqzmaumfyfryqwj` int DEFAULT NULL,\n `yiomnvlnqnrytymylzmsutefxwdqotch` int DEFAULT NULL,\n `ddecvmtifskdwxzqmdyawapllzeaqsue` int DEFAULT NULL,\n `pcwcqpnshlecoenlkqhxpvgcnpknlmvr` int DEFAULT NULL,\n `diogsnhbfmgzvztnvtjarmqcdqhkgwcj` int DEFAULT NULL,\n `vujfvliddbqvezbyecniidvwcltfqngl` int DEFAULT NULL,\n `ifmbncaqrqhoitliqdjwsrfqayyyawls` int DEFAULT NULL,\n `rpbtdsapqqdopdbcnuhgsmrlgwtkpvkh` int DEFAULT NULL,\n `qyxiqjalcvfindvkczoahdldozhhbhhr` int DEFAULT NULL,\n `ivgvbjjgpckjglcuhouideukfguiikxj` int DEFAULT NULL,\n `ovrdlctkfjbntahozxqpmlzfazvetsrx` int DEFAULT NULL,\n `cyqtpkxvnqcwpdnhkknlnvrdwnqmotvd` int DEFAULT NULL,\n `rrssdqoglztevdekczkdyywlwlmoqbkd` int DEFAULT NULL,\n `ltxhncwjgzpbolnagaddtbloamhuscrv` int DEFAULT NULL,\n `mkrllaburxvqufuydsguszglzzojadtt` int DEFAULT NULL,\n `pecnocpxofrboyvlccrnsxlmwooycjby` int DEFAULT NULL,\n `jykwvlwyvwgjnmyjxfpxwluujgdnlonk` int DEFAULT NULL,\n `qcajtwaznrrasyaapogxqfhimngqgbjl` int DEFAULT NULL,\n `uxsberecpyzejgfsnheiowtijoavawtc` int DEFAULT NULL,\n `rghswaxekeavttrcrnrxyqsywpolwyij` int DEFAULT NULL,\n `wyfeqtfralvrfrdhpkuyjbkeziwrrmxk` int DEFAULT NULL,\n `skjhlrzymijdbcbvsjgwtloktrxrgedz` int DEFAULT NULL,\n `utgbrththpfmnoobsctouhgszehnbgoh` int DEFAULT NULL,\n `zldacnbgzfrnyrgicbwewygtihlqphul` int DEFAULT NULL,\n `doclpvpwkrdsmrxonwfgzxdvujipfbnj` int DEFAULT NULL,\n `zyjkjvohuqodbflaozbsriemzjwqypwf` int DEFAULT NULL,\n `jylzicmggsemxwmjfelvlwtwrfrdrhzp` int DEFAULT NULL,\n `gbrwgrbmhjavbecouajkxpmmmoxgimlr` int DEFAULT NULL,\n `rtbzbothpktxpknwstfalzlhvvshorii` int DEFAULT NULL,\n `iahexftofhdsftmhgfnalkghmpffqdnv` int DEFAULT NULL,\n `jmxintavenpchhxqhlbcicbhyekapwfd` int DEFAULT NULL,\n `vxqzrjyouosgneqqbstvtbzpxhghsydp` int DEFAULT NULL,\n `xpttymwxaffktwqkzuxjxiunfseijedn` int DEFAULT NULL,\n `adwdylvrcslnbhunzcqocqrvkigizvht` int DEFAULT NULL,\n `fjjrwtpmhkcpsfhytwsxvexifysxyzdu` int DEFAULT NULL,\n `yqllzdkywgzkjnkjbjjtdjhtrpnvgmld` int DEFAULT NULL,\n `lnekpomshfdcgvbzwxybxoqdhpllqywn` int DEFAULT NULL,\n `ocncjtssovhfurwygcdqdtpqfrfpipes` int DEFAULT NULL,\n `kltergbveepksttfskfpwkjoelvrbvef` int DEFAULT NULL,\n `pkitnlmynnusvobksvrafsztnwdnkpum` int DEFAULT NULL,\n `rcylzyyyjbyqlzklkcxzswjvztetkxyk` int DEFAULT NULL,\n `ccibgetracnincbmezjthlzfynnxkwfs` int DEFAULT NULL,\n `dvnlepwzjfhqpeivmzdjujoyzmbzsxne` int DEFAULT NULL,\n `xzjibqmtmhbkedzazvgafmfqcgptpwra` int DEFAULT NULL,\n `omhruoqlsbkyrxygozztrbqkugyxryse` int DEFAULT NULL,\n `ihnefdndqjwmelgeehhxferqgofwpsba` int DEFAULT NULL,\n `agjhljmknmdgihaktoffcacursyypfeq` int DEFAULT NULL,\n `gxvewwywekxhuntsyzrlcyffeutxctsc` int DEFAULT NULL,\n `cuazwkjomewuyhjuxyqfnhnagnafecor` int DEFAULT NULL,\n `mkwpafohpictqkzcbjzlkvjebrpnqdic` int DEFAULT NULL,\n `wvuydyteqkkqdwspliidihtzvvxdoerf` int DEFAULT NULL,\n `hqoqhjigbelwnreqlbzwuyzdiguioubv` int DEFAULT NULL,\n `idcorureimrfijziiefmmhgkppyrdprv` int DEFAULT NULL,\n `yqzatgqzlvtfskypxjsrvtcnzblrbijs` int DEFAULT NULL,\n `hccsyxgovjferdzrahhlpunfjfhusuvb` int DEFAULT NULL,\n `vedfemwhwejqifvkfbgdjnoyradsmbos` int DEFAULT NULL,\n `zswbpubxfswtryfctjavqpsovazbijzx` int DEFAULT NULL,\n `qofuydtmglubtlbwqnceckmhjwbwrlcd` int DEFAULT NULL,\n `seilzggfxicucsuyxryxqljyaagfvoje` int DEFAULT NULL,\n `fxezgqogyavdnffckbfamdxuhzntwyrn` int DEFAULT NULL,\n `fsvvxfakqgyuaqfffkeacwsykcpiufde` int DEFAULT NULL,\n `yidbhankxieuggzbyywdaffbswijgumz` int DEFAULT NULL,\n `tzhdpvgopwqusyknpdruaebchutuqyrd` int DEFAULT NULL,\n `iwzziscwjlsujjbavqrfigwmexxuhtrw` int DEFAULT NULL,\n `kgefdasixhrmhqsfimkuigsxllevyvfj` int DEFAULT NULL,\n `rdzcbxzclutcrgkleaaiiaixoaxslotr` int DEFAULT NULL,\n `cwylfpyusnredbnnftgywpilbmykpppe` int DEFAULT NULL,\n `fcshzglgshgrlsslddaoazfeobqtmegd` int DEFAULT NULL,\n `ehtvwjykajxoyqxctssvdwcwwqmdnkdr` int DEFAULT NULL,\n `hqdujuaflwrynixedrxivgnqystzlder` int DEFAULT NULL,\n `dzwmxlghyekbmhcugejyfovicrouzpwl` int DEFAULT NULL,\n `jkbeqsgekcohttyezkozxkilkkbaagwn` int DEFAULT NULL,\n `fpixjsjdbwiggysqxcgcmqjigsevhdpa` int DEFAULT NULL,\n `rqjzustpcrjvhnezcrajhelcgxgbrvla` int DEFAULT NULL,\n `tokwmdbwrypbrzxrpsukoumdnyhsulxf` int DEFAULT NULL,\n `nhihfnnpvaydvslfxfvczbahbdajmnpj` int DEFAULT NULL,\n `gejjkyqsrlgcgtdujarwcwpvlewfjlek` int DEFAULT NULL,\n `fkmwtodvsczkmppmuopaltzxystcvakb` int DEFAULT NULL,\n `cxfmcoxvjanczkhjezvomtbgjnghqsfx` int DEFAULT NULL,\n `grlnrdgpcecwmaiomngllugylubwvpac` int DEFAULT NULL,\n `ydfgqmycmlhwghkhrokcdqulruwulujf` int DEFAULT NULL,\n `mcwdtkuipybwdkkacqxifcxepxdjovex` int DEFAULT NULL,\n `xtclujndrhraixzfbzytywvumifpzndm` int DEFAULT NULL,\n `ggsjyjvuhnxgpizvzcioqlcmjzgbvxsr` int DEFAULT NULL,\n `mwxgjeypmqzsxknbickhnswopftgjwlk` int DEFAULT NULL,\n `ymdrwhvvruycjuhtdcrsouekqgkmtejm` int DEFAULT NULL,\n `fhzhgbpnooqvvjlrafqdbicfhimhozds` int DEFAULT NULL,\n PRIMARY KEY (`ecsdzfgicetweccjwrzexfuehjztsumn`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"aastjaeyhuxcevpnrqwdjrvlewbgqqrz\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["ecsdzfgicetweccjwrzexfuehjztsumn"],"columns":[{"name":"ecsdzfgicetweccjwrzexfuehjztsumn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"ybqytsxeruqgjlxumznjkyqykgtzfdpy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbzvwhbcszrorefhdjqhzukmeopjiila","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjkhtrqlvgowmcrrhrzsbnbxqayvcrqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ulvnpfknymyylfahgsywzusmezyntwmc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oxmocspitjivttwebqruwtyrfvwtevho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uunkmslbtyztrljelopxgqyujccedqvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxriudwgopondobyungmdappngtkyabi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kdhlufzacbgiviimzsqglkjgfalejycw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wghzrkpmwvlpgghobatuvzxuuiulggei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kgbmyqnebkeebhviqakyytunqqcqcljd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dsxqqgbhcvtwkwtzeypxdsblsytaptxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmgdyehsavknovjdfwhhcawfvlhbujyl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thozzgtziknmgrgkvbqzmaumfyfryqwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yiomnvlnqnrytymylzmsutefxwdqotch","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ddecvmtifskdwxzqmdyawapllzeaqsue","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pcwcqpnshlecoenlkqhxpvgcnpknlmvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"diogsnhbfmgzvztnvtjarmqcdqhkgwcj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vujfvliddbqvezbyecniidvwcltfqngl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ifmbncaqrqhoitliqdjwsrfqayyyawls","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpbtdsapqqdopdbcnuhgsmrlgwtkpvkh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qyxiqjalcvfindvkczoahdldozhhbhhr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivgvbjjgpckjglcuhouideukfguiikxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovrdlctkfjbntahozxqpmlzfazvetsrx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cyqtpkxvnqcwpdnhkknlnvrdwnqmotvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrssdqoglztevdekczkdyywlwlmoqbkd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ltxhncwjgzpbolnagaddtbloamhuscrv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkrllaburxvqufuydsguszglzzojadtt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pecnocpxofrboyvlccrnsxlmwooycjby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jykwvlwyvwgjnmyjxfpxwluujgdnlonk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qcajtwaznrrasyaapogxqfhimngqgbjl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxsberecpyzejgfsnheiowtijoavawtc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rghswaxekeavttrcrnrxyqsywpolwyij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wyfeqtfralvrfrdhpkuyjbkeziwrrmxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skjhlrzymijdbcbvsjgwtloktrxrgedz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utgbrththpfmnoobsctouhgszehnbgoh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zldacnbgzfrnyrgicbwewygtihlqphul","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"doclpvpwkrdsmrxonwfgzxdvujipfbnj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zyjkjvohuqodbflaozbsriemzjwqypwf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jylzicmggsemxwmjfelvlwtwrfrdrhzp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gbrwgrbmhjavbecouajkxpmmmoxgimlr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rtbzbothpktxpknwstfalzlhvvshorii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iahexftofhdsftmhgfnalkghmpffqdnv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmxintavenpchhxqhlbcicbhyekapwfd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxqzrjyouosgneqqbstvtbzpxhghsydp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xpttymwxaffktwqkzuxjxiunfseijedn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"adwdylvrcslnbhunzcqocqrvkigizvht","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjjrwtpmhkcpsfhytwsxvexifysxyzdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqllzdkywgzkjnkjbjjtdjhtrpnvgmld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lnekpomshfdcgvbzwxybxoqdhpllqywn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocncjtssovhfurwygcdqdtpqfrfpipes","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kltergbveepksttfskfpwkjoelvrbvef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkitnlmynnusvobksvrafsztnwdnkpum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcylzyyyjbyqlzklkcxzswjvztetkxyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ccibgetracnincbmezjthlzfynnxkwfs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvnlepwzjfhqpeivmzdjujoyzmbzsxne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xzjibqmtmhbkedzazvgafmfqcgptpwra","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omhruoqlsbkyrxygozztrbqkugyxryse","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ihnefdndqjwmelgeehhxferqgofwpsba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agjhljmknmdgihaktoffcacursyypfeq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gxvewwywekxhuntsyzrlcyffeutxctsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cuazwkjomewuyhjuxyqfnhnagnafecor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkwpafohpictqkzcbjzlkvjebrpnqdic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wvuydyteqkkqdwspliidihtzvvxdoerf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqoqhjigbelwnreqlbzwuyzdiguioubv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idcorureimrfijziiefmmhgkppyrdprv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqzatgqzlvtfskypxjsrvtcnzblrbijs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hccsyxgovjferdzrahhlpunfjfhusuvb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vedfemwhwejqifvkfbgdjnoyradsmbos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zswbpubxfswtryfctjavqpsovazbijzx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qofuydtmglubtlbwqnceckmhjwbwrlcd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"seilzggfxicucsuyxryxqljyaagfvoje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxezgqogyavdnffckbfamdxuhzntwyrn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fsvvxfakqgyuaqfffkeacwsykcpiufde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yidbhankxieuggzbyywdaffbswijgumz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tzhdpvgopwqusyknpdruaebchutuqyrd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwzziscwjlsujjbavqrfigwmexxuhtrw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kgefdasixhrmhqsfimkuigsxllevyvfj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdzcbxzclutcrgkleaaiiaixoaxslotr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwylfpyusnredbnnftgywpilbmykpppe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcshzglgshgrlsslddaoazfeobqtmegd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehtvwjykajxoyqxctssvdwcwwqmdnkdr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqdujuaflwrynixedrxivgnqystzlder","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dzwmxlghyekbmhcugejyfovicrouzpwl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jkbeqsgekcohttyezkozxkilkkbaagwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpixjsjdbwiggysqxcgcmqjigsevhdpa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqjzustpcrjvhnezcrajhelcgxgbrvla","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tokwmdbwrypbrzxrpsukoumdnyhsulxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhihfnnpvaydvslfxfvczbahbdajmnpj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gejjkyqsrlgcgtdujarwcwpvlewfjlek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fkmwtodvsczkmppmuopaltzxystcvakb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cxfmcoxvjanczkhjezvomtbgjnghqsfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grlnrdgpcecwmaiomngllugylubwvpac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydfgqmycmlhwghkhrokcdqulruwulujf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcwdtkuipybwdkkacqxifcxepxdjovex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xtclujndrhraixzfbzytywvumifpzndm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggsjyjvuhnxgpizvzcioqlcmjzgbvxsr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwxgjeypmqzsxknbickhnswopftgjwlk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ymdrwhvvruycjuhtdcrsouekqgkmtejm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhzhgbpnooqvvjlrafqdbicfhimhozds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666552,"databaseName":"models_schema","ddl":"CREATE TABLE `adhcfqcfumxvmsokmylceoltlqhjewvw` (\n `qzoyzniqxgxucwlppvmwidiqhbzwluaw` int NOT NULL,\n `qjflcvzkqdrmgslqpmokgsqxibbaxxin` int DEFAULT NULL,\n `miaevkbjzhybaieljrjfbdnuldjsotik` int DEFAULT NULL,\n `osajqtaxzudfeifxdwbdzglsxsmniiqm` int DEFAULT NULL,\n `mkmfacdltcspqoqseokzfyujqdncnprv` int DEFAULT NULL,\n `orrhcyiqbzuhauuvdluwkikbhbthcqtw` int DEFAULT NULL,\n `wzmjlkycvjcacqqaygcfffsusvroccpw` int DEFAULT NULL,\n `bnzfnjjllhrumjjwqgcmxzybqffwldik` int DEFAULT NULL,\n `lumdqvewlffvfjdrovliwhlwnsrjsirf` int DEFAULT NULL,\n `rdhcqmbwyfwyqewbsiuasjfpxruiumiu` int DEFAULT NULL,\n `akkwvbwtwjteauvqixeymnghmjftpjlq` int DEFAULT NULL,\n `gtzaprddthraxupgdbhgzgwbwbhuluin` int DEFAULT NULL,\n `wxajlbdnqkwotucynpkxnutjykrbluwm` int DEFAULT NULL,\n `uvevocmdrbdzgabjbebdjwockopsvqzu` int DEFAULT NULL,\n `yqsljvjgxysisprnghcwxhnqhodpgusq` int DEFAULT NULL,\n `vipbckzmnzmiehjfoanhoysuqczmylxt` int DEFAULT NULL,\n `madyjspdkxpbdxnaawtzpnavkchinzqa` int DEFAULT NULL,\n `jrednxitbdrozupwgsesttxeshfekdcp` int DEFAULT NULL,\n `uepgrtfclojkomyrppgwcrdhnpcygmvy` int DEFAULT NULL,\n `jeqlgakeznvpuewvvsanwsigngikwvjj` int DEFAULT NULL,\n `ianweezzfguayslautdlasuyqpkdlkak` int DEFAULT NULL,\n `yqzxvnquwiafejzuryszsiejgsgvngud` int DEFAULT NULL,\n `hihbnjosxcpailclmbvsqctsaohuigve` int DEFAULT NULL,\n `mwlqlpeiravrehzunzadqjbknyzzfxix` int DEFAULT NULL,\n `rnduxvchezzptqqisoyetsjjgbdepahu` int DEFAULT NULL,\n `obzredhsoeeygarmsejtguiqjvkvpfqd` int DEFAULT NULL,\n `phdruiredjlqfoorpioxarasjfjdbbzd` int DEFAULT NULL,\n `wcvlhvuedkkprsemeambfjgubmxwwvtr` int DEFAULT NULL,\n `ryypvgpispuamsuwuoymdyaqirjkrytb` int DEFAULT NULL,\n `sbzihronfnuxbhlyfiijeycsitghzlhz` int DEFAULT NULL,\n `xqbgybwowkekauiexwciyhpwjcjbqwfg` int DEFAULT NULL,\n `wucwzydpvgmhurqosdyrhnjlvunrcpnm` int DEFAULT NULL,\n `irwrqtnrxepmtazekgobevtzdekwqcdt` int DEFAULT NULL,\n `hbrfxbfwbytsxrypirqgupikdpongdru` int DEFAULT NULL,\n `plyxpyoxeeluzufkeiycpkdlvudtxcke` int DEFAULT NULL,\n `ktctzhrcpctmfnhfvomfacccuayggjrk` int DEFAULT NULL,\n `phhwmuzkybklrdtftijlzorxqftckysq` int DEFAULT NULL,\n `rmtrpkhtleooqrjwglymvabaehecoezr` int DEFAULT NULL,\n `jhidlhzxkxtttbgrbfprgywbrxnbtwdk` int DEFAULT NULL,\n `mvsoxmajsiabgnbxjwkzzwaohzwrscfu` int DEFAULT NULL,\n `giefvidgsufbhsptdbajweklueomonwl` int DEFAULT NULL,\n `ybtpalvukdukiwokipmqszsapcleggvg` int DEFAULT NULL,\n `pigrylqkoipxjucyzpwvczllxoefzcju` int DEFAULT NULL,\n `wffhdikhbcecwbpafcrfrkuarqzcofnn` int DEFAULT NULL,\n `lnbhoonnearqdypfevgjebzxavfmajwo` int DEFAULT NULL,\n `mmerypukceasusyulywmkjlmqyfkedox` int DEFAULT NULL,\n `wsnlncrzznwoagyhlvcoczezblxkgyfm` int DEFAULT NULL,\n `hppvidbclmsojammofywhsnxvbyycuea` int DEFAULT NULL,\n `zbnpydykvebozntkwawozpfhcakqyjjz` int DEFAULT NULL,\n `nsijpmaetezxopeoqazmfjahkwknmybg` int DEFAULT NULL,\n `lbdueihxjejjtwxfhznfmdimwbuqvxmd` int DEFAULT NULL,\n `uawidvpfcbxkuvdgoemsndqfbdcjucyu` int DEFAULT NULL,\n `tudjeophngkefltgurcmnnjhytnjokal` int DEFAULT NULL,\n `imaghngnhaasyvjpjgswbbptqkdbejfr` int DEFAULT NULL,\n `efhkmdxshqrzycxqwggebmlvxgsxqmse` int DEFAULT NULL,\n `tlhqybvmnueagojlovfaqlqsdlymzjyk` int DEFAULT NULL,\n `pegqljorjmkgxxujobjyaryjqordnhps` int DEFAULT NULL,\n `hitzilteauemrojypigtazteezbzljaw` int DEFAULT NULL,\n `kvfulsrfldtgwqdeailkayxddmqsjndz` int DEFAULT NULL,\n `kobyaixcgsehvoktwftlukhptghqdfmw` int DEFAULT NULL,\n `xnmaovdehitmkqnrlnkrazdhgzytqmpz` int DEFAULT NULL,\n `naekwvqfilsrfprdkgrbpbomehpwrmlh` int DEFAULT NULL,\n `xqztkpxnwrnpergdmbqnadmcmxpovwig` int DEFAULT NULL,\n `rjgthcavoyjqjpwhdiatajoxrfecmffg` int DEFAULT NULL,\n `aqyeojazxwzrhwtnxdifgoiaefukarjh` int DEFAULT NULL,\n `fcrorblbrtczkrxovprzlnicdcrromfa` int DEFAULT NULL,\n `dubxgpytstlrhowzpwhwxcmykaciypwq` int DEFAULT NULL,\n `mcbleuhwonmespgzvlzvnrwdgxfmvjyo` int DEFAULT NULL,\n `lpyslqycmlrysbphevvtbmpdiofojdoc` int DEFAULT NULL,\n `pcqbabsfenmofeutxmeviozephodetuh` int DEFAULT NULL,\n `txckjrznygbcizfpguwtqzwjswvnwhvs` int DEFAULT NULL,\n `muvzvwamzesksctcdratviqxqcmlxbsd` int DEFAULT NULL,\n `rohvdvtednpythqbgsbnkwyumyfoofnn` int DEFAULT NULL,\n `ebgqexmdosfpqpjhqaxgpptewdzskjaq` int DEFAULT NULL,\n `isffnzredpjxzedwfkfapvvlsexseywh` int DEFAULT NULL,\n `yprsvwjlgxjqgmhlttmomychprvuiytz` int DEFAULT NULL,\n `emwvprfzfibfhqsmnafmmkeymexyjgyo` int DEFAULT NULL,\n `tpesebococsxiyhilsxtieisqpnisbbv` int DEFAULT NULL,\n `bijokuctnphsdqfnujbzjigaoalotrrg` int DEFAULT NULL,\n `eoscggorgukquowcygejlcsxpdpbzhdl` int DEFAULT NULL,\n `zsjltqypqkvnlbidviylkhbgkzfryjdu` int DEFAULT NULL,\n `uvflfdbywxcqrnovyjkecvnbqravstfz` int DEFAULT NULL,\n `qylogijeqsnutuimclgirdvtvxozxbrm` int DEFAULT NULL,\n `vzyftuzkwqoobyryywbrtfebfxpcbmmy` int DEFAULT NULL,\n `skrxsmgtommgwjvizlpwlvxbebenlmzh` int DEFAULT NULL,\n `qomstdxmlussdtxmsbbgbtjuxpvpjzhx` int DEFAULT NULL,\n `vcdspgrvodyrykpessvmpkjbjdnshfep` int DEFAULT NULL,\n `qelhapahqjzgeggamindpfduagbwcguq` int DEFAULT NULL,\n `eatldpqpwomrdrpuzwtriwvyzlwfjidr` int DEFAULT NULL,\n `auokotmaedvfqtkczyxbnlufzcrzoqki` int DEFAULT NULL,\n `hcelyynexdxiwiwsappbqzwrsxbdnqyn` int DEFAULT NULL,\n `dtemxlrynvfsheoxjcuzsjdgiqfibxta` int DEFAULT NULL,\n `ujzoqrepqnhhcvliswcofuuheekpixsj` int DEFAULT NULL,\n `oqitiarqkwtjdryipscbuitdqlquphoi` int DEFAULT NULL,\n `cjlwuwglrukhhixjffojxcvzfqwdwbol` int DEFAULT NULL,\n `tnucmqimfamfhtyyxeqrxbnwgoulolyk` int DEFAULT NULL,\n `jducczqxqcqtlegkqahgombdmtnycstu` int DEFAULT NULL,\n `ygddoaxlthpbbkvhugmzlzbpsqelauut` int DEFAULT NULL,\n `opqmvboojoulbwtnenxawpsqbuiwfams` int DEFAULT NULL,\n `hfpgpuefkcxdyacwidrugpslahtxzcsy` int DEFAULT NULL,\n PRIMARY KEY (`qzoyzniqxgxucwlppvmwidiqhbzwluaw`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"adhcfqcfumxvmsokmylceoltlqhjewvw\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["qzoyzniqxgxucwlppvmwidiqhbzwluaw"],"columns":[{"name":"qzoyzniqxgxucwlppvmwidiqhbzwluaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"qjflcvzkqdrmgslqpmokgsqxibbaxxin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"miaevkbjzhybaieljrjfbdnuldjsotik","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"osajqtaxzudfeifxdwbdzglsxsmniiqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkmfacdltcspqoqseokzfyujqdncnprv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orrhcyiqbzuhauuvdluwkikbhbthcqtw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzmjlkycvjcacqqaygcfffsusvroccpw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnzfnjjllhrumjjwqgcmxzybqffwldik","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lumdqvewlffvfjdrovliwhlwnsrjsirf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdhcqmbwyfwyqewbsiuasjfpxruiumiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akkwvbwtwjteauvqixeymnghmjftpjlq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtzaprddthraxupgdbhgzgwbwbhuluin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxajlbdnqkwotucynpkxnutjykrbluwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvevocmdrbdzgabjbebdjwockopsvqzu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqsljvjgxysisprnghcwxhnqhodpgusq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vipbckzmnzmiehjfoanhoysuqczmylxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"madyjspdkxpbdxnaawtzpnavkchinzqa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jrednxitbdrozupwgsesttxeshfekdcp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uepgrtfclojkomyrppgwcrdhnpcygmvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jeqlgakeznvpuewvvsanwsigngikwvjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ianweezzfguayslautdlasuyqpkdlkak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqzxvnquwiafejzuryszsiejgsgvngud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hihbnjosxcpailclmbvsqctsaohuigve","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwlqlpeiravrehzunzadqjbknyzzfxix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnduxvchezzptqqisoyetsjjgbdepahu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obzredhsoeeygarmsejtguiqjvkvpfqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phdruiredjlqfoorpioxarasjfjdbbzd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcvlhvuedkkprsemeambfjgubmxwwvtr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ryypvgpispuamsuwuoymdyaqirjkrytb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbzihronfnuxbhlyfiijeycsitghzlhz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqbgybwowkekauiexwciyhpwjcjbqwfg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wucwzydpvgmhurqosdyrhnjlvunrcpnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"irwrqtnrxepmtazekgobevtzdekwqcdt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbrfxbfwbytsxrypirqgupikdpongdru","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"plyxpyoxeeluzufkeiycpkdlvudtxcke","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ktctzhrcpctmfnhfvomfacccuayggjrk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phhwmuzkybklrdtftijlzorxqftckysq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rmtrpkhtleooqrjwglymvabaehecoezr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jhidlhzxkxtttbgrbfprgywbrxnbtwdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvsoxmajsiabgnbxjwkzzwaohzwrscfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"giefvidgsufbhsptdbajweklueomonwl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ybtpalvukdukiwokipmqszsapcleggvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pigrylqkoipxjucyzpwvczllxoefzcju","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wffhdikhbcecwbpafcrfrkuarqzcofnn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lnbhoonnearqdypfevgjebzxavfmajwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmerypukceasusyulywmkjlmqyfkedox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wsnlncrzznwoagyhlvcoczezblxkgyfm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hppvidbclmsojammofywhsnxvbyycuea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbnpydykvebozntkwawozpfhcakqyjjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nsijpmaetezxopeoqazmfjahkwknmybg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lbdueihxjejjtwxfhznfmdimwbuqvxmd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uawidvpfcbxkuvdgoemsndqfbdcjucyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tudjeophngkefltgurcmnnjhytnjokal","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"imaghngnhaasyvjpjgswbbptqkdbejfr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"efhkmdxshqrzycxqwggebmlvxgsxqmse","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlhqybvmnueagojlovfaqlqsdlymzjyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pegqljorjmkgxxujobjyaryjqordnhps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hitzilteauemrojypigtazteezbzljaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvfulsrfldtgwqdeailkayxddmqsjndz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kobyaixcgsehvoktwftlukhptghqdfmw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnmaovdehitmkqnrlnkrazdhgzytqmpz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"naekwvqfilsrfprdkgrbpbomehpwrmlh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqztkpxnwrnpergdmbqnadmcmxpovwig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjgthcavoyjqjpwhdiatajoxrfecmffg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqyeojazxwzrhwtnxdifgoiaefukarjh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcrorblbrtczkrxovprzlnicdcrromfa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dubxgpytstlrhowzpwhwxcmykaciypwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcbleuhwonmespgzvlzvnrwdgxfmvjyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lpyslqycmlrysbphevvtbmpdiofojdoc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pcqbabsfenmofeutxmeviozephodetuh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txckjrznygbcizfpguwtqzwjswvnwhvs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"muvzvwamzesksctcdratviqxqcmlxbsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rohvdvtednpythqbgsbnkwyumyfoofnn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebgqexmdosfpqpjhqaxgpptewdzskjaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"isffnzredpjxzedwfkfapvvlsexseywh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yprsvwjlgxjqgmhlttmomychprvuiytz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"emwvprfzfibfhqsmnafmmkeymexyjgyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpesebococsxiyhilsxtieisqpnisbbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bijokuctnphsdqfnujbzjigaoalotrrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eoscggorgukquowcygejlcsxpdpbzhdl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zsjltqypqkvnlbidviylkhbgkzfryjdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvflfdbywxcqrnovyjkecvnbqravstfz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qylogijeqsnutuimclgirdvtvxozxbrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vzyftuzkwqoobyryywbrtfebfxpcbmmy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skrxsmgtommgwjvizlpwlvxbebenlmzh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qomstdxmlussdtxmsbbgbtjuxpvpjzhx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vcdspgrvodyrykpessvmpkjbjdnshfep","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qelhapahqjzgeggamindpfduagbwcguq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eatldpqpwomrdrpuzwtriwvyzlwfjidr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"auokotmaedvfqtkczyxbnlufzcrzoqki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hcelyynexdxiwiwsappbqzwrsxbdnqyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtemxlrynvfsheoxjcuzsjdgiqfibxta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujzoqrepqnhhcvliswcofuuheekpixsj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqitiarqkwtjdryipscbuitdqlquphoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cjlwuwglrukhhixjffojxcvzfqwdwbol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnucmqimfamfhtyyxeqrxbnwgoulolyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jducczqxqcqtlegkqahgombdmtnycstu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ygddoaxlthpbbkvhugmzlzbpsqelauut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opqmvboojoulbwtnenxawpsqbuiwfams","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfpgpuefkcxdyacwidrugpslahtxzcsy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666618,"databaseName":"models_schema","ddl":"CREATE TABLE `ageaxrapcifxppadtgfmvnubppgguatn` (\n `qyinjfnceqazkknbpstgjzpjujmvebeo` int NOT NULL,\n `qddlbtmrcbyzeezuubpeuwzklfddbcdq` int DEFAULT NULL,\n `hlppttlpirekmywkprgfdkqgropkdktu` int DEFAULT NULL,\n `aokxtpcjptuhgywkroamzxyunlrbtcng` int DEFAULT NULL,\n `nbvdtubjnlpiqkupgaencxpcjlkpqgta` int DEFAULT NULL,\n `tyyyfmyvqrewpxrukfeqelsvfecpiufk` int DEFAULT NULL,\n `oeqzxpqtssbrldxtuoyfeaekijnmryax` int DEFAULT NULL,\n `pkderrzvtiztriufexwxzqgmbbjlxjld` int DEFAULT NULL,\n `iuuahvtfyghhgcjpoqowvjgcxnsnyclo` int DEFAULT NULL,\n `wutknilphonosinwfmnffbtnuqquzlvr` int DEFAULT NULL,\n `byhkgtblirrvkvqmouiiyklvnqrnznbs` int DEFAULT NULL,\n `bhimzirqeexwresfdildjpuixeawagdl` int DEFAULT NULL,\n `gggfpibqfpghtedeviuddruacoitmyna` int DEFAULT NULL,\n `fqhypzxacbgocsyxguedcjxphhrmzlfk` int DEFAULT NULL,\n `jgiywgogcicdtmghtspqdenbeykcgjvj` int DEFAULT NULL,\n `achlydssnztfgnbkzcjtapnxiqooxzez` int DEFAULT NULL,\n `mcvdapmhmipfkedxvfqubjuaajadukjx` int DEFAULT NULL,\n `upgnvavcmfkytcoaujqdrrwqutcglxpg` int DEFAULT NULL,\n `ajncildyfdqzbjubwcgiymyhelagzgsp` int DEFAULT NULL,\n `thhijijxsukeofrlcstiynipniytcnvm` int DEFAULT NULL,\n `tzydpnydzswihzztbddpnrccpxkmrjtd` int DEFAULT NULL,\n `vmwnpcmmjyvqsnrjlbiainqyzlasxvwd` int DEFAULT NULL,\n `mrqbzwdilwmsgyojzkrdotwibosstuco` int DEFAULT NULL,\n `baynojcfuumdkeswbmtkvybjtvagsaty` int DEFAULT NULL,\n `vnbvqsfaencigqwijifzsunpssqivphd` int DEFAULT NULL,\n `ljfuwugvpcdeipuzadyskaingrhsphtd` int DEFAULT NULL,\n `wrfdcvtdmxtcbhxmewonyfmmlucajtxa` int DEFAULT NULL,\n `boxjzekuufidnkjgmzzetfpydhqlhrxh` int DEFAULT NULL,\n `jwwrlakwonazxevbofztvcnquisqpfkm` int DEFAULT NULL,\n `xdtgawfcixpiuqyaobriigvfwxdovxbn` int DEFAULT NULL,\n `rqoinqtulrwpxkcvyiwxbqsvpykbkeht` int DEFAULT NULL,\n `kcmguhbyknqipjjogmxhdvgxdiqlsbkd` int DEFAULT NULL,\n `tdvduknoujmodnikvevgdrwoocgbngsc` int DEFAULT NULL,\n `ebbigomagkopjjarcczcwugfqvpxonsd` int DEFAULT NULL,\n `vuyfrfmsetwpwcvaobgxorjpyfeejgww` int DEFAULT NULL,\n `mrkiuwlqwnankskuzlfvrcvfwkzujsic` int DEFAULT NULL,\n `kuoaaqiuoknsinlphhiloifhaxzdkozd` int DEFAULT NULL,\n `nibvavanuyhdcpvkbwgtearppmvzhsve` int DEFAULT NULL,\n `mmltqrmtqrngyrvvebtpmsfrewqgwzne` int DEFAULT NULL,\n `xuqlhfaifptcxtztjviwzmrvcicabjqx` int DEFAULT NULL,\n `zklexkgeoigtfgipjvtfadordwwoxkrj` int DEFAULT NULL,\n `hxlchjlrkjcxrsibaianeaxzzffoutub` int DEFAULT NULL,\n `ivvxgxtfyaooqpbumfapntcsxezzkrjv` int DEFAULT NULL,\n `rukvffhdcdclzcjaryyvoaveoerbcxjv` int DEFAULT NULL,\n `cztyirbzqersrfuzplmjbtukxwqynadm` int DEFAULT NULL,\n `tpoeijwhzmqvpslfqifqvsetesbzuyou` int DEFAULT NULL,\n `wcjovwqexuouigiyrajkvtrhnqohdsjd` int DEFAULT NULL,\n `cqgpzlrryxrrxgwsbyvckwjihyczmcwj` int DEFAULT NULL,\n `sadugcxdykmomynzrlztmkqguhbmgimv` int DEFAULT NULL,\n `uljjaliagnbzpucgvsucfcoqyvbnuqyg` int DEFAULT NULL,\n `pmwhulqrzqzpqczttkneqfzerqlfjlen` int DEFAULT NULL,\n `gpldnhxsnzhuraoykiykyfwpdmcqycbw` int DEFAULT NULL,\n `jgpqwsmmtqytrlyuptoltpuanknxkzfg` int DEFAULT NULL,\n `kfatxdjwrcdtfqweohszskkrwgiztrsl` int DEFAULT NULL,\n `uzkxrivciydjpcaxjlbkrpskwkvyoptp` int DEFAULT NULL,\n `iirwidvjqkfkjwjzxnrzyuvybcemybdx` int DEFAULT NULL,\n `qlqystwkwgxudgnezcfrworbgwnoqjgf` int DEFAULT NULL,\n `cfcqgjjtrnpsskpgqsqrjjcsqgrpvxtq` int DEFAULT NULL,\n `ckreoebcxtyekeubjeuebxijekyvlcqq` int DEFAULT NULL,\n `mtfdgildqfestoecerssjglthibqcmvn` int DEFAULT NULL,\n `wfhvvagbvelfuihhjgttjwcrskydwhho` int DEFAULT NULL,\n `hnjcgnpvbpjaxpijjgzxlpdpezyidpfs` int DEFAULT NULL,\n `flvqdfwsxvyomuvzmgrpclgaescueljp` int DEFAULT NULL,\n `bcxhexsvaxjsreynpeypylofvxkqdaub` int DEFAULT NULL,\n `rscszxmjfdttuwikyweaefwmhbqcpigz` int DEFAULT NULL,\n `inqzzemtuvlwbyaumarztogdvilsuuhf` int DEFAULT NULL,\n `bxukwkiiwlbvnasbjmfuomlpgftcnhkt` int DEFAULT NULL,\n `dipowrysaochjmzhkhkzbicjwxppwytm` int DEFAULT NULL,\n `heaecwrygumzcbfkdecofsuikamnfefa` int DEFAULT NULL,\n `fjpehkhbysxtlxmmtzadtgybgagxmlcp` int DEFAULT NULL,\n `ahqyfecencbsaxtzjrwgpbsivyzjxcqp` int DEFAULT NULL,\n `ywbvbxaewwjsqllcxzuzwdnmfdznpczh` int DEFAULT NULL,\n `ewsfikvaubavnzbihbylsbjjeknmsqxj` int DEFAULT NULL,\n `benfhuvgsotizfjlwllnzuhlpvkydgom` int DEFAULT NULL,\n `smrzhcdmlbkuwpdneialliwcspezxome` int DEFAULT NULL,\n `tbzxatxqaekiiiailbtepqtmahugngix` int DEFAULT NULL,\n `mtwoonjpmqsdvozfbnmkmmzwqupvcdxl` int DEFAULT NULL,\n `tlovjrmzssatxppjkczbnlbxnuwfhwqf` int DEFAULT NULL,\n `tkgrpqhvtskpefshkhbrbwfgkmcuwojv` int DEFAULT NULL,\n `ydxnjklpxrxoygmatrypxrumejldpqfi` int DEFAULT NULL,\n `zgmshdsboosuwrxgjspzebshcqbxvodp` int DEFAULT NULL,\n `ivqbbcbiqwszaiovkbmildwcexjfyxtd` int DEFAULT NULL,\n `vojwaaciroblayvwytctbdrpxbmjlnuk` int DEFAULT NULL,\n `btjgfziihxzfkpsurcrvfneicvwktdde` int DEFAULT NULL,\n `nidonijmseedeobvsxtvldqcvifndbvt` int DEFAULT NULL,\n `exhzuechereudkuzeptlznnwzubgsqyd` int DEFAULT NULL,\n `ytnvsubernleinrpkdkxhthxdqdggirt` int DEFAULT NULL,\n `iuxdmckheqqaybqzkzxrmvcemcqymjsv` int DEFAULT NULL,\n `mmdpeuqgixkqcirlqfcxpxbnjsajfzhz` int DEFAULT NULL,\n `kzjavqtanpmihxdsuzigamoonhnqytpo` int DEFAULT NULL,\n `rqrnepipocdvuweizovwsijjombijcag` int DEFAULT NULL,\n `ntvllwgzynecpydetefkimzeqifzpfbx` int DEFAULT NULL,\n `lggutlxsxpqfvnfhqdirilrcvvoscszj` int DEFAULT NULL,\n `ezwgawdgxejsabqahrmnfmdkfyjvrhtg` int DEFAULT NULL,\n `kpxazfpwjiagegqsltynlzjepubkziow` int DEFAULT NULL,\n `yshwnjagvkyifcdaguieiopgvxgbqudo` int DEFAULT NULL,\n `solyxcxlmsekwtzeuquxpurlydchzgyd` int DEFAULT NULL,\n `tfzsouyifuntysiauvcedndmfsyfapje` int DEFAULT NULL,\n `znfozjczokdydcsjapoytvoreofsjfvv` int DEFAULT NULL,\n `mgahpgkeamvayaiqmrcjfpsejabxzkgm` int DEFAULT NULL,\n PRIMARY KEY (`qyinjfnceqazkknbpstgjzpjujmvebeo`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"ageaxrapcifxppadtgfmvnubppgguatn\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["qyinjfnceqazkknbpstgjzpjujmvebeo"],"columns":[{"name":"qyinjfnceqazkknbpstgjzpjujmvebeo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"qddlbtmrcbyzeezuubpeuwzklfddbcdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlppttlpirekmywkprgfdkqgropkdktu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aokxtpcjptuhgywkroamzxyunlrbtcng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbvdtubjnlpiqkupgaencxpcjlkpqgta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tyyyfmyvqrewpxrukfeqelsvfecpiufk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oeqzxpqtssbrldxtuoyfeaekijnmryax","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkderrzvtiztriufexwxzqgmbbjlxjld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iuuahvtfyghhgcjpoqowvjgcxnsnyclo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wutknilphonosinwfmnffbtnuqquzlvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"byhkgtblirrvkvqmouiiyklvnqrnznbs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bhimzirqeexwresfdildjpuixeawagdl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gggfpibqfpghtedeviuddruacoitmyna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqhypzxacbgocsyxguedcjxphhrmzlfk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgiywgogcicdtmghtspqdenbeykcgjvj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"achlydssnztfgnbkzcjtapnxiqooxzez","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcvdapmhmipfkedxvfqubjuaajadukjx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upgnvavcmfkytcoaujqdrrwqutcglxpg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajncildyfdqzbjubwcgiymyhelagzgsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thhijijxsukeofrlcstiynipniytcnvm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tzydpnydzswihzztbddpnrccpxkmrjtd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vmwnpcmmjyvqsnrjlbiainqyzlasxvwd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrqbzwdilwmsgyojzkrdotwibosstuco","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"baynojcfuumdkeswbmtkvybjtvagsaty","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vnbvqsfaencigqwijifzsunpssqivphd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljfuwugvpcdeipuzadyskaingrhsphtd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wrfdcvtdmxtcbhxmewonyfmmlucajtxa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"boxjzekuufidnkjgmzzetfpydhqlhrxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwwrlakwonazxevbofztvcnquisqpfkm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdtgawfcixpiuqyaobriigvfwxdovxbn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqoinqtulrwpxkcvyiwxbqsvpykbkeht","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kcmguhbyknqipjjogmxhdvgxdiqlsbkd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tdvduknoujmodnikvevgdrwoocgbngsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebbigomagkopjjarcczcwugfqvpxonsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vuyfrfmsetwpwcvaobgxorjpyfeejgww","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrkiuwlqwnankskuzlfvrcvfwkzujsic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kuoaaqiuoknsinlphhiloifhaxzdkozd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nibvavanuyhdcpvkbwgtearppmvzhsve","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmltqrmtqrngyrvvebtpmsfrewqgwzne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xuqlhfaifptcxtztjviwzmrvcicabjqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zklexkgeoigtfgipjvtfadordwwoxkrj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hxlchjlrkjcxrsibaianeaxzzffoutub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivvxgxtfyaooqpbumfapntcsxezzkrjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rukvffhdcdclzcjaryyvoaveoerbcxjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cztyirbzqersrfuzplmjbtukxwqynadm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpoeijwhzmqvpslfqifqvsetesbzuyou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcjovwqexuouigiyrajkvtrhnqohdsjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqgpzlrryxrrxgwsbyvckwjihyczmcwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sadugcxdykmomynzrlztmkqguhbmgimv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uljjaliagnbzpucgvsucfcoqyvbnuqyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmwhulqrzqzpqczttkneqfzerqlfjlen","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gpldnhxsnzhuraoykiykyfwpdmcqycbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgpqwsmmtqytrlyuptoltpuanknxkzfg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfatxdjwrcdtfqweohszskkrwgiztrsl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzkxrivciydjpcaxjlbkrpskwkvyoptp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iirwidvjqkfkjwjzxnrzyuvybcemybdx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qlqystwkwgxudgnezcfrworbgwnoqjgf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfcqgjjtrnpsskpgqsqrjjcsqgrpvxtq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ckreoebcxtyekeubjeuebxijekyvlcqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtfdgildqfestoecerssjglthibqcmvn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfhvvagbvelfuihhjgttjwcrskydwhho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hnjcgnpvbpjaxpijjgzxlpdpezyidpfs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flvqdfwsxvyomuvzmgrpclgaescueljp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bcxhexsvaxjsreynpeypylofvxkqdaub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rscszxmjfdttuwikyweaefwmhbqcpigz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"inqzzemtuvlwbyaumarztogdvilsuuhf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bxukwkiiwlbvnasbjmfuomlpgftcnhkt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dipowrysaochjmzhkhkzbicjwxppwytm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"heaecwrygumzcbfkdecofsuikamnfefa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjpehkhbysxtlxmmtzadtgybgagxmlcp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ahqyfecencbsaxtzjrwgpbsivyzjxcqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywbvbxaewwjsqllcxzuzwdnmfdznpczh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ewsfikvaubavnzbihbylsbjjeknmsqxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"benfhuvgsotizfjlwllnzuhlpvkydgom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smrzhcdmlbkuwpdneialliwcspezxome","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbzxatxqaekiiiailbtepqtmahugngix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtwoonjpmqsdvozfbnmkmmzwqupvcdxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlovjrmzssatxppjkczbnlbxnuwfhwqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkgrpqhvtskpefshkhbrbwfgkmcuwojv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydxnjklpxrxoygmatrypxrumejldpqfi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zgmshdsboosuwrxgjspzebshcqbxvodp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivqbbcbiqwszaiovkbmildwcexjfyxtd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vojwaaciroblayvwytctbdrpxbmjlnuk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"btjgfziihxzfkpsurcrvfneicvwktdde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nidonijmseedeobvsxtvldqcvifndbvt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exhzuechereudkuzeptlznnwzubgsqyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytnvsubernleinrpkdkxhthxdqdggirt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iuxdmckheqqaybqzkzxrmvcemcqymjsv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmdpeuqgixkqcirlqfcxpxbnjsajfzhz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzjavqtanpmihxdsuzigamoonhnqytpo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqrnepipocdvuweizovwsijjombijcag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntvllwgzynecpydetefkimzeqifzpfbx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lggutlxsxpqfvnfhqdirilrcvvoscszj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezwgawdgxejsabqahrmnfmdkfyjvrhtg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kpxazfpwjiagegqsltynlzjepubkziow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yshwnjagvkyifcdaguieiopgvxgbqudo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"solyxcxlmsekwtzeuquxpurlydchzgyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tfzsouyifuntysiauvcedndmfsyfapje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znfozjczokdydcsjapoytvoreofsjfvv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mgahpgkeamvayaiqmrcjfpsejabxzkgm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666681,"databaseName":"models_schema","ddl":"CREATE TABLE `agqfberalhewuryqncmijexehjvpvhya` (\n `ghlaytatnnqczpiucxvavundreobomqn` int NOT NULL,\n `fmmnbptbktdcaohfdhqxngykphdfawlx` int DEFAULT NULL,\n `cngmneopumtuelexwvmnjvfiylvujesm` int DEFAULT NULL,\n `kuhrqtakdtiicfdpbdaussundwhmeayt` int DEFAULT NULL,\n `edvqgvkfzqpqdpredxdakiwovbvpuzhg` int DEFAULT NULL,\n `wznfechuyulgauqzgrjuvagkenfpnuzc` int DEFAULT NULL,\n `bfjairfmwfdvkvgejszcwxnylwnresky` int DEFAULT NULL,\n `vxoljqbwlcpoogsnhyqbsrvfaorzsifs` int DEFAULT NULL,\n `hhxdeubiumizyktmeduofhwzueqwvrgd` int DEFAULT NULL,\n `bjlvrldmhiarttvugsqhlngelowjboqw` int DEFAULT NULL,\n `yrdoamfqtxoaiwvgshupwspizikluehg` int DEFAULT NULL,\n `fxannboqvkugybbrzyiodiwidyuajgcb` int DEFAULT NULL,\n `cqohjkvkykzeqqbituzrenmniourhgcb` int DEFAULT NULL,\n `rvvfcqktdxunpumonkmcaguwckievuvp` int DEFAULT NULL,\n `cyomcousmpqmtakynisfphrfqcuxuubv` int DEFAULT NULL,\n `pkduoggmbsjjfwuepugeaanmhuxnesni` int DEFAULT NULL,\n `znxvjarspjjaiiejxuqwtdtgtzohgkeq` int DEFAULT NULL,\n `ghbgvzcmtnoricennmqiheyjxihdvktk` int DEFAULT NULL,\n `mexatrepvbfejlorweyvdvtczuidtiyt` int DEFAULT NULL,\n `krahsiflbvryimprpiqklrdghfisrrkx` int DEFAULT NULL,\n `qrfzmtzoekqtszylnznhnuizdmgcymlg` int DEFAULT NULL,\n `leqxtynuubrlpvwypdmtkyqkymdncbll` int DEFAULT NULL,\n `jrtgrwjsjpxweqnhpbffgqeuffgacnfb` int DEFAULT NULL,\n `rqnlnwfskrmwjzybjalknwvgnvnuinby` int DEFAULT NULL,\n `eosiiponnfegfktdlgcwouourismmmxs` int DEFAULT NULL,\n `xxemzqyyhmptezfhdrlapknucssaxqkn` int DEFAULT NULL,\n `gbkxabgfsfnrbsurhsvgcdrhoyepuytf` int DEFAULT NULL,\n `ucsrgntehasgjaqrmkcscusrnzosvtyf` int DEFAULT NULL,\n `lisnuuzassadnbkakrleqsncbhrufxho` int DEFAULT NULL,\n `nofypyambhauokumkvbczdqlonnipvir` int DEFAULT NULL,\n `aysryyyzebrgjxlblsvfpiaitmsppslx` int DEFAULT NULL,\n `urnyibtslqdpxqmhpfoqtwqmlyxrfqru` int DEFAULT NULL,\n `scftcupbvylsyvicxkbesahysklqpxpu` int DEFAULT NULL,\n `qngnasxfbxvhaibcmxcxceicoqwvnqie` int DEFAULT NULL,\n `eumvxnjudfgsrylmbcmlrwbfpnodlxnu` int DEFAULT NULL,\n `ecisloknrjzrcsjvvrccawzdqxvqrone` int DEFAULT NULL,\n `gjqvqjqjgayvbbifhrrokkkrazwpdhju` int DEFAULT NULL,\n `osmxlzcbkovvidyuffknelwuhtirzilw` int DEFAULT NULL,\n `chuszipiatvrlfnxqpffgcttfrfayplh` int DEFAULT NULL,\n `qvdqihniejiddgrpvxjfypfuhiwodwbo` int DEFAULT NULL,\n `uxihyomakenwoaqyjnndndvmhyvjsbea` int DEFAULT NULL,\n `nfspylhcncdfdryxuitvbfgibownogfc` int DEFAULT NULL,\n `rmskdgxfazmqgyilggfmrvkikblmiied` int DEFAULT NULL,\n `iwybdimarwlnazsvcjvpwmjqegjopwad` int DEFAULT NULL,\n `ehbozjrvjehhobybfhiegzxsgktbnkxj` int DEFAULT NULL,\n `nawvlizrnjlpmkkyrkyhswmxwzatbhdi` int DEFAULT NULL,\n `mvbyrfavnuoiyrnlubehouviitupzncx` int DEFAULT NULL,\n `qbgqiiogvwjzhnjloegfnfrxvkjiizdm` int DEFAULT NULL,\n `inqibysnqsannwlvhfaulnkyjpqmbbah` int DEFAULT NULL,\n `aqmrjizmmkxxuchvaubrzhewzcciapgw` int DEFAULT NULL,\n `imwqmwxhphrefrwacjwtzduiwbpuzgoq` int DEFAULT NULL,\n `oamxicuwhqhfkhhmszsoawytvaclrjcz` int DEFAULT NULL,\n `odprbxeknghqoqtmqccbscyuweissecx` int DEFAULT NULL,\n `hildfbwbudlshduchntqmoaorvlzkigl` int DEFAULT NULL,\n `dxisnwcbjjpxqgwtydrsffdeurhlwaui` int DEFAULT NULL,\n `ungtlexyeqaetdfkkbnwrjclebsxzdww` int DEFAULT NULL,\n `tohywacjybpujmuuxafhovkuzscbknpe` int DEFAULT NULL,\n `bqgwscxutockpteiyfzbpwygqyovmtzs` int DEFAULT NULL,\n `lnpkhhwnjzgmhbcnkxpciexaqpysirds` int DEFAULT NULL,\n `hmgaoetgdrnqbfeoswsjguohqrwvsrop` int DEFAULT NULL,\n `oplismtambzazchytpparggtphylscaf` int DEFAULT NULL,\n `cvnosujqtnefmxfqiodqfjrdtuewvmxr` int DEFAULT NULL,\n `fetjvgqeaojheztnkiqxbxrsyrorkijo` int DEFAULT NULL,\n `axrnjvwxscxdsxxclibeeivspbmcluvd` int DEFAULT NULL,\n `ghemdwtwtfvwgqgkmuqchtroomsctfke` int DEFAULT NULL,\n `cxkaitwzdeztuwjmqtepqikwiqgopttq` int DEFAULT NULL,\n `breyydhevroyhqpbpenddzylkcraztoe` int DEFAULT NULL,\n `subnvjlvmphmufehyhvrhkkklesnxpaa` int DEFAULT NULL,\n `zahgmgddseslpjqnpmxsedfkjgpisrxy` int DEFAULT NULL,\n `urrapttugmtqxxbazypcscebkqgyrbpq` int DEFAULT NULL,\n `yysavozyhiskdrwmweasiegcdrgplvbb` int DEFAULT NULL,\n `asgdycpihnbyveysvqhogwcvoxxrntop` int DEFAULT NULL,\n `ayqnncqacdqnyrffvobkdoesvdsemlvp` int DEFAULT NULL,\n `dturzvbcbnxcummkwvqeakggrkxjkoec` int DEFAULT NULL,\n `fadxjnftvtnpnubaxgweuhjzirpnwovi` int DEFAULT NULL,\n `ennhyqoqxuttomnzyymmpvibgapallyz` int DEFAULT NULL,\n `lcilfummvvjmosqnhwpijfszfansuedv` int DEFAULT NULL,\n `okshwqmbsusohtxhjkyepkhwxjkpizwd` int DEFAULT NULL,\n `gtojzccijwrejyaugawyrjsekdgwsxfl` int DEFAULT NULL,\n `pkoohavmmvdjbmbuzwospiykzkaemekp` int DEFAULT NULL,\n `kkwggrrtvxwwnjiinjbweytjlszkcrmw` int DEFAULT NULL,\n `vblygbgewvxyuulswbqzdrcvhhyunkky` int DEFAULT NULL,\n `vziqzuamksplfgcryvnbnqspqfwddvla` int DEFAULT NULL,\n `wrtiaxaxsofjosrzopyeptymfjtpjsna` int DEFAULT NULL,\n `sfwpnbefxwfrxyijpybxknfuuvizdvun` int DEFAULT NULL,\n `uytqroswcnxtqkjtvcjbohtkfmuxscqz` int DEFAULT NULL,\n `fsmcwputgnrtqlycqahjvzatqnkspnjf` int DEFAULT NULL,\n `xxpeekuqxvbfkgxjwsljyqepokbpiull` int DEFAULT NULL,\n `vmbutoojjpzwljtuzmqqpifwietfyifd` int DEFAULT NULL,\n `thsfxteorzqrveedfpsdetoblnppmqdz` int DEFAULT NULL,\n `yqomjiywkqzebuxcvowgatjgrrjdwdjw` int DEFAULT NULL,\n `dsrdhnupwuwnsccmlotrsdcmbapiyofw` int DEFAULT NULL,\n `chwgvhyicgykvdycctdbpzkytpcfgntp` int DEFAULT NULL,\n `tycswuwbzjxhchrzuerlonwpghsojeal` int DEFAULT NULL,\n `drwqldfiwwwrhirsaqpsqczpjnviugyk` int DEFAULT NULL,\n `vgprkgkdmnyrvmvkhgqjfodpfmnixrrr` int DEFAULT NULL,\n `ghqjfwhzuztkgzhbdsptaedevyhnyebz` int DEFAULT NULL,\n `yrlacmnfsrvaonmmixhuwobecreieism` int DEFAULT NULL,\n `qtwcnykeygmwkjqbtrywmaydqbdiiqcs` int DEFAULT NULL,\n `sjogagperuupbadbfzmapnjjzpviigjs` int DEFAULT NULL,\n PRIMARY KEY (`ghlaytatnnqczpiucxvavundreobomqn`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"agqfberalhewuryqncmijexehjvpvhya\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["ghlaytatnnqczpiucxvavundreobomqn"],"columns":[{"name":"ghlaytatnnqczpiucxvavundreobomqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"fmmnbptbktdcaohfdhqxngykphdfawlx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cngmneopumtuelexwvmnjvfiylvujesm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kuhrqtakdtiicfdpbdaussundwhmeayt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edvqgvkfzqpqdpredxdakiwovbvpuzhg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wznfechuyulgauqzgrjuvagkenfpnuzc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bfjairfmwfdvkvgejszcwxnylwnresky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxoljqbwlcpoogsnhyqbsrvfaorzsifs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhxdeubiumizyktmeduofhwzueqwvrgd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjlvrldmhiarttvugsqhlngelowjboqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yrdoamfqtxoaiwvgshupwspizikluehg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxannboqvkugybbrzyiodiwidyuajgcb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqohjkvkykzeqqbituzrenmniourhgcb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rvvfcqktdxunpumonkmcaguwckievuvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cyomcousmpqmtakynisfphrfqcuxuubv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkduoggmbsjjfwuepugeaanmhuxnesni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znxvjarspjjaiiejxuqwtdtgtzohgkeq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghbgvzcmtnoricennmqiheyjxihdvktk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mexatrepvbfejlorweyvdvtczuidtiyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"krahsiflbvryimprpiqklrdghfisrrkx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qrfzmtzoekqtszylnznhnuizdmgcymlg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"leqxtynuubrlpvwypdmtkyqkymdncbll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jrtgrwjsjpxweqnhpbffgqeuffgacnfb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqnlnwfskrmwjzybjalknwvgnvnuinby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eosiiponnfegfktdlgcwouourismmmxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxemzqyyhmptezfhdrlapknucssaxqkn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gbkxabgfsfnrbsurhsvgcdrhoyepuytf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ucsrgntehasgjaqrmkcscusrnzosvtyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lisnuuzassadnbkakrleqsncbhrufxho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nofypyambhauokumkvbczdqlonnipvir","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aysryyyzebrgjxlblsvfpiaitmsppslx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urnyibtslqdpxqmhpfoqtwqmlyxrfqru","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"scftcupbvylsyvicxkbesahysklqpxpu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qngnasxfbxvhaibcmxcxceicoqwvnqie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eumvxnjudfgsrylmbcmlrwbfpnodlxnu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecisloknrjzrcsjvvrccawzdqxvqrone","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjqvqjqjgayvbbifhrrokkkrazwpdhju","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"osmxlzcbkovvidyuffknelwuhtirzilw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"chuszipiatvrlfnxqpffgcttfrfayplh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvdqihniejiddgrpvxjfypfuhiwodwbo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxihyomakenwoaqyjnndndvmhyvjsbea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfspylhcncdfdryxuitvbfgibownogfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rmskdgxfazmqgyilggfmrvkikblmiied","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwybdimarwlnazsvcjvpwmjqegjopwad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehbozjrvjehhobybfhiegzxsgktbnkxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nawvlizrnjlpmkkyrkyhswmxwzatbhdi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvbyrfavnuoiyrnlubehouviitupzncx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qbgqiiogvwjzhnjloegfnfrxvkjiizdm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"inqibysnqsannwlvhfaulnkyjpqmbbah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqmrjizmmkxxuchvaubrzhewzcciapgw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"imwqmwxhphrefrwacjwtzduiwbpuzgoq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oamxicuwhqhfkhhmszsoawytvaclrjcz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"odprbxeknghqoqtmqccbscyuweissecx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hildfbwbudlshduchntqmoaorvlzkigl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxisnwcbjjpxqgwtydrsffdeurhlwaui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ungtlexyeqaetdfkkbnwrjclebsxzdww","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tohywacjybpujmuuxafhovkuzscbknpe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqgwscxutockpteiyfzbpwygqyovmtzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lnpkhhwnjzgmhbcnkxpciexaqpysirds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmgaoetgdrnqbfeoswsjguohqrwvsrop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oplismtambzazchytpparggtphylscaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvnosujqtnefmxfqiodqfjrdtuewvmxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fetjvgqeaojheztnkiqxbxrsyrorkijo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axrnjvwxscxdsxxclibeeivspbmcluvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghemdwtwtfvwgqgkmuqchtroomsctfke","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cxkaitwzdeztuwjmqtepqikwiqgopttq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"breyydhevroyhqpbpenddzylkcraztoe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"subnvjlvmphmufehyhvrhkkklesnxpaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zahgmgddseslpjqnpmxsedfkjgpisrxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urrapttugmtqxxbazypcscebkqgyrbpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yysavozyhiskdrwmweasiegcdrgplvbb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"asgdycpihnbyveysvqhogwcvoxxrntop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ayqnncqacdqnyrffvobkdoesvdsemlvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dturzvbcbnxcummkwvqeakggrkxjkoec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fadxjnftvtnpnubaxgweuhjzirpnwovi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ennhyqoqxuttomnzyymmpvibgapallyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lcilfummvvjmosqnhwpijfszfansuedv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"okshwqmbsusohtxhjkyepkhwxjkpizwd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtojzccijwrejyaugawyrjsekdgwsxfl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkoohavmmvdjbmbuzwospiykzkaemekp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kkwggrrtvxwwnjiinjbweytjlszkcrmw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vblygbgewvxyuulswbqzdrcvhhyunkky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vziqzuamksplfgcryvnbnqspqfwddvla","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wrtiaxaxsofjosrzopyeptymfjtpjsna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfwpnbefxwfrxyijpybxknfuuvizdvun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uytqroswcnxtqkjtvcjbohtkfmuxscqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fsmcwputgnrtqlycqahjvzatqnkspnjf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxpeekuqxvbfkgxjwsljyqepokbpiull","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vmbutoojjpzwljtuzmqqpifwietfyifd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thsfxteorzqrveedfpsdetoblnppmqdz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqomjiywkqzebuxcvowgatjgrrjdwdjw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dsrdhnupwuwnsccmlotrsdcmbapiyofw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"chwgvhyicgykvdycctdbpzkytpcfgntp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tycswuwbzjxhchrzuerlonwpghsojeal","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drwqldfiwwwrhirsaqpsqczpjnviugyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgprkgkdmnyrvmvkhgqjfodpfmnixrrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghqjfwhzuztkgzhbdsptaedevyhnyebz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yrlacmnfsrvaonmmixhuwobecreieism","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtwcnykeygmwkjqbtrywmaydqbdiiqcs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjogagperuupbadbfzmapnjjzpviigjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666734,"databaseName":"models_schema","ddl":"CREATE TABLE `aiuvcawgjavfsityazsbykuodftgteoa` (\n `skzkhkpshjeeplfgwuwpxjinuelzhfya` int NOT NULL,\n `euddrzonhywgjzxjhhgvzjymzgburfkc` int DEFAULT NULL,\n `czvgjnoqmlbostnuriisyblwsarhupxy` int DEFAULT NULL,\n `xsfgmpceigpizljrhglxvoqohjnfdmin` int DEFAULT NULL,\n `uqlurpkjbbmjevhpsvenksgwzayrwhfv` int DEFAULT NULL,\n `byusfqjxbmjhxoexxytilgqslopdxlrj` int DEFAULT NULL,\n `errkcsgherrsncaakqummvaocesvfphh` int DEFAULT NULL,\n `vtnznbwglchaojgkdevilhffgzgbbeho` int DEFAULT NULL,\n `mvwuziyldmognpcivtfttzastmpkqrkl` int DEFAULT NULL,\n `olfpzkpocohvfrblomuloqevvgbyjbmh` int DEFAULT NULL,\n `iipancvoknuptoomllrwbiuxeztrluvz` int DEFAULT NULL,\n `dqprntjcdtvnlylxeokaszwrwkujjwsp` int DEFAULT NULL,\n `svepsloyliefusfhcqxdtvjnlvouhyqr` int DEFAULT NULL,\n `kjqshcpdhpnhzgnzpwerecmybytvgoud` int DEFAULT NULL,\n `xexksodtbiypgczpmmmfftstcgeshkkf` int DEFAULT NULL,\n `wtdlqvpeysqszsjfuntgyjdvtadymlac` int DEFAULT NULL,\n `qlwoptiiryhtwccuhajtecuyxwnhwdfn` int DEFAULT NULL,\n `oyqrdxlrfccbebiqpwgyivhjkduigigo` int DEFAULT NULL,\n `coxsdtkhniviosrgtplexjgzvqhhutbt` int DEFAULT NULL,\n `sgluxonjxyjrmgwwpxzpbbvahlftdyjn` int DEFAULT NULL,\n `srminmfagiimkpljbewuibihkrefbdfu` int DEFAULT NULL,\n `noesasolmsithhgkkbuuepgzfclgqzns` int DEFAULT NULL,\n `ytmzciulhrwainhymqanhjbscbpschma` int DEFAULT NULL,\n `vtgyluyygceueumalpdpagmmgowawuno` int DEFAULT NULL,\n `ezfwwbpikvgsdbuyhqcahdmcdcpcjbtf` int DEFAULT NULL,\n `cyjvffhgwqanscdiyxedgumcyvhdncfz` int DEFAULT NULL,\n `ekdehnowujadfmawasmtgwjwmwdhtitj` int DEFAULT NULL,\n `uwvwuabpiqwwnlhuinfuelbwjuqjxydm` int DEFAULT NULL,\n `gupgvdavjzyjlghcghbybwwmxjlnqnvt` int DEFAULT NULL,\n `pszjzedtbrjmrhnfpgmikqwziankerdc` int DEFAULT NULL,\n `iuwxlxhzvetqcuflnmyeaooevnwwbfjx` int DEFAULT NULL,\n `tfpwqhqiznfxbintjtepxeckxehgnuho` int DEFAULT NULL,\n `xeapscbbkgswfjngqbsjsorwamnvezly` int DEFAULT NULL,\n `qdbevxejivmjjtaueaapyhiccdqvffte` int DEFAULT NULL,\n `zgtqfkqspkygaeveyrszbpyutecdmxhd` int DEFAULT NULL,\n `rknjyduvsphxskunfpifciaunignymjn` int DEFAULT NULL,\n `yyvautxccdncemyhnuzijssqyhmcamze` int DEFAULT NULL,\n `fndtuufiajfwtputgzmeevlsaaymgzgc` int DEFAULT NULL,\n `tcvoupkezpkumdjzvingshfpcagkiuii` int DEFAULT NULL,\n `nikgmlwlfmreivhcqjscxbozcvxjecwd` int DEFAULT NULL,\n `hqpyslqwhodlgcvyawhgzyllkksxjuak` int DEFAULT NULL,\n `prqxsekbnnmpfeiroezvgirvodleuozi` int DEFAULT NULL,\n `ewibzmbegxxlykeprbohuwplgjhqasdl` int DEFAULT NULL,\n `qgzkltmytdmbagvbhkrkroshkzomdxpx` int DEFAULT NULL,\n `cyluuwinrzoygkxxsrhozfbkeauxezwz` int DEFAULT NULL,\n `drijimtctbmtpvmyuitoerjggdlclpfy` int DEFAULT NULL,\n `avtikqsaaghulsrobawtffhksartrjsc` int DEFAULT NULL,\n `bliyuagxkksvomjbuqlbsczxdyebwnxe` int DEFAULT NULL,\n `cfrxnodacfoxddbuvrxajqvruulbfwcg` int DEFAULT NULL,\n `imvuimfxlfhaacexakfqgydrckjfhfzk` int DEFAULT NULL,\n `zblgbpjzatrrjrsiirpzcjntmrqnifwd` int DEFAULT NULL,\n `pnexckvcwqcxnfowdcadzbaitivldbis` int DEFAULT NULL,\n `jwihfmtldmeeihodzpawxuysmbvqolol` int DEFAULT NULL,\n `rmuggvsduwxfabykdcczljeuwugeiaej` int DEFAULT NULL,\n `apooxerakjppmpppiuvcfytysideyyvq` int DEFAULT NULL,\n `rkycwpdpgukhquqvjnjgbcupttworoup` int DEFAULT NULL,\n `bcnyoivkqlkpubczkutaxqkttrktbhiq` int DEFAULT NULL,\n `lzargnlljhxpcljlvxhnjxnrqyvrskcg` int DEFAULT NULL,\n `odtcbzwtmyynkcgcelezpwhsmiaqwhaa` int DEFAULT NULL,\n `tbnlrystljqwwyibtqynkvagwbpkbxyr` int DEFAULT NULL,\n `gywivzolnwwrcittrydctynohfhixaen` int DEFAULT NULL,\n `ibkupfyhiuawoagzbbxqrimzeqfmeorr` int DEFAULT NULL,\n `zjmdfizofioblvmqfhxwuytuerpszzkx` int DEFAULT NULL,\n `wkniinpeweocvqulzmwithtuohuvohev` int DEFAULT NULL,\n `qaqnnkgqvspephcjiulndzwprxfgbixq` int DEFAULT NULL,\n `agonhyegkapzerxefnjhrzozbeisadpn` int DEFAULT NULL,\n `uijvsowrryxmzzwmlrdfnkjximwxbdlp` int DEFAULT NULL,\n `idmgvxgqsxhjouaziiuhfhvuwzwypmcf` int DEFAULT NULL,\n `axgpnneekbbtxguqwosfisjtsvkhmmmu` int DEFAULT NULL,\n `wosgsbxljnqkdcekzlrggkprhcihtbil` int DEFAULT NULL,\n `zcsjztaaipjltwjvgqdujixtyrfapcwy` int DEFAULT NULL,\n `ykdewxwjnhexwnbknceyuzgkprqzwsvl` int DEFAULT NULL,\n `qdpidijfearqbcltracaxxkgvsktbqxm` int DEFAULT NULL,\n `rtuqfmrmlbcjcnhxbfghpjyzivtunlgr` int DEFAULT NULL,\n `jiywwzaiqxwdhhrriuytgmqydoffffqs` int DEFAULT NULL,\n `tmpdpdqqjlkeraowzltyqdbngpxlmyjf` int DEFAULT NULL,\n `yqlnzprdmpqwlijyqpeggwlefxljghyr` int DEFAULT NULL,\n `iugwkwazkjipxecnrcglubmidelelmwa` int DEFAULT NULL,\n `eraullaaikjwsxpuflgesimryhzijfsm` int DEFAULT NULL,\n `ybcczerfbxadyxnxqdolbmnspgwajnqv` int DEFAULT NULL,\n `epeqtoxitvruhjjzkilxodggidaeocdn` int DEFAULT NULL,\n `zcaijjzwanuvtqdhygcchxpkrkkcdpjr` int DEFAULT NULL,\n `eunupvhrjltswasnnzvqlrgimdgrkgwo` int DEFAULT NULL,\n `knoomndavtmoohuzumrloeurntqntmnn` int DEFAULT NULL,\n `ijqbpwpjrsjdzqdtvdhmmjxexeuocqyj` int DEFAULT NULL,\n `kbqmeqxypdtqmzexlzekfbktlpgyebos` int DEFAULT NULL,\n `maezpewgoiebngspswxcfrnohgvkcwvg` int DEFAULT NULL,\n `fpygvpqajnrhhbryabopwmnpvjggtati` int DEFAULT NULL,\n `vejhbkzpbatjbvteghrajaewuggrtprd` int DEFAULT NULL,\n `dabfxmqfncxrqyjqlfwhtfgmtwnzrtxd` int DEFAULT NULL,\n `pkmgmqtzbfnxevdagmdvkxlqoeshprpy` int DEFAULT NULL,\n `dylfpitmsqeecczoxpddzkbaklpisspm` int DEFAULT NULL,\n `azvkihawluhrmavhyqznsdudoeqpvycw` int DEFAULT NULL,\n `gsawpavbgkdacyefzawagrotpszxywjf` int DEFAULT NULL,\n `tllmeadkzqaivtpboxstplfinfihtswm` int DEFAULT NULL,\n `djufjizigmzyxxaabrnoauidievivxkh` int DEFAULT NULL,\n `iodujeyxrsmrpeiwdertczlmnolplwpb` int DEFAULT NULL,\n `jnucuoordnblnjfejwfygwmisltwpyzv` int DEFAULT NULL,\n `jkckolswpiyshsryzphzikxxywvqnsyv` int DEFAULT NULL,\n `lsdzmbydvbpsqmvbrlyktzpoocbcmvfz` int DEFAULT NULL,\n PRIMARY KEY (`skzkhkpshjeeplfgwuwpxjinuelzhfya`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"aiuvcawgjavfsityazsbykuodftgteoa\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["skzkhkpshjeeplfgwuwpxjinuelzhfya"],"columns":[{"name":"skzkhkpshjeeplfgwuwpxjinuelzhfya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"euddrzonhywgjzxjhhgvzjymzgburfkc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"czvgjnoqmlbostnuriisyblwsarhupxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsfgmpceigpizljrhglxvoqohjnfdmin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqlurpkjbbmjevhpsvenksgwzayrwhfv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"byusfqjxbmjhxoexxytilgqslopdxlrj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"errkcsgherrsncaakqummvaocesvfphh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtnznbwglchaojgkdevilhffgzgbbeho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvwuziyldmognpcivtfttzastmpkqrkl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"olfpzkpocohvfrblomuloqevvgbyjbmh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iipancvoknuptoomllrwbiuxeztrluvz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqprntjcdtvnlylxeokaszwrwkujjwsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"svepsloyliefusfhcqxdtvjnlvouhyqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjqshcpdhpnhzgnzpwerecmybytvgoud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xexksodtbiypgczpmmmfftstcgeshkkf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wtdlqvpeysqszsjfuntgyjdvtadymlac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qlwoptiiryhtwccuhajtecuyxwnhwdfn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oyqrdxlrfccbebiqpwgyivhjkduigigo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"coxsdtkhniviosrgtplexjgzvqhhutbt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sgluxonjxyjrmgwwpxzpbbvahlftdyjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"srminmfagiimkpljbewuibihkrefbdfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"noesasolmsithhgkkbuuepgzfclgqzns","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytmzciulhrwainhymqanhjbscbpschma","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtgyluyygceueumalpdpagmmgowawuno","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezfwwbpikvgsdbuyhqcahdmcdcpcjbtf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cyjvffhgwqanscdiyxedgumcyvhdncfz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekdehnowujadfmawasmtgwjwmwdhtitj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uwvwuabpiqwwnlhuinfuelbwjuqjxydm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gupgvdavjzyjlghcghbybwwmxjlnqnvt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pszjzedtbrjmrhnfpgmikqwziankerdc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iuwxlxhzvetqcuflnmyeaooevnwwbfjx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tfpwqhqiznfxbintjtepxeckxehgnuho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xeapscbbkgswfjngqbsjsorwamnvezly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdbevxejivmjjtaueaapyhiccdqvffte","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zgtqfkqspkygaeveyrszbpyutecdmxhd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rknjyduvsphxskunfpifciaunignymjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yyvautxccdncemyhnuzijssqyhmcamze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fndtuufiajfwtputgzmeevlsaaymgzgc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tcvoupkezpkumdjzvingshfpcagkiuii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nikgmlwlfmreivhcqjscxbozcvxjecwd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqpyslqwhodlgcvyawhgzyllkksxjuak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prqxsekbnnmpfeiroezvgirvodleuozi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ewibzmbegxxlykeprbohuwplgjhqasdl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qgzkltmytdmbagvbhkrkroshkzomdxpx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cyluuwinrzoygkxxsrhozfbkeauxezwz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drijimtctbmtpvmyuitoerjggdlclpfy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avtikqsaaghulsrobawtffhksartrjsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bliyuagxkksvomjbuqlbsczxdyebwnxe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfrxnodacfoxddbuvrxajqvruulbfwcg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"imvuimfxlfhaacexakfqgydrckjfhfzk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zblgbpjzatrrjrsiirpzcjntmrqnifwd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnexckvcwqcxnfowdcadzbaitivldbis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwihfmtldmeeihodzpawxuysmbvqolol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rmuggvsduwxfabykdcczljeuwugeiaej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"apooxerakjppmpppiuvcfytysideyyvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkycwpdpgukhquqvjnjgbcupttworoup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bcnyoivkqlkpubczkutaxqkttrktbhiq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lzargnlljhxpcljlvxhnjxnrqyvrskcg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"odtcbzwtmyynkcgcelezpwhsmiaqwhaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbnlrystljqwwyibtqynkvagwbpkbxyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gywivzolnwwrcittrydctynohfhixaen","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibkupfyhiuawoagzbbxqrimzeqfmeorr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjmdfizofioblvmqfhxwuytuerpszzkx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wkniinpeweocvqulzmwithtuohuvohev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qaqnnkgqvspephcjiulndzwprxfgbixq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agonhyegkapzerxefnjhrzozbeisadpn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uijvsowrryxmzzwmlrdfnkjximwxbdlp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idmgvxgqsxhjouaziiuhfhvuwzwypmcf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axgpnneekbbtxguqwosfisjtsvkhmmmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wosgsbxljnqkdcekzlrggkprhcihtbil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zcsjztaaipjltwjvgqdujixtyrfapcwy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykdewxwjnhexwnbknceyuzgkprqzwsvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdpidijfearqbcltracaxxkgvsktbqxm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rtuqfmrmlbcjcnhxbfghpjyzivtunlgr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jiywwzaiqxwdhhrriuytgmqydoffffqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmpdpdqqjlkeraowzltyqdbngpxlmyjf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqlnzprdmpqwlijyqpeggwlefxljghyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iugwkwazkjipxecnrcglubmidelelmwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eraullaaikjwsxpuflgesimryhzijfsm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ybcczerfbxadyxnxqdolbmnspgwajnqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"epeqtoxitvruhjjzkilxodggidaeocdn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zcaijjzwanuvtqdhygcchxpkrkkcdpjr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eunupvhrjltswasnnzvqlrgimdgrkgwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knoomndavtmoohuzumrloeurntqntmnn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijqbpwpjrsjdzqdtvdhmmjxexeuocqyj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kbqmeqxypdtqmzexlzekfbktlpgyebos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"maezpewgoiebngspswxcfrnohgvkcwvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpygvpqajnrhhbryabopwmnpvjggtati","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vejhbkzpbatjbvteghrajaewuggrtprd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dabfxmqfncxrqyjqlfwhtfgmtwnzrtxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkmgmqtzbfnxevdagmdvkxlqoeshprpy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dylfpitmsqeecczoxpddzkbaklpisspm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"azvkihawluhrmavhyqznsdudoeqpvycw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gsawpavbgkdacyefzawagrotpszxywjf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tllmeadkzqaivtpboxstplfinfihtswm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"djufjizigmzyxxaabrnoauidievivxkh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iodujeyxrsmrpeiwdertczlmnolplwpb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jnucuoordnblnjfejwfygwmisltwpyzv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jkckolswpiyshsryzphzikxxywvqnsyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lsdzmbydvbpsqmvbrlyktzpoocbcmvfz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666780,"databaseName":"models_schema","ddl":"CREATE TABLE `arifozcdgamaweuwmigngbztyhjenxgr` (\n `umzxfzbxbbxezvmohbojbqcmjtiryhva` int NOT NULL,\n `cmsehnznhgiogazqdbmjyrbafoswhynk` int DEFAULT NULL,\n `vkfvurntvqwafudvtjfvcznpoiyrcrgb` int DEFAULT NULL,\n `weaxrjgnmshrjdjglgihaazvvygvswdc` int DEFAULT NULL,\n `jnxcjszordmdigvnqbcavjxnuvsbmrqy` int DEFAULT NULL,\n `knbrlnzexnwnfzxyoqjmvuckvnvkficn` int DEFAULT NULL,\n `wfvtgxxckjvivqvttxiclgaolgccdofh` int DEFAULT NULL,\n `ryoeyffzhywuzixdajaycopbbfsbiqhe` int DEFAULT NULL,\n `rngieegurhpqdlciuasdwdnqnbzmoiqy` int DEFAULT NULL,\n `tvejvibrgkecnlgbhohfnzcixvomjvxu` int DEFAULT NULL,\n `dghzkmayhslknqdacyvyxfotgdhhkvac` int DEFAULT NULL,\n `lxgckqebriutulmtqbxavonmnlbmqrpo` int DEFAULT NULL,\n `spbfvolddumpicawfjmmvpbqnlpngbry` int DEFAULT NULL,\n `whobxvmfhoflaxzcthtxjefrtvxxewqm` int DEFAULT NULL,\n `casbgkngvamkcafpelcbzpwaduailhqo` int DEFAULT NULL,\n `emalbtiaetvfkokjgfwykpidtvehmfdv` int DEFAULT NULL,\n `ohwhppirxnwgrhzfxlzqzpwadpxzpogr` int DEFAULT NULL,\n `pkjbuplgsercftwtykectcgcizqzebev` int DEFAULT NULL,\n `plzqiewnuoselvwyvdmmqejrgwfdrbqt` int DEFAULT NULL,\n `deayudxqosevulbulhqudntetipscsop` int DEFAULT NULL,\n `plxryhsrfdctjkmsxvifawnmwjjzpfds` int DEFAULT NULL,\n `qqkkjkthqhoakbcbxwxsqbmovynnqtgl` int DEFAULT NULL,\n `pzguhppnzpcqszueqxkmsiflddvmgixs` int DEFAULT NULL,\n `ikseujbmiefdecgdjaaqpzkflggnayoz` int DEFAULT NULL,\n `pkyuegbkbguhxasxxutiudlqkokyuxxl` int DEFAULT NULL,\n `kueucrqmnmzqwawxtqyrodicfaviifrb` int DEFAULT NULL,\n `kdbplxtursjwlcpzfaeyztcgxacejfhs` int DEFAULT NULL,\n `fvuzlkmpjdhewbjgnbnnygvolybgjrsm` int DEFAULT NULL,\n `twggqhoafgvilkptrpacrhgfuszisbjr` int DEFAULT NULL,\n `hcqvlqztyekzgtavsxmpuwfvpwblmsxo` int DEFAULT NULL,\n `ojhysysrdvzgvmfxlrclmiohebfxglrl` int DEFAULT NULL,\n `ndbtmpmjesniqrozjgeauihlxyfxmgqb` int DEFAULT NULL,\n `unnrklvrjpszgejygzmdoyhgxlfpnbmd` int DEFAULT NULL,\n `xvtpzwbshxuzvdnmqsfrkoizjciukwkc` int DEFAULT NULL,\n `afqpzhbbmtbwulhwdsflquphrovxvkhj` int DEFAULT NULL,\n `sblltftzrsbvsyldnlytuvkfepfjcrpd` int DEFAULT NULL,\n `lylagcfpbvqxhzglppyvetlapkbxvylf` int DEFAULT NULL,\n `sxfyyhglmjrwbtohyeafmuzwxytepsgj` int DEFAULT NULL,\n `ityypvhkufezvxpdgcrkjobjmwyhlfsh` int DEFAULT NULL,\n `znvntqtsugljwzhnrkyoevipeufuohfw` int DEFAULT NULL,\n `ypswtvevoabuzrwcjknimuusnkspkhcj` int DEFAULT NULL,\n `icejzemckuckakzykmcrnlwpjysegafe` int DEFAULT NULL,\n `zhavagqijnfyysywphwpcxnzjpkunxxg` int DEFAULT NULL,\n `folrlarletetrrsbgawmolpheyowboyd` int DEFAULT NULL,\n `pasyucdybqydfggrpavayjziegisoxtr` int DEFAULT NULL,\n `ulrozivjapgcgcnrhkgyufxjujwckxmk` int DEFAULT NULL,\n `mpjtwutoprredovayicsgzjevrnzhjax` int DEFAULT NULL,\n `kyrkilqwpgumtvrjwflkjvsagfmgykxc` int DEFAULT NULL,\n `tkcfqomfvukstichwsbjmpqgowzsbzhj` int DEFAULT NULL,\n `vabydergmegxqabpfnykpoligotawutu` int DEFAULT NULL,\n `whgiedmtalkceemhsmuwibrndljagqlk` int DEFAULT NULL,\n `kzmgdcjxjnwcbosalkbbawgrihrqbemf` int DEFAULT NULL,\n `lwubozpyreheldxzzbiinoehxvlscfbl` int DEFAULT NULL,\n `ubfgxyywgqkhpwauykxskviyhrmylade` int DEFAULT NULL,\n `sstvrhjvqjdetvvzsuqnxynnkkbagvep` int DEFAULT NULL,\n `rmnnyvbpfljeypemhjdwrdwantbmbbwa` int DEFAULT NULL,\n `nbusrvldgibnegqircglyxilgvckwlhw` int DEFAULT NULL,\n `uwldsqinzujhmvtzdvcaqtdjnkqjudec` int DEFAULT NULL,\n `oyatlssuikqgvgqyxefwmivxgctrrtdb` int DEFAULT NULL,\n `pwhnyrunopokfxpjwcnvwakybokbvswf` int DEFAULT NULL,\n `rnmtebrbezsdvqojiwwwnfotxdhtcyyn` int DEFAULT NULL,\n `tkfwmjidbysqfdbqexloykmtgzkbvivm` int DEFAULT NULL,\n `kmogknrkaefuacbrkxfaapqqfixltdlv` int DEFAULT NULL,\n `zjosixsyqisauktxxnfmwfmmdoysgfus` int DEFAULT NULL,\n `whdugfjowubdjdsclufeipnnvanaxxww` int DEFAULT NULL,\n `kzqvrcngyjtkacakjdbdmfatiuimubtp` int DEFAULT NULL,\n `gjluehfabdiyysvkxznjfyfdvuurdmqi` int DEFAULT NULL,\n `wniveyusyhbihundenkdtxebmfnsypkl` int DEFAULT NULL,\n `xdzpdowcibdoqhqdhrkfyqjoqunxjtqn` int DEFAULT NULL,\n `yourelprihbqeasaswxykyayaavhnzik` int DEFAULT NULL,\n `dhrysegiibchyepyzsvfqiiapbgxstom` int DEFAULT NULL,\n `qczrohnhabrthphjxkropxgqxsjfaggr` int DEFAULT NULL,\n `nrdojvlcwkeymlvhzmaurdicuqiciimi` int DEFAULT NULL,\n `mnnpzfhzibakwdtzhndheaovyicsdhvr` int DEFAULT NULL,\n `yhzqevpotcwtohthkqnwdkmucvbyzjfe` int DEFAULT NULL,\n `kousxycegfkrpvykdcciqwzebsmwduob` int DEFAULT NULL,\n `lxlbufagsnnrjodqdzzdpiledadxyfqc` int DEFAULT NULL,\n `mlldbaxarruanvmutrrszsasfymzakxh` int DEFAULT NULL,\n `wlgxdxlkqhalchzhnngxnvokqvldrpwa` int DEFAULT NULL,\n `yqmxazpctxidaycbxwrxhgdqcqxmjlsr` int DEFAULT NULL,\n `blfyyfqwgwkxwcidfsfnccgymryxnxdg` int DEFAULT NULL,\n `xmzafxabeumomqrdtnzwqdboqlbinrdt` int DEFAULT NULL,\n `ienhbfkggiwtwblcmmwnjslhtogcfdnq` int DEFAULT NULL,\n `jmjinjcfcrkdyytozqrsqsnjvpsqdjox` int DEFAULT NULL,\n `mzwbyitsfrjlwklodjjxphgibzvsaaza` int DEFAULT NULL,\n `episdhhdsemrgupnvrpkhxtdaubiqnty` int DEFAULT NULL,\n `cabluwubxlryugjftqghmpywdacedqle` int DEFAULT NULL,\n `flmgeohdftmwsdtzrwlkaswhlfubonmh` int DEFAULT NULL,\n `skjsfidydnezbmbywohgekgatmpyjokr` int DEFAULT NULL,\n `ldghttmfchnaguombaqhfnbaqwynjdcw` int DEFAULT NULL,\n `egdfukrzldfiorgpfquijibcehwmwsts` int DEFAULT NULL,\n `nccvbivequnfmynnorrusipxkggejepm` int DEFAULT NULL,\n `qvvkpqxvlzkwtetcdmjjwcmvzplrbcwo` int DEFAULT NULL,\n `itntdtxgfntvqjewyqdjlydnamwjwrry` int DEFAULT NULL,\n `lfbczlxxdrkqusurslvjxfdptsttjtdk` int DEFAULT NULL,\n `ehzsvqmjchfyjwsivjseukhizxdiykzz` int DEFAULT NULL,\n `uvqbiwuslmheolqmbpetferodbhubrvu` int DEFAULT NULL,\n `ehacrvmleiytdscfdicfhwlqfteqoakh` int DEFAULT NULL,\n `nyfqobdihpsheaizffackjyrnubgrbco` int DEFAULT NULL,\n `wrjsrqdxiaalaqthvszatqvoqngqbfyk` int DEFAULT NULL,\n PRIMARY KEY (`umzxfzbxbbxezvmohbojbqcmjtiryhva`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"arifozcdgamaweuwmigngbztyhjenxgr\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["umzxfzbxbbxezvmohbojbqcmjtiryhva"],"columns":[{"name":"umzxfzbxbbxezvmohbojbqcmjtiryhva","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"cmsehnznhgiogazqdbmjyrbafoswhynk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkfvurntvqwafudvtjfvcznpoiyrcrgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"weaxrjgnmshrjdjglgihaazvvygvswdc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jnxcjszordmdigvnqbcavjxnuvsbmrqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knbrlnzexnwnfzxyoqjmvuckvnvkficn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfvtgxxckjvivqvttxiclgaolgccdofh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ryoeyffzhywuzixdajaycopbbfsbiqhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rngieegurhpqdlciuasdwdnqnbzmoiqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvejvibrgkecnlgbhohfnzcixvomjvxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dghzkmayhslknqdacyvyxfotgdhhkvac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxgckqebriutulmtqbxavonmnlbmqrpo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"spbfvolddumpicawfjmmvpbqnlpngbry","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"whobxvmfhoflaxzcthtxjefrtvxxewqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"casbgkngvamkcafpelcbzpwaduailhqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"emalbtiaetvfkokjgfwykpidtvehmfdv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohwhppirxnwgrhzfxlzqzpwadpxzpogr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkjbuplgsercftwtykectcgcizqzebev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"plzqiewnuoselvwyvdmmqejrgwfdrbqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"deayudxqosevulbulhqudntetipscsop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"plxryhsrfdctjkmsxvifawnmwjjzpfds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqkkjkthqhoakbcbxwxsqbmovynnqtgl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pzguhppnzpcqszueqxkmsiflddvmgixs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikseujbmiefdecgdjaaqpzkflggnayoz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkyuegbkbguhxasxxutiudlqkokyuxxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kueucrqmnmzqwawxtqyrodicfaviifrb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kdbplxtursjwlcpzfaeyztcgxacejfhs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fvuzlkmpjdhewbjgnbnnygvolybgjrsm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twggqhoafgvilkptrpacrhgfuszisbjr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hcqvlqztyekzgtavsxmpuwfvpwblmsxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojhysysrdvzgvmfxlrclmiohebfxglrl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ndbtmpmjesniqrozjgeauihlxyfxmgqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unnrklvrjpszgejygzmdoyhgxlfpnbmd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvtpzwbshxuzvdnmqsfrkoizjciukwkc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afqpzhbbmtbwulhwdsflquphrovxvkhj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sblltftzrsbvsyldnlytuvkfepfjcrpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lylagcfpbvqxhzglppyvetlapkbxvylf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sxfyyhglmjrwbtohyeafmuzwxytepsgj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ityypvhkufezvxpdgcrkjobjmwyhlfsh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znvntqtsugljwzhnrkyoevipeufuohfw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypswtvevoabuzrwcjknimuusnkspkhcj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icejzemckuckakzykmcrnlwpjysegafe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhavagqijnfyysywphwpcxnzjpkunxxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"folrlarletetrrsbgawmolpheyowboyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pasyucdybqydfggrpavayjziegisoxtr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ulrozivjapgcgcnrhkgyufxjujwckxmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpjtwutoprredovayicsgzjevrnzhjax","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kyrkilqwpgumtvrjwflkjvsagfmgykxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkcfqomfvukstichwsbjmpqgowzsbzhj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vabydergmegxqabpfnykpoligotawutu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"whgiedmtalkceemhsmuwibrndljagqlk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzmgdcjxjnwcbosalkbbawgrihrqbemf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwubozpyreheldxzzbiinoehxvlscfbl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubfgxyywgqkhpwauykxskviyhrmylade","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sstvrhjvqjdetvvzsuqnxynnkkbagvep","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rmnnyvbpfljeypemhjdwrdwantbmbbwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbusrvldgibnegqircglyxilgvckwlhw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uwldsqinzujhmvtzdvcaqtdjnkqjudec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oyatlssuikqgvgqyxefwmivxgctrrtdb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwhnyrunopokfxpjwcnvwakybokbvswf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnmtebrbezsdvqojiwwwnfotxdhtcyyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkfwmjidbysqfdbqexloykmtgzkbvivm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kmogknrkaefuacbrkxfaapqqfixltdlv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjosixsyqisauktxxnfmwfmmdoysgfus","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"whdugfjowubdjdsclufeipnnvanaxxww","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzqvrcngyjtkacakjdbdmfatiuimubtp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjluehfabdiyysvkxznjfyfdvuurdmqi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wniveyusyhbihundenkdtxebmfnsypkl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdzpdowcibdoqhqdhrkfyqjoqunxjtqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yourelprihbqeasaswxykyayaavhnzik","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhrysegiibchyepyzsvfqiiapbgxstom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qczrohnhabrthphjxkropxgqxsjfaggr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nrdojvlcwkeymlvhzmaurdicuqiciimi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnnpzfhzibakwdtzhndheaovyicsdhvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhzqevpotcwtohthkqnwdkmucvbyzjfe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kousxycegfkrpvykdcciqwzebsmwduob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxlbufagsnnrjodqdzzdpiledadxyfqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mlldbaxarruanvmutrrszsasfymzakxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wlgxdxlkqhalchzhnngxnvokqvldrpwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqmxazpctxidaycbxwrxhgdqcqxmjlsr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blfyyfqwgwkxwcidfsfnccgymryxnxdg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xmzafxabeumomqrdtnzwqdboqlbinrdt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ienhbfkggiwtwblcmmwnjslhtogcfdnq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmjinjcfcrkdyytozqrsqsnjvpsqdjox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzwbyitsfrjlwklodjjxphgibzvsaaza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"episdhhdsemrgupnvrpkhxtdaubiqnty","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cabluwubxlryugjftqghmpywdacedqle","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flmgeohdftmwsdtzrwlkaswhlfubonmh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skjsfidydnezbmbywohgekgatmpyjokr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ldghttmfchnaguombaqhfnbaqwynjdcw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"egdfukrzldfiorgpfquijibcehwmwsts","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nccvbivequnfmynnorrusipxkggejepm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvvkpqxvlzkwtetcdmjjwcmvzplrbcwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itntdtxgfntvqjewyqdjlydnamwjwrry","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfbczlxxdrkqusurslvjxfdptsttjtdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehzsvqmjchfyjwsivjseukhizxdiykzz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvqbiwuslmheolqmbpetferodbhubrvu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehacrvmleiytdscfdicfhwlqfteqoakh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nyfqobdihpsheaizffackjyrnubgrbco","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wrjsrqdxiaalaqthvszatqvoqngqbfyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666818,"databaseName":"models_schema","ddl":"CREATE TABLE `avimlxteragkjlgouvjrcmgasysrsxih` (\n `gfywhjxsvkpssgqmhfiwglqpkrbhgwqz` int NOT NULL,\n `livtmihvmmnjdocbcptcqezadzsnxvdl` int DEFAULT NULL,\n `rhmurssvdebodruziawnvsvzbsakqpxv` int DEFAULT NULL,\n `vxoulpthpekkecajtycytmzkgaioakqz` int DEFAULT NULL,\n `vfycnzjjrqqrzsbbrpyfsiujyuuswzej` int DEFAULT NULL,\n `lgvlqzegiqedyjekyjlabhvnhsdprbrg` int DEFAULT NULL,\n `rkbfhelweyhkunqiambhntcbwjtgwyuk` int DEFAULT NULL,\n `rwfadhupwjexndedlgabgoexnzmsgguo` int DEFAULT NULL,\n `evswqddcdmaudgvrvynzxtrffbyylmfo` int DEFAULT NULL,\n `xexntjhpsxxpcgvrlldpdsfrgojcfnpj` int DEFAULT NULL,\n `mhbsrrfplogdhyzfprralkzapntyyetr` int DEFAULT NULL,\n `pcvnawwfkhpmklfftkqqpjaodvmxezmk` int DEFAULT NULL,\n `zaerfipwqhdqklmmihoqfqxwjodvhrnb` int DEFAULT NULL,\n `ufajhcdxemlmdgigjpqxtapwzqlvyhim` int DEFAULT NULL,\n `kgardodypekovpbmlmajwujbpyhtzadr` int DEFAULT NULL,\n `lzvpxsksypzeokemfiljrweigflrczyt` int DEFAULT NULL,\n `rcgwipzsitsakrrosqewyxpdvnrmwisg` int DEFAULT NULL,\n `luohzzxxidwujwfqffyyxlwnxcphrsyf` int DEFAULT NULL,\n `xwymrfezubqcedkfxakamqqhapqhuxpt` int DEFAULT NULL,\n `nhrcqpezgkvcpshjcfgktqzaxrswagsm` int DEFAULT NULL,\n `uaskatuqrcllzwjmezcsqwwkhkfizukk` int DEFAULT NULL,\n `hexemtctbxzinuvjyfftixaaverjchxh` int DEFAULT NULL,\n `stunoucrgfjyqssuyhhledkfaspxcmwd` int DEFAULT NULL,\n `dzortiwpjwqebbuuacdpbihllxkkqzqz` int DEFAULT NULL,\n `uwdeafbmrmvlfwxezcfajmtjfjksimyf` int DEFAULT NULL,\n `bfdgdfamttuxkhdkqnbpasewaqfzjbec` int DEFAULT NULL,\n `zgywetxpafxlrciutvxfwytcuagdcgtl` int DEFAULT NULL,\n `okhcgbddgtsviaheayupauiirrbjgemn` int DEFAULT NULL,\n `jxlfhhexmidepvqykpvbmeuvokpzzvgz` int DEFAULT NULL,\n `hlafjyllmiunasdwoxrseprfvmkeqvzd` int DEFAULT NULL,\n `ohsdqbgwzwqfkkblsiwfczvsypvuigcm` int DEFAULT NULL,\n `cqfoydokuzmthbpsqrjiuyjvwvgyxapr` int DEFAULT NULL,\n `tskomawwltaakplpvcmywqfdgoxbmtyc` int DEFAULT NULL,\n `ybgnxasybyejjyddswnbtfeuenpquhdd` int DEFAULT NULL,\n `wlqcmsiyuwhyfvbipjrmbnxfwretxfzl` int DEFAULT NULL,\n `tmcfsylcbccqtooytqzbdusxxbkxtlgw` int DEFAULT NULL,\n `wddipcofhzophaxypcskkjbwqposrkzy` int DEFAULT NULL,\n `sbgtpakcwcddsqicprzoodyoifopzavp` int DEFAULT NULL,\n `axaucyurtetkhbmtjxtxqkgnyhfuezhd` int DEFAULT NULL,\n `ogrocyzfbzrwvmevantufysqjssvcnhc` int DEFAULT NULL,\n `njhzoettrufyrmdngzgyyjdnprnbahpf` int DEFAULT NULL,\n `dvzcattjxcmosovmssuhxevsccrssyaf` int DEFAULT NULL,\n `xplmwvxkezjuftjzfswblrvsdvwroxxb` int DEFAULT NULL,\n `ffjpuomyiaqkqwzxzmasfzbbxxhdukhe` int DEFAULT NULL,\n `elbxhfmrbjnhhzrlthqchvglgiydnyzf` int DEFAULT NULL,\n `mynuwnwhkiykqihcnyjpqcwssiqjgrki` int DEFAULT NULL,\n `ltxlbthslqczcnbnrkkysbgvxzwgltva` int DEFAULT NULL,\n `jwywvtckzgxzxgyaxiuojosbclovtptg` int DEFAULT NULL,\n `wbqiriiiyhrjdcwltpyhnnkqpgdujunn` int DEFAULT NULL,\n `lppqziobydwmpigfkoswavrsezpwkiwv` int DEFAULT NULL,\n `qwrydreewpvxftrrqkdcynibveuetsqi` int DEFAULT NULL,\n `edeujwhakckkklqqasirttrbdvdrlihl` int DEFAULT NULL,\n `imaftxsikbcqjqdhbqrvcpzlgteudqid` int DEFAULT NULL,\n `rvcdwrgfkiiiqeooynfhaqvohqojbqau` int DEFAULT NULL,\n `nlohccaklqwckposaazjcvrjkzokykcw` int DEFAULT NULL,\n `cweurnhirdzadhinppfzhstpxdhnkqhc` int DEFAULT NULL,\n `guwxxvjptpqtdxpvwjxzoykemukiivcw` int DEFAULT NULL,\n `saqmovpmiejnnecfznjzyfnlqticipnn` int DEFAULT NULL,\n `sdmgnbdlpvrfyguxhmsjsbgpkohbzskf` int DEFAULT NULL,\n `frkmmekuroqbsxeehxwrgbgispkkgkdf` int DEFAULT NULL,\n `wjdrjpidzzbntqftksascqwgkflpbfhc` int DEFAULT NULL,\n `dccorsudowzwlkdxptevozxzrwbceauk` int DEFAULT NULL,\n `mbuazlsbkzwxenwgcqprweqpjtefbxup` int DEFAULT NULL,\n `uozvxprcjnmgufvjfdywapspmofkemnf` int DEFAULT NULL,\n `wudgqcmpalfksleqvozeoaahhvcdwwoe` int DEFAULT NULL,\n `njdolrwaydwhqeoyzynrncbndfcdmngh` int DEFAULT NULL,\n `icbcqvnkbgbjsuttrotvwwbfykqtuoys` int DEFAULT NULL,\n `kqfmgeivcrgermjkklaslywufcmevbqf` int DEFAULT NULL,\n `cgwackmqlrvdmuzhpfltwxvswjcwkjtq` int DEFAULT NULL,\n `myvqpvhzkgossznllosqxzcqrpmjfgyd` int DEFAULT NULL,\n `ngfrpukxucbvhemyotgxzrqvszptogll` int DEFAULT NULL,\n `cqifujimzvpaclpvjcsmzjslpmpswcla` int DEFAULT NULL,\n `dkclwsyegwofnujywsnaatqgtvkothoy` int DEFAULT NULL,\n `hzxxlxwmsfjkvpnmzxuqvidnreqnjfqk` int DEFAULT NULL,\n `pixcvmzcshxattdejphjtqiyahpuucdb` int DEFAULT NULL,\n `udnsyfiuqypdohmjwqruznqsreadznly` int DEFAULT NULL,\n `psctcxxuyzgbgdtsabsmlqzwwcigwmxz` int DEFAULT NULL,\n `cbmvwarqeeenqlveozxdlwddsaziskoa` int DEFAULT NULL,\n `aaagliaaftisnypmrsfzqbfcdygbugjf` int DEFAULT NULL,\n `cnclfaniyuvvsbrejcwcbzowipejklcr` int DEFAULT NULL,\n `cmtpjzmoyfcvptyyyfpihybtyoxxgrxg` int DEFAULT NULL,\n `fnoymyayocoyhtblcgyaroxjjbyfnyrs` int DEFAULT NULL,\n `ohknwjwhasntozmvixikwqzsehrimhht` int DEFAULT NULL,\n `gqurzkpwdbtdljblkmmgztvjxelbicct` int DEFAULT NULL,\n `qqvjwqhkwkfvqzstiwjfghefbbyepust` int DEFAULT NULL,\n `mnmcsadkfisaosdfhspjjlgoqqokkphq` int DEFAULT NULL,\n `olsvqwmftekozwreytffmguspkojgbci` int DEFAULT NULL,\n `rtrqbjfpofftfvrfajvajckpiblhpkbf` int DEFAULT NULL,\n `zjoejaitihxhzzphleemauyvbgithswo` int DEFAULT NULL,\n `mzdvpnksnomsmfcgrnhhfttltkeyzkzm` int DEFAULT NULL,\n `sijxdsfmhpkhmxuqhdwjyhbdschbpiqc` int DEFAULT NULL,\n `shsvkecoddyvcxdadoliajbhuklmgecs` int DEFAULT NULL,\n `oqobcbkttyvldttkayemapntimwxpxuk` int DEFAULT NULL,\n `rmpmhqdjycqvzacxcfdloutrkgynjqtq` int DEFAULT NULL,\n `lwhnoewtrmdbbmvyepjfypvrhdhephut` int DEFAULT NULL,\n `zhnfgjcfjrykpiokoaloyqcizoglbzrr` int DEFAULT NULL,\n `wnjqwdiyjcldgvmdzogswspqkkrixqew` int DEFAULT NULL,\n `pmokgthqjkqfcwmibztcxejmwjlfcfko` int DEFAULT NULL,\n `timxapzqpsgbevnyrgyjvzifonnqbdth` int DEFAULT NULL,\n `xyydgcjkpiaapkcwvzfmhhirnoyahysk` int DEFAULT NULL,\n PRIMARY KEY (`gfywhjxsvkpssgqmhfiwglqpkrbhgwqz`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"avimlxteragkjlgouvjrcmgasysrsxih\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["gfywhjxsvkpssgqmhfiwglqpkrbhgwqz"],"columns":[{"name":"gfywhjxsvkpssgqmhfiwglqpkrbhgwqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"livtmihvmmnjdocbcptcqezadzsnxvdl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhmurssvdebodruziawnvsvzbsakqpxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxoulpthpekkecajtycytmzkgaioakqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vfycnzjjrqqrzsbbrpyfsiujyuuswzej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgvlqzegiqedyjekyjlabhvnhsdprbrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkbfhelweyhkunqiambhntcbwjtgwyuk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rwfadhupwjexndedlgabgoexnzmsgguo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evswqddcdmaudgvrvynzxtrffbyylmfo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xexntjhpsxxpcgvrlldpdsfrgojcfnpj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhbsrrfplogdhyzfprralkzapntyyetr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pcvnawwfkhpmklfftkqqpjaodvmxezmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zaerfipwqhdqklmmihoqfqxwjodvhrnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ufajhcdxemlmdgigjpqxtapwzqlvyhim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kgardodypekovpbmlmajwujbpyhtzadr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lzvpxsksypzeokemfiljrweigflrczyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcgwipzsitsakrrosqewyxpdvnrmwisg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"luohzzxxidwujwfqffyyxlwnxcphrsyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xwymrfezubqcedkfxakamqqhapqhuxpt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhrcqpezgkvcpshjcfgktqzaxrswagsm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uaskatuqrcllzwjmezcsqwwkhkfizukk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hexemtctbxzinuvjyfftixaaverjchxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"stunoucrgfjyqssuyhhledkfaspxcmwd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dzortiwpjwqebbuuacdpbihllxkkqzqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uwdeafbmrmvlfwxezcfajmtjfjksimyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bfdgdfamttuxkhdkqnbpasewaqfzjbec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zgywetxpafxlrciutvxfwytcuagdcgtl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"okhcgbddgtsviaheayupauiirrbjgemn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jxlfhhexmidepvqykpvbmeuvokpzzvgz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlafjyllmiunasdwoxrseprfvmkeqvzd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohsdqbgwzwqfkkblsiwfczvsypvuigcm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqfoydokuzmthbpsqrjiuyjvwvgyxapr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tskomawwltaakplpvcmywqfdgoxbmtyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ybgnxasybyejjyddswnbtfeuenpquhdd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wlqcmsiyuwhyfvbipjrmbnxfwretxfzl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmcfsylcbccqtooytqzbdusxxbkxtlgw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wddipcofhzophaxypcskkjbwqposrkzy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbgtpakcwcddsqicprzoodyoifopzavp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axaucyurtetkhbmtjxtxqkgnyhfuezhd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ogrocyzfbzrwvmevantufysqjssvcnhc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njhzoettrufyrmdngzgyyjdnprnbahpf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvzcattjxcmosovmssuhxevsccrssyaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xplmwvxkezjuftjzfswblrvsdvwroxxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffjpuomyiaqkqwzxzmasfzbbxxhdukhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"elbxhfmrbjnhhzrlthqchvglgiydnyzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mynuwnwhkiykqihcnyjpqcwssiqjgrki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ltxlbthslqczcnbnrkkysbgvxzwgltva","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwywvtckzgxzxgyaxiuojosbclovtptg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbqiriiiyhrjdcwltpyhnnkqpgdujunn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lppqziobydwmpigfkoswavrsezpwkiwv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwrydreewpvxftrrqkdcynibveuetsqi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edeujwhakckkklqqasirttrbdvdrlihl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"imaftxsikbcqjqdhbqrvcpzlgteudqid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rvcdwrgfkiiiqeooynfhaqvohqojbqau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nlohccaklqwckposaazjcvrjkzokykcw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cweurnhirdzadhinppfzhstpxdhnkqhc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"guwxxvjptpqtdxpvwjxzoykemukiivcw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"saqmovpmiejnnecfznjzyfnlqticipnn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdmgnbdlpvrfyguxhmsjsbgpkohbzskf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"frkmmekuroqbsxeehxwrgbgispkkgkdf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjdrjpidzzbntqftksascqwgkflpbfhc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dccorsudowzwlkdxptevozxzrwbceauk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbuazlsbkzwxenwgcqprweqpjtefbxup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uozvxprcjnmgufvjfdywapspmofkemnf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wudgqcmpalfksleqvozeoaahhvcdwwoe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njdolrwaydwhqeoyzynrncbndfcdmngh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icbcqvnkbgbjsuttrotvwwbfykqtuoys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kqfmgeivcrgermjkklaslywufcmevbqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgwackmqlrvdmuzhpfltwxvswjcwkjtq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"myvqpvhzkgossznllosqxzcqrpmjfgyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ngfrpukxucbvhemyotgxzrqvszptogll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqifujimzvpaclpvjcsmzjslpmpswcla","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkclwsyegwofnujywsnaatqgtvkothoy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hzxxlxwmsfjkvpnmzxuqvidnreqnjfqk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pixcvmzcshxattdejphjtqiyahpuucdb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udnsyfiuqypdohmjwqruznqsreadznly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"psctcxxuyzgbgdtsabsmlqzwwcigwmxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbmvwarqeeenqlveozxdlwddsaziskoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aaagliaaftisnypmrsfzqbfcdygbugjf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnclfaniyuvvsbrejcwcbzowipejklcr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmtpjzmoyfcvptyyyfpihybtyoxxgrxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnoymyayocoyhtblcgyaroxjjbyfnyrs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohknwjwhasntozmvixikwqzsehrimhht","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqurzkpwdbtdljblkmmgztvjxelbicct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqvjwqhkwkfvqzstiwjfghefbbyepust","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnmcsadkfisaosdfhspjjlgoqqokkphq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"olsvqwmftekozwreytffmguspkojgbci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rtrqbjfpofftfvrfajvajckpiblhpkbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjoejaitihxhzzphleemauyvbgithswo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzdvpnksnomsmfcgrnhhfttltkeyzkzm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sijxdsfmhpkhmxuqhdwjyhbdschbpiqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shsvkecoddyvcxdadoliajbhuklmgecs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqobcbkttyvldttkayemapntimwxpxuk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rmpmhqdjycqvzacxcfdloutrkgynjqtq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwhnoewtrmdbbmvyepjfypvrhdhephut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhnfgjcfjrykpiokoaloyqcizoglbzrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnjqwdiyjcldgvmdzogswspqkkrixqew","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmokgthqjkqfcwmibztcxejmwjlfcfko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"timxapzqpsgbevnyrgyjvzifonnqbdth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyydgcjkpiaapkcwvzfmhhirnoyahysk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666862,"databaseName":"models_schema","ddl":"CREATE TABLE `bbvzwwmjvuibbndayvwmfsvfvkomvuwq` (\n `ggamaxproxnqoxbyaplpkbafrvgdlhmc` int NOT NULL,\n `wzhliobwwpetdmqathbqlrkrnpnnfnem` int DEFAULT NULL,\n `odbagjfyljxmmrmvqrquqsbgxonuhgpg` int DEFAULT NULL,\n `noscnwxigfjtglwgcpnptfybebfuwjng` int DEFAULT NULL,\n `cxpcoitmglxooeefvmiryceqfratqpsp` int DEFAULT NULL,\n `oudihirqgjvhqhbghhezbceuwofqzire` int DEFAULT NULL,\n `rgwnxjfityjnimjgydgzoywwelpqpbzd` int DEFAULT NULL,\n `brrvfemzsbmnzdiojaetqkjdunhlpvtn` int DEFAULT NULL,\n `ciceujbckcuftaipnzzbqpctdbsbraga` int DEFAULT NULL,\n `axbxfaqvgjlkelhjxvwbzmkeshwixoem` int DEFAULT NULL,\n `whuwxcwlzjnkhrgluqfsnctnlrujcgnw` int DEFAULT NULL,\n `kfwuzdiucrvafajmhjnohmuvvqjsshca` int DEFAULT NULL,\n `wcgwhokhskwzsnfdisausrqcfhlqcnnz` int DEFAULT NULL,\n `ubbsekhezcbjwjibnweoyidcibqpzglp` int DEFAULT NULL,\n `qqispbystmjojrtzogwdnnkjqrrnkjsj` int DEFAULT NULL,\n `yecvozhzspyeadoyaflhrbucnipguuhp` int DEFAULT NULL,\n `tmoobaguzyobkxmzamvymyynmwmfwxgr` int DEFAULT NULL,\n `obcewrededritobdzdrpmurezcpgdnzp` int DEFAULT NULL,\n `tjcuhniskchmdpjlvawfkmeapgfvtnqp` int DEFAULT NULL,\n `qduwogfpmgrkrrbcvmkjyteozvvifuxn` int DEFAULT NULL,\n `gqldccqdvxjvleveekztsoqoacwpolgy` int DEFAULT NULL,\n `rtmhprnlepeaoivvtajluaiztetprhir` int DEFAULT NULL,\n `clobjgklbpqewtxfqtumlsoenxhvgzjj` int DEFAULT NULL,\n `lapdrrklutmngiicvulxcxsdujrcgpmm` int DEFAULT NULL,\n `juiboadbvpkymwgeqrubahfocrfqmfah` int DEFAULT NULL,\n `rgftacmlvllsguowcmnwnhuxmiucpskn` int DEFAULT NULL,\n `qwyahhhzfkavmqdmgdqaaoojiajftmne` int DEFAULT NULL,\n `wwgpbpbinxremzuokybhgsnvzcfpljsv` int DEFAULT NULL,\n `mhkgofykznyowsawzhsowokgfhhfblza` int DEFAULT NULL,\n `blhjwxokovgkjfpkvcuqqmnymgfhkqwf` int DEFAULT NULL,\n `yysxrfyhdprxfhxnbymysjuwvrykvxif` int DEFAULT NULL,\n `zakyknkekejeqndpzcidvchmcyzeyanq` int DEFAULT NULL,\n `nyukxznvsuxwjxnertfqsyoqzxnnheij` int DEFAULT NULL,\n `taehrwnkrqfzwoovcvhjszzrrezfqtyx` int DEFAULT NULL,\n `yiwkoyxbxfrcxvteexzwpwdqlmepwiza` int DEFAULT NULL,\n `igdwhjmtutpzyxbsvcelaauortjtkles` int DEFAULT NULL,\n `rzioblrwuaktpkdkslnsywmzcxdsdpih` int DEFAULT NULL,\n `mjrgbtfqtawfzgbpehqzdcpcecnowfxc` int DEFAULT NULL,\n `ozlufnawbiaotmxcsswxomvfmcwnyzbo` int DEFAULT NULL,\n `bedheokoswjikjpgmymigxforsczccxt` int DEFAULT NULL,\n `xcctmapwlkenotpbhzravpmazloiiegp` int DEFAULT NULL,\n `xyppyyatzwlnjmffkcsloydogegfchpi` int DEFAULT NULL,\n `yuemmoywakkbcoezkyamoxgmxgicautz` int DEFAULT NULL,\n `okuckrkzrekoekoypbvqglimksewnuol` int DEFAULT NULL,\n `urtflipnywxmmusecnysnqucgmovnbbs` int DEFAULT NULL,\n `tvqcjixjaaudaywgcdodcuqgbkaupcqf` int DEFAULT NULL,\n `yqgqijqysxgoxihyldkcahmsjamjatzl` int DEFAULT NULL,\n `yomhhrvsozgzarslinvzingoxhvrtaju` int DEFAULT NULL,\n `ijdnkhrcncwvyfvsxjtrkqvhawojbxgs` int DEFAULT NULL,\n `oqpozozyvmsqfppnkenzthacmrmnrmkv` int DEFAULT NULL,\n `zgpvqgzubtcblofogsnqwrbmnofwdzhv` int DEFAULT NULL,\n `drlcscuogilsxtuxvipepcwtgyqqbtbd` int DEFAULT NULL,\n `ifpxbqjsqgaxjfxpywjmijpiqprbmebz` int DEFAULT NULL,\n `zpvelgqkeklguwcvkpiqwbommhdaiqum` int DEFAULT NULL,\n `bsjriqxgdvjheatwudnysiclrfsmtgpc` int DEFAULT NULL,\n `ucvnlkpvanmzrqbnuutxzormeocxkocw` int DEFAULT NULL,\n `copsxhowrzjwlemzveozyrlgdygjutzz` int DEFAULT NULL,\n `tlxqorpebvprgixxtfoqsndvrczgrgzs` int DEFAULT NULL,\n `zavhxwionvrvtrefinxmluwhkvageicu` int DEFAULT NULL,\n `lxmlfehgbmiumzgqjpzzlnyawayozztv` int DEFAULT NULL,\n `yypkfshexnimyeunhlkgwyxeabxyzkbz` int DEFAULT NULL,\n `oiwwasefhdyifpmmfbabcjpraxvfehrb` int DEFAULT NULL,\n `qzyrbsqxvserobahwsedzbhsbakjepfc` int DEFAULT NULL,\n `yczwhhuupsbkqfzwtfnlmchbhxxqdacf` int DEFAULT NULL,\n `xdqwcnrccpceyzdfyhtdkuusuqaolaja` int DEFAULT NULL,\n `cosouuwgmmdwendhbrwfiqjxofvnukzt` int DEFAULT NULL,\n `pldkuguvdnqhlroacbptdpewwmktogum` int DEFAULT NULL,\n `xdphcmidekolxrufcwoyqmaqbqsudxun` int DEFAULT NULL,\n `khueqsvaavrxpgbyyiltrjtuhqzouhhr` int DEFAULT NULL,\n `zjkzolalllkkcgksbgjdzoqcfgsanrso` int DEFAULT NULL,\n `evkulunmrcbkbpzkzhikhjmlcbyzlgoa` int DEFAULT NULL,\n `ahwuvupmhslkxdsmokjkvuipmkkqfkdy` int DEFAULT NULL,\n `eebfyqsjmshduplfumexwvscehldzwde` int DEFAULT NULL,\n `hdkceeucifubtfifsojdtuewbsxmgnbx` int DEFAULT NULL,\n `diboaeljxonzdhzntetvemqjrapbhqkg` int DEFAULT NULL,\n `peaqbsgdpngtdwfezqijkezkfkhlmkuw` int DEFAULT NULL,\n `qzaysxncukyynzqynkvqxdyqfuzwqhon` int DEFAULT NULL,\n `fearrdgxbxuctvmpyfwwrhfiwkowdjjn` int DEFAULT NULL,\n `qxczeqnwgzyimtucixapwsechaildxdj` int DEFAULT NULL,\n `yrztpmipbpbpmkbimyjvtijyljhpgafx` int DEFAULT NULL,\n `penktqmvsvaytabzxvpadixjsprnvciu` int DEFAULT NULL,\n `tphcapxafalewyfgaqaodsqranxdsyni` int DEFAULT NULL,\n `rkdgfeijaiomfcjjlyqntmhazexiqzmr` int DEFAULT NULL,\n `hqerniiaihnavaemshlgisjmndgneluf` int DEFAULT NULL,\n `dwvgeclvvvjanolzbivsiqujpfjwhcic` int DEFAULT NULL,\n `zpxsqvamnssrxaqnocrxmrvurhecfyxs` int DEFAULT NULL,\n `vskwgaeuxgrfqxntcvxrqtqiwzrzaacb` int DEFAULT NULL,\n `kovvgenfspywplgsudlbjxaeysopxclq` int DEFAULT NULL,\n `dvxqdjcbyhbgfzqqccjrflcrcdajvfim` int DEFAULT NULL,\n `ejptzxdxrywzglkurpdhjvswgfwgxqqx` int DEFAULT NULL,\n `ehliocidxugjiocdntyeyyapczkntslh` int DEFAULT NULL,\n `tqmsrymdsitggdfsxmbxlzwzuovwvneu` int DEFAULT NULL,\n `braphcdjvccwbsfaekyddzjsykhhnspw` int DEFAULT NULL,\n `kfydnxufbjdklqjwjwytlrmzajpioyfg` int DEFAULT NULL,\n `byyleqhrzcyfybgzqpuvgjhvsoubfkjv` int DEFAULT NULL,\n `xajpxejnqcbgzmgcaoygvthtavyybfgw` int DEFAULT NULL,\n `opdsetdqwuotjgvdcyrozfiqlngzetjg` int DEFAULT NULL,\n `xuovxpaclgdptcfkrdljyplwxarybbfh` int DEFAULT NULL,\n `wjcuxaqmoiurrekgqiyzomggwkkgaexz` int DEFAULT NULL,\n `qezrbvsicyofkjeyelhtzpdhietgepna` int DEFAULT NULL,\n PRIMARY KEY (`ggamaxproxnqoxbyaplpkbafrvgdlhmc`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"bbvzwwmjvuibbndayvwmfsvfvkomvuwq\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["ggamaxproxnqoxbyaplpkbafrvgdlhmc"],"columns":[{"name":"ggamaxproxnqoxbyaplpkbafrvgdlhmc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"wzhliobwwpetdmqathbqlrkrnpnnfnem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"odbagjfyljxmmrmvqrquqsbgxonuhgpg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"noscnwxigfjtglwgcpnptfybebfuwjng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cxpcoitmglxooeefvmiryceqfratqpsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oudihirqgjvhqhbghhezbceuwofqzire","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgwnxjfityjnimjgydgzoywwelpqpbzd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"brrvfemzsbmnzdiojaetqkjdunhlpvtn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ciceujbckcuftaipnzzbqpctdbsbraga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axbxfaqvgjlkelhjxvwbzmkeshwixoem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"whuwxcwlzjnkhrgluqfsnctnlrujcgnw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfwuzdiucrvafajmhjnohmuvvqjsshca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcgwhokhskwzsnfdisausrqcfhlqcnnz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubbsekhezcbjwjibnweoyidcibqpzglp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqispbystmjojrtzogwdnnkjqrrnkjsj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yecvozhzspyeadoyaflhrbucnipguuhp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmoobaguzyobkxmzamvymyynmwmfwxgr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obcewrededritobdzdrpmurezcpgdnzp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjcuhniskchmdpjlvawfkmeapgfvtnqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qduwogfpmgrkrrbcvmkjyteozvvifuxn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqldccqdvxjvleveekztsoqoacwpolgy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rtmhprnlepeaoivvtajluaiztetprhir","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"clobjgklbpqewtxfqtumlsoenxhvgzjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lapdrrklutmngiicvulxcxsdujrcgpmm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"juiboadbvpkymwgeqrubahfocrfqmfah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgftacmlvllsguowcmnwnhuxmiucpskn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwyahhhzfkavmqdmgdqaaoojiajftmne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwgpbpbinxremzuokybhgsnvzcfpljsv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhkgofykznyowsawzhsowokgfhhfblza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blhjwxokovgkjfpkvcuqqmnymgfhkqwf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yysxrfyhdprxfhxnbymysjuwvrykvxif","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zakyknkekejeqndpzcidvchmcyzeyanq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nyukxznvsuxwjxnertfqsyoqzxnnheij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"taehrwnkrqfzwoovcvhjszzrrezfqtyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yiwkoyxbxfrcxvteexzwpwdqlmepwiza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igdwhjmtutpzyxbsvcelaauortjtkles","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzioblrwuaktpkdkslnsywmzcxdsdpih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjrgbtfqtawfzgbpehqzdcpcecnowfxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ozlufnawbiaotmxcsswxomvfmcwnyzbo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bedheokoswjikjpgmymigxforsczccxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xcctmapwlkenotpbhzravpmazloiiegp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyppyyatzwlnjmffkcsloydogegfchpi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yuemmoywakkbcoezkyamoxgmxgicautz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"okuckrkzrekoekoypbvqglimksewnuol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urtflipnywxmmusecnysnqucgmovnbbs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvqcjixjaaudaywgcdodcuqgbkaupcqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqgqijqysxgoxihyldkcahmsjamjatzl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yomhhrvsozgzarslinvzingoxhvrtaju","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijdnkhrcncwvyfvsxjtrkqvhawojbxgs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqpozozyvmsqfppnkenzthacmrmnrmkv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zgpvqgzubtcblofogsnqwrbmnofwdzhv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drlcscuogilsxtuxvipepcwtgyqqbtbd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ifpxbqjsqgaxjfxpywjmijpiqprbmebz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zpvelgqkeklguwcvkpiqwbommhdaiqum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bsjriqxgdvjheatwudnysiclrfsmtgpc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ucvnlkpvanmzrqbnuutxzormeocxkocw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"copsxhowrzjwlemzveozyrlgdygjutzz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlxqorpebvprgixxtfoqsndvrczgrgzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zavhxwionvrvtrefinxmluwhkvageicu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxmlfehgbmiumzgqjpzzlnyawayozztv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yypkfshexnimyeunhlkgwyxeabxyzkbz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oiwwasefhdyifpmmfbabcjpraxvfehrb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qzyrbsqxvserobahwsedzbhsbakjepfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yczwhhuupsbkqfzwtfnlmchbhxxqdacf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdqwcnrccpceyzdfyhtdkuusuqaolaja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cosouuwgmmdwendhbrwfiqjxofvnukzt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pldkuguvdnqhlroacbptdpewwmktogum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdphcmidekolxrufcwoyqmaqbqsudxun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"khueqsvaavrxpgbyyiltrjtuhqzouhhr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjkzolalllkkcgksbgjdzoqcfgsanrso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evkulunmrcbkbpzkzhikhjmlcbyzlgoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ahwuvupmhslkxdsmokjkvuipmkkqfkdy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eebfyqsjmshduplfumexwvscehldzwde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdkceeucifubtfifsojdtuewbsxmgnbx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"diboaeljxonzdhzntetvemqjrapbhqkg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"peaqbsgdpngtdwfezqijkezkfkhlmkuw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qzaysxncukyynzqynkvqxdyqfuzwqhon","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fearrdgxbxuctvmpyfwwrhfiwkowdjjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxczeqnwgzyimtucixapwsechaildxdj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yrztpmipbpbpmkbimyjvtijyljhpgafx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"penktqmvsvaytabzxvpadixjsprnvciu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tphcapxafalewyfgaqaodsqranxdsyni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkdgfeijaiomfcjjlyqntmhazexiqzmr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqerniiaihnavaemshlgisjmndgneluf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwvgeclvvvjanolzbivsiqujpfjwhcic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zpxsqvamnssrxaqnocrxmrvurhecfyxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vskwgaeuxgrfqxntcvxrqtqiwzrzaacb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kovvgenfspywplgsudlbjxaeysopxclq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvxqdjcbyhbgfzqqccjrflcrcdajvfim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejptzxdxrywzglkurpdhjvswgfwgxqqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehliocidxugjiocdntyeyyapczkntslh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqmsrymdsitggdfsxmbxlzwzuovwvneu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"braphcdjvccwbsfaekyddzjsykhhnspw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfydnxufbjdklqjwjwytlrmzajpioyfg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"byyleqhrzcyfybgzqpuvgjhvsoubfkjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xajpxejnqcbgzmgcaoygvthtavyybfgw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opdsetdqwuotjgvdcyrozfiqlngzetjg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xuovxpaclgdptcfkrdljyplwxarybbfh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjcuxaqmoiurrekgqiyzomggwkkgaexz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qezrbvsicyofkjeyelhtzpdhietgepna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666907,"databaseName":"models_schema","ddl":"CREATE TABLE `bekezigfgafwjjfcxlfvmohuwjxylbco` (\n `oxigapxxtuqovfenogygoxktlncotahs` int NOT NULL,\n `soqkzsyhtemymdcbzohiaeizhhattoew` int DEFAULT NULL,\n `qdeztdnqmgzydomvevqoiktienahrahi` int DEFAULT NULL,\n `okfrwhwtslecjjfxgvcrfkgqqcxfexvd` int DEFAULT NULL,\n `fbbrfkoucqngjbsaeyafqivpruxekrej` int DEFAULT NULL,\n `jstszxqfuzwxxvyoztskkhdbhfeafati` int DEFAULT NULL,\n `nmvrwubswuvgixdjxlcqjkxwzttpiagk` int DEFAULT NULL,\n `qaeexstvvyqcduzqthhzpztaakemroon` int DEFAULT NULL,\n `ntmhkdktlwjpltdwdntxhamoxtojcdxh` int DEFAULT NULL,\n `ytjxiliijyqknmcgmeayntvfsveakrcr` int DEFAULT NULL,\n `vzptfsotwzlugxrehwsxbiapeiuzbmsi` int DEFAULT NULL,\n `vgbmlzsarryfbxmwvpiolihavgpghosx` int DEFAULT NULL,\n `zaejbsufgucxlwvqbwybihxtsxlpjmzr` int DEFAULT NULL,\n `uwgrpphiqrwgecujhwlvyizezuzazpiq` int DEFAULT NULL,\n `aoatotpasesldurdyplghrguryeclnci` int DEFAULT NULL,\n `nbgnqigzosgdpofzndbngeykfioqegfc` int DEFAULT NULL,\n `uorgbqyreqflxfesiujwtpymkjcttfqf` int DEFAULT NULL,\n `fbvxrmxmrlaflbxugredsmeaefbqmceh` int DEFAULT NULL,\n `jxaipmxjdgggwnsfchhfgatxbpambaza` int DEFAULT NULL,\n `wfcfdzxwlfmeyrkcvhhapbjjrovxrzxg` int DEFAULT NULL,\n `lctdskxoenqpidqtqssbdeabnsouxjsp` int DEFAULT NULL,\n `kuicmvujwnfmbatbdbvteekorxbuawqh` int DEFAULT NULL,\n `shuevxyldlywclowwadurheltfpxqdzi` int DEFAULT NULL,\n `rmvdmmzdmuzpwmhjaobvmptmlrdbdcxy` int DEFAULT NULL,\n `rioozwoyjfxluosshkiffglkyoeybjaa` int DEFAULT NULL,\n `mgqeweddcvwcumojttptqsfagwzntmis` int DEFAULT NULL,\n `zzbzbwnpljhkgcwbjixtwlksbmiozcwu` int DEFAULT NULL,\n `rgqssmexbmggrbybpbetyfphmnsciuje` int DEFAULT NULL,\n `mrfpalrhvpvkfvcvrcuiipswpjillvmg` int DEFAULT NULL,\n `ivdqzzzsotlwvdctoqlfyegqhlwlpgmk` int DEFAULT NULL,\n `gjrugbwtkyzqjlcfjpgfvajeoxrivewi` int DEFAULT NULL,\n `lziutyiprfrzuyixnmfnecneyntitgfi` int DEFAULT NULL,\n `bjpjmuetoepranodkhxlfolvmoysognk` int DEFAULT NULL,\n `nluoeridjjifphwzydkloaxyicioocbu` int DEFAULT NULL,\n `bhkrauxouxhaagfbzvcssxwqdathlxpk` int DEFAULT NULL,\n `wppwswcjcaslekxffsvnwiieobamcldv` int DEFAULT NULL,\n `njeursgwbnvuignhghfbzekmorowmrri` int DEFAULT NULL,\n `hxqgqjqkrorwrlconyqlgpzmxvuwilsw` int DEFAULT NULL,\n `vdqrqldxncxgpdxuucriqaqqrozrceai` int DEFAULT NULL,\n `twnqddsbjgnmadqhcqzcnyyixdkvklbm` int DEFAULT NULL,\n `mjgogmerfmxppnqxassubmisycezmkqv` int DEFAULT NULL,\n `qshkzfhmqiqtzvmhsytkditybkivqrki` int DEFAULT NULL,\n `xiboprdjuhmcvgvnrnafpvyxoxbmwthx` int DEFAULT NULL,\n `roysrxhynilgmhegfpfqxeswpcthtisi` int DEFAULT NULL,\n `uzovgrjlrkkxjdcbxjjhevaffqahaxsk` int DEFAULT NULL,\n `ktuzoyoqwenhfmhxcaubujwhfhcimdqf` int DEFAULT NULL,\n `cvcgjjxeicuanqenvvrefoivjosmvkzl` int DEFAULT NULL,\n `eocckikvryzfashpbqjlzsbqlzxwzhsa` int DEFAULT NULL,\n `nkdrhccdchfepzbrtumpqduldhlsppgg` int DEFAULT NULL,\n `jkyibliurdtgoebdaieqnpkuscmjntis` int DEFAULT NULL,\n `ebvhiekcdzkfigynvvakqhpxbizhpgkb` int DEFAULT NULL,\n `hppfrclfjwidsusuwvrvlpxxztwptkqt` int DEFAULT NULL,\n `bowxkququyqzayrsjplbyntqtnwhpppi` int DEFAULT NULL,\n `cwovntgcpjmeztnkvmzlaczppnhlmwrv` int DEFAULT NULL,\n `cdacmcdfetyyucjgpeslodgwulfmgcqy` int DEFAULT NULL,\n `wfhjctdwimdsxiwrtlglfepcwndyrpmg` int DEFAULT NULL,\n `beffahrdtsmwpuexsfvabcfljdfvnshb` int DEFAULT NULL,\n `mzowldpdlitcebmwzoxzgxcfblxpsvbz` int DEFAULT NULL,\n `rejzxldxtljxriuftiyydxiezrgrluhi` int DEFAULT NULL,\n `fxukfacdejjdbomdvddtzlbkoerkgxqp` int DEFAULT NULL,\n `mmeoaqzuzfvfflujrjkxvgtshyfrnojm` int DEFAULT NULL,\n `zqcgnlcfvpcocmoonqjpzwqofqfrljuj` int DEFAULT NULL,\n `oohfhgnbrkzjfgwxehljwotdbixshfau` int DEFAULT NULL,\n `fefnpaiuatcfntzdpjkqnfsnmlaqgfwo` int DEFAULT NULL,\n `aabbsqwjpnwpmuqdabithlrxnpjfaxhq` int DEFAULT NULL,\n `boicrtrkcanlxzerrtsszxtfmemdznif` int DEFAULT NULL,\n `rklejkhjnvnwvmulcswfecawluxxvtvq` int DEFAULT NULL,\n `xocrmmfekajwimpdbzkawlomrbgicsnb` int DEFAULT NULL,\n `qxbnqnkvhsrcprfmxfiqqcwioydswldt` int DEFAULT NULL,\n `ipwhyyvfdxyuefgxwiqvohtorcpexnfp` int DEFAULT NULL,\n `ysrjfwtcpqfirxvccjhmkaiitdsuitdc` int DEFAULT NULL,\n `vieagsfrdhhjozycgbnfwzrbjdmwfdsg` int DEFAULT NULL,\n `rznwjyiajrrvtplmtfhektwkyjcfcmca` int DEFAULT NULL,\n `uyeaaxjchfbfzdabpwgecldhdvihxbpv` int DEFAULT NULL,\n `shkftlqrhhoecoiptdjedlexcsoqtsuu` int DEFAULT NULL,\n `pdfdnlctfvanbkvwhutzxmpoutxnovrg` int DEFAULT NULL,\n `bhadajwsuyaufzijmjhoxarncuemolli` int DEFAULT NULL,\n `qxcxnilwahvxmvgyozvzdjlfghnjgqna` int DEFAULT NULL,\n `kzysxruzuordnygensnpgltjbredbniy` int DEFAULT NULL,\n `oxunisvhfaizjupsklkbmycyzfhxgccv` int DEFAULT NULL,\n `dtzbvosswgybfxkvwoppsnwjrdgqsjlx` int DEFAULT NULL,\n `ytkynoekjzzxukynqdahqoczkzqlpnuv` int DEFAULT NULL,\n `tezselatadjplvewksyqqyyedkvmtnbw` int DEFAULT NULL,\n `edoiifkexwwuxrneclqvheffsuulryzs` int DEFAULT NULL,\n `lihgpfaypsvlqqeniulmgdrilwyjiwtm` int DEFAULT NULL,\n `kxnpwzhyvdlpakyajczpujhjsgazzjxr` int DEFAULT NULL,\n `cizucmymkbchonfuascnfzyuavdxcptl` int DEFAULT NULL,\n `ngvtkvqyovzdasklobluxizpwseuhdol` int DEFAULT NULL,\n `ceenjwsakueshzidtztukcojqxfgnobg` int DEFAULT NULL,\n `rpmuiogyznhmzczhadgqxpikcyfubynk` int DEFAULT NULL,\n `sikknmyrifkyiqbfiwdemeueirfhkcbo` int DEFAULT NULL,\n `mhxbgkkiqkdewppeeezcpdwesrszsyqi` int DEFAULT NULL,\n `deonrijpyzjnlwawbbevxotfffkkizcl` int DEFAULT NULL,\n `stqjoabwuybzdqyukaqfxwscllxladyu` int DEFAULT NULL,\n `wkbqdrgcuhufczhebqfbikokivssxkhh` int DEFAULT NULL,\n `atdshgyjbjgpgtfzxvlzdptivnkqnpej` int DEFAULT NULL,\n `eqrkdydkzlliriwnihaexxgrogxccxfw` int DEFAULT NULL,\n `hbuihkdgdrnuqynhkvqqvwurdpzwiqvu` int DEFAULT NULL,\n `ezztpqtdultioovwgiaxwvjkyjwxmwsn` int DEFAULT NULL,\n `damptvyuminktozabpwschpilbzsugun` int DEFAULT NULL,\n PRIMARY KEY (`oxigapxxtuqovfenogygoxktlncotahs`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"bekezigfgafwjjfcxlfvmohuwjxylbco\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["oxigapxxtuqovfenogygoxktlncotahs"],"columns":[{"name":"oxigapxxtuqovfenogygoxktlncotahs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"soqkzsyhtemymdcbzohiaeizhhattoew","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdeztdnqmgzydomvevqoiktienahrahi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"okfrwhwtslecjjfxgvcrfkgqqcxfexvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbbrfkoucqngjbsaeyafqivpruxekrej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jstszxqfuzwxxvyoztskkhdbhfeafati","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmvrwubswuvgixdjxlcqjkxwzttpiagk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qaeexstvvyqcduzqthhzpztaakemroon","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntmhkdktlwjpltdwdntxhamoxtojcdxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytjxiliijyqknmcgmeayntvfsveakrcr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vzptfsotwzlugxrehwsxbiapeiuzbmsi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgbmlzsarryfbxmwvpiolihavgpghosx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zaejbsufgucxlwvqbwybihxtsxlpjmzr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uwgrpphiqrwgecujhwlvyizezuzazpiq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aoatotpasesldurdyplghrguryeclnci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbgnqigzosgdpofzndbngeykfioqegfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uorgbqyreqflxfesiujwtpymkjcttfqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbvxrmxmrlaflbxugredsmeaefbqmceh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jxaipmxjdgggwnsfchhfgatxbpambaza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfcfdzxwlfmeyrkcvhhapbjjrovxrzxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lctdskxoenqpidqtqssbdeabnsouxjsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kuicmvujwnfmbatbdbvteekorxbuawqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shuevxyldlywclowwadurheltfpxqdzi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rmvdmmzdmuzpwmhjaobvmptmlrdbdcxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rioozwoyjfxluosshkiffglkyoeybjaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mgqeweddcvwcumojttptqsfagwzntmis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzbzbwnpljhkgcwbjixtwlksbmiozcwu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgqssmexbmggrbybpbetyfphmnsciuje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrfpalrhvpvkfvcvrcuiipswpjillvmg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivdqzzzsotlwvdctoqlfyegqhlwlpgmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjrugbwtkyzqjlcfjpgfvajeoxrivewi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lziutyiprfrzuyixnmfnecneyntitgfi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjpjmuetoepranodkhxlfolvmoysognk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nluoeridjjifphwzydkloaxyicioocbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bhkrauxouxhaagfbzvcssxwqdathlxpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wppwswcjcaslekxffsvnwiieobamcldv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njeursgwbnvuignhghfbzekmorowmrri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hxqgqjqkrorwrlconyqlgpzmxvuwilsw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdqrqldxncxgpdxuucriqaqqrozrceai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twnqddsbjgnmadqhcqzcnyyixdkvklbm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjgogmerfmxppnqxassubmisycezmkqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qshkzfhmqiqtzvmhsytkditybkivqrki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xiboprdjuhmcvgvnrnafpvyxoxbmwthx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"roysrxhynilgmhegfpfqxeswpcthtisi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzovgrjlrkkxjdcbxjjhevaffqahaxsk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ktuzoyoqwenhfmhxcaubujwhfhcimdqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvcgjjxeicuanqenvvrefoivjosmvkzl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eocckikvryzfashpbqjlzsbqlzxwzhsa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nkdrhccdchfepzbrtumpqduldhlsppgg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jkyibliurdtgoebdaieqnpkuscmjntis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebvhiekcdzkfigynvvakqhpxbizhpgkb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hppfrclfjwidsusuwvrvlpxxztwptkqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bowxkququyqzayrsjplbyntqtnwhpppi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwovntgcpjmeztnkvmzlaczppnhlmwrv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cdacmcdfetyyucjgpeslodgwulfmgcqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfhjctdwimdsxiwrtlglfepcwndyrpmg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"beffahrdtsmwpuexsfvabcfljdfvnshb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzowldpdlitcebmwzoxzgxcfblxpsvbz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rejzxldxtljxriuftiyydxiezrgrluhi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxukfacdejjdbomdvddtzlbkoerkgxqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmeoaqzuzfvfflujrjkxvgtshyfrnojm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqcgnlcfvpcocmoonqjpzwqofqfrljuj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oohfhgnbrkzjfgwxehljwotdbixshfau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fefnpaiuatcfntzdpjkqnfsnmlaqgfwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aabbsqwjpnwpmuqdabithlrxnpjfaxhq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"boicrtrkcanlxzerrtsszxtfmemdznif","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rklejkhjnvnwvmulcswfecawluxxvtvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xocrmmfekajwimpdbzkawlomrbgicsnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxbnqnkvhsrcprfmxfiqqcwioydswldt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ipwhyyvfdxyuefgxwiqvohtorcpexnfp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ysrjfwtcpqfirxvccjhmkaiitdsuitdc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vieagsfrdhhjozycgbnfwzrbjdmwfdsg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rznwjyiajrrvtplmtfhektwkyjcfcmca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uyeaaxjchfbfzdabpwgecldhdvihxbpv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shkftlqrhhoecoiptdjedlexcsoqtsuu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdfdnlctfvanbkvwhutzxmpoutxnovrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bhadajwsuyaufzijmjhoxarncuemolli","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxcxnilwahvxmvgyozvzdjlfghnjgqna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzysxruzuordnygensnpgltjbredbniy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oxunisvhfaizjupsklkbmycyzfhxgccv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtzbvosswgybfxkvwoppsnwjrdgqsjlx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytkynoekjzzxukynqdahqoczkzqlpnuv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tezselatadjplvewksyqqyyedkvmtnbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edoiifkexwwuxrneclqvheffsuulryzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lihgpfaypsvlqqeniulmgdrilwyjiwtm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxnpwzhyvdlpakyajczpujhjsgazzjxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cizucmymkbchonfuascnfzyuavdxcptl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ngvtkvqyovzdasklobluxizpwseuhdol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ceenjwsakueshzidtztukcojqxfgnobg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpmuiogyznhmzczhadgqxpikcyfubynk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sikknmyrifkyiqbfiwdemeueirfhkcbo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhxbgkkiqkdewppeeezcpdwesrszsyqi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"deonrijpyzjnlwawbbevxotfffkkizcl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"stqjoabwuybzdqyukaqfxwscllxladyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wkbqdrgcuhufczhebqfbikokivssxkhh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atdshgyjbjgpgtfzxvlzdptivnkqnpej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqrkdydkzlliriwnihaexxgrogxccxfw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbuihkdgdrnuqynhkvqqvwurdpzwiqvu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezztpqtdultioovwgiaxwvjkyjwxmwsn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"damptvyuminktozabpwschpilbzsugun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666955,"databaseName":"models_schema","ddl":"CREATE TABLE `bfilzxoyiqgaczecequheguojdjdqgkw` (\n `uzdtsvwobxruwoxsvcjgnuqqbddhslkx` int NOT NULL,\n `ztwfatkqmddatpytqnniimqzssuwqgpq` int DEFAULT NULL,\n `kanlztgbzyaotzpojoueipeitbawcwgj` int DEFAULT NULL,\n `dkcxclgucjydbfttobfvhrpbedvahsba` int DEFAULT NULL,\n `wvdpipadoqoygshcfeqsmwfhsidixzfx` int DEFAULT NULL,\n `zwapdueckuxmihznikgsgvfruxorzifb` int DEFAULT NULL,\n `cmqavfqhbaxdnfhpkhveqeinnllhdeap` int DEFAULT NULL,\n `yjnithoarquipjbwvfpdrhufagyehzru` int DEFAULT NULL,\n `qtqejfqfqhlxpbaeiixuswhkgutzwvnt` int DEFAULT NULL,\n `xknggzwlkwoyqotrorncfaqymsahxkeg` int DEFAULT NULL,\n `tqwjdptjcaomxmquorqirocbmuxxzigl` int DEFAULT NULL,\n `ayvmxkjpmogwrfvbgnuahqkokucekyoy` int DEFAULT NULL,\n `admbkxxfrykcytiaoqobhnrbnpthjubx` int DEFAULT NULL,\n `rwnpoauqyrsrpbsvannowmeopheguzck` int DEFAULT NULL,\n `vzvticifocenaicmggzrychmeaqgpwyn` int DEFAULT NULL,\n `tvxaoeliaevnzxedcqosggknjmybgdmh` int DEFAULT NULL,\n `eufgqaykopgyxzwoefaamjevdjmdkdqo` int DEFAULT NULL,\n `fhtnqrskxtcgqfnfuiepyyadisbgfkrp` int DEFAULT NULL,\n `rleoelgvuzmijwvmytobiqmxlhrzmarn` int DEFAULT NULL,\n `jgxxcvraoptulgdvpppgytnvtmnszqha` int DEFAULT NULL,\n `pelpmqskhbdtmckitqhswqudbjfebcuy` int DEFAULT NULL,\n `qflkhuvynlncobnorhwcgwkwfftbaqhg` int DEFAULT NULL,\n `vhqormlbuxakflotcjdrrtsjnuhapwlk` int DEFAULT NULL,\n `jbqestvtcgclfbgxytflyjaompexseoi` int DEFAULT NULL,\n `pjutbflblsushbwyakfbfivxqqbkixqn` int DEFAULT NULL,\n `lzrcqniolfkmrinzpmgstzxlvxirkikj` int DEFAULT NULL,\n `tbbgouujvhmbkmacjrlzfrwnccptletd` int DEFAULT NULL,\n `xvahqqetrkvayrastbbkbhbhulhdxhkn` int DEFAULT NULL,\n `ctjefecjjqwsqjkztkpfmfqckfhqchfq` int DEFAULT NULL,\n `kohtzvdnszxxrekkowuujvvpeipdwvos` int DEFAULT NULL,\n `evaudrbwrjunxzaarpjyoxbotuvfvysr` int DEFAULT NULL,\n `ajkxjqvleinbunxxichhmlonspashhng` int DEFAULT NULL,\n `mmahhjixuutwkpzbvoimjqzitaqsqibv` int DEFAULT NULL,\n `sfsgezzstpxnrvpbpoijutradtnxfvuh` int DEFAULT NULL,\n `naybaltmajjoeiyvhyfcvotbyxyilnvr` int DEFAULT NULL,\n `zrymjwppwkkiobbgbjrquoxxhvaaflbh` int DEFAULT NULL,\n `vypwfeltfvfyaxaerzuytqxptjykbwii` int DEFAULT NULL,\n `lcqsqzcmbxhhnkpeuqlvpvnbfvvcvfew` int DEFAULT NULL,\n `cmuvsebmlpysgbcdrtgmysmsiehuobva` int DEFAULT NULL,\n `wibmjrqygvbozyrgjygullvlqhfrvgun` int DEFAULT NULL,\n `gixcmkyizvwnnkjtxjyzeupelcxgaotd` int DEFAULT NULL,\n `nqgtyfxcmhhkawbjrtqmwviljuekiuql` int DEFAULT NULL,\n `nptozglopxtndpouyutdeozyuixdwyld` int DEFAULT NULL,\n `uchlauzobgrriemtykupeipuygmgkuxr` int DEFAULT NULL,\n `lffrydlxttlukvaqsgacxpcwkddsxuvq` int DEFAULT NULL,\n `xrnpgiutmovfkkfhnvzdrnykubrasbat` int DEFAULT NULL,\n `jmxvuoksjuhepszztdrdhpapuihlmyoo` int DEFAULT NULL,\n `nvwecvxzjlbqwzctfqudcahegtoyrxsx` int DEFAULT NULL,\n `vrhoblpyxrukrsubpgazrzacddzrgmww` int DEFAULT NULL,\n `cfucgwndydfkmjyoonkeppxrumbbeulc` int DEFAULT NULL,\n `xzhcfwccuprsbxpqkyncrerlxubbkajs` int DEFAULT NULL,\n `zyryiglittwcqptlepngdqtpfrzcpnji` int DEFAULT NULL,\n `rkfkzgmnupxmtybwamuyciytubdcfjuq` int DEFAULT NULL,\n `wxhqvdadsekvhubvwhjjlkctttlyrthm` int DEFAULT NULL,\n `usdgybqfncbvxcbpbcolisnytkivlveo` int DEFAULT NULL,\n `xxxyezgbmttrkimqvbmdiiqvzgputjog` int DEFAULT NULL,\n `uucofrzbjnbensbftounnedzpyxvoaed` int DEFAULT NULL,\n `csajdxvswumzuxcqnrzlontekcyuskog` int DEFAULT NULL,\n `thhcrnsrynmmdsylkbslfaewmunxwrcq` int DEFAULT NULL,\n `wqjenuzjexdlpcqinfarwoxinhjsauwv` int DEFAULT NULL,\n `kqbbyosioynybdmevtlktiuggzvkfnta` int DEFAULT NULL,\n `hiedyzofmvyxboumdxnazhjaxgfiraqi` int DEFAULT NULL,\n `ylaeyvmsyycmkzblxuynqkzqkfsedjft` int DEFAULT NULL,\n `jwgljiwzmvsxhcdudisujuhmbeqreega` int DEFAULT NULL,\n `niarzfqxrkyniowjjtgbkgbhghirknjf` int DEFAULT NULL,\n `yxquaqvduwepsbhijufajrrwuhygktih` int DEFAULT NULL,\n `vuvhfrkkrinhpwyjdkaennjvkrronhps` int DEFAULT NULL,\n `xashjazrgxdisfevdrtnztubzixspnpg` int DEFAULT NULL,\n `qjnprxoxpyocfacfzrkuskihxzpjbneh` int DEFAULT NULL,\n `qdnjgpsemlpozhkxxgulvnmaltspgmjj` int DEFAULT NULL,\n `yzfmosligfohljzfzuvmsuzxzqpyzgaq` int DEFAULT NULL,\n `xlitvkfxgcisugxfdmtbizicoskuseqq` int DEFAULT NULL,\n `vhinjpxcdqrleaqabqacjzpqtpacxndf` int DEFAULT NULL,\n `nfqivkcimmvqauasebtzwgseheebfmhp` int DEFAULT NULL,\n `sshhrchdoiemeskglkxjkfodyyyhznbp` int DEFAULT NULL,\n `lfhglczvherqxrgxwlyzuvxdcjcycswq` int DEFAULT NULL,\n `gfbvqbgtssczwbnqazemabisvvfvtrxv` int DEFAULT NULL,\n `pkdhugcxgtzwzgnovnmehrjvksetbxuk` int DEFAULT NULL,\n `xwpabojvjyazxvqtwvjnuclmvblcvuys` int DEFAULT NULL,\n `haidxqakiujvbvneiadbjmrozqptssqv` int DEFAULT NULL,\n `jkhirbzlnietnoyxvpkdmmbexqwomhub` int DEFAULT NULL,\n `luxezlxmjrygklgtbkjkxmlhyceyraac` int DEFAULT NULL,\n `zayqyzcvggnmvgkngivekqnaoujzsdop` int DEFAULT NULL,\n `ohexumsffosbdozggbhdpigwmehwjdmi` int DEFAULT NULL,\n `lvsuvaoebpatqlcfgpqznaxecyvmdaup` int DEFAULT NULL,\n `edvobvmqhlbmnyqwwbmewuzhmmditeeh` int DEFAULT NULL,\n `cuwsilsrjhqgpkhpnjwlbsofogbofhvg` int DEFAULT NULL,\n `afitrmtzmyuwhisfaiffrbngcsbgcjjv` int DEFAULT NULL,\n `gdjcedupvnvdodiikjhgjpkuvveurgsp` int DEFAULT NULL,\n `jbscokzcsyokstgnklyapxrohvkjufxx` int DEFAULT NULL,\n `einjddekgsiotkqtxqfefywgehfpordu` int DEFAULT NULL,\n `axwueldcxfwcvnfwvywlymevszhvgrou` int DEFAULT NULL,\n `kvqawszrhptttmnlliykygyssvmcuntd` int DEFAULT NULL,\n `ccekcripejbymgzuajcuynjcvlfvzroo` int DEFAULT NULL,\n `rhqhwukdxwzshpzsyaslndpvczrptwvk` int DEFAULT NULL,\n `endycnsdtggxbarfxcibvkpqgtznnham` int DEFAULT NULL,\n `naefolwcqkzrpdeawvgibsnznvqmrjgf` int DEFAULT NULL,\n `sicigbktsuadjdcbbdhlgxaothxwmvos` int DEFAULT NULL,\n `bcfhqaldzlfteyizmnusdvrjomkegtlr` int DEFAULT NULL,\n `obtwotfdvlvxhzqjwtdvzkcrdcbelfng` int DEFAULT NULL,\n PRIMARY KEY (`uzdtsvwobxruwoxsvcjgnuqqbddhslkx`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"bfilzxoyiqgaczecequheguojdjdqgkw\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["uzdtsvwobxruwoxsvcjgnuqqbddhslkx"],"columns":[{"name":"uzdtsvwobxruwoxsvcjgnuqqbddhslkx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"ztwfatkqmddatpytqnniimqzssuwqgpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kanlztgbzyaotzpojoueipeitbawcwgj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkcxclgucjydbfttobfvhrpbedvahsba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wvdpipadoqoygshcfeqsmwfhsidixzfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zwapdueckuxmihznikgsgvfruxorzifb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmqavfqhbaxdnfhpkhveqeinnllhdeap","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjnithoarquipjbwvfpdrhufagyehzru","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtqejfqfqhlxpbaeiixuswhkgutzwvnt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xknggzwlkwoyqotrorncfaqymsahxkeg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqwjdptjcaomxmquorqirocbmuxxzigl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ayvmxkjpmogwrfvbgnuahqkokucekyoy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"admbkxxfrykcytiaoqobhnrbnpthjubx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rwnpoauqyrsrpbsvannowmeopheguzck","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vzvticifocenaicmggzrychmeaqgpwyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvxaoeliaevnzxedcqosggknjmybgdmh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eufgqaykopgyxzwoefaamjevdjmdkdqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhtnqrskxtcgqfnfuiepyyadisbgfkrp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rleoelgvuzmijwvmytobiqmxlhrzmarn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgxxcvraoptulgdvpppgytnvtmnszqha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pelpmqskhbdtmckitqhswqudbjfebcuy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qflkhuvynlncobnorhwcgwkwfftbaqhg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhqormlbuxakflotcjdrrtsjnuhapwlk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jbqestvtcgclfbgxytflyjaompexseoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjutbflblsushbwyakfbfivxqqbkixqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lzrcqniolfkmrinzpmgstzxlvxirkikj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbbgouujvhmbkmacjrlzfrwnccptletd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvahqqetrkvayrastbbkbhbhulhdxhkn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctjefecjjqwsqjkztkpfmfqckfhqchfq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kohtzvdnszxxrekkowuujvvpeipdwvos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evaudrbwrjunxzaarpjyoxbotuvfvysr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajkxjqvleinbunxxichhmlonspashhng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmahhjixuutwkpzbvoimjqzitaqsqibv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfsgezzstpxnrvpbpoijutradtnxfvuh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"naybaltmajjoeiyvhyfcvotbyxyilnvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zrymjwppwkkiobbgbjrquoxxhvaaflbh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vypwfeltfvfyaxaerzuytqxptjykbwii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lcqsqzcmbxhhnkpeuqlvpvnbfvvcvfew","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmuvsebmlpysgbcdrtgmysmsiehuobva","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wibmjrqygvbozyrgjygullvlqhfrvgun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gixcmkyizvwnnkjtxjyzeupelcxgaotd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqgtyfxcmhhkawbjrtqmwviljuekiuql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nptozglopxtndpouyutdeozyuixdwyld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uchlauzobgrriemtykupeipuygmgkuxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lffrydlxttlukvaqsgacxpcwkddsxuvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xrnpgiutmovfkkfhnvzdrnykubrasbat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmxvuoksjuhepszztdrdhpapuihlmyoo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvwecvxzjlbqwzctfqudcahegtoyrxsx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vrhoblpyxrukrsubpgazrzacddzrgmww","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfucgwndydfkmjyoonkeppxrumbbeulc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xzhcfwccuprsbxpqkyncrerlxubbkajs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zyryiglittwcqptlepngdqtpfrzcpnji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkfkzgmnupxmtybwamuyciytubdcfjuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxhqvdadsekvhubvwhjjlkctttlyrthm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"usdgybqfncbvxcbpbcolisnytkivlveo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxxyezgbmttrkimqvbmdiiqvzgputjog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uucofrzbjnbensbftounnedzpyxvoaed","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"csajdxvswumzuxcqnrzlontekcyuskog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thhcrnsrynmmdsylkbslfaewmunxwrcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqjenuzjexdlpcqinfarwoxinhjsauwv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kqbbyosioynybdmevtlktiuggzvkfnta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hiedyzofmvyxboumdxnazhjaxgfiraqi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ylaeyvmsyycmkzblxuynqkzqkfsedjft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwgljiwzmvsxhcdudisujuhmbeqreega","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"niarzfqxrkyniowjjtgbkgbhghirknjf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxquaqvduwepsbhijufajrrwuhygktih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vuvhfrkkrinhpwyjdkaennjvkrronhps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xashjazrgxdisfevdrtnztubzixspnpg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjnprxoxpyocfacfzrkuskihxzpjbneh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdnjgpsemlpozhkxxgulvnmaltspgmjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzfmosligfohljzfzuvmsuzxzqpyzgaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xlitvkfxgcisugxfdmtbizicoskuseqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhinjpxcdqrleaqabqacjzpqtpacxndf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfqivkcimmvqauasebtzwgseheebfmhp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sshhrchdoiemeskglkxjkfodyyyhznbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfhglczvherqxrgxwlyzuvxdcjcycswq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfbvqbgtssczwbnqazemabisvvfvtrxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkdhugcxgtzwzgnovnmehrjvksetbxuk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xwpabojvjyazxvqtwvjnuclmvblcvuys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"haidxqakiujvbvneiadbjmrozqptssqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jkhirbzlnietnoyxvpkdmmbexqwomhub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"luxezlxmjrygklgtbkjkxmlhyceyraac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zayqyzcvggnmvgkngivekqnaoujzsdop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohexumsffosbdozggbhdpigwmehwjdmi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvsuvaoebpatqlcfgpqznaxecyvmdaup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edvobvmqhlbmnyqwwbmewuzhmmditeeh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cuwsilsrjhqgpkhpnjwlbsofogbofhvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afitrmtzmyuwhisfaiffrbngcsbgcjjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdjcedupvnvdodiikjhgjpkuvveurgsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jbscokzcsyokstgnklyapxrohvkjufxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"einjddekgsiotkqtxqfefywgehfpordu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axwueldcxfwcvnfwvywlymevszhvgrou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvqawszrhptttmnlliykygyssvmcuntd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ccekcripejbymgzuajcuynjcvlfvzroo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhqhwukdxwzshpzsyaslndpvczrptwvk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"endycnsdtggxbarfxcibvkpqgtznnham","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"naefolwcqkzrpdeawvgibsnznvqmrjgf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sicigbktsuadjdcbbdhlgxaothxwmvos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bcfhqaldzlfteyizmnusdvrjomkegtlr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obtwotfdvlvxhzqjwtdvzkcrdcbelfng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842666,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842666999,"databaseName":"models_schema","ddl":"CREATE TABLE `brkqrwtvwkcngrjfgrxsbyjsgzuuyjxk` (\n `mfwztykfbojaazktpyrysevvmcyolght` int NOT NULL,\n `ucwomlvriclxbarpsjbtiqxlbnfocigo` int DEFAULT NULL,\n `bymqtjeupotsfwznpgkbatwgmdijugty` int DEFAULT NULL,\n `urlglmfmokjhziyfwybrykkxjbcduquu` int DEFAULT NULL,\n `aqzzecwgkeojcpcmkjikhutveljluuzu` int DEFAULT NULL,\n `kemtqocgsbmmilyedyyfilylpeabewdt` int DEFAULT NULL,\n `qknnnvfouvojssmerhnmmsexcwauubzc` int DEFAULT NULL,\n `yfmxwyqojbfjrvdnnkrjcndxsficulnq` int DEFAULT NULL,\n `lgtglhxfbfokjfvxhgdruckbykkzuxrp` int DEFAULT NULL,\n `nackuijlnjahvmesbrkdusensvaseizi` int DEFAULT NULL,\n `njjqqexgvgscopsveiuqhymzadqtrsor` int DEFAULT NULL,\n `ivgnrioaiuzsndreobutexcbkycjnrqy` int DEFAULT NULL,\n `rdpunacwwxsjkuqzftywaitnsvqehjvl` int DEFAULT NULL,\n `vpfpqnddiwmpkkngjbzjdxknvnondond` int DEFAULT NULL,\n `gobktzxrzfkylgfcccyqsgxnkxrlujho` int DEFAULT NULL,\n `vpcgkpqtxeyqhqdrdlxhbgnayafvhdxv` int DEFAULT NULL,\n `bnkcqfoxxavepjecdybovvuegbutstcx` int DEFAULT NULL,\n `kqtkkmneinzzhjbcvwrfivbtjqilcfcu` int DEFAULT NULL,\n `ykualodfqnahsnxucaafbiwykkuvipgj` int DEFAULT NULL,\n `awmeotzvkatzvmgwmcontkcwmmcpxncm` int DEFAULT NULL,\n `pcjpsblskviciefbizyoprvhapteeeaf` int DEFAULT NULL,\n `ydvnkhaptoyfeshrjcxfkvdktbnkqdge` int DEFAULT NULL,\n `qdofebchijldsepmxcmoudlmrhntgprm` int DEFAULT NULL,\n `vtniwwyqujfssavchoscairhiebwktza` int DEFAULT NULL,\n `fhbpwtvytcxdifimjkqtmfldcvofpuji` int DEFAULT NULL,\n `fnnmpvesnhhjbevvgeolfvxbbztjjayq` int DEFAULT NULL,\n `pltfyzjnezbwwhkvjjzlkaqziafgjllb` int DEFAULT NULL,\n `duoabwotmpivttureneqgjpicyzyvtsj` int DEFAULT NULL,\n `bdjgtwgicaibdcnbhilimcmqudszqkqu` int DEFAULT NULL,\n `acdmxjcuyikmyduuxjsvkahoiqbymcss` int DEFAULT NULL,\n `gtruqieherppvtfolxcudrieywiryjzy` int DEFAULT NULL,\n `vjcfsfmtyjpcduoyhowphyzsgqiijbro` int DEFAULT NULL,\n `guwajnzvcnmmznnhfbeardtshdvicwmm` int DEFAULT NULL,\n `diacrmhgyfegfwzdljrjyxgfyigqhhqj` int DEFAULT NULL,\n `fzsvxrqklzvxbppoflcwvytxvrberkgw` int DEFAULT NULL,\n `vtdjndcgecbaymbnsrxpsrelggvsdusi` int DEFAULT NULL,\n `faxmavheclhrlchwowkilfkbxbfehsyg` int DEFAULT NULL,\n `gmrfzbfwujwaoonxtznpsezurblrxsfw` int DEFAULT NULL,\n `pzgxgzcpzwvyizpgvemtlejzxjoiyilx` int DEFAULT NULL,\n `vsjtspflfyrurafajuwkonttohhckoig` int DEFAULT NULL,\n `owuxkjpkgagpinzujxtujhdloyvobhgi` int DEFAULT NULL,\n `yfhyrjtmeumzjgvzvziljyabwccihcsc` int DEFAULT NULL,\n `sxeyzjkwlzxcznsqvmsxtnhqkifbatwm` int DEFAULT NULL,\n `qselnnwzuuyqpkzrkhzwfopbhrpdzcgc` int DEFAULT NULL,\n `mafdnvgtbvuwwlarzuvfcckeznnqbwxg` int DEFAULT NULL,\n `bohmycpynkvuaaumbedtdzueksqhvnfv` int DEFAULT NULL,\n `ygndqlualmcalkaudlgpfxcpsbmofkvu` int DEFAULT NULL,\n `lvvzesdvoygvotmzokyszdrjrzzkupjb` int DEFAULT NULL,\n `xcdlpvedqfxantqmducxytswwdkcajtz` int DEFAULT NULL,\n `kbpdhzrxalulyymwivyznocdthakpxhn` int DEFAULT NULL,\n `kizmbrumcacujmwdcjaeuettwydcjykn` int DEFAULT NULL,\n `nxcsrbebesppeirrpypbuhewnpbtufnq` int DEFAULT NULL,\n `jdoqcdgqvswgootmkucutdjjjukequwj` int DEFAULT NULL,\n `oirgczzrxdnoqglyhvwrtdzefwgwlqlu` int DEFAULT NULL,\n `jwpmzvmbhdrvmjcfoqrvyqrababylfhp` int DEFAULT NULL,\n `fttstfvwudjauhjwgwbxphcqprvppkvy` int DEFAULT NULL,\n `zpselxqetqpvcibzmvfsjjgchvygvbjd` int DEFAULT NULL,\n `liyoqalwzugedbyurrecwhdegntlcdwt` int DEFAULT NULL,\n `lospvogewywpjwwaiccywbumqiexlxaf` int DEFAULT NULL,\n `xehmyoljiyobluxhobtruuwyzzytnndq` int DEFAULT NULL,\n `vkzwkgqqnplexjetevugilqvgrphmwfj` int DEFAULT NULL,\n `mqvbqnmxprbilbjyvivezgrcvdoqvccp` int DEFAULT NULL,\n `unmrxlmmqtcmwmnwnveshaitavncwiih` int DEFAULT NULL,\n `frwtmnpgfdivtorjdvqhgblvvgvnnyvq` int DEFAULT NULL,\n `knhtgujguqgfjkgkeyzjqgoynrborhck` int DEFAULT NULL,\n `sjczywhxpauuxitjsocjkmkkfnjbwyej` int DEFAULT NULL,\n `drvhgosjnrxxfylglxqixebzoxeouysx` int DEFAULT NULL,\n `fejwazphtablhufphejjzgeeccuhwylk` int DEFAULT NULL,\n `lvdmqcwnubztyiluhdpvlrpufnyjqwvg` int DEFAULT NULL,\n `dglkzyokwymthaanrgmqnwtldwhbbcqy` int DEFAULT NULL,\n `lmcjbfrwuzbggppmnsqkmrgaxccqpetm` int DEFAULT NULL,\n `zdedcnphhizfbtlnkxnczjwnrzjipuka` int DEFAULT NULL,\n `twxbavycvmdqvwgamcytjczkyqogdzjz` int DEFAULT NULL,\n `ctgdzsuzpobvmptsclxkqoeztmsrtfmf` int DEFAULT NULL,\n `lwaqwegbkfssjpkqvlkvmvfjiqrvnwkh` int DEFAULT NULL,\n `nabnqwjkfoloilxrokhiecuennwdupak` int DEFAULT NULL,\n `eskoqejfzykxwmbboobgmpogmmzkjdyz` int DEFAULT NULL,\n `qvwiihzvejmzxewazrwmtecflaoznxel` int DEFAULT NULL,\n `qitehczcbesnsifazjpickvtokyrrson` int DEFAULT NULL,\n `wqcallgzqpfmtafquqkgzdanscnaylsy` int DEFAULT NULL,\n `vyezvozmdubsofsilfxvdojyhmnhampb` int DEFAULT NULL,\n `yhcevbnuahjvyqcglhvtdrorsqrmgdlb` int DEFAULT NULL,\n `yddfobkmjgahyzoccpksidwxrvegnjvw` int DEFAULT NULL,\n `ljindrtgzsjpctajsiufkpbspqryudrj` int DEFAULT NULL,\n `unfpgrkwkcwmjglbpteyiuudswzqdxub` int DEFAULT NULL,\n `ujocfzwuosfxoobucqptdbsrkjidhobu` int DEFAULT NULL,\n `hjrryxtievspokxjwqvgaapsnwnspinq` int DEFAULT NULL,\n `xsdinmvcljhumjjstlavkineejclaych` int DEFAULT NULL,\n `wcuwyndfhxhawklsgogtjkfrutlrcwyx` int DEFAULT NULL,\n `fnjoqamfusoxekskhlzxhjmhkywnbskm` int DEFAULT NULL,\n `scjypnfriogtxmcndeshqdlgnlxdbxqj` int DEFAULT NULL,\n `mrwuzvxibmhqkdinhlnoodjihkgizqnx` int DEFAULT NULL,\n `uixlgglwdufcikgbdnrgxxehqejkhspp` int DEFAULT NULL,\n `gydlfuygcwgqjpqpnabcavxjkdbzjsqz` int DEFAULT NULL,\n `lrkwnjwsyjuziaivdefpqafoipklpkeu` int DEFAULT NULL,\n `qfrhrejksajomzfkzcfwviffrrpunyjt` int DEFAULT NULL,\n `hpohogwctolqfzwmcxntjbljskaijhab` int DEFAULT NULL,\n `snlqdrqbwtctqysnslqjeqihqfxmkpvz` int DEFAULT NULL,\n `jyjiqpqkyrshyxfezwflftzjsmpcdmhg` int DEFAULT NULL,\n `rcuuuddyeclmygcgyttydtxceetykcxr` int DEFAULT NULL,\n PRIMARY KEY (`mfwztykfbojaazktpyrysevvmcyolght`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"brkqrwtvwkcngrjfgrxsbyjsgzuuyjxk\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["mfwztykfbojaazktpyrysevvmcyolght"],"columns":[{"name":"mfwztykfbojaazktpyrysevvmcyolght","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"ucwomlvriclxbarpsjbtiqxlbnfocigo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bymqtjeupotsfwznpgkbatwgmdijugty","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urlglmfmokjhziyfwybrykkxjbcduquu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqzzecwgkeojcpcmkjikhutveljluuzu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kemtqocgsbmmilyedyyfilylpeabewdt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qknnnvfouvojssmerhnmmsexcwauubzc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfmxwyqojbfjrvdnnkrjcndxsficulnq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgtglhxfbfokjfvxhgdruckbykkzuxrp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nackuijlnjahvmesbrkdusensvaseizi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njjqqexgvgscopsveiuqhymzadqtrsor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivgnrioaiuzsndreobutexcbkycjnrqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdpunacwwxsjkuqzftywaitnsvqehjvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpfpqnddiwmpkkngjbzjdxknvnondond","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gobktzxrzfkylgfcccyqsgxnkxrlujho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpcgkpqtxeyqhqdrdlxhbgnayafvhdxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnkcqfoxxavepjecdybovvuegbutstcx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kqtkkmneinzzhjbcvwrfivbtjqilcfcu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykualodfqnahsnxucaafbiwykkuvipgj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awmeotzvkatzvmgwmcontkcwmmcpxncm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pcjpsblskviciefbizyoprvhapteeeaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydvnkhaptoyfeshrjcxfkvdktbnkqdge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdofebchijldsepmxcmoudlmrhntgprm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtniwwyqujfssavchoscairhiebwktza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhbpwtvytcxdifimjkqtmfldcvofpuji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnnmpvesnhhjbevvgeolfvxbbztjjayq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pltfyzjnezbwwhkvjjzlkaqziafgjllb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"duoabwotmpivttureneqgjpicyzyvtsj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bdjgtwgicaibdcnbhilimcmqudszqkqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"acdmxjcuyikmyduuxjsvkahoiqbymcss","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtruqieherppvtfolxcudrieywiryjzy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjcfsfmtyjpcduoyhowphyzsgqiijbro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"guwajnzvcnmmznnhfbeardtshdvicwmm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"diacrmhgyfegfwzdljrjyxgfyigqhhqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzsvxrqklzvxbppoflcwvytxvrberkgw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtdjndcgecbaymbnsrxpsrelggvsdusi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"faxmavheclhrlchwowkilfkbxbfehsyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmrfzbfwujwaoonxtznpsezurblrxsfw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pzgxgzcpzwvyizpgvemtlejzxjoiyilx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsjtspflfyrurafajuwkonttohhckoig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owuxkjpkgagpinzujxtujhdloyvobhgi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfhyrjtmeumzjgvzvziljyabwccihcsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sxeyzjkwlzxcznsqvmsxtnhqkifbatwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qselnnwzuuyqpkzrkhzwfopbhrpdzcgc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mafdnvgtbvuwwlarzuvfcckeznnqbwxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bohmycpynkvuaaumbedtdzueksqhvnfv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ygndqlualmcalkaudlgpfxcpsbmofkvu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvvzesdvoygvotmzokyszdrjrzzkupjb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xcdlpvedqfxantqmducxytswwdkcajtz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kbpdhzrxalulyymwivyznocdthakpxhn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kizmbrumcacujmwdcjaeuettwydcjykn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxcsrbebesppeirrpypbuhewnpbtufnq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdoqcdgqvswgootmkucutdjjjukequwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oirgczzrxdnoqglyhvwrtdzefwgwlqlu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwpmzvmbhdrvmjcfoqrvyqrababylfhp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fttstfvwudjauhjwgwbxphcqprvppkvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zpselxqetqpvcibzmvfsjjgchvygvbjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"liyoqalwzugedbyurrecwhdegntlcdwt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lospvogewywpjwwaiccywbumqiexlxaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xehmyoljiyobluxhobtruuwyzzytnndq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkzwkgqqnplexjetevugilqvgrphmwfj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqvbqnmxprbilbjyvivezgrcvdoqvccp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unmrxlmmqtcmwmnwnveshaitavncwiih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"frwtmnpgfdivtorjdvqhgblvvgvnnyvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knhtgujguqgfjkgkeyzjqgoynrborhck","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjczywhxpauuxitjsocjkmkkfnjbwyej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drvhgosjnrxxfylglxqixebzoxeouysx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fejwazphtablhufphejjzgeeccuhwylk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvdmqcwnubztyiluhdpvlrpufnyjqwvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dglkzyokwymthaanrgmqnwtldwhbbcqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmcjbfrwuzbggppmnsqkmrgaxccqpetm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdedcnphhizfbtlnkxnczjwnrzjipuka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twxbavycvmdqvwgamcytjczkyqogdzjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctgdzsuzpobvmptsclxkqoeztmsrtfmf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwaqwegbkfssjpkqvlkvmvfjiqrvnwkh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nabnqwjkfoloilxrokhiecuennwdupak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eskoqejfzykxwmbboobgmpogmmzkjdyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvwiihzvejmzxewazrwmtecflaoznxel","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qitehczcbesnsifazjpickvtokyrrson","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqcallgzqpfmtafquqkgzdanscnaylsy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vyezvozmdubsofsilfxvdojyhmnhampb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhcevbnuahjvyqcglhvtdrorsqrmgdlb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yddfobkmjgahyzoccpksidwxrvegnjvw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljindrtgzsjpctajsiufkpbspqryudrj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unfpgrkwkcwmjglbpteyiuudswzqdxub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujocfzwuosfxoobucqptdbsrkjidhobu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjrryxtievspokxjwqvgaapsnwnspinq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsdinmvcljhumjjstlavkineejclaych","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcuwyndfhxhawklsgogtjkfrutlrcwyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnjoqamfusoxekskhlzxhjmhkywnbskm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"scjypnfriogtxmcndeshqdlgnlxdbxqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrwuzvxibmhqkdinhlnoodjihkgizqnx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uixlgglwdufcikgbdnrgxxehqejkhspp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gydlfuygcwgqjpqpnabcavxjkdbzjsqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lrkwnjwsyjuziaivdefpqafoipklpkeu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfrhrejksajomzfkzcfwviffrrpunyjt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hpohogwctolqfzwmcxntjbljskaijhab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"snlqdrqbwtctqysnslqjeqihqfxmkpvz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jyjiqpqkyrshyxfezwflftzjsmpcdmhg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcuuuddyeclmygcgyttydtxceetykcxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667033,"databaseName":"models_schema","ddl":"CREATE TABLE `brznqjnnrwxnevpxwjrcthnvpxrsawok` (\n `sthxctbpbnsfrrhrqgnoggptbofweior` int NOT NULL,\n `pcwbuqijkvvnkjvyibcicirfjlplbsto` int DEFAULT NULL,\n `mzpcubjltjguzvmaebnheijpuybansjf` int DEFAULT NULL,\n `jorhcxrxdehwmyaelkzmiuiyiwougsrm` int DEFAULT NULL,\n `qvdajacjfvsjmptirfttclidjknlpnsi` int DEFAULT NULL,\n `gowtuaypwpttdpnszvjesdbtzotxjdcp` int DEFAULT NULL,\n `igznaqorutncosltvelyefagwytnylxp` int DEFAULT NULL,\n `icsmcxnumrhioomdksoogndgnmsrhkew` int DEFAULT NULL,\n `hdxocmhpkjdkdmuwfadishqbpnbgptqo` int DEFAULT NULL,\n `ajjbafrnuzjfuuxdzhgswrfzhqwolhqe` int DEFAULT NULL,\n `mcorzyttueqegazaabjofjhzwnzafncg` int DEFAULT NULL,\n `bewzqjqotprbxgrdurucrvxtktwdnmwx` int DEFAULT NULL,\n `zyiyvastlokjjnsxajbtrrbczuqvysjy` int DEFAULT NULL,\n `axumbgsmhibwqonkpwbxfnefpujeqesn` int DEFAULT NULL,\n `mlcwkpznkfxynyytrhtoroopwxemqqgz` int DEFAULT NULL,\n `ddmogzonkekzkortmxtsdmrdrrqfauzk` int DEFAULT NULL,\n `jcnfwnqjqvkivkkjhlgivijbwodetjpf` int DEFAULT NULL,\n `voxgxcvxmhiqztavndkrkkpilckozplq` int DEFAULT NULL,\n `jituqvrangwfbsiqwfhbqpyffctkrcil` int DEFAULT NULL,\n `eijlvbviyiawbbostpgemhtnwwotidbm` int DEFAULT NULL,\n `syonomlrybssgeylshjdsswyxyfyyuss` int DEFAULT NULL,\n `nbqxfjdwteherypbhwxvybqicmxczaqs` int DEFAULT NULL,\n `xmqlontcdvtwmkeuwjqfhjmoafprjljl` int DEFAULT NULL,\n `hnahkjtqfptuoknooituqmiihozswyth` int DEFAULT NULL,\n `qnzcwblgwimfsxtanfdwuegxusuweaby` int DEFAULT NULL,\n `ufcnxnsdtssbqcwexjjnjnvatgmdxkei` int DEFAULT NULL,\n `tujvjwgxgzakklvluozipkaqogyxktfs` int DEFAULT NULL,\n `dfjocpbauhyzhasvrijtaztemtbsipdb` int DEFAULT NULL,\n `kyducgxttathzhvaqklbtsoibkdosseu` int DEFAULT NULL,\n `xbatnewvckfnyvdgrpfknsiuapcnorxa` int DEFAULT NULL,\n `cuaukdeietzycnawmupzcowykzltpokl` int DEFAULT NULL,\n `rhjextdxfzoflpdxasgmpummrmdpejju` int DEFAULT NULL,\n `aedjeenkysxpgpxyfgjhgthtlslcffye` int DEFAULT NULL,\n `cewcaplmcgwnllaubnxfumhnscgpchau` int DEFAULT NULL,\n `mgznrtdjuotodtelfvogtemlfpgxicqr` int DEFAULT NULL,\n `jtipidtsnqsivrdzummaolqbvqzltyqs` int DEFAULT NULL,\n `derlulbgjtqmgwudpgcyhgnfxycduagf` int DEFAULT NULL,\n `jufzhtdnghxqbbqlkskjwpnzrifykzqq` int DEFAULT NULL,\n `yutponmyvmnxwfmbjmmohjdhzmswyvxx` int DEFAULT NULL,\n `mbibohsrzvprhdjympoybrdfbosvtcln` int DEFAULT NULL,\n `iqaxvfalyzqqxodysfvmvwzqusbhlmuk` int DEFAULT NULL,\n `frxtlggwcqyzfdgrqunguytvhsouwoeq` int DEFAULT NULL,\n `udamdgdxbljrszxnhynduahcxnjlqzwq` int DEFAULT NULL,\n `loziepfsmtyoaxsaqmxhmwzabrboavxt` int DEFAULT NULL,\n `xcxiuerbucylwzokwvhulmagvetnfgxv` int DEFAULT NULL,\n `rhqfdkrdztfbimdnjdxdenhvxtphljxc` int DEFAULT NULL,\n `uvnoptgaymzdtvqsariyidyprfxptszj` int DEFAULT NULL,\n `wlhfxtfbhslextvprystvwfuatedumcr` int DEFAULT NULL,\n `wpdgbdmjnirmlbrokhypjdzneryipqka` int DEFAULT NULL,\n `rdjyzhugguaasjnmbypkcpmiaqmlihef` int DEFAULT NULL,\n `ifxhbwpfluvsjjllfsuiqofcmzsfnmdc` int DEFAULT NULL,\n `mdvuvucntyomrvxisenmyfacgajqyxdw` int DEFAULT NULL,\n `cgpaogdapfmrzufqxbpzmikzmvkixvrm` int DEFAULT NULL,\n `lqfpaxpitprtbyntwbfjngdahftzyzql` int DEFAULT NULL,\n `wphyagoxbbtziioovfatsxzrogrzhpuf` int DEFAULT NULL,\n `gltlfvgnnztqgptkvaqwyuumqpmxvdoi` int DEFAULT NULL,\n `svtzxynixtobltalhnyrzmvhcqibvnpx` int DEFAULT NULL,\n `agiuvhkysfbhtnemfztmonzpbcwongxo` int DEFAULT NULL,\n `telktpjvkbjebvtwbirzttbfywyhueub` int DEFAULT NULL,\n `rfdksahtbchccmiqzkfhisysearlhgdy` int DEFAULT NULL,\n `pfvewbxvoylwyjjppqkwojrfstyaednv` int DEFAULT NULL,\n `eykbtooosqixzdadcfwzachppvyefhos` int DEFAULT NULL,\n `hivmvrauleyqfwrbcbynkggivuewzpta` int DEFAULT NULL,\n `nxdandksyztilvrosinusukwnxmnvcnd` int DEFAULT NULL,\n `tyjbnfjowrmpakapufaezrybhfpsatmq` int DEFAULT NULL,\n `pzcogjebecadcksvncbmzspbxqqgvdyv` int DEFAULT NULL,\n `emvepbscyrbzamvboyeqgclccnxxaeos` int DEFAULT NULL,\n `pptxtxnvgdxcxgymihktbwblhdnyuzyd` int DEFAULT NULL,\n `looqvrbhanjgmzeanveyyjojsuwdfcrb` int DEFAULT NULL,\n `hhdnfthffzizimulplveouutozwkhyhn` int DEFAULT NULL,\n `gxbkdswiuaokkrizjdngqgrncgergnhf` int DEFAULT NULL,\n `bzaiomzwhnfslwwfmfuljxtqllafhkrr` int DEFAULT NULL,\n `onaloluioogdoaournxbfkihslypblpz` int DEFAULT NULL,\n `vlwolmhfnuduljbclgbxwoscznglfqaf` int DEFAULT NULL,\n `xezwhgiryyismpfrblrzxrrpulzaswce` int DEFAULT NULL,\n `icnygpiiapxqthtfvlaqaiktovdyogou` int DEFAULT NULL,\n `moerzmkqtrqcjujwqhmcnlrfiifyhmoj` int DEFAULT NULL,\n `hixckidlcndpcrvsfireazikuzpkzlbv` int DEFAULT NULL,\n `pinprywlapumxbzabnfgnnfstufxctma` int DEFAULT NULL,\n `cizslxgftueifnbtehrjakiuoqitdvfh` int DEFAULT NULL,\n `sncykqktckoqupnrtznsttanpcqthots` int DEFAULT NULL,\n `pscsolxmnjziognsriorrgsfokynnhwp` int DEFAULT NULL,\n `xicpxglkokpsfxpdswsjbkoxevfxwjey` int DEFAULT NULL,\n `ksshvsqcmefptbtanurlifhogfysrtio` int DEFAULT NULL,\n `ikicnztmlpnathblesgmqicnuyenneur` int DEFAULT NULL,\n `pbmymqffccsvukxcbgeprsotizvaagws` int DEFAULT NULL,\n `yavplzrxamygeftephoffyjlgenxssyy` int DEFAULT NULL,\n `ysdgdssksegdzgvyunrnqymxbwdajfcu` int DEFAULT NULL,\n `fsevjptczjecgabnjvumvzmmwfnyiyqh` int DEFAULT NULL,\n `mmuuyapvxswoybwrnhnfpzizyrhlgdna` int DEFAULT NULL,\n `rbhwwazjoonwttfubouvclhscckdznes` int DEFAULT NULL,\n `jabzzevvpglkpbojftavmfleokcdycnu` int DEFAULT NULL,\n `tkxrzqnuncbegfixxikxrrlvmhlmygyc` int DEFAULT NULL,\n `ngorviiwjiyljrqokdwlgmurgxcqqtin` int DEFAULT NULL,\n `uwcbgverexwscjgvpccdjzfbpflpvbvl` int DEFAULT NULL,\n `zivkzaernpkvtwubqizbwgsytbvyejla` int DEFAULT NULL,\n `daayznabgyblwzkndpcacdvmvqvwcjqw` int DEFAULT NULL,\n `alolxmomztgscjbgnnswyytxqwvauwlv` int DEFAULT NULL,\n `ggwwhxcspvcgiubkkiajigiqeboymzai` int DEFAULT NULL,\n `upwnqagghydynypjnjujmyzsxsviqbrc` int DEFAULT NULL,\n PRIMARY KEY (`sthxctbpbnsfrrhrqgnoggptbofweior`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"brznqjnnrwxnevpxwjrcthnvpxrsawok\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["sthxctbpbnsfrrhrqgnoggptbofweior"],"columns":[{"name":"sthxctbpbnsfrrhrqgnoggptbofweior","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"pcwbuqijkvvnkjvyibcicirfjlplbsto","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzpcubjltjguzvmaebnheijpuybansjf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jorhcxrxdehwmyaelkzmiuiyiwougsrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvdajacjfvsjmptirfttclidjknlpnsi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gowtuaypwpttdpnszvjesdbtzotxjdcp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igznaqorutncosltvelyefagwytnylxp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icsmcxnumrhioomdksoogndgnmsrhkew","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdxocmhpkjdkdmuwfadishqbpnbgptqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajjbafrnuzjfuuxdzhgswrfzhqwolhqe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcorzyttueqegazaabjofjhzwnzafncg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bewzqjqotprbxgrdurucrvxtktwdnmwx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zyiyvastlokjjnsxajbtrrbczuqvysjy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axumbgsmhibwqonkpwbxfnefpujeqesn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mlcwkpznkfxynyytrhtoroopwxemqqgz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ddmogzonkekzkortmxtsdmrdrrqfauzk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jcnfwnqjqvkivkkjhlgivijbwodetjpf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"voxgxcvxmhiqztavndkrkkpilckozplq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jituqvrangwfbsiqwfhbqpyffctkrcil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eijlvbviyiawbbostpgemhtnwwotidbm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"syonomlrybssgeylshjdsswyxyfyyuss","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbqxfjdwteherypbhwxvybqicmxczaqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xmqlontcdvtwmkeuwjqfhjmoafprjljl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hnahkjtqfptuoknooituqmiihozswyth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qnzcwblgwimfsxtanfdwuegxusuweaby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ufcnxnsdtssbqcwexjjnjnvatgmdxkei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tujvjwgxgzakklvluozipkaqogyxktfs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dfjocpbauhyzhasvrijtaztemtbsipdb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kyducgxttathzhvaqklbtsoibkdosseu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbatnewvckfnyvdgrpfknsiuapcnorxa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cuaukdeietzycnawmupzcowykzltpokl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhjextdxfzoflpdxasgmpummrmdpejju","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aedjeenkysxpgpxyfgjhgthtlslcffye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cewcaplmcgwnllaubnxfumhnscgpchau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mgznrtdjuotodtelfvogtemlfpgxicqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jtipidtsnqsivrdzummaolqbvqzltyqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"derlulbgjtqmgwudpgcyhgnfxycduagf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jufzhtdnghxqbbqlkskjwpnzrifykzqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yutponmyvmnxwfmbjmmohjdhzmswyvxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbibohsrzvprhdjympoybrdfbosvtcln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqaxvfalyzqqxodysfvmvwzqusbhlmuk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"frxtlggwcqyzfdgrqunguytvhsouwoeq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udamdgdxbljrszxnhynduahcxnjlqzwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"loziepfsmtyoaxsaqmxhmwzabrboavxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xcxiuerbucylwzokwvhulmagvetnfgxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhqfdkrdztfbimdnjdxdenhvxtphljxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvnoptgaymzdtvqsariyidyprfxptszj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wlhfxtfbhslextvprystvwfuatedumcr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wpdgbdmjnirmlbrokhypjdzneryipqka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdjyzhugguaasjnmbypkcpmiaqmlihef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ifxhbwpfluvsjjllfsuiqofcmzsfnmdc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mdvuvucntyomrvxisenmyfacgajqyxdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgpaogdapfmrzufqxbpzmikzmvkixvrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqfpaxpitprtbyntwbfjngdahftzyzql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wphyagoxbbtziioovfatsxzrogrzhpuf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gltlfvgnnztqgptkvaqwyuumqpmxvdoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"svtzxynixtobltalhnyrzmvhcqibvnpx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agiuvhkysfbhtnemfztmonzpbcwongxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"telktpjvkbjebvtwbirzttbfywyhueub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfdksahtbchccmiqzkfhisysearlhgdy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pfvewbxvoylwyjjppqkwojrfstyaednv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eykbtooosqixzdadcfwzachppvyefhos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hivmvrauleyqfwrbcbynkggivuewzpta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxdandksyztilvrosinusukwnxmnvcnd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tyjbnfjowrmpakapufaezrybhfpsatmq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pzcogjebecadcksvncbmzspbxqqgvdyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"emvepbscyrbzamvboyeqgclccnxxaeos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pptxtxnvgdxcxgymihktbwblhdnyuzyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"looqvrbhanjgmzeanveyyjojsuwdfcrb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhdnfthffzizimulplveouutozwkhyhn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gxbkdswiuaokkrizjdngqgrncgergnhf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bzaiomzwhnfslwwfmfuljxtqllafhkrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"onaloluioogdoaournxbfkihslypblpz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vlwolmhfnuduljbclgbxwoscznglfqaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xezwhgiryyismpfrblrzxrrpulzaswce","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icnygpiiapxqthtfvlaqaiktovdyogou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"moerzmkqtrqcjujwqhmcnlrfiifyhmoj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hixckidlcndpcrvsfireazikuzpkzlbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pinprywlapumxbzabnfgnnfstufxctma","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cizslxgftueifnbtehrjakiuoqitdvfh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sncykqktckoqupnrtznsttanpcqthots","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pscsolxmnjziognsriorrgsfokynnhwp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xicpxglkokpsfxpdswsjbkoxevfxwjey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ksshvsqcmefptbtanurlifhogfysrtio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikicnztmlpnathblesgmqicnuyenneur","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbmymqffccsvukxcbgeprsotizvaagws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yavplzrxamygeftephoffyjlgenxssyy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ysdgdssksegdzgvyunrnqymxbwdajfcu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fsevjptczjecgabnjvumvzmmwfnyiyqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmuuyapvxswoybwrnhnfpzizyrhlgdna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbhwwazjoonwttfubouvclhscckdznes","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jabzzevvpglkpbojftavmfleokcdycnu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkxrzqnuncbegfixxikxrrlvmhlmygyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ngorviiwjiyljrqokdwlgmurgxcqqtin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uwcbgverexwscjgvpccdjzfbpflpvbvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zivkzaernpkvtwubqizbwgsytbvyejla","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"daayznabgyblwzkndpcacdvmvqvwcjqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"alolxmomztgscjbgnnswyytxqwvauwlv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggwwhxcspvcgiubkkiajigiqeboymzai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upwnqagghydynypjnjujmyzsxsviqbrc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667067,"databaseName":"models_schema","ddl":"CREATE TABLE `cjbsiglppbkiwuokzgspunevqbbejmfp` (\n `rbgelgermwzasvqtktmleputckwzpdlm` int NOT NULL,\n `hmnvzmcliuvzuoshtqqvhnqdfalkiubx` int DEFAULT NULL,\n `yflhfpafwojxbrentxnnencwqfxaoltn` int DEFAULT NULL,\n `nxovbatoubbthpjgjnkedvtogsoexjcs` int DEFAULT NULL,\n `smwzvfpoulbfcqdlqgnkdvokvjcweeas` int DEFAULT NULL,\n `pyvkeoeuvscthwxjfcjgsdkfdrdzrmbz` int DEFAULT NULL,\n `jiyxoqfjavxivyqcpgmlqasajdccapng` int DEFAULT NULL,\n `ctdffgofydqzrddorydefmdwjrwzsihi` int DEFAULT NULL,\n `upwoflakeoilzosncsmswywfpyjfhxem` int DEFAULT NULL,\n `vhjkqekryxlzzeqydehleyuxitighzrj` int DEFAULT NULL,\n `yxxxoleouymhtntacmibamneuuovkrnr` int DEFAULT NULL,\n `xitakfayxqtkzwzzwnonlmeyxyiwzojb` int DEFAULT NULL,\n `ozfjjkrdrnddimtjanbzazuuxbdxucax` int DEFAULT NULL,\n `nivpjquwsnqvivjldyrzgisufjajhynu` int DEFAULT NULL,\n `acujwyqngvxpwyiocdaddklsdnxwvbmn` int DEFAULT NULL,\n `nqzrzryewssfljylsfeyzwfmriecvtav` int DEFAULT NULL,\n `ryvwflnumxftblhtqrebbdsltijwgdee` int DEFAULT NULL,\n `zkmxtnoxdjpbvswpgrtkaozrsrrszwnb` int DEFAULT NULL,\n `yaxautsickhkxnlfypyvfhjctselfjqs` int DEFAULT NULL,\n `jjaidngcqvrydmrlvekdskyrumhfbjdu` int DEFAULT NULL,\n `fhsjhqlqkopozjtseygosastppwajpxy` int DEFAULT NULL,\n `femcozvpqjkadtmsrekdtypmfvktvuct` int DEFAULT NULL,\n `vbojbbrfkvjidegrulzmrqunngninyaf` int DEFAULT NULL,\n `hvetfmrljmjulgooexdcwljcnspngmhp` int DEFAULT NULL,\n `lyqorvyiorifcwcyuumgcyoikegxqggx` int DEFAULT NULL,\n `wqvdpvqotdamxoigotmkfgowtrixehat` int DEFAULT NULL,\n `gozkqzshtyoschiufjrqetubinyrhuhp` int DEFAULT NULL,\n `mzsawniofdncmicqsksgiyezczehhltm` int DEFAULT NULL,\n `kzkvjbivnlcyfmbiznygforjfyxpcsjf` int DEFAULT NULL,\n `sbkidtmdgidmnvpuuvmjycinraiquejl` int DEFAULT NULL,\n `shbnzdeudqeqgjobnzqifqyokhzpzjzl` int DEFAULT NULL,\n `jiovocsjxvoabzrsdruzcedfhgjxiyyi` int DEFAULT NULL,\n `szioaiovnhskehksoryjsxixkzxjmyoa` int DEFAULT NULL,\n `darilnnkkpnbfarbakwsynpyaywjxdro` int DEFAULT NULL,\n `jqmjrurgxvreawcsksqwqhphhiofbnok` int DEFAULT NULL,\n `tvveasjzpxlhwveymllademmihogbdqp` int DEFAULT NULL,\n `iubyrsassrefqfyukqlpoicssyndmzve` int DEFAULT NULL,\n `wvpbewwsvdnoztcorbnhugbludnlgsco` int DEFAULT NULL,\n `qmnraiveyvsihkzwtfhjytrxxyuwnafi` int DEFAULT NULL,\n `cezwnrgegnlqdqutvzvmfqmjbgbyasml` int DEFAULT NULL,\n `izmnegqcjkvtzelfjsrlyhizenifhnze` int DEFAULT NULL,\n `agujlprsngizjnnplqmnkokxvscjuupw` int DEFAULT NULL,\n `sujafkepypemkcvaphecasnzgfrgbter` int DEFAULT NULL,\n `vewyrevzyrrwbyzpxzcsoxoneovjticn` int DEFAULT NULL,\n `ajiuqrfhddfxpwvmmoakvfvsxsahzsyf` int DEFAULT NULL,\n `ozuqzcebfhrasaujybbyuuzavbnsdvhe` int DEFAULT NULL,\n `wftqpizbttzjfrepzjgyzdnqybjhijvy` int DEFAULT NULL,\n `mvhkhbydokyckjpfsjuqwphtmmplqbyw` int DEFAULT NULL,\n `sqfiyxkfmaomcpgfkfuqpuuyldkiquau` int DEFAULT NULL,\n `hfnypgevhkqyvsaltnckzgfrmipxazzx` int DEFAULT NULL,\n `fuvykapsvpvtcruppzswacnyjpgxavfc` int DEFAULT NULL,\n `mlqaaoxgnefzloxaerzpmpkbqclscrfc` int DEFAULT NULL,\n `xmdhhffzunqhhgqfexwnuoxqutzawofg` int DEFAULT NULL,\n `olxaufkxeyhtbebyybsbkyorgxnvqrgc` int DEFAULT NULL,\n `fxwbkwjzfyxpbjaimcfnzkteoihxtcau` int DEFAULT NULL,\n `vnhcdkjdpnppzwiiowqkoecpuvhlkyyo` int DEFAULT NULL,\n `ckqbqcpumwzxmntvultkyzlgqathetfs` int DEFAULT NULL,\n `fjgpeargrlabxleopupgmdwkmyplaxgu` int DEFAULT NULL,\n `asipqknmmisntasyzvkzclvhmrsmvzni` int DEFAULT NULL,\n `mjmapfmjgwiqfiifemywjiprgagdpuzd` int DEFAULT NULL,\n `dybcbzuhpioqdoowagyqsrfrnxoyxwoz` int DEFAULT NULL,\n `uihuxpvhcooizgxxvczfuzazdvcvjvic` int DEFAULT NULL,\n `qvovueiytzipdnsaddlmmmqjxeqbbjmt` int DEFAULT NULL,\n `snofzoxshglqprpermiygsajryglrtdl` int DEFAULT NULL,\n `jktdyjdvbieccdmyvppisffdyqtebelq` int DEFAULT NULL,\n `jgpohtoncaunlfwpzvgaorypqqzxnfkj` int DEFAULT NULL,\n `mnpfawbniqjkoyqstlldwgjnjfcjtsyl` int DEFAULT NULL,\n `ydlxjuduxuyzwwrlpxtmxscresfkzlkp` int DEFAULT NULL,\n `iuhnyvbnthbshywsarhkxbglecvpjsot` int DEFAULT NULL,\n `jphjcxpueteggsqygfgsbgkwwcrxqyqs` int DEFAULT NULL,\n `orcxsgfowjsoxsdscfjogitxwjvrblno` int DEFAULT NULL,\n `dflnmrmakcvrbnezolppddgvkuesbtea` int DEFAULT NULL,\n `vsxbcjduoeggvaflwayrsfxrvmwyqnyp` int DEFAULT NULL,\n `wwwwilnawybxaprwbkqxhvbqtdvfxshi` int DEFAULT NULL,\n `issovmseujlrpuzpdsgkpmqfntduuyab` int DEFAULT NULL,\n `rwskkpwtjalvvovxvjiutalrgwlzhppl` int DEFAULT NULL,\n `ugozlrxnzzjirfmnteflfttqulhndfmn` int DEFAULT NULL,\n `jutqbggovwfebhavlyslsgstvigprmwd` int DEFAULT NULL,\n `yxcorjaymtsepptedsrkhbnyewmutgrd` int DEFAULT NULL,\n `djvjnxmlizivnujiqikzavzmkpzeyxoy` int DEFAULT NULL,\n `plvtrvwkibtflranedhaqgksnjcdtwgf` int DEFAULT NULL,\n `cqenejeakuumaplsxyylvvulgtkmgxxq` int DEFAULT NULL,\n `gztfjuciknojhbxkoqlpudtinmdrzgdd` int DEFAULT NULL,\n `nntqsronjsqxubjejuscdrenqtvfeyya` int DEFAULT NULL,\n `dickdknfcctdfxmhpuqdlcgiyqcnargc` int DEFAULT NULL,\n `hibbwzwkhdfcvxqluoqmmkuotuofddwd` int DEFAULT NULL,\n `wwxupufghotyhyijnoaflimytcvrlnaz` int DEFAULT NULL,\n `oduvksjjjkyztteyuiayovgkccnlyehr` int DEFAULT NULL,\n `aicfbnzloojzqrjwzccwjmggmfqtswrk` int DEFAULT NULL,\n `iaboxwvdzqoeuyhwdiiytrxiybbntknu` int DEFAULT NULL,\n `ptaprjabomsxtmpcrnumvfnksenxeelc` int DEFAULT NULL,\n `zeyloqdcmesbpvxafwycbqzuhvgnpgeh` int DEFAULT NULL,\n `zpnumqvsluilgihcpjyohgjaztbtcvbx` int DEFAULT NULL,\n `izyoyfsfnkdpxpavckokgftggsddfjac` int DEFAULT NULL,\n `jsgkbeqappnebuvaslgzpczmhvndoyax` int DEFAULT NULL,\n `ibyaidmrchbvxybcerbvowwvuazjojld` int DEFAULT NULL,\n `ztdqgbrywdwekiqxvdbgkbtplczdownu` int DEFAULT NULL,\n `lhmehodykwclxinhrlclzyzizjemonyp` int DEFAULT NULL,\n `ntcrmjoeihtbdhtpxbjrvgkskdihroqn` int DEFAULT NULL,\n `opxmiwkaarlywamiogyfyewckptnwrwu` int DEFAULT NULL,\n PRIMARY KEY (`rbgelgermwzasvqtktmleputckwzpdlm`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"cjbsiglppbkiwuokzgspunevqbbejmfp\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["rbgelgermwzasvqtktmleputckwzpdlm"],"columns":[{"name":"rbgelgermwzasvqtktmleputckwzpdlm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"hmnvzmcliuvzuoshtqqvhnqdfalkiubx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yflhfpafwojxbrentxnnencwqfxaoltn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxovbatoubbthpjgjnkedvtogsoexjcs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smwzvfpoulbfcqdlqgnkdvokvjcweeas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pyvkeoeuvscthwxjfcjgsdkfdrdzrmbz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jiyxoqfjavxivyqcpgmlqasajdccapng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctdffgofydqzrddorydefmdwjrwzsihi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upwoflakeoilzosncsmswywfpyjfhxem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhjkqekryxlzzeqydehleyuxitighzrj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxxxoleouymhtntacmibamneuuovkrnr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xitakfayxqtkzwzzwnonlmeyxyiwzojb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ozfjjkrdrnddimtjanbzazuuxbdxucax","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nivpjquwsnqvivjldyrzgisufjajhynu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"acujwyqngvxpwyiocdaddklsdnxwvbmn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqzrzryewssfljylsfeyzwfmriecvtav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ryvwflnumxftblhtqrebbdsltijwgdee","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zkmxtnoxdjpbvswpgrtkaozrsrrszwnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yaxautsickhkxnlfypyvfhjctselfjqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjaidngcqvrydmrlvekdskyrumhfbjdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhsjhqlqkopozjtseygosastppwajpxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"femcozvpqjkadtmsrekdtypmfvktvuct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbojbbrfkvjidegrulzmrqunngninyaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hvetfmrljmjulgooexdcwljcnspngmhp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lyqorvyiorifcwcyuumgcyoikegxqggx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqvdpvqotdamxoigotmkfgowtrixehat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gozkqzshtyoschiufjrqetubinyrhuhp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzsawniofdncmicqsksgiyezczehhltm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzkvjbivnlcyfmbiznygforjfyxpcsjf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbkidtmdgidmnvpuuvmjycinraiquejl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shbnzdeudqeqgjobnzqifqyokhzpzjzl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jiovocsjxvoabzrsdruzcedfhgjxiyyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"szioaiovnhskehksoryjsxixkzxjmyoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"darilnnkkpnbfarbakwsynpyaywjxdro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jqmjrurgxvreawcsksqwqhphhiofbnok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvveasjzpxlhwveymllademmihogbdqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iubyrsassrefqfyukqlpoicssyndmzve","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wvpbewwsvdnoztcorbnhugbludnlgsco","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmnraiveyvsihkzwtfhjytrxxyuwnafi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cezwnrgegnlqdqutvzvmfqmjbgbyasml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"izmnegqcjkvtzelfjsrlyhizenifhnze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agujlprsngizjnnplqmnkokxvscjuupw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sujafkepypemkcvaphecasnzgfrgbter","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vewyrevzyrrwbyzpxzcsoxoneovjticn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajiuqrfhddfxpwvmmoakvfvsxsahzsyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ozuqzcebfhrasaujybbyuuzavbnsdvhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wftqpizbttzjfrepzjgyzdnqybjhijvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvhkhbydokyckjpfsjuqwphtmmplqbyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sqfiyxkfmaomcpgfkfuqpuuyldkiquau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfnypgevhkqyvsaltnckzgfrmipxazzx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fuvykapsvpvtcruppzswacnyjpgxavfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mlqaaoxgnefzloxaerzpmpkbqclscrfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xmdhhffzunqhhgqfexwnuoxqutzawofg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"olxaufkxeyhtbebyybsbkyorgxnvqrgc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxwbkwjzfyxpbjaimcfnzkteoihxtcau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vnhcdkjdpnppzwiiowqkoecpuvhlkyyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ckqbqcpumwzxmntvultkyzlgqathetfs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjgpeargrlabxleopupgmdwkmyplaxgu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"asipqknmmisntasyzvkzclvhmrsmvzni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjmapfmjgwiqfiifemywjiprgagdpuzd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dybcbzuhpioqdoowagyqsrfrnxoyxwoz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uihuxpvhcooizgxxvczfuzazdvcvjvic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvovueiytzipdnsaddlmmmqjxeqbbjmt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"snofzoxshglqprpermiygsajryglrtdl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jktdyjdvbieccdmyvppisffdyqtebelq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgpohtoncaunlfwpzvgaorypqqzxnfkj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnpfawbniqjkoyqstlldwgjnjfcjtsyl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydlxjuduxuyzwwrlpxtmxscresfkzlkp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iuhnyvbnthbshywsarhkxbglecvpjsot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jphjcxpueteggsqygfgsbgkwwcrxqyqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orcxsgfowjsoxsdscfjogitxwjvrblno","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dflnmrmakcvrbnezolppddgvkuesbtea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsxbcjduoeggvaflwayrsfxrvmwyqnyp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwwwilnawybxaprwbkqxhvbqtdvfxshi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"issovmseujlrpuzpdsgkpmqfntduuyab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rwskkpwtjalvvovxvjiutalrgwlzhppl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugozlrxnzzjirfmnteflfttqulhndfmn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jutqbggovwfebhavlyslsgstvigprmwd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxcorjaymtsepptedsrkhbnyewmutgrd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"djvjnxmlizivnujiqikzavzmkpzeyxoy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"plvtrvwkibtflranedhaqgksnjcdtwgf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqenejeakuumaplsxyylvvulgtkmgxxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gztfjuciknojhbxkoqlpudtinmdrzgdd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nntqsronjsqxubjejuscdrenqtvfeyya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dickdknfcctdfxmhpuqdlcgiyqcnargc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hibbwzwkhdfcvxqluoqmmkuotuofddwd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwxupufghotyhyijnoaflimytcvrlnaz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oduvksjjjkyztteyuiayovgkccnlyehr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aicfbnzloojzqrjwzccwjmggmfqtswrk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iaboxwvdzqoeuyhwdiiytrxiybbntknu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ptaprjabomsxtmpcrnumvfnksenxeelc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zeyloqdcmesbpvxafwycbqzuhvgnpgeh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zpnumqvsluilgihcpjyohgjaztbtcvbx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"izyoyfsfnkdpxpavckokgftggsddfjac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jsgkbeqappnebuvaslgzpczmhvndoyax","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibyaidmrchbvxybcerbvowwvuazjojld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ztdqgbrywdwekiqxvdbgkbtplczdownu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhmehodykwclxinhrlclzyzizjemonyp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntcrmjoeihtbdhtpxbjrvgkskdihroqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opxmiwkaarlywamiogyfyewckptnwrwu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667103,"databaseName":"models_schema","ddl":"CREATE TABLE `crfncrfexubbsoqfpqdpbclcqxnclxmt` (\n `muhpxjnrxlewxtihfeojrtdfymulyblt` int NOT NULL,\n `fhfomwsdlnehxzpmidhsecefrxwcmgus` int DEFAULT NULL,\n `muhqwttgqvkdcmqhrtxucmvqunvfmrig` int DEFAULT NULL,\n `gzpmpclqxliodsbwetqefufqhlccsnre` int DEFAULT NULL,\n `rrcpzizkxnhjfxiimonprhatitsluwme` int DEFAULT NULL,\n `qugyqnhzuoytzrmaqdmkrklzhuljqpzn` int DEFAULT NULL,\n `duabbtphvqsmufccozmchfuxumcmithh` int DEFAULT NULL,\n `fxgzgmtxsbvtwpxhdlbyyosnguwjxnar` int DEFAULT NULL,\n `xnziczwbzrcsijpkielrhakarmsniyqg` int DEFAULT NULL,\n `dgvudemkfqdaulfyzaadxdicsjlliiyh` int DEFAULT NULL,\n `fmztgnbrcmiqaqizokoeejqosoflhbgi` int DEFAULT NULL,\n `lkykgesmedxdgmaemqwawniwxpufapdt` int DEFAULT NULL,\n `bnxridqjefvfmxtktxlyzmjpyskkqpnt` int DEFAULT NULL,\n `nkbcolvewkpxhaqfbbjipbvscpkcrkuf` int DEFAULT NULL,\n `kxzlpkmlkazlmzxwsvzodbhwbmyghhvo` int DEFAULT NULL,\n `iijgvdcmumuevthmvyhcyrjmuafbxrxv` int DEFAULT NULL,\n `llgijwbjsflthggsjrpjogxjgkufeupv` int DEFAULT NULL,\n `brnxrdrukstzapuykbiddbafmtvrhovs` int DEFAULT NULL,\n `detcffdwpxbqmwymnzlponhstfdqgnnc` int DEFAULT NULL,\n `grqavvmevzooaykcmvclqgesrrfccadk` int DEFAULT NULL,\n `gdtzdnchxkfzqxjulmrlmlwycyllszgy` int DEFAULT NULL,\n `embavlwwmvmgidqnmdeohunodkajkurf` int DEFAULT NULL,\n `cxebyxexkqyiivabigfmtrdogwzjoeek` int DEFAULT NULL,\n `mmzjfomwesmyjdxfggongszrqlbszygb` int DEFAULT NULL,\n `hzozcivehqvgijfqdnhufvayfvcsrjpd` int DEFAULT NULL,\n `mxvzmgtxxuytxoaxgokhqmlfqfzutpom` int DEFAULT NULL,\n `potfoledzztrfbpafzptrcuczddkyycx` int DEFAULT NULL,\n `epkpzdinxmgzsbitucekxgdyqickbmla` int DEFAULT NULL,\n `fmswgvvmojryxyfnvohgtekabqtvutay` int DEFAULT NULL,\n `prafruewapooqxynugguckelqswvixvo` int DEFAULT NULL,\n `lhwgrnqwvzmzsimygchsqwjpozotxjqg` int DEFAULT NULL,\n `hnfslkowwyhdqucaoiwqabhrhfhrinqu` int DEFAULT NULL,\n `lradqqkzkfupaacmspcuyklopznkeneb` int DEFAULT NULL,\n `ypjnfgynwqlnvsprpfikuuognrsjekns` int DEFAULT NULL,\n `kcdkuukeotzqvqmuwwhgwkltdikgquzz` int DEFAULT NULL,\n `tmeaxdlhslbxqgcnmnzixrceewllfels` int DEFAULT NULL,\n `vcmwmefnatvtxdzqeoaogpudvrktwpor` int DEFAULT NULL,\n `eqbldbsqzsxoqqrfwrgehdygidfteari` int DEFAULT NULL,\n `azojjoxtdyjqzqmecerexmciyabbnklf` int DEFAULT NULL,\n `qbpmlbxgngblsncgwyrcdamsmxoqfwyb` int DEFAULT NULL,\n `sfcohcffnwjkhgydosoxllumfjfngwbx` int DEFAULT NULL,\n `rrcyznhokqxmelblsezxdmkvhlemnidy` int DEFAULT NULL,\n `wpknbisjfavvcxxksjtwynfpvgylrewl` int DEFAULT NULL,\n `wpyqpevzuyvjryrscconcjjzsvdxxqpy` int DEFAULT NULL,\n `unnudeogzpruypbgzzinrbqyglypuxql` int DEFAULT NULL,\n `mptqartanxmfxaohpeyjimrvybyexrjz` int DEFAULT NULL,\n `wwanegraycnfqvphhllsunmmfctbuzit` int DEFAULT NULL,\n `qvciwhffnmcepzikoyvqxpckuzujvdwq` int DEFAULT NULL,\n `rehnswiveupspgfztfqeztidhelkzesd` int DEFAULT NULL,\n `vjfpwscncldzcsqzpogzwdvxotumjmdd` int DEFAULT NULL,\n `ynldactheipcrzwnwmaissixrcctfoya` int DEFAULT NULL,\n `cnxccoyrfwjizovzzkcllenpiceowktb` int DEFAULT NULL,\n `yobqkjpixciqarpbfvfgpgfhyweofson` int DEFAULT NULL,\n `gvclbwthhiwvysmuchunrhggaklmtjyr` int DEFAULT NULL,\n `pdjersvdylhnebmjxcgyqpwijixsrbwp` int DEFAULT NULL,\n `ggsniconqfsidjwjdbikxijtriujnaoz` int DEFAULT NULL,\n `paicrcbniqodptanvmfinpjhnirnvkig` int DEFAULT NULL,\n `xvzdrnzrtvwmdykhrfbtpplukzuvnbyz` int DEFAULT NULL,\n `xtgohwhvmkohpfoapteekmmqdoibpjym` int DEFAULT NULL,\n `upsxvdrqrxehwfdcnvbrnmbibacepfjj` int DEFAULT NULL,\n `horjpsqpjbmumrxdxjtscldroeqtrtba` int DEFAULT NULL,\n `dtpafducrnwvyxlphquslosmevwekeam` int DEFAULT NULL,\n `cctgfpgazrzkykrbziivyshxhvqdvxiw` int DEFAULT NULL,\n `fbxtxcrfleqhvrtqmdsgwxaspzbxtrqf` int DEFAULT NULL,\n `faqbivvzscbhaakznlzkbxuthrevwrlw` int DEFAULT NULL,\n `ozkfefihkqrfhnuwstzpuutellzvfglt` int DEFAULT NULL,\n `bgdgsagwoflmxdlzbbdhllpyzntmvcgb` int DEFAULT NULL,\n `plrwkhmdsmirwbuvarunywhpdcdkwbxt` int DEFAULT NULL,\n `ivhcjjtwpmlwinrdiebjdqnhfinvtvrg` int DEFAULT NULL,\n `rcdshtahrbdzuzrddvassxtalebbneze` int DEFAULT NULL,\n `mhsnuktfdbtbgtyviqptlhuwpjblrfqt` int DEFAULT NULL,\n `ehymojijgzgppfvefruboosuvobcekox` int DEFAULT NULL,\n `nohkmfzlpsjcpnwjypmiiwnoyehwhfgm` int DEFAULT NULL,\n `fbgbtdymhwghseidxdtkfvetsaxmpkxb` int DEFAULT NULL,\n `akymnehbdtsufjgnhtrkyqoascnxjhld` int DEFAULT NULL,\n `igkxzpvgpomgbkblezziwddsiqonnkai` int DEFAULT NULL,\n `febkedbognzryakhctxwbycmgfwgglyb` int DEFAULT NULL,\n `zivrsmekguksbjbiwrvagvbgbgdnzezd` int DEFAULT NULL,\n `ysnqtfodogozjrzyihmwtndyzlloczer` int DEFAULT NULL,\n `imcxztptuvcdqsbidtyiatltfcsctwys` int DEFAULT NULL,\n `xjofnxitllatjxrucswgcnbaymletkfa` int DEFAULT NULL,\n `ildbaymufivfummikovjstzjgehzyrnm` int DEFAULT NULL,\n `xsrqgrjkyppldmlwtaqzalptayvexxxv` int DEFAULT NULL,\n `npptgbxgmphawjishbefuksznsjwktpc` int DEFAULT NULL,\n `cthqmhffrcldgwtwhzflpfxkiusxijvi` int DEFAULT NULL,\n `flsypklgsohkmumtedovtfjjglovibvb` int DEFAULT NULL,\n `jlnvswznslqbetbavtybiizpknqwtksp` int DEFAULT NULL,\n `kqxtsbhseaysfctjcscttwhuordpidya` int DEFAULT NULL,\n `lxgzwdwxpaciorzgyqmmcbqpizqbimxc` int DEFAULT NULL,\n `nzixpfxppdrvlblvudsundaumuvvrzhr` int DEFAULT NULL,\n `omxlkoapislbgavnhbqafduuzopzblmm` int DEFAULT NULL,\n `uaxmsqxzgmksblfsamhsctmawprduada` int DEFAULT NULL,\n `skzyliaqcihfvxrgqqdlugzhebwjgdxc` int DEFAULT NULL,\n `xmrurnsndimbojgjylyqknrcnxtrifsy` int DEFAULT NULL,\n `lrcdrhtafvisomljbmhxlubxnksagcrl` int DEFAULT NULL,\n `othlihdytjlthkycgrvokzylvrmhjiul` int DEFAULT NULL,\n `rrsgfhnhysemmlivjcxuzgrdhebleypc` int DEFAULT NULL,\n `xeqowmqsxztmmjlqdsusdonubiujczxq` int DEFAULT NULL,\n `wtyowobezuvenudyaqaidccrpojgdwqa` int DEFAULT NULL,\n `chpbeaaiwvonkpfceiklkvevojiyitnd` int DEFAULT NULL,\n PRIMARY KEY (`muhpxjnrxlewxtihfeojrtdfymulyblt`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"crfncrfexubbsoqfpqdpbclcqxnclxmt\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["muhpxjnrxlewxtihfeojrtdfymulyblt"],"columns":[{"name":"muhpxjnrxlewxtihfeojrtdfymulyblt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"fhfomwsdlnehxzpmidhsecefrxwcmgus","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"muhqwttgqvkdcmqhrtxucmvqunvfmrig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzpmpclqxliodsbwetqefufqhlccsnre","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrcpzizkxnhjfxiimonprhatitsluwme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qugyqnhzuoytzrmaqdmkrklzhuljqpzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"duabbtphvqsmufccozmchfuxumcmithh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxgzgmtxsbvtwpxhdlbyyosnguwjxnar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnziczwbzrcsijpkielrhakarmsniyqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgvudemkfqdaulfyzaadxdicsjlliiyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmztgnbrcmiqaqizokoeejqosoflhbgi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lkykgesmedxdgmaemqwawniwxpufapdt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnxridqjefvfmxtktxlyzmjpyskkqpnt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nkbcolvewkpxhaqfbbjipbvscpkcrkuf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxzlpkmlkazlmzxwsvzodbhwbmyghhvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iijgvdcmumuevthmvyhcyrjmuafbxrxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llgijwbjsflthggsjrpjogxjgkufeupv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"brnxrdrukstzapuykbiddbafmtvrhovs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"detcffdwpxbqmwymnzlponhstfdqgnnc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grqavvmevzooaykcmvclqgesrrfccadk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdtzdnchxkfzqxjulmrlmlwycyllszgy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"embavlwwmvmgidqnmdeohunodkajkurf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cxebyxexkqyiivabigfmtrdogwzjoeek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmzjfomwesmyjdxfggongszrqlbszygb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hzozcivehqvgijfqdnhufvayfvcsrjpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mxvzmgtxxuytxoaxgokhqmlfqfzutpom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"potfoledzztrfbpafzptrcuczddkyycx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"epkpzdinxmgzsbitucekxgdyqickbmla","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmswgvvmojryxyfnvohgtekabqtvutay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prafruewapooqxynugguckelqswvixvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhwgrnqwvzmzsimygchsqwjpozotxjqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hnfslkowwyhdqucaoiwqabhrhfhrinqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lradqqkzkfupaacmspcuyklopznkeneb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypjnfgynwqlnvsprpfikuuognrsjekns","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kcdkuukeotzqvqmuwwhgwkltdikgquzz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmeaxdlhslbxqgcnmnzixrceewllfels","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vcmwmefnatvtxdzqeoaogpudvrktwpor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqbldbsqzsxoqqrfwrgehdygidfteari","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"azojjoxtdyjqzqmecerexmciyabbnklf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qbpmlbxgngblsncgwyrcdamsmxoqfwyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfcohcffnwjkhgydosoxllumfjfngwbx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrcyznhokqxmelblsezxdmkvhlemnidy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wpknbisjfavvcxxksjtwynfpvgylrewl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wpyqpevzuyvjryrscconcjjzsvdxxqpy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unnudeogzpruypbgzzinrbqyglypuxql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mptqartanxmfxaohpeyjimrvybyexrjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwanegraycnfqvphhllsunmmfctbuzit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvciwhffnmcepzikoyvqxpckuzujvdwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rehnswiveupspgfztfqeztidhelkzesd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjfpwscncldzcsqzpogzwdvxotumjmdd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynldactheipcrzwnwmaissixrcctfoya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnxccoyrfwjizovzzkcllenpiceowktb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yobqkjpixciqarpbfvfgpgfhyweofson","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gvclbwthhiwvysmuchunrhggaklmtjyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdjersvdylhnebmjxcgyqpwijixsrbwp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggsniconqfsidjwjdbikxijtriujnaoz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"paicrcbniqodptanvmfinpjhnirnvkig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvzdrnzrtvwmdykhrfbtpplukzuvnbyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xtgohwhvmkohpfoapteekmmqdoibpjym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upsxvdrqrxehwfdcnvbrnmbibacepfjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"horjpsqpjbmumrxdxjtscldroeqtrtba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtpafducrnwvyxlphquslosmevwekeam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cctgfpgazrzkykrbziivyshxhvqdvxiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbxtxcrfleqhvrtqmdsgwxaspzbxtrqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"faqbivvzscbhaakznlzkbxuthrevwrlw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ozkfefihkqrfhnuwstzpuutellzvfglt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bgdgsagwoflmxdlzbbdhllpyzntmvcgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"plrwkhmdsmirwbuvarunywhpdcdkwbxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivhcjjtwpmlwinrdiebjdqnhfinvtvrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcdshtahrbdzuzrddvassxtalebbneze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhsnuktfdbtbgtyviqptlhuwpjblrfqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehymojijgzgppfvefruboosuvobcekox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nohkmfzlpsjcpnwjypmiiwnoyehwhfgm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbgbtdymhwghseidxdtkfvetsaxmpkxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akymnehbdtsufjgnhtrkyqoascnxjhld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igkxzpvgpomgbkblezziwddsiqonnkai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"febkedbognzryakhctxwbycmgfwgglyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zivrsmekguksbjbiwrvagvbgbgdnzezd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ysnqtfodogozjrzyihmwtndyzlloczer","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"imcxztptuvcdqsbidtyiatltfcsctwys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjofnxitllatjxrucswgcnbaymletkfa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ildbaymufivfummikovjstzjgehzyrnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsrqgrjkyppldmlwtaqzalptayvexxxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"npptgbxgmphawjishbefuksznsjwktpc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cthqmhffrcldgwtwhzflpfxkiusxijvi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flsypklgsohkmumtedovtfjjglovibvb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlnvswznslqbetbavtybiizpknqwtksp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kqxtsbhseaysfctjcscttwhuordpidya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxgzwdwxpaciorzgyqmmcbqpizqbimxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzixpfxppdrvlblvudsundaumuvvrzhr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omxlkoapislbgavnhbqafduuzopzblmm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uaxmsqxzgmksblfsamhsctmawprduada","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skzyliaqcihfvxrgqqdlugzhebwjgdxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xmrurnsndimbojgjylyqknrcnxtrifsy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lrcdrhtafvisomljbmhxlubxnksagcrl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"othlihdytjlthkycgrvokzylvrmhjiul","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrsgfhnhysemmlivjcxuzgrdhebleypc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xeqowmqsxztmmjlqdsusdonubiujczxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wtyowobezuvenudyaqaidccrpojgdwqa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"chpbeaaiwvonkpfceiklkvevojiyitnd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667138,"databaseName":"models_schema","ddl":"CREATE TABLE `crgfzudloyryxyhjtwycumowtyrpwsly` (\n `vtatooubvbwxxhuqsnkdyntvbsgrfafn` int NOT NULL,\n `bdzeaahelfpxazurxndndcchsbxuwctp` int DEFAULT NULL,\n `zjakrteborjwnqplurfvvrdishwfgfib` int DEFAULT NULL,\n `ypmkkhfqbfojohjpcrwouumomfctechl` int DEFAULT NULL,\n `fdkplvqernbfqeohnvasxqrumyqiqupj` int DEFAULT NULL,\n `lqrsjmygxfawjwljcrwtztgxjbrbjiwj` int DEFAULT NULL,\n `eteuskjobfgcxgtugrjakjfgzxpgbvnh` int DEFAULT NULL,\n `vqgdtqzimidekpikzjumfrtrarmefjyd` int DEFAULT NULL,\n `gzwdpslrcpxpivrrazkuygnxhhprbfau` int DEFAULT NULL,\n `bdakgzcahcfwepesqezrgdafkulykrut` int DEFAULT NULL,\n `gartwgzhborzhchnocqgueswcsmllzyd` int DEFAULT NULL,\n `ozzqyjwtbxetptmphqbknegfhxpsyfhm` int DEFAULT NULL,\n `menioxqhfmuxtysocjfekfqstpjeioni` int DEFAULT NULL,\n `pcosyrpokwzcqoldtwfqnxmpmslkjauq` int DEFAULT NULL,\n `upcxdwfjehmeowlvzmgddodbfkbtcgwt` int DEFAULT NULL,\n `wxrynsespjrzdfrertbxjpzlyqacqnvn` int DEFAULT NULL,\n `hvhjokaqcrcrilhqdmujfvqksiddxuvf` int DEFAULT NULL,\n `dxzgtjkegwhajahuhlbjdbltariorfmu` int DEFAULT NULL,\n `fvmxwfqvregjardabjgjlkjgtvkollnc` int DEFAULT NULL,\n `ucpkdqvehywwuwdnkmzpdztajreagvmw` int DEFAULT NULL,\n `nuavukgzmdchnpsjjqxjpsrvxpvlnaqm` int DEFAULT NULL,\n `fbeqppowxbquegqkacggabyjgkvsitfe` int DEFAULT NULL,\n `dpsoigbecmbosjmgrlmovigsgnldajiw` int DEFAULT NULL,\n `fahmgopmevxtbfkheexpaaifdtwkejom` int DEFAULT NULL,\n `rjevlfczqczlggjiikhjgeedgyvalypp` int DEFAULT NULL,\n `inzfdxivkkysbtybkdovdfhxwecluxkq` int DEFAULT NULL,\n `yjmoupvdgtfkxgnmjlnmwpkmdtgcyxoo` int DEFAULT NULL,\n `vkytxhbelpyisntmijwfcovzeseejfom` int DEFAULT NULL,\n `agxfngzcoicuauiavkbyqnzykzrbacrp` int DEFAULT NULL,\n `fylslanbcncnoanomljfkvaipnqcjtup` int DEFAULT NULL,\n `zdxvecawxjozqsnddfbngffknlfesvub` int DEFAULT NULL,\n `gjnwlvwntpklwjwtkdhgxzcalgtybelm` int DEFAULT NULL,\n `bsexnufhckifedefjtjvwortdofuzkco` int DEFAULT NULL,\n `kfermnqkddixaxyumpjfplwdxpamzcmg` int DEFAULT NULL,\n `cwfnnsnkddqveuanhpwlzaqkpvcczblx` int DEFAULT NULL,\n `meedgmgdurvmuqgbbikyvjlzgenahrsi` int DEFAULT NULL,\n `fhuoeburzvtdkbohpxgucqppjnifdgrq` int DEFAULT NULL,\n `nhrfbdtxmngiosqvjjcbysdvywlrjoyf` int DEFAULT NULL,\n `mevcftpizplqbgjbtxuozjmpmzdppzvf` int DEFAULT NULL,\n `nuppxjqwxrzfitkexvlmjcfpyrhrqfrt` int DEFAULT NULL,\n `mbjfrqxvfhmuvmsmiqskzsyebszykeky` int DEFAULT NULL,\n `eetkzjhyxnzfpwrkaujaxngsopwivwux` int DEFAULT NULL,\n `kfxlndfmvhvwsyjpvmdpfuvaqpkrxwqh` int DEFAULT NULL,\n `dzmaozzqedubrxaiaomxrrfvmvrdesaj` int DEFAULT NULL,\n `aklshqrbfburjjpylqzwvniynypljttl` int DEFAULT NULL,\n `xvqamvzguwjvotliicwdteareogrbeod` int DEFAULT NULL,\n `iqwvgjpdpbbrgncexxrjqyumvvziwlou` int DEFAULT NULL,\n `cnhxuglsqbxobyevgonpreznkqtnpokq` int DEFAULT NULL,\n `jzxexyejylitvrdatdhtgtzjbsilmzko` int DEFAULT NULL,\n `yianmkinqnrcvkxwaercvjooiaocivsp` int DEFAULT NULL,\n `vehiractnyqbxyexmhgejpesfqayjbjb` int DEFAULT NULL,\n `zoxkqhlckicpslycsjvcaxafkyeiordw` int DEFAULT NULL,\n `poabcphoeqrfgfoifjwtxdgrmimjzxfp` int DEFAULT NULL,\n `bcayarqxfybzbddxwnlymnrekrkszgcs` int DEFAULT NULL,\n `iparhfnjgbxenajsxwpjsylqdslefthj` int DEFAULT NULL,\n `htlpbmfhgsmgzdhatgdzbsfhsrourihi` int DEFAULT NULL,\n `gdhkurddhlakeldvseojvbrbwvnkuwtr` int DEFAULT NULL,\n `rphuxpnqbanoletxvcesylhqqkbnmnft` int DEFAULT NULL,\n `tehpmrfiqqkxfrqzyjasnumxwznfcdcr` int DEFAULT NULL,\n `rnxascvvcdtxdrbrusxdcdemqhavfctv` int DEFAULT NULL,\n `yeipwlbixgexajexucmnitvoqvwvmxev` int DEFAULT NULL,\n `zysjkaoffshrgttodgsafmhbaytybvvl` int DEFAULT NULL,\n `aakfvxnknkjpmbxciwqeovzjhuhymqfv` int DEFAULT NULL,\n `ifvdvilvvpljbyefcaperslggrtcfnje` int DEFAULT NULL,\n `khgjrurnpoyhqiitdhbovzhlzxafqvkr` int DEFAULT NULL,\n `mmsqdwocnecwawlqtcliqtypzkljepeo` int DEFAULT NULL,\n `jobukfjwenoserzrfwdskbwilwegcobs` int DEFAULT NULL,\n `cpafoerkklriqlnotgbfxnphxanvvaed` int DEFAULT NULL,\n `leakjgdfvjsjkfkxsizqkvggvwgzckvf` int DEFAULT NULL,\n `dyovprqpbqzvmpwnolhvslghxbmppjmq` int DEFAULT NULL,\n `gfmnndljfhhofouvpkmsunckzqytzhlz` int DEFAULT NULL,\n `lztoctvjzonzctlqumcmdebfpjqurvli` int DEFAULT NULL,\n `xpayrvtjznovkykvqzfywevfpqtafedi` int DEFAULT NULL,\n `pouiqxpdkkwfhhpryviqzhtsdcgbakoo` int DEFAULT NULL,\n `udxabjbtxycsodjznclrcrnzysqeikev` int DEFAULT NULL,\n `kydtcrrxivszlzyoteopszjiuoyqxvps` int DEFAULT NULL,\n `hgblwbegbmrgrmwbcsalgjaqywywypah` int DEFAULT NULL,\n `snsrpdxrbcbkterwwetkuljcpabppwnv` int DEFAULT NULL,\n `oyjcmnjlbbfnlkjriyjdflatsfalybpr` int DEFAULT NULL,\n `zftuliizwnhdtonvlwruihnynosirlsa` int DEFAULT NULL,\n `fchvzwzhahwhkiiqblsctwpawdkosjdt` int DEFAULT NULL,\n `ilwzfxurqzhtrshgsrbbucewqklgeywy` int DEFAULT NULL,\n `wkltgobnkitllrgpkbnkovcjverjahkn` int DEFAULT NULL,\n `qjykvtbuawvqmmmjgbkaoggcsqqazfck` int DEFAULT NULL,\n `fymgacpzwnpobslfoqtmjrroynyadebj` int DEFAULT NULL,\n `vsixvxfgakfpddvvjmbwsbccbgcpdaad` int DEFAULT NULL,\n `mmbzrrnphtoucflttirswclekzagazue` int DEFAULT NULL,\n `fjlovcthtxspqvtxdeycxjzvjoycvmpz` int DEFAULT NULL,\n `owhyuklrnoiwmxhmpuhlojtqbudkoltz` int DEFAULT NULL,\n `potzvtxjchgvwawagxcutyvvnohkbkfv` int DEFAULT NULL,\n `vhygqixjivwwkbmqdmssswqmilvhzupw` int DEFAULT NULL,\n `ypumincaenxzayibflypvbxdzmbyayns` int DEFAULT NULL,\n `hkcsrqnnwlkpynfngfeiutzdjtrnkhym` int DEFAULT NULL,\n `dxkzyyazkapmokonvspzcfewwreppeai` int DEFAULT NULL,\n `ybkgaaswefkxfigvlqqtofkjounfgueq` int DEFAULT NULL,\n `gxiunchhcbonmovwqxadufbnjsskvqkc` int DEFAULT NULL,\n `nysfvkeuwlhmoramzxednleggccmqwih` int DEFAULT NULL,\n `stwzyzbfeqzxbgokgrrevxvxdydocjtl` int DEFAULT NULL,\n `csscewmdchaofkvgdkgdnlyaamhksxja` int DEFAULT NULL,\n `zbocykxcyyychrfollzanghbfmreitnn` int DEFAULT NULL,\n PRIMARY KEY (`vtatooubvbwxxhuqsnkdyntvbsgrfafn`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"crgfzudloyryxyhjtwycumowtyrpwsly\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["vtatooubvbwxxhuqsnkdyntvbsgrfafn"],"columns":[{"name":"vtatooubvbwxxhuqsnkdyntvbsgrfafn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"bdzeaahelfpxazurxndndcchsbxuwctp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjakrteborjwnqplurfvvrdishwfgfib","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypmkkhfqbfojohjpcrwouumomfctechl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fdkplvqernbfqeohnvasxqrumyqiqupj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqrsjmygxfawjwljcrwtztgxjbrbjiwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eteuskjobfgcxgtugrjakjfgzxpgbvnh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqgdtqzimidekpikzjumfrtrarmefjyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzwdpslrcpxpivrrazkuygnxhhprbfau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bdakgzcahcfwepesqezrgdafkulykrut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gartwgzhborzhchnocqgueswcsmllzyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ozzqyjwtbxetptmphqbknegfhxpsyfhm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"menioxqhfmuxtysocjfekfqstpjeioni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pcosyrpokwzcqoldtwfqnxmpmslkjauq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upcxdwfjehmeowlvzmgddodbfkbtcgwt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxrynsespjrzdfrertbxjpzlyqacqnvn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hvhjokaqcrcrilhqdmujfvqksiddxuvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxzgtjkegwhajahuhlbjdbltariorfmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fvmxwfqvregjardabjgjlkjgtvkollnc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ucpkdqvehywwuwdnkmzpdztajreagvmw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nuavukgzmdchnpsjjqxjpsrvxpvlnaqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbeqppowxbquegqkacggabyjgkvsitfe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpsoigbecmbosjmgrlmovigsgnldajiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fahmgopmevxtbfkheexpaaifdtwkejom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjevlfczqczlggjiikhjgeedgyvalypp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"inzfdxivkkysbtybkdovdfhxwecluxkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjmoupvdgtfkxgnmjlnmwpkmdtgcyxoo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkytxhbelpyisntmijwfcovzeseejfom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agxfngzcoicuauiavkbyqnzykzrbacrp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fylslanbcncnoanomljfkvaipnqcjtup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdxvecawxjozqsnddfbngffknlfesvub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjnwlvwntpklwjwtkdhgxzcalgtybelm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bsexnufhckifedefjtjvwortdofuzkco","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfermnqkddixaxyumpjfplwdxpamzcmg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwfnnsnkddqveuanhpwlzaqkpvcczblx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"meedgmgdurvmuqgbbikyvjlzgenahrsi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhuoeburzvtdkbohpxgucqppjnifdgrq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhrfbdtxmngiosqvjjcbysdvywlrjoyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mevcftpizplqbgjbtxuozjmpmzdppzvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nuppxjqwxrzfitkexvlmjcfpyrhrqfrt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbjfrqxvfhmuvmsmiqskzsyebszykeky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eetkzjhyxnzfpwrkaujaxngsopwivwux","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfxlndfmvhvwsyjpvmdpfuvaqpkrxwqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dzmaozzqedubrxaiaomxrrfvmvrdesaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aklshqrbfburjjpylqzwvniynypljttl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvqamvzguwjvotliicwdteareogrbeod","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqwvgjpdpbbrgncexxrjqyumvvziwlou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnhxuglsqbxobyevgonpreznkqtnpokq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jzxexyejylitvrdatdhtgtzjbsilmzko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yianmkinqnrcvkxwaercvjooiaocivsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vehiractnyqbxyexmhgejpesfqayjbjb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zoxkqhlckicpslycsjvcaxafkyeiordw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"poabcphoeqrfgfoifjwtxdgrmimjzxfp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bcayarqxfybzbddxwnlymnrekrkszgcs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iparhfnjgbxenajsxwpjsylqdslefthj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"htlpbmfhgsmgzdhatgdzbsfhsrourihi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdhkurddhlakeldvseojvbrbwvnkuwtr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rphuxpnqbanoletxvcesylhqqkbnmnft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tehpmrfiqqkxfrqzyjasnumxwznfcdcr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnxascvvcdtxdrbrusxdcdemqhavfctv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yeipwlbixgexajexucmnitvoqvwvmxev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zysjkaoffshrgttodgsafmhbaytybvvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aakfvxnknkjpmbxciwqeovzjhuhymqfv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ifvdvilvvpljbyefcaperslggrtcfnje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"khgjrurnpoyhqiitdhbovzhlzxafqvkr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmsqdwocnecwawlqtcliqtypzkljepeo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jobukfjwenoserzrfwdskbwilwegcobs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cpafoerkklriqlnotgbfxnphxanvvaed","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"leakjgdfvjsjkfkxsizqkvggvwgzckvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dyovprqpbqzvmpwnolhvslghxbmppjmq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfmnndljfhhofouvpkmsunckzqytzhlz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lztoctvjzonzctlqumcmdebfpjqurvli","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xpayrvtjznovkykvqzfywevfpqtafedi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pouiqxpdkkwfhhpryviqzhtsdcgbakoo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udxabjbtxycsodjznclrcrnzysqeikev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kydtcrrxivszlzyoteopszjiuoyqxvps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hgblwbegbmrgrmwbcsalgjaqywywypah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"snsrpdxrbcbkterwwetkuljcpabppwnv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oyjcmnjlbbfnlkjriyjdflatsfalybpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zftuliizwnhdtonvlwruihnynosirlsa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fchvzwzhahwhkiiqblsctwpawdkosjdt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ilwzfxurqzhtrshgsrbbucewqklgeywy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wkltgobnkitllrgpkbnkovcjverjahkn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjykvtbuawvqmmmjgbkaoggcsqqazfck","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fymgacpzwnpobslfoqtmjrroynyadebj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsixvxfgakfpddvvjmbwsbccbgcpdaad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmbzrrnphtoucflttirswclekzagazue","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjlovcthtxspqvtxdeycxjzvjoycvmpz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owhyuklrnoiwmxhmpuhlojtqbudkoltz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"potzvtxjchgvwawagxcutyvvnohkbkfv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhygqixjivwwkbmqdmssswqmilvhzupw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypumincaenxzayibflypvbxdzmbyayns","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkcsrqnnwlkpynfngfeiutzdjtrnkhym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxkzyyazkapmokonvspzcfewwreppeai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ybkgaaswefkxfigvlqqtofkjounfgueq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gxiunchhcbonmovwqxadufbnjsskvqkc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nysfvkeuwlhmoramzxednleggccmqwih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"stwzyzbfeqzxbgokgrrevxvxdydocjtl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"csscewmdchaofkvgdkgdnlyaamhksxja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbocykxcyyychrfollzanghbfmreitnn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667172,"databaseName":"models_schema","ddl":"CREATE TABLE `cvducdrtmbckboypjfdtljlqxnmjlvqo` (\n `zctqhgksitzmgkrwqgiylsveuxhgpibh` int NOT NULL,\n `swrkewqmuejcohwtmvpdraqzylbrgfay` int DEFAULT NULL,\n `qmaxvucayegolbgosxtnucwkdmwqrhnw` int DEFAULT NULL,\n `zrejxyqmjizawjnyjogwujrebwnakusa` int DEFAULT NULL,\n `pgvjjdewpahsboeyyazvjadkljwhcike` int DEFAULT NULL,\n `jhdhegeltgcxxplzucekpwqbmzgxcblk` int DEFAULT NULL,\n `zujgirelelmgdajlyanhwridkqkbfgvt` int DEFAULT NULL,\n `fsgjzevwysgxlyvrljvhwxbezneuojdq` int DEFAULT NULL,\n `cypmpbruxxcqycwyybocuscikpfzveud` int DEFAULT NULL,\n `oapdkbjzlltybhbhctpopbqsabbcxzla` int DEFAULT NULL,\n `zfgktnxuacpdovvvbipldepxdemyuuyh` int DEFAULT NULL,\n `dmqccvprjhuaszaqroizgiwprlfwwrgb` int DEFAULT NULL,\n `jdsbetasbqmsdbylyziwytrenbwidkge` int DEFAULT NULL,\n `aeokklhczgngjamtqbwuhnhniuhezecx` int DEFAULT NULL,\n `pgrxpaitohgpsddlpadcocsaoglllpuj` int DEFAULT NULL,\n `ffipjgspxeotumrsrjyqzzcckzrivzdu` int DEFAULT NULL,\n `fjcedbtacqhhtxpxyvqwnaknkdfsgsdf` int DEFAULT NULL,\n `jbajviuumjxmyjtuzflglzfpjhtoffjt` int DEFAULT NULL,\n `magprybcghurwtvvdbiogzunkmqnylfk` int DEFAULT NULL,\n `ejojxvtxkmaaufhovxfmoandlywwppuy` int DEFAULT NULL,\n `ifpkdmpztwlbpewgrsspyuzzrqtthfas` int DEFAULT NULL,\n `mabggiudnfkvcrpluxiomlyzafhbvwta` int DEFAULT NULL,\n `hktqboxfzkcydvdpluaolxqunovdsdfr` int DEFAULT NULL,\n `ikzjngbapeixsnkikaqtkjkndmpkeqdz` int DEFAULT NULL,\n `ipxzjslhmijfkxpxapdaeyjqxqtjvirg` int DEFAULT NULL,\n `rrqjtqqronezgeswluvkuaycoxxkzubd` int DEFAULT NULL,\n `eiqgqdiyrjaiqqatpgnebbmkqmimrovz` int DEFAULT NULL,\n `qtpdntolcvgqjrlwmxbbxitjeelapcfp` int DEFAULT NULL,\n `lwaykjuqzwujxhwbpwnbwjyilxhwtesz` int DEFAULT NULL,\n `glefbrtienynvmrploevzsvhfpdjbqjq` int DEFAULT NULL,\n `dtwrdqdiqihbxdlzgqibohczamiovdiy` int DEFAULT NULL,\n `kculhgsojbylmdoovtwtzswotylatpol` int DEFAULT NULL,\n `iiqttkogiqrjoglysiluhjsdjzxpblhp` int DEFAULT NULL,\n `fkznwjwjjpewggcvbwpshxbtlrjevolf` int DEFAULT NULL,\n `ysippiohkxzddjxuxktzekpvwqnmivtg` int DEFAULT NULL,\n `avaldieaaxqmiwmgwtbihlwinqvodomn` int DEFAULT NULL,\n `keowphmmthlbbcndeecnqyeadrhqjfmk` int DEFAULT NULL,\n `owfueeslcqnlnvqvjtmdyvffvbbtylhz` int DEFAULT NULL,\n `fwgzejpzrcqhewqejuwpmqlmwjpynwye` int DEFAULT NULL,\n `qhrqiwgjcdusefbgoxhpcebxshyirjhv` int DEFAULT NULL,\n `hrcsxybvnioxhesypjekegojjopdbipm` int DEFAULT NULL,\n `dgdmztlaoklrovfppamfjnqxltbdorrf` int DEFAULT NULL,\n `mgnuybptcxxfsgueowodvkfnwmzmdkhi` int DEFAULT NULL,\n `kowukkyeiqsnbuibkhlzwibewzppazsf` int DEFAULT NULL,\n `bkzaxpljgeggsgaodblgqsgkiawsncur` int DEFAULT NULL,\n `lznrqmpgwdzociwkwknijskmqcfvvjhk` int DEFAULT NULL,\n `cldlbrsqgazuumgavqdgpwypzaevlcdd` int DEFAULT NULL,\n `ajecqfjwabvnhafhflqbxighrkcrxieu` int DEFAULT NULL,\n `uexztbwxlqlbomxvxtonpkghztucwixf` int DEFAULT NULL,\n `jlujtrzawemimyrbblsxuihxpevrmgyp` int DEFAULT NULL,\n `geoldoygbyuyxcodztefvqxfaojujltj` int DEFAULT NULL,\n `kcociozeyvwpbxejmcyzmvalrbfzofxs` int DEFAULT NULL,\n `bnqevcjjcdhqyavziagxxaqhcrohnadm` int DEFAULT NULL,\n `mwemqzytoxqbmqthmjxpezpxpnaeeclp` int DEFAULT NULL,\n `riqtdjjmvdlpnnqrqyvtpviosvnynrar` int DEFAULT NULL,\n `ljlejyyybwuauytghmgrvhmhruhufrnn` int DEFAULT NULL,\n `ninupqwzuwtytqvstvzhqpzmibbhszqy` int DEFAULT NULL,\n `wffuxbhwwpeethlcdtswftbswjeletrw` int DEFAULT NULL,\n `bvwgxhqbnfriknmokemvfooxlzyvdzzu` int DEFAULT NULL,\n `guvojyjuobkbltlhejmpimonwobdrvmg` int DEFAULT NULL,\n `xbqrxrdbfpizpcdwzkdcytihhydvudlw` int DEFAULT NULL,\n `teskhontfwnsyxahbhvpbuomuzmygerw` int DEFAULT NULL,\n `qdzvaxfbtuqbhziapdrulraxmkhbyffz` int DEFAULT NULL,\n `pknbesdgcjgxkvfzbeaxsnpfghztmcch` int DEFAULT NULL,\n `ekctotrfsctzxqdnsgfzjeqhiiqygmac` int DEFAULT NULL,\n `zitnyzuheptvatyqprktkraryzbtthwa` int DEFAULT NULL,\n `ktoyqqqwpkofkzogpniioxhjgjqumygz` int DEFAULT NULL,\n `viwswsvplxzdyaxltcjyrbbndjrvyrpd` int DEFAULT NULL,\n `wngaiddkdmqcflocutcrmgqwgyjodfbe` int DEFAULT NULL,\n `wmmpzvlzudyvlujpywdyifjgsjmqmugh` int DEFAULT NULL,\n `gdrlbagstilxghuuzptkomntkytxpvyt` int DEFAULT NULL,\n `eetxzjedhohezmfwxkuviemrnwqwsmxd` int DEFAULT NULL,\n `wbmcaedkdjstyaoijcpberofeynwwbtb` int DEFAULT NULL,\n `tmknjcorrjuwlxogapaaplnxdbvvkjpm` int DEFAULT NULL,\n `bixrggyemzvrmpdufpokzsygqdkrwxao` int DEFAULT NULL,\n `wcsrikijhsrqvibwcvsjvqcipolrpmge` int DEFAULT NULL,\n `lizrbzabxryuiaikfwceqgshkfxcqmcc` int DEFAULT NULL,\n `ozujorzrddxeeognpwytgzxjmxcmdqgs` int DEFAULT NULL,\n `sagaisoybxinhwsjiclittwbliczqpix` int DEFAULT NULL,\n `orzeecjymkwnndteoogldcingrjxrucl` int DEFAULT NULL,\n `vzutucpwiqmimuckascudzmglvsquvdu` int DEFAULT NULL,\n `pzjotwdnwcbnmghulgqmxvaqsljihhfu` int DEFAULT NULL,\n `kthzxupmebjgfrekyvvbmvdebceojgwo` int DEFAULT NULL,\n `hktrdywdloqsnfxumvhlvuivdbzxayqd` int DEFAULT NULL,\n `xkppajkrcsuenkrpmngloojsjryzcfje` int DEFAULT NULL,\n `myduhnpamgqafoqwwawucwqcmuyogifc` int DEFAULT NULL,\n `eoqqerdlbankshzjiipbjllvdmetmcbp` int DEFAULT NULL,\n `tkmnicpacpmxvahzcslrnzqyhtssglia` int DEFAULT NULL,\n `ytebcnhjyqqxnpcwxfgddtddrrvxdffr` int DEFAULT NULL,\n `gzctpxuqgjbmgwxwhvzqvrrlutrmrzmw` int DEFAULT NULL,\n `zacmqkqsoguwjznjceygkjiiwnggjgzi` int DEFAULT NULL,\n `ahepdoonpfrahfoembomgwzkuzjnfqie` int DEFAULT NULL,\n `biinhqftiibicjfkvtgxbtghoymuhgbg` int DEFAULT NULL,\n `hmibnmavcjwzxekstdkidbxllwvzjwzg` int DEFAULT NULL,\n `dschfkapbbwbgnvpumloydtuhbyvwohl` int DEFAULT NULL,\n `jgdajjuieotukgiurqjozegbknixdcoa` int DEFAULT NULL,\n `rdfktwtkmfamronbkocgmhnhsddigybu` int DEFAULT NULL,\n `yivmycbbpmahqzsgombgotuzeumvcykn` int DEFAULT NULL,\n `ikilomkgzgeweifbmtelcnilehypvbvi` int DEFAULT NULL,\n `iockgjrjekzthwawyqmtjqmugkgzrjqq` int DEFAULT NULL,\n PRIMARY KEY (`zctqhgksitzmgkrwqgiylsveuxhgpibh`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"cvducdrtmbckboypjfdtljlqxnmjlvqo\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["zctqhgksitzmgkrwqgiylsveuxhgpibh"],"columns":[{"name":"zctqhgksitzmgkrwqgiylsveuxhgpibh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"swrkewqmuejcohwtmvpdraqzylbrgfay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmaxvucayegolbgosxtnucwkdmwqrhnw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zrejxyqmjizawjnyjogwujrebwnakusa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgvjjdewpahsboeyyazvjadkljwhcike","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jhdhegeltgcxxplzucekpwqbmzgxcblk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zujgirelelmgdajlyanhwridkqkbfgvt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fsgjzevwysgxlyvrljvhwxbezneuojdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cypmpbruxxcqycwyybocuscikpfzveud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oapdkbjzlltybhbhctpopbqsabbcxzla","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zfgktnxuacpdovvvbipldepxdemyuuyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dmqccvprjhuaszaqroizgiwprlfwwrgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdsbetasbqmsdbylyziwytrenbwidkge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aeokklhczgngjamtqbwuhnhniuhezecx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgrxpaitohgpsddlpadcocsaoglllpuj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffipjgspxeotumrsrjyqzzcckzrivzdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjcedbtacqhhtxpxyvqwnaknkdfsgsdf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jbajviuumjxmyjtuzflglzfpjhtoffjt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"magprybcghurwtvvdbiogzunkmqnylfk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejojxvtxkmaaufhovxfmoandlywwppuy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ifpkdmpztwlbpewgrsspyuzzrqtthfas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mabggiudnfkvcrpluxiomlyzafhbvwta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hktqboxfzkcydvdpluaolxqunovdsdfr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikzjngbapeixsnkikaqtkjkndmpkeqdz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ipxzjslhmijfkxpxapdaeyjqxqtjvirg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrqjtqqronezgeswluvkuaycoxxkzubd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eiqgqdiyrjaiqqatpgnebbmkqmimrovz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtpdntolcvgqjrlwmxbbxitjeelapcfp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwaykjuqzwujxhwbpwnbwjyilxhwtesz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"glefbrtienynvmrploevzsvhfpdjbqjq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtwrdqdiqihbxdlzgqibohczamiovdiy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kculhgsojbylmdoovtwtzswotylatpol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iiqttkogiqrjoglysiluhjsdjzxpblhp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fkznwjwjjpewggcvbwpshxbtlrjevolf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ysippiohkxzddjxuxktzekpvwqnmivtg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avaldieaaxqmiwmgwtbihlwinqvodomn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"keowphmmthlbbcndeecnqyeadrhqjfmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owfueeslcqnlnvqvjtmdyvffvbbtylhz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwgzejpzrcqhewqejuwpmqlmwjpynwye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhrqiwgjcdusefbgoxhpcebxshyirjhv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hrcsxybvnioxhesypjekegojjopdbipm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgdmztlaoklrovfppamfjnqxltbdorrf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mgnuybptcxxfsgueowodvkfnwmzmdkhi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kowukkyeiqsnbuibkhlzwibewzppazsf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkzaxpljgeggsgaodblgqsgkiawsncur","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lznrqmpgwdzociwkwknijskmqcfvvjhk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cldlbrsqgazuumgavqdgpwypzaevlcdd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajecqfjwabvnhafhflqbxighrkcrxieu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uexztbwxlqlbomxvxtonpkghztucwixf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlujtrzawemimyrbblsxuihxpevrmgyp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"geoldoygbyuyxcodztefvqxfaojujltj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kcociozeyvwpbxejmcyzmvalrbfzofxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnqevcjjcdhqyavziagxxaqhcrohnadm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwemqzytoxqbmqthmjxpezpxpnaeeclp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"riqtdjjmvdlpnnqrqyvtpviosvnynrar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljlejyyybwuauytghmgrvhmhruhufrnn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ninupqwzuwtytqvstvzhqpzmibbhszqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wffuxbhwwpeethlcdtswftbswjeletrw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvwgxhqbnfriknmokemvfooxlzyvdzzu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"guvojyjuobkbltlhejmpimonwobdrvmg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbqrxrdbfpizpcdwzkdcytihhydvudlw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"teskhontfwnsyxahbhvpbuomuzmygerw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdzvaxfbtuqbhziapdrulraxmkhbyffz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pknbesdgcjgxkvfzbeaxsnpfghztmcch","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekctotrfsctzxqdnsgfzjeqhiiqygmac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zitnyzuheptvatyqprktkraryzbtthwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ktoyqqqwpkofkzogpniioxhjgjqumygz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"viwswsvplxzdyaxltcjyrbbndjrvyrpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wngaiddkdmqcflocutcrmgqwgyjodfbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmmpzvlzudyvlujpywdyifjgsjmqmugh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdrlbagstilxghuuzptkomntkytxpvyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eetxzjedhohezmfwxkuviemrnwqwsmxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbmcaedkdjstyaoijcpberofeynwwbtb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmknjcorrjuwlxogapaaplnxdbvvkjpm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bixrggyemzvrmpdufpokzsygqdkrwxao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcsrikijhsrqvibwcvsjvqcipolrpmge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lizrbzabxryuiaikfwceqgshkfxcqmcc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ozujorzrddxeeognpwytgzxjmxcmdqgs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sagaisoybxinhwsjiclittwbliczqpix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orzeecjymkwnndteoogldcingrjxrucl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vzutucpwiqmimuckascudzmglvsquvdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pzjotwdnwcbnmghulgqmxvaqsljihhfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kthzxupmebjgfrekyvvbmvdebceojgwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hktrdywdloqsnfxumvhlvuivdbzxayqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkppajkrcsuenkrpmngloojsjryzcfje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"myduhnpamgqafoqwwawucwqcmuyogifc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eoqqerdlbankshzjiipbjllvdmetmcbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkmnicpacpmxvahzcslrnzqyhtssglia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytebcnhjyqqxnpcwxfgddtddrrvxdffr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzctpxuqgjbmgwxwhvzqvrrlutrmrzmw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zacmqkqsoguwjznjceygkjiiwnggjgzi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ahepdoonpfrahfoembomgwzkuzjnfqie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"biinhqftiibicjfkvtgxbtghoymuhgbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmibnmavcjwzxekstdkidbxllwvzjwzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dschfkapbbwbgnvpumloydtuhbyvwohl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgdajjuieotukgiurqjozegbknixdcoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdfktwtkmfamronbkocgmhnhsddigybu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yivmycbbpmahqzsgombgotuzeumvcykn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikilomkgzgeweifbmtelcnilehypvbvi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iockgjrjekzthwawyqmtjqmugkgzrjqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667203,"databaseName":"models_schema","ddl":"CREATE TABLE `cxgskvumnqmwipfupfwozqwmfnftsxvs` (\n `tywhaxyehyyjvkzpxzbknapwvpuqntxb` int NOT NULL,\n `bllqhjtcrdsortiqzanaorhggjdarlky` int DEFAULT NULL,\n `bkiecnanarghhsmujtcvrjmckcjrjewg` int DEFAULT NULL,\n `tvwxwfcxetaaetypjimieszepnhfpahw` int DEFAULT NULL,\n `zawjppjkbziqbijjgfgtabxhiywquovj` int DEFAULT NULL,\n `ikhqnheoifjjllbzvejhtwqpkxnxjzej` int DEFAULT NULL,\n `mqnuzjkbytwzvxzwapaqloghfobgvsvv` int DEFAULT NULL,\n `touwdxrfcgpafmncsuynzzchgnjrhfum` int DEFAULT NULL,\n `ymvtyfvockhhhanaxmllpjxrbpvvbexh` int DEFAULT NULL,\n `rjfagmpswdxnuxhgxcxfzwfclqvjtbdn` int DEFAULT NULL,\n `pbeldklhewbbrzwmknrkjvsiodxrptbc` int DEFAULT NULL,\n `afgcglwrlffxfqbdvixaimswqeomoaym` int DEFAULT NULL,\n `ohitkaacmuorixnvifofgjnlbagmdhpt` int DEFAULT NULL,\n `yxpwcycwjixlybnxgwmacvoalpimruoi` int DEFAULT NULL,\n `jrtrvgsvmblmcqrygqtnwvselmjzvoiu` int DEFAULT NULL,\n `qmuuphrebtsrpsjwltlyuvtipgzqridr` int DEFAULT NULL,\n `yzkwexzbdpfflwhezzeefjkmtqifaaba` int DEFAULT NULL,\n `xzepwiqbykdsodhbkmzebzziywwdhzxz` int DEFAULT NULL,\n `dzdnjscxhiqmdqybkudwlxbjyztidcpr` int DEFAULT NULL,\n `bacnxjfyedyyrkhmmdexgidjispshatw` int DEFAULT NULL,\n `dphyraiomzyusnjeigumkhgmrvcktchh` int DEFAULT NULL,\n `mfejxjefvrmwptyzsraacrwpvvxfbfri` int DEFAULT NULL,\n `iyzxezkmdxuydbnmfrkbwmmawkjichsp` int DEFAULT NULL,\n `ikndojxwvkiwzywrqfpwpuldhrvcjuso` int DEFAULT NULL,\n `bbxmjxhxwtsaczqugfftlfrxppynjqnb` int DEFAULT NULL,\n `gbeehjgoacegtgqmrhbsfriwtuichhjc` int DEFAULT NULL,\n `uttbxbwcnodwrcxrzyiisfwoyjgkusoc` int DEFAULT NULL,\n `mjgdvucpctysovmwpklrcbapvdvuldjp` int DEFAULT NULL,\n `sljmmojgpdbpziqmuylvzlfnrrfpvcll` int DEFAULT NULL,\n `fcgwgreohtnkykixpismnctdhpkcqrxb` int DEFAULT NULL,\n `wubqigryudrjiulvecphouyerhrpgasv` int DEFAULT NULL,\n `kwslfzxlbrbokxcknoecsziqyuzknoqr` int DEFAULT NULL,\n `odvizirpugvfmlcuflvlnuyzxdrsunax` int DEFAULT NULL,\n `woifirbhmfaksnlgbwdbfcxkfqrntdzp` int DEFAULT NULL,\n `bgnanaznanfacfzoxmrfcpwanusalcqe` int DEFAULT NULL,\n `nqvicdlazmynrycgineevbmtomqtacfa` int DEFAULT NULL,\n `dnvoqfoolhvvfobaztcvzizlrbcroksw` int DEFAULT NULL,\n `bjpldujeguxxbtvhsxkocdsfshiaagda` int DEFAULT NULL,\n `oxsqxksfbcsbwpgqmuyndkkaylavklmn` int DEFAULT NULL,\n `xnloafibjyqazhfgvjcqciqgexkevmkl` int DEFAULT NULL,\n `glkjzuggafnavcyzhpnkcguwpgjahbmj` int DEFAULT NULL,\n `pbwciaapjyejlnqaexiqmywfimtqrsrf` int DEFAULT NULL,\n `wyqnbxvxvjuowcfellkyunkyvtvqkqmb` int DEFAULT NULL,\n `audqofwcdyxlxsrrzfmkngwxlwhfekvv` int DEFAULT NULL,\n `ibasukhfiyttmezailfigekaodhnfzeg` int DEFAULT NULL,\n `bffckrywrsgnqfaqutleahvbpixnjlbq` int DEFAULT NULL,\n `bzqusxnnodiiizypudkoeeivwgximpdl` int DEFAULT NULL,\n `ibwxmwlruwftoxhsjwtuwkkwulnfichq` int DEFAULT NULL,\n `vddvyxpzitgjopvimndwgvcwbfparkjw` int DEFAULT NULL,\n `eunrhwojkdpelzdgrnivpiohcdmluqpk` int DEFAULT NULL,\n `ohvreawyktgaqpmcgaxhutcuxmjdrbhf` int DEFAULT NULL,\n `cfhrxrsflghizlwgtwlswrnzgcdhrhtv` int DEFAULT NULL,\n `eoaaxtrctanvvmyfnbgobkebjzdeabkh` int DEFAULT NULL,\n `rhfckujwlscxpcsingpkoxymagntvtij` int DEFAULT NULL,\n `amvkarhemfihchrkjhwxtoeljnkvjnkr` int DEFAULT NULL,\n `hgjwjgjlgiylgcvwubiajzdbvwbcryld` int DEFAULT NULL,\n `lyegxpxxzfvlliqqfvgqxtbewkwscwdk` int DEFAULT NULL,\n `hxtlpsnavxkwnmvdayeimqwzjolorrjy` int DEFAULT NULL,\n `gapcppfoxviliruvesufpeaojunnouci` int DEFAULT NULL,\n `wmlhaenumdtwsivgsvgmywtbprkhzffp` int DEFAULT NULL,\n `xqiwcfvtnsjgouhjxosnhibaomdjlzpk` int DEFAULT NULL,\n `hhwmacdxsmhadzxrdkkyljqylmgxrusz` int DEFAULT NULL,\n `phbuzboslmsljoyfzzkcxhyzpixrwxss` int DEFAULT NULL,\n `tthowighkuafsuccbfhpzzyzqcutjscg` int DEFAULT NULL,\n `ullzukrzgqvluzxoywyqarhgwibbuzdj` int DEFAULT NULL,\n `gnxnglknsrppmolxwgwfnyjqkpkvnspg` int DEFAULT NULL,\n `fcmppxyaaltmtsafhwizekarlljqtexu` int DEFAULT NULL,\n `rkwuftfrookssxqesjtzkkeruaseidvq` int DEFAULT NULL,\n `lnyafipfrhrkybczcqbgkfsrobrukqht` int DEFAULT NULL,\n `bpmackcsvsocmntbllthqkmqpvuovgbp` int DEFAULT NULL,\n `vmxarpdaqtlwtqbvdrtoojzdxogazlem` int DEFAULT NULL,\n `stjqfyrihudtpjwzfwoomhnqhujrjubh` int DEFAULT NULL,\n `zcegsnlnxtcizuxxyohssxavndnzzgkw` int DEFAULT NULL,\n `hvzsrqkpwjatikyiffezgzqsspfgdxfw` int DEFAULT NULL,\n `tgluyhhhlphlzyhmtkmtgpdtxnsuktne` int DEFAULT NULL,\n `uymmheeevemfdztvwvdmcpwvbprmijka` int DEFAULT NULL,\n `pvokwqjcoqvkghkcnboqdgmosfvlkzya` int DEFAULT NULL,\n `ckacdpvkjdmczwlwxaizityxqkuiwbza` int DEFAULT NULL,\n `sapaypvwowzigbhkqncbyuwsbpaxnjsp` int DEFAULT NULL,\n `gewvcrvgzhemwopyesooddtwtvjonabd` int DEFAULT NULL,\n `noepxkhjmdkywpejdjiwocicyobvzmmt` int DEFAULT NULL,\n `ucsetvnkwtmybazkykvaektjbhdcnfsr` int DEFAULT NULL,\n `iltnsbfvmurlbvplswilgbmkzbqvhxay` int DEFAULT NULL,\n `esntyrfiarcxovylvzztraklhumxjxgn` int DEFAULT NULL,\n `gvrxrebgapejhjchhunnzdlvfwkejvmg` int DEFAULT NULL,\n `evfubzqusfvwnawjhapsztvakkxfatwh` int DEFAULT NULL,\n `ncebgayhaxnyouyihmipijytdtotvras` int DEFAULT NULL,\n `xnzwutzmfalldkseujxjtdpygqeqycce` int DEFAULT NULL,\n `dzqqsfgtknyarlnoiisdosgmcbldvpng` int DEFAULT NULL,\n `yyvzodgyqwtbxuvwistwtrsuksjzeccj` int DEFAULT NULL,\n `vxxoiveblkrelrwezqxotsisaziemsqm` int DEFAULT NULL,\n `opwqbpspiwdjgsamndfqhqpzatarwuty` int DEFAULT NULL,\n `rpjekraoazsdsxeotkfuvnhmvofvufaj` int DEFAULT NULL,\n `qnavykbwejpjwfwosxbavqqhpvvwxjsm` int DEFAULT NULL,\n `smucwtmbxfxfbsblxcffurmbmpbtgbqw` int DEFAULT NULL,\n `ynjviteceykmyfobjschpeorwnqlemxb` int DEFAULT NULL,\n `zcsqddxrrlycvbzqmbhpwqltuogbkzfl` int DEFAULT NULL,\n `rpqcihadlkddoqmebflloactcxzibaym` int DEFAULT NULL,\n `hvavdlpzcemgieibmnpvsaxfowowredy` int DEFAULT NULL,\n `wbzsmfrkbbqgnodlgytlknuepfgmtxfm` int DEFAULT NULL,\n PRIMARY KEY (`tywhaxyehyyjvkzpxzbknapwvpuqntxb`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"cxgskvumnqmwipfupfwozqwmfnftsxvs\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["tywhaxyehyyjvkzpxzbknapwvpuqntxb"],"columns":[{"name":"tywhaxyehyyjvkzpxzbknapwvpuqntxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"bllqhjtcrdsortiqzanaorhggjdarlky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkiecnanarghhsmujtcvrjmckcjrjewg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvwxwfcxetaaetypjimieszepnhfpahw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zawjppjkbziqbijjgfgtabxhiywquovj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikhqnheoifjjllbzvejhtwqpkxnxjzej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqnuzjkbytwzvxzwapaqloghfobgvsvv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"touwdxrfcgpafmncsuynzzchgnjrhfum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ymvtyfvockhhhanaxmllpjxrbpvvbexh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjfagmpswdxnuxhgxcxfzwfclqvjtbdn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbeldklhewbbrzwmknrkjvsiodxrptbc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afgcglwrlffxfqbdvixaimswqeomoaym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohitkaacmuorixnvifofgjnlbagmdhpt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxpwcycwjixlybnxgwmacvoalpimruoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jrtrvgsvmblmcqrygqtnwvselmjzvoiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmuuphrebtsrpsjwltlyuvtipgzqridr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzkwexzbdpfflwhezzeefjkmtqifaaba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xzepwiqbykdsodhbkmzebzziywwdhzxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dzdnjscxhiqmdqybkudwlxbjyztidcpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bacnxjfyedyyrkhmmdexgidjispshatw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dphyraiomzyusnjeigumkhgmrvcktchh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mfejxjefvrmwptyzsraacrwpvvxfbfri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iyzxezkmdxuydbnmfrkbwmmawkjichsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikndojxwvkiwzywrqfpwpuldhrvcjuso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbxmjxhxwtsaczqugfftlfrxppynjqnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gbeehjgoacegtgqmrhbsfriwtuichhjc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uttbxbwcnodwrcxrzyiisfwoyjgkusoc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjgdvucpctysovmwpklrcbapvdvuldjp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sljmmojgpdbpziqmuylvzlfnrrfpvcll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcgwgreohtnkykixpismnctdhpkcqrxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wubqigryudrjiulvecphouyerhrpgasv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwslfzxlbrbokxcknoecsziqyuzknoqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"odvizirpugvfmlcuflvlnuyzxdrsunax","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"woifirbhmfaksnlgbwdbfcxkfqrntdzp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bgnanaznanfacfzoxmrfcpwanusalcqe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqvicdlazmynrycgineevbmtomqtacfa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dnvoqfoolhvvfobaztcvzizlrbcroksw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjpldujeguxxbtvhsxkocdsfshiaagda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oxsqxksfbcsbwpgqmuyndkkaylavklmn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnloafibjyqazhfgvjcqciqgexkevmkl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"glkjzuggafnavcyzhpnkcguwpgjahbmj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbwciaapjyejlnqaexiqmywfimtqrsrf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wyqnbxvxvjuowcfellkyunkyvtvqkqmb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"audqofwcdyxlxsrrzfmkngwxlwhfekvv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibasukhfiyttmezailfigekaodhnfzeg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bffckrywrsgnqfaqutleahvbpixnjlbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bzqusxnnodiiizypudkoeeivwgximpdl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibwxmwlruwftoxhsjwtuwkkwulnfichq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vddvyxpzitgjopvimndwgvcwbfparkjw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eunrhwojkdpelzdgrnivpiohcdmluqpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohvreawyktgaqpmcgaxhutcuxmjdrbhf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfhrxrsflghizlwgtwlswrnzgcdhrhtv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eoaaxtrctanvvmyfnbgobkebjzdeabkh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhfckujwlscxpcsingpkoxymagntvtij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"amvkarhemfihchrkjhwxtoeljnkvjnkr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hgjwjgjlgiylgcvwubiajzdbvwbcryld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lyegxpxxzfvlliqqfvgqxtbewkwscwdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hxtlpsnavxkwnmvdayeimqwzjolorrjy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gapcppfoxviliruvesufpeaojunnouci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmlhaenumdtwsivgsvgmywtbprkhzffp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqiwcfvtnsjgouhjxosnhibaomdjlzpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhwmacdxsmhadzxrdkkyljqylmgxrusz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phbuzboslmsljoyfzzkcxhyzpixrwxss","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tthowighkuafsuccbfhpzzyzqcutjscg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ullzukrzgqvluzxoywyqarhgwibbuzdj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnxnglknsrppmolxwgwfnyjqkpkvnspg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcmppxyaaltmtsafhwizekarlljqtexu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkwuftfrookssxqesjtzkkeruaseidvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lnyafipfrhrkybczcqbgkfsrobrukqht","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bpmackcsvsocmntbllthqkmqpvuovgbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vmxarpdaqtlwtqbvdrtoojzdxogazlem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"stjqfyrihudtpjwzfwoomhnqhujrjubh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zcegsnlnxtcizuxxyohssxavndnzzgkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hvzsrqkpwjatikyiffezgzqsspfgdxfw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tgluyhhhlphlzyhmtkmtgpdtxnsuktne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uymmheeevemfdztvwvdmcpwvbprmijka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pvokwqjcoqvkghkcnboqdgmosfvlkzya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ckacdpvkjdmczwlwxaizityxqkuiwbza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sapaypvwowzigbhkqncbyuwsbpaxnjsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gewvcrvgzhemwopyesooddtwtvjonabd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"noepxkhjmdkywpejdjiwocicyobvzmmt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ucsetvnkwtmybazkykvaektjbhdcnfsr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iltnsbfvmurlbvplswilgbmkzbqvhxay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"esntyrfiarcxovylvzztraklhumxjxgn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gvrxrebgapejhjchhunnzdlvfwkejvmg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evfubzqusfvwnawjhapsztvakkxfatwh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ncebgayhaxnyouyihmipijytdtotvras","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnzwutzmfalldkseujxjtdpygqeqycce","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dzqqsfgtknyarlnoiisdosgmcbldvpng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yyvzodgyqwtbxuvwistwtrsuksjzeccj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxxoiveblkrelrwezqxotsisaziemsqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opwqbpspiwdjgsamndfqhqpzatarwuty","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpjekraoazsdsxeotkfuvnhmvofvufaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qnavykbwejpjwfwosxbavqqhpvvwxjsm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smucwtmbxfxfbsblxcffurmbmpbtgbqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynjviteceykmyfobjschpeorwnqlemxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zcsqddxrrlycvbzqmbhpwqltuogbkzfl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpqcihadlkddoqmebflloactcxzibaym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hvavdlpzcemgieibmnpvsaxfowowredy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbzsmfrkbbqgnodlgytlknuepfgmtxfm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667238,"databaseName":"models_schema","ddl":"CREATE TABLE `daxdopqapywjintkxohdnessozxvwdwx` (\n `wbxbnnutzbwojhzrswrvwsirslfmgbpr` int NOT NULL,\n `duguicjxaiolwccvkqjddwfgbobgkssz` int DEFAULT NULL,\n `qxmwhtkokddtyvjtrxzumdkltoqmxfhk` int DEFAULT NULL,\n `iexxcvhmjrvotxpdmnmjlobqeurendkj` int DEFAULT NULL,\n `dsfwvvdtkfyudenprxytrdmqoevxuaux` int DEFAULT NULL,\n `mjujewpyacvdijwhfztdresgesfpcrdv` int DEFAULT NULL,\n `rckswrlfhnpemznvzcsixrryjvtzjohn` int DEFAULT NULL,\n `liamtsfpmyxttbasrxvecquhrgphfapb` int DEFAULT NULL,\n `gtmqhiizuhjdqleuepmrmummlukzdjlv` int DEFAULT NULL,\n `oahaojnfmrjwhlltyaekmaewbvyxledc` int DEFAULT NULL,\n `yijmxeambyzluxarnysumzngnjhdxncc` int DEFAULT NULL,\n `cmnsceqsqrxdlbmulyljwffvbspsnxmj` int DEFAULT NULL,\n `ogcgeotyczgvjqtqgmqjsesdtduigxtq` int DEFAULT NULL,\n `tojkjzzcmkmxkrfcngmbxmxpxunhmlxl` int DEFAULT NULL,\n `rkabpkklqfswzslldwqwyyndgufvfmhr` int DEFAULT NULL,\n `zskyubolrpvnemyruzaqxpvdcarhjcbf` int DEFAULT NULL,\n `vtbdelgtcxynpoawgxppwqomfhdaonbq` int DEFAULT NULL,\n `drbphzcwvodjjccxdfmsyzhtpblqctzd` int DEFAULT NULL,\n `flkzdevsafvrsxgabfunfjeeobwdnzve` int DEFAULT NULL,\n `ykywzycqzorvvhmmwpyqdvdabuwxjqjp` int DEFAULT NULL,\n `shymcecauzpshreclaifdljgrxbgqqfw` int DEFAULT NULL,\n `aggyoibxbhvbzucnjiuoawxbiongehok` int DEFAULT NULL,\n `dbaxfyydzbryipqyeevrjbmgmtrwhffv` int DEFAULT NULL,\n `bnhswsownloikjgvbuwqvypovbwlaqks` int DEFAULT NULL,\n `murjilclvnheyzguepcvqmugaziitiab` int DEFAULT NULL,\n `sikdnenplmdrubpcigcwtkpovyphgvlw` int DEFAULT NULL,\n `qmwffnepgiymyfgzvamgqoovbzwpqfnm` int DEFAULT NULL,\n `dbecamcpxxgsovvxtwfueptukgkxfemc` int DEFAULT NULL,\n `cdpztoaqwukuvhbzkcdpgpsmovncprct` int DEFAULT NULL,\n `cpexjnlcmpjnhmbxvgggsywcrequqnlo` int DEFAULT NULL,\n `kweizkvoxgzjvljuxmgrqiafqysgfuzb` int DEFAULT NULL,\n `htzyjehypahoysiycqevejcfidfrupkx` int DEFAULT NULL,\n `aconotyeugqiyfrbbbnffjrkveawrvhn` int DEFAULT NULL,\n `scxuyknbzdhxffydulzcqvtqqpkyzokh` int DEFAULT NULL,\n `saohonjtflqlvhyioeekqdyztcmiesqj` int DEFAULT NULL,\n `xuekxdxosbkwzvvztqetbgjcqnflpqzm` int DEFAULT NULL,\n `rxcdmjzhnrmcrofemxjjonxefdxepgby` int DEFAULT NULL,\n `bdlaswujteyxfpebefuphdtggqvqojmp` int DEFAULT NULL,\n `zcqzchborzenrcmyoxsazpsfyydsdulk` int DEFAULT NULL,\n `dchwuxmfalzxmhexpszmlotifsgshemh` int DEFAULT NULL,\n `vtkcunazhjlajipqlirmlhiqwdjfaxam` int DEFAULT NULL,\n `opwsqocdfnayyttchovpmepxpagboenz` int DEFAULT NULL,\n `gtgxlkyshmmveydkjvqywwdkgrmlzayn` int DEFAULT NULL,\n `tjzurqmsbrorwujlbxotpmoabdrwmvhn` int DEFAULT NULL,\n `jyvoqkookxihgxxcvuefpqtpzskfnzan` int DEFAULT NULL,\n `vpguvevphhmmyriwcvxthmjnuenfxpnt` int DEFAULT NULL,\n `noijosesvikjvbnhlrzqmcbtiuzcsoph` int DEFAULT NULL,\n `urldylkzszbtpvyedpxyfbuflcgnkfuk` int DEFAULT NULL,\n `tjapjmgxyliwilottvtjodzbtjbpyhpe` int DEFAULT NULL,\n `bbcfgbxrwesqffweavndovnetuwigoqb` int DEFAULT NULL,\n `ivyqddxcxhidoljyuvvjjmkpmbzlujny` int DEFAULT NULL,\n `cfglmydruflmrnwsgexbldmesfbjuafi` int DEFAULT NULL,\n `ioxvdwlvcrnjocbpkunchhssdvpmogff` int DEFAULT NULL,\n `vsdihykvvsfgcwgvchzyrsintqpbwuft` int DEFAULT NULL,\n `fpsydsznapwalazmmdtlgiauslrfhumc` int DEFAULT NULL,\n `zujrecwdibcbvajpoqfnduehqfhtybpz` int DEFAULT NULL,\n `yftltogzweheuivvxuwdxzljvfgyjmxs` int DEFAULT NULL,\n `glgllexllsmlqiumkahnhuxuncfrxyix` int DEFAULT NULL,\n `gygnranrgrklmpommcncamqteaferuvg` int DEFAULT NULL,\n `yvdlrlxfuwdoxvuiqhkpirjjawxdsjrw` int DEFAULT NULL,\n `jaeopcqopjgwjszmfunzyhzksaaozyji` int DEFAULT NULL,\n `ackmqfqttrikhtlmlielmwzpfzhdbsmm` int DEFAULT NULL,\n `dhdvsowpjnufaifakeluaaqsifkbbsms` int DEFAULT NULL,\n `kfvrzkvwoykmlijrgnvqcmuhkmtizgvl` int DEFAULT NULL,\n `beenoaydpwyjibqokycfcladbficxbzz` int DEFAULT NULL,\n `dyxljdjglchpbhzdrcgqryqcczrgjgnm` int DEFAULT NULL,\n `oevkccmgtfzidqcbxolkercdkfusuysg` int DEFAULT NULL,\n `gxcitzhsfdoufzgmqixvoyvrjxkgbxsn` int DEFAULT NULL,\n `wolcbkqiyapezvsanbpjqsmygdroedga` int DEFAULT NULL,\n `elgmjcylzebwztbofgdhxumxodogvdiw` int DEFAULT NULL,\n `ykgqwsvgajfgnlpvstvycocjzpeitnow` int DEFAULT NULL,\n `nshypdsyzqeznogpcnaijxrsieenwpjz` int DEFAULT NULL,\n `akclrywimburrmqcnwzhxosvbwvcqehy` int DEFAULT NULL,\n `ebdxwrlqzuwksctyjmsmdfrlqrvplmhm` int DEFAULT NULL,\n `hegikndfrjrodcrheuzlswmqyzrgejed` int DEFAULT NULL,\n `ddsimolfnubjdhiuqzlnfyofgkaqfocb` int DEFAULT NULL,\n `ddbkhnymiofipxcidztiyanacbspsvjs` int DEFAULT NULL,\n `hzayctbwszrsrxyjacvdiwbiwsvqkqfu` int DEFAULT NULL,\n `usefjnykrlmjcdzfdplueojczdinyfif` int DEFAULT NULL,\n `xwpcfkjozrzmfgyxdhbezofrwhozowqm` int DEFAULT NULL,\n `lrtfvcicufqfngymwvnzhqkyuybtwfcu` int DEFAULT NULL,\n `dzupxugqeghjjoajzvnwbwhgvlsmdmrj` int DEFAULT NULL,\n `ocvmwhdikyjydhcspbhpzflgwnygblcn` int DEFAULT NULL,\n `baizhqfynmmmriunbmvbrmdpkkpfohkw` int DEFAULT NULL,\n `zsjquhanjrulkwojoodeaxvfdkvxukdg` int DEFAULT NULL,\n `zyeqdhwjjuleyjxhjipbzfzexibuxhza` int DEFAULT NULL,\n `mgduutsuwzgvdhnxnhejmvtarvseibin` int DEFAULT NULL,\n `pvpipiikwiuswxwcfdoowlweqebxwhti` int DEFAULT NULL,\n `xedfalibwxjlgpfawfxojwbzronzrifc` int DEFAULT NULL,\n `rnrdaybdgjdybdyohoddumqrzwuajpew` int DEFAULT NULL,\n `johpgytizhcmjnuibrkmptgcgupqmvwn` int DEFAULT NULL,\n `tfabunvvpqlwqspunvdqxwfktvomgcbe` int DEFAULT NULL,\n `hhqzuugcmqtuliukhmmueajkjyldxdsj` int DEFAULT NULL,\n `abwvghrjeinghdoowlfxuhnfevxeapag` int DEFAULT NULL,\n `sddswfgcpdxxytjmfydalqydrkorzwjx` int DEFAULT NULL,\n `mpecmkzteffxjkyajmlrnaxwiysmsgom` int DEFAULT NULL,\n `dreazecmwdxvgaflpxkadtmqsmaxtcdh` int DEFAULT NULL,\n `mddjxvnnxnxfckuiznvvrqnjbuphojef` int DEFAULT NULL,\n `peisowpjaobipxegoqdwhfgkcbukejdk` int DEFAULT NULL,\n `wmxvbzijlusfpdjhfwxmgvzfgqzpdozz` int DEFAULT NULL,\n PRIMARY KEY (`wbxbnnutzbwojhzrswrvwsirslfmgbpr`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"daxdopqapywjintkxohdnessozxvwdwx\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["wbxbnnutzbwojhzrswrvwsirslfmgbpr"],"columns":[{"name":"wbxbnnutzbwojhzrswrvwsirslfmgbpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"duguicjxaiolwccvkqjddwfgbobgkssz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxmwhtkokddtyvjtrxzumdkltoqmxfhk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iexxcvhmjrvotxpdmnmjlobqeurendkj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dsfwvvdtkfyudenprxytrdmqoevxuaux","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjujewpyacvdijwhfztdresgesfpcrdv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rckswrlfhnpemznvzcsixrryjvtzjohn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"liamtsfpmyxttbasrxvecquhrgphfapb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtmqhiizuhjdqleuepmrmummlukzdjlv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oahaojnfmrjwhlltyaekmaewbvyxledc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yijmxeambyzluxarnysumzngnjhdxncc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmnsceqsqrxdlbmulyljwffvbspsnxmj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ogcgeotyczgvjqtqgmqjsesdtduigxtq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tojkjzzcmkmxkrfcngmbxmxpxunhmlxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkabpkklqfswzslldwqwyyndgufvfmhr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zskyubolrpvnemyruzaqxpvdcarhjcbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtbdelgtcxynpoawgxppwqomfhdaonbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drbphzcwvodjjccxdfmsyzhtpblqctzd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flkzdevsafvrsxgabfunfjeeobwdnzve","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykywzycqzorvvhmmwpyqdvdabuwxjqjp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shymcecauzpshreclaifdljgrxbgqqfw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aggyoibxbhvbzucnjiuoawxbiongehok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbaxfyydzbryipqyeevrjbmgmtrwhffv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnhswsownloikjgvbuwqvypovbwlaqks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"murjilclvnheyzguepcvqmugaziitiab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sikdnenplmdrubpcigcwtkpovyphgvlw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmwffnepgiymyfgzvamgqoovbzwpqfnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbecamcpxxgsovvxtwfueptukgkxfemc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cdpztoaqwukuvhbzkcdpgpsmovncprct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cpexjnlcmpjnhmbxvgggsywcrequqnlo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kweizkvoxgzjvljuxmgrqiafqysgfuzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"htzyjehypahoysiycqevejcfidfrupkx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aconotyeugqiyfrbbbnffjrkveawrvhn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"scxuyknbzdhxffydulzcqvtqqpkyzokh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"saohonjtflqlvhyioeekqdyztcmiesqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xuekxdxosbkwzvvztqetbgjcqnflpqzm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxcdmjzhnrmcrofemxjjonxefdxepgby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bdlaswujteyxfpebefuphdtggqvqojmp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zcqzchborzenrcmyoxsazpsfyydsdulk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dchwuxmfalzxmhexpszmlotifsgshemh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtkcunazhjlajipqlirmlhiqwdjfaxam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opwsqocdfnayyttchovpmepxpagboenz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtgxlkyshmmveydkjvqywwdkgrmlzayn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjzurqmsbrorwujlbxotpmoabdrwmvhn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jyvoqkookxihgxxcvuefpqtpzskfnzan","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpguvevphhmmyriwcvxthmjnuenfxpnt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"noijosesvikjvbnhlrzqmcbtiuzcsoph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urldylkzszbtpvyedpxyfbuflcgnkfuk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjapjmgxyliwilottvtjodzbtjbpyhpe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbcfgbxrwesqffweavndovnetuwigoqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivyqddxcxhidoljyuvvjjmkpmbzlujny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfglmydruflmrnwsgexbldmesfbjuafi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ioxvdwlvcrnjocbpkunchhssdvpmogff","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsdihykvvsfgcwgvchzyrsintqpbwuft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpsydsznapwalazmmdtlgiauslrfhumc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zujrecwdibcbvajpoqfnduehqfhtybpz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yftltogzweheuivvxuwdxzljvfgyjmxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"glgllexllsmlqiumkahnhuxuncfrxyix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gygnranrgrklmpommcncamqteaferuvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yvdlrlxfuwdoxvuiqhkpirjjawxdsjrw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jaeopcqopjgwjszmfunzyhzksaaozyji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ackmqfqttrikhtlmlielmwzpfzhdbsmm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhdvsowpjnufaifakeluaaqsifkbbsms","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfvrzkvwoykmlijrgnvqcmuhkmtizgvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"beenoaydpwyjibqokycfcladbficxbzz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dyxljdjglchpbhzdrcgqryqcczrgjgnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oevkccmgtfzidqcbxolkercdkfusuysg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gxcitzhsfdoufzgmqixvoyvrjxkgbxsn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wolcbkqiyapezvsanbpjqsmygdroedga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"elgmjcylzebwztbofgdhxumxodogvdiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykgqwsvgajfgnlpvstvycocjzpeitnow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nshypdsyzqeznogpcnaijxrsieenwpjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akclrywimburrmqcnwzhxosvbwvcqehy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebdxwrlqzuwksctyjmsmdfrlqrvplmhm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hegikndfrjrodcrheuzlswmqyzrgejed","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ddsimolfnubjdhiuqzlnfyofgkaqfocb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ddbkhnymiofipxcidztiyanacbspsvjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hzayctbwszrsrxyjacvdiwbiwsvqkqfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"usefjnykrlmjcdzfdplueojczdinyfif","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xwpcfkjozrzmfgyxdhbezofrwhozowqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lrtfvcicufqfngymwvnzhqkyuybtwfcu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dzupxugqeghjjoajzvnwbwhgvlsmdmrj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocvmwhdikyjydhcspbhpzflgwnygblcn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"baizhqfynmmmriunbmvbrmdpkkpfohkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zsjquhanjrulkwojoodeaxvfdkvxukdg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zyeqdhwjjuleyjxhjipbzfzexibuxhza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mgduutsuwzgvdhnxnhejmvtarvseibin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pvpipiikwiuswxwcfdoowlweqebxwhti","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xedfalibwxjlgpfawfxojwbzronzrifc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnrdaybdgjdybdyohoddumqrzwuajpew","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"johpgytizhcmjnuibrkmptgcgupqmvwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tfabunvvpqlwqspunvdqxwfktvomgcbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhqzuugcmqtuliukhmmueajkjyldxdsj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"abwvghrjeinghdoowlfxuhnfevxeapag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sddswfgcpdxxytjmfydalqydrkorzwjx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpecmkzteffxjkyajmlrnaxwiysmsgom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dreazecmwdxvgaflpxkadtmqsmaxtcdh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mddjxvnnxnxfckuiznvvrqnjbuphojef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"peisowpjaobipxegoqdwhfgkcbukejdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmxvbzijlusfpdjhfwxmgvzfgqzpdozz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667279,"databaseName":"models_schema","ddl":"CREATE TABLE `ddbewigwzztguunwgdgxqetfoxdxqaht` (\n `bkraghqrgjspyumddhdaqcgjzthapdwb` int NOT NULL,\n `mjapylmfuzwjxelpvchgahvcecuaekvr` int DEFAULT NULL,\n `vfdcldfalowkvawwongkbmvcullzofll` int DEFAULT NULL,\n `hbbfxlvhsrbalztwggsdaborvxqeqajc` int DEFAULT NULL,\n `xfahxfkljukxeksnfarerkvseqcitwdc` int DEFAULT NULL,\n `yvpoeqwdzfocfqqyflfbbnoerveezkpf` int DEFAULT NULL,\n `rqmqgtbwogicnoaobswmwiknsqyhsiid` int DEFAULT NULL,\n `uqchtflawgdajxtfssswqarsfpmuuhuq` int DEFAULT NULL,\n `nwyrxrvdxglfapgdigvadndbauxaxckg` int DEFAULT NULL,\n `dktwktxpuvcjqwklmkbzlfudwdsizzfk` int DEFAULT NULL,\n `pnxjbebmcluohwkvdgxrduwegbnsjium` int DEFAULT NULL,\n `ghemgoxstkojfribbatlmqdstjtdrkjg` int DEFAULT NULL,\n `aqhalyrukslyisqjrpvixnlbosaoqhuj` int DEFAULT NULL,\n `xdhlzgeyfkbgxbaxgjqhzvwshcqtbnub` int DEFAULT NULL,\n `afvmrsjfhpqipgnsejsjgpnqsklbmxlx` int DEFAULT NULL,\n `llmncygpzjyzznjzdewhvmeywnadxdok` int DEFAULT NULL,\n `xdpncjactbplwsmgxnxhpkufozzmxnef` int DEFAULT NULL,\n `xidwikdjaewpivorbyqqcglnzhorjmlj` int DEFAULT NULL,\n `xvokotrehlnsuccoanjwgnlqnqczzcbt` int DEFAULT NULL,\n `bemgniitogepwnihxoqooazmjfsqzcrh` int DEFAULT NULL,\n `wpyatcaapurvwflivmvvylrfzeqecbyz` int DEFAULT NULL,\n `hrhsvyaqppxoyokbrfhbnkvlqlzmmabm` int DEFAULT NULL,\n `oswdbpwplfzxhikprzaldgttymscyqdu` int DEFAULT NULL,\n `fwfvbgpdgpfrtxcjtqjqkdwwdrtszlaa` int DEFAULT NULL,\n `vwhbofjzejqydvwdlzjelxsnqtzdbeoh` int DEFAULT NULL,\n `bavliutbzkevcvbtoltlloopdyzpipxg` int DEFAULT NULL,\n `ipulwhnjriohdjgjvzflypcjpewxgxcw` int DEFAULT NULL,\n `krvonutmlmhgkaihtokcltrsxxlejuec` int DEFAULT NULL,\n `stfgdfvgwzguypvgkbzueymmhtlksyhn` int DEFAULT NULL,\n `llxejqrpsceksjzbmcjsozyjpaelqnrm` int DEFAULT NULL,\n `bczecoxwbugawwpybtnxxtntorczwkou` int DEFAULT NULL,\n `rvcxmiuloqqnbcimlapvjolrrrtvqjoz` int DEFAULT NULL,\n `ijuruwfbbhoupmohkowgkuqmhpjlcslf` int DEFAULT NULL,\n `ujlqwshkzvsiwhyvlfeklvbrkjoqtfwl` int DEFAULT NULL,\n `xeropvhnnaxoqoiiwdclczgredchendi` int DEFAULT NULL,\n `tciyndzmzjlzeagezpywejtmdpxnquyg` int DEFAULT NULL,\n `eyzynoiyokhfhbstfbudlfyipkiuftex` int DEFAULT NULL,\n `pcbjycngqowszjrkitndsgkclzyvcqva` int DEFAULT NULL,\n `nmkrdxyrxiknycvjlqnmnhiuzmzrxlcq` int DEFAULT NULL,\n `ohhvimftrhnnkcgfvmglytrtlxhvbvel` int DEFAULT NULL,\n `ybrjcbcnrjstxfmybkhmveiejhnwcvwq` int DEFAULT NULL,\n `tbluspgclxtcdlvrrplvuyqplcsrooph` int DEFAULT NULL,\n `yabxrehzytsvegjnmasvpbutkwtlxaxt` int DEFAULT NULL,\n `yfhnmwjfvqjjemfnjzqydfyvjtzcgzcx` int DEFAULT NULL,\n `mxvqvvuhtaoixmcltcueaklfiysekimn` int DEFAULT NULL,\n `cfvyynnvusymceqztmqqnmkckgjvmznt` int DEFAULT NULL,\n `kirvlpfxrwtsygenrbkvsrsmzosbfyea` int DEFAULT NULL,\n `ppuysozbxctjnyjxpmgixjuskyxbivgu` int DEFAULT NULL,\n `eyeptjkstakxuxcaqddzxykwyibnugxl` int DEFAULT NULL,\n `agjcprmyutdberqfzuxjknmgwcumtelg` int DEFAULT NULL,\n `xsebghvxqyvphouezjewdteryghtlnyl` int DEFAULT NULL,\n `pifctovahyefwvdipfzhlacwkfkoczbf` int DEFAULT NULL,\n `hdybmzwlgutxughncdtkzdenhzpiypso` int DEFAULT NULL,\n `dvcfmxpwsefdyenucozpetryirwwpgut` int DEFAULT NULL,\n `padiratkspybpautxdkthtwcxldrntyd` int DEFAULT NULL,\n `oyszuuxqnfrtgzvpmaybdimcsrngzyxd` int DEFAULT NULL,\n `gagampmuyjtjgajyfseecfxwdxxlcime` int DEFAULT NULL,\n `hfcsocrlbqvdeidcibyfjogerylbwpnr` int DEFAULT NULL,\n `smvdeusvtljsrhfzuonkuzthnfqppwkl` int DEFAULT NULL,\n `opdodgrgmbdattmppsmjqvpfbnttihhq` int DEFAULT NULL,\n `yxwjzmfeahfeyvwlknfvsspqezdykili` int DEFAULT NULL,\n `xzixuydbtorhfozipipjejqnwlxulrsk` int DEFAULT NULL,\n `eqizainswxaswextntotykktmbuvrwhz` int DEFAULT NULL,\n `bthubalycpribzrilwltgmiotbkenrbu` int DEFAULT NULL,\n `fobwzcaxiyjltfrpbzympbaivqrzsqxh` int DEFAULT NULL,\n `zqiosdduqwzuvwczfbxpqpbmkdmysiwv` int DEFAULT NULL,\n `pyxixsrbzvupjcwodidsppsvexqrsewp` int DEFAULT NULL,\n `xilmebqkimsjoihxgyqirzuiclzktobe` int DEFAULT NULL,\n `wmqkvtcdrxpkftoymkwsoicjxzgbwlaa` int DEFAULT NULL,\n `xqebbqpwrvookxolryrujlxobycqdmrh` int DEFAULT NULL,\n `bdlioqiyrzqqvihzxpcsjseomebhmpfr` int DEFAULT NULL,\n `uprgyzijllnevynbbzurqajwhcowtbhc` int DEFAULT NULL,\n `jjgvonghjyprzuetsgallivrgefgjzvt` int DEFAULT NULL,\n `djimajnqmcegrgmowcbtfbbtbpwdjqnf` int DEFAULT NULL,\n `ccgcsurlwhsvaxcgowuspbjtokzddflv` int DEFAULT NULL,\n `wnfycwrzcfbdvjwzpukuxninkbcisoyq` int DEFAULT NULL,\n `ieidvvjxmskqkuehmnlbjsnbgrkhhpjd` int DEFAULT NULL,\n `clgziijipautlviratekpwbaytxgfjdy` int DEFAULT NULL,\n `vjfxcwomxfxtiwyknjnocasvmsecvhhw` int DEFAULT NULL,\n `yhshfvjlrbwnmhyzpxyfmppefssidntf` int DEFAULT NULL,\n `urjettqwpkgbghghbaeydcvpiizvltwe` int DEFAULT NULL,\n `vxjbuktobdcxfgmyryrhczdegqfaigin` int DEFAULT NULL,\n `ighrliecllwdxtaelozfutunqwmoniys` int DEFAULT NULL,\n `vhcmfcmvozqefshzpbztukkgozziirzg` int DEFAULT NULL,\n `msesmpbotceiqsptwxehzmrhulkhaapv` int DEFAULT NULL,\n `jcnlbcyzoaoqwnslemceaoqrhvmdfjbo` int DEFAULT NULL,\n `sppgrfpjykulfqrysnidrnyemcntqbzq` int DEFAULT NULL,\n `fbjzodxtsnyfpjmdzvldllowyypzupxo` int DEFAULT NULL,\n `hfaonokmexjgcqukaijtnsflgmnvnngc` int DEFAULT NULL,\n `enzfrczgiznechjnxmjybsadqxkklzlg` int DEFAULT NULL,\n `vluznxsqtnpjbbgzsepyzcrcqghzdfxv` int DEFAULT NULL,\n `hilwmenncvpdmvjoewusjrxzfbwsmbft` int DEFAULT NULL,\n `hlmfhhqzdijfqpakgifyaoykykozwdbe` int DEFAULT NULL,\n `zhascvrajhsjegqpojvzaymtrnoouktk` int DEFAULT NULL,\n `xthukrktvvezcbhzrjqhuhklfovajgop` int DEFAULT NULL,\n `ksxrjpjntekpqyjhjbctccamduxbshsi` int DEFAULT NULL,\n `cdigewnlvwxoraznmgmdsiixgktruoca` int DEFAULT NULL,\n `kretwmznsjeovzsqeyxailfidqeerwef` int DEFAULT NULL,\n `ivxaucuxgwrbbnormdhpvweqbsomdzaj` int DEFAULT NULL,\n `cqptbmkbgdkqaaizyfdgsfdzhjskjcrg` int DEFAULT NULL,\n PRIMARY KEY (`bkraghqrgjspyumddhdaqcgjzthapdwb`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"ddbewigwzztguunwgdgxqetfoxdxqaht\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["bkraghqrgjspyumddhdaqcgjzthapdwb"],"columns":[{"name":"bkraghqrgjspyumddhdaqcgjzthapdwb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"mjapylmfuzwjxelpvchgahvcecuaekvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vfdcldfalowkvawwongkbmvcullzofll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbbfxlvhsrbalztwggsdaborvxqeqajc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xfahxfkljukxeksnfarerkvseqcitwdc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yvpoeqwdzfocfqqyflfbbnoerveezkpf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqmqgtbwogicnoaobswmwiknsqyhsiid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqchtflawgdajxtfssswqarsfpmuuhuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nwyrxrvdxglfapgdigvadndbauxaxckg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dktwktxpuvcjqwklmkbzlfudwdsizzfk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnxjbebmcluohwkvdgxrduwegbnsjium","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghemgoxstkojfribbatlmqdstjtdrkjg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqhalyrukslyisqjrpvixnlbosaoqhuj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdhlzgeyfkbgxbaxgjqhzvwshcqtbnub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afvmrsjfhpqipgnsejsjgpnqsklbmxlx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llmncygpzjyzznjzdewhvmeywnadxdok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdpncjactbplwsmgxnxhpkufozzmxnef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xidwikdjaewpivorbyqqcglnzhorjmlj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvokotrehlnsuccoanjwgnlqnqczzcbt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bemgniitogepwnihxoqooazmjfsqzcrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wpyatcaapurvwflivmvvylrfzeqecbyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hrhsvyaqppxoyokbrfhbnkvlqlzmmabm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oswdbpwplfzxhikprzaldgttymscyqdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwfvbgpdgpfrtxcjtqjqkdwwdrtszlaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vwhbofjzejqydvwdlzjelxsnqtzdbeoh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bavliutbzkevcvbtoltlloopdyzpipxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ipulwhnjriohdjgjvzflypcjpewxgxcw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"krvonutmlmhgkaihtokcltrsxxlejuec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"stfgdfvgwzguypvgkbzueymmhtlksyhn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llxejqrpsceksjzbmcjsozyjpaelqnrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bczecoxwbugawwpybtnxxtntorczwkou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rvcxmiuloqqnbcimlapvjolrrrtvqjoz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijuruwfbbhoupmohkowgkuqmhpjlcslf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujlqwshkzvsiwhyvlfeklvbrkjoqtfwl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xeropvhnnaxoqoiiwdclczgredchendi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tciyndzmzjlzeagezpywejtmdpxnquyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eyzynoiyokhfhbstfbudlfyipkiuftex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pcbjycngqowszjrkitndsgkclzyvcqva","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmkrdxyrxiknycvjlqnmnhiuzmzrxlcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohhvimftrhnnkcgfvmglytrtlxhvbvel","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ybrjcbcnrjstxfmybkhmveiejhnwcvwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbluspgclxtcdlvrrplvuyqplcsrooph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yabxrehzytsvegjnmasvpbutkwtlxaxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfhnmwjfvqjjemfnjzqydfyvjtzcgzcx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mxvqvvuhtaoixmcltcueaklfiysekimn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfvyynnvusymceqztmqqnmkckgjvmznt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kirvlpfxrwtsygenrbkvsrsmzosbfyea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ppuysozbxctjnyjxpmgixjuskyxbivgu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eyeptjkstakxuxcaqddzxykwyibnugxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agjcprmyutdberqfzuxjknmgwcumtelg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsebghvxqyvphouezjewdteryghtlnyl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pifctovahyefwvdipfzhlacwkfkoczbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdybmzwlgutxughncdtkzdenhzpiypso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvcfmxpwsefdyenucozpetryirwwpgut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"padiratkspybpautxdkthtwcxldrntyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oyszuuxqnfrtgzvpmaybdimcsrngzyxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gagampmuyjtjgajyfseecfxwdxxlcime","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfcsocrlbqvdeidcibyfjogerylbwpnr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smvdeusvtljsrhfzuonkuzthnfqppwkl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opdodgrgmbdattmppsmjqvpfbnttihhq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxwjzmfeahfeyvwlknfvsspqezdykili","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xzixuydbtorhfozipipjejqnwlxulrsk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqizainswxaswextntotykktmbuvrwhz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bthubalycpribzrilwltgmiotbkenrbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fobwzcaxiyjltfrpbzympbaivqrzsqxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqiosdduqwzuvwczfbxpqpbmkdmysiwv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pyxixsrbzvupjcwodidsppsvexqrsewp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xilmebqkimsjoihxgyqirzuiclzktobe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmqkvtcdrxpkftoymkwsoicjxzgbwlaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqebbqpwrvookxolryrujlxobycqdmrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bdlioqiyrzqqvihzxpcsjseomebhmpfr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uprgyzijllnevynbbzurqajwhcowtbhc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjgvonghjyprzuetsgallivrgefgjzvt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"djimajnqmcegrgmowcbtfbbtbpwdjqnf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ccgcsurlwhsvaxcgowuspbjtokzddflv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnfycwrzcfbdvjwzpukuxninkbcisoyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ieidvvjxmskqkuehmnlbjsnbgrkhhpjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"clgziijipautlviratekpwbaytxgfjdy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjfxcwomxfxtiwyknjnocasvmsecvhhw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhshfvjlrbwnmhyzpxyfmppefssidntf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urjettqwpkgbghghbaeydcvpiizvltwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxjbuktobdcxfgmyryrhczdegqfaigin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ighrliecllwdxtaelozfutunqwmoniys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhcmfcmvozqefshzpbztukkgozziirzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"msesmpbotceiqsptwxehzmrhulkhaapv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jcnlbcyzoaoqwnslemceaoqrhvmdfjbo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sppgrfpjykulfqrysnidrnyemcntqbzq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbjzodxtsnyfpjmdzvldllowyypzupxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfaonokmexjgcqukaijtnsflgmnvnngc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"enzfrczgiznechjnxmjybsadqxkklzlg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vluznxsqtnpjbbgzsepyzcrcqghzdfxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hilwmenncvpdmvjoewusjrxzfbwsmbft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlmfhhqzdijfqpakgifyaoykykozwdbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhascvrajhsjegqpojvzaymtrnoouktk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xthukrktvvezcbhzrjqhuhklfovajgop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ksxrjpjntekpqyjhjbctccamduxbshsi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cdigewnlvwxoraznmgmdsiixgktruoca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kretwmznsjeovzsqeyxailfidqeerwef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivxaucuxgwrbbnormdhpvweqbsomdzaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqptbmkbgdkqaaizyfdgsfdzhjskjcrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667311,"databaseName":"models_schema","ddl":"CREATE TABLE `dfoaznlacthdivxcqnznziszzihljtyi` (\n `evnmhutgnenitueultneqxoinhlvhpsw` int NOT NULL,\n `srdixelquatkskdcihwpmmcefcjdxzqq` int DEFAULT NULL,\n `hcjyadlllynxsdelzjhmnbrgrtvhxtmj` int DEFAULT NULL,\n `xozzpnmqhbscafkkdfmzbdbdjuxqlbvc` int DEFAULT NULL,\n `djgcokkvzutfvlgdugszbafnbncgkwew` int DEFAULT NULL,\n `xavgjvpbekmhsoobvnbycoobgulnuxac` int DEFAULT NULL,\n `dhcgyttygwqsetkbrhqsknltbnrbyopj` int DEFAULT NULL,\n `brzmwuotbluqdcmxfvrmuhlsdpdstgag` int DEFAULT NULL,\n `fiurukbdfrgkvkqmyzbbovlfdqhdvyin` int DEFAULT NULL,\n `hgerspgmucbvgqdvljoyntqdvaybwqab` int DEFAULT NULL,\n `sowsarszgfjpzocwhjceuofpevxqvcvf` int DEFAULT NULL,\n `xoiifbivisvscchyylwirjgzshqzzehy` int DEFAULT NULL,\n `msgfmdukfjjsxqepdbsqdftqwhwcoxls` int DEFAULT NULL,\n `luokynrfldknhhunzyonjarexehgcuzs` int DEFAULT NULL,\n `yxjufvrwmfezspqtubtmmzfezqlzaazf` int DEFAULT NULL,\n `qhvguwvevhlyagkiljsxvkihzcljdbbi` int DEFAULT NULL,\n `ommnogctliyyujvsrlgziahftddwuydk` int DEFAULT NULL,\n `aqvrmnkucygtgilyjrtodcsdyskckghk` int DEFAULT NULL,\n `drtgnwwccrctvbnnulkyssitdtlgpttm` int DEFAULT NULL,\n `nzvmnyicbofpoeqqiygfuloqmyoslrce` int DEFAULT NULL,\n `niydipdhlrlwuiuuwklkoqzeznwxhryf` int DEFAULT NULL,\n `kmsholxrczhhwuqijlamkdagapbkaohk` int DEFAULT NULL,\n `vflxarkqhyslsmgaytqxnxcppbpksxgy` int DEFAULT NULL,\n `wfeedoohnkubrwadrnnkspzemkdihmvk` int DEFAULT NULL,\n `bkrmtmxnwcqpyelwuhigphrvlgxghofx` int DEFAULT NULL,\n `rgxtlziujttrtmubxcvnhzqadjybrytb` int DEFAULT NULL,\n `kofsbwqzmvflrahlikvgrzsmeyhhnwye` int DEFAULT NULL,\n `gnyuodtbwsjqkpsmukapvfkravwqyedp` int DEFAULT NULL,\n `neozaaihlykekwpzprxofwndgrxaupic` int DEFAULT NULL,\n `mbkxwiynlvzyzehltjktzunpgggqiciv` int DEFAULT NULL,\n `qjlbyptfanegomawnpkhzjsrxkjttple` int DEFAULT NULL,\n `birudzyjnojphzedqyuqonwmugpcwuvp` int DEFAULT NULL,\n `kinxarzohxjdshjsdsvuwccxcjuwugrk` int DEFAULT NULL,\n `dssdvxtbghmaboisavoijdsyeqjsrbkw` int DEFAULT NULL,\n `hjautrfbsmumsrovlkzdwgsospasqawa` int DEFAULT NULL,\n `lgypyggzxoetcgjjcyebkjgpwsymitnu` int DEFAULT NULL,\n `ztihawwcmcvlqsrthdvzxijodoicapvn` int DEFAULT NULL,\n `qwestcmgpboiedqlmuopuuudfjizxwvp` int DEFAULT NULL,\n `rhoszcyztdoigofzzqcswnpvbqfutzpk` int DEFAULT NULL,\n `pdtinknczuvavrfhfnkqjfvvmeiubwfb` int DEFAULT NULL,\n `rfnywmhqcrocpevvgnjngxsbnhcxmfuo` int DEFAULT NULL,\n `avargstzaabpyxbmnmbsjimnvcuohjxa` int DEFAULT NULL,\n `eerdtiavlprvejliuuzdzwcfymchyhza` int DEFAULT NULL,\n `khgttydzpidmvjwgwcodugppnlagisbf` int DEFAULT NULL,\n `unfvqlwhexiygmryidohdjbgvyfzvdqp` int DEFAULT NULL,\n `uxvfregvoqqjgnyftswdxqxixrripwwt` int DEFAULT NULL,\n `zrztolkfhlyxybeirhtivyjjcxlghjcj` int DEFAULT NULL,\n `kcdxznqsivdmawkgnpaurwidiwfcbkrj` int DEFAULT NULL,\n `duvkydsyvwjqoqbqbdasucyutrfgxady` int DEFAULT NULL,\n `rslrocfpkkznezkzxmyixtzvxbszarse` int DEFAULT NULL,\n `gnomdoshwwxaiebganzuaevbadgrjqkn` int DEFAULT NULL,\n `ucqtlvazmizsxcdyosnqujzfcpaqxdfc` int DEFAULT NULL,\n `yemgimtchdfkhtfksqzxjixbingithme` int DEFAULT NULL,\n `qzojkpjxkrfdhbuvlwjisszlwxfgzmmw` int DEFAULT NULL,\n `agytdmonqliyjivyxxohcclgcmkidrnv` int DEFAULT NULL,\n `lvdbzqslketzzjbnuxdetpgpbndjcjnx` int DEFAULT NULL,\n `zpuhqqnwmwbcgktlwhsbamdjibchdvev` int DEFAULT NULL,\n `uypcahjhqntmvleibomjceoxjirmftit` int DEFAULT NULL,\n `fsxaxajvqowxluqkjflzskdwmmympuwf` int DEFAULT NULL,\n `cqkitmrgtjnwnssgtuujegmzlrdtyslc` int DEFAULT NULL,\n `drbzazzkerxemnhpxpelpeeqpmefylxd` int DEFAULT NULL,\n `nrfunuukjzdearaatpdzfocjhuhsexvh` int DEFAULT NULL,\n `msmcvwbhlrnvvefikzrtneawinfpeujc` int DEFAULT NULL,\n `dgapzkqopqeqecdukjyrqbmxiideavlk` int DEFAULT NULL,\n `cgahplyyfkjofvfktghgfivkldycmoqq` int DEFAULT NULL,\n `qfueviwtwhjdunpumywgcloefwnckxnc` int DEFAULT NULL,\n `epbrhfjhjvfnkqxvttmkbizijhlwoyxn` int DEFAULT NULL,\n `zxfdznbciuutuxtwcjnamatllrpzmuzv` int DEFAULT NULL,\n `uowmbsqirjedmxufhwiaorlqqlnxeblg` int DEFAULT NULL,\n `hfuyiarpytrtleqapecogfkcwxlikaqc` int DEFAULT NULL,\n `jyqihwqcyesrxskpbxzankwcjhhrbyjd` int DEFAULT NULL,\n `pwpvzbbktyjtvyxddxldipectkkczhws` int DEFAULT NULL,\n `ujcdjfajdfjlepzwpltgvutkezffektr` int DEFAULT NULL,\n `chbbcpahnswkzfsygfuqsoumhjwfccnn` int DEFAULT NULL,\n `xhdjyogkwfshpfjxvzrqprjbrwydtndz` int DEFAULT NULL,\n `avqqhyvybkeqffwdhyyppnellzgpxhwt` int DEFAULT NULL,\n `ohihyhnmmkmxbxwowziwnjmsibborpwd` int DEFAULT NULL,\n `xwtqgagmarxljtwkmjiedtnqqbwueafs` int DEFAULT NULL,\n `lcxejkadjdwxwvjvigcuyktxqovpemic` int DEFAULT NULL,\n `ezfiqvlshixttubssfyknimmsvapkyil` int DEFAULT NULL,\n `txcfptklvyewmwachqzptuhmstftgsct` int DEFAULT NULL,\n `orjbdtgdiunxnptzvvwjtasufzhpqknr` int DEFAULT NULL,\n `jifnsxybjgyeplqyuzbqdpfmudiwmwwe` int DEFAULT NULL,\n `vpfopqirxmwuwsgfsnbkbnajglnjsxao` int DEFAULT NULL,\n `ctnwyqbumhessagujfxryvilaspgdgny` int DEFAULT NULL,\n `squzmawjwljawanahrvjfkymiwtxftpv` int DEFAULT NULL,\n `toawsvqddrcdvphzzzasreihtknnmxmu` int DEFAULT NULL,\n `ntwwtuwrstkwrerxdmnbsjlcagbrduuc` int DEFAULT NULL,\n `giilcmoyilldsjsjpowynfuswnsgdlab` int DEFAULT NULL,\n `jjlswzgfacilnqxfdulteikiqxbzzplg` int DEFAULT NULL,\n `gyadqhncstchvhxisxntcitwzkbcbsyy` int DEFAULT NULL,\n `difrewxfkkpcwthguacrqlwkbtfsvfgp` int DEFAULT NULL,\n `ubziwvzvyoyphchbubwlfwvyhijvudgl` int DEFAULT NULL,\n `hrnaqqqkuzwopuattmwsrqeoffgdwutg` int DEFAULT NULL,\n `dqmantexlrbbjcmfhotloyccdtmohwqe` int DEFAULT NULL,\n `btrfqdsyffnwikdrzclkiyievtojuirp` int DEFAULT NULL,\n `qhrlkkeaziwhillidahdbrckpmmqiogo` int DEFAULT NULL,\n `milxptzulnvstayupqmlhwmatvpuibnf` int DEFAULT NULL,\n `gjvwciahuxtnkliuraycodphxaoqtgho` int DEFAULT NULL,\n `sxzshwhliefqsengydawcxfmeolorjyp` int DEFAULT NULL,\n PRIMARY KEY (`evnmhutgnenitueultneqxoinhlvhpsw`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"dfoaznlacthdivxcqnznziszzihljtyi\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["evnmhutgnenitueultneqxoinhlvhpsw"],"columns":[{"name":"evnmhutgnenitueultneqxoinhlvhpsw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"srdixelquatkskdcihwpmmcefcjdxzqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hcjyadlllynxsdelzjhmnbrgrtvhxtmj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xozzpnmqhbscafkkdfmzbdbdjuxqlbvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"djgcokkvzutfvlgdugszbafnbncgkwew","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xavgjvpbekmhsoobvnbycoobgulnuxac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhcgyttygwqsetkbrhqsknltbnrbyopj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"brzmwuotbluqdcmxfvrmuhlsdpdstgag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fiurukbdfrgkvkqmyzbbovlfdqhdvyin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hgerspgmucbvgqdvljoyntqdvaybwqab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sowsarszgfjpzocwhjceuofpevxqvcvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xoiifbivisvscchyylwirjgzshqzzehy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"msgfmdukfjjsxqepdbsqdftqwhwcoxls","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"luokynrfldknhhunzyonjarexehgcuzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxjufvrwmfezspqtubtmmzfezqlzaazf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhvguwvevhlyagkiljsxvkihzcljdbbi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ommnogctliyyujvsrlgziahftddwuydk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqvrmnkucygtgilyjrtodcsdyskckghk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drtgnwwccrctvbnnulkyssitdtlgpttm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzvmnyicbofpoeqqiygfuloqmyoslrce","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"niydipdhlrlwuiuuwklkoqzeznwxhryf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kmsholxrczhhwuqijlamkdagapbkaohk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vflxarkqhyslsmgaytqxnxcppbpksxgy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfeedoohnkubrwadrnnkspzemkdihmvk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkrmtmxnwcqpyelwuhigphrvlgxghofx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgxtlziujttrtmubxcvnhzqadjybrytb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kofsbwqzmvflrahlikvgrzsmeyhhnwye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnyuodtbwsjqkpsmukapvfkravwqyedp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"neozaaihlykekwpzprxofwndgrxaupic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbkxwiynlvzyzehltjktzunpgggqiciv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjlbyptfanegomawnpkhzjsrxkjttple","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"birudzyjnojphzedqyuqonwmugpcwuvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kinxarzohxjdshjsdsvuwccxcjuwugrk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dssdvxtbghmaboisavoijdsyeqjsrbkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjautrfbsmumsrovlkzdwgsospasqawa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgypyggzxoetcgjjcyebkjgpwsymitnu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ztihawwcmcvlqsrthdvzxijodoicapvn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwestcmgpboiedqlmuopuuudfjizxwvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhoszcyztdoigofzzqcswnpvbqfutzpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdtinknczuvavrfhfnkqjfvvmeiubwfb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfnywmhqcrocpevvgnjngxsbnhcxmfuo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avargstzaabpyxbmnmbsjimnvcuohjxa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eerdtiavlprvejliuuzdzwcfymchyhza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"khgttydzpidmvjwgwcodugppnlagisbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unfvqlwhexiygmryidohdjbgvyfzvdqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxvfregvoqqjgnyftswdxqxixrripwwt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zrztolkfhlyxybeirhtivyjjcxlghjcj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kcdxznqsivdmawkgnpaurwidiwfcbkrj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"duvkydsyvwjqoqbqbdasucyutrfgxady","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rslrocfpkkznezkzxmyixtzvxbszarse","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnomdoshwwxaiebganzuaevbadgrjqkn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ucqtlvazmizsxcdyosnqujzfcpaqxdfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yemgimtchdfkhtfksqzxjixbingithme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qzojkpjxkrfdhbuvlwjisszlwxfgzmmw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agytdmonqliyjivyxxohcclgcmkidrnv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvdbzqslketzzjbnuxdetpgpbndjcjnx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zpuhqqnwmwbcgktlwhsbamdjibchdvev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uypcahjhqntmvleibomjceoxjirmftit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fsxaxajvqowxluqkjflzskdwmmympuwf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqkitmrgtjnwnssgtuujegmzlrdtyslc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drbzazzkerxemnhpxpelpeeqpmefylxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nrfunuukjzdearaatpdzfocjhuhsexvh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"msmcvwbhlrnvvefikzrtneawinfpeujc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgapzkqopqeqecdukjyrqbmxiideavlk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgahplyyfkjofvfktghgfivkldycmoqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfueviwtwhjdunpumywgcloefwnckxnc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"epbrhfjhjvfnkqxvttmkbizijhlwoyxn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxfdznbciuutuxtwcjnamatllrpzmuzv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uowmbsqirjedmxufhwiaorlqqlnxeblg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfuyiarpytrtleqapecogfkcwxlikaqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jyqihwqcyesrxskpbxzankwcjhhrbyjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwpvzbbktyjtvyxddxldipectkkczhws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujcdjfajdfjlepzwpltgvutkezffektr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"chbbcpahnswkzfsygfuqsoumhjwfccnn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xhdjyogkwfshpfjxvzrqprjbrwydtndz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avqqhyvybkeqffwdhyyppnellzgpxhwt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohihyhnmmkmxbxwowziwnjmsibborpwd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xwtqgagmarxljtwkmjiedtnqqbwueafs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lcxejkadjdwxwvjvigcuyktxqovpemic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezfiqvlshixttubssfyknimmsvapkyil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txcfptklvyewmwachqzptuhmstftgsct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orjbdtgdiunxnptzvvwjtasufzhpqknr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jifnsxybjgyeplqyuzbqdpfmudiwmwwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpfopqirxmwuwsgfsnbkbnajglnjsxao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctnwyqbumhessagujfxryvilaspgdgny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"squzmawjwljawanahrvjfkymiwtxftpv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"toawsvqddrcdvphzzzasreihtknnmxmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntwwtuwrstkwrerxdmnbsjlcagbrduuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"giilcmoyilldsjsjpowynfuswnsgdlab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjlswzgfacilnqxfdulteikiqxbzzplg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gyadqhncstchvhxisxntcitwzkbcbsyy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"difrewxfkkpcwthguacrqlwkbtfsvfgp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubziwvzvyoyphchbubwlfwvyhijvudgl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hrnaqqqkuzwopuattmwsrqeoffgdwutg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqmantexlrbbjcmfhotloyccdtmohwqe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"btrfqdsyffnwikdrzclkiyievtojuirp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhrlkkeaziwhillidahdbrckpmmqiogo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"milxptzulnvstayupqmlhwmatvpuibnf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjvwciahuxtnkliuraycodphxaoqtgho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sxzshwhliefqsengydawcxfmeolorjyp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667343,"databaseName":"models_schema","ddl":"CREATE TABLE `dfzbmvchizqxwzhseritnruikiymswoq` (\n `azuqxcxvubpvslaqdkmjcfvznnciabmr` int NOT NULL,\n `daxxjcubffwlqiuyvrceezkwaljsdudu` int DEFAULT NULL,\n `xeqhruvtlfyafliogfjrftrtjxcqjzye` int DEFAULT NULL,\n `acsbmzbpcrccrafcvcabtfpfxwgkfhjf` int DEFAULT NULL,\n `wwhcpvbeejzxonbivxazhehrtrhjfbxq` int DEFAULT NULL,\n `cnrcuuenbpoaqltcnggsmopeeberhbqd` int DEFAULT NULL,\n `bqynelpbtocjwugfsmevxxpddjljkvba` int DEFAULT NULL,\n `obushnwgontlxcrnrphsguodlmbbeldd` int DEFAULT NULL,\n `ntfvxxgnzlrgctgkmviqtdhamgesvxke` int DEFAULT NULL,\n `memrhirfqzyalseezuakhojcpfnuzjih` int DEFAULT NULL,\n `qicmlsahyccricalisrjgfmrrlimtspy` int DEFAULT NULL,\n `wzqtipubtawswejrremehfxuhyesryfy` int DEFAULT NULL,\n `uuhspsthsltnamfkrqoqymerhxtvsuzq` int DEFAULT NULL,\n `qpkodytqdgbfqwmoalbqzhmjhukrbvkn` int DEFAULT NULL,\n `hmnawznqeqktkboorsdttpwjjigvzwsk` int DEFAULT NULL,\n `dkwjdhozchcipldhveioeoelyskvbyel` int DEFAULT NULL,\n `qowlwklfplhxoupnzhwdhmrdnehzefwj` int DEFAULT NULL,\n `lwcttxsehnhjhwhxyrcyuqvwnitynkie` int DEFAULT NULL,\n `cpzlnqskkwpyfflwaybsabplvwugaevo` int DEFAULT NULL,\n `pqrpsapxkbhzgoftsizkpgxwrujicffk` int DEFAULT NULL,\n `sawhtpokkegepurgsacepiuraucyzwex` int DEFAULT NULL,\n `twrirpwvctvuqavpiesnmophinbrudhr` int DEFAULT NULL,\n `tymnizzzvqrhkopmkwtlxlczkwehfurx` int DEFAULT NULL,\n `vgnsoabgrnwixpwnonboiukaomyxxpon` int DEFAULT NULL,\n `ymjnqxsaavfcoejisgyfvdfrlwplwecv` int DEFAULT NULL,\n `vfttwfqwdmjzjmlxjxxjogdgtzrqllbk` int DEFAULT NULL,\n `oftwxwdfneincqdfnklpelxumdowyqqd` int DEFAULT NULL,\n `pbqfklhqsyltgwvyuolniayzitbeivxp` int DEFAULT NULL,\n `desheyrgivsiymrfwwmijatosxjsphjo` int DEFAULT NULL,\n `wyhgrmxvploootodgqedsbmmkoivervd` int DEFAULT NULL,\n `qrlmiohsxicrmbpjaaihzgmuotyqvftn` int DEFAULT NULL,\n `dbxloxqnvkhigwnwxbwvxxmfzyeiygdl` int DEFAULT NULL,\n `porynvkiudgizasyzyvcuxxgiwjaatqo` int DEFAULT NULL,\n `uufrteqfcawjcnvpqlksdukeocfkyagy` int DEFAULT NULL,\n `tpeicythvbmlxrfekpegqkqmebqsaxsx` int DEFAULT NULL,\n `dfnntwjgqfmninollcxgxpoucjuocjfm` int DEFAULT NULL,\n `domnywiavgokaqcjnynbchedjggatbec` int DEFAULT NULL,\n `nbozdpnemrgxhpgjlyvrxrgwaxynshlg` int DEFAULT NULL,\n `issveyhkzguxlrlnpuekmdfzhtslzdel` int DEFAULT NULL,\n `xrgmmecpnzqqaxucbmbzwyjroyqglryc` int DEFAULT NULL,\n `dkoqdrdzywjyeflgpxqlaaxoycdbbttw` int DEFAULT NULL,\n `umfhpeficxuxwypciqbckhpwvgkjwqhb` int DEFAULT NULL,\n `udekrntozmhejfvfleaikigdbxctfxvm` int DEFAULT NULL,\n `qrnvpswfrsxswadtozxurdonybssyuvi` int DEFAULT NULL,\n `epwshavnuinnxbcclydcdlkzvxydknhu` int DEFAULT NULL,\n `wajgrwpimvwbvfjcdtpechdzrvzpgqdq` int DEFAULT NULL,\n `jyypvchaxoxmeizdmwsemccdjgvfznkq` int DEFAULT NULL,\n `kwvqxcemspbzfdgmuiuslicrgwpfjnjf` int DEFAULT NULL,\n `jjsctkghzbujfxntpnftzjhvowpzsgfv` int DEFAULT NULL,\n `jsjpxwxzycwkjpvkbvjarwawlufrmfyt` int DEFAULT NULL,\n `jwanykkbsigphkinezovsvxgvjqmciod` int DEFAULT NULL,\n `rqhfsdhyimdfmldfqhuonriznkgkcavc` int DEFAULT NULL,\n `jibcrmhurybzplmclatnkiahnlvjcstx` int DEFAULT NULL,\n `pbpkighkualkmpcgcgzhznaxzawxcdpl` int DEFAULT NULL,\n `hajyvcprivreywkrvovlwfyzqjubphld` int DEFAULT NULL,\n `xsfsfxqfvklztfatfwlanzyjpygsildx` int DEFAULT NULL,\n `ocdfnsqzylsqkabroosaubpqprebnbrr` int DEFAULT NULL,\n `pgtcwpqpoglgmjljalncjmabnthqctiu` int DEFAULT NULL,\n `swsavzbvudikrjttxpightxslxbqgyqo` int DEFAULT NULL,\n `hwixuaaqhqijkdscztpdnzyeroxtwmrv` int DEFAULT NULL,\n `mhlxrkitpucivarxdgjdhziunpgmjmex` int DEFAULT NULL,\n `paqxzfwqypadzwokvksmcjtdpkkotqlz` int DEFAULT NULL,\n `zxuylbbwaoegadzukdeutobeabshxogm` int DEFAULT NULL,\n `gergjmyoqmqbimksxjcxovpkbekvcyjk` int DEFAULT NULL,\n `xrzfuzyemyrbivukxojutrovjckqstux` int DEFAULT NULL,\n `upbvpjlxclbtekroigigvbjfxjrdrihf` int DEFAULT NULL,\n `ecoxqpmleyevnlduzktspodqdljwfspf` int DEFAULT NULL,\n `chajkjdvjimctoisdesuqtxvtpxtalde` int DEFAULT NULL,\n `ndbjwsysssppxleglkuqttpxlbjnzruq` int DEFAULT NULL,\n `mjxnvniwzbpnsxtjvqgaeqwnoxlfssup` int DEFAULT NULL,\n `lbjsaudeyimymhqtrhmjtgshmimhwzor` int DEFAULT NULL,\n `bjzhtzeyghktndnxfjrxmnnucnexgetf` int DEFAULT NULL,\n `gmqbkzefbkbltdhmqkugwugamexuiblt` int DEFAULT NULL,\n `dxmnirvhrxqzkoqfsnexybztvahkapha` int DEFAULT NULL,\n `jwdfvdoknuydollqyepytowcwqimwiwv` int DEFAULT NULL,\n `vxlvixwvqwggmlsxxcsdpnoynzzjcrky` int DEFAULT NULL,\n `sdjzzvyihzsjxwaujnafygnwmisabnmm` int DEFAULT NULL,\n `ebmppaywsyqiijryzigxstttundtxvbh` int DEFAULT NULL,\n `gnyquqjhwwagbretqjqdmdkeoimihyek` int DEFAULT NULL,\n `ohulgwmsuakcpolrodaehrvsycblvctn` int DEFAULT NULL,\n `hjfjdhxtftxyotdobgiijxedlcyarspq` int DEFAULT NULL,\n `tfzihkajfeqsscfmkikrjqnardfpfpgs` int DEFAULT NULL,\n `lmnlhmmsjswnhnmtgezcotbqegykawej` int DEFAULT NULL,\n `ecagoxhbohyunmwyymvhbmlxymmdliqv` int DEFAULT NULL,\n `wcbjuquvlacknanaxngegrkulcaxsvyf` int DEFAULT NULL,\n `woujhsibewchxbhkdeluecvxeylmaftg` int DEFAULT NULL,\n `trpwztiwmedhksbpgonmtztpqzravrjy` int DEFAULT NULL,\n `ostyewkafapfizikiqemlcibarlxmtzx` int DEFAULT NULL,\n `rfwpfvdjbylfldkwbnvdxzkftbqmbrgn` int DEFAULT NULL,\n `cenfssirnbfeofrlkedhhzfwcjipyame` int DEFAULT NULL,\n `pizfuikeyoydepbzcvekjntukcbmruox` int DEFAULT NULL,\n `vtjsajaiggjdtlsdwfzqxviojovarjku` int DEFAULT NULL,\n `wmifzxrsoktdtihjazkycigkhibfsrrg` int DEFAULT NULL,\n `nskmfqajfhdsnsthmjmaczoeqjjwquoa` int DEFAULT NULL,\n `fxhtjigqiawqwyorfztoswklchtppqnx` int DEFAULT NULL,\n `daejfhhugncdrfgjnsbdljochmkrwvdx` int DEFAULT NULL,\n `kpmbtansabdukuolihcrimuaknfayucl` int DEFAULT NULL,\n `tehtwgjiscmrcidibsexflibikzlazny` int DEFAULT NULL,\n `sfhebzlptmiggtohmsuynmjpqatdugyz` int DEFAULT NULL,\n `spweagquinsqzxcozzoazngpdueadjcy` int DEFAULT NULL,\n PRIMARY KEY (`azuqxcxvubpvslaqdkmjcfvznnciabmr`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"dfzbmvchizqxwzhseritnruikiymswoq\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["azuqxcxvubpvslaqdkmjcfvznnciabmr"],"columns":[{"name":"azuqxcxvubpvslaqdkmjcfvznnciabmr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"daxxjcubffwlqiuyvrceezkwaljsdudu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xeqhruvtlfyafliogfjrftrtjxcqjzye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"acsbmzbpcrccrafcvcabtfpfxwgkfhjf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwhcpvbeejzxonbivxazhehrtrhjfbxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnrcuuenbpoaqltcnggsmopeeberhbqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqynelpbtocjwugfsmevxxpddjljkvba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obushnwgontlxcrnrphsguodlmbbeldd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntfvxxgnzlrgctgkmviqtdhamgesvxke","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"memrhirfqzyalseezuakhojcpfnuzjih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qicmlsahyccricalisrjgfmrrlimtspy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzqtipubtawswejrremehfxuhyesryfy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uuhspsthsltnamfkrqoqymerhxtvsuzq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qpkodytqdgbfqwmoalbqzhmjhukrbvkn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmnawznqeqktkboorsdttpwjjigvzwsk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkwjdhozchcipldhveioeoelyskvbyel","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qowlwklfplhxoupnzhwdhmrdnehzefwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwcttxsehnhjhwhxyrcyuqvwnitynkie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cpzlnqskkwpyfflwaybsabplvwugaevo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqrpsapxkbhzgoftsizkpgxwrujicffk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sawhtpokkegepurgsacepiuraucyzwex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twrirpwvctvuqavpiesnmophinbrudhr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tymnizzzvqrhkopmkwtlxlczkwehfurx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgnsoabgrnwixpwnonboiukaomyxxpon","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ymjnqxsaavfcoejisgyfvdfrlwplwecv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vfttwfqwdmjzjmlxjxxjogdgtzrqllbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oftwxwdfneincqdfnklpelxumdowyqqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbqfklhqsyltgwvyuolniayzitbeivxp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"desheyrgivsiymrfwwmijatosxjsphjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wyhgrmxvploootodgqedsbmmkoivervd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qrlmiohsxicrmbpjaaihzgmuotyqvftn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbxloxqnvkhigwnwxbwvxxmfzyeiygdl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"porynvkiudgizasyzyvcuxxgiwjaatqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uufrteqfcawjcnvpqlksdukeocfkyagy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpeicythvbmlxrfekpegqkqmebqsaxsx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dfnntwjgqfmninollcxgxpoucjuocjfm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"domnywiavgokaqcjnynbchedjggatbec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbozdpnemrgxhpgjlyvrxrgwaxynshlg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"issveyhkzguxlrlnpuekmdfzhtslzdel","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xrgmmecpnzqqaxucbmbzwyjroyqglryc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkoqdrdzywjyeflgpxqlaaxoycdbbttw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umfhpeficxuxwypciqbckhpwvgkjwqhb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udekrntozmhejfvfleaikigdbxctfxvm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qrnvpswfrsxswadtozxurdonybssyuvi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"epwshavnuinnxbcclydcdlkzvxydknhu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wajgrwpimvwbvfjcdtpechdzrvzpgqdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jyypvchaxoxmeizdmwsemccdjgvfznkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwvqxcemspbzfdgmuiuslicrgwpfjnjf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjsctkghzbujfxntpnftzjhvowpzsgfv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jsjpxwxzycwkjpvkbvjarwawlufrmfyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwanykkbsigphkinezovsvxgvjqmciod","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqhfsdhyimdfmldfqhuonriznkgkcavc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jibcrmhurybzplmclatnkiahnlvjcstx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbpkighkualkmpcgcgzhznaxzawxcdpl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hajyvcprivreywkrvovlwfyzqjubphld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsfsfxqfvklztfatfwlanzyjpygsildx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocdfnsqzylsqkabroosaubpqprebnbrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgtcwpqpoglgmjljalncjmabnthqctiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swsavzbvudikrjttxpightxslxbqgyqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwixuaaqhqijkdscztpdnzyeroxtwmrv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhlxrkitpucivarxdgjdhziunpgmjmex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"paqxzfwqypadzwokvksmcjtdpkkotqlz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxuylbbwaoegadzukdeutobeabshxogm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gergjmyoqmqbimksxjcxovpkbekvcyjk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xrzfuzyemyrbivukxojutrovjckqstux","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upbvpjlxclbtekroigigvbjfxjrdrihf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecoxqpmleyevnlduzktspodqdljwfspf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"chajkjdvjimctoisdesuqtxvtpxtalde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ndbjwsysssppxleglkuqttpxlbjnzruq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjxnvniwzbpnsxtjvqgaeqwnoxlfssup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lbjsaudeyimymhqtrhmjtgshmimhwzor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjzhtzeyghktndnxfjrxmnnucnexgetf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmqbkzefbkbltdhmqkugwugamexuiblt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxmnirvhrxqzkoqfsnexybztvahkapha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwdfvdoknuydollqyepytowcwqimwiwv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxlvixwvqwggmlsxxcsdpnoynzzjcrky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdjzzvyihzsjxwaujnafygnwmisabnmm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebmppaywsyqiijryzigxstttundtxvbh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnyquqjhwwagbretqjqdmdkeoimihyek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohulgwmsuakcpolrodaehrvsycblvctn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjfjdhxtftxyotdobgiijxedlcyarspq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tfzihkajfeqsscfmkikrjqnardfpfpgs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmnlhmmsjswnhnmtgezcotbqegykawej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecagoxhbohyunmwyymvhbmlxymmdliqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcbjuquvlacknanaxngegrkulcaxsvyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"woujhsibewchxbhkdeluecvxeylmaftg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"trpwztiwmedhksbpgonmtztpqzravrjy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ostyewkafapfizikiqemlcibarlxmtzx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfwpfvdjbylfldkwbnvdxzkftbqmbrgn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cenfssirnbfeofrlkedhhzfwcjipyame","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pizfuikeyoydepbzcvekjntukcbmruox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtjsajaiggjdtlsdwfzqxviojovarjku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmifzxrsoktdtihjazkycigkhibfsrrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nskmfqajfhdsnsthmjmaczoeqjjwquoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxhtjigqiawqwyorfztoswklchtppqnx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"daejfhhugncdrfgjnsbdljochmkrwvdx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kpmbtansabdukuolihcrimuaknfayucl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tehtwgjiscmrcidibsexflibikzlazny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfhebzlptmiggtohmsuynmjpqatdugyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"spweagquinsqzxcozzoazngpdueadjcy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667382,"databaseName":"models_schema","ddl":"CREATE TABLE `dktjgzfdvuzusxrwcdfekwieeadvscpa` (\n `pmupojuusdjgtjacsjeerecdzivbvlfo` int NOT NULL,\n `kkleiyhfxoixnctdcphkqucztrevsdjg` int DEFAULT NULL,\n `lanaqxuevngvvmhqfclirhbairniyzhd` int DEFAULT NULL,\n `htwujykuanweoizqvppoqhwdiqqgdvza` int DEFAULT NULL,\n `ujcfixddkkrkhuugpnuthmpdctwnzxsi` int DEFAULT NULL,\n `ozquhkjxathkhcikxydbhmradgiistdh` int DEFAULT NULL,\n `cvvpdrsyfbdpkuydtedssrpcamwmeqyx` int DEFAULT NULL,\n `thyrorhqirmimliwkdupygnabpsgppjb` int DEFAULT NULL,\n `kkwqrimwgnbiplmbhbasbnkgbcpacsej` int DEFAULT NULL,\n `nmdhartdiomdlsaqkqkcbfezmjvsxxdo` int DEFAULT NULL,\n `ubsohnxwblgnyrsxhcwsptjrbqcbpwvd` int DEFAULT NULL,\n `ylkekgbesvquoywsebnkambcrvpfuesa` int DEFAULT NULL,\n `igukbpncdkmtlsgiwqxphbiixcdzbmue` int DEFAULT NULL,\n `bfdfxnkoieupribiyhqymmbufielyuub` int DEFAULT NULL,\n `aimhlgdfgwmggktjksjwaqzptjetybyi` int DEFAULT NULL,\n `atblznskbcycmeqdwgzlbroyyuityumq` int DEFAULT NULL,\n `fkkmlqgpjdcbysmnhatskqaolthlqkyx` int DEFAULT NULL,\n `pzqhuqscgvkupxqrjnlisteqczpwcmfb` int DEFAULT NULL,\n `fufjeeudpowzdtljkcpdhkyltfkyrrpb` int DEFAULT NULL,\n `lecosjgmosswrmgwpcgebgzqtatyjrbr` int DEFAULT NULL,\n `rdglbxzrefouswchrascaqmuaajrhhdt` int DEFAULT NULL,\n `crsbmnwghjelkbrtsgovezvkeryzzxjg` int DEFAULT NULL,\n `lnaoadubhufotqhmbcubvheqsrcowdqh` int DEFAULT NULL,\n `ylhuhhmdizadorrzwtndsxzztzvfjkgi` int DEFAULT NULL,\n `snddclcinmbxhjthzfisntyqpzfogokb` int DEFAULT NULL,\n `guvgjbfhlykctrcipwprzmqzptgtwcmw` int DEFAULT NULL,\n `zccqplghqhbjvzrdcnoeafvdufprpexq` int DEFAULT NULL,\n `lhlpexzaufoxitacbneltjlhwahyfvhr` int DEFAULT NULL,\n `exmxocudkvpfqkrkchbzhktfqetmjdaa` int DEFAULT NULL,\n `iznchclddklbqqjhbyscbfmdvrtozbsn` int DEFAULT NULL,\n `gkeusmkvejksphynkmbdzwbvbvhahinj` int DEFAULT NULL,\n `frlhabqofdibspqbrzgnfqaopzwmjjpw` int DEFAULT NULL,\n `tylsywbmollnxhnbxgllkwimmlsxbjyx` int DEFAULT NULL,\n `ifdnlmmgdnfmrktnfoakmuypcdswdkkj` int DEFAULT NULL,\n `zafryusczmyrcdrpniuhrgtluoxywggs` int DEFAULT NULL,\n `rdqqqrvfgryybghmizndpcobkmbludfj` int DEFAULT NULL,\n `qunnafchrwkkirttvouqtzbipyauwdta` int DEFAULT NULL,\n `ijiopibhnjoaerfjsjxrmyacrkkibwvq` int DEFAULT NULL,\n `hiupngsnqffckqeohxcusuvvunexokqf` int DEFAULT NULL,\n `gezbdxqlfpzizpwwytkgbwagindfnhnx` int DEFAULT NULL,\n `tzkppfaaffqxcdwglvcbietloloykubx` int DEFAULT NULL,\n `kbacphwpacxfujcetcdorscvtaaqhfmh` int DEFAULT NULL,\n `sjfelkjmuvtvnozefliifeurbatmiqvf` int DEFAULT NULL,\n `kwzlgkripafdfkpbqrcamrtmpsxhdjnf` int DEFAULT NULL,\n `iapgkfkzchkdjxpoihvchoemhtgattkr` int DEFAULT NULL,\n `pcmohurhgfbanipmbejbzygcihquhxhi` int DEFAULT NULL,\n `oknwyvsbimqnzsbmpawllqddwpjqoxkx` int DEFAULT NULL,\n `hrwidjcirahdwgfxonkwpdxylajsevol` int DEFAULT NULL,\n `qummcdsnhojzobogcsnpdorypfaakvet` int DEFAULT NULL,\n `cnwigylgoymdtpqdrxtzsuwxfgabyeag` int DEFAULT NULL,\n `czzadbaohocgkkvccjcdvmbqipmljwwn` int DEFAULT NULL,\n `gayldiztmxmgyrmeiwniudsccpfrmxad` int DEFAULT NULL,\n `qiohedslwyahwpmztpeblphwvscdtdac` int DEFAULT NULL,\n `gompwaemqfdxbbngqgfzkffkgdeoheje` int DEFAULT NULL,\n `aszksszwftbusmcuvyxwyqtbqibrwwrc` int DEFAULT NULL,\n `yvbzvieyiadxuprjplxgeiockjqldpyn` int DEFAULT NULL,\n `vuwqbavgdsinghbxnknrkxcggdpmzpnp` int DEFAULT NULL,\n `lihhpokkybiqnltnoyjefsfgoldbcyto` int DEFAULT NULL,\n `yukhsfcrevmbsyktmzwxmpxszcmxpssk` int DEFAULT NULL,\n `cayysvcravfxzwpzrepggodceyvsneys` int DEFAULT NULL,\n `fbqflbfzsfitaazjzmuxnfkacolpgpef` int DEFAULT NULL,\n `qvssxwjvsshawwghwaujddcyjhesldrm` int DEFAULT NULL,\n `wlskgjbkggntptfqccnafzcvfhdnrcoj` int DEFAULT NULL,\n `jmufkzaenmfxksislzjpapvklvrhspio` int DEFAULT NULL,\n `tcuvkfqqzxexikhqvnltgpfwicmnnrfu` int DEFAULT NULL,\n `gyqwpravbkyopfleeeuprjzaibrbkvzn` int DEFAULT NULL,\n `tooetvrcdanzbopyhpvcpayozrcnfgxu` int DEFAULT NULL,\n `jztbcbzuoxvmotsjlrkclgyftutklmia` int DEFAULT NULL,\n `xxyuznzngixlecimoilpkqewtsbglkih` int DEFAULT NULL,\n `yqyvzpoogdjzfodpdimzbplueabfrapr` int DEFAULT NULL,\n `xndjsdvecuvhjcsbguuexlxjklcmfpbx` int DEFAULT NULL,\n `jzcdxwlwsmegwvcamuzmacrrkdizmakb` int DEFAULT NULL,\n `thoyvkjlfqojqnzlbjxmicpbvtfixzky` int DEFAULT NULL,\n `tyjlbddtlvwdknkwbxbfewnswtnzpriy` int DEFAULT NULL,\n `amwuvskasyqfeqspamahityfmbkfnvln` int DEFAULT NULL,\n `ndwkkhbntwnbijwpqoicinsfqmsxnhme` int DEFAULT NULL,\n `lykxarukkzzhxeemdcdtclafqucdyhdy` int DEFAULT NULL,\n `xbuntswxhfkaihrwsapenmsambxddhwy` int DEFAULT NULL,\n `agrsxomtnmkyfslsuzssaxzzdoamiyhq` int DEFAULT NULL,\n `azhuttwmcinzvwlpmusimbewgiltgnxw` int DEFAULT NULL,\n `gaderwgnsaqelksxgmrxbttofubivpao` int DEFAULT NULL,\n `mqdwnknnhzhotyiowcuvepyfahexknwx` int DEFAULT NULL,\n `okgwsuxauvgclnbsmrkfkgfmshohgevg` int DEFAULT NULL,\n `edotkkcgiwcvamfwcryiqcevemygkhzd` int DEFAULT NULL,\n `umacffktyvsilohfuojeazzzdqhhwpwt` int DEFAULT NULL,\n `sjxamekntgpwloucvxxocvghaysbqhde` int DEFAULT NULL,\n `opcatbtdyuvbfiyxkqfwfqjobdemgdya` int DEFAULT NULL,\n `qtdihperobmuoutegxddwdgfssnlubxc` int DEFAULT NULL,\n `jmyxaorknsfyyklzrmtyjmdtrtawgdrz` int DEFAULT NULL,\n `zkkbvgpdctgnnjmlbtoewguirjqrefgw` int DEFAULT NULL,\n `ghkfykszopznopdenxvuwccwrzodxxpd` int DEFAULT NULL,\n `dgvdayuhgbhjickmjbhiuyogxsqbujex` int DEFAULT NULL,\n `oaxohqrkauxnjhsncjyawubuqdrtlyih` int DEFAULT NULL,\n `vdlasfczncbxnpnrkhxckbdozshxgwdk` int DEFAULT NULL,\n `gpssdwoiqjjexvkkposihckkeiqcgfur` int DEFAULT NULL,\n `vujuswthbbynernuotczjuftgzvmhjva` int DEFAULT NULL,\n `dzwyixxrkhtodiggakvarzwevwaeutvk` int DEFAULT NULL,\n `fwlaqapxoohcvqgazeiatcfabgxtrvzi` int DEFAULT NULL,\n `kqevaaqoydutudmcvojrbtcndsmpoawx` int DEFAULT NULL,\n `anesphouizquhfyxscpgpchkrtgwvkcr` int DEFAULT NULL,\n PRIMARY KEY (`pmupojuusdjgtjacsjeerecdzivbvlfo`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"dktjgzfdvuzusxrwcdfekwieeadvscpa\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["pmupojuusdjgtjacsjeerecdzivbvlfo"],"columns":[{"name":"pmupojuusdjgtjacsjeerecdzivbvlfo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"kkleiyhfxoixnctdcphkqucztrevsdjg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lanaqxuevngvvmhqfclirhbairniyzhd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"htwujykuanweoizqvppoqhwdiqqgdvza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujcfixddkkrkhuugpnuthmpdctwnzxsi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ozquhkjxathkhcikxydbhmradgiistdh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvvpdrsyfbdpkuydtedssrpcamwmeqyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thyrorhqirmimliwkdupygnabpsgppjb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kkwqrimwgnbiplmbhbasbnkgbcpacsej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmdhartdiomdlsaqkqkcbfezmjvsxxdo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubsohnxwblgnyrsxhcwsptjrbqcbpwvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ylkekgbesvquoywsebnkambcrvpfuesa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igukbpncdkmtlsgiwqxphbiixcdzbmue","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bfdfxnkoieupribiyhqymmbufielyuub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aimhlgdfgwmggktjksjwaqzptjetybyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atblznskbcycmeqdwgzlbroyyuityumq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fkkmlqgpjdcbysmnhatskqaolthlqkyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pzqhuqscgvkupxqrjnlisteqczpwcmfb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fufjeeudpowzdtljkcpdhkyltfkyrrpb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lecosjgmosswrmgwpcgebgzqtatyjrbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdglbxzrefouswchrascaqmuaajrhhdt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"crsbmnwghjelkbrtsgovezvkeryzzxjg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lnaoadubhufotqhmbcubvheqsrcowdqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ylhuhhmdizadorrzwtndsxzztzvfjkgi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"snddclcinmbxhjthzfisntyqpzfogokb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"guvgjbfhlykctrcipwprzmqzptgtwcmw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zccqplghqhbjvzrdcnoeafvdufprpexq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhlpexzaufoxitacbneltjlhwahyfvhr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exmxocudkvpfqkrkchbzhktfqetmjdaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iznchclddklbqqjhbyscbfmdvrtozbsn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkeusmkvejksphynkmbdzwbvbvhahinj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"frlhabqofdibspqbrzgnfqaopzwmjjpw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tylsywbmollnxhnbxgllkwimmlsxbjyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ifdnlmmgdnfmrktnfoakmuypcdswdkkj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zafryusczmyrcdrpniuhrgtluoxywggs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdqqqrvfgryybghmizndpcobkmbludfj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qunnafchrwkkirttvouqtzbipyauwdta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijiopibhnjoaerfjsjxrmyacrkkibwvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hiupngsnqffckqeohxcusuvvunexokqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gezbdxqlfpzizpwwytkgbwagindfnhnx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tzkppfaaffqxcdwglvcbietloloykubx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kbacphwpacxfujcetcdorscvtaaqhfmh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjfelkjmuvtvnozefliifeurbatmiqvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwzlgkripafdfkpbqrcamrtmpsxhdjnf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iapgkfkzchkdjxpoihvchoemhtgattkr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pcmohurhgfbanipmbejbzygcihquhxhi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oknwyvsbimqnzsbmpawllqddwpjqoxkx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hrwidjcirahdwgfxonkwpdxylajsevol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qummcdsnhojzobogcsnpdorypfaakvet","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnwigylgoymdtpqdrxtzsuwxfgabyeag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"czzadbaohocgkkvccjcdvmbqipmljwwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gayldiztmxmgyrmeiwniudsccpfrmxad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qiohedslwyahwpmztpeblphwvscdtdac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gompwaemqfdxbbngqgfzkffkgdeoheje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aszksszwftbusmcuvyxwyqtbqibrwwrc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yvbzvieyiadxuprjplxgeiockjqldpyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vuwqbavgdsinghbxnknrkxcggdpmzpnp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lihhpokkybiqnltnoyjefsfgoldbcyto","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yukhsfcrevmbsyktmzwxmpxszcmxpssk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cayysvcravfxzwpzrepggodceyvsneys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbqflbfzsfitaazjzmuxnfkacolpgpef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvssxwjvsshawwghwaujddcyjhesldrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wlskgjbkggntptfqccnafzcvfhdnrcoj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmufkzaenmfxksislzjpapvklvrhspio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tcuvkfqqzxexikhqvnltgpfwicmnnrfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gyqwpravbkyopfleeeuprjzaibrbkvzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tooetvrcdanzbopyhpvcpayozrcnfgxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jztbcbzuoxvmotsjlrkclgyftutklmia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxyuznzngixlecimoilpkqewtsbglkih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqyvzpoogdjzfodpdimzbplueabfrapr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xndjsdvecuvhjcsbguuexlxjklcmfpbx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jzcdxwlwsmegwvcamuzmacrrkdizmakb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thoyvkjlfqojqnzlbjxmicpbvtfixzky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tyjlbddtlvwdknkwbxbfewnswtnzpriy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"amwuvskasyqfeqspamahityfmbkfnvln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ndwkkhbntwnbijwpqoicinsfqmsxnhme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lykxarukkzzhxeemdcdtclafqucdyhdy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbuntswxhfkaihrwsapenmsambxddhwy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agrsxomtnmkyfslsuzssaxzzdoamiyhq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"azhuttwmcinzvwlpmusimbewgiltgnxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gaderwgnsaqelksxgmrxbttofubivpao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqdwnknnhzhotyiowcuvepyfahexknwx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"okgwsuxauvgclnbsmrkfkgfmshohgevg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edotkkcgiwcvamfwcryiqcevemygkhzd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umacffktyvsilohfuojeazzzdqhhwpwt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjxamekntgpwloucvxxocvghaysbqhde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opcatbtdyuvbfiyxkqfwfqjobdemgdya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtdihperobmuoutegxddwdgfssnlubxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmyxaorknsfyyklzrmtyjmdtrtawgdrz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zkkbvgpdctgnnjmlbtoewguirjqrefgw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghkfykszopznopdenxvuwccwrzodxxpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgvdayuhgbhjickmjbhiuyogxsqbujex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oaxohqrkauxnjhsncjyawubuqdrtlyih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdlasfczncbxnpnrkhxckbdozshxgwdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gpssdwoiqjjexvkkposihckkeiqcgfur","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vujuswthbbynernuotczjuftgzvmhjva","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dzwyixxrkhtodiggakvarzwevwaeutvk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwlaqapxoohcvqgazeiatcfabgxtrvzi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kqevaaqoydutudmcvojrbtcndsmpoawx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"anesphouizquhfyxscpgpchkrtgwvkcr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667420,"databaseName":"models_schema","ddl":"CREATE TABLE `dmpkfkxwkhuajbllpqhimtoiumvecdvq` (\n `zjtuehwyypagpzlzwnpphpxldvgylujb` int NOT NULL,\n `gcjheqzkzuppkbzjxxnverpjdwueiynu` int DEFAULT NULL,\n `apybrwrvgzvyflznsvoprjxwbznavkcz` int DEFAULT NULL,\n `hmhjgkdgfspluzwgwuyygzzlpmsznvcq` int DEFAULT NULL,\n `tdxfyxbmdaahmxyowaxlszatbmvalgqj` int DEFAULT NULL,\n `mkkumatjsyjtwaegiwuyorcfhwinrauq` int DEFAULT NULL,\n `evphojdmeamxxyvqtbpdzgfewgmgupdo` int DEFAULT NULL,\n `zvmepioowcundmjjkkshvfmwkcprhxam` int DEFAULT NULL,\n `gprzrfebyaqjntvwsqkadfaovcafsefz` int DEFAULT NULL,\n `vndezvlgefmazsxepjgfhnaslszwyeok` int DEFAULT NULL,\n `hgzrztwkmuaijszxkmwjiiztdyhznucx` int DEFAULT NULL,\n `yllopfcovygaarqypreombodsfcecenj` int DEFAULT NULL,\n `sgghgoshqzgvpsxivzkjsmiofojggzbr` int DEFAULT NULL,\n `xrfxfdhgwvckjkfcawyrgieaykeqcdta` int DEFAULT NULL,\n `kvzwqxxhvxbfttjbyetzfbyfixujbply` int DEFAULT NULL,\n `pgkskkvkkoldwodfaayzllrqlwtkmvww` int DEFAULT NULL,\n `ruzrfdybcnkbpzamhygyonffrxeifsex` int DEFAULT NULL,\n `kxifldvgzcchcceefvgmpcwbkxqhzuxf` int DEFAULT NULL,\n `zhlxrgnqgeliistoupqxuolmcjowfynq` int DEFAULT NULL,\n `ikxvxogbbdjaavlmhvzdczgjyhawoyfh` int DEFAULT NULL,\n `pbrqmxyakgfsuaizgzznoobqfowsiztn` int DEFAULT NULL,\n `ameeyaldlcgvidaqarpinhndlhrqvgqy` int DEFAULT NULL,\n `luznilvyyeftvoyggiqnjlazhwanfeca` int DEFAULT NULL,\n `fuyyjlkglyoyzoqhfdukgpzfzivxmzvf` int DEFAULT NULL,\n `maphviwgcmfmysgnqpvmhykbltbfgfka` int DEFAULT NULL,\n `okghpnnumyxgndjpmlmulmczmlwjzbht` int DEFAULT NULL,\n `tzpaxutpojoayhgtpzubzplgvnxbvxnv` int DEFAULT NULL,\n `qxymegykxwvevuupsbbatnhuhljyrihc` int DEFAULT NULL,\n `ntxstrsrsxjbnmajxahunncvifnasiva` int DEFAULT NULL,\n `qvcnrgiikhttggbgphxwtwxyacmqotte` int DEFAULT NULL,\n `uynpfvxhtyloywulvxcrgzoqxiipxuem` int DEFAULT NULL,\n `jflnucfhorxwmlttmhuzaranzuzxbiji` int DEFAULT NULL,\n `mnxhrmnaluwawitudxflbdyhktwfehkn` int DEFAULT NULL,\n `dwdslzztidcjagrbvfcasqclfxroawzn` int DEFAULT NULL,\n `usvzcgvrlduwtywzxsneortqmtwdqwhr` int DEFAULT NULL,\n `ggsronbzoioegtyzqmjpukpckyvnueia` int DEFAULT NULL,\n `fedecwkaicivgkretnfudmhjsepebdqj` int DEFAULT NULL,\n `bqrpxwcemgfwvemcdhxaarhfjkpmmiqa` int DEFAULT NULL,\n `pcixnjvsmozpayaydgsqfyoqpfgnxftt` int DEFAULT NULL,\n `lvbixeydudtlrmgwqosiksdgdrsvdbor` int DEFAULT NULL,\n `uvbvhbvopcblrlnojhutfjbqrvomogpd` int DEFAULT NULL,\n `roospijbiumlynflzsnyowtoojwtribm` int DEFAULT NULL,\n `bjgocspgrhrhgnmapnmeakvkandepwgu` int DEFAULT NULL,\n `idfakleucgelqgqmgqfrhguqyfagxlcx` int DEFAULT NULL,\n `kjwpohjyfaxukfryycfmxlfsvlhhzovx` int DEFAULT NULL,\n `jcxpiqnsjgiznnnvatmwxpgqobkkpzxu` int DEFAULT NULL,\n `ujfftxxiztquvnxbulksrgptnzegkrqo` int DEFAULT NULL,\n `vbtnhucdgpeqmgheifcjocxjpphahysg` int DEFAULT NULL,\n `cgbtfykggnedxtvvxdknchflgfpmkbdc` int DEFAULT NULL,\n `hngkfwmpnkbjsdqdoiajjysukmsroifm` int DEFAULT NULL,\n `cbkxijwdglxqkxverhumairvzxedlydw` int DEFAULT NULL,\n `yomcxpqeuvyoclsunlbibklktowusjvz` int DEFAULT NULL,\n `pnqseewwhhgktucdoptdkxwbakgvobpb` int DEFAULT NULL,\n `rrbirsoljfqgebunbijvlqgpoacqgsld` int DEFAULT NULL,\n `tqpbrbwoissiohpxtmcysdmywaptufbn` int DEFAULT NULL,\n `odrbpyitsmdlbkosvkfiziorngdhmiqc` int DEFAULT NULL,\n `uuxygcplhznsnosgizseuxqsorthramo` int DEFAULT NULL,\n `lmukvliggjjjmnjciquindromcywozgj` int DEFAULT NULL,\n `irwejibuulpesfpbdzfcaztnpdbjxmrh` int DEFAULT NULL,\n `ehyvafwrldgpidhzzwglqvnxgndwrdhv` int DEFAULT NULL,\n `wabnyhpqwmccemopaolrmogifqhidgpu` int DEFAULT NULL,\n `lfizqjhnwsnbdoesacnjbxkmcqpxnruw` int DEFAULT NULL,\n `sbaxdrhrnxsndcjiylkiixitpabainop` int DEFAULT NULL,\n `jxcfvkfnqfembskukcmshjubvceckkcn` int DEFAULT NULL,\n `kqrmahhdvuvzgeretjxlzritprajfqls` int DEFAULT NULL,\n `zkylpbxwgpikvurjsgotlaauwmjfofqr` int DEFAULT NULL,\n `nnrajsnpgkmrxvsawbteqkulkjtgiafe` int DEFAULT NULL,\n `dkhvfxehyksixdwjequfymcjxrpvnepp` int DEFAULT NULL,\n `mlgffufntnwfebtxppyveawesdlorkfd` int DEFAULT NULL,\n `ahitaljlqvrllvbqhbdxgrtmrayswbie` int DEFAULT NULL,\n `gspcyvkxttjqynaubblmxgwzxydetmbc` int DEFAULT NULL,\n `covepcakghsszeawqkgskxnqisuejsmj` int DEFAULT NULL,\n `zkmcahmbrnazvexiptpkxljqoucgmeym` int DEFAULT NULL,\n `eleqayyodzvbwznfgcwpubqvuhlzddnw` int DEFAULT NULL,\n `rjrgtfwcfchiphgkjrmibkoskdpeqrlr` int DEFAULT NULL,\n `koqjdbkbazvqsksbfoqmzquybkxsgtrq` int DEFAULT NULL,\n `hikhihsdrpyupmwnpguyfwffqlhhmxuo` int DEFAULT NULL,\n `bheuvhtqknzjflddhgxkijramrfeivgp` int DEFAULT NULL,\n `rtifgedlqwihdvwubhnsvebgpiaffcij` int DEFAULT NULL,\n `uaxriidejnrydolsozgraiqlqvuheydi` int DEFAULT NULL,\n `soujecbhcrmplviqsodlqtixefjvjwoi` int DEFAULT NULL,\n `swufxsakegjtasoiiwwnckwkhbetwxcp` int DEFAULT NULL,\n `pgcaonrwfkatyfqjywmukxcxdgvznntt` int DEFAULT NULL,\n `ztzdpmrmuqprrhjwoylxqfzppcnebwhy` int DEFAULT NULL,\n `nmpgczbajxhvwhhgrqbltdswhtadtbpl` int DEFAULT NULL,\n `mebgrudgpkhyavogwlmkvxsmgzvyzsjt` int DEFAULT NULL,\n `wrnwluknecysjfgsrfziuobrmhfitksm` int DEFAULT NULL,\n `axuxbgrlgxgtjnbxmygnwoqpgwednzsk` int DEFAULT NULL,\n `yfcvatzrbbursxhtbhiusnquavjoyqyq` int DEFAULT NULL,\n `mejmdrrzganvkaknsmdqrvegfxkqxqbk` int DEFAULT NULL,\n `celgxjyheaaytlkvboqzosnidlciigqo` int DEFAULT NULL,\n `rpoomjrzanwelwtevgaqnumdcbpstabd` int DEFAULT NULL,\n `uwpztjnhfzhwndrzsanchzimwzlvqnzc` int DEFAULT NULL,\n `fstybjzkgbgazgaipvhqnjpyuhbivyba` int DEFAULT NULL,\n `rzslmsphbkwabcrkaduolsbxdfblermn` int DEFAULT NULL,\n `bmtcgxlhibscricgmcgrmmccuajwcbui` int DEFAULT NULL,\n `vkftuvuenftljezfholjbixqydlkezoi` int DEFAULT NULL,\n `mjnjhdaocoldsbqrlbswtddpqxsroyhd` int DEFAULT NULL,\n `iyanxewcdpincvhptbtjygimoupgqzlp` int DEFAULT NULL,\n `pcyfnvtoakyeiwfgywcilccptxlgdbxo` int DEFAULT NULL,\n PRIMARY KEY (`zjtuehwyypagpzlzwnpphpxldvgylujb`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"dmpkfkxwkhuajbllpqhimtoiumvecdvq\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["zjtuehwyypagpzlzwnpphpxldvgylujb"],"columns":[{"name":"zjtuehwyypagpzlzwnpphpxldvgylujb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"gcjheqzkzuppkbzjxxnverpjdwueiynu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"apybrwrvgzvyflznsvoprjxwbznavkcz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmhjgkdgfspluzwgwuyygzzlpmsznvcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tdxfyxbmdaahmxyowaxlszatbmvalgqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkkumatjsyjtwaegiwuyorcfhwinrauq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evphojdmeamxxyvqtbpdzgfewgmgupdo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvmepioowcundmjjkkshvfmwkcprhxam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gprzrfebyaqjntvwsqkadfaovcafsefz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vndezvlgefmazsxepjgfhnaslszwyeok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hgzrztwkmuaijszxkmwjiiztdyhznucx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yllopfcovygaarqypreombodsfcecenj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sgghgoshqzgvpsxivzkjsmiofojggzbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xrfxfdhgwvckjkfcawyrgieaykeqcdta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvzwqxxhvxbfttjbyetzfbyfixujbply","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgkskkvkkoldwodfaayzllrqlwtkmvww","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ruzrfdybcnkbpzamhygyonffrxeifsex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxifldvgzcchcceefvgmpcwbkxqhzuxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhlxrgnqgeliistoupqxuolmcjowfynq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikxvxogbbdjaavlmhvzdczgjyhawoyfh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbrqmxyakgfsuaizgzznoobqfowsiztn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ameeyaldlcgvidaqarpinhndlhrqvgqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"luznilvyyeftvoyggiqnjlazhwanfeca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fuyyjlkglyoyzoqhfdukgpzfzivxmzvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"maphviwgcmfmysgnqpvmhykbltbfgfka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"okghpnnumyxgndjpmlmulmczmlwjzbht","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tzpaxutpojoayhgtpzubzplgvnxbvxnv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxymegykxwvevuupsbbatnhuhljyrihc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntxstrsrsxjbnmajxahunncvifnasiva","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvcnrgiikhttggbgphxwtwxyacmqotte","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uynpfvxhtyloywulvxcrgzoqxiipxuem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jflnucfhorxwmlttmhuzaranzuzxbiji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnxhrmnaluwawitudxflbdyhktwfehkn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwdslzztidcjagrbvfcasqclfxroawzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"usvzcgvrlduwtywzxsneortqmtwdqwhr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggsronbzoioegtyzqmjpukpckyvnueia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fedecwkaicivgkretnfudmhjsepebdqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqrpxwcemgfwvemcdhxaarhfjkpmmiqa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pcixnjvsmozpayaydgsqfyoqpfgnxftt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvbixeydudtlrmgwqosiksdgdrsvdbor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvbvhbvopcblrlnojhutfjbqrvomogpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"roospijbiumlynflzsnyowtoojwtribm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjgocspgrhrhgnmapnmeakvkandepwgu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idfakleucgelqgqmgqfrhguqyfagxlcx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjwpohjyfaxukfryycfmxlfsvlhhzovx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jcxpiqnsjgiznnnvatmwxpgqobkkpzxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujfftxxiztquvnxbulksrgptnzegkrqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbtnhucdgpeqmgheifcjocxjpphahysg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgbtfykggnedxtvvxdknchflgfpmkbdc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hngkfwmpnkbjsdqdoiajjysukmsroifm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbkxijwdglxqkxverhumairvzxedlydw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yomcxpqeuvyoclsunlbibklktowusjvz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnqseewwhhgktucdoptdkxwbakgvobpb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrbirsoljfqgebunbijvlqgpoacqgsld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqpbrbwoissiohpxtmcysdmywaptufbn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"odrbpyitsmdlbkosvkfiziorngdhmiqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uuxygcplhznsnosgizseuxqsorthramo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmukvliggjjjmnjciquindromcywozgj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"irwejibuulpesfpbdzfcaztnpdbjxmrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehyvafwrldgpidhzzwglqvnxgndwrdhv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wabnyhpqwmccemopaolrmogifqhidgpu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfizqjhnwsnbdoesacnjbxkmcqpxnruw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbaxdrhrnxsndcjiylkiixitpabainop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jxcfvkfnqfembskukcmshjubvceckkcn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kqrmahhdvuvzgeretjxlzritprajfqls","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zkylpbxwgpikvurjsgotlaauwmjfofqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nnrajsnpgkmrxvsawbteqkulkjtgiafe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkhvfxehyksixdwjequfymcjxrpvnepp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mlgffufntnwfebtxppyveawesdlorkfd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ahitaljlqvrllvbqhbdxgrtmrayswbie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gspcyvkxttjqynaubblmxgwzxydetmbc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"covepcakghsszeawqkgskxnqisuejsmj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zkmcahmbrnazvexiptpkxljqoucgmeym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eleqayyodzvbwznfgcwpubqvuhlzddnw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjrgtfwcfchiphgkjrmibkoskdpeqrlr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"koqjdbkbazvqsksbfoqmzquybkxsgtrq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hikhihsdrpyupmwnpguyfwffqlhhmxuo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bheuvhtqknzjflddhgxkijramrfeivgp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rtifgedlqwihdvwubhnsvebgpiaffcij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uaxriidejnrydolsozgraiqlqvuheydi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"soujecbhcrmplviqsodlqtixefjvjwoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swufxsakegjtasoiiwwnckwkhbetwxcp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgcaonrwfkatyfqjywmukxcxdgvznntt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ztzdpmrmuqprrhjwoylxqfzppcnebwhy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmpgczbajxhvwhhgrqbltdswhtadtbpl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mebgrudgpkhyavogwlmkvxsmgzvyzsjt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wrnwluknecysjfgsrfziuobrmhfitksm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axuxbgrlgxgtjnbxmygnwoqpgwednzsk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfcvatzrbbursxhtbhiusnquavjoyqyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mejmdrrzganvkaknsmdqrvegfxkqxqbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"celgxjyheaaytlkvboqzosnidlciigqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpoomjrzanwelwtevgaqnumdcbpstabd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uwpztjnhfzhwndrzsanchzimwzlvqnzc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fstybjzkgbgazgaipvhqnjpyuhbivyba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzslmsphbkwabcrkaduolsbxdfblermn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bmtcgxlhibscricgmcgrmmccuajwcbui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkftuvuenftljezfholjbixqydlkezoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjnjhdaocoldsbqrlbswtddpqxsroyhd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iyanxewcdpincvhptbtjygimoupgqzlp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pcyfnvtoakyeiwfgywcilccptxlgdbxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667455,"databaseName":"models_schema","ddl":"CREATE TABLE `eckmzheculilvvtgddqoabqhmblwjros` (\n `aobaekfsyueekamdxjxbeiphmibzzgqx` int NOT NULL,\n `dkqtvzvzwuifugpwigcdktysrfqjonzr` int DEFAULT NULL,\n `xsbtmmdtwppelplvehucqoufyyqmpuig` int DEFAULT NULL,\n `bjiiepcdflkptgsrknubhcixyfejaxqw` int DEFAULT NULL,\n `qdqwgfmpsmyfnriywuqydopiwymkzzvs` int DEFAULT NULL,\n `dqlpifghzewwfsjxmfkoiyplhkfstown` int DEFAULT NULL,\n `pfqdkzslcqfpepkdgucrtbxfovnvksrq` int DEFAULT NULL,\n `xvfemiajgmqrhzsiruvpnkqioutmavkw` int DEFAULT NULL,\n `bvzozhbguflmowstjxycfffkrmdkxbgb` int DEFAULT NULL,\n `yjlwwesyfzbkaoopgyxjejetrnxevnes` int DEFAULT NULL,\n `zjfzhtsjvjcytmnogvqwulbozzlwdhmu` int DEFAULT NULL,\n `pvcpvkqqvpxhdcgsksxztuqehnbdqlfx` int DEFAULT NULL,\n `skvmosszncsqzbybvxkmezrntfefwnkt` int DEFAULT NULL,\n `hlkiksauhgiacyqgeuqhzsaqisdlepxs` int DEFAULT NULL,\n `zugdudyyzqwtqmubrzxspyhcqkrwyhar` int DEFAULT NULL,\n `cqztzouepxwnrwhauglaljpywwxjbiom` int DEFAULT NULL,\n `tbrnkudjdtdrjitwbmrdqteabstopfzb` int DEFAULT NULL,\n `mxzskyktmugjfjzytbxcauvitcnivblr` int DEFAULT NULL,\n `eyucbsuybllylujuqddvvzibnzgezkfi` int DEFAULT NULL,\n `pmupnghusgafpmdizmdcohobvkylwixk` int DEFAULT NULL,\n `iaialuzdqwvraytksdfgopgyahrwbxmj` int DEFAULT NULL,\n `wuznltrvzabiikvmfmssvgliwrgxigfu` int DEFAULT NULL,\n `mzpqdgnixaurgvigzznurxxcvsqriolu` int DEFAULT NULL,\n `oitgcoucaazagoaslcxyhjbevckbsxrc` int DEFAULT NULL,\n `pchrnemgkglwvsxhlclsyjzsjyccylki` int DEFAULT NULL,\n `pzbiqwryzkxootxelvyyemqtuqywxdud` int DEFAULT NULL,\n `dbcyzaukwodiueuquzvblhcrfcckiqtj` int DEFAULT NULL,\n `pnudhwzgegfzjulladkkcwqqzgtimdvw` int DEFAULT NULL,\n `wesgszpyyjphshtgsnnlilhkibrcjslb` int DEFAULT NULL,\n `jwapdjhpjvbeoncnnsyglfutrjebagnb` int DEFAULT NULL,\n `oquuzqbcssljhjwjuspgzwojrlovhvan` int DEFAULT NULL,\n `atoggaobeswsvzmlqgvtlrvuszpuhyux` int DEFAULT NULL,\n `qtevpnpmzbjkdltdldwdtsegiitwlucz` int DEFAULT NULL,\n `ovgptouoasxwamiikxatkwwteivoacqy` int DEFAULT NULL,\n `itzipwbbscchugfdrmhqbcrospkavnaq` int DEFAULT NULL,\n `dndwqqrpuassjooknhkhibroywpcutwq` int DEFAULT NULL,\n `hvvwibbxhurzzsqbesbfwhoincohplcp` int DEFAULT NULL,\n `jdadydrfsznzhkdsnrbrkjqieuiyeeiq` int DEFAULT NULL,\n `xphkgziwneegecaghatqpwugbuudholg` int DEFAULT NULL,\n `vlmtmnsqzqhusfzouaghsijxexroqkso` int DEFAULT NULL,\n `iikkxaiwfdltunqzjhdrqzujvmforedv` int DEFAULT NULL,\n `lzpsiormoqvmeqksmasdpljzwydyffyw` int DEFAULT NULL,\n `bnphfsbbkwnobajiurbqlrxztaurazhd` int DEFAULT NULL,\n `fhkttybonmuwiihhkmntkgwpolfizgxx` int DEFAULT NULL,\n `nlmrhtujeoyegbjvuajtotnfjwmjcpfn` int DEFAULT NULL,\n `qrhlfjdornclnagnlecjrpwyqszxtwyn` int DEFAULT NULL,\n `jxefhzmautsieayeymfjfkgqyudnpupy` int DEFAULT NULL,\n `avrcfkilhhxxfsvifrypwqiznozqddvb` int DEFAULT NULL,\n `splbdweqnizjxhyzenhprutolmhdrdes` int DEFAULT NULL,\n `bonkvkrfwdkbyhvtskiejdoijgfvdbwg` int DEFAULT NULL,\n `ovddtmjbdmfthybybcnlntjddvsluyxo` int DEFAULT NULL,\n `genbxwvfsrfemwzslnrkaoyuhgrsywes` int DEFAULT NULL,\n `shqmwaptfyozwytpsuxnwifteafkgunw` int DEFAULT NULL,\n `kuledpqqkldoormvhmcdehwmubjeyihu` int DEFAULT NULL,\n `rxmwonudwdrmzgzliwiagzucdifjezfn` int DEFAULT NULL,\n `apimrixpckwusomrrfxquftknuuekqqc` int DEFAULT NULL,\n `caoueyukivqwpdmjnimvptclmavcmcdu` int DEFAULT NULL,\n `taqiqnczwhgrdqwlfoaabzkipbahoatk` int DEFAULT NULL,\n `nwmzycsuvptwfwtprgnmzredyfmltyre` int DEFAULT NULL,\n `tszuewpulebudsxbjgcvzuokhxrbjzns` int DEFAULT NULL,\n `hldyusmehivscwhngchomomdaliauazk` int DEFAULT NULL,\n `deaynzcbfiqhwoqhawvlkcnnjfubgriw` int DEFAULT NULL,\n `frpdcdgrdfrfzwqpeewmhsmezlyhypui` int DEFAULT NULL,\n `lgqtegedobiqytytsvxzfgjhifymoubq` int DEFAULT NULL,\n `xwgdpzpwpyjigivylvauwvuulbjnifsr` int DEFAULT NULL,\n `ulilvlfszifivwnwfjmyipzvizeyombg` int DEFAULT NULL,\n `ftgfincpcxujzbzhaxmooreptqvugccx` int DEFAULT NULL,\n `itriwpdzndururdvymqwjaqqzqgtaacs` int DEFAULT NULL,\n `udyfsdnllyaqavxywshcgkwtwdoyfelc` int DEFAULT NULL,\n `hqjbfpqeujejbzlajknszohklpjtnqbt` int DEFAULT NULL,\n `rfbvukliirkprjesivwsooowzjesdrhf` int DEFAULT NULL,\n `htehhbupcxtjhfatmuyzmugtaofejgql` int DEFAULT NULL,\n `tlpbbszrflobbzplraxogljezdlbupmq` int DEFAULT NULL,\n `rdgcygbmgyyxpfjjwrmumabpjbehwtbh` int DEFAULT NULL,\n `njcurshoydvzzliquaqsmpbxyaqunlrr` int DEFAULT NULL,\n `zcyxwxlrknqaqwvvhnhzuzkacltunxvo` int DEFAULT NULL,\n `ggjxxnnnwokmkwcgohggxbiaumkoeukp` int DEFAULT NULL,\n `cwxgthtkgnsgvaqxmpgsuphupymiemhg` int DEFAULT NULL,\n `idrhicxrguomttnjpgnpqysvzvzuinqh` int DEFAULT NULL,\n `zpmjucqmsgqcqlappsveiqudsvygvbht` int DEFAULT NULL,\n `fbnxmzjmwwxpvajzsmmpixpbxadqtwim` int DEFAULT NULL,\n `tqcfsmbagnazlsqgvsvaqnmzvxgmuhvo` int DEFAULT NULL,\n `ushkfgtvszuztwuudgypvbwlyfoofgio` int DEFAULT NULL,\n `gfdoxzlqhlsfvtdeegywsddvabnliyzc` int DEFAULT NULL,\n `ufmjhuepkibwaaxptcvyhtcnlfoxyida` int DEFAULT NULL,\n `utkgxlmvcsvyqjzyixayszznjqiaehvo` int DEFAULT NULL,\n `bbxmnpfibuyfrblfqgrzbcipijflewft` int DEFAULT NULL,\n `lgmzvnuluzdtacpoyqpibrbafutppwom` int DEFAULT NULL,\n `tqyniovsdxrnewoitkrkldusdxnumrjz` int DEFAULT NULL,\n `ikrejkwgncnvtvwzexerraajpmfexxqo` int DEFAULT NULL,\n `yymvkqqhpsdwnuxygyvftraidaaifzti` int DEFAULT NULL,\n `vedabqfhwmevreowbgsurkmpxtklbsvl` int DEFAULT NULL,\n `isqcrrhkuraawkkiaddqobgrbdcjwedo` int DEFAULT NULL,\n `wglnonqbgmryjqyjvdcpnosorqtyprwz` int DEFAULT NULL,\n `znlnqcxeogrrxcnisgkzmtmtndkpsarw` int DEFAULT NULL,\n `mmuuljfrjwfbrebytodwlvtaqqzptjfu` int DEFAULT NULL,\n `hyzycrzvwesyedcamfiwbcdngxsjljwz` int DEFAULT NULL,\n `tlgqblolgtobazjlcfcnyjchgfzecvwa` int DEFAULT NULL,\n `wqtprgnbbjqmwjusbbuxafwrlywufnaf` int DEFAULT NULL,\n `martixaktikcukgksjxowztjznkevbur` int DEFAULT NULL,\n PRIMARY KEY (`aobaekfsyueekamdxjxbeiphmibzzgqx`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"eckmzheculilvvtgddqoabqhmblwjros\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["aobaekfsyueekamdxjxbeiphmibzzgqx"],"columns":[{"name":"aobaekfsyueekamdxjxbeiphmibzzgqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"dkqtvzvzwuifugpwigcdktysrfqjonzr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsbtmmdtwppelplvehucqoufyyqmpuig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjiiepcdflkptgsrknubhcixyfejaxqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdqwgfmpsmyfnriywuqydopiwymkzzvs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqlpifghzewwfsjxmfkoiyplhkfstown","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pfqdkzslcqfpepkdgucrtbxfovnvksrq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvfemiajgmqrhzsiruvpnkqioutmavkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvzozhbguflmowstjxycfffkrmdkxbgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjlwwesyfzbkaoopgyxjejetrnxevnes","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjfzhtsjvjcytmnogvqwulbozzlwdhmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pvcpvkqqvpxhdcgsksxztuqehnbdqlfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skvmosszncsqzbybvxkmezrntfefwnkt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlkiksauhgiacyqgeuqhzsaqisdlepxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zugdudyyzqwtqmubrzxspyhcqkrwyhar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqztzouepxwnrwhauglaljpywwxjbiom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbrnkudjdtdrjitwbmrdqteabstopfzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mxzskyktmugjfjzytbxcauvitcnivblr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eyucbsuybllylujuqddvvzibnzgezkfi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmupnghusgafpmdizmdcohobvkylwixk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iaialuzdqwvraytksdfgopgyahrwbxmj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wuznltrvzabiikvmfmssvgliwrgxigfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzpqdgnixaurgvigzznurxxcvsqriolu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oitgcoucaazagoaslcxyhjbevckbsxrc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pchrnemgkglwvsxhlclsyjzsjyccylki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pzbiqwryzkxootxelvyyemqtuqywxdud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbcyzaukwodiueuquzvblhcrfcckiqtj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnudhwzgegfzjulladkkcwqqzgtimdvw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wesgszpyyjphshtgsnnlilhkibrcjslb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwapdjhpjvbeoncnnsyglfutrjebagnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oquuzqbcssljhjwjuspgzwojrlovhvan","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atoggaobeswsvzmlqgvtlrvuszpuhyux","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtevpnpmzbjkdltdldwdtsegiitwlucz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovgptouoasxwamiikxatkwwteivoacqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itzipwbbscchugfdrmhqbcrospkavnaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dndwqqrpuassjooknhkhibroywpcutwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hvvwibbxhurzzsqbesbfwhoincohplcp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdadydrfsznzhkdsnrbrkjqieuiyeeiq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xphkgziwneegecaghatqpwugbuudholg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vlmtmnsqzqhusfzouaghsijxexroqkso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iikkxaiwfdltunqzjhdrqzujvmforedv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lzpsiormoqvmeqksmasdpljzwydyffyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnphfsbbkwnobajiurbqlrxztaurazhd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhkttybonmuwiihhkmntkgwpolfizgxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nlmrhtujeoyegbjvuajtotnfjwmjcpfn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qrhlfjdornclnagnlecjrpwyqszxtwyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jxefhzmautsieayeymfjfkgqyudnpupy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avrcfkilhhxxfsvifrypwqiznozqddvb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"splbdweqnizjxhyzenhprutolmhdrdes","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bonkvkrfwdkbyhvtskiejdoijgfvdbwg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovddtmjbdmfthybybcnlntjddvsluyxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"genbxwvfsrfemwzslnrkaoyuhgrsywes","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shqmwaptfyozwytpsuxnwifteafkgunw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kuledpqqkldoormvhmcdehwmubjeyihu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxmwonudwdrmzgzliwiagzucdifjezfn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"apimrixpckwusomrrfxquftknuuekqqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"caoueyukivqwpdmjnimvptclmavcmcdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"taqiqnczwhgrdqwlfoaabzkipbahoatk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nwmzycsuvptwfwtprgnmzredyfmltyre","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tszuewpulebudsxbjgcvzuokhxrbjzns","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hldyusmehivscwhngchomomdaliauazk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"deaynzcbfiqhwoqhawvlkcnnjfubgriw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"frpdcdgrdfrfzwqpeewmhsmezlyhypui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgqtegedobiqytytsvxzfgjhifymoubq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xwgdpzpwpyjigivylvauwvuulbjnifsr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ulilvlfszifivwnwfjmyipzvizeyombg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftgfincpcxujzbzhaxmooreptqvugccx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itriwpdzndururdvymqwjaqqzqgtaacs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udyfsdnllyaqavxywshcgkwtwdoyfelc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqjbfpqeujejbzlajknszohklpjtnqbt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfbvukliirkprjesivwsooowzjesdrhf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"htehhbupcxtjhfatmuyzmugtaofejgql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlpbbszrflobbzplraxogljezdlbupmq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdgcygbmgyyxpfjjwrmumabpjbehwtbh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njcurshoydvzzliquaqsmpbxyaqunlrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zcyxwxlrknqaqwvvhnhzuzkacltunxvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggjxxnnnwokmkwcgohggxbiaumkoeukp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwxgthtkgnsgvaqxmpgsuphupymiemhg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idrhicxrguomttnjpgnpqysvzvzuinqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zpmjucqmsgqcqlappsveiqudsvygvbht","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbnxmzjmwwxpvajzsmmpixpbxadqtwim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqcfsmbagnazlsqgvsvaqnmzvxgmuhvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ushkfgtvszuztwuudgypvbwlyfoofgio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfdoxzlqhlsfvtdeegywsddvabnliyzc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ufmjhuepkibwaaxptcvyhtcnlfoxyida","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utkgxlmvcsvyqjzyixayszznjqiaehvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbxmnpfibuyfrblfqgrzbcipijflewft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgmzvnuluzdtacpoyqpibrbafutppwom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqyniovsdxrnewoitkrkldusdxnumrjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikrejkwgncnvtvwzexerraajpmfexxqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yymvkqqhpsdwnuxygyvftraidaaifzti","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vedabqfhwmevreowbgsurkmpxtklbsvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"isqcrrhkuraawkkiaddqobgrbdcjwedo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wglnonqbgmryjqyjvdcpnosorqtyprwz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znlnqcxeogrrxcnisgkzmtmtndkpsarw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmuuljfrjwfbrebytodwlvtaqqzptjfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hyzycrzvwesyedcamfiwbcdngxsjljwz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlgqblolgtobazjlcfcnyjchgfzecvwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqtprgnbbjqmwjusbbuxafwrlywufnaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"martixaktikcukgksjxowztjznkevbur","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667486,"databaseName":"models_schema","ddl":"CREATE TABLE `edtpgezoafwesgnsrttenofpfwbgvskp` (\n `zvpjkhkvjtxztpblvsgazlosvusscllc` int NOT NULL,\n `zdklckultrzwkfvmpugotjyaipsfiptg` int DEFAULT NULL,\n `ivylmpqpyvxchnbmoljcvchlsaiybbyx` int DEFAULT NULL,\n `pdopxrofftqgdvadnuyipioiwrqnxdas` int DEFAULT NULL,\n `qpnwvpywysisoohxlkenvwrahafbamil` int DEFAULT NULL,\n `sgbderncbhezgndbfpuvtqatnmrojlkw` int DEFAULT NULL,\n `dzifaxtmfjatlapmswbjoewfrceqzkek` int DEFAULT NULL,\n `oonmrctqnfqvsuizldbkcsedrntjzvzg` int DEFAULT NULL,\n `vnnpqqorljagslbrgzjuktbifigcqzro` int DEFAULT NULL,\n `cfdqyybbgnbmzlczvsxuzafydabwxvbg` int DEFAULT NULL,\n `qmtryldmcpvoaakdncufwkeldwyuycev` int DEFAULT NULL,\n `pysscugogxxznpafkkghiolvbzlurrfy` int DEFAULT NULL,\n `jqkueodpglnpqyhnxvnnpgkecklitosk` int DEFAULT NULL,\n `lqiuhmwiqlhxvgkwdrhhwaqggdjltyfl` int DEFAULT NULL,\n `xeylmnuydbtqsooifaifmyptjvuakple` int DEFAULT NULL,\n `awjfnjsufajbkkqbhjgqqfsqdfxajlcn` int DEFAULT NULL,\n `dpiuywunxrjvhruxovnkkmkmsjmkkrzc` int DEFAULT NULL,\n `uzuhgyohpfpaumcswddrctrwlunqncke` int DEFAULT NULL,\n `bpusvkzvsrksktdtwusoutslyefiscde` int DEFAULT NULL,\n `azfgmdirttukeibezazlrotxfugzbrki` int DEFAULT NULL,\n `otltgwkbfzsdciqqbfuycmvsosrbplbl` int DEFAULT NULL,\n `pglgclyppdboxvryyswffcsstqdliina` int DEFAULT NULL,\n `zxrrfpokanqubtwqxzewanklkomzaisd` int DEFAULT NULL,\n `sciugrkumvorbpsmyiozqlqwovzcswml` int DEFAULT NULL,\n `fpmsumsoawozgnmkueeawvmlqyfygobv` int DEFAULT NULL,\n `apmxruvpkhslsvgjvkkxfpvbemhjikmc` int DEFAULT NULL,\n `sielvnvxsepaozuzxkarbkitbpgpracn` int DEFAULT NULL,\n `redrdccnjxdazlzaogbdluvixrwngpos` int DEFAULT NULL,\n `kfvhqfamskybejeswqbnxiusgnasqhqk` int DEFAULT NULL,\n `hkqqiccvfwleopezhhybmgdwiseryhcm` int DEFAULT NULL,\n `vqobmyvbhryxfnxthzhfquxtfkxdobue` int DEFAULT NULL,\n `chsmobaqkhageonbzulxnmrmttjxnujd` int DEFAULT NULL,\n `pmgpdynsxmbycijzceqiusorhiztzxwc` int DEFAULT NULL,\n `glfazpgvxwpakplatefspjqmukroedsp` int DEFAULT NULL,\n `ixhogpthnaoaqsjwkcaivzvlbbfrrdac` int DEFAULT NULL,\n `mcjpwefvguvxolbpmnsspjytwetqvhil` int DEFAULT NULL,\n `uxkxscseudvowysjznltuckxjdjkfkyx` int DEFAULT NULL,\n `wypmrkejfxsxxwkpgxtubrhwcbbtcudh` int DEFAULT NULL,\n `xjcpksfcwexyuduqdfghqxglzqhksall` int DEFAULT NULL,\n `qkxowitgozsrjsxkxbxoxrtiupdphttz` int DEFAULT NULL,\n `tpqcezwmoygwssscuhcfhcmtvewzsslm` int DEFAULT NULL,\n `hjfrbrulcnsvusgebsntowvauiymslpe` int DEFAULT NULL,\n `kbjifigutikamlyorwdvhpsccoiwondr` int DEFAULT NULL,\n `ykuenqxzukyvuxibrirvfcvttyfujpmt` int DEFAULT NULL,\n `mnxkaojhuosbljrogspmgkpvrjhdpxvu` int DEFAULT NULL,\n `ptyssdbkcjrwtssfhwoxgjdidicgxder` int DEFAULT NULL,\n `ytyzejpqmoldxvnvjkoievfibnxdvdrv` int DEFAULT NULL,\n `qropcjndusxaelwthwnxgiqtvtabveox` int DEFAULT NULL,\n `sxsyleqgqnzhelbtmipglfyxigooaojs` int DEFAULT NULL,\n `gsudijtaehdxrzubphtckvgzegigcohb` int DEFAULT NULL,\n `prwfgveqjuenyvekksutzbnbnnuhbqga` int DEFAULT NULL,\n `oyardjenltbrdusukdejputywqncrnzd` int DEFAULT NULL,\n `wgajcqqlzhzzkhfdajjqfwxuvctcslvo` int DEFAULT NULL,\n `tmirrakdyoaxzwfpczezlkfdlhovqtjm` int DEFAULT NULL,\n `ebkqcjgwgjonxypkvmzdfsfqskxrrzfx` int DEFAULT NULL,\n `xawnzxgyikuirebxdnoyqjmyqvoiqrxe` int DEFAULT NULL,\n `mumtqsxsaqaxikznbfrwabdoounxxsxh` int DEFAULT NULL,\n `cuyjzutlacjrfluwothqjixxcpblmqds` int DEFAULT NULL,\n `zagfhicjxrtqwiwnymnlnvizihxsvfxv` int DEFAULT NULL,\n `zrnwlwspqifpopshptucvnvafanzwwwx` int DEFAULT NULL,\n `sysvvbnliazmvgsidhoqmreayqjhllpl` int DEFAULT NULL,\n `tpkqpewsotauvnouctqperowiklfpgyg` int DEFAULT NULL,\n `gbcjfqexoerhlepzvdoucjwcofejhtpb` int DEFAULT NULL,\n `yiketlgdvgtjryuwfekbmgqhhnrxeqxx` int DEFAULT NULL,\n `hhqpzplfytarkjpycgxgybkfiwsbimwl` int DEFAULT NULL,\n `vvkhntrwittvwpyphgloflyzlwehdoqo` int DEFAULT NULL,\n `jfcmjtaxvfilnynghkgfqtrkczsyofka` int DEFAULT NULL,\n `bxlefsfzkpbsuvvvkojgxbtzypwkafsm` int DEFAULT NULL,\n `hexbfebvzuzszguzqzupainshidrvnoc` int DEFAULT NULL,\n `cfxivyftlxcwctiaanvxzbjalpqbnswo` int DEFAULT NULL,\n `smxbqrtchtrgyecncfkbieotnprrelgc` int DEFAULT NULL,\n `srltkspmznjaduhplvnpeyathoixaewu` int DEFAULT NULL,\n `yfnmuzeyfzrtjbnvyczyonpyjjjwlmap` int DEFAULT NULL,\n `soeukimzbfsonrbxpdnqwhgezhaoorrg` int DEFAULT NULL,\n `jjauezjddinlhfkbzoqtvqiedripcowq` int DEFAULT NULL,\n `yncnuiygxfdbhtdauwkxzxugdgkumtdv` int DEFAULT NULL,\n `teqqrbrobybepkdrtazcwdzeqaywkqsk` int DEFAULT NULL,\n `divncvwvshwtirbttzcfqoynwzluzkki` int DEFAULT NULL,\n `uyshxhzkjrdlkravqvdrtpjyspwlcgdh` int DEFAULT NULL,\n `aepeiegfwuijihhdljzcmiihaembrcge` int DEFAULT NULL,\n `xltmvrpfgctyzemlbqvfgmaqfxynvngu` int DEFAULT NULL,\n `eginziknrpbfyljyibxvsnrzshmqejyt` int DEFAULT NULL,\n `uujdvzxpebpsjptbdyepujgshefzyibd` int DEFAULT NULL,\n `itfjsalqedxezcggfeueynuzzgrqmhhc` int DEFAULT NULL,\n `nflbtkdnyfmmusdsesilrzntlvvyjpqs` int DEFAULT NULL,\n `wwnefbyurngctwyootfbexazbzfdfksk` int DEFAULT NULL,\n `lovllwzxglfrfeceadczeydxbhjccude` int DEFAULT NULL,\n `ygtsepdcsogipmavtlwsmgkymswefjfv` int DEFAULT NULL,\n `fbbjqfskdnzyvzchtadqenjtdytpkrii` int DEFAULT NULL,\n `venljjypjcpuzrtjgwrjfaxdrprbamjm` int DEFAULT NULL,\n `osuygpuyosslyumklrfzuuooxndivaop` int DEFAULT NULL,\n `qktakxrsgvdqckwzjblwfsebuiqfapec` int DEFAULT NULL,\n `pewrweuuxhgkfvabmkrdhjyhbtndvebg` int DEFAULT NULL,\n `pwbxgbnmpteybgzwvqmpqpiaxpvaxpyk` int DEFAULT NULL,\n `fpepvshltrwhrjslpurorqzmvvlgzeip` int DEFAULT NULL,\n `gqkaeeyinqurgorewsgyjvcgwuwfmygb` int DEFAULT NULL,\n `oprswzamxjyebzgqdajjcgbdqhfcrddt` int DEFAULT NULL,\n `mgxzsxyicfcwhksxfrwepwbfhwsocnpf` int DEFAULT NULL,\n `ftjrjctiaidnetswkgbdtfyhjdhqjdkw` int DEFAULT NULL,\n `znyoqrmzxwridexxmnrfmifcckldljgj` int DEFAULT NULL,\n PRIMARY KEY (`zvpjkhkvjtxztpblvsgazlosvusscllc`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"edtpgezoafwesgnsrttenofpfwbgvskp\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["zvpjkhkvjtxztpblvsgazlosvusscllc"],"columns":[{"name":"zvpjkhkvjtxztpblvsgazlosvusscllc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"zdklckultrzwkfvmpugotjyaipsfiptg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivylmpqpyvxchnbmoljcvchlsaiybbyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdopxrofftqgdvadnuyipioiwrqnxdas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qpnwvpywysisoohxlkenvwrahafbamil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sgbderncbhezgndbfpuvtqatnmrojlkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dzifaxtmfjatlapmswbjoewfrceqzkek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oonmrctqnfqvsuizldbkcsedrntjzvzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vnnpqqorljagslbrgzjuktbifigcqzro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfdqyybbgnbmzlczvsxuzafydabwxvbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmtryldmcpvoaakdncufwkeldwyuycev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pysscugogxxznpafkkghiolvbzlurrfy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jqkueodpglnpqyhnxvnnpgkecklitosk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqiuhmwiqlhxvgkwdrhhwaqggdjltyfl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xeylmnuydbtqsooifaifmyptjvuakple","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awjfnjsufajbkkqbhjgqqfsqdfxajlcn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpiuywunxrjvhruxovnkkmkmsjmkkrzc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzuhgyohpfpaumcswddrctrwlunqncke","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bpusvkzvsrksktdtwusoutslyefiscde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"azfgmdirttukeibezazlrotxfugzbrki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otltgwkbfzsdciqqbfuycmvsosrbplbl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pglgclyppdboxvryyswffcsstqdliina","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxrrfpokanqubtwqxzewanklkomzaisd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sciugrkumvorbpsmyiozqlqwovzcswml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpmsumsoawozgnmkueeawvmlqyfygobv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"apmxruvpkhslsvgjvkkxfpvbemhjikmc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sielvnvxsepaozuzxkarbkitbpgpracn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"redrdccnjxdazlzaogbdluvixrwngpos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfvhqfamskybejeswqbnxiusgnasqhqk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkqqiccvfwleopezhhybmgdwiseryhcm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqobmyvbhryxfnxthzhfquxtfkxdobue","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"chsmobaqkhageonbzulxnmrmttjxnujd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmgpdynsxmbycijzceqiusorhiztzxwc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"glfazpgvxwpakplatefspjqmukroedsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixhogpthnaoaqsjwkcaivzvlbbfrrdac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcjpwefvguvxolbpmnsspjytwetqvhil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxkxscseudvowysjznltuckxjdjkfkyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wypmrkejfxsxxwkpgxtubrhwcbbtcudh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjcpksfcwexyuduqdfghqxglzqhksall","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qkxowitgozsrjsxkxbxoxrtiupdphttz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpqcezwmoygwssscuhcfhcmtvewzsslm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjfrbrulcnsvusgebsntowvauiymslpe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kbjifigutikamlyorwdvhpsccoiwondr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykuenqxzukyvuxibrirvfcvttyfujpmt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnxkaojhuosbljrogspmgkpvrjhdpxvu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ptyssdbkcjrwtssfhwoxgjdidicgxder","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytyzejpqmoldxvnvjkoievfibnxdvdrv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qropcjndusxaelwthwnxgiqtvtabveox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sxsyleqgqnzhelbtmipglfyxigooaojs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gsudijtaehdxrzubphtckvgzegigcohb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prwfgveqjuenyvekksutzbnbnnuhbqga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oyardjenltbrdusukdejputywqncrnzd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wgajcqqlzhzzkhfdajjqfwxuvctcslvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmirrakdyoaxzwfpczezlkfdlhovqtjm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebkqcjgwgjonxypkvmzdfsfqskxrrzfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xawnzxgyikuirebxdnoyqjmyqvoiqrxe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mumtqsxsaqaxikznbfrwabdoounxxsxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cuyjzutlacjrfluwothqjixxcpblmqds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zagfhicjxrtqwiwnymnlnvizihxsvfxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zrnwlwspqifpopshptucvnvafanzwwwx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sysvvbnliazmvgsidhoqmreayqjhllpl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpkqpewsotauvnouctqperowiklfpgyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gbcjfqexoerhlepzvdoucjwcofejhtpb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yiketlgdvgtjryuwfekbmgqhhnrxeqxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhqpzplfytarkjpycgxgybkfiwsbimwl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vvkhntrwittvwpyphgloflyzlwehdoqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jfcmjtaxvfilnynghkgfqtrkczsyofka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bxlefsfzkpbsuvvvkojgxbtzypwkafsm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hexbfebvzuzszguzqzupainshidrvnoc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfxivyftlxcwctiaanvxzbjalpqbnswo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smxbqrtchtrgyecncfkbieotnprrelgc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"srltkspmznjaduhplvnpeyathoixaewu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfnmuzeyfzrtjbnvyczyonpyjjjwlmap","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"soeukimzbfsonrbxpdnqwhgezhaoorrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjauezjddinlhfkbzoqtvqiedripcowq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yncnuiygxfdbhtdauwkxzxugdgkumtdv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"teqqrbrobybepkdrtazcwdzeqaywkqsk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"divncvwvshwtirbttzcfqoynwzluzkki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uyshxhzkjrdlkravqvdrtpjyspwlcgdh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aepeiegfwuijihhdljzcmiihaembrcge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xltmvrpfgctyzemlbqvfgmaqfxynvngu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eginziknrpbfyljyibxvsnrzshmqejyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uujdvzxpebpsjptbdyepujgshefzyibd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itfjsalqedxezcggfeueynuzzgrqmhhc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nflbtkdnyfmmusdsesilrzntlvvyjpqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwnefbyurngctwyootfbexazbzfdfksk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lovllwzxglfrfeceadczeydxbhjccude","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ygtsepdcsogipmavtlwsmgkymswefjfv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbbjqfskdnzyvzchtadqenjtdytpkrii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"venljjypjcpuzrtjgwrjfaxdrprbamjm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"osuygpuyosslyumklrfzuuooxndivaop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qktakxrsgvdqckwzjblwfsebuiqfapec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pewrweuuxhgkfvabmkrdhjyhbtndvebg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwbxgbnmpteybgzwvqmpqpiaxpvaxpyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpepvshltrwhrjslpurorqzmvvlgzeip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqkaeeyinqurgorewsgyjvcgwuwfmygb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oprswzamxjyebzgqdajjcgbdqhfcrddt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mgxzsxyicfcwhksxfrwepwbfhwsocnpf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftjrjctiaidnetswkgbdtfyhjdhqjdkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znyoqrmzxwridexxmnrfmifcckldljgj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667519,"databaseName":"models_schema","ddl":"CREATE TABLE `efltdshxkjahnyuwforbiwbeqptladwm` (\n `bauevokddonrtuktzidwkzduaxonfmis` int NOT NULL,\n `mqeqraszudegjwaqimdlmriiohcyboxf` int DEFAULT NULL,\n `crjupxaexvgkgjakvnirfoksqfhjsino` int DEFAULT NULL,\n `lsoaskvcgbsxxtecmdnjmvcthaeejbhe` int DEFAULT NULL,\n `klmrusstapxiullabhufbsehlsymetvk` int DEFAULT NULL,\n `uzuiirdfbznhwkbblfweuqwpsgxgkhzl` int DEFAULT NULL,\n `mfaewdoiogosvwnuhpowfvkihrxljkaf` int DEFAULT NULL,\n `qvfeaaimaptcgmjfbcqpztipkjueorsj` int DEFAULT NULL,\n `owoeemhxngytxgbzlroirdzssjkyvkge` int DEFAULT NULL,\n `uuwledufthobcsanehihnxxfzegwgtpr` int DEFAULT NULL,\n `emjmpxaizvqiyabhynargzfkzusdnnrw` int DEFAULT NULL,\n `iqqjkvgwjqfgltemacepspqjudgxsjba` int DEFAULT NULL,\n `pvbcpnxdebbkfajfsxqmxklzigqhgtxf` int DEFAULT NULL,\n `ieqwblwijkzsxympoqulovvbifmilhyt` int DEFAULT NULL,\n `eyovelhdfmoyyjotfruqaqyhqnlfnhtt` int DEFAULT NULL,\n `cqobooitnufwieaujbnovewdlincfmym` int DEFAULT NULL,\n `tpoqmyhgxracwxonrwpybpfigzbgsrjl` int DEFAULT NULL,\n `odhghbyxiynbffghqrfpbsgfvcmpzarb` int DEFAULT NULL,\n `qtmzoxuybqynnianiresnmzvglvnyvhf` int DEFAULT NULL,\n `rewvymfutkqejbzgwjscpeammibvfycv` int DEFAULT NULL,\n `hkjcjzhcxzciwxesbywkypnuuahdalap` int DEFAULT NULL,\n `cbsghykvrflyhtqkndxrjfyunzzbjkpl` int DEFAULT NULL,\n `fkldkhcbsfzvgppzupsuczrgtarncmfh` int DEFAULT NULL,\n `qpounvbtlgobxsxuahevdakzmrtzzfyw` int DEFAULT NULL,\n `jpnulacgfzldthqgyfwmwrzkhsfryhws` int DEFAULT NULL,\n `nejbnrokcckukogstltgooobpsccxewj` int DEFAULT NULL,\n `vatkwavskhskawjzhhyzkdrwweqgvhjo` int DEFAULT NULL,\n `kvzditgxgpseoifrgtasagybrisngreq` int DEFAULT NULL,\n `kbfkokaudkuptgtdrwmffybctlwnsfca` int DEFAULT NULL,\n `rpcrmloumzybnxnueoupyngldyqeyzkp` int DEFAULT NULL,\n `jvkzaydhugpqytglkovroqvtfllwmovz` int DEFAULT NULL,\n `retwjfrerwtfalufcfqvrvkqrqdpxndh` int DEFAULT NULL,\n `spqbqntlrvdfwreplwzcjyptuyelddvu` int DEFAULT NULL,\n `kczhwxksnonimimjfvvbjlwrqslpyxrq` int DEFAULT NULL,\n `uyhcnsjkyzcpadhhiovcotfloybwtgpk` int DEFAULT NULL,\n `xwjnisuxbcsnefihzpowobgqnaoerrmu` int DEFAULT NULL,\n `kfefcsieqrqelseqluyssyvvthisawcl` int DEFAULT NULL,\n `pkhwujswheretunjlfgbvuubrfcjgitt` int DEFAULT NULL,\n `ftzhmhzseuhejcayphkdhmjbdtwxwamb` int DEFAULT NULL,\n `sajdoiuotfwrwdvgbvfmryfrjjqhuibd` int DEFAULT NULL,\n `lzxgdizlqtdnxqbmzjkzvbfaacqbhoik` int DEFAULT NULL,\n `ryxozitlhgarbhazomihjpjibknibaos` int DEFAULT NULL,\n `lhomzrywuqmndnggwhzkzkhyckzvfjdg` int DEFAULT NULL,\n `mwaunstjccjedjkivclwervaeskmfdwu` int DEFAULT NULL,\n `lxoenxagjxdygbshaccqkcdjbihwmngz` int DEFAULT NULL,\n `acjaxotzuqttdqxxcqgnaetugeapsixd` int DEFAULT NULL,\n `yxzdoxghfqgvryunfiqvjnfdvzorkekv` int DEFAULT NULL,\n `dcaqmjfboxtpohoyifutjgdslqlxuoke` int DEFAULT NULL,\n `geuialnwryloamusqnbghsksoynfyzux` int DEFAULT NULL,\n `nbwtmnnzbuphhchqzpvprugbzqwdbpen` int DEFAULT NULL,\n `qcdxpsemprqtjshcfdaloberhcpkngot` int DEFAULT NULL,\n `qbdkunbjlfotghlakibkbfmswjfkeavh` int DEFAULT NULL,\n `slodfhorokuvyijoyoeqasrsrjtlztuo` int DEFAULT NULL,\n `jrmkbzocssltjtktygjaievqbggcywtl` int DEFAULT NULL,\n `pdxvdsmuhnloeyqsewcaerupxasmvjil` int DEFAULT NULL,\n `haqtolbvdfpczhflhnzsquszmeuflscm` int DEFAULT NULL,\n `newsdyrnczwvqkcsxqpcqeoxrpuhoisi` int DEFAULT NULL,\n `ulndyypczofdttzzwovxmcxkuboelrvv` int DEFAULT NULL,\n `xnifearcdcuicrjyyjelkaujviurkvgo` int DEFAULT NULL,\n `euavhebyfeiilhobtheknholwaeleotv` int DEFAULT NULL,\n `rubrrqepdpgtmrtcezfhpwisxtwyrvef` int DEFAULT NULL,\n `nyxcarpzrwoxvcxzcylvqlqewyzfcdzf` int DEFAULT NULL,\n `paqiwquqtclwsqrrunxedsrbuhktfhju` int DEFAULT NULL,\n `uicmhfmgrvkqfysrlpsfwierhbzpkjne` int DEFAULT NULL,\n `vslrcpbnptyoksxmyqvfxaezixjfbtpe` int DEFAULT NULL,\n `hriewtfcfjqoezjehaxzuanuzyczrdtr` int DEFAULT NULL,\n `pugakdjxydeaqqligpogqowaxsjfblvw` int DEFAULT NULL,\n `menxlsrzuwydcpricnenhlnypvcdddnc` int DEFAULT NULL,\n `afukkyrdosyvgeafjzkctnqjkmnnboye` int DEFAULT NULL,\n `vruduzsjkgmhiqjkfzptyrtfrtdabfxc` int DEFAULT NULL,\n `pgusjpakjiguzjhedhzxewgeieonuakc` int DEFAULT NULL,\n `lfeikphzhicajqdygrqncugupcsqmefk` int DEFAULT NULL,\n `azoagwmfrfrzxmgkrswbwqkfwvewdqdx` int DEFAULT NULL,\n `pxxhynjweighwsqtdplkdojflhfqppze` int DEFAULT NULL,\n `uyocstwkzjiamagqyzjistnmkdplvgdi` int DEFAULT NULL,\n `dtdbyheqpbwxcqudecvgapkxbrqhgkfu` int DEFAULT NULL,\n `pgfkvsmjeysjruwyawegpkiwpzcdravg` int DEFAULT NULL,\n `jvafdiaararjygytojphpplxkxokgvfn` int DEFAULT NULL,\n `dewaxxsllyoowjwcswcoyqqenqrtnfbc` int DEFAULT NULL,\n `zayvmopulslpfnemsheigzeksayypdku` int DEFAULT NULL,\n `ssytjjdalfxlvoqawvryftfeymxhgjph` int DEFAULT NULL,\n `abyugkrhoynxtqdhajgqhbiaznypgnoo` int DEFAULT NULL,\n `xunizurftcgrhaqbwycnbljzuoybuhnx` int DEFAULT NULL,\n `ipxumcpvkfgfhymhokiqmhfsnqlvxmge` int DEFAULT NULL,\n `sganwwsrekfwsbiqvmcdnskzdgyrbvhg` int DEFAULT NULL,\n `ctvcirlmopauxlddtvyuseitqdvhpknk` int DEFAULT NULL,\n `kcrltmebengfthnlrizsrsuiqyfowixs` int DEFAULT NULL,\n `ituoqgnebhjlptrsturraoygqwcgtcgh` int DEFAULT NULL,\n `giqdpejvnfmmckkuaflgotfuxmutkwle` int DEFAULT NULL,\n `zxproqxolpxdubcccmnufsgjpimjfwyk` int DEFAULT NULL,\n `qfldoprycdjrkjqlbydbvwaidipoftap` int DEFAULT NULL,\n `cvkcpbsyuuqzynfsprvuznkuxgdcvsqp` int DEFAULT NULL,\n `ofvueqdgnhghkfsjqzvzmbvylnhjwusl` int DEFAULT NULL,\n `xjopwhwlwfpdikyopmsxjbehnniiwmwq` int DEFAULT NULL,\n `zjuaqdilmmqxcpauhobztnobbdsbcuxf` int DEFAULT NULL,\n `pxrfwtdkuvbsifkwlrcgqensvimnzhip` int DEFAULT NULL,\n `cdgjzklnfpslnitcccmkwhuosuxdsrth` int DEFAULT NULL,\n `byswodurecuqliowvevsuuoixlumbzik` int DEFAULT NULL,\n `arislcjplmidtzlsatzmlgdblccxcklo` int DEFAULT NULL,\n `dpgbfjfxvoixdmyqcvmtxnoqykwnkunp` int DEFAULT NULL,\n PRIMARY KEY (`bauevokddonrtuktzidwkzduaxonfmis`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"efltdshxkjahnyuwforbiwbeqptladwm\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["bauevokddonrtuktzidwkzduaxonfmis"],"columns":[{"name":"bauevokddonrtuktzidwkzduaxonfmis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"mqeqraszudegjwaqimdlmriiohcyboxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"crjupxaexvgkgjakvnirfoksqfhjsino","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lsoaskvcgbsxxtecmdnjmvcthaeejbhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"klmrusstapxiullabhufbsehlsymetvk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzuiirdfbznhwkbblfweuqwpsgxgkhzl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mfaewdoiogosvwnuhpowfvkihrxljkaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvfeaaimaptcgmjfbcqpztipkjueorsj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owoeemhxngytxgbzlroirdzssjkyvkge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uuwledufthobcsanehihnxxfzegwgtpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"emjmpxaizvqiyabhynargzfkzusdnnrw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqqjkvgwjqfgltemacepspqjudgxsjba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pvbcpnxdebbkfajfsxqmxklzigqhgtxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ieqwblwijkzsxympoqulovvbifmilhyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eyovelhdfmoyyjotfruqaqyhqnlfnhtt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqobooitnufwieaujbnovewdlincfmym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpoqmyhgxracwxonrwpybpfigzbgsrjl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"odhghbyxiynbffghqrfpbsgfvcmpzarb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtmzoxuybqynnianiresnmzvglvnyvhf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rewvymfutkqejbzgwjscpeammibvfycv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkjcjzhcxzciwxesbywkypnuuahdalap","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbsghykvrflyhtqkndxrjfyunzzbjkpl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fkldkhcbsfzvgppzupsuczrgtarncmfh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qpounvbtlgobxsxuahevdakzmrtzzfyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jpnulacgfzldthqgyfwmwrzkhsfryhws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nejbnrokcckukogstltgooobpsccxewj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vatkwavskhskawjzhhyzkdrwweqgvhjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvzditgxgpseoifrgtasagybrisngreq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kbfkokaudkuptgtdrwmffybctlwnsfca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpcrmloumzybnxnueoupyngldyqeyzkp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvkzaydhugpqytglkovroqvtfllwmovz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"retwjfrerwtfalufcfqvrvkqrqdpxndh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"spqbqntlrvdfwreplwzcjyptuyelddvu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kczhwxksnonimimjfvvbjlwrqslpyxrq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uyhcnsjkyzcpadhhiovcotfloybwtgpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xwjnisuxbcsnefihzpowobgqnaoerrmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfefcsieqrqelseqluyssyvvthisawcl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkhwujswheretunjlfgbvuubrfcjgitt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftzhmhzseuhejcayphkdhmjbdtwxwamb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sajdoiuotfwrwdvgbvfmryfrjjqhuibd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lzxgdizlqtdnxqbmzjkzvbfaacqbhoik","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ryxozitlhgarbhazomihjpjibknibaos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhomzrywuqmndnggwhzkzkhyckzvfjdg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwaunstjccjedjkivclwervaeskmfdwu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxoenxagjxdygbshaccqkcdjbihwmngz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"acjaxotzuqttdqxxcqgnaetugeapsixd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxzdoxghfqgvryunfiqvjnfdvzorkekv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcaqmjfboxtpohoyifutjgdslqlxuoke","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"geuialnwryloamusqnbghsksoynfyzux","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbwtmnnzbuphhchqzpvprugbzqwdbpen","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qcdxpsemprqtjshcfdaloberhcpkngot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qbdkunbjlfotghlakibkbfmswjfkeavh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"slodfhorokuvyijoyoeqasrsrjtlztuo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jrmkbzocssltjtktygjaievqbggcywtl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdxvdsmuhnloeyqsewcaerupxasmvjil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"haqtolbvdfpczhflhnzsquszmeuflscm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"newsdyrnczwvqkcsxqpcqeoxrpuhoisi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ulndyypczofdttzzwovxmcxkuboelrvv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnifearcdcuicrjyyjelkaujviurkvgo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"euavhebyfeiilhobtheknholwaeleotv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rubrrqepdpgtmrtcezfhpwisxtwyrvef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nyxcarpzrwoxvcxzcylvqlqewyzfcdzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"paqiwquqtclwsqrrunxedsrbuhktfhju","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uicmhfmgrvkqfysrlpsfwierhbzpkjne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vslrcpbnptyoksxmyqvfxaezixjfbtpe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hriewtfcfjqoezjehaxzuanuzyczrdtr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pugakdjxydeaqqligpogqowaxsjfblvw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"menxlsrzuwydcpricnenhlnypvcdddnc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afukkyrdosyvgeafjzkctnqjkmnnboye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vruduzsjkgmhiqjkfzptyrtfrtdabfxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgusjpakjiguzjhedhzxewgeieonuakc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfeikphzhicajqdygrqncugupcsqmefk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"azoagwmfrfrzxmgkrswbwqkfwvewdqdx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxxhynjweighwsqtdplkdojflhfqppze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uyocstwkzjiamagqyzjistnmkdplvgdi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtdbyheqpbwxcqudecvgapkxbrqhgkfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgfkvsmjeysjruwyawegpkiwpzcdravg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvafdiaararjygytojphpplxkxokgvfn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dewaxxsllyoowjwcswcoyqqenqrtnfbc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zayvmopulslpfnemsheigzeksayypdku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ssytjjdalfxlvoqawvryftfeymxhgjph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"abyugkrhoynxtqdhajgqhbiaznypgnoo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xunizurftcgrhaqbwycnbljzuoybuhnx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ipxumcpvkfgfhymhokiqmhfsnqlvxmge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sganwwsrekfwsbiqvmcdnskzdgyrbvhg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctvcirlmopauxlddtvyuseitqdvhpknk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kcrltmebengfthnlrizsrsuiqyfowixs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ituoqgnebhjlptrsturraoygqwcgtcgh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"giqdpejvnfmmckkuaflgotfuxmutkwle","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxproqxolpxdubcccmnufsgjpimjfwyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfldoprycdjrkjqlbydbvwaidipoftap","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvkcpbsyuuqzynfsprvuznkuxgdcvsqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofvueqdgnhghkfsjqzvzmbvylnhjwusl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjopwhwlwfpdikyopmsxjbehnniiwmwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjuaqdilmmqxcpauhobztnobbdsbcuxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxrfwtdkuvbsifkwlrcgqensvimnzhip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cdgjzklnfpslnitcccmkwhuosuxdsrth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"byswodurecuqliowvevsuuoixlumbzik","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"arislcjplmidtzlsatzmlgdblccxcklo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpgbfjfxvoixdmyqcvmtxnoqykwnkunp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667549,"databaseName":"models_schema","ddl":"CREATE TABLE `ekgwnocryenlhifewsirhpralwokvicj` (\n `ezwrjsgurodhdllijvxswjvdwbothnaj` int NOT NULL,\n `zhhgostrzwamoiilsuuoumqnuahxewrj` int DEFAULT NULL,\n `zpgaeuaklflfbbxyeuyzhzsbekekhoob` int DEFAULT NULL,\n `clmgpiozjrhpcrislkulrukqqmpzwete` int DEFAULT NULL,\n `oxldqaactmvbxaaaspvocebgqozadwop` int DEFAULT NULL,\n `htmpwxqrpjwmicwhmvugwlarxlreogun` int DEFAULT NULL,\n `ufwhidmmkdjlukktvyutgcegqcgwkies` int DEFAULT NULL,\n `odmievzbpivbhiokfkdkpofjpnuxhajq` int DEFAULT NULL,\n `jotujjgsfxogqtxtnwgtqbdzggcpneiw` int DEFAULT NULL,\n `rabgdffsmeuhxpypubhtsydbrnxwptjc` int DEFAULT NULL,\n `sfupceuajuuhrqavaeqwrytdjljektiu` int DEFAULT NULL,\n `pvycxpovhqsvjwietkgefimifwpjrrzy` int DEFAULT NULL,\n `gdmdzlizjjzpitztkdlmdkxniqlsmdfl` int DEFAULT NULL,\n `zbyycvhqsqumdkocbliqxnpzzmavlaug` int DEFAULT NULL,\n `pasbyyuiubxeyzlbqyxuqgpkkvbtdatt` int DEFAULT NULL,\n `syymvmhexuxcklrlvsaglpxdugixdgmb` int DEFAULT NULL,\n `jdkalruqyopkqsaqhdqzwihfiqilpkiz` int DEFAULT NULL,\n `qbczcmppfbuzkwtfmxmivhymaviqdvnk` int DEFAULT NULL,\n `qtdyrobmyersutrqtxjaxlicfpcvmuhh` int DEFAULT NULL,\n `cxklxsalhfbmgafnggwbqrscfjdxeptx` int DEFAULT NULL,\n `pklboccvmnmddirmficbjuzthyhyzdzr` int DEFAULT NULL,\n `uotvpyljzzskipertigwxhnyjbsbhwqu` int DEFAULT NULL,\n `xmrxhovdykobwhmlzexsjooobwrdtzzt` int DEFAULT NULL,\n `mlzwovdwapprcifxoyjzjmowdhrwrlvk` int DEFAULT NULL,\n `eoqhtozxemljtsqlteyhmzhievvmwcit` int DEFAULT NULL,\n `ezeaciymptqgpyobfldkgrscooxpvebj` int DEFAULT NULL,\n `hfoigepqfceokquqofafybdqwcnlrwic` int DEFAULT NULL,\n `xfuqliocwpunzzrtmzfvqiirqqvmvoew` int DEFAULT NULL,\n `izorxuwozuaijritpguzaiqkouuuckuo` int DEFAULT NULL,\n `vxagdlaubyhhiedlehrhsktzhmsqywte` int DEFAULT NULL,\n `vkmklbxeyfnirymnzpyuipbpwotsklej` int DEFAULT NULL,\n `vxssexpnzyuwnwmhpuxcvqtlvpoflwuo` int DEFAULT NULL,\n `aftkamufsgxosqdpgjogagtjrodkoypg` int DEFAULT NULL,\n `qfyalbcezavnqumvtunguprgrvbkbywa` int DEFAULT NULL,\n `qrrnuldqxsaqbddgvzfqupyvubgjjece` int DEFAULT NULL,\n `mumkpjlpayyvkizqpztuqghshxaglavq` int DEFAULT NULL,\n `pjhysxohdgxmsshccsszlrvngqquuifn` int DEFAULT NULL,\n `iwrjsqbrpovfpnzifhtmwrtrjhuwtpcj` int DEFAULT NULL,\n `rlhvrkpauvfireesrjitqiyamybtdoyg` int DEFAULT NULL,\n `noiwiftsunlzkmwqyckykxngmdtwyhxc` int DEFAULT NULL,\n `ufrdwfvakmlegwwmsyeiemduttuedtwa` int DEFAULT NULL,\n `blhgblubnetsylfpoziehqmeietijwid` int DEFAULT NULL,\n `coqalzhdzxqbmnqnyjawtrhamjfasdbo` int DEFAULT NULL,\n `zxujqrcxjxfbhlhsivcvadarebyjmvoi` int DEFAULT NULL,\n `dmzcljpnkqkijunhzotvpnelajiroahj` int DEFAULT NULL,\n `pvtucparikvpsqwllpotvtfxqnnsvslf` int DEFAULT NULL,\n `sjlclhndvsxdpzxfkkciorowfvdbvoub` int DEFAULT NULL,\n `njdubaujvlibczmpouapsvsarwznuudt` int DEFAULT NULL,\n `diyzfodmgnntenizyqfklxuiceevrpah` int DEFAULT NULL,\n `llwlbyrxqoxqkjetbztyaxwsugpoaklt` int DEFAULT NULL,\n `lslckqbioodvdflfsalgvchjpqqwxkyv` int DEFAULT NULL,\n `cgajgrtkogcyietjlyyvxqiaqshtllor` int DEFAULT NULL,\n `kwoqzzgvicrrtowwisnxaomvzmfojabj` int DEFAULT NULL,\n `nsvczjpphwqdyihjzrmrdyhdlarymapv` int DEFAULT NULL,\n `cigctwbasibufoudcyouljuovzqyqzrg` int DEFAULT NULL,\n `lnrvdkocuoeaggyhaapkzenjzxmogcgi` int DEFAULT NULL,\n `wowkupbohlpfhaddqlyutnkawsvnxpxs` int DEFAULT NULL,\n `ycgkqtwccghsnqprqmzvismpdgjagajc` int DEFAULT NULL,\n `aeellooiochvqojecxyqpohmjrptrpxc` int DEFAULT NULL,\n `bdaghtsogztoutbqerwbzcyoukyhavzh` int DEFAULT NULL,\n `momvlzzkkapzugugcsiykwvywasfgvms` int DEFAULT NULL,\n `cwbiurzsvxhrtbqrpmnfpztdcyoopsja` int DEFAULT NULL,\n `swkwmbualhnfdzpprywkuaajntfvlnjd` int DEFAULT NULL,\n `ruarzulnjibsinklngzwmyhkdtoyocvo` int DEFAULT NULL,\n `egeschqnfaqkutgknrzfmhyjydwjnjmd` int DEFAULT NULL,\n `wdgzwouldhblwhrrwctumesfkmmsmfku` int DEFAULT NULL,\n `kdkilztjpmtoxxoddenlhvwdmegyqtge` int DEFAULT NULL,\n `itbdkrvxaxccgzcferkimogvysucfipf` int DEFAULT NULL,\n `wgeqmkwpxkgtdypaenlcqvdvbngqrpim` int DEFAULT NULL,\n `inlwsiiktehfyjlqzyupsdsrjtwvrcpq` int DEFAULT NULL,\n `zpxxjquvzcbkdwuoxclffvbprvotqztn` int DEFAULT NULL,\n `iyvydyoaepyxizdnycerlufwuijbxtgh` int DEFAULT NULL,\n `xpzxmaxbkszncwnbwnnpqtjivvbqhhqx` int DEFAULT NULL,\n `rmfhhclsyxjszbjdvtsnqdgsfaxhtplg` int DEFAULT NULL,\n `hlyepaicgkflklepnekuhqciecpinnkb` int DEFAULT NULL,\n `oedkdskfjhzcnaraemtokwzqwymawnxb` int DEFAULT NULL,\n `ucgwtqgxgozkgcgiravdntawunoerpje` int DEFAULT NULL,\n `ecdsgdgeaeitxityowzasrqxpapjopie` int DEFAULT NULL,\n `ejwfjrlfbvlnccwiqzaojgeixbwtpfld` int DEFAULT NULL,\n `zqgeillxbdqrqzislqfnucazpdryyajm` int DEFAULT NULL,\n `bylmwvzruihtkzfzvwtenlxyzgzvslwj` int DEFAULT NULL,\n `suuydgncurtoxvfteqxbpvrtbqkszcgj` int DEFAULT NULL,\n `bljwixidynntcgjxjelkdkphfkakufkm` int DEFAULT NULL,\n `cyexmpyhvhfjevjzmtvvetstspgxiwob` int DEFAULT NULL,\n `iruonyddjptdubrfdhrfwegmrujslxph` int DEFAULT NULL,\n `hhpcbphqjccjfotmoonpocccvdcknncj` int DEFAULT NULL,\n `ohgvtpxrahzophmkwzogrcrukpwdrong` int DEFAULT NULL,\n `ryxtkrkqbpuveeawtzizwvayfeuufnel` int DEFAULT NULL,\n `crkylhaudjscuriplqwnhqpntqbwkbhe` int DEFAULT NULL,\n `mwxkbxxefpyhzhcuvlgvfyvdmqlgvlvu` int DEFAULT NULL,\n `rguilaabzfnveyyvglnbnxezkebijbrf` int DEFAULT NULL,\n `wtzkgxilskgonuanvxzutatmymmrbcmz` int DEFAULT NULL,\n `mokakwfmqngzhudkiowbykmbvpyuevzu` int DEFAULT NULL,\n `vipmpdfhamcjgkwdkhtxzgqyjqjpbhsp` int DEFAULT NULL,\n `jayfpqiieylsfnrldrdkfnsmypumzpxl` int DEFAULT NULL,\n `hozlzuequjheyulveqcoyppfukktbwsh` int DEFAULT NULL,\n `aazyucmxjffqdkgeepvnsioklgctfvgc` int DEFAULT NULL,\n `rzgijglvvffsiinmhumaafjxqmuhmyoz` int DEFAULT NULL,\n `knnixxutxveuuuwqqnsskwabaeqqvbhp` int DEFAULT NULL,\n `edyfhwuihresiwobfmixshztrcgmbbav` int DEFAULT NULL,\n PRIMARY KEY (`ezwrjsgurodhdllijvxswjvdwbothnaj`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"ekgwnocryenlhifewsirhpralwokvicj\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["ezwrjsgurodhdllijvxswjvdwbothnaj"],"columns":[{"name":"ezwrjsgurodhdllijvxswjvdwbothnaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"zhhgostrzwamoiilsuuoumqnuahxewrj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zpgaeuaklflfbbxyeuyzhzsbekekhoob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"clmgpiozjrhpcrislkulrukqqmpzwete","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oxldqaactmvbxaaaspvocebgqozadwop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"htmpwxqrpjwmicwhmvugwlarxlreogun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ufwhidmmkdjlukktvyutgcegqcgwkies","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"odmievzbpivbhiokfkdkpofjpnuxhajq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jotujjgsfxogqtxtnwgtqbdzggcpneiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rabgdffsmeuhxpypubhtsydbrnxwptjc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfupceuajuuhrqavaeqwrytdjljektiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pvycxpovhqsvjwietkgefimifwpjrrzy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdmdzlizjjzpitztkdlmdkxniqlsmdfl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbyycvhqsqumdkocbliqxnpzzmavlaug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pasbyyuiubxeyzlbqyxuqgpkkvbtdatt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"syymvmhexuxcklrlvsaglpxdugixdgmb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdkalruqyopkqsaqhdqzwihfiqilpkiz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qbczcmppfbuzkwtfmxmivhymaviqdvnk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtdyrobmyersutrqtxjaxlicfpcvmuhh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cxklxsalhfbmgafnggwbqrscfjdxeptx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pklboccvmnmddirmficbjuzthyhyzdzr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uotvpyljzzskipertigwxhnyjbsbhwqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xmrxhovdykobwhmlzexsjooobwrdtzzt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mlzwovdwapprcifxoyjzjmowdhrwrlvk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eoqhtozxemljtsqlteyhmzhievvmwcit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezeaciymptqgpyobfldkgrscooxpvebj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfoigepqfceokquqofafybdqwcnlrwic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xfuqliocwpunzzrtmzfvqiirqqvmvoew","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"izorxuwozuaijritpguzaiqkouuuckuo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxagdlaubyhhiedlehrhsktzhmsqywte","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkmklbxeyfnirymnzpyuipbpwotsklej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxssexpnzyuwnwmhpuxcvqtlvpoflwuo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aftkamufsgxosqdpgjogagtjrodkoypg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfyalbcezavnqumvtunguprgrvbkbywa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qrrnuldqxsaqbddgvzfqupyvubgjjece","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mumkpjlpayyvkizqpztuqghshxaglavq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjhysxohdgxmsshccsszlrvngqquuifn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwrjsqbrpovfpnzifhtmwrtrjhuwtpcj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlhvrkpauvfireesrjitqiyamybtdoyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"noiwiftsunlzkmwqyckykxngmdtwyhxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ufrdwfvakmlegwwmsyeiemduttuedtwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blhgblubnetsylfpoziehqmeietijwid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"coqalzhdzxqbmnqnyjawtrhamjfasdbo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxujqrcxjxfbhlhsivcvadarebyjmvoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dmzcljpnkqkijunhzotvpnelajiroahj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pvtucparikvpsqwllpotvtfxqnnsvslf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjlclhndvsxdpzxfkkciorowfvdbvoub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njdubaujvlibczmpouapsvsarwznuudt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"diyzfodmgnntenizyqfklxuiceevrpah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llwlbyrxqoxqkjetbztyaxwsugpoaklt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lslckqbioodvdflfsalgvchjpqqwxkyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgajgrtkogcyietjlyyvxqiaqshtllor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwoqzzgvicrrtowwisnxaomvzmfojabj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nsvczjpphwqdyihjzrmrdyhdlarymapv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cigctwbasibufoudcyouljuovzqyqzrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lnrvdkocuoeaggyhaapkzenjzxmogcgi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wowkupbohlpfhaddqlyutnkawsvnxpxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ycgkqtwccghsnqprqmzvismpdgjagajc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aeellooiochvqojecxyqpohmjrptrpxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bdaghtsogztoutbqerwbzcyoukyhavzh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"momvlzzkkapzugugcsiykwvywasfgvms","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwbiurzsvxhrtbqrpmnfpztdcyoopsja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swkwmbualhnfdzpprywkuaajntfvlnjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ruarzulnjibsinklngzwmyhkdtoyocvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"egeschqnfaqkutgknrzfmhyjydwjnjmd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wdgzwouldhblwhrrwctumesfkmmsmfku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kdkilztjpmtoxxoddenlhvwdmegyqtge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itbdkrvxaxccgzcferkimogvysucfipf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wgeqmkwpxkgtdypaenlcqvdvbngqrpim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"inlwsiiktehfyjlqzyupsdsrjtwvrcpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zpxxjquvzcbkdwuoxclffvbprvotqztn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iyvydyoaepyxizdnycerlufwuijbxtgh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xpzxmaxbkszncwnbwnnpqtjivvbqhhqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rmfhhclsyxjszbjdvtsnqdgsfaxhtplg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlyepaicgkflklepnekuhqciecpinnkb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oedkdskfjhzcnaraemtokwzqwymawnxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ucgwtqgxgozkgcgiravdntawunoerpje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecdsgdgeaeitxityowzasrqxpapjopie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejwfjrlfbvlnccwiqzaojgeixbwtpfld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqgeillxbdqrqzislqfnucazpdryyajm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bylmwvzruihtkzfzvwtenlxyzgzvslwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"suuydgncurtoxvfteqxbpvrtbqkszcgj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bljwixidynntcgjxjelkdkphfkakufkm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cyexmpyhvhfjevjzmtvvetstspgxiwob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iruonyddjptdubrfdhrfwegmrujslxph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhpcbphqjccjfotmoonpocccvdcknncj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohgvtpxrahzophmkwzogrcrukpwdrong","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ryxtkrkqbpuveeawtzizwvayfeuufnel","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"crkylhaudjscuriplqwnhqpntqbwkbhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwxkbxxefpyhzhcuvlgvfyvdmqlgvlvu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rguilaabzfnveyyvglnbnxezkebijbrf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wtzkgxilskgonuanvxzutatmymmrbcmz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mokakwfmqngzhudkiowbykmbvpyuevzu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vipmpdfhamcjgkwdkhtxzgqyjqjpbhsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jayfpqiieylsfnrldrdkfnsmypumzpxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hozlzuequjheyulveqcoyppfukktbwsh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aazyucmxjffqdkgeepvnsioklgctfvgc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzgijglvvffsiinmhumaafjxqmuhmyoz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knnixxutxveuuuwqqnsskwabaeqqvbhp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edyfhwuihresiwobfmixshztrcgmbbav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667581,"databaseName":"models_schema","ddl":"CREATE TABLE `eniuwqlzawrgrhvrzrcpihxgkdvaarew` (\n `nxktsybuipbzqpcvolrdixlcswoivxxm` int NOT NULL,\n `qacnnjcklvkgjjzgxgxtmutpbttzgafp` int DEFAULT NULL,\n `oovpwbfpfkrbkvchrjkgsdtbudgiiejk` int DEFAULT NULL,\n `agswznblpwarjwisojzzlbudeutkjedw` int DEFAULT NULL,\n `vofcviaosibzaornvlvrapfcdmdutrfo` int DEFAULT NULL,\n `uefqqozvizadozgmbodfiotipgntclgb` int DEFAULT NULL,\n `rfblkvlxedbqcfrcswjmofcoudmcuquu` int DEFAULT NULL,\n `pdohtbhkxnqyssfxjfnqzwysgdiflxki` int DEFAULT NULL,\n `nukbkukijlwghnoimxxyulpqqxxxbknw` int DEFAULT NULL,\n `tbhifzgblwkmjgubqgagbmrohumbmekr` int DEFAULT NULL,\n `tambsgohinpitkncuskcltbrvbxrbfov` int DEFAULT NULL,\n `shyzwmkrikkesenygmqdcstwtzznilpq` int DEFAULT NULL,\n `igxqhenqwiqgkcgwrryywnruzicgrkvo` int DEFAULT NULL,\n `ncwctqaefjebtnlqqrdsrrulupzyoaji` int DEFAULT NULL,\n `atpgiqszbgtsnguivbneqhubeswxijrw` int DEFAULT NULL,\n `gstcppnpfdxplerykngqvyjnhfeqizix` int DEFAULT NULL,\n `gfetwgrllreghauzzcavzphrzgeikfsq` int DEFAULT NULL,\n `icmvdntncpjghqiehidwzpahwangolog` int DEFAULT NULL,\n `gsgzerzqnhokrxvpyrlsyhzznwgsidlp` int DEFAULT NULL,\n `rqdcyjjnbjicubmwjagppzudzutyaytt` int DEFAULT NULL,\n `ojcgfktaicmxbncopqanhxqqvobgwcuv` int DEFAULT NULL,\n `itpqvpcxqkgytvgnfewjjrkvejupchst` int DEFAULT NULL,\n `bfvdcplxzjaaokbdcorqrqqxryqdrzpp` int DEFAULT NULL,\n `lzwprtzjqqxglqqunwusaroacygmmesa` int DEFAULT NULL,\n `rygcksfeahehzovxwfakvlzvnvfrcosd` int DEFAULT NULL,\n `bjjxbihjtkdnkpwmxlfsakxnfglimosz` int DEFAULT NULL,\n `ujltxlvtycptmqmjxoyjxpkrhfvbtuon` int DEFAULT NULL,\n `klrxvrxwmoxhvekivxbcfvubaimlqwry` int DEFAULT NULL,\n `rikwqinbclwuaqegzqisazjelebrkysy` int DEFAULT NULL,\n `asaxjqrvylmbhxqzpfkqwisfqazsfdnu` int DEFAULT NULL,\n `bclxddsnhghicyaoeobakclfitvhvyva` int DEFAULT NULL,\n `akhcbnicqdyzlaagkmwnyyzemidvtelp` int DEFAULT NULL,\n `lgogrnezseheetvfztzecersmyipwlql` int DEFAULT NULL,\n `lmadvtwfpcqdabinegwrkfxgsqjwjzxm` int DEFAULT NULL,\n `hlcmkrbrcqoplzpkmlzqykggcakbgdqq` int DEFAULT NULL,\n `njecinifofmwduxcstkjseytnldrywlr` int DEFAULT NULL,\n `ggnwhzmafwienxjwurqbqvwewzpkauei` int DEFAULT NULL,\n `dmivniqnbwkmvkdngfuvlqqqjmdhtvlc` int DEFAULT NULL,\n `qxrepgjprrsppqcntvnkrjsmsrdpsdak` int DEFAULT NULL,\n `osuhiqfivphjupkzpuatuxlwhdmsknxj` int DEFAULT NULL,\n `tjytxdhobxeuoiryraqbbqxdntepxysf` int DEFAULT NULL,\n `kbdjthlfhogucjefrwujfzhgqclehtpd` int DEFAULT NULL,\n `ynkmbymnakbjigwifakvfwzqlasvpwup` int DEFAULT NULL,\n `rycjubhzkzvbzevxdplqcqoamaocbezj` int DEFAULT NULL,\n `nobqazuyygtmtnvtrlkjpqcwgcmliaab` int DEFAULT NULL,\n `wqniaqpkwdgfhukgxzloyuxelzhxglhm` int DEFAULT NULL,\n `teqdjfwedmwlvnuztughxasishgxxysg` int DEFAULT NULL,\n `jrpeckadcmhmxbiftgmgrwpnnaxpqqnk` int DEFAULT NULL,\n `tuvotgjshpvuwmnrlphqqslfuunmrrqz` int DEFAULT NULL,\n `pxpmfurvvuecejavqiaftbnbnhbxmwqu` int DEFAULT NULL,\n `pdicpqnfuspiuabmmtswlgwccpxltphb` int DEFAULT NULL,\n `zqpqunctbxmfmhxwaxklnhavdjuvnejw` int DEFAULT NULL,\n `cdixttznipkclcyklogiwdobxxvnwptr` int DEFAULT NULL,\n `pwzxhbqjnffwihvdnechtuydrszdfiol` int DEFAULT NULL,\n `sglnnmloxaorerqadnpqppltgtwxqtyw` int DEFAULT NULL,\n `clzypewznwxrullpgxrbmcuuldspkche` int DEFAULT NULL,\n `mteqdxynpnkmxbosfjihbmaacocftgce` int DEFAULT NULL,\n `uqbfbfkjckhuzkiwievxiwlsikbzbswk` int DEFAULT NULL,\n `pottfrgpwgbdwhyejhloygtkcwjykelf` int DEFAULT NULL,\n `acntsnmhnoscddrrpzcjcjqajjporlxg` int DEFAULT NULL,\n `yimdrcxdaxczlntgiqnimklcsepnvauy` int DEFAULT NULL,\n `zujphalviqusqyuwujmvzflemnupslxd` int DEFAULT NULL,\n `psfrsfvfkbwkutjmqgoluvzbxhczcmtl` int DEFAULT NULL,\n `nxsdpsyhpiqvqgxakaxiojwnirentlyr` int DEFAULT NULL,\n `fmcgfpgtspdsrozyutwvzipilcgnvjvp` int DEFAULT NULL,\n `skdqndggzrjzlscbzghjldlhrmqbmwww` int DEFAULT NULL,\n `spncxrwnpkhbpfuqtqwgolmocsgiqipv` int DEFAULT NULL,\n `zvilukdwxjvpdccmmnpnyznkhqcysach` int DEFAULT NULL,\n `kyqxgjvnifbzbgnulcrzdqbmecamlpbu` int DEFAULT NULL,\n `eqfplfvmwlsqirixbjtrjzsgxgkuwhij` int DEFAULT NULL,\n `kkudwwlprmulwblgalpegoqtexhfdhem` int DEFAULT NULL,\n `wnkzkkrzkzzqkibditobzgbulmgikyzf` int DEFAULT NULL,\n `ueqsczqzmpgahdaybjogmjrwxeellfwb` int DEFAULT NULL,\n `gxsbwkdgwdqhfxnawxukicdounnykexh` int DEFAULT NULL,\n `jrmshevieyrpqduoupvwffmjgtfklwaa` int DEFAULT NULL,\n `sjjkddchovpdjhevawtjhsvmecvdbykp` int DEFAULT NULL,\n `dvqdqjgvvrkjermiurcqomxqhlqumlfl` int DEFAULT NULL,\n `gsvzsvranqzlrunhcvbjuqebxajuspke` int DEFAULT NULL,\n `yesbacfzmarwxgnystnpbrnvatvvggpc` int DEFAULT NULL,\n `erxwixdimmmkgiagchcesxffakeogxyz` int DEFAULT NULL,\n `tqtvcxipfxxhinpkvqooztuiazmjurki` int DEFAULT NULL,\n `xtijumrgvatpmumgrbornerozygcupyg` int DEFAULT NULL,\n `locmvechkrfxacxryhjoktlawgwmbuzh` int DEFAULT NULL,\n `oumlpxukeiwzydpcqcnidfwjhzbhegov` int DEFAULT NULL,\n `rkmeouncyslhvmpmefyoimjalhplzqof` int DEFAULT NULL,\n `hnxjfhnrfmxxmulobgwyzhbhaknmbufw` int DEFAULT NULL,\n `oymeqpgocisvhzzmtppobgmpewfypxqp` int DEFAULT NULL,\n `tvenaubfycatuiqvxqvqvqrlbbljhgxg` int DEFAULT NULL,\n `tkfhmguxwbeiuijkhxvmpdjnerinarqm` int DEFAULT NULL,\n `criflldwkdinryfmzyzvdxjjswuqjpqu` int DEFAULT NULL,\n `meoxksgexffqmgiudjmloistkgtsrdzn` int DEFAULT NULL,\n `piqkaqdcluwtqfsjisjvbwizzdfvurca` int DEFAULT NULL,\n `yfqbkotpxskoajbolcmdtaklxhxcawoq` int DEFAULT NULL,\n `nnipsdbuirwifjxwgpefpktiynwspkbg` int DEFAULT NULL,\n `rjekfknikuhtntvdbvllqsmynxwwudft` int DEFAULT NULL,\n `ontfhgcnqbyoesbvrgqiicbqysafpmcc` int DEFAULT NULL,\n `eaylkdtzwcorwnsfjtwuveyanpxpvdat` int DEFAULT NULL,\n `mrktvukikbzzyvmxjfeniwxmzgtaekop` int DEFAULT NULL,\n `yjzkltodkzbsktjzgccuznhxjulgijmb` int DEFAULT NULL,\n `quckftlzianvlytfddgpivhyzarnabfe` int DEFAULT NULL,\n PRIMARY KEY (`nxktsybuipbzqpcvolrdixlcswoivxxm`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"eniuwqlzawrgrhvrzrcpihxgkdvaarew\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["nxktsybuipbzqpcvolrdixlcswoivxxm"],"columns":[{"name":"nxktsybuipbzqpcvolrdixlcswoivxxm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"qacnnjcklvkgjjzgxgxtmutpbttzgafp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oovpwbfpfkrbkvchrjkgsdtbudgiiejk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agswznblpwarjwisojzzlbudeutkjedw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vofcviaosibzaornvlvrapfcdmdutrfo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uefqqozvizadozgmbodfiotipgntclgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfblkvlxedbqcfrcswjmofcoudmcuquu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdohtbhkxnqyssfxjfnqzwysgdiflxki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nukbkukijlwghnoimxxyulpqqxxxbknw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbhifzgblwkmjgubqgagbmrohumbmekr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tambsgohinpitkncuskcltbrvbxrbfov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shyzwmkrikkesenygmqdcstwtzznilpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igxqhenqwiqgkcgwrryywnruzicgrkvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ncwctqaefjebtnlqqrdsrrulupzyoaji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atpgiqszbgtsnguivbneqhubeswxijrw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gstcppnpfdxplerykngqvyjnhfeqizix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfetwgrllreghauzzcavzphrzgeikfsq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icmvdntncpjghqiehidwzpahwangolog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gsgzerzqnhokrxvpyrlsyhzznwgsidlp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqdcyjjnbjicubmwjagppzudzutyaytt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojcgfktaicmxbncopqanhxqqvobgwcuv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itpqvpcxqkgytvgnfewjjrkvejupchst","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bfvdcplxzjaaokbdcorqrqqxryqdrzpp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lzwprtzjqqxglqqunwusaroacygmmesa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rygcksfeahehzovxwfakvlzvnvfrcosd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjjxbihjtkdnkpwmxlfsakxnfglimosz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujltxlvtycptmqmjxoyjxpkrhfvbtuon","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"klrxvrxwmoxhvekivxbcfvubaimlqwry","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rikwqinbclwuaqegzqisazjelebrkysy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"asaxjqrvylmbhxqzpfkqwisfqazsfdnu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bclxddsnhghicyaoeobakclfitvhvyva","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akhcbnicqdyzlaagkmwnyyzemidvtelp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgogrnezseheetvfztzecersmyipwlql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmadvtwfpcqdabinegwrkfxgsqjwjzxm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlcmkrbrcqoplzpkmlzqykggcakbgdqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njecinifofmwduxcstkjseytnldrywlr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggnwhzmafwienxjwurqbqvwewzpkauei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dmivniqnbwkmvkdngfuvlqqqjmdhtvlc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxrepgjprrsppqcntvnkrjsmsrdpsdak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"osuhiqfivphjupkzpuatuxlwhdmsknxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjytxdhobxeuoiryraqbbqxdntepxysf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kbdjthlfhogucjefrwujfzhgqclehtpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynkmbymnakbjigwifakvfwzqlasvpwup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rycjubhzkzvbzevxdplqcqoamaocbezj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nobqazuyygtmtnvtrlkjpqcwgcmliaab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqniaqpkwdgfhukgxzloyuxelzhxglhm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"teqdjfwedmwlvnuztughxasishgxxysg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jrpeckadcmhmxbiftgmgrwpnnaxpqqnk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tuvotgjshpvuwmnrlphqqslfuunmrrqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxpmfurvvuecejavqiaftbnbnhbxmwqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdicpqnfuspiuabmmtswlgwccpxltphb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqpqunctbxmfmhxwaxklnhavdjuvnejw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cdixttznipkclcyklogiwdobxxvnwptr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwzxhbqjnffwihvdnechtuydrszdfiol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sglnnmloxaorerqadnpqppltgtwxqtyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"clzypewznwxrullpgxrbmcuuldspkche","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mteqdxynpnkmxbosfjihbmaacocftgce","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqbfbfkjckhuzkiwievxiwlsikbzbswk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pottfrgpwgbdwhyejhloygtkcwjykelf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"acntsnmhnoscddrrpzcjcjqajjporlxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yimdrcxdaxczlntgiqnimklcsepnvauy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zujphalviqusqyuwujmvzflemnupslxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"psfrsfvfkbwkutjmqgoluvzbxhczcmtl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxsdpsyhpiqvqgxakaxiojwnirentlyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmcgfpgtspdsrozyutwvzipilcgnvjvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skdqndggzrjzlscbzghjldlhrmqbmwww","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"spncxrwnpkhbpfuqtqwgolmocsgiqipv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvilukdwxjvpdccmmnpnyznkhqcysach","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kyqxgjvnifbzbgnulcrzdqbmecamlpbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqfplfvmwlsqirixbjtrjzsgxgkuwhij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kkudwwlprmulwblgalpegoqtexhfdhem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnkzkkrzkzzqkibditobzgbulmgikyzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ueqsczqzmpgahdaybjogmjrwxeellfwb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gxsbwkdgwdqhfxnawxukicdounnykexh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jrmshevieyrpqduoupvwffmjgtfklwaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjjkddchovpdjhevawtjhsvmecvdbykp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvqdqjgvvrkjermiurcqomxqhlqumlfl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gsvzsvranqzlrunhcvbjuqebxajuspke","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yesbacfzmarwxgnystnpbrnvatvvggpc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"erxwixdimmmkgiagchcesxffakeogxyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqtvcxipfxxhinpkvqooztuiazmjurki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xtijumrgvatpmumgrbornerozygcupyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"locmvechkrfxacxryhjoktlawgwmbuzh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oumlpxukeiwzydpcqcnidfwjhzbhegov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkmeouncyslhvmpmefyoimjalhplzqof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hnxjfhnrfmxxmulobgwyzhbhaknmbufw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oymeqpgocisvhzzmtppobgmpewfypxqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvenaubfycatuiqvxqvqvqrlbbljhgxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkfhmguxwbeiuijkhxvmpdjnerinarqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"criflldwkdinryfmzyzvdxjjswuqjpqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"meoxksgexffqmgiudjmloistkgtsrdzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"piqkaqdcluwtqfsjisjvbwizzdfvurca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfqbkotpxskoajbolcmdtaklxhxcawoq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nnipsdbuirwifjxwgpefpktiynwspkbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjekfknikuhtntvdbvllqsmynxwwudft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ontfhgcnqbyoesbvrgqiicbqysafpmcc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eaylkdtzwcorwnsfjtwuveyanpxpvdat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrktvukikbzzyvmxjfeniwxmzgtaekop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjzkltodkzbsktjzgccuznhxjulgijmb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"quckftlzianvlytfddgpivhyzarnabfe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667611,"databaseName":"models_schema","ddl":"CREATE TABLE `feporuidwlohgvwbtiusejyfqsrumrac` (\n `wwxalanbgblyufpmpecqnceqvmwnjznn` int NOT NULL,\n `dwyqdcrlnacmcupfkjdqlzxqwwgbzkxw` int DEFAULT NULL,\n `cwvbfbjyyexsfjylnhpptkipbxmnwqbs` int DEFAULT NULL,\n `obaizzpqylsciakcczfyjuvxgwstzngq` int DEFAULT NULL,\n `rgyspxggcqhkfbczdictoaevjxiluhye` int DEFAULT NULL,\n `aygwkgmobalgsdvkjkgllbjjfjoopkzs` int DEFAULT NULL,\n `jmdsduhgxlxodzzoqkwgiuankznkstrj` int DEFAULT NULL,\n `rielhjrhceqstwraufgsmqxhfopijsop` int DEFAULT NULL,\n `ppgdhjansglalbokyzphcdrjawtiexcb` int DEFAULT NULL,\n `cyhijlodzdqtaivrzqqpxulxnazxiaeq` int DEFAULT NULL,\n `kntldnndjvwpepuiinuwbkobgdayquzi` int DEFAULT NULL,\n `bwvfbvyivlqrwhomivowocgnkgvwdhbm` int DEFAULT NULL,\n `scgzxyfiskpwxrbmkssqghnebivcjjcq` int DEFAULT NULL,\n `lkfkxgfpfqxupaeaxsvlyaxicmdokpzf` int DEFAULT NULL,\n `ztvkqsuyzdazxbqsunfnvrdftbhfituq` int DEFAULT NULL,\n `wejwrwtnllsohouqskzhswlgdnrbgtdv` int DEFAULT NULL,\n `nhwswembngqtszgbvhtnkvzldbwayult` int DEFAULT NULL,\n `fqgxvtznaomxnxtpzgdekfnewytzhykm` int DEFAULT NULL,\n `cvjazysogboyqfeugmfmmecbudmtihmb` int DEFAULT NULL,\n `zrigtrbiukmmbtjqpojoxnntrykkygar` int DEFAULT NULL,\n `jjxflqxqqzlhqntgzwnvasxvbjagjypx` int DEFAULT NULL,\n `cwaxqyzndmshjdifnimjnpokjtlcqwir` int DEFAULT NULL,\n `llgsboptfqhbepjdpfndbmxagytfnfjy` int DEFAULT NULL,\n `lrfjphevxtpffojotutusgxxqoqrwnwy` int DEFAULT NULL,\n `jcqxebsrglkbrwlpjeihvgfahhgqkotn` int DEFAULT NULL,\n `rsmrrbuqouamktgkayszioxncierznxe` int DEFAULT NULL,\n `ghlhcwdmmsmmvruclroszcrbsafzsdag` int DEFAULT NULL,\n `mtfwkdbdzjxywhkegapcetofibztejqm` int DEFAULT NULL,\n `sdgnhwdrxzisygmdqpjtgwubclgngrfa` int DEFAULT NULL,\n `wwsbfaxtreuavixwmwgrdeykadzxsgfg` int DEFAULT NULL,\n `icdzmhnvicoxwvbpuvexyeyepssmynlz` int DEFAULT NULL,\n `igmduqpwsufjhnjymaqlfsithsatxbmf` int DEFAULT NULL,\n `ngzojmhlgpswikmkgzzqxnitrflmmhdt` int DEFAULT NULL,\n `ujwjbmteouajlevqpezpavqowvivzxzt` int DEFAULT NULL,\n `vowtfznasjyyxphaocxszezmkpxmxdka` int DEFAULT NULL,\n `jxpgcmuxnmugoznzsjvfoldohnfjumqs` int DEFAULT NULL,\n `egsfncjpgkrflnjpsmwppuhkfxeaqtvb` int DEFAULT NULL,\n `uyucpswpoznzrqhczvhvmjkdevsuvpoz` int DEFAULT NULL,\n `dhtgzrrmlxwysrywxkwhpyraegosuhad` int DEFAULT NULL,\n `jbzsxtcthweogiwbumtgmiwfxnmojsif` int DEFAULT NULL,\n `ulrgjdhjwkggqakvthfjjrtfqmcizzji` int DEFAULT NULL,\n `xfeosrogwpxuvjssfukhulvrpvrqpvro` int DEFAULT NULL,\n `hiywlyxrumkfhjqrnxuqaismdiylsxqk` int DEFAULT NULL,\n `tpnfpbgdgywbocnjizzrmjorasylgopu` int DEFAULT NULL,\n `apvdcvebvhmgorelpqmtcldbhoahpxfj` int DEFAULT NULL,\n `hsnqzfttgdexpsvagveuoojbuvivibxy` int DEFAULT NULL,\n `tptozvhewwyiesphpgzwqydujpzinsru` int DEFAULT NULL,\n `pbcdlqckzrajrjzbdtqqvfwdwmnksoiq` int DEFAULT NULL,\n `eqzkvnjaykmsknortobzccvbvvqccykg` int DEFAULT NULL,\n `zpqnnhjreqphhxvyownleyhyuimdzftz` int DEFAULT NULL,\n `alnxbskhpivwsumkgepiirmyfbzectur` int DEFAULT NULL,\n `rlvivvngxdrmrrklotjnpgmtduuzljia` int DEFAULT NULL,\n `kfzyecatdavqnvitxtezurpegylgvlba` int DEFAULT NULL,\n `sahiznawetfnvbozraeqnzrxrhxxbwsc` int DEFAULT NULL,\n `huurcsgmihhchwledfaprmljwjjfyhog` int DEFAULT NULL,\n `lvfwqfkzawvtjhtoyrbshzsgmwzvhdck` int DEFAULT NULL,\n `dipljmbrcjbuyqhfergsgxttrmwycqbl` int DEFAULT NULL,\n `tggpdjaqsjvyjnxtipzdcbjjmsouywzq` int DEFAULT NULL,\n `mxoeahhzzelexlxyocezrnxfaxnbtqqt` int DEFAULT NULL,\n `ffwssswzqagpcjunirsrwisscastirlh` int DEFAULT NULL,\n `kjgshocighrhiqpkcwdkpfklercaskfs` int DEFAULT NULL,\n `fttwnelachbohpabuceerecvooishqzd` int DEFAULT NULL,\n `zmggqsoscxmrykxjvegvqgcutiakcvcu` int DEFAULT NULL,\n `jvsvjaksvrekysspioduhhtvsxybixgh` int DEFAULT NULL,\n `zhymyxqcdbfngusqldqbikkrftejhpdg` int DEFAULT NULL,\n `yjrnrehirlqvmwhekmpqbgmhtlylqmvb` int DEFAULT NULL,\n `euzstzwyfkeabsyfnkcstropslmnjqby` int DEFAULT NULL,\n `cggqulrxjdtlpzszvsmbfofrkqclxgrm` int DEFAULT NULL,\n `izcmeamxlvytywavnvhozfsauwtyumfe` int DEFAULT NULL,\n `lleriwualqnguikwifbwxcunrleqwjdc` int DEFAULT NULL,\n `pzddzuwbhtogvukjvfdmkdxoewvccsrp` int DEFAULT NULL,\n `ehvkcdoprjgmzrhymujtqoouvsfrehbx` int DEFAULT NULL,\n `jyujmpuuldlhabukoddvudvatoeomner` int DEFAULT NULL,\n `fivxfhumqctnqvrqkwejyucqskhylmqs` int DEFAULT NULL,\n `chcscjezdckeuwcntfmwwugyqmxpvsqn` int DEFAULT NULL,\n `fdlrxrcdsijujzxhqsqmiqqayjkhbotz` int DEFAULT NULL,\n `oycpqabfkltqxqhyxfvskinzipymeqlg` int DEFAULT NULL,\n `zmshtezdoljcdzndyihaielvpgzlqzqn` int DEFAULT NULL,\n `cbablnxtqjiohylzvtqdkixwnbozclou` int DEFAULT NULL,\n `zzmcyjzvsbvsdkhdsoxiioxpakucgecg` int DEFAULT NULL,\n `gkameqpyaprhvzujyuhmlwhmjdudspfe` int DEFAULT NULL,\n `jlvzvgpoakdlxdicdnfyoevocplwyrgb` int DEFAULT NULL,\n `wplbhpxyggtztkewrrxnmyxzgksoaooy` int DEFAULT NULL,\n `dxrpkeolzewdzpmwbmvlwkbbcfxpeqyq` int DEFAULT NULL,\n `lxohcvkhtdmohgesqvtjtdgyvaajyekt` int DEFAULT NULL,\n `umkkgtbxeewykuzqbpggpvjsmggdjpll` int DEFAULT NULL,\n `mvjanikhsiksdjujkxcnfugzvsmnjuwo` int DEFAULT NULL,\n `ztffzkhqoyypzmgdyhkkzspmaotcuxzt` int DEFAULT NULL,\n `ucvxvotigtzsfjmiuneqzrlulipprpap` int DEFAULT NULL,\n `usizgczsjzgjmuamjkgkijwxppjtajjh` int DEFAULT NULL,\n `llidmlckricmvtwvdlgkcprjvrwihsdq` int DEFAULT NULL,\n `tzsfeokbmkzmlibbtiakbsrerxtsnvon` int DEFAULT NULL,\n `hdrbzpngupobrlmnpujbyyptuclfvjka` int DEFAULT NULL,\n `gohyhyirjndlbqhrjqafbrgnaevnuhie` int DEFAULT NULL,\n `hlhapjvviyeozaumotflrrwtkxvbybrm` int DEFAULT NULL,\n `xrmbftlsgdzjezbytchysluigbhscerl` int DEFAULT NULL,\n `bktcxqftdxhvobejkkcqwyotkmgkwjkg` int DEFAULT NULL,\n `fcqemvbsnalcwhieohzctjzxrfrqxgxu` int DEFAULT NULL,\n `cbknzddtsoflxjzrtkerltjfgvfapsmb` int DEFAULT NULL,\n `dafcesykhuusrlpbcsgqicormkpltfsx` int DEFAULT NULL,\n PRIMARY KEY (`wwxalanbgblyufpmpecqnceqvmwnjznn`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"feporuidwlohgvwbtiusejyfqsrumrac\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["wwxalanbgblyufpmpecqnceqvmwnjznn"],"columns":[{"name":"wwxalanbgblyufpmpecqnceqvmwnjznn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"dwyqdcrlnacmcupfkjdqlzxqwwgbzkxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwvbfbjyyexsfjylnhpptkipbxmnwqbs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obaizzpqylsciakcczfyjuvxgwstzngq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgyspxggcqhkfbczdictoaevjxiluhye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aygwkgmobalgsdvkjkgllbjjfjoopkzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmdsduhgxlxodzzoqkwgiuankznkstrj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rielhjrhceqstwraufgsmqxhfopijsop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ppgdhjansglalbokyzphcdrjawtiexcb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cyhijlodzdqtaivrzqqpxulxnazxiaeq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kntldnndjvwpepuiinuwbkobgdayquzi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bwvfbvyivlqrwhomivowocgnkgvwdhbm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"scgzxyfiskpwxrbmkssqghnebivcjjcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lkfkxgfpfqxupaeaxsvlyaxicmdokpzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ztvkqsuyzdazxbqsunfnvrdftbhfituq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wejwrwtnllsohouqskzhswlgdnrbgtdv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhwswembngqtszgbvhtnkvzldbwayult","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqgxvtznaomxnxtpzgdekfnewytzhykm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvjazysogboyqfeugmfmmecbudmtihmb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zrigtrbiukmmbtjqpojoxnntrykkygar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjxflqxqqzlhqntgzwnvasxvbjagjypx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwaxqyzndmshjdifnimjnpokjtlcqwir","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llgsboptfqhbepjdpfndbmxagytfnfjy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lrfjphevxtpffojotutusgxxqoqrwnwy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jcqxebsrglkbrwlpjeihvgfahhgqkotn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rsmrrbuqouamktgkayszioxncierznxe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghlhcwdmmsmmvruclroszcrbsafzsdag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtfwkdbdzjxywhkegapcetofibztejqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdgnhwdrxzisygmdqpjtgwubclgngrfa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwsbfaxtreuavixwmwgrdeykadzxsgfg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icdzmhnvicoxwvbpuvexyeyepssmynlz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igmduqpwsufjhnjymaqlfsithsatxbmf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ngzojmhlgpswikmkgzzqxnitrflmmhdt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujwjbmteouajlevqpezpavqowvivzxzt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vowtfznasjyyxphaocxszezmkpxmxdka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jxpgcmuxnmugoznzsjvfoldohnfjumqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"egsfncjpgkrflnjpsmwppuhkfxeaqtvb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uyucpswpoznzrqhczvhvmjkdevsuvpoz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhtgzrrmlxwysrywxkwhpyraegosuhad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jbzsxtcthweogiwbumtgmiwfxnmojsif","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ulrgjdhjwkggqakvthfjjrtfqmcizzji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xfeosrogwpxuvjssfukhulvrpvrqpvro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hiywlyxrumkfhjqrnxuqaismdiylsxqk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpnfpbgdgywbocnjizzrmjorasylgopu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"apvdcvebvhmgorelpqmtcldbhoahpxfj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hsnqzfttgdexpsvagveuoojbuvivibxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tptozvhewwyiesphpgzwqydujpzinsru","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbcdlqckzrajrjzbdtqqvfwdwmnksoiq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqzkvnjaykmsknortobzccvbvvqccykg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zpqnnhjreqphhxvyownleyhyuimdzftz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"alnxbskhpivwsumkgepiirmyfbzectur","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlvivvngxdrmrrklotjnpgmtduuzljia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfzyecatdavqnvitxtezurpegylgvlba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sahiznawetfnvbozraeqnzrxrhxxbwsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"huurcsgmihhchwledfaprmljwjjfyhog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvfwqfkzawvtjhtoyrbshzsgmwzvhdck","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dipljmbrcjbuyqhfergsgxttrmwycqbl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tggpdjaqsjvyjnxtipzdcbjjmsouywzq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mxoeahhzzelexlxyocezrnxfaxnbtqqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffwssswzqagpcjunirsrwisscastirlh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjgshocighrhiqpkcwdkpfklercaskfs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fttwnelachbohpabuceerecvooishqzd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmggqsoscxmrykxjvegvqgcutiakcvcu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvsvjaksvrekysspioduhhtvsxybixgh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhymyxqcdbfngusqldqbikkrftejhpdg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjrnrehirlqvmwhekmpqbgmhtlylqmvb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"euzstzwyfkeabsyfnkcstropslmnjqby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cggqulrxjdtlpzszvsmbfofrkqclxgrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"izcmeamxlvytywavnvhozfsauwtyumfe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lleriwualqnguikwifbwxcunrleqwjdc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pzddzuwbhtogvukjvfdmkdxoewvccsrp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehvkcdoprjgmzrhymujtqoouvsfrehbx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jyujmpuuldlhabukoddvudvatoeomner","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fivxfhumqctnqvrqkwejyucqskhylmqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"chcscjezdckeuwcntfmwwugyqmxpvsqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fdlrxrcdsijujzxhqsqmiqqayjkhbotz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oycpqabfkltqxqhyxfvskinzipymeqlg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmshtezdoljcdzndyihaielvpgzlqzqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbablnxtqjiohylzvtqdkixwnbozclou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzmcyjzvsbvsdkhdsoxiioxpakucgecg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkameqpyaprhvzujyuhmlwhmjdudspfe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlvzvgpoakdlxdicdnfyoevocplwyrgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wplbhpxyggtztkewrrxnmyxzgksoaooy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxrpkeolzewdzpmwbmvlwkbbcfxpeqyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxohcvkhtdmohgesqvtjtdgyvaajyekt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umkkgtbxeewykuzqbpggpvjsmggdjpll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvjanikhsiksdjujkxcnfugzvsmnjuwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ztffzkhqoyypzmgdyhkkzspmaotcuxzt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ucvxvotigtzsfjmiuneqzrlulipprpap","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"usizgczsjzgjmuamjkgkijwxppjtajjh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llidmlckricmvtwvdlgkcprjvrwihsdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tzsfeokbmkzmlibbtiakbsrerxtsnvon","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdrbzpngupobrlmnpujbyyptuclfvjka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gohyhyirjndlbqhrjqafbrgnaevnuhie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlhapjvviyeozaumotflrrwtkxvbybrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xrmbftlsgdzjezbytchysluigbhscerl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bktcxqftdxhvobejkkcqwyotkmgkwjkg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcqemvbsnalcwhieohzctjzxrfrqxgxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbknzddtsoflxjzrtkerltjfgvfapsmb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dafcesykhuusrlpbcsgqicormkpltfsx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667648,"databaseName":"models_schema","ddl":"CREATE TABLE `fhwposxtdpufqjciekvsudvzcdupkqjv` (\n `aqdntyglbblyaymnjoodjknxqvpkfbbl` int NOT NULL,\n `jyjjpgmdllelhnmkmltthxdaauiwfbuj` int DEFAULT NULL,\n `adqelrmtaycrlvpmtvxavlrgrijpupuh` int DEFAULT NULL,\n `dhqfanenlxcdgebwmkjhoisztvibyyxo` int DEFAULT NULL,\n `zvlwowtymkxkvmyavthzymsaawoccyrm` int DEFAULT NULL,\n `xztszflgncbqjmupgghslznsollhctxo` int DEFAULT NULL,\n `jqqusnjelcidlbzorpqeisjymudqwtdb` int DEFAULT NULL,\n `amexctkqvaltmtcgnwlsquburljvdnvz` int DEFAULT NULL,\n `emzijfublqvwuncitbmrijzbqkyrazyt` int DEFAULT NULL,\n `exozeaqytemtcqqwgikkxrewgiwtswru` int DEFAULT NULL,\n `pbdpcnjlvmzsmiaswchljsvyeykmzfjo` int DEFAULT NULL,\n `yyngshochjtsupizsdshyzfzwsxgwuak` int DEFAULT NULL,\n `kjeghsehsqbswyjepbnqcoaayfonzqbz` int DEFAULT NULL,\n `zqvwkgwtcmusqklceavuixokhrmntksu` int DEFAULT NULL,\n `rbspkenigwznlkywaomizzehraucikuf` int DEFAULT NULL,\n `qxprikvdwqmtnqskaqezflbjzucntnil` int DEFAULT NULL,\n `kabjmwelpfhtsqcedldecugvckypclhn` int DEFAULT NULL,\n `yiqrgosbepsmonfbxjybggvywhiqrrgv` int DEFAULT NULL,\n `qkoltrmjzsonhtpdadxkppkscmdmqnta` int DEFAULT NULL,\n `fmveghzlcxajyqbqsvpotdxqirjliooa` int DEFAULT NULL,\n `krpvokamlthuzqdbpogjdhfzippzaezy` int DEFAULT NULL,\n `tffdbaduzxqhkfbpibfuxefjvxdkahez` int DEFAULT NULL,\n `mvbwyqafbotkgwheksprvcewjxmmfmse` int DEFAULT NULL,\n `ufegxzsdywcrojuwawuqwolovetlhozn` int DEFAULT NULL,\n `igkkmflbvsrdytqyxcalftqfagyfiitz` int DEFAULT NULL,\n `skmfjfdbyhmhbqemgqalnlltubriqekl` int DEFAULT NULL,\n `dhwibjbtvoyfpbniutytivljmpekcdgb` int DEFAULT NULL,\n `rkyzwfufhngowfokvnwqbttzgbiodayk` int DEFAULT NULL,\n `gfazecjdsbgffajhkerchguzqqmfjung` int DEFAULT NULL,\n `myjppyfbkexcjlqfhueanmpfbkonfpfu` int DEFAULT NULL,\n `bccbndqanjtnnwudyaebmfmtuyggscrv` int DEFAULT NULL,\n `hgmdiahhxjhvbljdorfszwotwmzprhxk` int DEFAULT NULL,\n `gfsqcidhiirfztewbzwphoafaucnhtlf` int DEFAULT NULL,\n `hstpcnahswsmkhfkgzxoouliflipajxb` int DEFAULT NULL,\n `fxakxtdftuatjapwmgqjnfumxiwwakdm` int DEFAULT NULL,\n `nyicffztxsxugyqvkakrziceiaudmefr` int DEFAULT NULL,\n `ojssuraksgvszonswsysakyibjciqrhk` int DEFAULT NULL,\n `pjudkvtdqoqnlvelkyympkjqlhloachl` int DEFAULT NULL,\n `prfuorftjrvjaajgnonenvtwelipyflp` int DEFAULT NULL,\n `shgggrjgfqfueynbsdtabavdfwjzmxtx` int DEFAULT NULL,\n `npbpehkznfcxpewwrwzmbtwtdwcuqinn` int DEFAULT NULL,\n `zhtyckesfmwpbkeajtfwigedfchzthil` int DEFAULT NULL,\n `qvucbknpqhgpfehaiilpypyitzxkiwbc` int DEFAULT NULL,\n `euejpjhmtiykxeamktszwtenxocdkbvr` int DEFAULT NULL,\n `xjqxxqutyfdarwpgzuybzofrqjsgnncp` int DEFAULT NULL,\n `ihtqergrftpjnwzwpzkcvzsuhskxnmoy` int DEFAULT NULL,\n `ohljwqqanzpltivvuwzgatgcovcnbgma` int DEFAULT NULL,\n `uuvumhutwsnbruuxzdycjbunkgznoipl` int DEFAULT NULL,\n `pyiyqepshlbxmopvtgpdqliqosghppna` int DEFAULT NULL,\n `jvcprbppbjqnskppdulcproqorfnccra` int DEFAULT NULL,\n `flakzipdanapvjfbtecrusradvvbtzss` int DEFAULT NULL,\n `uricxxaavcotbnfttllxkbedxkomxwdu` int DEFAULT NULL,\n `qpnipwtysgwjxmpikyxulddqqnpfvgbp` int DEFAULT NULL,\n `boorrrdkpttmjdyawnowfnhvdahhpkea` int DEFAULT NULL,\n `rrynrwaldigqswuypfxzgsjgxbuhfyqx` int DEFAULT NULL,\n `xxalzpnludszlulucwcjyfbywprokuln` int DEFAULT NULL,\n `sfzawwxiyvhlzyhsvgpkypzmcxketrgy` int DEFAULT NULL,\n `qbscdvcmqonqjwhmdtcczneqncaqtkny` int DEFAULT NULL,\n `emozcalhykodobzwyulyhgaosqukpisg` int DEFAULT NULL,\n `jzlclvfanqcqwoimrqdviblwjaypuloc` int DEFAULT NULL,\n `wuqrfjdczfmdlubpukwzrfufmkpgpkca` int DEFAULT NULL,\n `jpusrynkuijaeoleonbuyofuzjitrtql` int DEFAULT NULL,\n `zntoepntvejzocphyyiiprczctdxisvc` int DEFAULT NULL,\n `iwwknmimrogmghtdurxbstlaqjrdzbij` int DEFAULT NULL,\n `yngzatardlqjkzcppzusgvzjfqmxptrx` int DEFAULT NULL,\n `ygjnpmaslkjpszcbvvgjpljwuouaqutg` int DEFAULT NULL,\n `hudcmapozrvmmdiclazthkbfwduefmgg` int DEFAULT NULL,\n `iikeyffajbqdrdyztparaxfkfzxszwfv` int DEFAULT NULL,\n `jmvvjubwkbvzzodpccbigocgccyhxoar` int DEFAULT NULL,\n `cptypaytdvivgfmbhdljwwawqknbhixr` int DEFAULT NULL,\n `syohvzpmsxqwmfysgrwrfhbhuupcehdj` int DEFAULT NULL,\n `ixxvmvznqlkfktiekiixclljnedehunm` int DEFAULT NULL,\n `mbvfwdotdlfwgbdlraooffopkghypugl` int DEFAULT NULL,\n `fpbxwphonuzfdxkncnwphxafhhmmvhij` int DEFAULT NULL,\n `msciimygusboohzayveztzxroawcfynh` int DEFAULT NULL,\n `wdobojyvpoygrserlgbmxwdaregocvxu` int DEFAULT NULL,\n `wrnuyzbcymguvcrxilhikceydqlabasn` int DEFAULT NULL,\n `uswzvomgckmqtekcxqrmairdiyrvbvdf` int DEFAULT NULL,\n `aoydvkwdsjdrqyrsgkpcmkbdiulgneri` int DEFAULT NULL,\n `uezmnxumlwjzgkpojeotdcgwyczdgaso` int DEFAULT NULL,\n `lgrlgqrrakqogrqnpqvfgcqcyxahivqw` int DEFAULT NULL,\n `kvfvcvilcxmkgmysnjynvdoidjuqcmyr` int DEFAULT NULL,\n `ukurinqutwiyvbgdooxfudxnmquhnvic` int DEFAULT NULL,\n `uzvziuppugwedzzxdpdegxhoflwlxiqc` int DEFAULT NULL,\n `nscuyhpglhazdnfsdfchypmmegpmruso` int DEFAULT NULL,\n `emffclsabwxrmfdavgxpyvqsunwkszod` int DEFAULT NULL,\n `pasvypxsaiyovyztukkotudfiwepgxmn` int DEFAULT NULL,\n `lmscugmcrmiyrrooomdbfrrduhgauwzd` int DEFAULT NULL,\n `adpeojrruuurfomapubetonnmyjxeoxf` int DEFAULT NULL,\n `zuyptxggoxheyzjjvbczswqnzwwyddeu` int DEFAULT NULL,\n `zbfrxoshevdqmofrgzmcfdukkpoenxoa` int DEFAULT NULL,\n `klxrjuungxfvjsivzkwatdunvgouccnq` int DEFAULT NULL,\n `wzbbkxrarhfrejguvtmgptccimuecbdy` int DEFAULT NULL,\n `mcmvrcddgfwtoaqphpitqrtkthmmxmix` int DEFAULT NULL,\n `phgrjyqlcixbzmdqbryoderfzxgctobe` int DEFAULT NULL,\n `hhoutqqzbeynvbwpwlwtbrfhylybqhze` int DEFAULT NULL,\n `cyhgfnbubunvsmbwrxuylsfnmvwbavxs` int DEFAULT NULL,\n `yembdscskvxaplbplhdsdtyymdkmnrcp` int DEFAULT NULL,\n `qccnnuirqlvpugvojjgqwadmmomyjesv` int DEFAULT NULL,\n `vaaziqhtdermubezxnzubtvhgtifsnot` int DEFAULT NULL,\n PRIMARY KEY (`aqdntyglbblyaymnjoodjknxqvpkfbbl`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"fhwposxtdpufqjciekvsudvzcdupkqjv\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["aqdntyglbblyaymnjoodjknxqvpkfbbl"],"columns":[{"name":"aqdntyglbblyaymnjoodjknxqvpkfbbl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"jyjjpgmdllelhnmkmltthxdaauiwfbuj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"adqelrmtaycrlvpmtvxavlrgrijpupuh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhqfanenlxcdgebwmkjhoisztvibyyxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvlwowtymkxkvmyavthzymsaawoccyrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xztszflgncbqjmupgghslznsollhctxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jqqusnjelcidlbzorpqeisjymudqwtdb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"amexctkqvaltmtcgnwlsquburljvdnvz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"emzijfublqvwuncitbmrijzbqkyrazyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exozeaqytemtcqqwgikkxrewgiwtswru","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbdpcnjlvmzsmiaswchljsvyeykmzfjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yyngshochjtsupizsdshyzfzwsxgwuak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjeghsehsqbswyjepbnqcoaayfonzqbz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqvwkgwtcmusqklceavuixokhrmntksu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbspkenigwznlkywaomizzehraucikuf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxprikvdwqmtnqskaqezflbjzucntnil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kabjmwelpfhtsqcedldecugvckypclhn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yiqrgosbepsmonfbxjybggvywhiqrrgv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qkoltrmjzsonhtpdadxkppkscmdmqnta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmveghzlcxajyqbqsvpotdxqirjliooa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"krpvokamlthuzqdbpogjdhfzippzaezy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tffdbaduzxqhkfbpibfuxefjvxdkahez","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvbwyqafbotkgwheksprvcewjxmmfmse","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ufegxzsdywcrojuwawuqwolovetlhozn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igkkmflbvsrdytqyxcalftqfagyfiitz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skmfjfdbyhmhbqemgqalnlltubriqekl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhwibjbtvoyfpbniutytivljmpekcdgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkyzwfufhngowfokvnwqbttzgbiodayk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfazecjdsbgffajhkerchguzqqmfjung","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"myjppyfbkexcjlqfhueanmpfbkonfpfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bccbndqanjtnnwudyaebmfmtuyggscrv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hgmdiahhxjhvbljdorfszwotwmzprhxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfsqcidhiirfztewbzwphoafaucnhtlf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hstpcnahswsmkhfkgzxoouliflipajxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxakxtdftuatjapwmgqjnfumxiwwakdm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nyicffztxsxugyqvkakrziceiaudmefr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojssuraksgvszonswsysakyibjciqrhk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjudkvtdqoqnlvelkyympkjqlhloachl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prfuorftjrvjaajgnonenvtwelipyflp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shgggrjgfqfueynbsdtabavdfwjzmxtx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"npbpehkznfcxpewwrwzmbtwtdwcuqinn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhtyckesfmwpbkeajtfwigedfchzthil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvucbknpqhgpfehaiilpypyitzxkiwbc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"euejpjhmtiykxeamktszwtenxocdkbvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjqxxqutyfdarwpgzuybzofrqjsgnncp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ihtqergrftpjnwzwpzkcvzsuhskxnmoy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohljwqqanzpltivvuwzgatgcovcnbgma","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uuvumhutwsnbruuxzdycjbunkgznoipl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pyiyqepshlbxmopvtgpdqliqosghppna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvcprbppbjqnskppdulcproqorfnccra","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flakzipdanapvjfbtecrusradvvbtzss","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uricxxaavcotbnfttllxkbedxkomxwdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qpnipwtysgwjxmpikyxulddqqnpfvgbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"boorrrdkpttmjdyawnowfnhvdahhpkea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrynrwaldigqswuypfxzgsjgxbuhfyqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxalzpnludszlulucwcjyfbywprokuln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfzawwxiyvhlzyhsvgpkypzmcxketrgy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qbscdvcmqonqjwhmdtcczneqncaqtkny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"emozcalhykodobzwyulyhgaosqukpisg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jzlclvfanqcqwoimrqdviblwjaypuloc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wuqrfjdczfmdlubpukwzrfufmkpgpkca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jpusrynkuijaeoleonbuyofuzjitrtql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zntoepntvejzocphyyiiprczctdxisvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwwknmimrogmghtdurxbstlaqjrdzbij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yngzatardlqjkzcppzusgvzjfqmxptrx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ygjnpmaslkjpszcbvvgjpljwuouaqutg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hudcmapozrvmmdiclazthkbfwduefmgg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iikeyffajbqdrdyztparaxfkfzxszwfv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmvvjubwkbvzzodpccbigocgccyhxoar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cptypaytdvivgfmbhdljwwawqknbhixr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"syohvzpmsxqwmfysgrwrfhbhuupcehdj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixxvmvznqlkfktiekiixclljnedehunm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbvfwdotdlfwgbdlraooffopkghypugl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpbxwphonuzfdxkncnwphxafhhmmvhij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"msciimygusboohzayveztzxroawcfynh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wdobojyvpoygrserlgbmxwdaregocvxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wrnuyzbcymguvcrxilhikceydqlabasn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uswzvomgckmqtekcxqrmairdiyrvbvdf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aoydvkwdsjdrqyrsgkpcmkbdiulgneri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uezmnxumlwjzgkpojeotdcgwyczdgaso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgrlgqrrakqogrqnpqvfgcqcyxahivqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvfvcvilcxmkgmysnjynvdoidjuqcmyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ukurinqutwiyvbgdooxfudxnmquhnvic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzvziuppugwedzzxdpdegxhoflwlxiqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nscuyhpglhazdnfsdfchypmmegpmruso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"emffclsabwxrmfdavgxpyvqsunwkszod","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pasvypxsaiyovyztukkotudfiwepgxmn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmscugmcrmiyrrooomdbfrrduhgauwzd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"adpeojrruuurfomapubetonnmyjxeoxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zuyptxggoxheyzjjvbczswqnzwwyddeu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbfrxoshevdqmofrgzmcfdukkpoenxoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"klxrjuungxfvjsivzkwatdunvgouccnq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzbbkxrarhfrejguvtmgptccimuecbdy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcmvrcddgfwtoaqphpitqrtkthmmxmix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phgrjyqlcixbzmdqbryoderfzxgctobe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhoutqqzbeynvbwpwlwtbrfhylybqhze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cyhgfnbubunvsmbwrxuylsfnmvwbavxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yembdscskvxaplbplhdsdtyymdkmnrcp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qccnnuirqlvpugvojjgqwadmmomyjesv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vaaziqhtdermubezxnzubtvhgtifsnot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667696,"databaseName":"models_schema","ddl":"CREATE TABLE `fknkmyhzgzdgbklxmknjahvidhearmkn` (\n `ekgcpnfkygusvdjrukozimpyqlrvbxyr` int NOT NULL,\n `qacrwzpcacdgkbgkquqaumdcplgoccdj` int DEFAULT NULL,\n `vommluqcaexjrnhhctpsdzzbnnpetgdz` int DEFAULT NULL,\n `wnoshwvsjbrrmbjrvnaztzmjfmdvshgx` int DEFAULT NULL,\n `zvuxjbxnpnsmagqnfddubifiqsoxzbqs` int DEFAULT NULL,\n `ulxldkddhgfummrsosdglapvwfyfjntr` int DEFAULT NULL,\n `iiuwpwefoydvpvetvaubzrlgaryjoobm` int DEFAULT NULL,\n `hlastibbugpmnbszsfobtwwlhrkuhauk` int DEFAULT NULL,\n `ixokjwumbddbsiggwxovapehwvypqqpv` int DEFAULT NULL,\n `pvqlwtguxtxptgknlwierqmtcutqplnn` int DEFAULT NULL,\n `kgrlxmgofbglrranyanoojwlcykitbla` int DEFAULT NULL,\n `wkzetmlairtyjeafvgsitrbwavtlrahh` int DEFAULT NULL,\n `lemkbosumngjqrytphzuqeiickagnmmv` int DEFAULT NULL,\n `pmbbfvesrsoehcnakejlcphebwaxvvtn` int DEFAULT NULL,\n `pitcvkssqhdhsjzazuckupuwuhrjxpvv` int DEFAULT NULL,\n `sbkounebpieiiamjayzijkommrnmsxot` int DEFAULT NULL,\n `hyxmnbjwleabkpidtkzihrkiimzvzwrm` int DEFAULT NULL,\n `naysplzfdigbmqnyaeffldeypyrpzuyw` int DEFAULT NULL,\n `fefjommkypjyyximknfiuehpekarcwum` int DEFAULT NULL,\n `usjfukccvsbcnrafuwoswejioyflyxlh` int DEFAULT NULL,\n `rfsetdzskekuxwuwpobgxgpsjoqgceoa` int DEFAULT NULL,\n `egkjwwzjkwxcsowxwjbbdankjdxfyifn` int DEFAULT NULL,\n `mvxlowvaivnfpbtjjkwkzgtebztlvdov` int DEFAULT NULL,\n `wmzsudxdnlehoglckvzuwcqxmznkfvdi` int DEFAULT NULL,\n `tnfhjyzufjxgagyrxtzbexykmnrdteqs` int DEFAULT NULL,\n `gocmkvudlaushszgwevbjtwbdxjjsigq` int DEFAULT NULL,\n `aggloyxsdmhuhkotyhuyqwjmsddsbtui` int DEFAULT NULL,\n `pvjmmnbcvlvubqzdlwkklnnjhzzbodrc` int DEFAULT NULL,\n `spmpszoebnmulpoljjozwxdtnbhomimc` int DEFAULT NULL,\n `kgtuohourgvqbucgrjzigkhrcsqulxxh` int DEFAULT NULL,\n `rfcqlndsnytlscdgaipkswnsaoznpyva` int DEFAULT NULL,\n `pxxsuirazvfcxmxirxeocgexrpocktbj` int DEFAULT NULL,\n `vytgkqeydfxiydtkthushhumqwjrqnkv` int DEFAULT NULL,\n `vysjgejbayejtqyiwgglbgsoiolkydzb` int DEFAULT NULL,\n `pflthoeccyopdsyfbyefauxvyziiofsw` int DEFAULT NULL,\n `mrwzvrvrujdhjoxxpcawgveebpngdroi` int DEFAULT NULL,\n `yixjnhthaiheuichkqzitsvbncxcivld` int DEFAULT NULL,\n `corpbqlwgfooceyjwaanwarbhouqomhy` int DEFAULT NULL,\n `ubznykidofjbdppbjuplrukbiguyisee` int DEFAULT NULL,\n `ohvonylduqevmylygovxynjbtvjmwijh` int DEFAULT NULL,\n `koytlmatcsckcoalkldyqopqfqeznlcc` int DEFAULT NULL,\n `ugrnxyvmatcvvjeunbdhnedvcbhtvxui` int DEFAULT NULL,\n `lrdmegibwzbpahltofyvqnspiwgzlmsh` int DEFAULT NULL,\n `qffbggzytfmrbqhiyldejhdwpzswyciv` int DEFAULT NULL,\n `vcymxnygfgcjpszqolckifzqdgwymyux` int DEFAULT NULL,\n `ndqjsehzixarmududqtnynfyxvadfrcd` int DEFAULT NULL,\n `sodykgjfdgixedxwxjapmkqdczphgsgs` int DEFAULT NULL,\n `njxugwgqztjjluslbfqhmsidlpxuoebr` int DEFAULT NULL,\n `mwlaxnslfgpbssvxbspmxjwtazageerz` int DEFAULT NULL,\n `uwbhbmqwzfryybkjsternyvxgwvzkedu` int DEFAULT NULL,\n `fwlwqkmtdvlqlmbgtnfraxlvqbnbunuh` int DEFAULT NULL,\n `taatllbcgiglhpdetyhrhzcgqupcxdnp` int DEFAULT NULL,\n `zffyrvqblezhjmfsfzkqwowzgkqusguy` int DEFAULT NULL,\n `eovjzfuugwhnfkvkioxesletiuhxwkqr` int DEFAULT NULL,\n `wsiqwkdvrbqdtezpscsdimnahbykmbol` int DEFAULT NULL,\n `nmkttymgiksykwuuzdgxyxufuhdhjzcm` int DEFAULT NULL,\n `rqupxvourwttsxxpzirxlchoiooifnps` int DEFAULT NULL,\n `rnumzwwkozfcrndyubnbkotzrfboukoo` int DEFAULT NULL,\n `mglmkqeffmhjvjdjbueiipldbtasooph` int DEFAULT NULL,\n `zztjyxyxmjdochnkdwsshubpjafodpns` int DEFAULT NULL,\n `uounljusacmeuezowjsjvnpyvwankcyu` int DEFAULT NULL,\n `cakrutzjzyitgamrdjyxktesypienzct` int DEFAULT NULL,\n `yqtknnbkrfmhyxzdbkfsewrwikearydv` int DEFAULT NULL,\n `kasqjsgimdkcggiiqbsgpwtbcdeyuile` int DEFAULT NULL,\n `yszspomchhrhjajlralqxanhgpodiuvy` int DEFAULT NULL,\n `erceugixynqbwnbojposaaapapryzhdl` int DEFAULT NULL,\n `shucvwtsxwomxuolnofmhyswjnrvcjsv` int DEFAULT NULL,\n `zhpwcyzksbubbxkkgpkzxaelcbiisxyd` int DEFAULT NULL,\n `djpswwspwdnpwajmlhhlpxhqvngfciri` int DEFAULT NULL,\n `robcykqtvycgbiisicenswyycpnvrkxn` int DEFAULT NULL,\n `mkbtkqzbrzqcpxdfzkqolbtovpmsklew` int DEFAULT NULL,\n `hrqkouwagwmuunfqgkxcwmvfczpoabom` int DEFAULT NULL,\n `wwwagrntgmvlmhrllypdzccircdapggo` int DEFAULT NULL,\n `ffvqwrvgpqtmqtijmybtmjmsfmxmisug` int DEFAULT NULL,\n `mfijnvgqovevutzfpjfrmuwmkxkgtvmo` int DEFAULT NULL,\n `ftpagyvphzgorqvfjvubauosbormcjvk` int DEFAULT NULL,\n `msgrexapcpigvmcrimnopacwmzjweral` int DEFAULT NULL,\n `eoyywmibywdpeyohbokpzknmcjmlmzrh` int DEFAULT NULL,\n `luegpfsgrvgcebzoojjbidatrquvpeoy` int DEFAULT NULL,\n `vkqtveyivkcxrtecskafbpdgaqpvlfup` int DEFAULT NULL,\n `vfijgirkrzcbcpxddyewjtauzphfiyrm` int DEFAULT NULL,\n `pufefdnjakzjjxrkrlhcoftzklynhjqp` int DEFAULT NULL,\n `fmcqdxwazwdypuwavkachmvnqzgpqogl` int DEFAULT NULL,\n `svdbcxwphrdrnjsoestrkaosvxjrflmy` int DEFAULT NULL,\n `gwlxiilpfybtguqiwlbxylnmiqjmmtok` int DEFAULT NULL,\n `oulslalvbapabkhkiarraegtlrtfwakp` int DEFAULT NULL,\n `nzgpwrzsyblkwitmnecppqnhuaephaft` int DEFAULT NULL,\n `kvlaiqltooyafgqhjbuqpmkaaekyvjii` int DEFAULT NULL,\n `wuwzblyxbmgupwdurdezwywoojxsgeop` int DEFAULT NULL,\n `tstzdlxbajiflrsgzscemqyhvlcabter` int DEFAULT NULL,\n `cpehotngzldyivkwaeiqelqzyhspdynj` int DEFAULT NULL,\n `nruygwmrtkwxqufhpvdmcprcyipatqwh` int DEFAULT NULL,\n `nhuzbvmgyzzdcepcwoinhjhghjrwyvge` int DEFAULT NULL,\n `ekpaandjlroxctlaphcdpzfmvycuqwnq` int DEFAULT NULL,\n `wviqrhdlfxjlmgddegpmvheulzqaqoel` int DEFAULT NULL,\n `rgbbdwodsedsmheiwhfgsfpahmdhlseb` int DEFAULT NULL,\n `vrelndaspirbrfnqirunwenqxodncugz` int DEFAULT NULL,\n `hbsuqsehnsopteydeiwwllyiootsxqzr` int DEFAULT NULL,\n `pbfaquodsukkmfxgkgqwihgurwexrzog` int DEFAULT NULL,\n `absruqfrnhzixyysvtevsfuxgzrxigwr` int DEFAULT NULL,\n PRIMARY KEY (`ekgcpnfkygusvdjrukozimpyqlrvbxyr`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"fknkmyhzgzdgbklxmknjahvidhearmkn\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["ekgcpnfkygusvdjrukozimpyqlrvbxyr"],"columns":[{"name":"ekgcpnfkygusvdjrukozimpyqlrvbxyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"qacrwzpcacdgkbgkquqaumdcplgoccdj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vommluqcaexjrnhhctpsdzzbnnpetgdz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnoshwvsjbrrmbjrvnaztzmjfmdvshgx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvuxjbxnpnsmagqnfddubifiqsoxzbqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ulxldkddhgfummrsosdglapvwfyfjntr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iiuwpwefoydvpvetvaubzrlgaryjoobm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlastibbugpmnbszsfobtwwlhrkuhauk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixokjwumbddbsiggwxovapehwvypqqpv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pvqlwtguxtxptgknlwierqmtcutqplnn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kgrlxmgofbglrranyanoojwlcykitbla","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wkzetmlairtyjeafvgsitrbwavtlrahh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lemkbosumngjqrytphzuqeiickagnmmv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmbbfvesrsoehcnakejlcphebwaxvvtn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pitcvkssqhdhsjzazuckupuwuhrjxpvv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbkounebpieiiamjayzijkommrnmsxot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hyxmnbjwleabkpidtkzihrkiimzvzwrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"naysplzfdigbmqnyaeffldeypyrpzuyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fefjommkypjyyximknfiuehpekarcwum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"usjfukccvsbcnrafuwoswejioyflyxlh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfsetdzskekuxwuwpobgxgpsjoqgceoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"egkjwwzjkwxcsowxwjbbdankjdxfyifn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvxlowvaivnfpbtjjkwkzgtebztlvdov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmzsudxdnlehoglckvzuwcqxmznkfvdi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnfhjyzufjxgagyrxtzbexykmnrdteqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gocmkvudlaushszgwevbjtwbdxjjsigq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aggloyxsdmhuhkotyhuyqwjmsddsbtui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pvjmmnbcvlvubqzdlwkklnnjhzzbodrc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"spmpszoebnmulpoljjozwxdtnbhomimc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kgtuohourgvqbucgrjzigkhrcsqulxxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfcqlndsnytlscdgaipkswnsaoznpyva","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxxsuirazvfcxmxirxeocgexrpocktbj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vytgkqeydfxiydtkthushhumqwjrqnkv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vysjgejbayejtqyiwgglbgsoiolkydzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pflthoeccyopdsyfbyefauxvyziiofsw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrwzvrvrujdhjoxxpcawgveebpngdroi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yixjnhthaiheuichkqzitsvbncxcivld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"corpbqlwgfooceyjwaanwarbhouqomhy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubznykidofjbdppbjuplrukbiguyisee","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohvonylduqevmylygovxynjbtvjmwijh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"koytlmatcsckcoalkldyqopqfqeznlcc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugrnxyvmatcvvjeunbdhnedvcbhtvxui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lrdmegibwzbpahltofyvqnspiwgzlmsh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qffbggzytfmrbqhiyldejhdwpzswyciv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vcymxnygfgcjpszqolckifzqdgwymyux","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ndqjsehzixarmududqtnynfyxvadfrcd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sodykgjfdgixedxwxjapmkqdczphgsgs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njxugwgqztjjluslbfqhmsidlpxuoebr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwlaxnslfgpbssvxbspmxjwtazageerz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uwbhbmqwzfryybkjsternyvxgwvzkedu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwlwqkmtdvlqlmbgtnfraxlvqbnbunuh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"taatllbcgiglhpdetyhrhzcgqupcxdnp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zffyrvqblezhjmfsfzkqwowzgkqusguy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eovjzfuugwhnfkvkioxesletiuhxwkqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wsiqwkdvrbqdtezpscsdimnahbykmbol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmkttymgiksykwuuzdgxyxufuhdhjzcm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqupxvourwttsxxpzirxlchoiooifnps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnumzwwkozfcrndyubnbkotzrfboukoo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mglmkqeffmhjvjdjbueiipldbtasooph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zztjyxyxmjdochnkdwsshubpjafodpns","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uounljusacmeuezowjsjvnpyvwankcyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cakrutzjzyitgamrdjyxktesypienzct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqtknnbkrfmhyxzdbkfsewrwikearydv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kasqjsgimdkcggiiqbsgpwtbcdeyuile","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yszspomchhrhjajlralqxanhgpodiuvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"erceugixynqbwnbojposaaapapryzhdl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shucvwtsxwomxuolnofmhyswjnrvcjsv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhpwcyzksbubbxkkgpkzxaelcbiisxyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"djpswwspwdnpwajmlhhlpxhqvngfciri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"robcykqtvycgbiisicenswyycpnvrkxn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkbtkqzbrzqcpxdfzkqolbtovpmsklew","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hrqkouwagwmuunfqgkxcwmvfczpoabom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwwagrntgmvlmhrllypdzccircdapggo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffvqwrvgpqtmqtijmybtmjmsfmxmisug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mfijnvgqovevutzfpjfrmuwmkxkgtvmo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftpagyvphzgorqvfjvubauosbormcjvk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"msgrexapcpigvmcrimnopacwmzjweral","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eoyywmibywdpeyohbokpzknmcjmlmzrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"luegpfsgrvgcebzoojjbidatrquvpeoy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkqtveyivkcxrtecskafbpdgaqpvlfup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vfijgirkrzcbcpxddyewjtauzphfiyrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pufefdnjakzjjxrkrlhcoftzklynhjqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmcqdxwazwdypuwavkachmvnqzgpqogl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"svdbcxwphrdrnjsoestrkaosvxjrflmy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gwlxiilpfybtguqiwlbxylnmiqjmmtok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oulslalvbapabkhkiarraegtlrtfwakp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzgpwrzsyblkwitmnecppqnhuaephaft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvlaiqltooyafgqhjbuqpmkaaekyvjii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wuwzblyxbmgupwdurdezwywoojxsgeop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tstzdlxbajiflrsgzscemqyhvlcabter","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cpehotngzldyivkwaeiqelqzyhspdynj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nruygwmrtkwxqufhpvdmcprcyipatqwh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhuzbvmgyzzdcepcwoinhjhghjrwyvge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekpaandjlroxctlaphcdpzfmvycuqwnq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wviqrhdlfxjlmgddegpmvheulzqaqoel","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgbbdwodsedsmheiwhfgsfpahmdhlseb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vrelndaspirbrfnqirunwenqxodncugz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbsuqsehnsopteydeiwwllyiootsxqzr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbfaquodsukkmfxgkgqwihgurwexrzog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"absruqfrnhzixyysvtevsfuxgzrxigwr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667740,"databaseName":"models_schema","ddl":"CREATE TABLE `fmydwwpviyonaxoxelqmczxonlvjcnxv` (\n `ffuuegmzvjtdbzazquykbvhsngfsytos` int NOT NULL,\n `gnguibrufmsdhiuxecgxsdkveaynkiuq` int DEFAULT NULL,\n `ddkecnzjqmffnbitmwxhwjgxjmnxliin` int DEFAULT NULL,\n `vrapnxxhntwmgeehrmddradfxjwxbtvh` int DEFAULT NULL,\n `vsrzhzssumguoidlxcleepddgyyodadg` int DEFAULT NULL,\n `jyhpmeavugoydhfgpoajeitrtegaeclx` int DEFAULT NULL,\n `dlurvipneoojbijaeknxpnuccsgphnpy` int DEFAULT NULL,\n `dbwgajmqoquhubeblqcvuxhsabnibnnn` int DEFAULT NULL,\n `isspayffujriylinrdjamrkjeazqhobh` int DEFAULT NULL,\n `xafdsfojrzjwesimccvorrgqhiutgjxs` int DEFAULT NULL,\n `bnmwyjjwakthxfbxjmclazxhjghlsoaz` int DEFAULT NULL,\n `ovzwjeudtgwptrlujygpwmvqxhteateq` int DEFAULT NULL,\n `fjxnyhlksxnamdjbgzsqlbawfumghqpf` int DEFAULT NULL,\n `xflloshumbrdiomlehmxcqqoiqokcosf` int DEFAULT NULL,\n `lqkuujsnwafhgqumujvgsroeflrusjwb` int DEFAULT NULL,\n `eemkjwyybcxaxayuqtkjggzoyvljmjag` int DEFAULT NULL,\n `wbpylewghretxlcmsqhtljbndcyjzjsw` int DEFAULT NULL,\n `trnczwgybjglgphfepsxathhzrlmuejr` int DEFAULT NULL,\n `hnacrayjudsmjsnhekgcksagiiwlyhpe` int DEFAULT NULL,\n `oloxrlkektbabgpazhykrrgzbbhqlecj` int DEFAULT NULL,\n `huxbyexmwdhxffwdttdqknsjowllddlu` int DEFAULT NULL,\n `lyppqywpmdcbdltqixqmuaapnmizythd` int DEFAULT NULL,\n `yyjgigaieqindszotcntbyutgowannja` int DEFAULT NULL,\n `ksbgqtyozgjcuzlwrgqbwisxpzcmoarr` int DEFAULT NULL,\n `fnqjuqysisxxejqigqfpkezmefmrqepd` int DEFAULT NULL,\n `nzdrrolqvbkfpxukmjvjxrpircjdjrye` int DEFAULT NULL,\n `bqccdzqykjkafdsjuzsgwyvuvtfeptbd` int DEFAULT NULL,\n `plfqzblwruhyhjkpmbydmtxjsgllrlsj` int DEFAULT NULL,\n `kcrftwcvxocxkhelncgqztiemhmqxcwu` int DEFAULT NULL,\n `tmdhgaimucnahdnjxxnslezjaersnvyb` int DEFAULT NULL,\n `pceymcrtetivdozjunkddvsmbybmhoxj` int DEFAULT NULL,\n `fchonydkxxzimrdykzcimjpxhlmwubaf` int DEFAULT NULL,\n `rxukqourniyudiyxohhangjagvlvzswj` int DEFAULT NULL,\n `lokoxwihlbdymptefbkcwjpiqpitriwr` int DEFAULT NULL,\n `sbiaoxwjomspjpchrteiobfstutrriyg` int DEFAULT NULL,\n `yjpsrospntqzkjnwztlpkbullsnvxrwu` int DEFAULT NULL,\n `wbffqmgtnwrhaudvrkqylwnpvjczpmbf` int DEFAULT NULL,\n `zzyfoxrrpfxdjjbkskphelqxlrithtrg` int DEFAULT NULL,\n `gqsoujrgvymktbbnkawciavtchgifhyd` int DEFAULT NULL,\n `hwuqjpsjcwkbqthdqzetlzlsfiwjgoep` int DEFAULT NULL,\n `ixagmbssgdgdofpnfwjgjfdjcpcqlolv` int DEFAULT NULL,\n `kbmjpgaegubvbebhgxrikyjisrafhbcg` int DEFAULT NULL,\n `kddgxisuuzmaexutjiwrwjthsqzlhvas` int DEFAULT NULL,\n `qclfucacprjaxmtbttmfiqbgluqqvuya` int DEFAULT NULL,\n `fkqawiqsnoekmzxjblkhrxwzxmuftmoh` int DEFAULT NULL,\n `hmxunhkptuepzqlolpyhmaqprfdrugxt` int DEFAULT NULL,\n `nftfhexmhkdxcxaaxwbzltiujkhadggt` int DEFAULT NULL,\n `twhloocgvwtrnikrgglufeaejgudagah` int DEFAULT NULL,\n `bvtgoakwjxqcqilywsmepflmnjxeqfuc` int DEFAULT NULL,\n `gfuuheyzppyueeyftybokasjbynlkxdu` int DEFAULT NULL,\n `ctebdrxxgrffzifofojaoqipfomrczvl` int DEFAULT NULL,\n `dqgipuhlmpnrlmbbiuyftmstotdftxrq` int DEFAULT NULL,\n `gsfuqhkvwutunnighffixeaigjhdxynx` int DEFAULT NULL,\n `xaebcbbevlzcehxzukptcqmvkgsfwupv` int DEFAULT NULL,\n `udpigqrrdygsbefywpnemkolliskwroq` int DEFAULT NULL,\n `khmfxolknixqxbofmvjgsjydbxomplhu` int DEFAULT NULL,\n `wnsjeuqblvgsjlhuicilnfmnymagdddp` int DEFAULT NULL,\n `vlsgzhgfhwubdjjdiggzazxffmjzqaro` int DEFAULT NULL,\n `fxyqcpecwcowoojnhvraybgelogeqhuc` int DEFAULT NULL,\n `aibtzoyncjlvsnzszhruzsesmpazorjt` int DEFAULT NULL,\n `srkmopfaqkqooixsapdiickenvwbodpy` int DEFAULT NULL,\n `wlndalfhcvvepcogyalabbfbyjbrsrlv` int DEFAULT NULL,\n `ibodevjhukigtuhuutjuarjuncfqjjvq` int DEFAULT NULL,\n `jzzcaiuuobjtphwrgtsbxbxzhmkqoffg` int DEFAULT NULL,\n `ewizvkgvpcxcyjdyxfxpvycifixdimpj` int DEFAULT NULL,\n `rmirgtlxngmngeohrphtnqlynkihllmc` int DEFAULT NULL,\n `fplgdpsjkpoarljjpaylvqewtuubyobk` int DEFAULT NULL,\n `bzfrxhrxxnzrbpjjyfbkquagbcnpgkle` int DEFAULT NULL,\n `vxcnhnqicxqojkldlfnfmrhhajrglfwo` int DEFAULT NULL,\n `eathampkltxafmatwwnpsbvztpwgcrzn` int DEFAULT NULL,\n `xcyizhezlbkkbsguuahkdacafhzaeywq` int DEFAULT NULL,\n `xrhztcjcliidtzfcqvnlzzvxsaluabhq` int DEFAULT NULL,\n `jzlqoothhdyayjxcimiqqszckrcbdafq` int DEFAULT NULL,\n `lvennertshhyyzkzbuzsmikdlcrrysxg` int DEFAULT NULL,\n `ujfkaqeobctgubdanobmurzqtmtpbckm` int DEFAULT NULL,\n `rijzhtjkqypzlnicpetieiabotadfbkp` int DEFAULT NULL,\n `jbdgvnnkryunfssyygqyepvftalivxhh` int DEFAULT NULL,\n `xrytszdaksdctgacfkzkqgyktowzetjm` int DEFAULT NULL,\n `wfjhuhnzkudcmgzlazphiuzzgmfrtbfy` int DEFAULT NULL,\n `ewwyqhiecwqjcivbwqqpbnruujnszswk` int DEFAULT NULL,\n `dnhsgkaktkbjrlotfpqqlthjhnqfzoml` int DEFAULT NULL,\n `thkzdvlibpuofaeiijoqajjeakuluexv` int DEFAULT NULL,\n `coxiatzvtudfuprcelafscssabxtmleg` int DEFAULT NULL,\n `yganwtfejjmmxzodqjfjkioobulfxhka` int DEFAULT NULL,\n `gaxmoddwrxsbkixpgedskzwizherbxrn` int DEFAULT NULL,\n `gdwglfxgjxwygygsqgviblyfubaqwjtt` int DEFAULT NULL,\n `uxianqmxwqbqlqxxaecmmmaufhpscgdk` int DEFAULT NULL,\n `kavnehckilbwmkhpxqqzbrtmvcuvwqwn` int DEFAULT NULL,\n `uoleoubgmpxyjjlvdlgrenzdjnttkhha` int DEFAULT NULL,\n `abkztsmdmxqlkxvpqnjagccrpqnhpohb` int DEFAULT NULL,\n `nxendeyhtyfqhwlojtsftpcvbxfwslyv` int DEFAULT NULL,\n `tyfnvyjhwfscpdecixpdiirfbwzidchq` int DEFAULT NULL,\n `axlwaubbbltnewxhrsluhnndrcatjult` int DEFAULT NULL,\n `prrxpniezcafxvajzmmfbdsdxyevverg` int DEFAULT NULL,\n `pyivnghklrrxpflcdvrielwgqikfbrlt` int DEFAULT NULL,\n `plwiudthnnibhxwjtuenywtvwsxtxoad` int DEFAULT NULL,\n `uydtnjlnpuxbvskskxgbsyogfumjroza` int DEFAULT NULL,\n `iwvnmybwobesothmacwvbeinlsqatovw` int DEFAULT NULL,\n `kuagzrcqutepfadlrgnrzcuoyxjkgfss` int DEFAULT NULL,\n `kxvwspeifpsgpauaogtmdapxdavwfxjz` int DEFAULT NULL,\n PRIMARY KEY (`ffuuegmzvjtdbzazquykbvhsngfsytos`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"fmydwwpviyonaxoxelqmczxonlvjcnxv\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["ffuuegmzvjtdbzazquykbvhsngfsytos"],"columns":[{"name":"ffuuegmzvjtdbzazquykbvhsngfsytos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"gnguibrufmsdhiuxecgxsdkveaynkiuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ddkecnzjqmffnbitmwxhwjgxjmnxliin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vrapnxxhntwmgeehrmddradfxjwxbtvh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsrzhzssumguoidlxcleepddgyyodadg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jyhpmeavugoydhfgpoajeitrtegaeclx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dlurvipneoojbijaeknxpnuccsgphnpy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbwgajmqoquhubeblqcvuxhsabnibnnn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"isspayffujriylinrdjamrkjeazqhobh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xafdsfojrzjwesimccvorrgqhiutgjxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnmwyjjwakthxfbxjmclazxhjghlsoaz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovzwjeudtgwptrlujygpwmvqxhteateq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjxnyhlksxnamdjbgzsqlbawfumghqpf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xflloshumbrdiomlehmxcqqoiqokcosf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqkuujsnwafhgqumujvgsroeflrusjwb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eemkjwyybcxaxayuqtkjggzoyvljmjag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbpylewghretxlcmsqhtljbndcyjzjsw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"trnczwgybjglgphfepsxathhzrlmuejr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hnacrayjudsmjsnhekgcksagiiwlyhpe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oloxrlkektbabgpazhykrrgzbbhqlecj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"huxbyexmwdhxffwdttdqknsjowllddlu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lyppqywpmdcbdltqixqmuaapnmizythd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yyjgigaieqindszotcntbyutgowannja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ksbgqtyozgjcuzlwrgqbwisxpzcmoarr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnqjuqysisxxejqigqfpkezmefmrqepd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzdrrolqvbkfpxukmjvjxrpircjdjrye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqccdzqykjkafdsjuzsgwyvuvtfeptbd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"plfqzblwruhyhjkpmbydmtxjsgllrlsj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kcrftwcvxocxkhelncgqztiemhmqxcwu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmdhgaimucnahdnjxxnslezjaersnvyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pceymcrtetivdozjunkddvsmbybmhoxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fchonydkxxzimrdykzcimjpxhlmwubaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxukqourniyudiyxohhangjagvlvzswj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lokoxwihlbdymptefbkcwjpiqpitriwr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbiaoxwjomspjpchrteiobfstutrriyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjpsrospntqzkjnwztlpkbullsnvxrwu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbffqmgtnwrhaudvrkqylwnpvjczpmbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzyfoxrrpfxdjjbkskphelqxlrithtrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqsoujrgvymktbbnkawciavtchgifhyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwuqjpsjcwkbqthdqzetlzlsfiwjgoep","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixagmbssgdgdofpnfwjgjfdjcpcqlolv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kbmjpgaegubvbebhgxrikyjisrafhbcg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kddgxisuuzmaexutjiwrwjthsqzlhvas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qclfucacprjaxmtbttmfiqbgluqqvuya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fkqawiqsnoekmzxjblkhrxwzxmuftmoh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmxunhkptuepzqlolpyhmaqprfdrugxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nftfhexmhkdxcxaaxwbzltiujkhadggt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twhloocgvwtrnikrgglufeaejgudagah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvtgoakwjxqcqilywsmepflmnjxeqfuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfuuheyzppyueeyftybokasjbynlkxdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctebdrxxgrffzifofojaoqipfomrczvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqgipuhlmpnrlmbbiuyftmstotdftxrq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gsfuqhkvwutunnighffixeaigjhdxynx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xaebcbbevlzcehxzukptcqmvkgsfwupv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udpigqrrdygsbefywpnemkolliskwroq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"khmfxolknixqxbofmvjgsjydbxomplhu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnsjeuqblvgsjlhuicilnfmnymagdddp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vlsgzhgfhwubdjjdiggzazxffmjzqaro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxyqcpecwcowoojnhvraybgelogeqhuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aibtzoyncjlvsnzszhruzsesmpazorjt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"srkmopfaqkqooixsapdiickenvwbodpy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wlndalfhcvvepcogyalabbfbyjbrsrlv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibodevjhukigtuhuutjuarjuncfqjjvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jzzcaiuuobjtphwrgtsbxbxzhmkqoffg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ewizvkgvpcxcyjdyxfxpvycifixdimpj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rmirgtlxngmngeohrphtnqlynkihllmc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fplgdpsjkpoarljjpaylvqewtuubyobk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bzfrxhrxxnzrbpjjyfbkquagbcnpgkle","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxcnhnqicxqojkldlfnfmrhhajrglfwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eathampkltxafmatwwnpsbvztpwgcrzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xcyizhezlbkkbsguuahkdacafhzaeywq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xrhztcjcliidtzfcqvnlzzvxsaluabhq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jzlqoothhdyayjxcimiqqszckrcbdafq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvennertshhyyzkzbuzsmikdlcrrysxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujfkaqeobctgubdanobmurzqtmtpbckm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rijzhtjkqypzlnicpetieiabotadfbkp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jbdgvnnkryunfssyygqyepvftalivxhh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xrytszdaksdctgacfkzkqgyktowzetjm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfjhuhnzkudcmgzlazphiuzzgmfrtbfy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ewwyqhiecwqjcivbwqqpbnruujnszswk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dnhsgkaktkbjrlotfpqqlthjhnqfzoml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thkzdvlibpuofaeiijoqajjeakuluexv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"coxiatzvtudfuprcelafscssabxtmleg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yganwtfejjmmxzodqjfjkioobulfxhka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gaxmoddwrxsbkixpgedskzwizherbxrn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdwglfxgjxwygygsqgviblyfubaqwjtt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxianqmxwqbqlqxxaecmmmaufhpscgdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kavnehckilbwmkhpxqqzbrtmvcuvwqwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uoleoubgmpxyjjlvdlgrenzdjnttkhha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"abkztsmdmxqlkxvpqnjagccrpqnhpohb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxendeyhtyfqhwlojtsftpcvbxfwslyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tyfnvyjhwfscpdecixpdiirfbwzidchq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axlwaubbbltnewxhrsluhnndrcatjult","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prrxpniezcafxvajzmmfbdsdxyevverg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pyivnghklrrxpflcdvrielwgqikfbrlt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"plwiudthnnibhxwjtuenywtvwsxtxoad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uydtnjlnpuxbvskskxgbsyogfumjroza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwvnmybwobesothmacwvbeinlsqatovw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kuagzrcqutepfadlrgnrzcuoyxjkgfss","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxvwspeifpsgpauaogtmdapxdavwfxjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667784,"databaseName":"models_schema","ddl":"CREATE TABLE `fmyszhkkeojxcsveoimbanarqxdpbqkz` (\n `hnplgyojhftpkhiascztvjfgjhesdpix` int NOT NULL,\n `vabumskvplapiternmoircykzsmvzakm` int DEFAULT NULL,\n `wmcvqbmmufcyjdobrhjileqmextqnvnx` int DEFAULT NULL,\n `qmkxitfwdowmycwmufmaykelzzrfxuox` int DEFAULT NULL,\n `hfbcbtgizlvmvgetnivvtaienylwrrnt` int DEFAULT NULL,\n `vckwwetpoiznvqmonfdzfdsvooxowzmr` int DEFAULT NULL,\n `smltzfomoxiyjubdzpporkciupuqhknw` int DEFAULT NULL,\n `hpekgwqfcuthcivnyasplicpjqacbpdu` int DEFAULT NULL,\n `fisgngvsrzqxzlkogpnyqmmrngoocwll` int DEFAULT NULL,\n `hoaqkxgwqvkwoxwjdszfywbixynnrxgx` int DEFAULT NULL,\n `sfrzdnopyqngphalzfzifvhshkgghsuq` int DEFAULT NULL,\n `pwtzytqvthaufoevozhqmafzzqdraxzl` int DEFAULT NULL,\n `ylvjbtxbyjsvrouxulovzcxedyuxseqv` int DEFAULT NULL,\n `ufvilgoajbpkrmdszjbkouqpkxcrczed` int DEFAULT NULL,\n `efyoqmwtjbcygumorkfhaaztlugaytnr` int DEFAULT NULL,\n `paxticaclpfixaozjhsmjcrpruwdazjn` int DEFAULT NULL,\n `mkdkwnkjxctxzyoutaqzrklwzhknjaqq` int DEFAULT NULL,\n `xscynvghkgsfekvbfxrpzphcxcacwrvm` int DEFAULT NULL,\n `ukjggwaevecanzzstoddvrxdtyhocsaj` int DEFAULT NULL,\n `dqtyonoacbbumalghqcftczxxcbphmfh` int DEFAULT NULL,\n `qwlffaiqhdigtjxtrrgpjmacxzzlgbrx` int DEFAULT NULL,\n `dxukwsnhwawgdckbbkdthoorhwrixiuu` int DEFAULT NULL,\n `fwijdpeqjnqskloetevhvckzcgyxfvqh` int DEFAULT NULL,\n `ypwytknhulgfgdxrhlboipchjxdvgwum` int DEFAULT NULL,\n `ozjtylqopfbckjwdnozmbfacfudgzwim` int DEFAULT NULL,\n `jtjbjpjuhkhspncbyaicnyxtwctpcgts` int DEFAULT NULL,\n `jsdpfcvpkgzamlfumdntiqzlorbaxrin` int DEFAULT NULL,\n `kfeyvywexisbpszsujiipzpljnvlqlbu` int DEFAULT NULL,\n `opjjzdnwcswukcnabbbhckmflegjlmid` int DEFAULT NULL,\n `fpbrqkbqpctazodffxdlsrflzcawtaos` int DEFAULT NULL,\n `ljortgnwcjnpcoikmxngumwudseaksby` int DEFAULT NULL,\n `dryctepwndqffghifaiwtosdvbznqcgv` int DEFAULT NULL,\n `jhpwepispfsahynfzlamfwgqwyfxcdor` int DEFAULT NULL,\n `fnjfwyrroxskmjepxnwlrozqflxmwbci` int DEFAULT NULL,\n `lhaspoxmhhwubmulmiwyxhnzxblutoro` int DEFAULT NULL,\n `pgjwqmavmxldhyvhiugaedopxkdqslca` int DEFAULT NULL,\n `ugjxwsmruelnbkythtlppmsckjokqart` int DEFAULT NULL,\n `cbgwnetrqbmatholkjmpphpkfnelvzbg` int DEFAULT NULL,\n `fyiuccxjejlelgnbcbidcnfabqkcvuxx` int DEFAULT NULL,\n `hwajlepvkhhfkwvpzzoudvusvhzepmpt` int DEFAULT NULL,\n `slamtgyubkhumdnlwlswhpvabsttmfzx` int DEFAULT NULL,\n `xikmeusissemrxogbonvncwszxcvbkon` int DEFAULT NULL,\n `zqlnjrcpspwajsvnydvvgvkjmzuvgtej` int DEFAULT NULL,\n `vocxcagshdasbphihfrbcnvmovuvnacg` int DEFAULT NULL,\n `bkwlrxkolfdibshzquqgiocqrwjkqwkb` int DEFAULT NULL,\n `ewchtxkmsyuevuxokksafnveitxumeqg` int DEFAULT NULL,\n `iqcrulcnzivbljhgszclbeaxitkixrab` int DEFAULT NULL,\n `upprlexunvjwdhhmooxenflzpnjpixsg` int DEFAULT NULL,\n `vooyoemsszlmuxcnxbcwusutmefuunoy` int DEFAULT NULL,\n `gfvxhinkxpsbjyndbaehwxyhzrajbzws` int DEFAULT NULL,\n `rkjdrhaeuuourwssazpgfzybtneexpga` int DEFAULT NULL,\n `kflbjzicynxkzppucdpfynnstamctkaw` int DEFAULT NULL,\n `sauswbukqvcazyideqneinxugrzwytvj` int DEFAULT NULL,\n `nltpovbsjtemhedeeszddmkahqpdwyfo` int DEFAULT NULL,\n `kzmahskewnljfaxxeqbmzptleojeggmu` int DEFAULT NULL,\n `spvhoqdtirlpalynftmqsvllpzfzhand` int DEFAULT NULL,\n `csnvgmdsxqirydfntjlcorlivmtuwpda` int DEFAULT NULL,\n `rkdkednpdritxwieouogsckomwrzvpwy` int DEFAULT NULL,\n `kyvhrjycidfptynllojeuymrpvspvoyq` int DEFAULT NULL,\n `kjdczfvapejbmaokgrcelhnvumswxvly` int DEFAULT NULL,\n `vfqdgovazbexscvhadmfqgpuhzglgncf` int DEFAULT NULL,\n `rcjrfzntmjpmdpimfniypxpmaqgzdvei` int DEFAULT NULL,\n `polvnahyyiwjnxvnxyzisclzsjdlapcn` int DEFAULT NULL,\n `suoihncqywmuqqentbpprjqpgqvnjsxg` int DEFAULT NULL,\n `pkajvicawywbjgxhxfaxfxvaluatgptg` int DEFAULT NULL,\n `afjwajfsmsmoymohrjfjajaltyhxkydb` int DEFAULT NULL,\n `nyureerjuqfiuwxqtlregcnoxdjuoeib` int DEFAULT NULL,\n `gylyooawcxbzyljugsmdkbgihchhvmhh` int DEFAULT NULL,\n `wbybblgpyudbpmdoigbzyazmqvswbevh` int DEFAULT NULL,\n `xvghbhoswyweywhtgnwhuuqkrqcridua` int DEFAULT NULL,\n `gejovnunctdmkktcyruudskxneddybay` int DEFAULT NULL,\n `psrvdwjrmljqoaaimfejpcxeqmulbtlp` int DEFAULT NULL,\n `hgfhqjjtuhgqqgrmrajvxclvzywrhnyl` int DEFAULT NULL,\n `fbvfoiyexesudclujxdzdzsuogjhychg` int DEFAULT NULL,\n `axsdlyokosqeqzwyphoayzegmcsqvmro` int DEFAULT NULL,\n `yetyultyhdorzkuolkhmabckdarpvppi` int DEFAULT NULL,\n `sycwtngorcsueozkhgtsqkhppsivavgu` int DEFAULT NULL,\n `yptvujhneiuwocuoixkakhwhwlcnkgdz` int DEFAULT NULL,\n `dwltehmrttxpsztumyalofefuxqsidip` int DEFAULT NULL,\n `ubniryqblqbmevwnzzxgzhajsbrvnpfg` int DEFAULT NULL,\n `faroacqklyhfnqyxemrpkyzxuvvqilbi` int DEFAULT NULL,\n `mavyftmwewolmhnqtvynfjivbwccnydi` int DEFAULT NULL,\n `lxdsrdrxolijovxfhxtxlhywtjnealwj` int DEFAULT NULL,\n `ognnahpwxjyxnxpqxewtqzjjnejrbijc` int DEFAULT NULL,\n `irjfyiurhxqnnfpxojifjjeoplwnizqy` int DEFAULT NULL,\n `vjwkmldyzwldxjxhqxhdnmtosainxnmz` int DEFAULT NULL,\n `bryxbmglebokmmrvtcoyjkjsuydgujmw` int DEFAULT NULL,\n `gfuqktmgipmjhrppjqqhgocpkmdkqsak` int DEFAULT NULL,\n `xwzezuqxslmfsljuqlwjxnmylsawcigp` int DEFAULT NULL,\n `vsuawqdysryhtzixkpwxvubweavjxdjl` int DEFAULT NULL,\n `nyfvnrlfkxpfiauynhmiawapmhhirubo` int DEFAULT NULL,\n `ndysfdrsdcqvxkyywajrqovmabjpiaha` int DEFAULT NULL,\n `phlugdumqzabvfoftipcobxckernduun` int DEFAULT NULL,\n `fenglcpsallektsrgvqepwwzfdftvqpn` int DEFAULT NULL,\n `anmvkmucfbttujoetaqhwnhbqvboccqa` int DEFAULT NULL,\n `vsotvngzgtrepbwhaqiemldhbsompckm` int DEFAULT NULL,\n `ogmksvbhrunbitdprqtqhddyftofzmte` int DEFAULT NULL,\n `twoxwicraqdcmsaivuzjrfaqwqtpacar` int DEFAULT NULL,\n `nypzjiqwpkhwnxdaprutcfoqteoejkjq` int DEFAULT NULL,\n `pwszgolpmiqtfetagsardhshnbksqyho` int DEFAULT NULL,\n PRIMARY KEY (`hnplgyojhftpkhiascztvjfgjhesdpix`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"fmyszhkkeojxcsveoimbanarqxdpbqkz\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["hnplgyojhftpkhiascztvjfgjhesdpix"],"columns":[{"name":"hnplgyojhftpkhiascztvjfgjhesdpix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"vabumskvplapiternmoircykzsmvzakm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmcvqbmmufcyjdobrhjileqmextqnvnx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmkxitfwdowmycwmufmaykelzzrfxuox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfbcbtgizlvmvgetnivvtaienylwrrnt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vckwwetpoiznvqmonfdzfdsvooxowzmr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smltzfomoxiyjubdzpporkciupuqhknw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hpekgwqfcuthcivnyasplicpjqacbpdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fisgngvsrzqxzlkogpnyqmmrngoocwll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hoaqkxgwqvkwoxwjdszfywbixynnrxgx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfrzdnopyqngphalzfzifvhshkgghsuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwtzytqvthaufoevozhqmafzzqdraxzl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ylvjbtxbyjsvrouxulovzcxedyuxseqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ufvilgoajbpkrmdszjbkouqpkxcrczed","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"efyoqmwtjbcygumorkfhaaztlugaytnr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"paxticaclpfixaozjhsmjcrpruwdazjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkdkwnkjxctxzyoutaqzrklwzhknjaqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xscynvghkgsfekvbfxrpzphcxcacwrvm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ukjggwaevecanzzstoddvrxdtyhocsaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqtyonoacbbumalghqcftczxxcbphmfh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwlffaiqhdigtjxtrrgpjmacxzzlgbrx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxukwsnhwawgdckbbkdthoorhwrixiuu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwijdpeqjnqskloetevhvckzcgyxfvqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypwytknhulgfgdxrhlboipchjxdvgwum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ozjtylqopfbckjwdnozmbfacfudgzwim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jtjbjpjuhkhspncbyaicnyxtwctpcgts","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jsdpfcvpkgzamlfumdntiqzlorbaxrin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfeyvywexisbpszsujiipzpljnvlqlbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opjjzdnwcswukcnabbbhckmflegjlmid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpbrqkbqpctazodffxdlsrflzcawtaos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljortgnwcjnpcoikmxngumwudseaksby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dryctepwndqffghifaiwtosdvbznqcgv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jhpwepispfsahynfzlamfwgqwyfxcdor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnjfwyrroxskmjepxnwlrozqflxmwbci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhaspoxmhhwubmulmiwyxhnzxblutoro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgjwqmavmxldhyvhiugaedopxkdqslca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugjxwsmruelnbkythtlppmsckjokqart","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbgwnetrqbmatholkjmpphpkfnelvzbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fyiuccxjejlelgnbcbidcnfabqkcvuxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwajlepvkhhfkwvpzzoudvusvhzepmpt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"slamtgyubkhumdnlwlswhpvabsttmfzx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xikmeusissemrxogbonvncwszxcvbkon","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqlnjrcpspwajsvnydvvgvkjmzuvgtej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vocxcagshdasbphihfrbcnvmovuvnacg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkwlrxkolfdibshzquqgiocqrwjkqwkb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ewchtxkmsyuevuxokksafnveitxumeqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqcrulcnzivbljhgszclbeaxitkixrab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upprlexunvjwdhhmooxenflzpnjpixsg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vooyoemsszlmuxcnxbcwusutmefuunoy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfvxhinkxpsbjyndbaehwxyhzrajbzws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkjdrhaeuuourwssazpgfzybtneexpga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kflbjzicynxkzppucdpfynnstamctkaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sauswbukqvcazyideqneinxugrzwytvj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nltpovbsjtemhedeeszddmkahqpdwyfo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzmahskewnljfaxxeqbmzptleojeggmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"spvhoqdtirlpalynftmqsvllpzfzhand","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"csnvgmdsxqirydfntjlcorlivmtuwpda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkdkednpdritxwieouogsckomwrzvpwy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kyvhrjycidfptynllojeuymrpvspvoyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjdczfvapejbmaokgrcelhnvumswxvly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vfqdgovazbexscvhadmfqgpuhzglgncf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcjrfzntmjpmdpimfniypxpmaqgzdvei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"polvnahyyiwjnxvnxyzisclzsjdlapcn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"suoihncqywmuqqentbpprjqpgqvnjsxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkajvicawywbjgxhxfaxfxvaluatgptg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afjwajfsmsmoymohrjfjajaltyhxkydb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nyureerjuqfiuwxqtlregcnoxdjuoeib","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gylyooawcxbzyljugsmdkbgihchhvmhh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbybblgpyudbpmdoigbzyazmqvswbevh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvghbhoswyweywhtgnwhuuqkrqcridua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gejovnunctdmkktcyruudskxneddybay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"psrvdwjrmljqoaaimfejpcxeqmulbtlp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hgfhqjjtuhgqqgrmrajvxclvzywrhnyl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbvfoiyexesudclujxdzdzsuogjhychg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axsdlyokosqeqzwyphoayzegmcsqvmro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yetyultyhdorzkuolkhmabckdarpvppi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sycwtngorcsueozkhgtsqkhppsivavgu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yptvujhneiuwocuoixkakhwhwlcnkgdz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwltehmrttxpsztumyalofefuxqsidip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubniryqblqbmevwnzzxgzhajsbrvnpfg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"faroacqklyhfnqyxemrpkyzxuvvqilbi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mavyftmwewolmhnqtvynfjivbwccnydi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxdsrdrxolijovxfhxtxlhywtjnealwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ognnahpwxjyxnxpqxewtqzjjnejrbijc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"irjfyiurhxqnnfpxojifjjeoplwnizqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjwkmldyzwldxjxhqxhdnmtosainxnmz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bryxbmglebokmmrvtcoyjkjsuydgujmw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfuqktmgipmjhrppjqqhgocpkmdkqsak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xwzezuqxslmfsljuqlwjxnmylsawcigp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsuawqdysryhtzixkpwxvubweavjxdjl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nyfvnrlfkxpfiauynhmiawapmhhirubo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ndysfdrsdcqvxkyywajrqovmabjpiaha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phlugdumqzabvfoftipcobxckernduun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fenglcpsallektsrgvqepwwzfdftvqpn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"anmvkmucfbttujoetaqhwnhbqvboccqa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsotvngzgtrepbwhaqiemldhbsompckm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ogmksvbhrunbitdprqtqhddyftofzmte","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twoxwicraqdcmsaivuzjrfaqwqtpacar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nypzjiqwpkhwnxdaprutcfoqteoejkjq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwszgolpmiqtfetagsardhshnbksqyho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667819,"databaseName":"models_schema","ddl":"CREATE TABLE `fovddzegnkcsydxjfcghvbhggpiujcxa` (\n `mcvzuniotboipfeyirhztcuhcziojbvz` int NOT NULL,\n `ljgkotgzjnqxhldhbnftzpqizkvfenhp` int DEFAULT NULL,\n `abvwosxsefteschfaoqzzhryubwrxzlk` int DEFAULT NULL,\n `kwnfdkihifscuvqndkaxrpksuluwyfgg` int DEFAULT NULL,\n `pqnsulkxyuxmkaekgqbaxqtcodivhvrw` int DEFAULT NULL,\n `iskrjxwkmvrsycibvwwdgqjptkmvwegs` int DEFAULT NULL,\n `ftlvqzlbioybfshvdaefilmfqfguzntm` int DEFAULT NULL,\n `xmcdoozntrxfsgrlfxawwnperphjcuud` int DEFAULT NULL,\n `qumutbcdphtvgofmrglwvwxcmmhdnvhm` int DEFAULT NULL,\n `dikubcizoardkdcckudsthsmrajuippy` int DEFAULT NULL,\n `fmksgemaxtwwfksnzhjzgwfbwjtluehd` int DEFAULT NULL,\n `eehcfmhguhimsqulblxnjmaqzoiruuqh` int DEFAULT NULL,\n `urqnfqgdplfwyxdhnqxlvyvtrrvglqdu` int DEFAULT NULL,\n `ebsmbusmsnojvqyikonjolnbmirctlpw` int DEFAULT NULL,\n `pxroqdzapbawwxcghplxnvynfpviiydk` int DEFAULT NULL,\n `qcxsnnhnzjqwijxujgtdzlttkpljzsrg` int DEFAULT NULL,\n `fwowmwlmeyglbnedrytrsfudxtuebdqd` int DEFAULT NULL,\n `nvazpthncbjfhhblrlhwjlywzrxghkbc` int DEFAULT NULL,\n `zmwrdhttajgehnuqfzqlwwypkjzecxjy` int DEFAULT NULL,\n `pphnlkqeqyalfhwzyeamcecvhnzhzyri` int DEFAULT NULL,\n `duihxbehmcfkadhrlzdzyaqydgalvcpo` int DEFAULT NULL,\n `fibojzbsxcaplxszyxotakfzjochxjcs` int DEFAULT NULL,\n `enwiqyydzwxofrrjpfapohgxwukjisal` int DEFAULT NULL,\n `ihykuatnhiwbarouxmgsccosttjvlwkb` int DEFAULT NULL,\n `itnwawkqsgmvspugkgdhroaguucdkgcv` int DEFAULT NULL,\n `avlxowgnfmmaigzkkpwnoyfwdumzfjtm` int DEFAULT NULL,\n `zaeiiafjfurrgyyewnjxbnkkvtcjvktn` int DEFAULT NULL,\n `tjwhtvzrdsqtxkamyribvvogccwbqctn` int DEFAULT NULL,\n `jvgfykjlymuqrsarttsixryjmtzmyhrp` int DEFAULT NULL,\n `uwpbwctuubpttiuusvboxccfzhylwget` int DEFAULT NULL,\n `brkvlswziopvzrtuqwzvgnpccnsahpmd` int DEFAULT NULL,\n `vdamnvdlvenyhlgbebmidegzsselbihj` int DEFAULT NULL,\n `uwxlznmcnllzmzniqxygihvumlaxordx` int DEFAULT NULL,\n `nypdfwsmswxobvwdhcvpykzmymrvtnsa` int DEFAULT NULL,\n `pozomwvuwblvsokbsckknrjnukfwrbgn` int DEFAULT NULL,\n `mzybavcipawmffjvsamfteaeijwpxoci` int DEFAULT NULL,\n `yadwhriduuxhxpoleztyljytetgevbnu` int DEFAULT NULL,\n `yufynbxqioevrvcsksyjawdalkxqmdjh` int DEFAULT NULL,\n `qofvqrsadosfpqgscklxwewlgwwloabn` int DEFAULT NULL,\n `itztsppdlrfqvcklgqenrkkhrviicxda` int DEFAULT NULL,\n `fuyduzpeqngecxoowzbhbbbphlkvbngz` int DEFAULT NULL,\n `xywbxupqoryrrgpjfyezpgnehflsdxus` int DEFAULT NULL,\n `cchqrusbejjrqiaxvxrdbadwojidkfay` int DEFAULT NULL,\n `nhoauhihklxcnrbsggmstfrbzqirekdw` int DEFAULT NULL,\n `uetypxvqcqsqvqbnyvyqqcbyimyibhte` int DEFAULT NULL,\n `xnovvritxfhwujutqoqtnlidhvehspzl` int DEFAULT NULL,\n `qmzoepbggnkvatpqbhitfmcdyvoxssja` int DEFAULT NULL,\n `pjgwcwwvgjybivixgzzobkjmvcojuwcv` int DEFAULT NULL,\n `xcohicghipiqsgsomfeuabjkoswuvzsg` int DEFAULT NULL,\n `ltdoyjuevwkureyjqtuyxotybmphkouu` int DEFAULT NULL,\n `syxcpzqxhvtcrdaxsqavwztpmghcwdan` int DEFAULT NULL,\n `tfbzvdqdctrhftxmdbtvyicuqqkfjsha` int DEFAULT NULL,\n `zglyszjjfpfkomcdrhprstpvkfgtiifu` int DEFAULT NULL,\n `auuddhhwaevzmntfitcdqlsgibpmsklh` int DEFAULT NULL,\n `aieyheprgefesuuilfcriygcbzfgqanw` int DEFAULT NULL,\n `irvhagxrgginavhybnxnkfsxdboflnko` int DEFAULT NULL,\n `lpwrmswfgrfwsvzavmftqeqquyeajjjm` int DEFAULT NULL,\n `baspacnspccbnibgcjnmsegvaynlsfko` int DEFAULT NULL,\n `dcxbqmubfjjdilckxwzqedzjcvrcnfyx` int DEFAULT NULL,\n `ejljxnnilgudvxfvzwpbhyotslayqgrk` int DEFAULT NULL,\n `zncoainappavzfdyukcpeelnpsxsngwr` int DEFAULT NULL,\n `rtwnwloqjzldynktdhiqxxissltsopaj` int DEFAULT NULL,\n `moascnazsjpjpahxlyfsoiligkxytocy` int DEFAULT NULL,\n `fwihpqchvhkynmoqbcfcdisptenuioax` int DEFAULT NULL,\n `dvhrkxfexihyunzvmcxrjioeszwstxhm` int DEFAULT NULL,\n `ljctsctwkqncyelwrmdyzydkzlximdid` int DEFAULT NULL,\n `ihkjwvaoxznjhsaunkqpyajfrqdbetec` int DEFAULT NULL,\n `jmrexfgjodsblpynzykvykwxdvuyqckm` int DEFAULT NULL,\n `krdowfoltjohzkbcmogzprgwhtkvvkjy` int DEFAULT NULL,\n `bjhgrylgnazcewpojsacawrgdnmcbnrv` int DEFAULT NULL,\n `syywwlzbczdwomtrgsllruqojmaupooi` int DEFAULT NULL,\n `llmrvcuazqssvwseawokhqgdplrhlutd` int DEFAULT NULL,\n `gqtgpxsxhtfbwjcgarywotxyqpdoabtu` int DEFAULT NULL,\n `bguwzfcqsuxjuubdhwnkudbuyeugzmaa` int DEFAULT NULL,\n `ovkbtvdguzcrtjxvqondypgxdmlfodib` int DEFAULT NULL,\n `qbdmltlkkdzhlvpavnxwhkajrjzxclsu` int DEFAULT NULL,\n `miqtlllocjoqcrbxselfouaabxxvqspq` int DEFAULT NULL,\n `ufnmvrdkjaojwdtuhycchuxxsiskfoxi` int DEFAULT NULL,\n `uqvrcllyjkyczijajnhyexfihqojebwq` int DEFAULT NULL,\n `frtipdcdzrxdlqstpucqupaylaaaaydq` int DEFAULT NULL,\n `tjyrlbfuutnrzufvdqgghwtaoxretvut` int DEFAULT NULL,\n `twmpayuatdskvhukcxdssixajomxndvh` int DEFAULT NULL,\n `rkoddugzgpxlhwjjavbpwhapkixqcynn` int DEFAULT NULL,\n `bjwqmjvetapsrfrgqbtzdnzzruewzdld` int DEFAULT NULL,\n `kotytsclvphpfsvggwlcvltprspdicji` int DEFAULT NULL,\n `vudqvqsevxvpifwmzlrczktaltbdvnvg` int DEFAULT NULL,\n `zbdlphwvcfgiodfwhwtnvwmjkohsilsz` int DEFAULT NULL,\n `gexdsgpgulmxlnabjuysscmkybxnrzfk` int DEFAULT NULL,\n `lidjnozwamdjsirnfajskhbwdsweijbr` int DEFAULT NULL,\n `lbarwjpazhguohoymdkwbptkuiicwnjp` int DEFAULT NULL,\n `lagczahmzjetwnvaqeambcgleplatnbt` int DEFAULT NULL,\n `hqziambpzbsmgmvqdvzocwimnqjrhtjl` int DEFAULT NULL,\n `dxblxrqznpcienbnxcouryhrndyxcevy` int DEFAULT NULL,\n `yghmkttttvsvorkrvsgthpahkxdsuvws` int DEFAULT NULL,\n `awfaerlseyzeauglexzwocrmnvdwasia` int DEFAULT NULL,\n `lhrfusulpzfgqwjcfxxatrjjxttdppps` int DEFAULT NULL,\n `kwhbxskvamtzmcbolmiiwubggwhglgfq` int DEFAULT NULL,\n `jvzaldmmrldgtukvxybaysnuysmsoxgf` int DEFAULT NULL,\n `kzvoismgyfmqrqzhqdquzxrladqunwof` int DEFAULT NULL,\n `jtjmgtecugunffegtorimkqetgprogpd` int DEFAULT NULL,\n PRIMARY KEY (`mcvzuniotboipfeyirhztcuhcziojbvz`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"fovddzegnkcsydxjfcghvbhggpiujcxa\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["mcvzuniotboipfeyirhztcuhcziojbvz"],"columns":[{"name":"mcvzuniotboipfeyirhztcuhcziojbvz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"ljgkotgzjnqxhldhbnftzpqizkvfenhp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"abvwosxsefteschfaoqzzhryubwrxzlk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwnfdkihifscuvqndkaxrpksuluwyfgg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqnsulkxyuxmkaekgqbaxqtcodivhvrw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iskrjxwkmvrsycibvwwdgqjptkmvwegs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftlvqzlbioybfshvdaefilmfqfguzntm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xmcdoozntrxfsgrlfxawwnperphjcuud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qumutbcdphtvgofmrglwvwxcmmhdnvhm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dikubcizoardkdcckudsthsmrajuippy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmksgemaxtwwfksnzhjzgwfbwjtluehd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eehcfmhguhimsqulblxnjmaqzoiruuqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urqnfqgdplfwyxdhnqxlvyvtrrvglqdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebsmbusmsnojvqyikonjolnbmirctlpw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxroqdzapbawwxcghplxnvynfpviiydk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qcxsnnhnzjqwijxujgtdzlttkpljzsrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwowmwlmeyglbnedrytrsfudxtuebdqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvazpthncbjfhhblrlhwjlywzrxghkbc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmwrdhttajgehnuqfzqlwwypkjzecxjy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pphnlkqeqyalfhwzyeamcecvhnzhzyri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"duihxbehmcfkadhrlzdzyaqydgalvcpo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fibojzbsxcaplxszyxotakfzjochxjcs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"enwiqyydzwxofrrjpfapohgxwukjisal","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ihykuatnhiwbarouxmgsccosttjvlwkb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itnwawkqsgmvspugkgdhroaguucdkgcv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avlxowgnfmmaigzkkpwnoyfwdumzfjtm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zaeiiafjfurrgyyewnjxbnkkvtcjvktn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjwhtvzrdsqtxkamyribvvogccwbqctn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvgfykjlymuqrsarttsixryjmtzmyhrp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uwpbwctuubpttiuusvboxccfzhylwget","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"brkvlswziopvzrtuqwzvgnpccnsahpmd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdamnvdlvenyhlgbebmidegzsselbihj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uwxlznmcnllzmzniqxygihvumlaxordx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nypdfwsmswxobvwdhcvpykzmymrvtnsa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pozomwvuwblvsokbsckknrjnukfwrbgn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzybavcipawmffjvsamfteaeijwpxoci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yadwhriduuxhxpoleztyljytetgevbnu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yufynbxqioevrvcsksyjawdalkxqmdjh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qofvqrsadosfpqgscklxwewlgwwloabn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itztsppdlrfqvcklgqenrkkhrviicxda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fuyduzpeqngecxoowzbhbbbphlkvbngz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xywbxupqoryrrgpjfyezpgnehflsdxus","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cchqrusbejjrqiaxvxrdbadwojidkfay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhoauhihklxcnrbsggmstfrbzqirekdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uetypxvqcqsqvqbnyvyqqcbyimyibhte","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnovvritxfhwujutqoqtnlidhvehspzl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmzoepbggnkvatpqbhitfmcdyvoxssja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjgwcwwvgjybivixgzzobkjmvcojuwcv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xcohicghipiqsgsomfeuabjkoswuvzsg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ltdoyjuevwkureyjqtuyxotybmphkouu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"syxcpzqxhvtcrdaxsqavwztpmghcwdan","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tfbzvdqdctrhftxmdbtvyicuqqkfjsha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zglyszjjfpfkomcdrhprstpvkfgtiifu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"auuddhhwaevzmntfitcdqlsgibpmsklh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aieyheprgefesuuilfcriygcbzfgqanw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"irvhagxrgginavhybnxnkfsxdboflnko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lpwrmswfgrfwsvzavmftqeqquyeajjjm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"baspacnspccbnibgcjnmsegvaynlsfko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcxbqmubfjjdilckxwzqedzjcvrcnfyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejljxnnilgudvxfvzwpbhyotslayqgrk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zncoainappavzfdyukcpeelnpsxsngwr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rtwnwloqjzldynktdhiqxxissltsopaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"moascnazsjpjpahxlyfsoiligkxytocy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwihpqchvhkynmoqbcfcdisptenuioax","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvhrkxfexihyunzvmcxrjioeszwstxhm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljctsctwkqncyelwrmdyzydkzlximdid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ihkjwvaoxznjhsaunkqpyajfrqdbetec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmrexfgjodsblpynzykvykwxdvuyqckm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"krdowfoltjohzkbcmogzprgwhtkvvkjy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjhgrylgnazcewpojsacawrgdnmcbnrv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"syywwlzbczdwomtrgsllruqojmaupooi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llmrvcuazqssvwseawokhqgdplrhlutd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqtgpxsxhtfbwjcgarywotxyqpdoabtu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bguwzfcqsuxjuubdhwnkudbuyeugzmaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovkbtvdguzcrtjxvqondypgxdmlfodib","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qbdmltlkkdzhlvpavnxwhkajrjzxclsu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"miqtlllocjoqcrbxselfouaabxxvqspq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ufnmvrdkjaojwdtuhycchuxxsiskfoxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqvrcllyjkyczijajnhyexfihqojebwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"frtipdcdzrxdlqstpucqupaylaaaaydq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjyrlbfuutnrzufvdqgghwtaoxretvut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twmpayuatdskvhukcxdssixajomxndvh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkoddugzgpxlhwjjavbpwhapkixqcynn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjwqmjvetapsrfrgqbtzdnzzruewzdld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kotytsclvphpfsvggwlcvltprspdicji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vudqvqsevxvpifwmzlrczktaltbdvnvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbdlphwvcfgiodfwhwtnvwmjkohsilsz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gexdsgpgulmxlnabjuysscmkybxnrzfk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lidjnozwamdjsirnfajskhbwdsweijbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lbarwjpazhguohoymdkwbptkuiicwnjp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lagczahmzjetwnvaqeambcgleplatnbt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqziambpzbsmgmvqdvzocwimnqjrhtjl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxblxrqznpcienbnxcouryhrndyxcevy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yghmkttttvsvorkrvsgthpahkxdsuvws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awfaerlseyzeauglexzwocrmnvdwasia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhrfusulpzfgqwjcfxxatrjjxttdppps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwhbxskvamtzmcbolmiiwubggwhglgfq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvzaldmmrldgtukvxybaysnuysmsoxgf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzvoismgyfmqrqzhqdquzxrladqunwof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jtjmgtecugunffegtorimkqetgprogpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667850,"databaseName":"models_schema","ddl":"CREATE TABLE `fqvrwbozmynffznjtosjaimyhkulylum` (\n `vnhdtastwtiivvlvtzgteygntwhuwgre` int NOT NULL,\n `gctzpwzckvnzwjcsxnixjfnsgkcklbun` int DEFAULT NULL,\n `cixhutlhjndltubbjcmjqqdwbslbenvl` int DEFAULT NULL,\n `leynaltwlvcituqyaluzskpmpslfzuzc` int DEFAULT NULL,\n `aqziucyjuibchxhqviqezvqtrgrwtvpl` int DEFAULT NULL,\n `uophmtkmqygfhdtupmwouajqxoepcmkg` int DEFAULT NULL,\n `nqidhuvpnehzuaimxxasbleafazhlbqf` int DEFAULT NULL,\n `klszmspymgrxjsjxntnkbqphecsivmca` int DEFAULT NULL,\n `ndxygrtwaxulrodaeczdlllezymnzgex` int DEFAULT NULL,\n `kmzzsvghxzhvajjmnyqbxijecztvgslm` int DEFAULT NULL,\n `kjdnznhinizmstvrtjcxgiqrnaradzas` int DEFAULT NULL,\n `ssicatdzjdquchrfwqoglkmavsyccmjr` int DEFAULT NULL,\n `hdhmrgfoswiozcplmexfpygjtttaxyyt` int DEFAULT NULL,\n `bymmsfrmtfzocexctshryfsbrgcyhcsc` int DEFAULT NULL,\n `erbeudhqesbklgggictrysvrjjmykcox` int DEFAULT NULL,\n `tlnjxwnquvnscagjtocudbdhbkutenku` int DEFAULT NULL,\n `xszexffixbtdzgxzadawixqsuqxcwnur` int DEFAULT NULL,\n `mddovxhwmshxmqucitwtnwvjzkipgovu` int DEFAULT NULL,\n `rbuwtyfvpfbltotqrnbdagbhdgltqmar` int DEFAULT NULL,\n `vlwlohswuabxmcxepekhyikfdjdvmnan` int DEFAULT NULL,\n `cqnxxzoghmncpvpemedxhpbqypypkupd` int DEFAULT NULL,\n `rqgdnwwpaumzoxpiohgxcsynbccedsvk` int DEFAULT NULL,\n `hfqgsehryydxfcdjvhomntjulfpfxftc` int DEFAULT NULL,\n `ayfigjtjrntkyqxserlpzetatyupmqgk` int DEFAULT NULL,\n `xlqrqisuobzpdjaotuwilplockonmbxk` int DEFAULT NULL,\n `xfpkpeuyjvovyqcnpkajuiejxfaplrnw` int DEFAULT NULL,\n `hegrjbxqicipfroplvmrvsmeoindukng` int DEFAULT NULL,\n `kwzggafksobjqfzovuzrisotlbfnusxy` int DEFAULT NULL,\n `nwvifhoegyvjqgzglhodrapuozlvrqvz` int DEFAULT NULL,\n `rrmxghgbgxsvtqudumzyobvntrkzzusv` int DEFAULT NULL,\n `unlpranyghpxhqdisfnkbxomruyvccda` int DEFAULT NULL,\n `zqzmotlzgmpfnoqbmublvzqyxzshrxss` int DEFAULT NULL,\n `nhaervxffskqixdulcinxoohgvvpzwne` int DEFAULT NULL,\n `gkvpwxyoruvjrzaeutjnqbxnaicqfaqy` int DEFAULT NULL,\n `wwhbvndgtbqxafcgymemsovzmuhjqggb` int DEFAULT NULL,\n `osmwgyshnwlafisdceiyedazsffmgphy` int DEFAULT NULL,\n `xphthmrdsxsczcnewngjmlqmwixjrhsr` int DEFAULT NULL,\n `tcvmgktoaotjrwtimwwaamipmdhofjog` int DEFAULT NULL,\n `rxvaennjzxtndgssrjrdozemacxiwdyb` int DEFAULT NULL,\n `uyoqkkhdowfhsccjyjfpgljdmgmtbkxt` int DEFAULT NULL,\n `paeattiftrptpymaiwpcdpkgcwovaipf` int DEFAULT NULL,\n `azkykfolyqdqtekwutfbkypkubvpcabm` int DEFAULT NULL,\n `rrizoxkkxjtzkazearwryzprdotrimeq` int DEFAULT NULL,\n `cpunyfzmpseaznrgxqnppwyqdtlynyye` int DEFAULT NULL,\n `tjzmmduxfmzejbqdbpvrtxuhgrkxhsto` int DEFAULT NULL,\n `akpzdyvwstslfvdofwondhkfxmplipwe` int DEFAULT NULL,\n `temkehatwckcppaidwrtdegkcyupleec` int DEFAULT NULL,\n `xhawurbwhchnewfztayfechtvghpvpwm` int DEFAULT NULL,\n `mcwapnvhtffcrwwljdstlmbixzukxrlp` int DEFAULT NULL,\n `pwozufuklfuxrsgqctnyxjxcmnruhniu` int DEFAULT NULL,\n `qoykdgjhffsogmbxqmcxkadiricbgacq` int DEFAULT NULL,\n `asqxegslzglmwkempxinybpsheriadbv` int DEFAULT NULL,\n `gciyuvpgzvjsqztpjejjmpczylsjxmry` int DEFAULT NULL,\n `dsgnzqnymueimbmoebzbfsmliadnndkx` int DEFAULT NULL,\n `omihsgnnudumgepgffjjgmnesuwlgdst` int DEFAULT NULL,\n `zdoxinjpzqorniwjfzayluivtnmqjpfn` int DEFAULT NULL,\n `drbxalavgxtqhtiehvhhandwqvgcamgv` int DEFAULT NULL,\n `xvzcqtsjywkrpxywfvyfyepesicjmqxu` int DEFAULT NULL,\n `zakqpuwliaxdxrprshphcajlwaqavcux` int DEFAULT NULL,\n `hqbrbczrhhsngjredzgbwwspwxlcllkk` int DEFAULT NULL,\n `gutwffyrcpjnylttkmagallhxcpvohmu` int DEFAULT NULL,\n `iqkqtsjcnszfeuxvwqdcisrytgiueqet` int DEFAULT NULL,\n `zdyzjbrxlgyncqkiqihjrlgmybgjqdmu` int DEFAULT NULL,\n `lemthzzofvwsxmpzvozpqunrhyaswnjb` int DEFAULT NULL,\n `wjrpocckhpzbhshavhmasmgrrdymefef` int DEFAULT NULL,\n `bplkmqoqtyxteizxzyossczcnlmkonug` int DEFAULT NULL,\n `ivkwkmvbcjdfxedjljnztlikknzmudwi` int DEFAULT NULL,\n `toqbqringecnkzxugzzlfqfgrnyxmcqt` int DEFAULT NULL,\n `npvqlgkqzupasmodvrwgpdmrdyatjbnb` int DEFAULT NULL,\n `bqxifwcdrbzlksswmavisqrrogvidupa` int DEFAULT NULL,\n `pevexdbvspnzrjrjnjserygtnsqmtsss` int DEFAULT NULL,\n `rdlegbdnxxddkrioaoacpapgscfyikwu` int DEFAULT NULL,\n `ohwldpjjrvofbwymajohozkzmjwtnggu` int DEFAULT NULL,\n `piobyijfxsfryvnsbnbsqvuiayhlwopf` int DEFAULT NULL,\n `rbhidxmtzvkyvycmwwmdpbtzealapnon` int DEFAULT NULL,\n `jthsrcppoeufdzkvodgvnxqgxzzxhdvu` int DEFAULT NULL,\n `fzjhjzvjzfczgnqshjslyxkqysfblktx` int DEFAULT NULL,\n `nliyfpaxmdxjquakkmuimsnztvoyhdvq` int DEFAULT NULL,\n `atrndxrufxkcasimlwyqdmdpasaigxam` int DEFAULT NULL,\n `keezvxcqxwuvlvxmffrgqmhybkxbhtsb` int DEFAULT NULL,\n `vsyqrlwurleqxvkcfdvbgivnfvreagbg` int DEFAULT NULL,\n `gtnihljfnhfcngspugrqftrhbdxbfqya` int DEFAULT NULL,\n `zbteazqrqsnlkijoxxottxhgyfyhfjjy` int DEFAULT NULL,\n `igvbqrovtikvwlqmjhfxnqdcwxjekuhq` int DEFAULT NULL,\n `mudctyqtxsahzcgubczxjmjfuthucntb` int DEFAULT NULL,\n `twuylnjcedykkmllugyteyeqcnwiurcm` int DEFAULT NULL,\n `rmxlwcgsfmavgxfhuxgyagtexsdfzbwl` int DEFAULT NULL,\n `zwxbbuixjghidmckpsrstrndxtixernj` int DEFAULT NULL,\n `fxiioxonotomcxcycceepghkvfyuzrku` int DEFAULT NULL,\n `orncfwenskvyddvtklctcgviuopwdffe` int DEFAULT NULL,\n `chaotidhqlopwidowtkkbmjqtslktwrb` int DEFAULT NULL,\n `zqmjdisjjrvfwsgqizxyofhsuulrngkm` int DEFAULT NULL,\n `hyfzxfnjsexjcsjemujkwwkklsbcxbbt` int DEFAULT NULL,\n `ydbrzrzrjhsjtjhkipivjokupiyhamxh` int DEFAULT NULL,\n `pvdonyemysptwgkithznqpjtoozfmgeh` int DEFAULT NULL,\n `ieqebjittjkwcihrvfgxfapmjzfltilh` int DEFAULT NULL,\n `ckubmtqcarunowzkvrrkfdmqkfuwymyk` int DEFAULT NULL,\n `vcfmluwmtmugipfspgleswzhnvgfsfot` int DEFAULT NULL,\n `vsfrgzkhwyrwfazzhwljrnkbkhusupqx` int DEFAULT NULL,\n `bbczgbxsrxdxpqtcvyvdexdmvlqleroa` int DEFAULT NULL,\n PRIMARY KEY (`vnhdtastwtiivvlvtzgteygntwhuwgre`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"fqvrwbozmynffznjtosjaimyhkulylum\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["vnhdtastwtiivvlvtzgteygntwhuwgre"],"columns":[{"name":"vnhdtastwtiivvlvtzgteygntwhuwgre","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"gctzpwzckvnzwjcsxnixjfnsgkcklbun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cixhutlhjndltubbjcmjqqdwbslbenvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"leynaltwlvcituqyaluzskpmpslfzuzc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqziucyjuibchxhqviqezvqtrgrwtvpl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uophmtkmqygfhdtupmwouajqxoepcmkg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqidhuvpnehzuaimxxasbleafazhlbqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"klszmspymgrxjsjxntnkbqphecsivmca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ndxygrtwaxulrodaeczdlllezymnzgex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kmzzsvghxzhvajjmnyqbxijecztvgslm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjdnznhinizmstvrtjcxgiqrnaradzas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ssicatdzjdquchrfwqoglkmavsyccmjr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdhmrgfoswiozcplmexfpygjtttaxyyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bymmsfrmtfzocexctshryfsbrgcyhcsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"erbeudhqesbklgggictrysvrjjmykcox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlnjxwnquvnscagjtocudbdhbkutenku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xszexffixbtdzgxzadawixqsuqxcwnur","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mddovxhwmshxmqucitwtnwvjzkipgovu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbuwtyfvpfbltotqrnbdagbhdgltqmar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vlwlohswuabxmcxepekhyikfdjdvmnan","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqnxxzoghmncpvpemedxhpbqypypkupd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqgdnwwpaumzoxpiohgxcsynbccedsvk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfqgsehryydxfcdjvhomntjulfpfxftc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ayfigjtjrntkyqxserlpzetatyupmqgk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xlqrqisuobzpdjaotuwilplockonmbxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xfpkpeuyjvovyqcnpkajuiejxfaplrnw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hegrjbxqicipfroplvmrvsmeoindukng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwzggafksobjqfzovuzrisotlbfnusxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nwvifhoegyvjqgzglhodrapuozlvrqvz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrmxghgbgxsvtqudumzyobvntrkzzusv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unlpranyghpxhqdisfnkbxomruyvccda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqzmotlzgmpfnoqbmublvzqyxzshrxss","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhaervxffskqixdulcinxoohgvvpzwne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkvpwxyoruvjrzaeutjnqbxnaicqfaqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwhbvndgtbqxafcgymemsovzmuhjqggb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"osmwgyshnwlafisdceiyedazsffmgphy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xphthmrdsxsczcnewngjmlqmwixjrhsr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tcvmgktoaotjrwtimwwaamipmdhofjog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxvaennjzxtndgssrjrdozemacxiwdyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uyoqkkhdowfhsccjyjfpgljdmgmtbkxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"paeattiftrptpymaiwpcdpkgcwovaipf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"azkykfolyqdqtekwutfbkypkubvpcabm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrizoxkkxjtzkazearwryzprdotrimeq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cpunyfzmpseaznrgxqnppwyqdtlynyye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjzmmduxfmzejbqdbpvrtxuhgrkxhsto","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akpzdyvwstslfvdofwondhkfxmplipwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"temkehatwckcppaidwrtdegkcyupleec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xhawurbwhchnewfztayfechtvghpvpwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcwapnvhtffcrwwljdstlmbixzukxrlp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwozufuklfuxrsgqctnyxjxcmnruhniu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qoykdgjhffsogmbxqmcxkadiricbgacq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"asqxegslzglmwkempxinybpsheriadbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gciyuvpgzvjsqztpjejjmpczylsjxmry","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dsgnzqnymueimbmoebzbfsmliadnndkx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omihsgnnudumgepgffjjgmnesuwlgdst","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdoxinjpzqorniwjfzayluivtnmqjpfn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drbxalavgxtqhtiehvhhandwqvgcamgv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvzcqtsjywkrpxywfvyfyepesicjmqxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zakqpuwliaxdxrprshphcajlwaqavcux","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqbrbczrhhsngjredzgbwwspwxlcllkk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gutwffyrcpjnylttkmagallhxcpvohmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqkqtsjcnszfeuxvwqdcisrytgiueqet","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdyzjbrxlgyncqkiqihjrlgmybgjqdmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lemthzzofvwsxmpzvozpqunrhyaswnjb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjrpocckhpzbhshavhmasmgrrdymefef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bplkmqoqtyxteizxzyossczcnlmkonug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivkwkmvbcjdfxedjljnztlikknzmudwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"toqbqringecnkzxugzzlfqfgrnyxmcqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"npvqlgkqzupasmodvrwgpdmrdyatjbnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqxifwcdrbzlksswmavisqrrogvidupa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pevexdbvspnzrjrjnjserygtnsqmtsss","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdlegbdnxxddkrioaoacpapgscfyikwu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohwldpjjrvofbwymajohozkzmjwtnggu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"piobyijfxsfryvnsbnbsqvuiayhlwopf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbhidxmtzvkyvycmwwmdpbtzealapnon","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jthsrcppoeufdzkvodgvnxqgxzzxhdvu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzjhjzvjzfczgnqshjslyxkqysfblktx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nliyfpaxmdxjquakkmuimsnztvoyhdvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atrndxrufxkcasimlwyqdmdpasaigxam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"keezvxcqxwuvlvxmffrgqmhybkxbhtsb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsyqrlwurleqxvkcfdvbgivnfvreagbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtnihljfnhfcngspugrqftrhbdxbfqya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbteazqrqsnlkijoxxottxhgyfyhfjjy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igvbqrovtikvwlqmjhfxnqdcwxjekuhq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mudctyqtxsahzcgubczxjmjfuthucntb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twuylnjcedykkmllugyteyeqcnwiurcm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rmxlwcgsfmavgxfhuxgyagtexsdfzbwl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zwxbbuixjghidmckpsrstrndxtixernj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxiioxonotomcxcycceepghkvfyuzrku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orncfwenskvyddvtklctcgviuopwdffe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"chaotidhqlopwidowtkkbmjqtslktwrb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqmjdisjjrvfwsgqizxyofhsuulrngkm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hyfzxfnjsexjcsjemujkwwkklsbcxbbt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydbrzrzrjhsjtjhkipivjokupiyhamxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pvdonyemysptwgkithznqpjtoozfmgeh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ieqebjittjkwcihrvfgxfapmjzfltilh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ckubmtqcarunowzkvrrkfdmqkfuwymyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vcfmluwmtmugipfspgleswzhnvgfsfot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsfrgzkhwyrwfazzhwljrnkbkhusupqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbczgbxsrxdxpqtcvyvdexdmvlqleroa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667881,"databaseName":"models_schema","ddl":"CREATE TABLE `fughcvpxapxpanhpwimukohmafwcback` (\n `filjppxtosneqwdirvbtldirwxnddftc` int NOT NULL,\n `eurjlbxdksjzphyxaubpuaouconhvkix` int DEFAULT NULL,\n `gilixhtmffngztfdueaiggncsqmxzcpz` int DEFAULT NULL,\n `xoboysnwvvfgfdehnukigbiurtcnlsop` int DEFAULT NULL,\n `nwckkctstskkytrseuxqqkqsqnmgeykf` int DEFAULT NULL,\n `vkyjlrvyhbxhuzdqoceuwjlbyhrucazu` int DEFAULT NULL,\n `qofskxghnylylwbjuyctghqepvijgbpf` int DEFAULT NULL,\n `gapxzsfoeqbnjlbehmdfljftzvhlziro` int DEFAULT NULL,\n `erfhhrdthsmvdnteltwampjscybuglij` int DEFAULT NULL,\n `trtlowbjzebdduutwunzwfxsnckeeoev` int DEFAULT NULL,\n `pozggkidlutyodizdaxbzirscpmhjroc` int DEFAULT NULL,\n `whnoczovzxbiksnblwdtvzfanakruysn` int DEFAULT NULL,\n `tywxtbcpprzozidagyzokhlbjaedcyxm` int DEFAULT NULL,\n `npsalkhtehzjhfkbutarzgkwytluhbjm` int DEFAULT NULL,\n `fwcdelaemjcgbbjtvvptwnjwwcoutkjh` int DEFAULT NULL,\n `bhybwxsigzskhvdvidabooljtibvcute` int DEFAULT NULL,\n `ptaaxxhhkdnixpptuviuaixgfvfscufo` int DEFAULT NULL,\n `zcwzqfesrurwcptrzwcyirsbsdmmyfir` int DEFAULT NULL,\n `qnfyzuxgwfkxbrybvhzevzxiwchjsptz` int DEFAULT NULL,\n `juagysjlrzaivconsyaeyaajudcjisgf` int DEFAULT NULL,\n `pqlbnbosrtcrudjkfmhnqgilqomvrgbm` int DEFAULT NULL,\n `exmucgzmvtiysvnsdlwcxxpjnysmpqar` int DEFAULT NULL,\n `ncisopalbogsefnjolzzwvtfcaxnvjbf` int DEFAULT NULL,\n `rnuqzabrqxcdojkwbjnhngeapcwdcazj` int DEFAULT NULL,\n `xlhhuhsxuioxqjjowyfoizhpxczydcpu` int DEFAULT NULL,\n `bdubglbivvusopznxckomardbloaahxl` int DEFAULT NULL,\n `uhhhdynieswersgwmdrzfmddypbxspql` int DEFAULT NULL,\n `zagmflyxawcsmehrzcowoytyqphzyeum` int DEFAULT NULL,\n `ovkshmzvjknyntqqxslxcgokenyljwbr` int DEFAULT NULL,\n `tkdxupebszvgsileykwnnnngogotxfcb` int DEFAULT NULL,\n `wtflrsfxqafncbaphqmoybsiiaaovkaj` int DEFAULT NULL,\n `thojhkghltwqportpihjthiijpibzwzd` int DEFAULT NULL,\n `krksehktozbzrdrovwyacqqnyzcpkcsw` int DEFAULT NULL,\n `idlwlqwjmyjwbibdtnltkwjnxvbmajjm` int DEFAULT NULL,\n `jhgjdrvlmlawlkuhygswpaawyyueryqm` int DEFAULT NULL,\n `fwfqynapputvfmzsipjngchzwxffwlly` int DEFAULT NULL,\n `kfdjhylexjwrxanbdctfjqslalutmtzx` int DEFAULT NULL,\n `nqyljrahmsgrbhhxalswswfyapltaqkp` int DEFAULT NULL,\n `lwtmlpfeanbgcagmdxsvsemgnottjhub` int DEFAULT NULL,\n `herdvmgimhdjlrhbasbxhisiaofdeswp` int DEFAULT NULL,\n `uvxyzyebjsyzeocnougavlsobibppycf` int DEFAULT NULL,\n `pblpigkztodciasxrshybiguabxgkbki` int DEFAULT NULL,\n `uyurrhgpkotbslcfghkkmlervvfkwrrk` int DEFAULT NULL,\n `rfeuwaxjzhcvbmmgosvgfulqqhfcentm` int DEFAULT NULL,\n `flgmlamzgfnwuqojymirxujywtgxqgym` int DEFAULT NULL,\n `lkgdktirlyxhusfhgjamazcoopuodbdp` int DEFAULT NULL,\n `duqngmqhordbzbdtjxzttvwlqmhutrhy` int DEFAULT NULL,\n `uvcedmlxdgfagdvahscojnpuhocplzwf` int DEFAULT NULL,\n `rdjxgfxsqmrndqkqysuinbtnkqlbjzkg` int DEFAULT NULL,\n `fobnxqrmipvdbhhfsrniijghfkrrxsbl` int DEFAULT NULL,\n `sbzuovwndefuenwqknagsqdbuhplsztz` int DEFAULT NULL,\n `goojedooicxuggpezbhblpkwojprpfyd` int DEFAULT NULL,\n `uecgktuvpkfrsfccqvmdlrurgnthvktp` int DEFAULT NULL,\n `goltbodqszzmdewwozfgmcqcofrkcidf` int DEFAULT NULL,\n `hcqxydewcliwsmlofontrnbcvkhsbxbk` int DEFAULT NULL,\n `ubklkapsgvktiqlcoznbcbzbjdxvxvtb` int DEFAULT NULL,\n `mpzbqreltfxnftjbphmfgbawssnlvsll` int DEFAULT NULL,\n `hmyhezvtnpkqjexqidyjylfusgdqklqv` int DEFAULT NULL,\n `wveogtxoxdpzplxwheugziprnuwbgnso` int DEFAULT NULL,\n `obmwgagefcffzghrshyjegsiijlusajl` int DEFAULT NULL,\n `exudcjvdiuijomiovzljehcnossyxieq` int DEFAULT NULL,\n `boidzixgdnvomgzybicamkaicgwbqcfp` int DEFAULT NULL,\n `uifrpdcixxjgxnyvpsqklwiyvlzyaeoe` int DEFAULT NULL,\n `stpokxrfbvyprhafuhwfbsnsskwtqivw` int DEFAULT NULL,\n `vyfszvfqsgibalyeesptieenkcbnavts` int DEFAULT NULL,\n `zdcyyobhebdunffiyejuxtbzdxgoodkb` int DEFAULT NULL,\n `mqtxgwukukddtcnpdhvbyddqzdudikml` int DEFAULT NULL,\n `gkajcxfnoasoqfmzngtanndsdjqdcmlg` int DEFAULT NULL,\n `gzspmnsredrgqcwnnlswobfqtqcugyfs` int DEFAULT NULL,\n `azfqlqzedqmtxqatlqhpkcdllpjirroi` int DEFAULT NULL,\n `doiirzpnqqlvjaxdreijbpmfrgwvnshf` int DEFAULT NULL,\n `kcjhuhdzmmwfzztphrhwfblveozurokf` int DEFAULT NULL,\n `snfkytmwrfwxbjojcqmyjmwshqmfztju` int DEFAULT NULL,\n `ecubrnyekeuktcxugvivdixcjnrbpzri` int DEFAULT NULL,\n `oylfxruyvyfjuiujopbpwqzdxfgcjiwu` int DEFAULT NULL,\n `zxkyivluxzflqjzchkntjrtfdtyzbpou` int DEFAULT NULL,\n `lnptusifrbfepvhrxazwmxqnnsslwfyr` int DEFAULT NULL,\n `xxdceudrmjckbsnbkhuelqieclvdooap` int DEFAULT NULL,\n `fastnbhxhyrrtlimfngfevldaciuekko` int DEFAULT NULL,\n `lyndanntoiwepozfpiwwwzhaaypqokdu` int DEFAULT NULL,\n `nqxaddxxxkbzghzrlixjlpoqmchuzpal` int DEFAULT NULL,\n `hssyutemxvsokmmrwfchtuscwnpiqsoq` int DEFAULT NULL,\n `chbotavwcyzfwibyzodjarrrxptvolvx` int DEFAULT NULL,\n `zgeqjnvvzjygvszbuqjelxqbmcayyfje` int DEFAULT NULL,\n `mvgvebixqyvieumzinhjayjlkjgnotym` int DEFAULT NULL,\n `eguuuijefftkwhapbsyjglpwbsfvxxmm` int DEFAULT NULL,\n `nvzvqpavxyvtzdpvbajdcyrdsbcdwwnc` int DEFAULT NULL,\n `kklzntxmswgeinkyrprkkoglhbzjpqrf` int DEFAULT NULL,\n `mipppzrogjcsuvhbmuuuothcwaiymavm` int DEFAULT NULL,\n `ugflnlvnqrwsfykbywcmdklchxfbvoze` int DEFAULT NULL,\n `mbtggolpxgcztdbawnldpqrbxzyqbpvv` int DEFAULT NULL,\n `pckbugjotilmyynnvuwmebqbeiytyjym` int DEFAULT NULL,\n `uobdebxklhitmnjvztylslgvzvmvujcd` int DEFAULT NULL,\n `nxxtaysteoxsuxkhzvbhafyssujpusdo` int DEFAULT NULL,\n `ddqudmmqflgwduzoqsjqlfqpszsqjctk` int DEFAULT NULL,\n `lknwxbabgbmuzarycvjjzxjqykexhysc` int DEFAULT NULL,\n `ykzjlzfylhujkknjbtghmvlwejkaatrc` int DEFAULT NULL,\n `zyqpzwpjbnhneacqiukxyigjvmjvlino` int DEFAULT NULL,\n `ttpzjcefpvimvgejyvdsusgtwyuqotkf` int DEFAULT NULL,\n `upfxixdfxxemgjgxhlnngykoswhwqxog` int DEFAULT NULL,\n PRIMARY KEY (`filjppxtosneqwdirvbtldirwxnddftc`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"fughcvpxapxpanhpwimukohmafwcback\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["filjppxtosneqwdirvbtldirwxnddftc"],"columns":[{"name":"filjppxtosneqwdirvbtldirwxnddftc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"eurjlbxdksjzphyxaubpuaouconhvkix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gilixhtmffngztfdueaiggncsqmxzcpz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xoboysnwvvfgfdehnukigbiurtcnlsop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nwckkctstskkytrseuxqqkqsqnmgeykf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkyjlrvyhbxhuzdqoceuwjlbyhrucazu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qofskxghnylylwbjuyctghqepvijgbpf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gapxzsfoeqbnjlbehmdfljftzvhlziro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"erfhhrdthsmvdnteltwampjscybuglij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"trtlowbjzebdduutwunzwfxsnckeeoev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pozggkidlutyodizdaxbzirscpmhjroc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"whnoczovzxbiksnblwdtvzfanakruysn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tywxtbcpprzozidagyzokhlbjaedcyxm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"npsalkhtehzjhfkbutarzgkwytluhbjm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwcdelaemjcgbbjtvvptwnjwwcoutkjh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bhybwxsigzskhvdvidabooljtibvcute","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ptaaxxhhkdnixpptuviuaixgfvfscufo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zcwzqfesrurwcptrzwcyirsbsdmmyfir","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qnfyzuxgwfkxbrybvhzevzxiwchjsptz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"juagysjlrzaivconsyaeyaajudcjisgf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqlbnbosrtcrudjkfmhnqgilqomvrgbm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exmucgzmvtiysvnsdlwcxxpjnysmpqar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ncisopalbogsefnjolzzwvtfcaxnvjbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnuqzabrqxcdojkwbjnhngeapcwdcazj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xlhhuhsxuioxqjjowyfoizhpxczydcpu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bdubglbivvusopznxckomardbloaahxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhhhdynieswersgwmdrzfmddypbxspql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zagmflyxawcsmehrzcowoytyqphzyeum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovkshmzvjknyntqqxslxcgokenyljwbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkdxupebszvgsileykwnnnngogotxfcb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wtflrsfxqafncbaphqmoybsiiaaovkaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thojhkghltwqportpihjthiijpibzwzd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"krksehktozbzrdrovwyacqqnyzcpkcsw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idlwlqwjmyjwbibdtnltkwjnxvbmajjm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jhgjdrvlmlawlkuhygswpaawyyueryqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwfqynapputvfmzsipjngchzwxffwlly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfdjhylexjwrxanbdctfjqslalutmtzx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqyljrahmsgrbhhxalswswfyapltaqkp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwtmlpfeanbgcagmdxsvsemgnottjhub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"herdvmgimhdjlrhbasbxhisiaofdeswp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvxyzyebjsyzeocnougavlsobibppycf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pblpigkztodciasxrshybiguabxgkbki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uyurrhgpkotbslcfghkkmlervvfkwrrk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfeuwaxjzhcvbmmgosvgfulqqhfcentm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flgmlamzgfnwuqojymirxujywtgxqgym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lkgdktirlyxhusfhgjamazcoopuodbdp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"duqngmqhordbzbdtjxzttvwlqmhutrhy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvcedmlxdgfagdvahscojnpuhocplzwf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdjxgfxsqmrndqkqysuinbtnkqlbjzkg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fobnxqrmipvdbhhfsrniijghfkrrxsbl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbzuovwndefuenwqknagsqdbuhplsztz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"goojedooicxuggpezbhblpkwojprpfyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uecgktuvpkfrsfccqvmdlrurgnthvktp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"goltbodqszzmdewwozfgmcqcofrkcidf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hcqxydewcliwsmlofontrnbcvkhsbxbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubklkapsgvktiqlcoznbcbzbjdxvxvtb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpzbqreltfxnftjbphmfgbawssnlvsll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmyhezvtnpkqjexqidyjylfusgdqklqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wveogtxoxdpzplxwheugziprnuwbgnso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obmwgagefcffzghrshyjegsiijlusajl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exudcjvdiuijomiovzljehcnossyxieq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"boidzixgdnvomgzybicamkaicgwbqcfp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uifrpdcixxjgxnyvpsqklwiyvlzyaeoe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"stpokxrfbvyprhafuhwfbsnsskwtqivw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vyfszvfqsgibalyeesptieenkcbnavts","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdcyyobhebdunffiyejuxtbzdxgoodkb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqtxgwukukddtcnpdhvbyddqzdudikml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkajcxfnoasoqfmzngtanndsdjqdcmlg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzspmnsredrgqcwnnlswobfqtqcugyfs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"azfqlqzedqmtxqatlqhpkcdllpjirroi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"doiirzpnqqlvjaxdreijbpmfrgwvnshf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kcjhuhdzmmwfzztphrhwfblveozurokf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"snfkytmwrfwxbjojcqmyjmwshqmfztju","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecubrnyekeuktcxugvivdixcjnrbpzri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oylfxruyvyfjuiujopbpwqzdxfgcjiwu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxkyivluxzflqjzchkntjrtfdtyzbpou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lnptusifrbfepvhrxazwmxqnnsslwfyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxdceudrmjckbsnbkhuelqieclvdooap","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fastnbhxhyrrtlimfngfevldaciuekko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lyndanntoiwepozfpiwwwzhaaypqokdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqxaddxxxkbzghzrlixjlpoqmchuzpal","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hssyutemxvsokmmrwfchtuscwnpiqsoq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"chbotavwcyzfwibyzodjarrrxptvolvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zgeqjnvvzjygvszbuqjelxqbmcayyfje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvgvebixqyvieumzinhjayjlkjgnotym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eguuuijefftkwhapbsyjglpwbsfvxxmm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvzvqpavxyvtzdpvbajdcyrdsbcdwwnc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kklzntxmswgeinkyrprkkoglhbzjpqrf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mipppzrogjcsuvhbmuuuothcwaiymavm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugflnlvnqrwsfykbywcmdklchxfbvoze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbtggolpxgcztdbawnldpqrbxzyqbpvv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pckbugjotilmyynnvuwmebqbeiytyjym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uobdebxklhitmnjvztylslgvzvmvujcd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxxtaysteoxsuxkhzvbhafyssujpusdo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ddqudmmqflgwduzoqsjqlfqpszsqjctk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lknwxbabgbmuzarycvjjzxjqykexhysc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykzjlzfylhujkknjbtghmvlwejkaatrc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zyqpzwpjbnhneacqiukxyigjvmjvlino","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ttpzjcefpvimvgejyvdsusgtwyuqotkf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upfxixdfxxemgjgxhlnngykoswhwqxog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667922,"databaseName":"models_schema","ddl":"CREATE TABLE `fvwhkwjojhrpuruerizhsjyneudltdgf` (\n `bnltojxizbcpwvlsnbbpgfxkejgtrayn` int NOT NULL,\n `vfjuleitvkfipthedemrpabvkrhgkdcs` int DEFAULT NULL,\n `rpmhstpzgimqtnwpvwpbktgufklkdmyj` int DEFAULT NULL,\n `titrfdbxpblbhirjdjdwyjouehpbqoie` int DEFAULT NULL,\n `izrnfterbdkiaixvjaklikgxalyzenhf` int DEFAULT NULL,\n `huvokdwsxxypxvsqltewlxyzlcceeqwp` int DEFAULT NULL,\n `jnjcpquqhbwmjqshgqxpzwtjdgboaywg` int DEFAULT NULL,\n `ylpsaqxyyazrjmzkduisqmmxqvojvwyp` int DEFAULT NULL,\n `ljlzmztgpthvelqymmrcxgaxqkfhdhpb` int DEFAULT NULL,\n `fgvymmlsqtqpxywidpvrnkyltftpunlv` int DEFAULT NULL,\n `hkgllskvnhereyssdmjgswiluhspoykm` int DEFAULT NULL,\n `eimrcgptecvklukblvgjyiwlfpikvfoy` int DEFAULT NULL,\n `pbsknurjptludbzwgjqllnbkcvjvprwv` int DEFAULT NULL,\n `qzrfxciohwqejqmsgyknpuaxksmaglcg` int DEFAULT NULL,\n `wxfqwtdmndbrzfufoghhigytuccanehs` int DEFAULT NULL,\n `hlkrielfqquewjqozpnrcdhenhlvqpvd` int DEFAULT NULL,\n `xovmuooiwrrxtfwkncoztphscekfbxlk` int DEFAULT NULL,\n `xdzckmyixjchadlutqxmkmyeaxxcrrmh` int DEFAULT NULL,\n `hzktygzvbyfuitucqomevgiqgmobaohy` int DEFAULT NULL,\n `lcltdnwmjptcllwlqdejgopvopgddril` int DEFAULT NULL,\n `koohlnytrxsdafyruehqipubfjsylnzk` int DEFAULT NULL,\n `ydmduvplxlaohihjsnxcpduntodssvrr` int DEFAULT NULL,\n `dzgkvkhtvvuuegceogwrqgpjzptkvqfq` int DEFAULT NULL,\n `iqetvndagrxzwbkausgelcyvmylvmtsz` int DEFAULT NULL,\n `gjebpunywwbfvukerovdvztdrbohrqkp` int DEFAULT NULL,\n `qemryqhrtngpqjzeftlpkavijkmuruaf` int DEFAULT NULL,\n `ctebvlifxheymbdrxhcdivffscubaeme` int DEFAULT NULL,\n `zhknwldjattvdsrjbqsyeayjkeggemrc` int DEFAULT NULL,\n `byaggtswuxpeywyqwzbvxohyomcdowff` int DEFAULT NULL,\n `jqrwaboazyooexjzsemhrwyavwrdlqzb` int DEFAULT NULL,\n `xsgiduesjrjnhbgksgwnecmtxpwlouhs` int DEFAULT NULL,\n `kenifjznftwbexhuqjnscxumtvaoizqy` int DEFAULT NULL,\n `wvynmkbmszqtadlxxolidzjftzvzsyqq` int DEFAULT NULL,\n `rybiazupxcjtqwcnstoupwbulroydoho` int DEFAULT NULL,\n `vyqsbaywwvbtafdfmtvserlhzvclcaib` int DEFAULT NULL,\n `nbpbsewyiyrqkypbkovotihyjsvnsvgb` int DEFAULT NULL,\n `czwcplfsitdmqbburvfcqnuvitrivmzx` int DEFAULT NULL,\n `gzretvetqnhstwfdksypgjbkiixwxhdy` int DEFAULT NULL,\n `vhjeligjopahomqbstsetifudpqfikjj` int DEFAULT NULL,\n `eompsrcbofvdfomnxybqesdfjpndqqlu` int DEFAULT NULL,\n `gaicspldmlnoymwgdmptocifvovtfzxc` int DEFAULT NULL,\n `jpduptgtpcfmigdykugnfqlpeypucnbw` int DEFAULT NULL,\n `ptjbwpqubaotqpknhyjdfpoaqcowlckw` int DEFAULT NULL,\n `pyxaqobuexquewvbwnejcmnzkevoulpn` int DEFAULT NULL,\n `zderosuvjtasfnjbdjwsvrzjotiojkwc` int DEFAULT NULL,\n `zlacwllyhyirmjzorplaplhwhqctzdlw` int DEFAULT NULL,\n `lellbxrczvdnfcxxceikortjqsuzntoo` int DEFAULT NULL,\n `mmwghixmnabepyqfyzkvuvyblycgpksz` int DEFAULT NULL,\n `vpyhkcxxtyeklfukcshkfontngcudhqk` int DEFAULT NULL,\n `qntqlxwkokylsckmweawdunfynctyijg` int DEFAULT NULL,\n `rnyonwofezghbiiehyxtekrlnbmyindc` int DEFAULT NULL,\n `uramdkjfutrlidlvqhehwcxaotjqdlmn` int DEFAULT NULL,\n `bdezpeqrbnnzjmsoejgoiryibravimui` int DEFAULT NULL,\n `cnzcceorjszlidairnpiwttpjteqditg` int DEFAULT NULL,\n `xjshdefmbmcnmggbjstxkkmyfcumqsae` int DEFAULT NULL,\n `dqtihdvcxlfzvfizeqfynaiutveikiyr` int DEFAULT NULL,\n `rxlivcsyvfnbzdqtwwvkkvzkgyalrhhd` int DEFAULT NULL,\n `jmdglyfhrgnpwgswwblredctkrveqtmq` int DEFAULT NULL,\n `eblzsownwntmdatyhwzqxspjlnqopetf` int DEFAULT NULL,\n `vefcdsqgiqdmnzhfutfzstgywnyyovuz` int DEFAULT NULL,\n `srydnlzrscktlaindyhqkpfckpqsazcu` int DEFAULT NULL,\n `tmyrihozdjynnduhxokfaesubkwztyvp` int DEFAULT NULL,\n `atnmxhxorapbdclktvjyyglwtrkwrdbu` int DEFAULT NULL,\n `kccqppwzkositodtppevklxaolzyaldf` int DEFAULT NULL,\n `pcayobeswsqhkoheaalaogzzjhwsghim` int DEFAULT NULL,\n `ajrmrvfjruqbqjjbxmkinlhopxinusgv` int DEFAULT NULL,\n `cgfbqvlssnoubwcpnwhghlgjxsxcmqjh` int DEFAULT NULL,\n `hvyzjggsihfnwmtxmfzxxxzlnxfgmloz` int DEFAULT NULL,\n `dasyxgkhmdykjqqzhgrbnvrabsvcffgo` int DEFAULT NULL,\n `mcizdikegfksfpsfmhjpbpzhncdstuiv` int DEFAULT NULL,\n `twsmczxfdabitbextjfscsiolepxlucu` int DEFAULT NULL,\n `tsuanotapsvpmigubscbrmurdpxoqeck` int DEFAULT NULL,\n `hdkbtqveelgunvhissxfwkxxcxupiumu` int DEFAULT NULL,\n `bfessjxwjgsalnqzyqowijafodcjdfve` int DEFAULT NULL,\n `dhszygroqynzbeymumoipzqrtisoceqf` int DEFAULT NULL,\n `wdbdtlmhkliobbfxgwlbthnddsmhcgvx` int DEFAULT NULL,\n `qzgipnqxtlzyewokchcvjahelmxlitwc` int DEFAULT NULL,\n `svjjeurzjajjqazfugjfsqrfmilbxzao` int DEFAULT NULL,\n `zosowrxuqqfplbcypwlpkebtbncpkgta` int DEFAULT NULL,\n `rqaqimdddhalfyymxexfqyjgkoaulxra` int DEFAULT NULL,\n `tznzhhrdgmtdquqkgoemydbihfjsypal` int DEFAULT NULL,\n `hldmkakjyvryldlatvjcgjvgsjhyziqt` int DEFAULT NULL,\n `epqinwtughexuvegjlxdramkefkafxaf` int DEFAULT NULL,\n `edefrxphglbsxrrnzrmeosqpxppvlufw` int DEFAULT NULL,\n `hesriivxdkkwwpfxdywozngdsihnxxhg` int DEFAULT NULL,\n `tudnzlrikghguywjaftxleaapcsktfpd` int DEFAULT NULL,\n `nocvpnrjkyyxixxobbivinylohnvuqae` int DEFAULT NULL,\n `sfpqvsgdpbpaqzwodbnbiihtxoqunnau` int DEFAULT NULL,\n `lgqnhvkfeydmyjrmwegmwcefqjgewcdh` int DEFAULT NULL,\n `jqsuczjifpzizybckrvqafcjekkrybnu` int DEFAULT NULL,\n `ixavjtklnminrrhurpemzchnzzjadumi` int DEFAULT NULL,\n `pvzbleohvystjvtdogkyjjtcacnymwqy` int DEFAULT NULL,\n `kxtqpbtdupajctrqxxxiuiebtbmohzpp` int DEFAULT NULL,\n `nqcamorvrlodbnfmkwzjklgyjpiawfsx` int DEFAULT NULL,\n `hifclypongmllbpilgfxcrnppmneduyb` int DEFAULT NULL,\n `lfgjnolwlrkgneocvioiogttqulxccld` int DEFAULT NULL,\n `qhergpcccekjipymxaknpkusvufiwyzq` int DEFAULT NULL,\n `zamgdkxxhnlfvzihztoipgxyajuekxti` int DEFAULT NULL,\n `viuhmltwiblupmirjrwiafzwkksbwfbu` int DEFAULT NULL,\n `aienkprtgzlkkyensxjazsxbxupcitgv` int DEFAULT NULL,\n PRIMARY KEY (`bnltojxizbcpwvlsnbbpgfxkejgtrayn`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"fvwhkwjojhrpuruerizhsjyneudltdgf\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["bnltojxizbcpwvlsnbbpgfxkejgtrayn"],"columns":[{"name":"bnltojxizbcpwvlsnbbpgfxkejgtrayn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"vfjuleitvkfipthedemrpabvkrhgkdcs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpmhstpzgimqtnwpvwpbktgufklkdmyj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"titrfdbxpblbhirjdjdwyjouehpbqoie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"izrnfterbdkiaixvjaklikgxalyzenhf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"huvokdwsxxypxvsqltewlxyzlcceeqwp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jnjcpquqhbwmjqshgqxpzwtjdgboaywg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ylpsaqxyyazrjmzkduisqmmxqvojvwyp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljlzmztgpthvelqymmrcxgaxqkfhdhpb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fgvymmlsqtqpxywidpvrnkyltftpunlv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkgllskvnhereyssdmjgswiluhspoykm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eimrcgptecvklukblvgjyiwlfpikvfoy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbsknurjptludbzwgjqllnbkcvjvprwv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qzrfxciohwqejqmsgyknpuaxksmaglcg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxfqwtdmndbrzfufoghhigytuccanehs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlkrielfqquewjqozpnrcdhenhlvqpvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xovmuooiwrrxtfwkncoztphscekfbxlk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdzckmyixjchadlutqxmkmyeaxxcrrmh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hzktygzvbyfuitucqomevgiqgmobaohy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lcltdnwmjptcllwlqdejgopvopgddril","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"koohlnytrxsdafyruehqipubfjsylnzk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydmduvplxlaohihjsnxcpduntodssvrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dzgkvkhtvvuuegceogwrqgpjzptkvqfq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqetvndagrxzwbkausgelcyvmylvmtsz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjebpunywwbfvukerovdvztdrbohrqkp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qemryqhrtngpqjzeftlpkavijkmuruaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctebvlifxheymbdrxhcdivffscubaeme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhknwldjattvdsrjbqsyeayjkeggemrc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"byaggtswuxpeywyqwzbvxohyomcdowff","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jqrwaboazyooexjzsemhrwyavwrdlqzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsgiduesjrjnhbgksgwnecmtxpwlouhs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kenifjznftwbexhuqjnscxumtvaoizqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wvynmkbmszqtadlxxolidzjftzvzsyqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rybiazupxcjtqwcnstoupwbulroydoho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vyqsbaywwvbtafdfmtvserlhzvclcaib","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbpbsewyiyrqkypbkovotihyjsvnsvgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"czwcplfsitdmqbburvfcqnuvitrivmzx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzretvetqnhstwfdksypgjbkiixwxhdy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhjeligjopahomqbstsetifudpqfikjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eompsrcbofvdfomnxybqesdfjpndqqlu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gaicspldmlnoymwgdmptocifvovtfzxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jpduptgtpcfmigdykugnfqlpeypucnbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ptjbwpqubaotqpknhyjdfpoaqcowlckw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pyxaqobuexquewvbwnejcmnzkevoulpn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zderosuvjtasfnjbdjwsvrzjotiojkwc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zlacwllyhyirmjzorplaplhwhqctzdlw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lellbxrczvdnfcxxceikortjqsuzntoo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmwghixmnabepyqfyzkvuvyblycgpksz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpyhkcxxtyeklfukcshkfontngcudhqk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qntqlxwkokylsckmweawdunfynctyijg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnyonwofezghbiiehyxtekrlnbmyindc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uramdkjfutrlidlvqhehwcxaotjqdlmn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bdezpeqrbnnzjmsoejgoiryibravimui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnzcceorjszlidairnpiwttpjteqditg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjshdefmbmcnmggbjstxkkmyfcumqsae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqtihdvcxlfzvfizeqfynaiutveikiyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxlivcsyvfnbzdqtwwvkkvzkgyalrhhd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmdglyfhrgnpwgswwblredctkrveqtmq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eblzsownwntmdatyhwzqxspjlnqopetf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vefcdsqgiqdmnzhfutfzstgywnyyovuz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"srydnlzrscktlaindyhqkpfckpqsazcu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmyrihozdjynnduhxokfaesubkwztyvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atnmxhxorapbdclktvjyyglwtrkwrdbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kccqppwzkositodtppevklxaolzyaldf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pcayobeswsqhkoheaalaogzzjhwsghim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajrmrvfjruqbqjjbxmkinlhopxinusgv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgfbqvlssnoubwcpnwhghlgjxsxcmqjh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hvyzjggsihfnwmtxmfzxxxzlnxfgmloz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dasyxgkhmdykjqqzhgrbnvrabsvcffgo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcizdikegfksfpsfmhjpbpzhncdstuiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twsmczxfdabitbextjfscsiolepxlucu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tsuanotapsvpmigubscbrmurdpxoqeck","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdkbtqveelgunvhissxfwkxxcxupiumu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bfessjxwjgsalnqzyqowijafodcjdfve","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhszygroqynzbeymumoipzqrtisoceqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wdbdtlmhkliobbfxgwlbthnddsmhcgvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qzgipnqxtlzyewokchcvjahelmxlitwc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"svjjeurzjajjqazfugjfsqrfmilbxzao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zosowrxuqqfplbcypwlpkebtbncpkgta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqaqimdddhalfyymxexfqyjgkoaulxra","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tznzhhrdgmtdquqkgoemydbihfjsypal","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hldmkakjyvryldlatvjcgjvgsjhyziqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"epqinwtughexuvegjlxdramkefkafxaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edefrxphglbsxrrnzrmeosqpxppvlufw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hesriivxdkkwwpfxdywozngdsihnxxhg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tudnzlrikghguywjaftxleaapcsktfpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nocvpnrjkyyxixxobbivinylohnvuqae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfpqvsgdpbpaqzwodbnbiihtxoqunnau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgqnhvkfeydmyjrmwegmwcefqjgewcdh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jqsuczjifpzizybckrvqafcjekkrybnu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixavjtklnminrrhurpemzchnzzjadumi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pvzbleohvystjvtdogkyjjtcacnymwqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxtqpbtdupajctrqxxxiuiebtbmohzpp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqcamorvrlodbnfmkwzjklgyjpiawfsx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hifclypongmllbpilgfxcrnppmneduyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfgjnolwlrkgneocvioiogttqulxccld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhergpcccekjipymxaknpkusvufiwyzq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zamgdkxxhnlfvzihztoipgxyajuekxti","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"viuhmltwiblupmirjrwiafzwkksbwfbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aienkprtgzlkkyensxjazsxbxupcitgv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667959,"databaseName":"models_schema","ddl":"CREATE TABLE `fwahqjmgxjbvouzmzetprekihxwdeptf` (\n `yhmnskczqrpzrtvxtajilbxnzxvxxrso` int NOT NULL,\n `alzxjuljprddrljbvsgfwjxikdjqyxwb` int DEFAULT NULL,\n `tvlrburgxcuuqwrtgkzaqekqsitmnnuq` int DEFAULT NULL,\n `vwvhedcpvfznopitywjafpnggoaprswk` int DEFAULT NULL,\n `hcfniddfpjoxcrewsrxzzobnhjeggnjw` int DEFAULT NULL,\n `zgpwoxhjyfeoexpasspyfnfoccimtull` int DEFAULT NULL,\n `jiwoulnrzwbgfapopwgunrezqhmrbecq` int DEFAULT NULL,\n `ecotynshuylvocgengweuzswqimlfifo` int DEFAULT NULL,\n `bibeekfxvfhnfccxfpmqddnauprdosbi` int DEFAULT NULL,\n `ztwivkstvraatuepuybxrolndkrribci` int DEFAULT NULL,\n `hmpudfijuhcgtvvtzorajehkvafkwhin` int DEFAULT NULL,\n `nmwajgpwhyhllofejkkeqzjibhjscxtw` int DEFAULT NULL,\n `icembmghbusjkvimhswzzycecugpogzg` int DEFAULT NULL,\n `esayffwjeblqukficcgwhyvhmrtkfnpu` int DEFAULT NULL,\n `xoinqsfguluxwqupzqpfzqpxenozqzaj` int DEFAULT NULL,\n `wosxiumrlgkhvmlwmmgirygquzajcfkd` int DEFAULT NULL,\n `xnphzdgehgcayniwvsniwmosizdyplvl` int DEFAULT NULL,\n `zzypyvrtqrafvpgkvkrsmzhugkensazt` int DEFAULT NULL,\n `hmwyxzycircapdymcmkvsszxrnhtcujv` int DEFAULT NULL,\n `fkxrffkaruxkmhnrknctulhgvujqixum` int DEFAULT NULL,\n `pfiaqhumtucspzwbtvanpkchlgeazrav` int DEFAULT NULL,\n `fvditnvaasmrrgrekczocjzjnnagojtk` int DEFAULT NULL,\n `qyagnfgmioadqucuurntlpebzdqfhutq` int DEFAULT NULL,\n `jcxyggfsrmfaodhaodzptembarcfiaah` int DEFAULT NULL,\n `hggdfjkskfxhwjlesadqetopylpatfkz` int DEFAULT NULL,\n `rgaglsatkioljiukqfdzysbzzzwdhnid` int DEFAULT NULL,\n `vsqhwmmhdurxceawbecegeuyqacfcpbr` int DEFAULT NULL,\n `hmfghdvkabfvoprfnqenbzcobsiuzndm` int DEFAULT NULL,\n `wxwlfmppkfkgcgxbnorojtwmsxgpwcos` int DEFAULT NULL,\n `zxpnbqfznbeeksfnbdaeopyzxcnzqmmg` int DEFAULT NULL,\n `xfzvppozzzfdyvxjdfigocbbwbpqwltk` int DEFAULT NULL,\n `pyndbjqbiotilzxhpaoeibhzkbxgvuao` int DEFAULT NULL,\n `eepjkwrraiorfpilcqqwcokybqowzdeh` int DEFAULT NULL,\n `fgriqjmsgwyhpyirauseodkfwrgucdbv` int DEFAULT NULL,\n `wgkmtkhralpafqekrcxprnenfzqyalsr` int DEFAULT NULL,\n `yxfxbemgsezykmfqehrpwonnconpmgig` int DEFAULT NULL,\n `tftysdfzwfxmwjzfbpntbbdfwbtampmw` int DEFAULT NULL,\n `iiujhvdgkiwaxqhiycstettwoglnorsk` int DEFAULT NULL,\n `zwwxjdhnxwzgcltbzijkeqrrslbqzchr` int DEFAULT NULL,\n `ietvameiyorfhtggammnenlnkeatueia` int DEFAULT NULL,\n `dhuwcscvqgjzgbiggibtsxzjvwlzqxiz` int DEFAULT NULL,\n `wfnxekqpitmpxswcjdccdlobgsquzfte` int DEFAULT NULL,\n `imqsivrilzeshtbyqfbwkhtkfcqllrni` int DEFAULT NULL,\n `yzopubtdrsxrtfwsafcdywdltwwytwni` int DEFAULT NULL,\n `xbocupgerwmhuhehostkdsjwzfkuveid` int DEFAULT NULL,\n `kwbjatvbvbtefkdwkqbwcvhobpdtbdoa` int DEFAULT NULL,\n `ngeaeqaaxaurntsynkmaltxkpjztdyyh` int DEFAULT NULL,\n `jxfyisktghhdaxmgnpnsebnnmwcknjse` int DEFAULT NULL,\n `kbkywsdvatgrgpobqyjjvsimvhqfmcfr` int DEFAULT NULL,\n `hrmaiknsuttbagtftaqnwhgrwsqmmjcu` int DEFAULT NULL,\n `kzatuefcpzxqrytbemnujrngxndibvut` int DEFAULT NULL,\n `dypqgkrmdoxudnqtrcwvigojunqskizk` int DEFAULT NULL,\n `tnpsoisbxfwazzcnbrhmbvvpskylyiqo` int DEFAULT NULL,\n `ccouamndtxwvsvigvgfangtzydesmjqi` int DEFAULT NULL,\n `hgjrtwnzbhhieafufhncocflehkrswas` int DEFAULT NULL,\n `fjgcaqzwjfaegzylgmdgymxywidqtkxi` int DEFAULT NULL,\n `xdwzoevqahvdkbttazeiowmoxbbcwett` int DEFAULT NULL,\n `luyvbjzltlhqmhucdxqhbgzvtjnqkxcn` int DEFAULT NULL,\n `rbdrmlfxtcysxnltopyncjbfxfaadpjd` int DEFAULT NULL,\n `etwxfuwsvgmntwfhtuucbgnfeqbwjkla` int DEFAULT NULL,\n `ujkhoqjlaoeknymddknyyieyaedvdled` int DEFAULT NULL,\n `sdvpaqekqonqvfzuitdbrnzpjkuqidca` int DEFAULT NULL,\n `uulbmlaxlzedhlgetbrxccmndremzuxk` int DEFAULT NULL,\n `vdppbsoeexmxjxphobyzdilnbzfsxvcl` int DEFAULT NULL,\n `muvtdjsgashqqrgbvutojgcpeabwnoxb` int DEFAULT NULL,\n `rlnypumnqtdqrsynpphsekocyabjwzvz` int DEFAULT NULL,\n `zrtjujvotfjzjohmzdlsnywxsurvivvk` int DEFAULT NULL,\n `mhntplwwxigbunvmebwjbujjvfyrgfdy` int DEFAULT NULL,\n `oqqgrwkxtldqqyxewltnjziqaercqgza` int DEFAULT NULL,\n `qddesisrhawdimblsnfbyjwgqiaekdtt` int DEFAULT NULL,\n `sedijftwvspzijkmwxfnwskvajujsdxu` int DEFAULT NULL,\n `gwljyunchncghejubqeinkwvhyjanzll` int DEFAULT NULL,\n `gdkdexgyhrxtxjwiyvxrhchmvdnlbxpd` int DEFAULT NULL,\n `tkxbmioxrneutvgwmkhajinbahmhcsyf` int DEFAULT NULL,\n `irxsldtwhcbhzhbptourhdfrxrywrurz` int DEFAULT NULL,\n `prgjnwedxhresrlvxxkllbhrbeaeiupl` int DEFAULT NULL,\n `qryduecwlflcqrpufjoelpnxzppqlrvi` int DEFAULT NULL,\n `yxwsrjavlhhuhdenvabwdbwntrvevnio` int DEFAULT NULL,\n `erzgsufcwkqrzhvncasxoibxqtggdiza` int DEFAULT NULL,\n `tjsuvqvytauixxedhthaycvclqycfjwf` int DEFAULT NULL,\n `ibbohcpmibzkxtekfmbluflhrktcpblt` int DEFAULT NULL,\n `babcwxjhvpeigujaabdwrynwdlkwvese` int DEFAULT NULL,\n `tpsaltfofnykrvhjrpbrjnzwvrcsdike` int DEFAULT NULL,\n `wsycawdawznmeznphxapsstjlehcimhh` int DEFAULT NULL,\n `rjvthhyqrirxcikojgddrnzfsbzbpymw` int DEFAULT NULL,\n `hmquchwgptihrllswjlyyzbpwqbzckpb` int DEFAULT NULL,\n `pdjpvkvnmszaxzifjjomopaysueaugut` int DEFAULT NULL,\n `oinvkjdsvifaswxlaqygwynaabiggopb` int DEFAULT NULL,\n `hdzicnuwvhssdveabxsyjomwjcbndudu` int DEFAULT NULL,\n `mkmqdfwnffqtzezpzhbnzzvkjavvdlcl` int DEFAULT NULL,\n `bplqxpfdfbnxifmhfgirubtwwynwikuq` int DEFAULT NULL,\n `vmbsnzqtexoixakvvhojcihdcgxxwpax` int DEFAULT NULL,\n `fetsphqndklbwsomyrardvuwslzxhhnm` int DEFAULT NULL,\n `vrfpdmutnhzynsnqpautbqyfztwqtjwq` int DEFAULT NULL,\n `oloocoaqbtyrmihdhbjbnablinimlnex` int DEFAULT NULL,\n `yfmhlifgcvwsiqcxnbtshnlmaupdctqi` int DEFAULT NULL,\n `urlypnasubcoyorxoqwsdnuxwuyfsoui` int DEFAULT NULL,\n `yxrexwidkakjvncdfvdtfpbpczdjysfo` int DEFAULT NULL,\n `qujxmairowubjkroxhzuwqvlzuxdteqy` int DEFAULT NULL,\n `lscsoxtkzatshmwjdnsuuacwtntdfkbu` int DEFAULT NULL,\n PRIMARY KEY (`yhmnskczqrpzrtvxtajilbxnzxvxxrso`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"fwahqjmgxjbvouzmzetprekihxwdeptf\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["yhmnskczqrpzrtvxtajilbxnzxvxxrso"],"columns":[{"name":"yhmnskczqrpzrtvxtajilbxnzxvxxrso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"alzxjuljprddrljbvsgfwjxikdjqyxwb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvlrburgxcuuqwrtgkzaqekqsitmnnuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vwvhedcpvfznopitywjafpnggoaprswk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hcfniddfpjoxcrewsrxzzobnhjeggnjw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zgpwoxhjyfeoexpasspyfnfoccimtull","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jiwoulnrzwbgfapopwgunrezqhmrbecq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecotynshuylvocgengweuzswqimlfifo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bibeekfxvfhnfccxfpmqddnauprdosbi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ztwivkstvraatuepuybxrolndkrribci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmpudfijuhcgtvvtzorajehkvafkwhin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmwajgpwhyhllofejkkeqzjibhjscxtw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icembmghbusjkvimhswzzycecugpogzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"esayffwjeblqukficcgwhyvhmrtkfnpu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xoinqsfguluxwqupzqpfzqpxenozqzaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wosxiumrlgkhvmlwmmgirygquzajcfkd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnphzdgehgcayniwvsniwmosizdyplvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzypyvrtqrafvpgkvkrsmzhugkensazt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmwyxzycircapdymcmkvsszxrnhtcujv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fkxrffkaruxkmhnrknctulhgvujqixum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pfiaqhumtucspzwbtvanpkchlgeazrav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fvditnvaasmrrgrekczocjzjnnagojtk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qyagnfgmioadqucuurntlpebzdqfhutq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jcxyggfsrmfaodhaodzptembarcfiaah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hggdfjkskfxhwjlesadqetopylpatfkz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgaglsatkioljiukqfdzysbzzzwdhnid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsqhwmmhdurxceawbecegeuyqacfcpbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmfghdvkabfvoprfnqenbzcobsiuzndm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxwlfmppkfkgcgxbnorojtwmsxgpwcos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxpnbqfznbeeksfnbdaeopyzxcnzqmmg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xfzvppozzzfdyvxjdfigocbbwbpqwltk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pyndbjqbiotilzxhpaoeibhzkbxgvuao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eepjkwrraiorfpilcqqwcokybqowzdeh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fgriqjmsgwyhpyirauseodkfwrgucdbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wgkmtkhralpafqekrcxprnenfzqyalsr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxfxbemgsezykmfqehrpwonnconpmgig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tftysdfzwfxmwjzfbpntbbdfwbtampmw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iiujhvdgkiwaxqhiycstettwoglnorsk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zwwxjdhnxwzgcltbzijkeqrrslbqzchr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ietvameiyorfhtggammnenlnkeatueia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhuwcscvqgjzgbiggibtsxzjvwlzqxiz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfnxekqpitmpxswcjdccdlobgsquzfte","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"imqsivrilzeshtbyqfbwkhtkfcqllrni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzopubtdrsxrtfwsafcdywdltwwytwni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbocupgerwmhuhehostkdsjwzfkuveid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwbjatvbvbtefkdwkqbwcvhobpdtbdoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ngeaeqaaxaurntsynkmaltxkpjztdyyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jxfyisktghhdaxmgnpnsebnnmwcknjse","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kbkywsdvatgrgpobqyjjvsimvhqfmcfr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hrmaiknsuttbagtftaqnwhgrwsqmmjcu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzatuefcpzxqrytbemnujrngxndibvut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dypqgkrmdoxudnqtrcwvigojunqskizk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnpsoisbxfwazzcnbrhmbvvpskylyiqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ccouamndtxwvsvigvgfangtzydesmjqi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hgjrtwnzbhhieafufhncocflehkrswas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjgcaqzwjfaegzylgmdgymxywidqtkxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdwzoevqahvdkbttazeiowmoxbbcwett","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"luyvbjzltlhqmhucdxqhbgzvtjnqkxcn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbdrmlfxtcysxnltopyncjbfxfaadpjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"etwxfuwsvgmntwfhtuucbgnfeqbwjkla","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujkhoqjlaoeknymddknyyieyaedvdled","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdvpaqekqonqvfzuitdbrnzpjkuqidca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uulbmlaxlzedhlgetbrxccmndremzuxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdppbsoeexmxjxphobyzdilnbzfsxvcl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"muvtdjsgashqqrgbvutojgcpeabwnoxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlnypumnqtdqrsynpphsekocyabjwzvz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zrtjujvotfjzjohmzdlsnywxsurvivvk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhntplwwxigbunvmebwjbujjvfyrgfdy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqqgrwkxtldqqyxewltnjziqaercqgza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qddesisrhawdimblsnfbyjwgqiaekdtt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sedijftwvspzijkmwxfnwskvajujsdxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gwljyunchncghejubqeinkwvhyjanzll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdkdexgyhrxtxjwiyvxrhchmvdnlbxpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkxbmioxrneutvgwmkhajinbahmhcsyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"irxsldtwhcbhzhbptourhdfrxrywrurz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prgjnwedxhresrlvxxkllbhrbeaeiupl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qryduecwlflcqrpufjoelpnxzppqlrvi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxwsrjavlhhuhdenvabwdbwntrvevnio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"erzgsufcwkqrzhvncasxoibxqtggdiza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjsuvqvytauixxedhthaycvclqycfjwf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibbohcpmibzkxtekfmbluflhrktcpblt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"babcwxjhvpeigujaabdwrynwdlkwvese","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpsaltfofnykrvhjrpbrjnzwvrcsdike","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wsycawdawznmeznphxapsstjlehcimhh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjvthhyqrirxcikojgddrnzfsbzbpymw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmquchwgptihrllswjlyyzbpwqbzckpb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdjpvkvnmszaxzifjjomopaysueaugut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oinvkjdsvifaswxlaqygwynaabiggopb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdzicnuwvhssdveabxsyjomwjcbndudu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkmqdfwnffqtzezpzhbnzzvkjavvdlcl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bplqxpfdfbnxifmhfgirubtwwynwikuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vmbsnzqtexoixakvvhojcihdcgxxwpax","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fetsphqndklbwsomyrardvuwslzxhhnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vrfpdmutnhzynsnqpautbqyfztwqtjwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oloocoaqbtyrmihdhbjbnablinimlnex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfmhlifgcvwsiqcxnbtshnlmaupdctqi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urlypnasubcoyorxoqwsdnuxwuyfsoui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxrexwidkakjvncdfvdtfpbpczdjysfo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qujxmairowubjkroxhzuwqvlzuxdteqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lscsoxtkzatshmwjdnsuuacwtntdfkbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842667,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842667992,"databaseName":"models_schema","ddl":"CREATE TABLE `gchydfeczangasnmvfdlykinnhisenui` (\n `qtpxljkpyugjughgizwavobxtvucyvwf` int NOT NULL,\n `qbmloglibndxridpdplqbwkvppbrxqkv` int DEFAULT NULL,\n `upnsdqmaimdfuynlaolvxnggfofvzqve` int DEFAULT NULL,\n `ysowedpihzxxwqswfajzsvwduzroplgu` int DEFAULT NULL,\n `pshoiyxzrngrhlutvwbfrfyyayeeddtp` int DEFAULT NULL,\n `cbmhfzpejuodsystxmfsjlmvegsbyfuu` int DEFAULT NULL,\n `esifsgllvoahpriipjhuahmjigmcvvbe` int DEFAULT NULL,\n `qlwcraerbvuruotgaymbqhhlglbtqwws` int DEFAULT NULL,\n `birtdxsafrjejfjaotmevkhejxwogetx` int DEFAULT NULL,\n `mhxmjwkfgtholadngwknrhxnyfbgfncu` int DEFAULT NULL,\n `npyhwsukbwlgkekgddlfvqsrssyptrkw` int DEFAULT NULL,\n `whuotlwfbindlicopfzltyxjswmdxbnr` int DEFAULT NULL,\n `erofkfzzhhpdakefqgryenatzcamvrer` int DEFAULT NULL,\n `unliruqbqmczjsdtsqwzsbdryakjwvep` int DEFAULT NULL,\n `jvwujxktpudxmozgswjxmpywlmschnkr` int DEFAULT NULL,\n `zmwxtlcxddcrdvzhsxvhxzqmgkyeniyp` int DEFAULT NULL,\n `fpwuuhfpvrbeqbajvflzmvhzittmhtch` int DEFAULT NULL,\n `fgewsqfetlkpkzoencctdwmgdondsujk` int DEFAULT NULL,\n `pisqowpmzhwnprvdnabjvyqtdxpnxhaf` int DEFAULT NULL,\n `vizbekqkjhknpwxvjgtpvpqizssnprjh` int DEFAULT NULL,\n `lbqvtjkdwjpljuxuauiljiyphzhuwbuh` int DEFAULT NULL,\n `dbvdnvnazgpsiusgfyvnkytppkavdhtq` int DEFAULT NULL,\n `rcchgyvolpnobvkcnuxlqtrusnyxmckt` int DEFAULT NULL,\n `mquesndkykjtrbbmcphcpejnlyejqwlu` int DEFAULT NULL,\n `txpwvfuicwpvyhpyuyjoeozonptkswmo` int DEFAULT NULL,\n `jyuvgbbgclclaghdosiyklfwegmohgqd` int DEFAULT NULL,\n `wzhngcdnkxprbalmmthtwwykezuwovwa` int DEFAULT NULL,\n `xolclsgyluydbsxyjoykrlxhslafwuqb` int DEFAULT NULL,\n `ggefwuxroikoscvqiawbhbxzdxoymcfz` int DEFAULT NULL,\n `vhdvgihyqmmfmglraliilithpycgkpjq` int DEFAULT NULL,\n `scnhgoktworvgetyfacmdeynmaqxlscr` int DEFAULT NULL,\n `yxfgngopiiktzjyhgrglhhuvbortuhih` int DEFAULT NULL,\n `sfysuerkzirtqfayhvvplctbtkfzdung` int DEFAULT NULL,\n `efizvvrsvjgmsgkkjpuvkjtijxcjyzgy` int DEFAULT NULL,\n `fzcyldtjagavtkdxjyoxtxexqrnbfbbz` int DEFAULT NULL,\n `qdxsjiccepygouqcuwotzynbzmypayrn` int DEFAULT NULL,\n `uzeliqybotqkduaecrnourrckarduksi` int DEFAULT NULL,\n `gtuafeodeowdchxqahnrgzkyiefmsngk` int DEFAULT NULL,\n `xadkhlwaespruxwzkqhsibdfjejdezbg` int DEFAULT NULL,\n `ffmigivcxbabvtdsjokmewuuurptkkkx` int DEFAULT NULL,\n `tvyzhswgzdpcqhltliluotbpdjqyvkim` int DEFAULT NULL,\n `sztjlkaiywhlavomdjgfjotgyscmmbll` int DEFAULT NULL,\n `bspzzzaglhpkhvrwwfpwwmrcsbjabmut` int DEFAULT NULL,\n `hundvgddsznbrnikujtwjsbnhyccasax` int DEFAULT NULL,\n `qhmriwvrkitqgktdyujfktilsnsnsntm` int DEFAULT NULL,\n `psotaokeanlbtjtxbnidghkvbaplluyy` int DEFAULT NULL,\n `ijlgubikuhfsiqfcypunefvaoxrglzjk` int DEFAULT NULL,\n `ofazhbmxmcddbjjlsrhitbumoarkfehr` int DEFAULT NULL,\n `doxvpfgwqqtarjwfxqbaysfmubfjrbhg` int DEFAULT NULL,\n `pftomotfjkgykxuwmhmswiadnvbpuoyo` int DEFAULT NULL,\n `fqsmgugaypzqucxkvqkrdxtxkxmrvbnp` int DEFAULT NULL,\n `udskmyolljpngarhbnfibnjwoeldxbbx` int DEFAULT NULL,\n `kvvglcjwjrkjpvnbyxjrhxcitvhzyvtf` int DEFAULT NULL,\n `nmvyrwthxcmojrxslwywuhgczkypfyqu` int DEFAULT NULL,\n `eqeaeywretpwmalrelkydpxdyhaubhet` int DEFAULT NULL,\n `funxeingdynpphgfmujccyhhunqoeoeo` int DEFAULT NULL,\n `fubdmcrjoedsauqpyupleyxmnvinhgqc` int DEFAULT NULL,\n `xjkznqgvnfhvizacvifxrtvbnahlywgp` int DEFAULT NULL,\n `fgswnejbsizdxxpbfrgioslofmyyofwj` int DEFAULT NULL,\n `tztuizkarswkbotmvkjmxmohhagzlzuq` int DEFAULT NULL,\n `fsikrsubhufwmwnmitawaewaacbmnpbq` int DEFAULT NULL,\n `evvhgkkyuaglsxpmsdwludaenqufbgum` int DEFAULT NULL,\n `bfffhnmepfhsuxfnuoaaftktgzcrxfpc` int DEFAULT NULL,\n `siwucwhxmggkvzkfgvqgexphsecourfe` int DEFAULT NULL,\n `thxwucqekisifwsxrlvxgdwaiksfusqp` int DEFAULT NULL,\n `uzkpqzlhvschjsfkqszartenwlmppine` int DEFAULT NULL,\n `hhqxkpzgpupasnqoqlxabvjguezllpdi` int DEFAULT NULL,\n `tylxyzteriesvssignrgfjewbcillgyz` int DEFAULT NULL,\n `xutjlzkkkoqvmysiqecjormkowrcmgib` int DEFAULT NULL,\n `vemhbnveoxvbwghycjoowlftpubzdufx` int DEFAULT NULL,\n `upcleivrxdevhkxxoegdgbzlvckyqrkz` int DEFAULT NULL,\n `fwohfhghqfyedrnwflepfsluhkngdzyn` int DEFAULT NULL,\n `hlafzykeemdjgbxdgcbeuuxvduqxffuy` int DEFAULT NULL,\n `xlsgwhxwdubdpxtgdwipjyccsafjixof` int DEFAULT NULL,\n `tumdiydhbbglmcwsjiflydmkmbgdpjoz` int DEFAULT NULL,\n `cnpzdmjvaipmxjtsydpualjkqdctkmpz` int DEFAULT NULL,\n `rmspuljpsgmyjtuqajorinhynmznystr` int DEFAULT NULL,\n `koliiyjlqzabauvdybasoxmahvcoecjg` int DEFAULT NULL,\n `hnrufwoogxnhhrjaxemznpkzpogytmuy` int DEFAULT NULL,\n `zmtmmyrqdffarnyvvbrwgmcbmrckfftx` int DEFAULT NULL,\n `qeiaowqusdmdbogqqquaprxnxizufvfa` int DEFAULT NULL,\n `psvjdextjvnqujdryrqzxerhiqhxzcoz` int DEFAULT NULL,\n `idnufvvpgkhbpqzenxaorlzgojafmaev` int DEFAULT NULL,\n `ftsmtcnbwbhfeyhpvywpngygdggknost` int DEFAULT NULL,\n `isbrbvdyhqrijuwjyjbhthlwnfxnckof` int DEFAULT NULL,\n `fnyporrfnkyixbhlkmfvvqqqpiklxhtr` int DEFAULT NULL,\n `ckdjpiejpzuygmwqzwvkysufkihekgwg` int DEFAULT NULL,\n `ekskjlyvircmyvlpdazolarrwpnpoypo` int DEFAULT NULL,\n `gosvjvsenkikeuspemhlsduipgwmtrri` int DEFAULT NULL,\n `rvfkuctsepuswpfjsyjwlpnpbnanqctr` int DEFAULT NULL,\n `rhgddiciuodbkfjjgwmzldzfeehpjrff` int DEFAULT NULL,\n `buqphduhmhqkyluglwmliimezfehxdij` int DEFAULT NULL,\n `xnxctiwjcspczvrcdmntecruuadietwn` int DEFAULT NULL,\n `ddalxzszpvsjvhwqzohvopkhdsckrsoj` int DEFAULT NULL,\n `twricpifbqczvmfarxqwezobdeseyros` int DEFAULT NULL,\n `vlibikzqnnpxosmclbosperdvcegceib` int DEFAULT NULL,\n `eytaoamyphjphjvgfmxpvoinjcbpdexf` int DEFAULT NULL,\n `vjbuzcorimiihsugekusvtubrinstedh` int DEFAULT NULL,\n `dkylwqxrylakmkxenjcayxgfvthmrsek` int DEFAULT NULL,\n `tcvxcuedksjlvgqvhobjifvxpkdyalii` int DEFAULT NULL,\n PRIMARY KEY (`qtpxljkpyugjughgizwavobxtvucyvwf`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"gchydfeczangasnmvfdlykinnhisenui\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["qtpxljkpyugjughgizwavobxtvucyvwf"],"columns":[{"name":"qtpxljkpyugjughgizwavobxtvucyvwf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"qbmloglibndxridpdplqbwkvppbrxqkv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upnsdqmaimdfuynlaolvxnggfofvzqve","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ysowedpihzxxwqswfajzsvwduzroplgu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pshoiyxzrngrhlutvwbfrfyyayeeddtp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbmhfzpejuodsystxmfsjlmvegsbyfuu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"esifsgllvoahpriipjhuahmjigmcvvbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qlwcraerbvuruotgaymbqhhlglbtqwws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"birtdxsafrjejfjaotmevkhejxwogetx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhxmjwkfgtholadngwknrhxnyfbgfncu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"npyhwsukbwlgkekgddlfvqsrssyptrkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"whuotlwfbindlicopfzltyxjswmdxbnr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"erofkfzzhhpdakefqgryenatzcamvrer","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unliruqbqmczjsdtsqwzsbdryakjwvep","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvwujxktpudxmozgswjxmpywlmschnkr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmwxtlcxddcrdvzhsxvhxzqmgkyeniyp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpwuuhfpvrbeqbajvflzmvhzittmhtch","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fgewsqfetlkpkzoencctdwmgdondsujk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pisqowpmzhwnprvdnabjvyqtdxpnxhaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vizbekqkjhknpwxvjgtpvpqizssnprjh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lbqvtjkdwjpljuxuauiljiyphzhuwbuh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbvdnvnazgpsiusgfyvnkytppkavdhtq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcchgyvolpnobvkcnuxlqtrusnyxmckt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mquesndkykjtrbbmcphcpejnlyejqwlu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txpwvfuicwpvyhpyuyjoeozonptkswmo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jyuvgbbgclclaghdosiyklfwegmohgqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzhngcdnkxprbalmmthtwwykezuwovwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xolclsgyluydbsxyjoykrlxhslafwuqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggefwuxroikoscvqiawbhbxzdxoymcfz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhdvgihyqmmfmglraliilithpycgkpjq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"scnhgoktworvgetyfacmdeynmaqxlscr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxfgngopiiktzjyhgrglhhuvbortuhih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfysuerkzirtqfayhvvplctbtkfzdung","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"efizvvrsvjgmsgkkjpuvkjtijxcjyzgy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzcyldtjagavtkdxjyoxtxexqrnbfbbz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdxsjiccepygouqcuwotzynbzmypayrn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzeliqybotqkduaecrnourrckarduksi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtuafeodeowdchxqahnrgzkyiefmsngk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xadkhlwaespruxwzkqhsibdfjejdezbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffmigivcxbabvtdsjokmewuuurptkkkx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvyzhswgzdpcqhltliluotbpdjqyvkim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sztjlkaiywhlavomdjgfjotgyscmmbll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bspzzzaglhpkhvrwwfpwwmrcsbjabmut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hundvgddsznbrnikujtwjsbnhyccasax","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhmriwvrkitqgktdyujfktilsnsnsntm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"psotaokeanlbtjtxbnidghkvbaplluyy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijlgubikuhfsiqfcypunefvaoxrglzjk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofazhbmxmcddbjjlsrhitbumoarkfehr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"doxvpfgwqqtarjwfxqbaysfmubfjrbhg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pftomotfjkgykxuwmhmswiadnvbpuoyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqsmgugaypzqucxkvqkrdxtxkxmrvbnp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udskmyolljpngarhbnfibnjwoeldxbbx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvvglcjwjrkjpvnbyxjrhxcitvhzyvtf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmvyrwthxcmojrxslwywuhgczkypfyqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqeaeywretpwmalrelkydpxdyhaubhet","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"funxeingdynpphgfmujccyhhunqoeoeo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fubdmcrjoedsauqpyupleyxmnvinhgqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjkznqgvnfhvizacvifxrtvbnahlywgp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fgswnejbsizdxxpbfrgioslofmyyofwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tztuizkarswkbotmvkjmxmohhagzlzuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fsikrsubhufwmwnmitawaewaacbmnpbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evvhgkkyuaglsxpmsdwludaenqufbgum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bfffhnmepfhsuxfnuoaaftktgzcrxfpc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"siwucwhxmggkvzkfgvqgexphsecourfe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thxwucqekisifwsxrlvxgdwaiksfusqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzkpqzlhvschjsfkqszartenwlmppine","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhqxkpzgpupasnqoqlxabvjguezllpdi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tylxyzteriesvssignrgfjewbcillgyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xutjlzkkkoqvmysiqecjormkowrcmgib","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vemhbnveoxvbwghycjoowlftpubzdufx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upcleivrxdevhkxxoegdgbzlvckyqrkz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwohfhghqfyedrnwflepfsluhkngdzyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlafzykeemdjgbxdgcbeuuxvduqxffuy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xlsgwhxwdubdpxtgdwipjyccsafjixof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tumdiydhbbglmcwsjiflydmkmbgdpjoz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnpzdmjvaipmxjtsydpualjkqdctkmpz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rmspuljpsgmyjtuqajorinhynmznystr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"koliiyjlqzabauvdybasoxmahvcoecjg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hnrufwoogxnhhrjaxemznpkzpogytmuy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmtmmyrqdffarnyvvbrwgmcbmrckfftx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qeiaowqusdmdbogqqquaprxnxizufvfa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"psvjdextjvnqujdryrqzxerhiqhxzcoz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idnufvvpgkhbpqzenxaorlzgojafmaev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftsmtcnbwbhfeyhpvywpngygdggknost","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"isbrbvdyhqrijuwjyjbhthlwnfxnckof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnyporrfnkyixbhlkmfvvqqqpiklxhtr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ckdjpiejpzuygmwqzwvkysufkihekgwg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekskjlyvircmyvlpdazolarrwpnpoypo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gosvjvsenkikeuspemhlsduipgwmtrri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rvfkuctsepuswpfjsyjwlpnpbnanqctr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhgddiciuodbkfjjgwmzldzfeehpjrff","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"buqphduhmhqkyluglwmliimezfehxdij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnxctiwjcspczvrcdmntecruuadietwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ddalxzszpvsjvhwqzohvopkhdsckrsoj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twricpifbqczvmfarxqwezobdeseyros","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vlibikzqnnpxosmclbosperdvcegceib","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eytaoamyphjphjvgfmxpvoinjcbpdexf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjbuzcorimiihsugekusvtubrinstedh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkylwqxrylakmkxenjcayxgfvthmrsek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tcvxcuedksjlvgqvhobjifvxpkdyalii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668023,"databaseName":"models_schema","ddl":"CREATE TABLE `ghyqwlwuskidustonvfapzjfqxxirouo` (\n `halrxzvudetvsbrvsdfcswmnfsvkjaeo` int NOT NULL,\n `rpqhtkysyckfnnwohoxcpvkzpzhnbagw` int DEFAULT NULL,\n `yuidriumfjsawxzhxtnfawrazdrdwndg` int DEFAULT NULL,\n `vmgkolwmoraybparktfyrqumltribrci` int DEFAULT NULL,\n `aqljoptkzfkqhyzbdsxkrvbxzjbzgzqt` int DEFAULT NULL,\n `orlpmrroytcmvpkqjxgyrajrimphelna` int DEFAULT NULL,\n `suvbgahqzvvagluqlxxotexgxshclplx` int DEFAULT NULL,\n `nagfrzpqdkhuivoljvsgpethlnnbeitb` int DEFAULT NULL,\n `wnosvjwivxsffzgfnhzvznbtpvsyrrcp` int DEFAULT NULL,\n `juslbyeifyveixbpxluqhkksbiurecam` int DEFAULT NULL,\n `qppdzsqapgviuadapekisjhkrmtweidm` int DEFAULT NULL,\n `gbtowmwiiqknhsnjcyzoxuvjhrfrlcmg` int DEFAULT NULL,\n `npsivvbnnnulguahhobigkesfowkhefd` int DEFAULT NULL,\n `lsffovevyeuahsgaizjmcpqopcprtwrl` int DEFAULT NULL,\n `kswnlcijqhiqfydeakzmrhetkyjetbnl` int DEFAULT NULL,\n `jfgkkgcpockmpdghpmwxbxrfnnotodrf` int DEFAULT NULL,\n `kgrgeesplkjuwvvzahayksmfwwixfigm` int DEFAULT NULL,\n `eacjhlpnzyqhyckzszmjbtomykhdqvsg` int DEFAULT NULL,\n `txpsqfsrhiqvgzughyskswlgfytachsg` int DEFAULT NULL,\n `xqtvrnmeyzmcqtbpjubbtnjaciyimxbh` int DEFAULT NULL,\n `dcluplzagqulbrnnpbzbxmtvsoqzijok` int DEFAULT NULL,\n `wxbqdrahhkhkycmsamqbfemhetaqfahr` int DEFAULT NULL,\n `hjhoqpqkvrdtgemjvjzpocyjlbhonmtu` int DEFAULT NULL,\n `byxsmvbbnqmzuxdznnucmvthoijcxykb` int DEFAULT NULL,\n `cifsknzvldpnbgploubwtwwzycpclqcv` int DEFAULT NULL,\n `uqyagshzvxlcwzhsqzjbgwfficpijlic` int DEFAULT NULL,\n `vcfgdxgysuwflsspqyiuhwcvctougfbf` int DEFAULT NULL,\n `qkvhxdgwfpoxobhjeeolvvtzscsswolg` int DEFAULT NULL,\n `uffwqcarwwjycehgudpiaobedzjkcuhk` int DEFAULT NULL,\n `hpilnjrkuscqyxidlsjdetowvunqqqfo` int DEFAULT NULL,\n `lfuubhrupomkvcixuhepznwgszcrgftp` int DEFAULT NULL,\n `qoliaftkqjotagmkloilzthjoylpoxzx` int DEFAULT NULL,\n `tbiracolklahzhbtufpawkgtuvwzqdyp` int DEFAULT NULL,\n `vclbqmcwplvxktmgdxhyxmuyzwkilsaf` int DEFAULT NULL,\n `vuflmksfgctrunmqxqkclvkokpdeetvv` int DEFAULT NULL,\n `kzwgtircnhhemldiggkmxxdvosxefjus` int DEFAULT NULL,\n `rcjexhxrhhndasjuyfzjxhsajjelfrmw` int DEFAULT NULL,\n `oubuiubnaofawiyxybmoacpjujstrhny` int DEFAULT NULL,\n `pxjysljpxszfmceqjobsdjdpruwmdioy` int DEFAULT NULL,\n `lnuytnzgrriiewvlfszscrvxhxcevpel` int DEFAULT NULL,\n `kqxbecgeqjnwaixjdeglhvpfetjbslai` int DEFAULT NULL,\n `osiykldomcwyxrzlwlvgdnswlkhyugln` int DEFAULT NULL,\n `lnosbuuudnjcqnehsvymytzekyuywoaj` int DEFAULT NULL,\n `grfmuqyarkymgyjhfzlpzhohzipxmhlf` int DEFAULT NULL,\n `ekuogdzihsrzilubytuvxhsbvfwoeawq` int DEFAULT NULL,\n `wplxmtldmuciqcsgnwjfsmjnrjsxyhrp` int DEFAULT NULL,\n `bkvkyvcdysdshnrhqgbznzvnrmfqbkkc` int DEFAULT NULL,\n `zpyjautkpgmewjjsxmozaprcnnhkfiqt` int DEFAULT NULL,\n `ugevyatsnoeilovzrhjqwyppblsdtkxs` int DEFAULT NULL,\n `ulhcegooxywpcnllfmbmhujufrnpazpb` int DEFAULT NULL,\n `ypvarhqcemmeuqtigzcrxwceokhibygu` int DEFAULT NULL,\n `mbnpeursozztzsffjbrhvywlczituwzu` int DEFAULT NULL,\n `kuvjumrotdxrkktlekxfqaswmwwmogzi` int DEFAULT NULL,\n `yxhgffcvujtoxdrlaowfsbrhbmuanfhc` int DEFAULT NULL,\n `txzjfhwdxoeevbvbxyocpssyhwaeqwyi` int DEFAULT NULL,\n `btsejxikjpvvfjxjfedfkgpvaobjcxas` int DEFAULT NULL,\n `lqdjxggjtqvtvqcbywcosfufrjdybpmv` int DEFAULT NULL,\n `kthathmtckdzlcmodyvbzxwhwysheiuu` int DEFAULT NULL,\n `wnjtuhtmoctjeicxupbtmesygxwzidvc` int DEFAULT NULL,\n `gfpedrvgtsfpjoeudqmqddhwulinyewv` int DEFAULT NULL,\n `svjtmitavhaquluhtefdnrnkzprxrgdh` int DEFAULT NULL,\n `qtwysseixvqupwmogthqauamrvdvzgld` int DEFAULT NULL,\n `miasksfqovydfkqlyxboqspucryhdbtg` int DEFAULT NULL,\n `zqswjjixeeffrkpyugyiqxbjcvtsxbtt` int DEFAULT NULL,\n `vuwykuczahwoxmwhticjcskxzalaales` int DEFAULT NULL,\n `uqnkpabucxaogzupvdmjyuhpsjjyjeli` int DEFAULT NULL,\n `poyzefsigpcwqqqxxtnkszehmjfhtpii` int DEFAULT NULL,\n `dwryvpqrtttbcwocgojvrasirrtwgehe` int DEFAULT NULL,\n `umpfuicyhkpfmoyxrwgcjrvqwifiucqq` int DEFAULT NULL,\n `nshhcbtiqnlwzxfogvgdpwlbtoxzmghc` int DEFAULT NULL,\n `tuxbfhpevbajqclujfbpyqoathiitidv` int DEFAULT NULL,\n `eebwaaztzgoilvtboxiagotfpopvcuem` int DEFAULT NULL,\n `xulkvwwijexlsnrxldzidsjxmwlcpotw` int DEFAULT NULL,\n `mkdwkvfhxhfzcwatxaiwhxjjgqojuemb` int DEFAULT NULL,\n `byjrrrjngwagjkfkuaarcjrfewzooaqq` int DEFAULT NULL,\n `snnktpemehpgrkrdcpwzaukgotbywdzh` int DEFAULT NULL,\n `uifpmtrbiipnyxrkjeuztrskojwacdsx` int DEFAULT NULL,\n `sfejgherfvzurnmddjezsodlhosyuhfa` int DEFAULT NULL,\n `upeiubupufmwhtdnrmsijzvcocfjlunv` int DEFAULT NULL,\n `fonpcrodquoejselftrazchbqzuokiwo` int DEFAULT NULL,\n `oytovagmmskulddtyynzpxismqoonrna` int DEFAULT NULL,\n `sdbjbkrowhewsfcykulhitemfreekkek` int DEFAULT NULL,\n `mlbzckbarqjurberdomloadtgdgsgefl` int DEFAULT NULL,\n `jnnedelofosvfqmldlswhjwwzspfkpit` int DEFAULT NULL,\n `qjtyhpmscjlahctbytnquoqirwkmsbqm` int DEFAULT NULL,\n `vxenewoqkgqwydmbbgqqxohobzasbydn` int DEFAULT NULL,\n `wjnwayregjkobphfhrqxhdyqdzwcgafm` int DEFAULT NULL,\n `bxccebapldvapolxlnblogbaxlykqnzj` int DEFAULT NULL,\n `gaeskunxdeeocygahsxttwbcrnncxmdv` int DEFAULT NULL,\n `rgwnrcyzoirkbcfbbldraamttwbnpcgq` int DEFAULT NULL,\n `eanniqmrowgebyhosvubouptjnjjorhv` int DEFAULT NULL,\n `efiieqvxgqsrqasknxgqplpoddcirrex` int DEFAULT NULL,\n `dyttnqnyujvoztqextfyhffvbqxxgiwc` int DEFAULT NULL,\n `wegovmdswvqebmrxxgafgazdzfasgppi` int DEFAULT NULL,\n `xxptiuxnxnpnrtllmsdhmmpaeqkhibdj` int DEFAULT NULL,\n `oagdkyyezgymzlbxjnondrrrdujeqflx` int DEFAULT NULL,\n `ejothtuxxdfeadhwsjemzfumwiuyoell` int DEFAULT NULL,\n `uyztmsmypvhnrxsejejzyjjwlipaoojz` int DEFAULT NULL,\n `fzxiyydukclboixmfidfcwwvowktkcxs` int DEFAULT NULL,\n `xehfronmriisqxunawgihynpktuqskxk` int DEFAULT NULL,\n PRIMARY KEY (`halrxzvudetvsbrvsdfcswmnfsvkjaeo`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"ghyqwlwuskidustonvfapzjfqxxirouo\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["halrxzvudetvsbrvsdfcswmnfsvkjaeo"],"columns":[{"name":"halrxzvudetvsbrvsdfcswmnfsvkjaeo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"rpqhtkysyckfnnwohoxcpvkzpzhnbagw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yuidriumfjsawxzhxtnfawrazdrdwndg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vmgkolwmoraybparktfyrqumltribrci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqljoptkzfkqhyzbdsxkrvbxzjbzgzqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orlpmrroytcmvpkqjxgyrajrimphelna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"suvbgahqzvvagluqlxxotexgxshclplx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nagfrzpqdkhuivoljvsgpethlnnbeitb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnosvjwivxsffzgfnhzvznbtpvsyrrcp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"juslbyeifyveixbpxluqhkksbiurecam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qppdzsqapgviuadapekisjhkrmtweidm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gbtowmwiiqknhsnjcyzoxuvjhrfrlcmg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"npsivvbnnnulguahhobigkesfowkhefd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lsffovevyeuahsgaizjmcpqopcprtwrl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kswnlcijqhiqfydeakzmrhetkyjetbnl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jfgkkgcpockmpdghpmwxbxrfnnotodrf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kgrgeesplkjuwvvzahayksmfwwixfigm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eacjhlpnzyqhyckzszmjbtomykhdqvsg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txpsqfsrhiqvgzughyskswlgfytachsg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqtvrnmeyzmcqtbpjubbtnjaciyimxbh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcluplzagqulbrnnpbzbxmtvsoqzijok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxbqdrahhkhkycmsamqbfemhetaqfahr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjhoqpqkvrdtgemjvjzpocyjlbhonmtu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"byxsmvbbnqmzuxdznnucmvthoijcxykb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cifsknzvldpnbgploubwtwwzycpclqcv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqyagshzvxlcwzhsqzjbgwfficpijlic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vcfgdxgysuwflsspqyiuhwcvctougfbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qkvhxdgwfpoxobhjeeolvvtzscsswolg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uffwqcarwwjycehgudpiaobedzjkcuhk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hpilnjrkuscqyxidlsjdetowvunqqqfo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfuubhrupomkvcixuhepznwgszcrgftp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qoliaftkqjotagmkloilzthjoylpoxzx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbiracolklahzhbtufpawkgtuvwzqdyp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vclbqmcwplvxktmgdxhyxmuyzwkilsaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vuflmksfgctrunmqxqkclvkokpdeetvv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzwgtircnhhemldiggkmxxdvosxefjus","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcjexhxrhhndasjuyfzjxhsajjelfrmw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oubuiubnaofawiyxybmoacpjujstrhny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxjysljpxszfmceqjobsdjdpruwmdioy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lnuytnzgrriiewvlfszscrvxhxcevpel","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kqxbecgeqjnwaixjdeglhvpfetjbslai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"osiykldomcwyxrzlwlvgdnswlkhyugln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lnosbuuudnjcqnehsvymytzekyuywoaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grfmuqyarkymgyjhfzlpzhohzipxmhlf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekuogdzihsrzilubytuvxhsbvfwoeawq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wplxmtldmuciqcsgnwjfsmjnrjsxyhrp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkvkyvcdysdshnrhqgbznzvnrmfqbkkc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zpyjautkpgmewjjsxmozaprcnnhkfiqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugevyatsnoeilovzrhjqwyppblsdtkxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ulhcegooxywpcnllfmbmhujufrnpazpb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypvarhqcemmeuqtigzcrxwceokhibygu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbnpeursozztzsffjbrhvywlczituwzu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kuvjumrotdxrkktlekxfqaswmwwmogzi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxhgffcvujtoxdrlaowfsbrhbmuanfhc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txzjfhwdxoeevbvbxyocpssyhwaeqwyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"btsejxikjpvvfjxjfedfkgpvaobjcxas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqdjxggjtqvtvqcbywcosfufrjdybpmv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kthathmtckdzlcmodyvbzxwhwysheiuu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnjtuhtmoctjeicxupbtmesygxwzidvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfpedrvgtsfpjoeudqmqddhwulinyewv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"svjtmitavhaquluhtefdnrnkzprxrgdh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtwysseixvqupwmogthqauamrvdvzgld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"miasksfqovydfkqlyxboqspucryhdbtg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqswjjixeeffrkpyugyiqxbjcvtsxbtt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vuwykuczahwoxmwhticjcskxzalaales","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqnkpabucxaogzupvdmjyuhpsjjyjeli","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"poyzefsigpcwqqqxxtnkszehmjfhtpii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwryvpqrtttbcwocgojvrasirrtwgehe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umpfuicyhkpfmoyxrwgcjrvqwifiucqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nshhcbtiqnlwzxfogvgdpwlbtoxzmghc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tuxbfhpevbajqclujfbpyqoathiitidv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eebwaaztzgoilvtboxiagotfpopvcuem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xulkvwwijexlsnrxldzidsjxmwlcpotw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkdwkvfhxhfzcwatxaiwhxjjgqojuemb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"byjrrrjngwagjkfkuaarcjrfewzooaqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"snnktpemehpgrkrdcpwzaukgotbywdzh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uifpmtrbiipnyxrkjeuztrskojwacdsx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfejgherfvzurnmddjezsodlhosyuhfa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upeiubupufmwhtdnrmsijzvcocfjlunv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fonpcrodquoejselftrazchbqzuokiwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oytovagmmskulddtyynzpxismqoonrna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdbjbkrowhewsfcykulhitemfreekkek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mlbzckbarqjurberdomloadtgdgsgefl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jnnedelofosvfqmldlswhjwwzspfkpit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjtyhpmscjlahctbytnquoqirwkmsbqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxenewoqkgqwydmbbgqqxohobzasbydn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjnwayregjkobphfhrqxhdyqdzwcgafm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bxccebapldvapolxlnblogbaxlykqnzj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gaeskunxdeeocygahsxttwbcrnncxmdv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgwnrcyzoirkbcfbbldraamttwbnpcgq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eanniqmrowgebyhosvubouptjnjjorhv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"efiieqvxgqsrqasknxgqplpoddcirrex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dyttnqnyujvoztqextfyhffvbqxxgiwc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wegovmdswvqebmrxxgafgazdzfasgppi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxptiuxnxnpnrtllmsdhmmpaeqkhibdj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oagdkyyezgymzlbxjnondrrrdujeqflx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejothtuxxdfeadhwsjemzfumwiuyoell","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uyztmsmypvhnrxsejejzyjjwlipaoojz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzxiyydukclboixmfidfcwwvowktkcxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xehfronmriisqxunawgihynpktuqskxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668059,"databaseName":"models_schema","ddl":"CREATE TABLE `giavkelmcovmviellbpxbpmjayywzwvr` (\n `kxsljcsyrqihuxpldunpwqyqxmcuzaph` int NOT NULL,\n `ynomjmlrguokrqvtmhficqqgkrcothwk` int DEFAULT NULL,\n `vfvtjahwnnzxwuepztynuvzxrjcyrzac` int DEFAULT NULL,\n `dcuqedmlbjknzbohrmvohetcftbxedjm` int DEFAULT NULL,\n `zfhbcctqfqqmjscatigxzgaylgfxijfr` int DEFAULT NULL,\n `ppypufxtoooeocgxrqptwybqrumzlnuo` int DEFAULT NULL,\n `iplgiupvwdeoivrajyrcqeevyoedcxjg` int DEFAULT NULL,\n `fmxhualushdwiealrviqfnkosslilbng` int DEFAULT NULL,\n `sqbfeiybwyympdnhfbmnvayqbevmpnff` int DEFAULT NULL,\n `vaohrpgiraohxrnommqnxzezhxabheaw` int DEFAULT NULL,\n `qrflvvbvkauiqordbulgaysmeghjtzdx` int DEFAULT NULL,\n `zzqvgnmfpsemwidhljjvuwikurcmsxql` int DEFAULT NULL,\n `pvwrwbnnqgfzmbbbrefmbrjdklywkwxq` int DEFAULT NULL,\n `mivhgowttxpdhpywfmphblxyfilgtqre` int DEFAULT NULL,\n `fdlxjasrnpmgdnnqsnxhaazcstdizfdc` int DEFAULT NULL,\n `bkbdqtptxewydetkfxykxzpkqxvrwuui` int DEFAULT NULL,\n `flbcqqsmdqwzkzuibmuaadklekhnhhxs` int DEFAULT NULL,\n `rrqhdxmvhlbfusvzirgsyyauhrnxrkyl` int DEFAULT NULL,\n `jqxwoxxfmnplqkpfknoslpdzcdtwrjxg` int DEFAULT NULL,\n `kgmmaryhkjgmbalpwvrjgnzxybiluktq` int DEFAULT NULL,\n `hdlweuczblztwmyyfkrjxaajidpxnbjl` int DEFAULT NULL,\n `fbgjqrlyzmtmvohhvgbdrcowcqcuohwz` int DEFAULT NULL,\n `jvaiyjoehcvwmpitxilozxukzjnaeyfd` int DEFAULT NULL,\n `scwmslithkxnihesbcxeqiiotccamcpj` int DEFAULT NULL,\n `seiihlkakfqyvjwygydmgoogyotwvstg` int DEFAULT NULL,\n `rgqqmppgukvbfqzylpgwwfcidrgvfjgj` int DEFAULT NULL,\n `ljlyjoscyyjvjwaoarpoeejwgohvbfai` int DEFAULT NULL,\n `hicsbdjtssxalbpuymwjdhlypuuonnrn` int DEFAULT NULL,\n `oinmkclcwmdkqsatbxlrhgklrnatirsz` int DEFAULT NULL,\n `ygugvytohhqjtqyksfgtqiqvprfqrbth` int DEFAULT NULL,\n `gicxbajxdblibmctbfyjakgittzqhzoa` int DEFAULT NULL,\n `scpsvtaemexnurchfrymdwjytopbkrlu` int DEFAULT NULL,\n `mkgnbhxffakmlyatfinwvavryjqjybhf` int DEFAULT NULL,\n `tbbydkdfumdrtbcftdpiiikshbmeukhm` int DEFAULT NULL,\n `xepnxjwjjwzrtvsnirpptwpykjijmchi` int DEFAULT NULL,\n `ouwzbhhkyikpmgifwbhpvjtdjwbiqbqn` int DEFAULT NULL,\n `nsadkoxkoczcwshpoysoipdkinwcqbot` int DEFAULT NULL,\n `gmuymmaqbqgobhyszattrgjpjwoyjpmx` int DEFAULT NULL,\n `qxsdrsrvscclvbpcfxvmwwwyqkjnnnxs` int DEFAULT NULL,\n `ugdqbjreknosfpgyexmvxasodsmyheae` int DEFAULT NULL,\n `jwhrwblytnvqzxmsvjdyqhgzmmlnmsio` int DEFAULT NULL,\n `aseccamglzooirjajhieabwelxashfvt` int DEFAULT NULL,\n `aykgaksfkesywtuceeetlpwumpqxavys` int DEFAULT NULL,\n `lfhawlzaujesjocvkuegholfytoogcds` int DEFAULT NULL,\n `wutbzdszrfdzhkqnvjffeiclbiuqsjgp` int DEFAULT NULL,\n `xprtvdtjdmujhakrdmqnfzomzvirlrjh` int DEFAULT NULL,\n `mxrvzzigfkvacteqlsygvvplmvczyump` int DEFAULT NULL,\n `xvqwsgfvyddzrnsihjunqpsmwwvfhqgc` int DEFAULT NULL,\n `vxrtxmyiklzdemeahwegjfovbbdyajtm` int DEFAULT NULL,\n `akmbqiacpjiwxxdrricuednfozrdeyos` int DEFAULT NULL,\n `uijpynlnsnkdfowoonpcttaazfeeqsss` int DEFAULT NULL,\n `esqseasyzbkmbpyxgsakgljrdqnqjcxh` int DEFAULT NULL,\n `tqcuxmnhtuuihnvfnropeyqeawjquuto` int DEFAULT NULL,\n `dqjuuaynvraieergqkelvaidcbcupxcm` int DEFAULT NULL,\n `rqzezbdiqihnzchdvqaaraecuszekxkp` int DEFAULT NULL,\n `aqjfwaimzfwyldfsdfmzyakplgnixarg` int DEFAULT NULL,\n `rfxwkkjmhpntrsdaaqwwocxhaafswpjn` int DEFAULT NULL,\n `qnjmmkjarjvoinuycjsjinauvhgvmehc` int DEFAULT NULL,\n `sgntduxgujqcgzkqiumuzexdauwrdeod` int DEFAULT NULL,\n `ngglzksmdfzfugtojuuvxxncrsvrsecm` int DEFAULT NULL,\n `sbhskfdxrhuhooyvrqtgewdneucmvrds` int DEFAULT NULL,\n `txkjgykkanoxlackywwpxhmnazporaur` int DEFAULT NULL,\n `iezcufboaxfnpmxqgdekgdnvjeldpdtx` int DEFAULT NULL,\n `rbsohrqeptlchefgxkjtiwidqijyovei` int DEFAULT NULL,\n `qzcbsxuynebnoehlbptcjtsagocqkktv` int DEFAULT NULL,\n `owgyajqdqmbauskeidhgzwmhrexhbigs` int DEFAULT NULL,\n `rvacssoztolljuqcbvrzgcpafeodyaha` int DEFAULT NULL,\n `fdikosqdrzqpsfkvbigpeartscudzava` int DEFAULT NULL,\n `nagcxezlosdxywzwpcfwvpxoxspwlkrl` int DEFAULT NULL,\n `mjgtgcnkahvkajgebqltodyxulvrrbns` int DEFAULT NULL,\n `eieaggjefwkonuqlyhpilhnmoxuaffza` int DEFAULT NULL,\n `dfpvtcegpixwzskgyovudsqvayfjougx` int DEFAULT NULL,\n `muyhdeuqjtypldvsgbandbqxruxtrntx` int DEFAULT NULL,\n `ewkcfhfrmjilysqpivvnzocgixmpotzy` int DEFAULT NULL,\n `xgllcchcmqlnccyssqyvpppwdqjulkig` int DEFAULT NULL,\n `voqyjqofxsgqjstxytdkmqxguiqwauso` int DEFAULT NULL,\n `gtlbuxmngkpfzpnizbrgklyhkeklfnqy` int DEFAULT NULL,\n `mtbkizmjghvdladnxsdkdousbbenrlch` int DEFAULT NULL,\n `ftehbmcamxmhtdnlfsgwmwzdqhsrwpwl` int DEFAULT NULL,\n `uzlbiagcimhschojshdelolocgfuqoqp` int DEFAULT NULL,\n `ordivuohfhkcixfkyfnjtmjehqklqpkv` int DEFAULT NULL,\n `kmvpnsqsuxtzoxdrpifeociwtmhgmcec` int DEFAULT NULL,\n `pmqfpoezwchzwwhlhngllruiftqfboco` int DEFAULT NULL,\n `ibwtojsucqmbwlnjirhdcmiagplkaqtf` int DEFAULT NULL,\n `yhuvbkzwulqowyemagmqnwczsppurrsu` int DEFAULT NULL,\n `pkbzmodqtyjxiepvkmbemkgxdeyxvhay` int DEFAULT NULL,\n `kqetvdxarqnpscojmrixiacfoepdtovu` int DEFAULT NULL,\n `kokqvbjydgdyszewbqxthgxsnrzygvni` int DEFAULT NULL,\n `jqzqjkxanxdfnvsfjbzauqrwyiyeqlgx` int DEFAULT NULL,\n `oscmclbolivsrgqlqvgcnlzxuifytwet` int DEFAULT NULL,\n `faymkrurqciuupklyehetqcwzyejmxwm` int DEFAULT NULL,\n `vcaydiiwphvqfexzqxiyjodumsxguhbd` int DEFAULT NULL,\n `igdowgarxelhczqfaufgiegerddnhyjl` int DEFAULT NULL,\n `psnrnrjeqcfxcvbppqpkcjhsmfpscapp` int DEFAULT NULL,\n `mknbzaonqdklwbxotmcljdbwvfhxflmx` int DEFAULT NULL,\n `msifutpojvlsfhvdczvsabbtpwaxxaoa` int DEFAULT NULL,\n `lsqjasgjpkwonfogpureuajtkrpsjpne` int DEFAULT NULL,\n `hvjttwdwfnoqbxeubdpajearomnalieg` int DEFAULT NULL,\n `bbicduuyqpcuhgfscdxvinalqgchdfnh` int DEFAULT NULL,\n `uomcstvoxdftwtcowixsaenpdswyazle` int DEFAULT NULL,\n PRIMARY KEY (`kxsljcsyrqihuxpldunpwqyqxmcuzaph`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"giavkelmcovmviellbpxbpmjayywzwvr\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["kxsljcsyrqihuxpldunpwqyqxmcuzaph"],"columns":[{"name":"kxsljcsyrqihuxpldunpwqyqxmcuzaph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"ynomjmlrguokrqvtmhficqqgkrcothwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vfvtjahwnnzxwuepztynuvzxrjcyrzac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcuqedmlbjknzbohrmvohetcftbxedjm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zfhbcctqfqqmjscatigxzgaylgfxijfr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ppypufxtoooeocgxrqptwybqrumzlnuo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iplgiupvwdeoivrajyrcqeevyoedcxjg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmxhualushdwiealrviqfnkosslilbng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sqbfeiybwyympdnhfbmnvayqbevmpnff","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vaohrpgiraohxrnommqnxzezhxabheaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qrflvvbvkauiqordbulgaysmeghjtzdx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzqvgnmfpsemwidhljjvuwikurcmsxql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pvwrwbnnqgfzmbbbrefmbrjdklywkwxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mivhgowttxpdhpywfmphblxyfilgtqre","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fdlxjasrnpmgdnnqsnxhaazcstdizfdc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkbdqtptxewydetkfxykxzpkqxvrwuui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flbcqqsmdqwzkzuibmuaadklekhnhhxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrqhdxmvhlbfusvzirgsyyauhrnxrkyl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jqxwoxxfmnplqkpfknoslpdzcdtwrjxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kgmmaryhkjgmbalpwvrjgnzxybiluktq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdlweuczblztwmyyfkrjxaajidpxnbjl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbgjqrlyzmtmvohhvgbdrcowcqcuohwz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvaiyjoehcvwmpitxilozxukzjnaeyfd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"scwmslithkxnihesbcxeqiiotccamcpj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"seiihlkakfqyvjwygydmgoogyotwvstg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgqqmppgukvbfqzylpgwwfcidrgvfjgj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljlyjoscyyjvjwaoarpoeejwgohvbfai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hicsbdjtssxalbpuymwjdhlypuuonnrn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oinmkclcwmdkqsatbxlrhgklrnatirsz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ygugvytohhqjtqyksfgtqiqvprfqrbth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gicxbajxdblibmctbfyjakgittzqhzoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"scpsvtaemexnurchfrymdwjytopbkrlu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkgnbhxffakmlyatfinwvavryjqjybhf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbbydkdfumdrtbcftdpiiikshbmeukhm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xepnxjwjjwzrtvsnirpptwpykjijmchi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ouwzbhhkyikpmgifwbhpvjtdjwbiqbqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nsadkoxkoczcwshpoysoipdkinwcqbot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmuymmaqbqgobhyszattrgjpjwoyjpmx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxsdrsrvscclvbpcfxvmwwwyqkjnnnxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugdqbjreknosfpgyexmvxasodsmyheae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwhrwblytnvqzxmsvjdyqhgzmmlnmsio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aseccamglzooirjajhieabwelxashfvt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aykgaksfkesywtuceeetlpwumpqxavys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfhawlzaujesjocvkuegholfytoogcds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wutbzdszrfdzhkqnvjffeiclbiuqsjgp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xprtvdtjdmujhakrdmqnfzomzvirlrjh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mxrvzzigfkvacteqlsygvvplmvczyump","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvqwsgfvyddzrnsihjunqpsmwwvfhqgc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxrtxmyiklzdemeahwegjfovbbdyajtm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akmbqiacpjiwxxdrricuednfozrdeyos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uijpynlnsnkdfowoonpcttaazfeeqsss","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"esqseasyzbkmbpyxgsakgljrdqnqjcxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqcuxmnhtuuihnvfnropeyqeawjquuto","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqjuuaynvraieergqkelvaidcbcupxcm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqzezbdiqihnzchdvqaaraecuszekxkp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqjfwaimzfwyldfsdfmzyakplgnixarg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfxwkkjmhpntrsdaaqwwocxhaafswpjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qnjmmkjarjvoinuycjsjinauvhgvmehc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sgntduxgujqcgzkqiumuzexdauwrdeod","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ngglzksmdfzfugtojuuvxxncrsvrsecm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbhskfdxrhuhooyvrqtgewdneucmvrds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txkjgykkanoxlackywwpxhmnazporaur","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iezcufboaxfnpmxqgdekgdnvjeldpdtx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbsohrqeptlchefgxkjtiwidqijyovei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qzcbsxuynebnoehlbptcjtsagocqkktv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owgyajqdqmbauskeidhgzwmhrexhbigs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rvacssoztolljuqcbvrzgcpafeodyaha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fdikosqdrzqpsfkvbigpeartscudzava","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nagcxezlosdxywzwpcfwvpxoxspwlkrl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjgtgcnkahvkajgebqltodyxulvrrbns","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eieaggjefwkonuqlyhpilhnmoxuaffza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dfpvtcegpixwzskgyovudsqvayfjougx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"muyhdeuqjtypldvsgbandbqxruxtrntx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ewkcfhfrmjilysqpivvnzocgixmpotzy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xgllcchcmqlnccyssqyvpppwdqjulkig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"voqyjqofxsgqjstxytdkmqxguiqwauso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtlbuxmngkpfzpnizbrgklyhkeklfnqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtbkizmjghvdladnxsdkdousbbenrlch","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftehbmcamxmhtdnlfsgwmwzdqhsrwpwl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzlbiagcimhschojshdelolocgfuqoqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ordivuohfhkcixfkyfnjtmjehqklqpkv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kmvpnsqsuxtzoxdrpifeociwtmhgmcec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmqfpoezwchzwwhlhngllruiftqfboco","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibwtojsucqmbwlnjirhdcmiagplkaqtf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhuvbkzwulqowyemagmqnwczsppurrsu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkbzmodqtyjxiepvkmbemkgxdeyxvhay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kqetvdxarqnpscojmrixiacfoepdtovu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kokqvbjydgdyszewbqxthgxsnrzygvni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jqzqjkxanxdfnvsfjbzauqrwyiyeqlgx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oscmclbolivsrgqlqvgcnlzxuifytwet","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"faymkrurqciuupklyehetqcwzyejmxwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vcaydiiwphvqfexzqxiyjodumsxguhbd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igdowgarxelhczqfaufgiegerddnhyjl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"psnrnrjeqcfxcvbppqpkcjhsmfpscapp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mknbzaonqdklwbxotmcljdbwvfhxflmx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"msifutpojvlsfhvdczvsabbtpwaxxaoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lsqjasgjpkwonfogpureuajtkrpsjpne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hvjttwdwfnoqbxeubdpajearomnalieg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbicduuyqpcuhgfscdxvinalqgchdfnh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uomcstvoxdftwtcowixsaenpdswyazle","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668090,"databaseName":"models_schema","ddl":"CREATE TABLE `gibjkzyrpmoaypiniuiyywvlmaidwzxy` (\n `mgrhdcrfffjqcixbnceoherkswomkjdk` int NOT NULL,\n `prgzlvmuntyxsxwytdyhyuvvewpwmatn` int DEFAULT NULL,\n `sgvsvarckajuulsjrlnvuofreqxlqsue` int DEFAULT NULL,\n `uupalpxwrxpnkwragpnyndyufxilftwn` int DEFAULT NULL,\n `myelzqpljodzfeaxnpgjoqdixpqhrnki` int DEFAULT NULL,\n `smgfmaeoowzwdzxqtlkyjswuwalpnhek` int DEFAULT NULL,\n `dmtfvdolrizwrkrleotiylnelpxetgki` int DEFAULT NULL,\n `ipahbwzibflpqrfplxwpwqizwvtxpmks` int DEFAULT NULL,\n `xampjkpvwsvbmfrulhwjkflxuqxzmzwi` int DEFAULT NULL,\n `yviebujskbwsmleuwzwsgsghdbkdiqen` int DEFAULT NULL,\n `avourrksvavqavthcqvxollzouhcoxtc` int DEFAULT NULL,\n `znybpebefbequvlgahicqzdcgcrypxoa` int DEFAULT NULL,\n `binvhbpzchmiqbuewfzipkdirqibvnqb` int DEFAULT NULL,\n `gstmtzavmlsbduggazuccpabcyewctbv` int DEFAULT NULL,\n `btnmsyxjjapmguexagaanipedudbjdvt` int DEFAULT NULL,\n `xxsyjcswmbajxnplqchcwdikglhjiyip` int DEFAULT NULL,\n `vkjdhrgfolrzhhzdekeyzxtblejzayrh` int DEFAULT NULL,\n `qsgcmcauoszwpkfzllepvnglkwojusmt` int DEFAULT NULL,\n `bqrlspmsohftamysaruzoijykknmycvg` int DEFAULT NULL,\n `aqieektprgdxwwmvbomnuigfzvhexaqd` int DEFAULT NULL,\n `pzfdgkhivylqkthnzlokgvimnvxoqnun` int DEFAULT NULL,\n `ouedlrlsvhqoagccuvlprszhvjfgzoyw` int DEFAULT NULL,\n `dlugrzcmgcizbnquqlobrixtxwexqovz` int DEFAULT NULL,\n `ufvhnwybremzpvfpapfxgwiyhdkpavsd` int DEFAULT NULL,\n `yptkdgrbofbuxieogyscamokykikfehv` int DEFAULT NULL,\n `lrbcqxyurrqnfhzsywwqkpurpqduzaht` int DEFAULT NULL,\n `kzdjzydzgtvttdhqeuaklraqiajvcpov` int DEFAULT NULL,\n `xpvremsjynsgcnqxatusnnwqhvvyuxzq` int DEFAULT NULL,\n `lgjndqfwwzhyvigfqmzoictdzikqlgjk` int DEFAULT NULL,\n `ltgblduuzavuyhsjrfmxajlevxhphjyi` int DEFAULT NULL,\n `zftkdhwbgokkckfsnzdsskfgletprlfx` int DEFAULT NULL,\n `fmrwrunankerjskicgxfvlqxuikdxexp` int DEFAULT NULL,\n `tabysmythvjmdfipkylsvexthqfpdbkc` int DEFAULT NULL,\n `blypdxedmpwkvnpbpdifgpsmzbwgusnw` int DEFAULT NULL,\n `dfrvnsiyeoltulredvunnakfvkquefpo` int DEFAULT NULL,\n `cqezcjfewpaxrmkhcfcfvwyrqijwxumm` int DEFAULT NULL,\n `dpndjgufxtvygxcozezrmmkhinllpthe` int DEFAULT NULL,\n `zvxltfngvqcmepjfqqrzzivyaevcqbmy` int DEFAULT NULL,\n `wwxoubaoyjhyxaooaxqafwzzcwsanljf` int DEFAULT NULL,\n `bbqrqxldusygfrtjvqokrqgmqgtegdlu` int DEFAULT NULL,\n `oskerkeskhtaijqvqyrvywubhfqglmmw` int DEFAULT NULL,\n `kfxvrjsrdwouqbtfsjibrpkhkviluyej` int DEFAULT NULL,\n `sxuqadayarovdhfljipcbqterusaqsxj` int DEFAULT NULL,\n `bwjlvjcbzqfmpxwgasyxszndaknolqho` int DEFAULT NULL,\n `yqpgeldvjvltyqvqknaumkzspxfmvura` int DEFAULT NULL,\n `dxkmicgedzsoijpmdjohtnrdqehcrcie` int DEFAULT NULL,\n `aoptrkwezkshatfftbyluzhvoismxymc` int DEFAULT NULL,\n `xdgyxskbhdobkxxyvpujbqxktgeqlpuv` int DEFAULT NULL,\n `rgpbdbqtrkyoisorkeiohwpcyclywudt` int DEFAULT NULL,\n `owkqlolaczntkgxfeqesofwirbqaktqo` int DEFAULT NULL,\n `vvusjfxafvyijaaohztkjezdvkoqahij` int DEFAULT NULL,\n `sjpzswtjxskylcracvdifteerdmwzrqp` int DEFAULT NULL,\n `tofevnijgiaxolnrzrbtepepdobsjsrl` int DEFAULT NULL,\n `sdexcndsgafpaglnnpfwjyenivmuesqw` int DEFAULT NULL,\n `rbmbqvtehiscfjfkenbvvudnecaezqwl` int DEFAULT NULL,\n `ehrijankxmmcswrdmktpyjjftppmrnqj` int DEFAULT NULL,\n `zxpkrblpxefyfwcgbqrjmjgkdhkkqeml` int DEFAULT NULL,\n `mxaqjggcncfxryclfzpkbcuqiejihdua` int DEFAULT NULL,\n `ihojohzmdjldpszlrjxiefdlfyrdvxqo` int DEFAULT NULL,\n `cvqyoqtappkgrxnhgfdmugtlnitbiaun` int DEFAULT NULL,\n `nfztlgjdaebjjgbftdcexeilecsohesh` int DEFAULT NULL,\n `trkbxtuwmkwpgzuxzdwxecnnqdmmaipm` int DEFAULT NULL,\n `miuudzqtcdbrhrrpyipoeuxwepehmsoh` int DEFAULT NULL,\n `bubsqweilzlwzufuoiywsnrgxphplfye` int DEFAULT NULL,\n `gpqcnvvmexhpyimvkvarsogyojzxlppg` int DEFAULT NULL,\n `mpmoegwxqecazzdfziibwfetdpdjxckn` int DEFAULT NULL,\n `pwrjnyccjkzwyaawcezitgiirytlvbhu` int DEFAULT NULL,\n `ovntmaapzbrrjsmztlsqetpnfkmfydmy` int DEFAULT NULL,\n `qstnmpgihktmqicsilcgecphwhtyalyd` int DEFAULT NULL,\n `ccuevewvhczdhfjsdooqgshgbxinlwcc` int DEFAULT NULL,\n `hsswwrmvimsqdfyxalewiurjgalurvih` int DEFAULT NULL,\n `zykjjhtyaxedwesahhmrubrqggjqjgti` int DEFAULT NULL,\n `xdszomsacwvskxuwlnqjkrmnoxgfdxkp` int DEFAULT NULL,\n `azaytzqylkjidxldklpkaytuzxmqmtwn` int DEFAULT NULL,\n `idvlkpqgmclwaudsanbtxseihsauxidx` int DEFAULT NULL,\n `ppcsizxvkrazafqopsmbaitjmtlflamn` int DEFAULT NULL,\n `slyvwqhupahwrcbpxuffugjqdvevnnhg` int DEFAULT NULL,\n `hwsyoejqlihiwxhsqkmryxhhqikutwzw` int DEFAULT NULL,\n `dfuntyvaunfbnudxajqgdvikdmwfhint` int DEFAULT NULL,\n `vhftxyqugqeuoduzfoarxblvaoowwbbw` int DEFAULT NULL,\n `dumtoesiyrahfrfashiqpwfxridiigwr` int DEFAULT NULL,\n `uqkrymwaibamverngozqcuixgpfemunl` int DEFAULT NULL,\n `xhkncjkzlzfrgzakioxomihkioucgvnw` int DEFAULT NULL,\n `gftxjabvrpdbcvbsvivttvwqffqxxhqz` int DEFAULT NULL,\n `eixxrpubmiumexeucovpnbkzhopbxeta` int DEFAULT NULL,\n `xisogmaeuiitdbnmernrummlujgidnbw` int DEFAULT NULL,\n `qcokagrnzhfxnegcbslsrncpeiyddxsb` int DEFAULT NULL,\n `iavsosfvswssqzefxmvcfcsjwaxfagqd` int DEFAULT NULL,\n `ibuwbpogxaxenkmhzetoefdkognnxqop` int DEFAULT NULL,\n `iutkvszaasucojdwkwcelarezwvusprr` int DEFAULT NULL,\n `kduijcptdjyigmwkwmojapjobtfwdkqn` int DEFAULT NULL,\n `tktahophyhlvbzdrmzctfsaqezapimbw` int DEFAULT NULL,\n `sewfhkkygidrxeqejymlyaqvjgmxyabc` int DEFAULT NULL,\n `fiaggqbxmmwtezcmhofixilxsodqhpqf` int DEFAULT NULL,\n `wtnogkhzymuswcgrhuysrbtwrsrzzwsp` int DEFAULT NULL,\n `xxqgmdcxoeqzexmryboxfhmmpzawuzln` int DEFAULT NULL,\n `mseqgtqyakfbqrbxbcdgmbgzldjznmdf` int DEFAULT NULL,\n `zhqfkctujprurnuajekkwbwvhkwavnyq` int DEFAULT NULL,\n `rdxafwkipmofxmdilscxlyngxutmtbty` int DEFAULT NULL,\n `nyrbccddvejukwpxtguqiusssiwqnolt` int DEFAULT NULL,\n PRIMARY KEY (`mgrhdcrfffjqcixbnceoherkswomkjdk`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"gibjkzyrpmoaypiniuiyywvlmaidwzxy\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["mgrhdcrfffjqcixbnceoherkswomkjdk"],"columns":[{"name":"mgrhdcrfffjqcixbnceoherkswomkjdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"prgzlvmuntyxsxwytdyhyuvvewpwmatn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sgvsvarckajuulsjrlnvuofreqxlqsue","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uupalpxwrxpnkwragpnyndyufxilftwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"myelzqpljodzfeaxnpgjoqdixpqhrnki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smgfmaeoowzwdzxqtlkyjswuwalpnhek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dmtfvdolrizwrkrleotiylnelpxetgki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ipahbwzibflpqrfplxwpwqizwvtxpmks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xampjkpvwsvbmfrulhwjkflxuqxzmzwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yviebujskbwsmleuwzwsgsghdbkdiqen","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avourrksvavqavthcqvxollzouhcoxtc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znybpebefbequvlgahicqzdcgcrypxoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"binvhbpzchmiqbuewfzipkdirqibvnqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gstmtzavmlsbduggazuccpabcyewctbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"btnmsyxjjapmguexagaanipedudbjdvt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxsyjcswmbajxnplqchcwdikglhjiyip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkjdhrgfolrzhhzdekeyzxtblejzayrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qsgcmcauoszwpkfzllepvnglkwojusmt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqrlspmsohftamysaruzoijykknmycvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqieektprgdxwwmvbomnuigfzvhexaqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pzfdgkhivylqkthnzlokgvimnvxoqnun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ouedlrlsvhqoagccuvlprszhvjfgzoyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dlugrzcmgcizbnquqlobrixtxwexqovz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ufvhnwybremzpvfpapfxgwiyhdkpavsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yptkdgrbofbuxieogyscamokykikfehv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lrbcqxyurrqnfhzsywwqkpurpqduzaht","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzdjzydzgtvttdhqeuaklraqiajvcpov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xpvremsjynsgcnqxatusnnwqhvvyuxzq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgjndqfwwzhyvigfqmzoictdzikqlgjk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ltgblduuzavuyhsjrfmxajlevxhphjyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zftkdhwbgokkckfsnzdsskfgletprlfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmrwrunankerjskicgxfvlqxuikdxexp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tabysmythvjmdfipkylsvexthqfpdbkc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blypdxedmpwkvnpbpdifgpsmzbwgusnw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dfrvnsiyeoltulredvunnakfvkquefpo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqezcjfewpaxrmkhcfcfvwyrqijwxumm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpndjgufxtvygxcozezrmmkhinllpthe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvxltfngvqcmepjfqqrzzivyaevcqbmy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwxoubaoyjhyxaooaxqafwzzcwsanljf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbqrqxldusygfrtjvqokrqgmqgtegdlu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oskerkeskhtaijqvqyrvywubhfqglmmw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfxvrjsrdwouqbtfsjibrpkhkviluyej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sxuqadayarovdhfljipcbqterusaqsxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bwjlvjcbzqfmpxwgasyxszndaknolqho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqpgeldvjvltyqvqknaumkzspxfmvura","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxkmicgedzsoijpmdjohtnrdqehcrcie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aoptrkwezkshatfftbyluzhvoismxymc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdgyxskbhdobkxxyvpujbqxktgeqlpuv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgpbdbqtrkyoisorkeiohwpcyclywudt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owkqlolaczntkgxfeqesofwirbqaktqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vvusjfxafvyijaaohztkjezdvkoqahij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjpzswtjxskylcracvdifteerdmwzrqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tofevnijgiaxolnrzrbtepepdobsjsrl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdexcndsgafpaglnnpfwjyenivmuesqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbmbqvtehiscfjfkenbvvudnecaezqwl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehrijankxmmcswrdmktpyjjftppmrnqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxpkrblpxefyfwcgbqrjmjgkdhkkqeml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mxaqjggcncfxryclfzpkbcuqiejihdua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ihojohzmdjldpszlrjxiefdlfyrdvxqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvqyoqtappkgrxnhgfdmugtlnitbiaun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfztlgjdaebjjgbftdcexeilecsohesh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"trkbxtuwmkwpgzuxzdwxecnnqdmmaipm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"miuudzqtcdbrhrrpyipoeuxwepehmsoh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bubsqweilzlwzufuoiywsnrgxphplfye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gpqcnvvmexhpyimvkvarsogyojzxlppg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpmoegwxqecazzdfziibwfetdpdjxckn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwrjnyccjkzwyaawcezitgiirytlvbhu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovntmaapzbrrjsmztlsqetpnfkmfydmy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qstnmpgihktmqicsilcgecphwhtyalyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ccuevewvhczdhfjsdooqgshgbxinlwcc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hsswwrmvimsqdfyxalewiurjgalurvih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zykjjhtyaxedwesahhmrubrqggjqjgti","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdszomsacwvskxuwlnqjkrmnoxgfdxkp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"azaytzqylkjidxldklpkaytuzxmqmtwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idvlkpqgmclwaudsanbtxseihsauxidx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ppcsizxvkrazafqopsmbaitjmtlflamn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"slyvwqhupahwrcbpxuffugjqdvevnnhg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwsyoejqlihiwxhsqkmryxhhqikutwzw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dfuntyvaunfbnudxajqgdvikdmwfhint","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhftxyqugqeuoduzfoarxblvaoowwbbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dumtoesiyrahfrfashiqpwfxridiigwr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqkrymwaibamverngozqcuixgpfemunl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xhkncjkzlzfrgzakioxomihkioucgvnw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gftxjabvrpdbcvbsvivttvwqffqxxhqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eixxrpubmiumexeucovpnbkzhopbxeta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xisogmaeuiitdbnmernrummlujgidnbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qcokagrnzhfxnegcbslsrncpeiyddxsb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iavsosfvswssqzefxmvcfcsjwaxfagqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibuwbpogxaxenkmhzetoefdkognnxqop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iutkvszaasucojdwkwcelarezwvusprr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kduijcptdjyigmwkwmojapjobtfwdkqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tktahophyhlvbzdrmzctfsaqezapimbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sewfhkkygidrxeqejymlyaqvjgmxyabc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fiaggqbxmmwtezcmhofixilxsodqhpqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wtnogkhzymuswcgrhuysrbtwrsrzzwsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxqgmdcxoeqzexmryboxfhmmpzawuzln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mseqgtqyakfbqrbxbcdgmbgzldjznmdf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhqfkctujprurnuajekkwbwvhkwavnyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdxafwkipmofxmdilscxlyngxutmtbty","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nyrbccddvejukwpxtguqiusssiwqnolt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668121,"databaseName":"models_schema","ddl":"CREATE TABLE `gjwbaxlnvuczlhgbaytrbajtlzxhwmbn` (\n `njtcrfwvlaagzfkltfciztovpaxagnmd` int NOT NULL,\n `qppcgzbpocoifqzqjdojhueuutozockf` int DEFAULT NULL,\n `nygtuhahmybntnifvhizjqbitvkvcquz` int DEFAULT NULL,\n `zbtsbdxebwiqmigfrbiqsnnnwtkmcuaz` int DEFAULT NULL,\n `afrzgftfwqhprkvycpgtsysgkxokhjoz` int DEFAULT NULL,\n `phxhdusrjzbcdptissluagixglmedlmc` int DEFAULT NULL,\n `axpojwlqfqisiripnkjobectmhfeqybj` int DEFAULT NULL,\n `knmgllerhkcyhtulvxfafbwwyiitfnyf` int DEFAULT NULL,\n `rpmrdllqbsqqjjttjdkqsrkwmfxclydp` int DEFAULT NULL,\n `ybbqnjvgjdlbjksefadymerajydcwnje` int DEFAULT NULL,\n `yufzhwkzzpfnrdserxxwaafcxwmcnfsx` int DEFAULT NULL,\n `kkwuyfcderitldsxntuehzghwomdbsrc` int DEFAULT NULL,\n `cowocujypqdbweanwmmptuynobjsmweb` int DEFAULT NULL,\n `sgcajjnrajbftczponytgtardmirhzll` int DEFAULT NULL,\n `wrrdkfukphgyxswzektnkejzjhqmrpmy` int DEFAULT NULL,\n `seqwxtaohzigfsqdtcsecyobjvbnyahk` int DEFAULT NULL,\n `vlyqkpwlketwjrdpwdoxaxiqybiuekfd` int DEFAULT NULL,\n `idetokxwmzxyxjrmmnfkkvhadtqiiuqq` int DEFAULT NULL,\n `hdmqnaawprhalazuyahcuhvkhflugovp` int DEFAULT NULL,\n `dehatlfhrhtortidnmfxlpbifbtflwam` int DEFAULT NULL,\n `hczdfcaqkgldjrgjzahxlyifxsckiopq` int DEFAULT NULL,\n `qcdbuemvctivaagcxljkuynqrmigiqlw` int DEFAULT NULL,\n `qdprkahbgtfwcwqwkkmjhyjjowdieknu` int DEFAULT NULL,\n `nuwxtvkoelcfsrywpnghtqgkuydeksqd` int DEFAULT NULL,\n `mjbguzbjpflnuelkjgxrshgukxtrnlym` int DEFAULT NULL,\n `oqaowljgocxugiilbxhszquhtlpntsyu` int DEFAULT NULL,\n `axlgdmfwdfyyyzrwxajxzljvdjenxbzi` int DEFAULT NULL,\n `ramymhrhwynngcpdzppoknhvemremxye` int DEFAULT NULL,\n `kgmfhzzwhydsswvlmyoodrulspxolbgw` int DEFAULT NULL,\n `wrnloiqljnzmzpzmppzpkoeuailcntvq` int DEFAULT NULL,\n `prsvqsmocbanaayxdvlyosbwvksghwzq` int DEFAULT NULL,\n `ejbyjmpmewxezdgefaznlyuzwbtlbjeo` int DEFAULT NULL,\n `hinovgyatrvruhhnngcxlotifqmadoan` int DEFAULT NULL,\n `vpexunwyocesubjjflexpmghfqisgmyr` int DEFAULT NULL,\n `qtxdyowacqdntymvenczlxptfggpbwkl` int DEFAULT NULL,\n `vpyepocyinigckfwfdchakjezaxmuakl` int DEFAULT NULL,\n `ehbhuciuqosfbflkmybiojnidbgzkibt` int DEFAULT NULL,\n `twqvhfiggmwluhqfoapcubnkgwcdqatj` int DEFAULT NULL,\n `ncdnobbptghvtjvqrqboskevjevywdwm` int DEFAULT NULL,\n `ynfsjrphcxwggwngdhwfwtfypfwrfsnh` int DEFAULT NULL,\n `soaehwslcdxzbsjvrkbgsoscfjxytnrh` int DEFAULT NULL,\n `kkaqetjujzdlqnaisadwwwdhrecsgvlo` int DEFAULT NULL,\n `kisuldyuiokwgsvyucichffehuqhfehi` int DEFAULT NULL,\n `coninxmywoumjzcjgrwcqtmvumdxgcdq` int DEFAULT NULL,\n `xpyygzfznoiujuocklslfffrmdypjthh` int DEFAULT NULL,\n `vcvhqhofhnprljfyecnhbgulapquyivh` int DEFAULT NULL,\n `qlwmhgtbhasckldyplycqvwwsrjgzkgt` int DEFAULT NULL,\n `wbuwvdgzvdinfokqkiplydnbrohrqooe` int DEFAULT NULL,\n `ocuygebbounedubprmjtnecqvbsptnzi` int DEFAULT NULL,\n `phjgefnyrmunozglfivrhltytwtpebgx` int DEFAULT NULL,\n `vntzowkvrfbgidoczzjtdwvefmpgnorj` int DEFAULT NULL,\n `eepsrkmcbpaltkhqlxgsllsvyubonbkj` int DEFAULT NULL,\n `tjxxrooqnewxducsajhvjdxjpsbguofb` int DEFAULT NULL,\n `dsdbdynofqroamxadhcxgztaungplyxp` int DEFAULT NULL,\n `xukkiqlxhxthgrxhnhckuvlxjwiklhcq` int DEFAULT NULL,\n `otwxyhtttbfswaomtomtttqhouajnfos` int DEFAULT NULL,\n `okbtngugtdnubhnvkbwvcewzwqysehqg` int DEFAULT NULL,\n `jlhzdaktucmhllckswkcxojhlezmodbj` int DEFAULT NULL,\n `kruovjcflshswtcqcwhtqngpdzllhdei` int DEFAULT NULL,\n `fozymuicmhvqojbindpulfdfdizytiig` int DEFAULT NULL,\n `awgsbzevlchcczmvjeywpmmfahbbxzjl` int DEFAULT NULL,\n `widutzflvafgaeevjlpqheeyficrzdyo` int DEFAULT NULL,\n `oufepvqpguhmwgzxazuylzicrugtccxl` int DEFAULT NULL,\n `lgnjbcthcmhchyxlbitzcszikibqmxlo` int DEFAULT NULL,\n `sitraomntrkkfnxyfydyauxmdtbuljvc` int DEFAULT NULL,\n `vkcemnxivrgheihvwmpuoknqmwwfhyip` int DEFAULT NULL,\n `poqjdbwsgmzxyhchpizxoebcebrunnoq` int DEFAULT NULL,\n `iwwhpztkfjcldzdgfwmxzbdmlrhothia` int DEFAULT NULL,\n `kynwnuhcgbwrkngnmqkdrsiqkxmkpjhb` int DEFAULT NULL,\n `dyjbbkcozzkesyiaojrslmrnixrxoxyr` int DEFAULT NULL,\n `zicdnzmoxqkdpgrdnesqrjqygymxapbq` int DEFAULT NULL,\n `qoffkovgzdrrfeggmbibctqsrcysswbq` int DEFAULT NULL,\n `rtptwhqarfieedoufcvelebkyydlmroo` int DEFAULT NULL,\n `izaotisheoykjksciupuaktcmuonidgd` int DEFAULT NULL,\n `isksyvrswpqdbtbaoqrnylvztjuxlmxo` int DEFAULT NULL,\n `dddfgzzjxdewaqpymtkenahkgmcqbpvy` int DEFAULT NULL,\n `klczjwqkqpnrttusizrmldlqlcrwjwhr` int DEFAULT NULL,\n `hlvhofoifscrgdnolputhegqapsanrox` int DEFAULT NULL,\n `djfsnnsbpcgupchyebdvdspahpvryjfj` int DEFAULT NULL,\n `qxccxotnharczmqrtyvnirpteqihpdzn` int DEFAULT NULL,\n `iwtksyeyrmpjuppilhtbuhnrfnbrcfjh` int DEFAULT NULL,\n `oqsetotiqojrcrdylqvzijannzpsdwwh` int DEFAULT NULL,\n `aioxqhyqgokcvgpksxzpumdkshslqfdr` int DEFAULT NULL,\n `wnhwxnxgecafwjymfgppcapvgdktveez` int DEFAULT NULL,\n `ywtyrlexviqzhbqgyglzpifnavmussox` int DEFAULT NULL,\n `pkpgmwxekvborlrlmbwyasdxgphpbypf` int DEFAULT NULL,\n `efjbxvfcqsrjauerrnjztagvtptzjges` int DEFAULT NULL,\n `leqnwcpaaqcybgedgzdijtjojufxtmlh` int DEFAULT NULL,\n `utfksucmprqfigvftyhcpxevlnxgjqtj` int DEFAULT NULL,\n `enwqrjbaqunmbyzgexjkftiaowsjoiam` int DEFAULT NULL,\n `ddzeddpvfxbpucyorhszjgmhvtsdksnf` int DEFAULT NULL,\n `uefmtelxcdazaqgaxbrmruebqzieclda` int DEFAULT NULL,\n `zyomnvuiefvzwllinwigdyvjraparays` int DEFAULT NULL,\n `wbtujwkzhesdgmgpmeokntqgvwbbnkop` int DEFAULT NULL,\n `yujdklhhqgmfogihezqgxzubfbkotmpl` int DEFAULT NULL,\n `nyufopgptsdilmkspkmqatsbybdzujsr` int DEFAULT NULL,\n `xsrnylpedkgzjltpmscriqdfjsprkvun` int DEFAULT NULL,\n `guyescfgsawbgsodtihcrdavxekufgmb` int DEFAULT NULL,\n `mkbjaakeyegpbwiavjtcegsfaaebhlgl` int DEFAULT NULL,\n `gfcgzhssqspinypaiyfdopdpbuezxacl` int DEFAULT NULL,\n PRIMARY KEY (`njtcrfwvlaagzfkltfciztovpaxagnmd`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"gjwbaxlnvuczlhgbaytrbajtlzxhwmbn\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["njtcrfwvlaagzfkltfciztovpaxagnmd"],"columns":[{"name":"njtcrfwvlaagzfkltfciztovpaxagnmd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"qppcgzbpocoifqzqjdojhueuutozockf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nygtuhahmybntnifvhizjqbitvkvcquz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbtsbdxebwiqmigfrbiqsnnnwtkmcuaz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afrzgftfwqhprkvycpgtsysgkxokhjoz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phxhdusrjzbcdptissluagixglmedlmc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axpojwlqfqisiripnkjobectmhfeqybj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knmgllerhkcyhtulvxfafbwwyiitfnyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpmrdllqbsqqjjttjdkqsrkwmfxclydp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ybbqnjvgjdlbjksefadymerajydcwnje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yufzhwkzzpfnrdserxxwaafcxwmcnfsx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kkwuyfcderitldsxntuehzghwomdbsrc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cowocujypqdbweanwmmptuynobjsmweb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sgcajjnrajbftczponytgtardmirhzll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wrrdkfukphgyxswzektnkejzjhqmrpmy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"seqwxtaohzigfsqdtcsecyobjvbnyahk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vlyqkpwlketwjrdpwdoxaxiqybiuekfd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idetokxwmzxyxjrmmnfkkvhadtqiiuqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdmqnaawprhalazuyahcuhvkhflugovp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dehatlfhrhtortidnmfxlpbifbtflwam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hczdfcaqkgldjrgjzahxlyifxsckiopq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qcdbuemvctivaagcxljkuynqrmigiqlw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdprkahbgtfwcwqwkkmjhyjjowdieknu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nuwxtvkoelcfsrywpnghtqgkuydeksqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjbguzbjpflnuelkjgxrshgukxtrnlym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqaowljgocxugiilbxhszquhtlpntsyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axlgdmfwdfyyyzrwxajxzljvdjenxbzi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ramymhrhwynngcpdzppoknhvemremxye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kgmfhzzwhydsswvlmyoodrulspxolbgw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wrnloiqljnzmzpzmppzpkoeuailcntvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prsvqsmocbanaayxdvlyosbwvksghwzq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejbyjmpmewxezdgefaznlyuzwbtlbjeo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hinovgyatrvruhhnngcxlotifqmadoan","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpexunwyocesubjjflexpmghfqisgmyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtxdyowacqdntymvenczlxptfggpbwkl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpyepocyinigckfwfdchakjezaxmuakl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehbhuciuqosfbflkmybiojnidbgzkibt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twqvhfiggmwluhqfoapcubnkgwcdqatj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ncdnobbptghvtjvqrqboskevjevywdwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynfsjrphcxwggwngdhwfwtfypfwrfsnh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"soaehwslcdxzbsjvrkbgsoscfjxytnrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kkaqetjujzdlqnaisadwwwdhrecsgvlo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kisuldyuiokwgsvyucichffehuqhfehi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"coninxmywoumjzcjgrwcqtmvumdxgcdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xpyygzfznoiujuocklslfffrmdypjthh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vcvhqhofhnprljfyecnhbgulapquyivh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qlwmhgtbhasckldyplycqvwwsrjgzkgt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbuwvdgzvdinfokqkiplydnbrohrqooe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocuygebbounedubprmjtnecqvbsptnzi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phjgefnyrmunozglfivrhltytwtpebgx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vntzowkvrfbgidoczzjtdwvefmpgnorj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eepsrkmcbpaltkhqlxgsllsvyubonbkj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjxxrooqnewxducsajhvjdxjpsbguofb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dsdbdynofqroamxadhcxgztaungplyxp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xukkiqlxhxthgrxhnhckuvlxjwiklhcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otwxyhtttbfswaomtomtttqhouajnfos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"okbtngugtdnubhnvkbwvcewzwqysehqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlhzdaktucmhllckswkcxojhlezmodbj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kruovjcflshswtcqcwhtqngpdzllhdei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fozymuicmhvqojbindpulfdfdizytiig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awgsbzevlchcczmvjeywpmmfahbbxzjl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"widutzflvafgaeevjlpqheeyficrzdyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oufepvqpguhmwgzxazuylzicrugtccxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgnjbcthcmhchyxlbitzcszikibqmxlo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sitraomntrkkfnxyfydyauxmdtbuljvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkcemnxivrgheihvwmpuoknqmwwfhyip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"poqjdbwsgmzxyhchpizxoebcebrunnoq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwwhpztkfjcldzdgfwmxzbdmlrhothia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kynwnuhcgbwrkngnmqkdrsiqkxmkpjhb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dyjbbkcozzkesyiaojrslmrnixrxoxyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zicdnzmoxqkdpgrdnesqrjqygymxapbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qoffkovgzdrrfeggmbibctqsrcysswbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rtptwhqarfieedoufcvelebkyydlmroo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"izaotisheoykjksciupuaktcmuonidgd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"isksyvrswpqdbtbaoqrnylvztjuxlmxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dddfgzzjxdewaqpymtkenahkgmcqbpvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"klczjwqkqpnrttusizrmldlqlcrwjwhr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlvhofoifscrgdnolputhegqapsanrox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"djfsnnsbpcgupchyebdvdspahpvryjfj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxccxotnharczmqrtyvnirpteqihpdzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwtksyeyrmpjuppilhtbuhnrfnbrcfjh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqsetotiqojrcrdylqvzijannzpsdwwh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aioxqhyqgokcvgpksxzpumdkshslqfdr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnhwxnxgecafwjymfgppcapvgdktveez","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywtyrlexviqzhbqgyglzpifnavmussox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkpgmwxekvborlrlmbwyasdxgphpbypf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"efjbxvfcqsrjauerrnjztagvtptzjges","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"leqnwcpaaqcybgedgzdijtjojufxtmlh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utfksucmprqfigvftyhcpxevlnxgjqtj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"enwqrjbaqunmbyzgexjkftiaowsjoiam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ddzeddpvfxbpucyorhszjgmhvtsdksnf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uefmtelxcdazaqgaxbrmruebqzieclda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zyomnvuiefvzwllinwigdyvjraparays","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbtujwkzhesdgmgpmeokntqgvwbbnkop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yujdklhhqgmfogihezqgxzubfbkotmpl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nyufopgptsdilmkspkmqatsbybdzujsr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsrnylpedkgzjltpmscriqdfjsprkvun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"guyescfgsawbgsodtihcrdavxekufgmb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkbjaakeyegpbwiavjtcegsfaaebhlgl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfcgzhssqspinypaiyfdopdpbuezxacl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668153,"databaseName":"models_schema","ddl":"CREATE TABLE `gmhufugcytipzofjpeipcjeyfkrzjgne` (\n `eihwaovmtdywputrugexisaqirredwsv` int NOT NULL,\n `nngshhpdjzxsipxecbnegechmdaurlkj` int DEFAULT NULL,\n `sqqpbuiobtmplslbzdjswgrhrlsqvaro` int DEFAULT NULL,\n `brlhkedzwepngpbaxocqekomhkdbuevf` int DEFAULT NULL,\n `xcdavngnvatguuepjanntdaxpiadvrou` int DEFAULT NULL,\n `igffclialrtdscmebrdwpayjaarxxezs` int DEFAULT NULL,\n `mlysiirnsndbeiyircqlypmxodznzogl` int DEFAULT NULL,\n `gsqnslzifekhwkrjhgtmnbcfkvcgpryb` int DEFAULT NULL,\n `shvnsanhvxmkpruqgxzvyijwmctqhrsj` int DEFAULT NULL,\n `inpngwizvarkowkqfvfiifrlcnluxjor` int DEFAULT NULL,\n `mnxisxkhlkkvrmhaklhxvgfmenxrpwtk` int DEFAULT NULL,\n `xpmiivvugxymuoulasgyhoamqlxujzye` int DEFAULT NULL,\n `kvvudxxscfmpioqiqujzzzrkkdgqoouy` int DEFAULT NULL,\n `yrpwyrtluzcpmsdqjnuxrzgegqroxlhb` int DEFAULT NULL,\n `xuibnujilwllrfgosyzysdmvdmrmlski` int DEFAULT NULL,\n `nzblzloqjjynbyxpaqcppntgevryxqxa` int DEFAULT NULL,\n `kntdhguhizltymxxfbilpowkmfenexbn` int DEFAULT NULL,\n `ucrfbogfjgxsonrssxxxhcdcpyagcrhn` int DEFAULT NULL,\n `onnckksqvmkxqtyurcfosrtjzwuamrqr` int DEFAULT NULL,\n `byxynzvbvgjizwitgwoafkihvdhpzjfg` int DEFAULT NULL,\n `cbetlchcqmysgttzcdevuxetmhxgxeld` int DEFAULT NULL,\n `mglnhdbrqbdpnlihqobygvlocyfedfvv` int DEFAULT NULL,\n `cnvtxmdscvhlrrlyeypaikdsnabmfird` int DEFAULT NULL,\n `ifdwxiwtjvvscwcfrxyziehcizdlqbuw` int DEFAULT NULL,\n `iuknwpnrdbfjjssfarryujgivpzvbtjn` int DEFAULT NULL,\n `sbnshuvgvtxpdoncegjokipxbzzmwrpt` int DEFAULT NULL,\n `qizqhosbuydybdvcaxckfztcoupysyko` int DEFAULT NULL,\n `clghfsoumosvildbmqmspdgsuxfnyhxy` int DEFAULT NULL,\n `bjjnugirmeteocvrgsrcpkefvjitlcpb` int DEFAULT NULL,\n `ugtvuawtjygmbmjcisykocmqiksgcqxw` int DEFAULT NULL,\n `enbgrwyasnyadutltqafayuwmyoammio` int DEFAULT NULL,\n `vyrrcvzlncodsjcugoctvcagsvsuxhup` int DEFAULT NULL,\n `nvusulhgyvjlarohvzrvtlcnvxhxuvmr` int DEFAULT NULL,\n `zfavqefjdjbepgzxptdspmcgzononwjf` int DEFAULT NULL,\n `rtytmirybqmemddhzhiauusqixuktiup` int DEFAULT NULL,\n `wiueqctoyxymyzohvzgvreuzrzxxgpty` int DEFAULT NULL,\n `fanuayruluihrzxjmwzxhafnbswjfexe` int DEFAULT NULL,\n `mtgzgspkbalwkufpjlaixzybauuunfyb` int DEFAULT NULL,\n `cvlslsxzulwerehttqzunpmfsceclwse` int DEFAULT NULL,\n `rbortylgqpvdayyjmeynypzowqmcmwat` int DEFAULT NULL,\n `datpknibodzqputezoejhufnansulmow` int DEFAULT NULL,\n `tmyabnobwxpelqusvtpqnvgiaupskutf` int DEFAULT NULL,\n `mzxgoehxuzsvyhiobxzpmlzythsoqxqd` int DEFAULT NULL,\n `bwinfgskaiqwvzmlvfnifnstcfbegkoq` int DEFAULT NULL,\n `zyxzgntehtmcrvddcfloapwtkldaczni` int DEFAULT NULL,\n `whiutmhlunibhrlfyjjilwhsgnaqjnfb` int DEFAULT NULL,\n `bgmzozipsecvsdihqfojuwjurnuufqgt` int DEFAULT NULL,\n `djesoqzxupkfgmqnefyhnxoutssjvtxw` int DEFAULT NULL,\n `yohxxamijynigldctdkjjleiojmzaorc` int DEFAULT NULL,\n `qnzrpybzowdxxdrafyxsqnbvxispffrr` int DEFAULT NULL,\n `ziralkatuqbrtnaxrahsmychlautymtd` int DEFAULT NULL,\n `kmbpumjifejjgjgviiklqlmlsufiqual` int DEFAULT NULL,\n `aprxzqaixjevbtwhksrilozlzbboiiae` int DEFAULT NULL,\n `ytahbarnvicxpbtnvpdmwtfoyjytgfqw` int DEFAULT NULL,\n `aavqbxunxkvwcgrixjfbwdzbciytsbwf` int DEFAULT NULL,\n `sdsytnacmontloawffonyzznurhuwlnd` int DEFAULT NULL,\n `suzzoqlihgbabktvmnrvgmplazujneia` int DEFAULT NULL,\n `nbjjoiblsehbhmlqypkbmgqilsnwohec` int DEFAULT NULL,\n `okuzjglpeoruzijyumckrbchghpkzohd` int DEFAULT NULL,\n `txtqstmgrsfgynyguunpfhjcrdrrlpvo` int DEFAULT NULL,\n `pztdvumyivdjnarpvpyinsmmkossbyui` int DEFAULT NULL,\n `oqnzuwvvfiilpilaqhjrzhubmympcqhe` int DEFAULT NULL,\n `xhjdjitlxyegrrlyxjtyxqmjyfrwmzag` int DEFAULT NULL,\n `gghdbrgzkrswqlzrgdpzghqaybqwzxfp` int DEFAULT NULL,\n `iozbimiaurhnhcplodlwxxjvwaokxlze` int DEFAULT NULL,\n `xosxazzjmklqftquwchgwqcylmcrbgex` int DEFAULT NULL,\n `cxxsviyfchbilzkhqbdsvqusxeoqnudm` int DEFAULT NULL,\n `bdagbyzxrwsoyfzxhzekuczqbdmeaslf` int DEFAULT NULL,\n `zbhpkopdqeaqerolpkxvbijulcetebsq` int DEFAULT NULL,\n `ognmtiefduvwehrxhccdyoozvavndnnx` int DEFAULT NULL,\n `npubuiyhantcujoaykrbrbfnizysnsit` int DEFAULT NULL,\n `xrbjqctmapzzicpehnjmbdfinhokzuiw` int DEFAULT NULL,\n `ttirnnameyqqorzxbjqvuaeinbnzepvd` int DEFAULT NULL,\n `eyanngwzevxdqsuurmvejpxclbluqfdn` int DEFAULT NULL,\n `kvfhocwyfmzpflbtboozxuzklemencuy` int DEFAULT NULL,\n `vpwyyxtdbhyqxziwixzdiggjxlytaykt` int DEFAULT NULL,\n `uhlozwdslziicsgzfxrlducesmbsigvo` int DEFAULT NULL,\n `desuuorprdoyqkhbrbaehpwsvmzlhpia` int DEFAULT NULL,\n `nxwkgpyivedebfdqnaxywuhpwmelcfly` int DEFAULT NULL,\n `upyimkbwwhtnpfhktnnnmtupxxwxlnam` int DEFAULT NULL,\n `kzeguyrsghdgirjjokemwidwtwpomvba` int DEFAULT NULL,\n `cenjjdjaqmzyydomnysyxzpvkgvqlsie` int DEFAULT NULL,\n `obqbgfvymlkxbkwxtpqoshneeymvwyad` int DEFAULT NULL,\n `raglcmqiarlxfsxzzwuunwftejefvaxn` int DEFAULT NULL,\n `aovmzwnstfiybtcbzldqggazwlckrtzu` int DEFAULT NULL,\n `qkmroupszacuzcptxfucdrzlramplklz` int DEFAULT NULL,\n `yjtloiogwssiqbvkiljkgdlqmsbtqefw` int DEFAULT NULL,\n `sykfukczbwdkdsvdiwqqddowbbdclneo` int DEFAULT NULL,\n `mokwzrpslhnynhqizrhplslqisxqlsbz` int DEFAULT NULL,\n `oqlaopopollljtcfkvxfwwmtnkyiuchw` int DEFAULT NULL,\n `zzegfhyqumcbtinkfpbqkvkmnrudlcrh` int DEFAULT NULL,\n `txdzcazztlqyexngiwybgvhvddsdjtdx` int DEFAULT NULL,\n `psmaakeymyycjzcxkuffoillepspxzyt` int DEFAULT NULL,\n `szdvyoiwffesswqwiaxmknpwuhgtqfuc` int DEFAULT NULL,\n `dhsvuisrwshmccyokcbhvgejzebvxhuu` int DEFAULT NULL,\n `nfogiiqilmxhbapscdilpwldgyvxnhid` int DEFAULT NULL,\n `tqpagvypcdymsqikzpjhccndfgdfbaqh` int DEFAULT NULL,\n `cctesgplevazqszlgjwrdfwwtyqxmpgu` int DEFAULT NULL,\n `osknkiqnfpseuuqfkbgyfjiavrgzoexx` int DEFAULT NULL,\n `siemickgegyuqpatfevsoydspatbstfo` int DEFAULT NULL,\n PRIMARY KEY (`eihwaovmtdywputrugexisaqirredwsv`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"gmhufugcytipzofjpeipcjeyfkrzjgne\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["eihwaovmtdywputrugexisaqirredwsv"],"columns":[{"name":"eihwaovmtdywputrugexisaqirredwsv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"nngshhpdjzxsipxecbnegechmdaurlkj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sqqpbuiobtmplslbzdjswgrhrlsqvaro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"brlhkedzwepngpbaxocqekomhkdbuevf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xcdavngnvatguuepjanntdaxpiadvrou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igffclialrtdscmebrdwpayjaarxxezs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mlysiirnsndbeiyircqlypmxodznzogl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gsqnslzifekhwkrjhgtmnbcfkvcgpryb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shvnsanhvxmkpruqgxzvyijwmctqhrsj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"inpngwizvarkowkqfvfiifrlcnluxjor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnxisxkhlkkvrmhaklhxvgfmenxrpwtk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xpmiivvugxymuoulasgyhoamqlxujzye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvvudxxscfmpioqiqujzzzrkkdgqoouy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yrpwyrtluzcpmsdqjnuxrzgegqroxlhb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xuibnujilwllrfgosyzysdmvdmrmlski","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzblzloqjjynbyxpaqcppntgevryxqxa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kntdhguhizltymxxfbilpowkmfenexbn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ucrfbogfjgxsonrssxxxhcdcpyagcrhn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"onnckksqvmkxqtyurcfosrtjzwuamrqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"byxynzvbvgjizwitgwoafkihvdhpzjfg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbetlchcqmysgttzcdevuxetmhxgxeld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mglnhdbrqbdpnlihqobygvlocyfedfvv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnvtxmdscvhlrrlyeypaikdsnabmfird","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ifdwxiwtjvvscwcfrxyziehcizdlqbuw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iuknwpnrdbfjjssfarryujgivpzvbtjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbnshuvgvtxpdoncegjokipxbzzmwrpt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qizqhosbuydybdvcaxckfztcoupysyko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"clghfsoumosvildbmqmspdgsuxfnyhxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjjnugirmeteocvrgsrcpkefvjitlcpb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugtvuawtjygmbmjcisykocmqiksgcqxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"enbgrwyasnyadutltqafayuwmyoammio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vyrrcvzlncodsjcugoctvcagsvsuxhup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvusulhgyvjlarohvzrvtlcnvxhxuvmr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zfavqefjdjbepgzxptdspmcgzononwjf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rtytmirybqmemddhzhiauusqixuktiup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wiueqctoyxymyzohvzgvreuzrzxxgpty","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fanuayruluihrzxjmwzxhafnbswjfexe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtgzgspkbalwkufpjlaixzybauuunfyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvlslsxzulwerehttqzunpmfsceclwse","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbortylgqpvdayyjmeynypzowqmcmwat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"datpknibodzqputezoejhufnansulmow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmyabnobwxpelqusvtpqnvgiaupskutf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzxgoehxuzsvyhiobxzpmlzythsoqxqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bwinfgskaiqwvzmlvfnifnstcfbegkoq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zyxzgntehtmcrvddcfloapwtkldaczni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"whiutmhlunibhrlfyjjilwhsgnaqjnfb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bgmzozipsecvsdihqfojuwjurnuufqgt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"djesoqzxupkfgmqnefyhnxoutssjvtxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yohxxamijynigldctdkjjleiojmzaorc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qnzrpybzowdxxdrafyxsqnbvxispffrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ziralkatuqbrtnaxrahsmychlautymtd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kmbpumjifejjgjgviiklqlmlsufiqual","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aprxzqaixjevbtwhksrilozlzbboiiae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytahbarnvicxpbtnvpdmwtfoyjytgfqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aavqbxunxkvwcgrixjfbwdzbciytsbwf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdsytnacmontloawffonyzznurhuwlnd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"suzzoqlihgbabktvmnrvgmplazujneia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbjjoiblsehbhmlqypkbmgqilsnwohec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"okuzjglpeoruzijyumckrbchghpkzohd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txtqstmgrsfgynyguunpfhjcrdrrlpvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pztdvumyivdjnarpvpyinsmmkossbyui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqnzuwvvfiilpilaqhjrzhubmympcqhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xhjdjitlxyegrrlyxjtyxqmjyfrwmzag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gghdbrgzkrswqlzrgdpzghqaybqwzxfp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iozbimiaurhnhcplodlwxxjvwaokxlze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xosxazzjmklqftquwchgwqcylmcrbgex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cxxsviyfchbilzkhqbdsvqusxeoqnudm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bdagbyzxrwsoyfzxhzekuczqbdmeaslf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbhpkopdqeaqerolpkxvbijulcetebsq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ognmtiefduvwehrxhccdyoozvavndnnx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"npubuiyhantcujoaykrbrbfnizysnsit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xrbjqctmapzzicpehnjmbdfinhokzuiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ttirnnameyqqorzxbjqvuaeinbnzepvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eyanngwzevxdqsuurmvejpxclbluqfdn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvfhocwyfmzpflbtboozxuzklemencuy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpwyyxtdbhyqxziwixzdiggjxlytaykt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhlozwdslziicsgzfxrlducesmbsigvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"desuuorprdoyqkhbrbaehpwsvmzlhpia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxwkgpyivedebfdqnaxywuhpwmelcfly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upyimkbwwhtnpfhktnnnmtupxxwxlnam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzeguyrsghdgirjjokemwidwtwpomvba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cenjjdjaqmzyydomnysyxzpvkgvqlsie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obqbgfvymlkxbkwxtpqoshneeymvwyad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"raglcmqiarlxfsxzzwuunwftejefvaxn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aovmzwnstfiybtcbzldqggazwlckrtzu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qkmroupszacuzcptxfucdrzlramplklz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjtloiogwssiqbvkiljkgdlqmsbtqefw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sykfukczbwdkdsvdiwqqddowbbdclneo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mokwzrpslhnynhqizrhplslqisxqlsbz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqlaopopollljtcfkvxfwwmtnkyiuchw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzegfhyqumcbtinkfpbqkvkmnrudlcrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txdzcazztlqyexngiwybgvhvddsdjtdx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"psmaakeymyycjzcxkuffoillepspxzyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"szdvyoiwffesswqwiaxmknpwuhgtqfuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhsvuisrwshmccyokcbhvgejzebvxhuu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfogiiqilmxhbapscdilpwldgyvxnhid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqpagvypcdymsqikzpjhccndfgdfbaqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cctesgplevazqszlgjwrdfwwtyqxmpgu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"osknkiqnfpseuuqfkbgyfjiavrgzoexx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"siemickgegyuqpatfevsoydspatbstfo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668189,"databaseName":"models_schema","ddl":"CREATE TABLE `gnrwwzzyowsyoqcxntaclfwfmptzfttq` (\n `dcdsydckscaktwwkwekhyqhgqsdxpyve` int NOT NULL,\n `hqxfusvdukeyomlvesyegeqopukqeorl` int DEFAULT NULL,\n `kokcszpcwillhvykknyjlmdlnkgdzwws` int DEFAULT NULL,\n `ekktdjuhnwldigjkkymzixutmmitkipb` int DEFAULT NULL,\n `vgsnfzemeivfmsqshpdebhnmzpkvfzbe` int DEFAULT NULL,\n `tnfiufjcdtnumphfopywchvoynyhwfwd` int DEFAULT NULL,\n `xofdibvhppusqszcqazxlsgdozzplddy` int DEFAULT NULL,\n `gldehwlgmvljoevaiaolfnzbqsjuomor` int DEFAULT NULL,\n `bjdrgpwkduzeuyrsdjqpejtevyuztpcr` int DEFAULT NULL,\n `bryborluekaptctsvaauphzgofmjgyun` int DEFAULT NULL,\n `rbfmhiduzghnueyzmgncfswmbimxsduu` int DEFAULT NULL,\n `vqxknxdtvvpgkufzsmpitoydltpvkttw` int DEFAULT NULL,\n `cbbgzkmofrlivzyqvggzukebkyalwxwz` int DEFAULT NULL,\n `mfwlwpmvwtnzmyhyndldqdgstkxsmmqg` int DEFAULT NULL,\n `cntvrujuuqyykjddypxscyilpakgciva` int DEFAULT NULL,\n `bbtvqucjqjciffqcjlbogjcqdzybjkog` int DEFAULT NULL,\n `pwkgghbzowvcawkrjpamrcymllucpezb` int DEFAULT NULL,\n `kwvylknwxzsbjwdvgolwucgzdkdwehhv` int DEFAULT NULL,\n `pycsqvnjbajdrnrucukzeczeepofyuka` int DEFAULT NULL,\n `kaonulvglgrubvhqkulnabbqdxnzpkkw` int DEFAULT NULL,\n `gwubgciikfbbglieamornpbtdorxavfs` int DEFAULT NULL,\n `ptthjnmwhjtqzitvrfbkutmgurdqfhwv` int DEFAULT NULL,\n `qhksjsxcgbmxkjeuzkxrzkxcohdfkpkq` int DEFAULT NULL,\n `odixylzbdsiihehhozuztlqabokvenri` int DEFAULT NULL,\n `xkfnixnajobdkpiylbgcgzobjxxgouqd` int DEFAULT NULL,\n `jopxdctxgrcpzuvkgovuuxtdtnhbliko` int DEFAULT NULL,\n `ytaqbbkdxyfqnasbzdgdiqxveceulhxy` int DEFAULT NULL,\n `txvgfmugbubphkhqluomqbsnzuuoxndu` int DEFAULT NULL,\n `bcdvirdendwysjagcqppzvxoysbnrcts` int DEFAULT NULL,\n `zbkexxpxvxrhdhjgapetufsvckmckbtq` int DEFAULT NULL,\n `bhiengsqqsgwpbxatydhfagjblmonkip` int DEFAULT NULL,\n `uttxmqmvindmltmnkkuvctyknlovrtkb` int DEFAULT NULL,\n `bzxhveljhzeuxyegdntkpduorjwvyvke` int DEFAULT NULL,\n `loijdgtnfyrbrdlypizucweyunzkjmsg` int DEFAULT NULL,\n `vdpnhljiqhhmsyotvryljwiqayquabdn` int DEFAULT NULL,\n `zfvehwyzheefbqntxmmarysaqgknzfkr` int DEFAULT NULL,\n `qbnejlhoctjwiqtnkystcluwgkwmicso` int DEFAULT NULL,\n `ewrobcanebnhkkyeggbironvnxnmlxiw` int DEFAULT NULL,\n `xceflkwpquhxiazazapjefujscafgzin` int DEFAULT NULL,\n `nzsahgxtzautvpjblvepfbjjnqdqndcl` int DEFAULT NULL,\n `unitmjtlmgqovvgaffnzukrczpharlmv` int DEFAULT NULL,\n `vedonwwpxdfegxzpkjjalvgpufjrcgbg` int DEFAULT NULL,\n `uxmedazjnhdodwqaucmysrrieqfnfkbt` int DEFAULT NULL,\n `jsnmouhajdwmtznmwqgtkojwlzkreibb` int DEFAULT NULL,\n `koeqzhrytzbmjanrxgathqnjxeslgyqe` int DEFAULT NULL,\n `bpqgrohgacxjiqopxmdfgdrpwugobxaj` int DEFAULT NULL,\n `jtsqkqmqpziqlzskiwubfygqhteodgqo` int DEFAULT NULL,\n `zbvpuajhrnjyfnhgqiupukyfymnepspg` int DEFAULT NULL,\n `qlqieqqmfelfxqzbfagtspurcnhoiwbg` int DEFAULT NULL,\n `uvyltqsvkpdptcfplahiaqgeldzqyerr` int DEFAULT NULL,\n `cbcbkxabqrtrfdhkwlrrhgmgqdylblwx` int DEFAULT NULL,\n `hmdklzihgccuyvxwkgaqwihrtsinpbyj` int DEFAULT NULL,\n `rjtyvvqamalcbqefnzptwyghbbywcynv` int DEFAULT NULL,\n `fdabdfbsnktsondimstrnisgxnrvlolr` int DEFAULT NULL,\n `mcxyygfxuptisswoizdpgawqzokknzbv` int DEFAULT NULL,\n `xyjpwtemowsjjvsssntyrhzqlptssufj` int DEFAULT NULL,\n `yosrbzumznvfitbjacqxmhfutsdzxsft` int DEFAULT NULL,\n `hmyzimstslwndqacfrqggvbknzumwcvf` int DEFAULT NULL,\n `pkhcymgyiqcosxtoqjwutxwcperfxspc` int DEFAULT NULL,\n `gspaxwvbvgxcssfcjxptnszzvyyompvj` int DEFAULT NULL,\n `zvmmywloowcydelwfogmhwahgihgbqaj` int DEFAULT NULL,\n `bahlxytesebvuarhzytasrzenyickxrf` int DEFAULT NULL,\n `itdbnobrmzemynefffdglgtsyygbewvh` int DEFAULT NULL,\n `ecaecuuekomupnvxmzjgqsdpdelitmhx` int DEFAULT NULL,\n `hagrvxzhonpnjskzczgktdltjwfpyjwo` int DEFAULT NULL,\n `qsixzcqxnkkzvhxoruifacfkaoubuvhj` int DEFAULT NULL,\n `cggieynybuomkcbsojhqhjbcbyohmvrx` int DEFAULT NULL,\n `hmxizxzywmigazivbtqisbockbhswrvk` int DEFAULT NULL,\n `ielvxyhfymvmyglepnyrezabhrdiaxdk` int DEFAULT NULL,\n `cjjybybwpkxiwfcqyxxicrgbywbhrzoy` int DEFAULT NULL,\n `nswxeutyatznxikmxidpzwdmtjzleeuu` int DEFAULT NULL,\n `qjzjuxmekefzuksoqnlyifiekezluyho` int DEFAULT NULL,\n `saqjhklqjhwrvlnysepwfhtfxfgllbge` int DEFAULT NULL,\n `fbaqgdzwathkuxlfboeualpzyviobklh` int DEFAULT NULL,\n `fqtlchnuqqcdtfgxacctbzpabypklmuz` int DEFAULT NULL,\n `jaqbwdxxidrrrdpkduivrwhphgjovzso` int DEFAULT NULL,\n `zdawfwiqztavjqlzizmwgxgvrsqbupdv` int DEFAULT NULL,\n `omvriarhwybibysltpakiuoelinqjxko` int DEFAULT NULL,\n `vjcjankwrwitcsrvapkvqtncpsznqsyr` int DEFAULT NULL,\n `fuypvgbueqvcpjohqxqlpgdwoxbihfro` int DEFAULT NULL,\n `zencjyvtxbiblzlupvyzytatmbvpdesl` int DEFAULT NULL,\n `ngsvfsvizdpyijicxapurkapxcvvhnty` int DEFAULT NULL,\n `lnxytsgwuankrjsfkwyirilvsdmelcjo` int DEFAULT NULL,\n `hycwimiodrxapofodtazkspxpgprkeiq` int DEFAULT NULL,\n `yxhonowvfxdeudzktvwqbbmxqoyqrnuv` int DEFAULT NULL,\n `objxxikyuvrbonhpahesuweuxemavngm` int DEFAULT NULL,\n `akylbyzkcjmhvyxmcheuywhrzqwavvfq` int DEFAULT NULL,\n `euvvindkagcexmapfvtyimjwstfpzjkk` int DEFAULT NULL,\n `bobldwsygbgheowdcvkdbwqjlhmldcoq` int DEFAULT NULL,\n `uervuuduuenxwgzkykpeftifdzvwwijf` int DEFAULT NULL,\n `fhitdiumkvemaeiqkwsjdqxioltzblqm` int DEFAULT NULL,\n `iyyxgqylibulbkwkcdkvujztyalphmrz` int DEFAULT NULL,\n `kgquvpxsbzjylqsgwkivicernysgqbqw` int DEFAULT NULL,\n `irdgxcopwzmqbohbuxlfpwidyglgorom` int DEFAULT NULL,\n `rtsozqqqruqnvtnfasjeodiarmkctnpk` int DEFAULT NULL,\n `gzfmcijrvmuvokdevwszvgygtzynjqpj` int DEFAULT NULL,\n `qpbuanilxhxcazmmuorpurprjkavwoob` int DEFAULT NULL,\n `azdtqcgdusfgwehppqyjqdbbzpzipoqj` int DEFAULT NULL,\n `tinjplqnrdbhnurfanrnugdxebbyhoip` int DEFAULT NULL,\n `qtsnxodblkbhbaqrupefgqfudxawvmay` int DEFAULT NULL,\n PRIMARY KEY (`dcdsydckscaktwwkwekhyqhgqsdxpyve`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"gnrwwzzyowsyoqcxntaclfwfmptzfttq\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["dcdsydckscaktwwkwekhyqhgqsdxpyve"],"columns":[{"name":"dcdsydckscaktwwkwekhyqhgqsdxpyve","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"hqxfusvdukeyomlvesyegeqopukqeorl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kokcszpcwillhvykknyjlmdlnkgdzwws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekktdjuhnwldigjkkymzixutmmitkipb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgsnfzemeivfmsqshpdebhnmzpkvfzbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnfiufjcdtnumphfopywchvoynyhwfwd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xofdibvhppusqszcqazxlsgdozzplddy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gldehwlgmvljoevaiaolfnzbqsjuomor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjdrgpwkduzeuyrsdjqpejtevyuztpcr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bryborluekaptctsvaauphzgofmjgyun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbfmhiduzghnueyzmgncfswmbimxsduu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqxknxdtvvpgkufzsmpitoydltpvkttw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbbgzkmofrlivzyqvggzukebkyalwxwz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mfwlwpmvwtnzmyhyndldqdgstkxsmmqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cntvrujuuqyykjddypxscyilpakgciva","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbtvqucjqjciffqcjlbogjcqdzybjkog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwkgghbzowvcawkrjpamrcymllucpezb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwvylknwxzsbjwdvgolwucgzdkdwehhv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pycsqvnjbajdrnrucukzeczeepofyuka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kaonulvglgrubvhqkulnabbqdxnzpkkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gwubgciikfbbglieamornpbtdorxavfs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ptthjnmwhjtqzitvrfbkutmgurdqfhwv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhksjsxcgbmxkjeuzkxrzkxcohdfkpkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"odixylzbdsiihehhozuztlqabokvenri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkfnixnajobdkpiylbgcgzobjxxgouqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jopxdctxgrcpzuvkgovuuxtdtnhbliko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytaqbbkdxyfqnasbzdgdiqxveceulhxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txvgfmugbubphkhqluomqbsnzuuoxndu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bcdvirdendwysjagcqppzvxoysbnrcts","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbkexxpxvxrhdhjgapetufsvckmckbtq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bhiengsqqsgwpbxatydhfagjblmonkip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uttxmqmvindmltmnkkuvctyknlovrtkb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bzxhveljhzeuxyegdntkpduorjwvyvke","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"loijdgtnfyrbrdlypizucweyunzkjmsg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdpnhljiqhhmsyotvryljwiqayquabdn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zfvehwyzheefbqntxmmarysaqgknzfkr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qbnejlhoctjwiqtnkystcluwgkwmicso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ewrobcanebnhkkyeggbironvnxnmlxiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xceflkwpquhxiazazapjefujscafgzin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzsahgxtzautvpjblvepfbjjnqdqndcl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unitmjtlmgqovvgaffnzukrczpharlmv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vedonwwpxdfegxzpkjjalvgpufjrcgbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxmedazjnhdodwqaucmysrrieqfnfkbt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jsnmouhajdwmtznmwqgtkojwlzkreibb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"koeqzhrytzbmjanrxgathqnjxeslgyqe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bpqgrohgacxjiqopxmdfgdrpwugobxaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jtsqkqmqpziqlzskiwubfygqhteodgqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbvpuajhrnjyfnhgqiupukyfymnepspg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qlqieqqmfelfxqzbfagtspurcnhoiwbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvyltqsvkpdptcfplahiaqgeldzqyerr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbcbkxabqrtrfdhkwlrrhgmgqdylblwx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmdklzihgccuyvxwkgaqwihrtsinpbyj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjtyvvqamalcbqefnzptwyghbbywcynv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fdabdfbsnktsondimstrnisgxnrvlolr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcxyygfxuptisswoizdpgawqzokknzbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyjpwtemowsjjvsssntyrhzqlptssufj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yosrbzumznvfitbjacqxmhfutsdzxsft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmyzimstslwndqacfrqggvbknzumwcvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkhcymgyiqcosxtoqjwutxwcperfxspc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gspaxwvbvgxcssfcjxptnszzvyyompvj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvmmywloowcydelwfogmhwahgihgbqaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bahlxytesebvuarhzytasrzenyickxrf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itdbnobrmzemynefffdglgtsyygbewvh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecaecuuekomupnvxmzjgqsdpdelitmhx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hagrvxzhonpnjskzczgktdltjwfpyjwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qsixzcqxnkkzvhxoruifacfkaoubuvhj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cggieynybuomkcbsojhqhjbcbyohmvrx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmxizxzywmigazivbtqisbockbhswrvk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ielvxyhfymvmyglepnyrezabhrdiaxdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cjjybybwpkxiwfcqyxxicrgbywbhrzoy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nswxeutyatznxikmxidpzwdmtjzleeuu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjzjuxmekefzuksoqnlyifiekezluyho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"saqjhklqjhwrvlnysepwfhtfxfgllbge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbaqgdzwathkuxlfboeualpzyviobklh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqtlchnuqqcdtfgxacctbzpabypklmuz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jaqbwdxxidrrrdpkduivrwhphgjovzso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdawfwiqztavjqlzizmwgxgvrsqbupdv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omvriarhwybibysltpakiuoelinqjxko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjcjankwrwitcsrvapkvqtncpsznqsyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fuypvgbueqvcpjohqxqlpgdwoxbihfro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zencjyvtxbiblzlupvyzytatmbvpdesl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ngsvfsvizdpyijicxapurkapxcvvhnty","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lnxytsgwuankrjsfkwyirilvsdmelcjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hycwimiodrxapofodtazkspxpgprkeiq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxhonowvfxdeudzktvwqbbmxqoyqrnuv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"objxxikyuvrbonhpahesuweuxemavngm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akylbyzkcjmhvyxmcheuywhrzqwavvfq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"euvvindkagcexmapfvtyimjwstfpzjkk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bobldwsygbgheowdcvkdbwqjlhmldcoq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uervuuduuenxwgzkykpeftifdzvwwijf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhitdiumkvemaeiqkwsjdqxioltzblqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iyyxgqylibulbkwkcdkvujztyalphmrz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kgquvpxsbzjylqsgwkivicernysgqbqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"irdgxcopwzmqbohbuxlfpwidyglgorom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rtsozqqqruqnvtnfasjeodiarmkctnpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzfmcijrvmuvokdevwszvgygtzynjqpj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qpbuanilxhxcazmmuorpurprjkavwoob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"azdtqcgdusfgwehppqyjqdbbzpzipoqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tinjplqnrdbhnurfanrnugdxebbyhoip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtsnxodblkbhbaqrupefgqfudxawvmay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668220,"databaseName":"models_schema","ddl":"CREATE TABLE `gqrdivdtlwyumyqwlhrxuviktdbmfnew` (\n `jnliwlfnhmcdilsabwixdaruynfiysdn` int NOT NULL,\n `sngyzgprfrinnvsoxbpoyawforkhebtc` int DEFAULT NULL,\n `wlfpquyaoohqtuljndlxqejdvlocanpf` int DEFAULT NULL,\n `tjvtjvcpvcbepsrpnuxfyddvbvwzrels` int DEFAULT NULL,\n `bghffcpvrgpeccpfobqvnoazrlwcsjlw` int DEFAULT NULL,\n `vlckbvdiazeeptpowbfhbadksfvpkhdc` int DEFAULT NULL,\n `ptpxshrgvfnwfhpffawksdlbtlksvplf` int DEFAULT NULL,\n `xkbpfnjcotcwzkpikvtwbgiupryhrirm` int DEFAULT NULL,\n `lkpdjegtvefhyuszvlasmnkthwmrsebd` int DEFAULT NULL,\n `gheqcqiwmlxzinmahmveajvrltborwnv` int DEFAULT NULL,\n `amrvnkijtjidljhieoeyjumumiegkpgp` int DEFAULT NULL,\n `huzucapjdmhufobhplmoplwcbeawnvno` int DEFAULT NULL,\n `hnvmugreiimwnbynqlsxbleppjvlopgq` int DEFAULT NULL,\n `ixhazvsxqlbytxgcxkloyxrxptjpzmtz` int DEFAULT NULL,\n `edcwlwijfukftgirxdnmspzcesdypafw` int DEFAULT NULL,\n `waimjzbdrvdijfrglwqfmimnakhdjlzl` int DEFAULT NULL,\n `rdqepxtoyprjscpuahpcvrbymzxjcvjc` int DEFAULT NULL,\n `ouhkmllitjtkfwcbneihaaunztrqpwqr` int DEFAULT NULL,\n `oclnmaxjorujjcufilqosjgepilbuzor` int DEFAULT NULL,\n `qmrtngbyotrefgkcwtjwsohvodkxwfyl` int DEFAULT NULL,\n `tgxrbpbyiyjhbhbbvmnqxqeomewjribh` int DEFAULT NULL,\n `hexuxgbnxwubunxemcdtpcbndwdxggxy` int DEFAULT NULL,\n `mrauewrvjhsxqdkgukdkqurescuxidgq` int DEFAULT NULL,\n `bqknatitndouebazsvxtgphytotqmxsq` int DEFAULT NULL,\n `swzesqvdxgnngudgbgwzicjzjojdtdua` int DEFAULT NULL,\n `ltvmfbbfbtbhshgrrmxptzwpadtpvdqn` int DEFAULT NULL,\n `lssxszcdtqrhsxhgappdgtbbytkengdp` int DEFAULT NULL,\n `nkeaweqgirslpvdfvmgjeyvnnapirqxs` int DEFAULT NULL,\n `tzwozklyvzsejekyumppqayperefjmai` int DEFAULT NULL,\n `usrjevrlodhmqaxhlhmttcvtndlhcxvf` int DEFAULT NULL,\n `dhbadwcqwxxkxywinznyrhhihxwhuruf` int DEFAULT NULL,\n `mlygzyvpdpqbavsnjcriqndtwuxefoxo` int DEFAULT NULL,\n `bupmzmnsmgcnlhpmdkostxdlhytetman` int DEFAULT NULL,\n `wqhypehpllkxyqvllaqqhywpvqxbhljn` int DEFAULT NULL,\n `krnzsecvqxlilumhuknqagmzittjukop` int DEFAULT NULL,\n `cvlbwjijtefhmppxghbdwnglvgjcpasf` int DEFAULT NULL,\n `yggraeevkhxlypskbqrbrrdeplghscjt` int DEFAULT NULL,\n `bbieyebhzgocajgrhiapzptkbnxjqblc` int DEFAULT NULL,\n `uzwtjfuppednuazncewmbyxviyvubgou` int DEFAULT NULL,\n `pveegafutoqisfxskkrkwzjitrojbryc` int DEFAULT NULL,\n `njfvndxivwebvfjxhrafpccjitivjdof` int DEFAULT NULL,\n `dlcicspbxdixdwyqwdorwqbkumwpbejk` int DEFAULT NULL,\n `uwngjczkazwwvxgkqkduebrahvhzxmtu` int DEFAULT NULL,\n `dtwlgscbbcvrpcdmlaxerthhgbzaedcw` int DEFAULT NULL,\n `uurhmrncrjaduintnkfczevbdpfkqqeo` int DEFAULT NULL,\n `rdcwuzqjvsvhdodooqlatdfuweqnxnep` int DEFAULT NULL,\n `sfccdkrefpcjhmxstahzglkplvqyrjsn` int DEFAULT NULL,\n `yigwfigvwikloqopthqvbzxdzfopujzb` int DEFAULT NULL,\n `lxnpwbmsjpornxtwvjajkbzmiazwttqm` int DEFAULT NULL,\n `tdjfatjcsemzqewzuznplfhpvgxtdwcy` int DEFAULT NULL,\n `pjnwnofyotepygxikhzdfiooizotbwys` int DEFAULT NULL,\n `qiualbbzjkfdtpcsdpysiqozrbxomghy` int DEFAULT NULL,\n `deueauejomzqdvxuxgmyvubmbprpjmvb` int DEFAULT NULL,\n `rfxqqrhdtqvnnzlwmkhmgattyhvyvtbp` int DEFAULT NULL,\n `daudoxerclvzhigictuvchmqcclacklw` int DEFAULT NULL,\n `jjdmemjwqyjaxsviwfvfkawwqlxoqqdq` int DEFAULT NULL,\n `fmugpuajwuoeqsvjpzepoxumtabirurf` int DEFAULT NULL,\n `kawkvtuibyyvypabdyhjuranorzanerx` int DEFAULT NULL,\n `cqnfdvlypdfggatmypvecbtsfnlkatde` int DEFAULT NULL,\n `naifmurypatzrgtrqyqabbvvdfpkphrh` int DEFAULT NULL,\n `vrhoiiwsbkyovmnzdzalxebxhljnwhef` int DEFAULT NULL,\n `iqgfguyqlshehsuxfxycunfjquxihiia` int DEFAULT NULL,\n `qrbyoynoqcpvhjlcrmyhophohmccjqyx` int DEFAULT NULL,\n `aydcaxwssjspuolkqnpuwevpyjjnvjeg` int DEFAULT NULL,\n `ozqjlaaxwhhwwdwdqxroofdnoafinglb` int DEFAULT NULL,\n `huxbupvfavfertqbnrbrkvdvdljommwr` int DEFAULT NULL,\n `beicrzbrnjrndxgagyklcqfszkynoyaw` int DEFAULT NULL,\n `gfgatfagxeqegznhmhkmowoxxhrzlcbi` int DEFAULT NULL,\n `vscnquetnlagzkugvscajtsopngihfjl` int DEFAULT NULL,\n `upzaayfmwmjyoqwykotowjjlphlqvltr` int DEFAULT NULL,\n `ypjnjgtuybuokhxituaoemsvnilenwuk` int DEFAULT NULL,\n `vdlqfzwuciiuichuovijxurtkecpbrfx` int DEFAULT NULL,\n `vpjusgqsglcvmnwftugintvgijwufvld` int DEFAULT NULL,\n `azdwfpknuolrznuugqdsclbfyxkitpkt` int DEFAULT NULL,\n `uhckshfnhqdzgzvswdvboidqlrethbyt` int DEFAULT NULL,\n `ugxlrexbafhousfwvksblrxydktfjpif` int DEFAULT NULL,\n `tuzcsdxzzgyngearhrufvpvfsxdbahvx` int DEFAULT NULL,\n `dbjvygurpzzgpqwmtwuriakpcklntjjy` int DEFAULT NULL,\n `cuiguuwxxrvdquilltsocvykjvrniwwp` int DEFAULT NULL,\n `ghldklesgeqsqudcyyfjifwvtgpplial` int DEFAULT NULL,\n `tyapelmfuzbuzwdnskwgjtmtqtpgduco` int DEFAULT NULL,\n `whcpdjvlolqkvflzrjmkwtwfeilmfzey` int DEFAULT NULL,\n `hptqqqmgrrpqcuvfnwznikoqtjzicnpj` int DEFAULT NULL,\n `qlklxkcthncuswshhlxciolvvbadttaz` int DEFAULT NULL,\n `tgaqbzastjkyiqexbcdhlcqkhxqkgnqf` int DEFAULT NULL,\n `shuwmdstdsppecpfdcmtmgrfbsyfujaa` int DEFAULT NULL,\n `bbubwpsmiiibghufzannrxottaiccogm` int DEFAULT NULL,\n `blxbkbzdhviheasbxcibttjrcvevijtj` int DEFAULT NULL,\n `rsclhwcfmvdlchzyvfrupnstcaxfxdyr` int DEFAULT NULL,\n `hkgkvofytyxpujtmsllcjabngrccxsqg` int DEFAULT NULL,\n `iogbyxvekjdizsoixkmrwewdcqnutnyc` int DEFAULT NULL,\n `ytovhlcvjeimtogxquusmzwkbdzikuvx` int DEFAULT NULL,\n `xecehrlyuqgtlmwprsxlosmvfyzaywxc` int DEFAULT NULL,\n `tnrucbvqfamozpgptsgcfktcvwnwjwas` int DEFAULT NULL,\n `amgrnuvkyatqctgileoubodywgkhxziv` int DEFAULT NULL,\n `hbenojhlxvbdylvdmuoppfpkqkvqrzph` int DEFAULT NULL,\n `nvopxxpbifcsyvaeutvictriqrtsuggf` int DEFAULT NULL,\n `grpmstrlqbwqxaxqqfppatemkoshlbkr` int DEFAULT NULL,\n `hmylccozkasnvceztkslcbniqbzlqqps` int DEFAULT NULL,\n `glpfjqotrtajvziejflobzkonhojbxrf` int DEFAULT NULL,\n PRIMARY KEY (`jnliwlfnhmcdilsabwixdaruynfiysdn`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"gqrdivdtlwyumyqwlhrxuviktdbmfnew\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["jnliwlfnhmcdilsabwixdaruynfiysdn"],"columns":[{"name":"jnliwlfnhmcdilsabwixdaruynfiysdn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"sngyzgprfrinnvsoxbpoyawforkhebtc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wlfpquyaoohqtuljndlxqejdvlocanpf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjvtjvcpvcbepsrpnuxfyddvbvwzrels","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bghffcpvrgpeccpfobqvnoazrlwcsjlw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vlckbvdiazeeptpowbfhbadksfvpkhdc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ptpxshrgvfnwfhpffawksdlbtlksvplf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkbpfnjcotcwzkpikvtwbgiupryhrirm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lkpdjegtvefhyuszvlasmnkthwmrsebd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gheqcqiwmlxzinmahmveajvrltborwnv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"amrvnkijtjidljhieoeyjumumiegkpgp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"huzucapjdmhufobhplmoplwcbeawnvno","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hnvmugreiimwnbynqlsxbleppjvlopgq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixhazvsxqlbytxgcxkloyxrxptjpzmtz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edcwlwijfukftgirxdnmspzcesdypafw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"waimjzbdrvdijfrglwqfmimnakhdjlzl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdqepxtoyprjscpuahpcvrbymzxjcvjc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ouhkmllitjtkfwcbneihaaunztrqpwqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oclnmaxjorujjcufilqosjgepilbuzor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmrtngbyotrefgkcwtjwsohvodkxwfyl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tgxrbpbyiyjhbhbbvmnqxqeomewjribh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hexuxgbnxwubunxemcdtpcbndwdxggxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrauewrvjhsxqdkgukdkqurescuxidgq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqknatitndouebazsvxtgphytotqmxsq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swzesqvdxgnngudgbgwzicjzjojdtdua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ltvmfbbfbtbhshgrrmxptzwpadtpvdqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lssxszcdtqrhsxhgappdgtbbytkengdp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nkeaweqgirslpvdfvmgjeyvnnapirqxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tzwozklyvzsejekyumppqayperefjmai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"usrjevrlodhmqaxhlhmttcvtndlhcxvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhbadwcqwxxkxywinznyrhhihxwhuruf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mlygzyvpdpqbavsnjcriqndtwuxefoxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bupmzmnsmgcnlhpmdkostxdlhytetman","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqhypehpllkxyqvllaqqhywpvqxbhljn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"krnzsecvqxlilumhuknqagmzittjukop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvlbwjijtefhmppxghbdwnglvgjcpasf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yggraeevkhxlypskbqrbrrdeplghscjt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbieyebhzgocajgrhiapzptkbnxjqblc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzwtjfuppednuazncewmbyxviyvubgou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pveegafutoqisfxskkrkwzjitrojbryc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njfvndxivwebvfjxhrafpccjitivjdof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dlcicspbxdixdwyqwdorwqbkumwpbejk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uwngjczkazwwvxgkqkduebrahvhzxmtu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtwlgscbbcvrpcdmlaxerthhgbzaedcw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uurhmrncrjaduintnkfczevbdpfkqqeo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdcwuzqjvsvhdodooqlatdfuweqnxnep","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfccdkrefpcjhmxstahzglkplvqyrjsn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yigwfigvwikloqopthqvbzxdzfopujzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxnpwbmsjpornxtwvjajkbzmiazwttqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tdjfatjcsemzqewzuznplfhpvgxtdwcy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjnwnofyotepygxikhzdfiooizotbwys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qiualbbzjkfdtpcsdpysiqozrbxomghy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"deueauejomzqdvxuxgmyvubmbprpjmvb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfxqqrhdtqvnnzlwmkhmgattyhvyvtbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"daudoxerclvzhigictuvchmqcclacklw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjdmemjwqyjaxsviwfvfkawwqlxoqqdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmugpuajwuoeqsvjpzepoxumtabirurf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kawkvtuibyyvypabdyhjuranorzanerx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqnfdvlypdfggatmypvecbtsfnlkatde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"naifmurypatzrgtrqyqabbvvdfpkphrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vrhoiiwsbkyovmnzdzalxebxhljnwhef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqgfguyqlshehsuxfxycunfjquxihiia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qrbyoynoqcpvhjlcrmyhophohmccjqyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aydcaxwssjspuolkqnpuwevpyjjnvjeg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ozqjlaaxwhhwwdwdqxroofdnoafinglb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"huxbupvfavfertqbnrbrkvdvdljommwr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"beicrzbrnjrndxgagyklcqfszkynoyaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfgatfagxeqegznhmhkmowoxxhrzlcbi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vscnquetnlagzkugvscajtsopngihfjl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upzaayfmwmjyoqwykotowjjlphlqvltr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypjnjgtuybuokhxituaoemsvnilenwuk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdlqfzwuciiuichuovijxurtkecpbrfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpjusgqsglcvmnwftugintvgijwufvld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"azdwfpknuolrznuugqdsclbfyxkitpkt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhckshfnhqdzgzvswdvboidqlrethbyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugxlrexbafhousfwvksblrxydktfjpif","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tuzcsdxzzgyngearhrufvpvfsxdbahvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbjvygurpzzgpqwmtwuriakpcklntjjy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cuiguuwxxrvdquilltsocvykjvrniwwp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghldklesgeqsqudcyyfjifwvtgpplial","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tyapelmfuzbuzwdnskwgjtmtqtpgduco","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"whcpdjvlolqkvflzrjmkwtwfeilmfzey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hptqqqmgrrpqcuvfnwznikoqtjzicnpj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qlklxkcthncuswshhlxciolvvbadttaz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tgaqbzastjkyiqexbcdhlcqkhxqkgnqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shuwmdstdsppecpfdcmtmgrfbsyfujaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbubwpsmiiibghufzannrxottaiccogm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blxbkbzdhviheasbxcibttjrcvevijtj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rsclhwcfmvdlchzyvfrupnstcaxfxdyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkgkvofytyxpujtmsllcjabngrccxsqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iogbyxvekjdizsoixkmrwewdcqnutnyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytovhlcvjeimtogxquusmzwkbdzikuvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xecehrlyuqgtlmwprsxlosmvfyzaywxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnrucbvqfamozpgptsgcfktcvwnwjwas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"amgrnuvkyatqctgileoubodywgkhxziv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbenojhlxvbdylvdmuoppfpkqkvqrzph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvopxxpbifcsyvaeutvictriqrtsuggf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grpmstrlqbwqxaxqqfppatemkoshlbkr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmylccozkasnvceztkslcbniqbzlqqps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"glpfjqotrtajvziejflobzkonhojbxrf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668251,"databaseName":"models_schema","ddl":"CREATE TABLE `grjhfhonuudoavlukzcyzstzmfayaezp` (\n `omhsdtdmluprfnlxddytmjaaabiuklvt` int NOT NULL,\n `gpeosmbxbhnrvjvtksgppnluwzpfgzxs` int DEFAULT NULL,\n `yjokvikoshxizrqmcdbcdqxozsmfjzoy` int DEFAULT NULL,\n `ckagapyvmreofpwrkmotpaeonqbiotoq` int DEFAULT NULL,\n `qwklpszsrgxifydipnvfqniijidndxhk` int DEFAULT NULL,\n `dpuipajgnhfqskdpqbbvfbeznnxlzccu` int DEFAULT NULL,\n `bpxjplrgyfhracjkkmgdpogomhfapsfi` int DEFAULT NULL,\n `ydenpbnghxfuoedwqwqafxhsqcxxzkha` int DEFAULT NULL,\n `vbfawvipgnldgmwnjdhdiinwloahldjm` int DEFAULT NULL,\n `zeumdhyrktxfbrbsnjxrifwymgfrrcbd` int DEFAULT NULL,\n `krewpvnngjtirwpcrmcvfayxfmpducrt` int DEFAULT NULL,\n `rycgigvqwlipjjwanqyrgrblcvpomgzf` int DEFAULT NULL,\n `vrwjhofsorfnrbcsdrlpgwdyhcrzpepq` int DEFAULT NULL,\n `gnikyohquqvsvmickiioujwpfdiwmoeq` int DEFAULT NULL,\n `githqciibmihvnxqtgngqnypdmitfpem` int DEFAULT NULL,\n `xxwwyijgnujeeqkdjgxsrhkbgopithic` int DEFAULT NULL,\n `ludgithzekhrtaczjcofyyitsdiixpaz` int DEFAULT NULL,\n `cvmejfojwfybitqiqufpayahnzyfxtqn` int DEFAULT NULL,\n `cepegnljiemzcvmnykkgahntdplqaghe` int DEFAULT NULL,\n `llnhmybyzzinzeihynmpacvhqtqfpxsm` int DEFAULT NULL,\n `vfbrlmkwsdlbarfjahdplhfrwcqfamga` int DEFAULT NULL,\n `ltiiddpdupwwonuomkvppdetarkqipjf` int DEFAULT NULL,\n `mrsqzokpguhkgxnitswspgqgmzfeumrp` int DEFAULT NULL,\n `qpmhzxabcvzuyjbbessnhikclikvwfjn` int DEFAULT NULL,\n `uswqifnhjhawhjpzesqvtlomyjflprrg` int DEFAULT NULL,\n `zambxoldbeypypsnpiebyhyqspxixtyd` int DEFAULT NULL,\n `dtzgyujrcxybrhuoqiowfksgeftpfucz` int DEFAULT NULL,\n `mvwkquhuhrmteyqpmiuqusbgtdcslgqu` int DEFAULT NULL,\n `dplryulbhmrlpryxxccrmcksfmbvunxy` int DEFAULT NULL,\n `uciguqdqnssltsdjurbshzfhjqxvgxjl` int DEFAULT NULL,\n `wlmkecxywesuwyawtfchfcsjflixpdme` int DEFAULT NULL,\n `pshsriruaefizefzgqvnswiibvmjbgnx` int DEFAULT NULL,\n `ofznffimxeqgrklvvnaqccjtdvazdbar` int DEFAULT NULL,\n `ktbmfazjiidvfqhzcarbswodmiaehmlr` int DEFAULT NULL,\n `fuqzdkzgrknoiakxvwaepoyiccdqjcqb` int DEFAULT NULL,\n `ybavpokqbniywerefpawymroaspmergj` int DEFAULT NULL,\n `dkxzivxsjqntzwhorlpsthwyxveldqxm` int DEFAULT NULL,\n `scmlevjcrjkxrlyccisemncozveytaxk` int DEFAULT NULL,\n `mjjmbvrtwrcosknyfhvuymjutypnnicb` int DEFAULT NULL,\n `genxbhcdajbahskxontudqfdrarseqgy` int DEFAULT NULL,\n `cwjbpoqcbbefrktccoxylonvcrmkycel` int DEFAULT NULL,\n `dwslhcvcrjzydqonwzunnoharrmicohv` int DEFAULT NULL,\n `bnzttegqaintkighgtvlcayiprniadya` int DEFAULT NULL,\n `uapqvdbkcwuaxgjkdvkywhiuxckwfteb` int DEFAULT NULL,\n `tqeyoprmxxtliwwkxjsgycvvwrjejurg` int DEFAULT NULL,\n `dorfnpylwytyqctofmcmlxzfwvvektge` int DEFAULT NULL,\n `ixnwngaddcrllstasothfrdgcjigbgvg` int DEFAULT NULL,\n `ljeeashucnoizytqzbtzrqhiuuczjllw` int DEFAULT NULL,\n `vbfntjsdsgbydnhzormmvnywmejnloap` int DEFAULT NULL,\n `rdayhwdkdnsfzklyrawsneubvhpzcgqz` int DEFAULT NULL,\n `yjgjdtjkfaifaxvzlodxzwhkdfkmnbba` int DEFAULT NULL,\n `qnhlqsmwtujtfojvcbuiwybynqtychph` int DEFAULT NULL,\n `tzdmrhphysdmgxubfnzdxqubqkcolurz` int DEFAULT NULL,\n `spaboroxezichkvjeosprthzapypyopw` int DEFAULT NULL,\n `hfuwlwkzubrwqeibaiqhtrcukizndvly` int DEFAULT NULL,\n `iblbpmbcqwqxphdnvfkerwmrwxxhmrwh` int DEFAULT NULL,\n `eeyjxpwmylzwzmqnebrglesxkkuolddu` int DEFAULT NULL,\n `xiuwblxhorvzexjjoctspoyhuxoxrcvq` int DEFAULT NULL,\n `juutexaqjmqdelmtraaazxakktfvedng` int DEFAULT NULL,\n `dqpdjfvrubweguancdxyctykdyftrrzt` int DEFAULT NULL,\n `yazxjfmbqzxgcwprkudbdhxsvvkibfvy` int DEFAULT NULL,\n `qhpciyzuybtbsuvtjejbeqzlpgkzdtic` int DEFAULT NULL,\n `lzjwncewwlmkpynxxftoegdrhpcquckn` int DEFAULT NULL,\n `hwurdbnbbdeyloszbgblaswctzyonvsu` int DEFAULT NULL,\n `inlzanpklksuvtfifbxtojbyywlssulo` int DEFAULT NULL,\n `npvyrdeagilvxdfnxgffzfduhpxqyaoe` int DEFAULT NULL,\n `yssgxhmbiujstkekuiuhdcrxcdiaykma` int DEFAULT NULL,\n `rarmibxpcjrftjlowdxwxzxbcnybxkbe` int DEFAULT NULL,\n `qnvpemqwdhytdziyippwvsmjtjmfmmqs` int DEFAULT NULL,\n `nqbohuvupmluewpxwluiumvyxbepmhnr` int DEFAULT NULL,\n `laowpkconrflxtzjrstrkuynicghkvod` int DEFAULT NULL,\n `mnvotwtyweperdjamgrjcsfhaulegovl` int DEFAULT NULL,\n `vjqvtklpdquuylsfepugodnvztkdqeot` int DEFAULT NULL,\n `vmioikpftxktnzhowotxexkihnoukdod` int DEFAULT NULL,\n `fzxfvcriikboppmnquxcqjdkioiviqif` int DEFAULT NULL,\n `zxvifgvwhjbgjtpnevminlcjxyzyttbh` int DEFAULT NULL,\n `deadgpnmcphejkwpxfmuqtneeqavixzg` int DEFAULT NULL,\n `xejphoycaqzkkojamvjxgtimtojwmxbs` int DEFAULT NULL,\n `rngmydsgusicqfarbprfghoimmuqkaqr` int DEFAULT NULL,\n `tevynznusosndctwkgiyemuhpdylpqxi` int DEFAULT NULL,\n `zesplllsdjcuadzquhaxedzziccneuls` int DEFAULT NULL,\n `tsdqkhfmdosultivdaadgrsgmgvzbimk` int DEFAULT NULL,\n `qferzyagemajqlndzrmmmcppjxvdyuhr` int DEFAULT NULL,\n `plsqkmalbpyxwcysbwnwozlwgrokxyrz` int DEFAULT NULL,\n `xnorokiwpsdyavwrgakdtawssyuabpqd` int DEFAULT NULL,\n `ftnlgguovpzfgvaeokpqjkxidqxzpwgy` int DEFAULT NULL,\n `gbbxizpgdfcbipmbtlapckahwdqjncby` int DEFAULT NULL,\n `fbgglpvopzkzeewiyexqulspfptmfpvd` int DEFAULT NULL,\n `odkcoxomjriclaprtumlficreuovsnfs` int DEFAULT NULL,\n `ymuakxufhklvadxqshxmqnyohtvmvrld` int DEFAULT NULL,\n `ftjbdptprpawblmardzlpnflifxxaacy` int DEFAULT NULL,\n `jotmwcnypudtexuplfabqrgfjanccvpm` int DEFAULT NULL,\n `aqoykivvymycxosathbyfrzhkdqhtskj` int DEFAULT NULL,\n `xbxlteygzqdfvsnhvctajeqwijyrwmiw` int DEFAULT NULL,\n `oqhosjdnszbikphtatpuohxyxolbbytv` int DEFAULT NULL,\n `fbgmvhdopduqtilhvjishgogglymufdk` int DEFAULT NULL,\n `blpzlrmgqgmvjjrquqznzrkfiqrwndeu` int DEFAULT NULL,\n `mebcpcqsiasibrjtvqvqtinfabfyylvt` int DEFAULT NULL,\n `amzsrungrfmlyczbnfkdthrfnkjyzrzq` int DEFAULT NULL,\n `podpiauurpspokncpitgcgnqqurwhbin` int DEFAULT NULL,\n PRIMARY KEY (`omhsdtdmluprfnlxddytmjaaabiuklvt`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"grjhfhonuudoavlukzcyzstzmfayaezp\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["omhsdtdmluprfnlxddytmjaaabiuklvt"],"columns":[{"name":"omhsdtdmluprfnlxddytmjaaabiuklvt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"gpeosmbxbhnrvjvtksgppnluwzpfgzxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjokvikoshxizrqmcdbcdqxozsmfjzoy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ckagapyvmreofpwrkmotpaeonqbiotoq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwklpszsrgxifydipnvfqniijidndxhk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpuipajgnhfqskdpqbbvfbeznnxlzccu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bpxjplrgyfhracjkkmgdpogomhfapsfi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydenpbnghxfuoedwqwqafxhsqcxxzkha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbfawvipgnldgmwnjdhdiinwloahldjm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zeumdhyrktxfbrbsnjxrifwymgfrrcbd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"krewpvnngjtirwpcrmcvfayxfmpducrt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rycgigvqwlipjjwanqyrgrblcvpomgzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vrwjhofsorfnrbcsdrlpgwdyhcrzpepq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnikyohquqvsvmickiioujwpfdiwmoeq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"githqciibmihvnxqtgngqnypdmitfpem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxwwyijgnujeeqkdjgxsrhkbgopithic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ludgithzekhrtaczjcofyyitsdiixpaz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvmejfojwfybitqiqufpayahnzyfxtqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cepegnljiemzcvmnykkgahntdplqaghe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llnhmybyzzinzeihynmpacvhqtqfpxsm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vfbrlmkwsdlbarfjahdplhfrwcqfamga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ltiiddpdupwwonuomkvppdetarkqipjf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrsqzokpguhkgxnitswspgqgmzfeumrp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qpmhzxabcvzuyjbbessnhikclikvwfjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uswqifnhjhawhjpzesqvtlomyjflprrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zambxoldbeypypsnpiebyhyqspxixtyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtzgyujrcxybrhuoqiowfksgeftpfucz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvwkquhuhrmteyqpmiuqusbgtdcslgqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dplryulbhmrlpryxxccrmcksfmbvunxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uciguqdqnssltsdjurbshzfhjqxvgxjl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wlmkecxywesuwyawtfchfcsjflixpdme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pshsriruaefizefzgqvnswiibvmjbgnx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofznffimxeqgrklvvnaqccjtdvazdbar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ktbmfazjiidvfqhzcarbswodmiaehmlr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fuqzdkzgrknoiakxvwaepoyiccdqjcqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ybavpokqbniywerefpawymroaspmergj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkxzivxsjqntzwhorlpsthwyxveldqxm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"scmlevjcrjkxrlyccisemncozveytaxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjjmbvrtwrcosknyfhvuymjutypnnicb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"genxbhcdajbahskxontudqfdrarseqgy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwjbpoqcbbefrktccoxylonvcrmkycel","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwslhcvcrjzydqonwzunnoharrmicohv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnzttegqaintkighgtvlcayiprniadya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uapqvdbkcwuaxgjkdvkywhiuxckwfteb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqeyoprmxxtliwwkxjsgycvvwrjejurg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dorfnpylwytyqctofmcmlxzfwvvektge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixnwngaddcrllstasothfrdgcjigbgvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljeeashucnoizytqzbtzrqhiuuczjllw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbfntjsdsgbydnhzormmvnywmejnloap","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdayhwdkdnsfzklyrawsneubvhpzcgqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjgjdtjkfaifaxvzlodxzwhkdfkmnbba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qnhlqsmwtujtfojvcbuiwybynqtychph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tzdmrhphysdmgxubfnzdxqubqkcolurz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"spaboroxezichkvjeosprthzapypyopw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfuwlwkzubrwqeibaiqhtrcukizndvly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iblbpmbcqwqxphdnvfkerwmrwxxhmrwh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eeyjxpwmylzwzmqnebrglesxkkuolddu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xiuwblxhorvzexjjoctspoyhuxoxrcvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"juutexaqjmqdelmtraaazxakktfvedng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqpdjfvrubweguancdxyctykdyftrrzt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yazxjfmbqzxgcwprkudbdhxsvvkibfvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhpciyzuybtbsuvtjejbeqzlpgkzdtic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lzjwncewwlmkpynxxftoegdrhpcquckn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwurdbnbbdeyloszbgblaswctzyonvsu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"inlzanpklksuvtfifbxtojbyywlssulo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"npvyrdeagilvxdfnxgffzfduhpxqyaoe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yssgxhmbiujstkekuiuhdcrxcdiaykma","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rarmibxpcjrftjlowdxwxzxbcnybxkbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qnvpemqwdhytdziyippwvsmjtjmfmmqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqbohuvupmluewpxwluiumvyxbepmhnr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"laowpkconrflxtzjrstrkuynicghkvod","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnvotwtyweperdjamgrjcsfhaulegovl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjqvtklpdquuylsfepugodnvztkdqeot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vmioikpftxktnzhowotxexkihnoukdod","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzxfvcriikboppmnquxcqjdkioiviqif","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxvifgvwhjbgjtpnevminlcjxyzyttbh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"deadgpnmcphejkwpxfmuqtneeqavixzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xejphoycaqzkkojamvjxgtimtojwmxbs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rngmydsgusicqfarbprfghoimmuqkaqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tevynznusosndctwkgiyemuhpdylpqxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zesplllsdjcuadzquhaxedzziccneuls","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tsdqkhfmdosultivdaadgrsgmgvzbimk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qferzyagemajqlndzrmmmcppjxvdyuhr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"plsqkmalbpyxwcysbwnwozlwgrokxyrz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnorokiwpsdyavwrgakdtawssyuabpqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftnlgguovpzfgvaeokpqjkxidqxzpwgy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gbbxizpgdfcbipmbtlapckahwdqjncby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbgglpvopzkzeewiyexqulspfptmfpvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"odkcoxomjriclaprtumlficreuovsnfs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ymuakxufhklvadxqshxmqnyohtvmvrld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftjbdptprpawblmardzlpnflifxxaacy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jotmwcnypudtexuplfabqrgfjanccvpm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqoykivvymycxosathbyfrzhkdqhtskj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbxlteygzqdfvsnhvctajeqwijyrwmiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqhosjdnszbikphtatpuohxyxolbbytv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbgmvhdopduqtilhvjishgogglymufdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blpzlrmgqgmvjjrquqznzrkfiqrwndeu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mebcpcqsiasibrjtvqvqtinfabfyylvt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"amzsrungrfmlyczbnfkdthrfnkjyzrzq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"podpiauurpspokncpitgcgnqqurwhbin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668282,"databaseName":"models_schema","ddl":"CREATE TABLE `grlnyqotcwelxxfihmfytiykiyggwidh` (\n `xxwxhhlvzpjcqfsvuneeozpafrxrskar` int NOT NULL,\n `mkjrgjdmcunaqdvpfrfrleeuqwtghvxm` int DEFAULT NULL,\n `vxxmerwewqedugfvryafdmdiaojxomme` int DEFAULT NULL,\n `pavgbcnsfleotnrtnysoazethvucpwoc` int DEFAULT NULL,\n `jiyragskbfrysehvqtogigazjlmstxwt` int DEFAULT NULL,\n `pjeoawujytpnazsearywgqseontkgkyg` int DEFAULT NULL,\n `occscknjtzhjwguepxatzngkamgcmwaw` int DEFAULT NULL,\n `uprdvmfcbsyzldvtimunvhqsolpicmgb` int DEFAULT NULL,\n `jvqtgneziscvaqaltsutubdnioxqvlhf` int DEFAULT NULL,\n `eotqlftczhmyghvletpbdqicmptsjiot` int DEFAULT NULL,\n `vwldhnvnaclgdmmcakqmnnulxlyhhcvc` int DEFAULT NULL,\n `kfuwzlzbzczxazzjdtcgdelykfpilyif` int DEFAULT NULL,\n `fijwqfqnqevikxekmmibbkwrbumksdid` int DEFAULT NULL,\n `klecumoiwiwjzeuypwkdufravwroxjka` int DEFAULT NULL,\n `fvrpqlsozotbpnyjmjrqwqqmdkzzatag` int DEFAULT NULL,\n `wbiolmcwxpjqfshmkdoqtnbuvoskfubr` int DEFAULT NULL,\n `rrcxohxgcuifozqcfirwfmwihmcufwzj` int DEFAULT NULL,\n `qzxdbisrqpmesnpefutelmizuwduxnfh` int DEFAULT NULL,\n `zmfjaojhlyrrxkmurcwuqbhqaewyejds` int DEFAULT NULL,\n `fmuytzwmmmgcdlvhvrcoymmflmugcpss` int DEFAULT NULL,\n `zdiajtcxilojnmzqsdnkgcobqalomeae` int DEFAULT NULL,\n `fpraumrpqrvgqpzbjrjkebdqdculpxcr` int DEFAULT NULL,\n `upzotgjfvcvdwbukyrbsxjpamyrhrjxj` int DEFAULT NULL,\n `tkvijkkeffxprubpvgbjfhocdidhwluq` int DEFAULT NULL,\n `efuzlkfcxlegmsilioexoxmauwqiojxb` int DEFAULT NULL,\n `rkkgoudaepgbujfjfffrjegzlsefttii` int DEFAULT NULL,\n `qamaxymzgimnunoflqxxjugetzvgwsbv` int DEFAULT NULL,\n `fbukffytdifefjjtpovkqhdnyzeuqpdj` int DEFAULT NULL,\n `yokwtxcituovtggmzaagxnybpdevqupk` int DEFAULT NULL,\n `xstnvcrpyzyovtfoctupjufkclrtores` int DEFAULT NULL,\n `pwdzljcnhcrrrohvopvdlfhrwcimwsmh` int DEFAULT NULL,\n `cmxkknpxsmhgpbaleuxzaiqmiidxuien` int DEFAULT NULL,\n `rfaazcuvmxzxncqflpxdxnjooczsgpcv` int DEFAULT NULL,\n `wekwzzdisvmxdewiisxnedfnseidtzte` int DEFAULT NULL,\n `bilkbfbpeiqhnweshzioictodrxihljx` int DEFAULT NULL,\n `ypupvvnonboqoyvszsgjewwbqicezbom` int DEFAULT NULL,\n `fcvpegdwemepiqorwjphiqaufvqnuqxq` int DEFAULT NULL,\n `lovgttmxuvftblfuwayfvvaikchmoenb` int DEFAULT NULL,\n `ufikxthylfzrkuxnnroljxgaazubqsfv` int DEFAULT NULL,\n `kvuwrwwbnloycyvhkkduzwltqutjdxcy` int DEFAULT NULL,\n `jwstxalsuxblhmbiyzbpqzhbqgptrvdc` int DEFAULT NULL,\n `wcsgwxftjygcjcidfynxyncwdndgtoqb` int DEFAULT NULL,\n `eajkhbkwmaziskcsrcalrsivqxwqwlsx` int DEFAULT NULL,\n `ymiodrvvygarftwdquemxxegogoibxwm` int DEFAULT NULL,\n `juoeezyazbmcvhgtbncxdhvdlnrblvck` int DEFAULT NULL,\n `rddegxspyaczzlpxzwcdfzvxyxgstkuj` int DEFAULT NULL,\n `wvejjrjllkeqewnmourpsifebmzkhnuh` int DEFAULT NULL,\n `hgupxxrmlhmkacyhpugycbndtcqhyyby` int DEFAULT NULL,\n `snbehkseyewvkzhdvboadbztdpkocxmk` int DEFAULT NULL,\n `rssyfvlncmqsbdamfrfunjsdkpowxjie` int DEFAULT NULL,\n `mofjqbuhxulvfvkosxstdfvzvihrvwoi` int DEFAULT NULL,\n `objnrvffrrhxoihfguhkvirkeaoylamu` int DEFAULT NULL,\n `lzduhntjtbleupwozfhcglezdfmtfuhx` int DEFAULT NULL,\n `wxcmtowtfmikfgqsvmznqrkemimehjzn` int DEFAULT NULL,\n `jynhplchiwzcsshgryosvnrzkjtuwzkq` int DEFAULT NULL,\n `fvvynhtxcbxrhxvnpbqiuobkofysqrsp` int DEFAULT NULL,\n `lovnnzvksktkzgqrjhswfjlepraihkdm` int DEFAULT NULL,\n `oaelqotjqmwacaulnmovlymjrfjcfahx` int DEFAULT NULL,\n `xnezdspoeymrwmmnsaageyqffamxtrhz` int DEFAULT NULL,\n `blicbjvypablawduwslauidcukvbvaxi` int DEFAULT NULL,\n `wgslmsjlouaugzmphrdvwuowhgfqfzzj` int DEFAULT NULL,\n `rhtjnxrtfsbmoxafpnwzmdoedkadwkdg` int DEFAULT NULL,\n `vlxyayowighacqipaqqdvsbwzkpmyudq` int DEFAULT NULL,\n `uwnzwqjcliikljbctofougehacxegpjb` int DEFAULT NULL,\n `hgiwlzpjlpkynupvgmkgvqvkslhexmql` int DEFAULT NULL,\n `jtchlvfogyrrzhionwkuupycvprfgduk` int DEFAULT NULL,\n `nbgjndzzuuhomqtkwiytmfswpqootqow` int DEFAULT NULL,\n `vpghsijifjopumhndlgcqocaytxwlxfc` int DEFAULT NULL,\n `zfczxguaqmmpndqzpwqwcjkhyvvspvrp` int DEFAULT NULL,\n `bmafdhtyvwazsgxfgxpjegohargzbjme` int DEFAULT NULL,\n `mdrfodmysfyusbejsdelclyklvmwljqs` int DEFAULT NULL,\n `yeatdcoopurtwulmhyqmdzsrbkpqpyzv` int DEFAULT NULL,\n `rpjxqcphupbuhwnxygahcbtazkyykxrd` int DEFAULT NULL,\n `qmlvleinxfzfwglmdkspmygemffldqgr` int DEFAULT NULL,\n `eoffdjqudfnvfvsjcxdwmlrakbihweav` int DEFAULT NULL,\n `pyxenbdsyjwuyqidkwgfgvhtbjpmnzvc` int DEFAULT NULL,\n `ubrveovmqqdqecfyyeutptupdvanmpbh` int DEFAULT NULL,\n `zddtczsgoptmkjkcayxrxitlkyzhmbdw` int DEFAULT NULL,\n `noiaasuwigijkcrsbtobxqwegudivrzu` int DEFAULT NULL,\n `afzgcvtynpxjrglgnoeavspickygzxbt` int DEFAULT NULL,\n `rlvltknsjugeranuajxdsikqicivvxwb` int DEFAULT NULL,\n `dqmaefngeugnicefqojgunpoqfaakmxp` int DEFAULT NULL,\n `eyzgnvnufxithfmsoibijpuhvpmzzxau` int DEFAULT NULL,\n `ehzsseiwxhsurestxxkyjyuzgenvpkxd` int DEFAULT NULL,\n `oftqwjwixbcgovkplcuyfukkyzsmftpp` int DEFAULT NULL,\n `pmxofpzjvkztwbyqdrvefmuyvtdvfrtx` int DEFAULT NULL,\n `eqnzyswzpeoddajksvjooxpdnbbnatbh` int DEFAULT NULL,\n `fzgqkxlshkycxbtpvcphshxswdutvdoi` int DEFAULT NULL,\n `dnclaqqugllxukwfzuuafpxeqpoyskpa` int DEFAULT NULL,\n `vctudvpzslnuzfumelripofgcbxgpheu` int DEFAULT NULL,\n `tdlhnivesficnikefnpjhvxsbngkbdol` int DEFAULT NULL,\n `rmellspxahimdrzobauzeegsuisubntl` int DEFAULT NULL,\n `fohajjsjwbxzgbscdwdjgxkckcjpxvrh` int DEFAULT NULL,\n `meloukikbqjfurdktlljknpnvznvwvrp` int DEFAULT NULL,\n `wqpvyhffsstxvlgbstcjhylkqywgffwy` int DEFAULT NULL,\n `ebxpjmirhnhpvnleggxiepybrxicrebz` int DEFAULT NULL,\n `arvumjirsmjxaeaadvsyjnnfoybawtvp` int DEFAULT NULL,\n `mpetijheutlwwtqnkrsowaejdwokajpz` int DEFAULT NULL,\n `clequxqsrdmxsxnokpksvmyvxavmykat` int DEFAULT NULL,\n `xmbtcxqmexqjzkkhblssekjiyfyltity` int DEFAULT NULL,\n PRIMARY KEY (`xxwxhhlvzpjcqfsvuneeozpafrxrskar`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"grlnyqotcwelxxfihmfytiykiyggwidh\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["xxwxhhlvzpjcqfsvuneeozpafrxrskar"],"columns":[{"name":"xxwxhhlvzpjcqfsvuneeozpafrxrskar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"mkjrgjdmcunaqdvpfrfrleeuqwtghvxm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxxmerwewqedugfvryafdmdiaojxomme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pavgbcnsfleotnrtnysoazethvucpwoc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jiyragskbfrysehvqtogigazjlmstxwt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjeoawujytpnazsearywgqseontkgkyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"occscknjtzhjwguepxatzngkamgcmwaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uprdvmfcbsyzldvtimunvhqsolpicmgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvqtgneziscvaqaltsutubdnioxqvlhf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eotqlftczhmyghvletpbdqicmptsjiot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vwldhnvnaclgdmmcakqmnnulxlyhhcvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfuwzlzbzczxazzjdtcgdelykfpilyif","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fijwqfqnqevikxekmmibbkwrbumksdid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"klecumoiwiwjzeuypwkdufravwroxjka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fvrpqlsozotbpnyjmjrqwqqmdkzzatag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbiolmcwxpjqfshmkdoqtnbuvoskfubr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrcxohxgcuifozqcfirwfmwihmcufwzj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qzxdbisrqpmesnpefutelmizuwduxnfh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmfjaojhlyrrxkmurcwuqbhqaewyejds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmuytzwmmmgcdlvhvrcoymmflmugcpss","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdiajtcxilojnmzqsdnkgcobqalomeae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpraumrpqrvgqpzbjrjkebdqdculpxcr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upzotgjfvcvdwbukyrbsxjpamyrhrjxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkvijkkeffxprubpvgbjfhocdidhwluq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"efuzlkfcxlegmsilioexoxmauwqiojxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkkgoudaepgbujfjfffrjegzlsefttii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qamaxymzgimnunoflqxxjugetzvgwsbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbukffytdifefjjtpovkqhdnyzeuqpdj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yokwtxcituovtggmzaagxnybpdevqupk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xstnvcrpyzyovtfoctupjufkclrtores","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwdzljcnhcrrrohvopvdlfhrwcimwsmh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmxkknpxsmhgpbaleuxzaiqmiidxuien","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfaazcuvmxzxncqflpxdxnjooczsgpcv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wekwzzdisvmxdewiisxnedfnseidtzte","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bilkbfbpeiqhnweshzioictodrxihljx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypupvvnonboqoyvszsgjewwbqicezbom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcvpegdwemepiqorwjphiqaufvqnuqxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lovgttmxuvftblfuwayfvvaikchmoenb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ufikxthylfzrkuxnnroljxgaazubqsfv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvuwrwwbnloycyvhkkduzwltqutjdxcy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwstxalsuxblhmbiyzbpqzhbqgptrvdc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcsgwxftjygcjcidfynxyncwdndgtoqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eajkhbkwmaziskcsrcalrsivqxwqwlsx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ymiodrvvygarftwdquemxxegogoibxwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"juoeezyazbmcvhgtbncxdhvdlnrblvck","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rddegxspyaczzlpxzwcdfzvxyxgstkuj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wvejjrjllkeqewnmourpsifebmzkhnuh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hgupxxrmlhmkacyhpugycbndtcqhyyby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"snbehkseyewvkzhdvboadbztdpkocxmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rssyfvlncmqsbdamfrfunjsdkpowxjie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mofjqbuhxulvfvkosxstdfvzvihrvwoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"objnrvffrrhxoihfguhkvirkeaoylamu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lzduhntjtbleupwozfhcglezdfmtfuhx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxcmtowtfmikfgqsvmznqrkemimehjzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jynhplchiwzcsshgryosvnrzkjtuwzkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fvvynhtxcbxrhxvnpbqiuobkofysqrsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lovnnzvksktkzgqrjhswfjlepraihkdm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oaelqotjqmwacaulnmovlymjrfjcfahx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnezdspoeymrwmmnsaageyqffamxtrhz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blicbjvypablawduwslauidcukvbvaxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wgslmsjlouaugzmphrdvwuowhgfqfzzj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhtjnxrtfsbmoxafpnwzmdoedkadwkdg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vlxyayowighacqipaqqdvsbwzkpmyudq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uwnzwqjcliikljbctofougehacxegpjb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hgiwlzpjlpkynupvgmkgvqvkslhexmql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jtchlvfogyrrzhionwkuupycvprfgduk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbgjndzzuuhomqtkwiytmfswpqootqow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpghsijifjopumhndlgcqocaytxwlxfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zfczxguaqmmpndqzpwqwcjkhyvvspvrp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bmafdhtyvwazsgxfgxpjegohargzbjme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mdrfodmysfyusbejsdelclyklvmwljqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yeatdcoopurtwulmhyqmdzsrbkpqpyzv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpjxqcphupbuhwnxygahcbtazkyykxrd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmlvleinxfzfwglmdkspmygemffldqgr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eoffdjqudfnvfvsjcxdwmlrakbihweav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pyxenbdsyjwuyqidkwgfgvhtbjpmnzvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubrveovmqqdqecfyyeutptupdvanmpbh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zddtczsgoptmkjkcayxrxitlkyzhmbdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"noiaasuwigijkcrsbtobxqwegudivrzu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afzgcvtynpxjrglgnoeavspickygzxbt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlvltknsjugeranuajxdsikqicivvxwb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqmaefngeugnicefqojgunpoqfaakmxp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eyzgnvnufxithfmsoibijpuhvpmzzxau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehzsseiwxhsurestxxkyjyuzgenvpkxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oftqwjwixbcgovkplcuyfukkyzsmftpp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmxofpzjvkztwbyqdrvefmuyvtdvfrtx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqnzyswzpeoddajksvjooxpdnbbnatbh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzgqkxlshkycxbtpvcphshxswdutvdoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dnclaqqugllxukwfzuuafpxeqpoyskpa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vctudvpzslnuzfumelripofgcbxgpheu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tdlhnivesficnikefnpjhvxsbngkbdol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rmellspxahimdrzobauzeegsuisubntl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fohajjsjwbxzgbscdwdjgxkckcjpxvrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"meloukikbqjfurdktlljknpnvznvwvrp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqpvyhffsstxvlgbstcjhylkqywgffwy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebxpjmirhnhpvnleggxiepybrxicrebz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"arvumjirsmjxaeaadvsyjnnfoybawtvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpetijheutlwwtqnkrsowaejdwokajpz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"clequxqsrdmxsxnokpksvmyvxavmykat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xmbtcxqmexqjzkkhblssekjiyfyltity","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668313,"databaseName":"models_schema","ddl":"CREATE TABLE `grmuxqmusubjsziwgvwmpopfcnqtgvps` (\n `bxptisjslcdommqdzebvfzelygbcpjte` int NOT NULL,\n `xlwgammxbuzfpwrlqnxppauwhmmsomrq` int DEFAULT NULL,\n `alnczgvjcomdknmuclpbfvryvacmxbiv` int DEFAULT NULL,\n `ujykcolzonmurizfqvdlqxacbmzlpwcq` int DEFAULT NULL,\n `gjtaakajczopxpzzcmwpwqmdkhfftnrl` int DEFAULT NULL,\n `girbmxmlobizoexezobupipxqquapibg` int DEFAULT NULL,\n `bqzydesqwkknyhvtppruvoxsjdrjlmte` int DEFAULT NULL,\n `eemxgfejaqokdamxzylifylelvturdqh` int DEFAULT NULL,\n `cnjvpyxnrdemlawhoimxanyispvokczb` int DEFAULT NULL,\n `ompouyoueozqcwskplyxezdmhwpznwwi` int DEFAULT NULL,\n `gxhoeobowtxutqkzmwhwkaescveqrmqz` int DEFAULT NULL,\n `lthhvhyjvdjszwlpsldoutfafaolbbaj` int DEFAULT NULL,\n `uxxfvjkwxgoqfipibwikaiirtxplmhrf` int DEFAULT NULL,\n `lnjfqmcfvstitpysrbrnxgdpzbtapfcg` int DEFAULT NULL,\n `vukaqnrrtqadtjmcoxbkxkzfcnbadzit` int DEFAULT NULL,\n `epreqlmtfybrevaosgdgpibpgdvnmdeq` int DEFAULT NULL,\n `sqlfqlgrcnoplonhvswjtpotylpkmpsc` int DEFAULT NULL,\n `zrfmarhxapjknaxqxeqvrsnqldbgjjcp` int DEFAULT NULL,\n `zztfdqwkasvkpyjcopdkqiwdskmqbwae` int DEFAULT NULL,\n `ufbzzdfghurdmtfllayphwzjxqnmcfsc` int DEFAULT NULL,\n `hubymnoznavqmslostsflkrwcbcofrbz` int DEFAULT NULL,\n `gwbuackqmmzoptwoynidwkhhpikkpzmd` int DEFAULT NULL,\n `amglwgfpuyxlsakbnqchoirtpagdaxnb` int DEFAULT NULL,\n `kumbtxmhgfgmjkcjdwgyhfljahcgbrdq` int DEFAULT NULL,\n `wixdfygmokmkspncrfcbumfnapdqvtyb` int DEFAULT NULL,\n `bnqosjgvracayzovvrqbtddngdarlumy` int DEFAULT NULL,\n `hlrqmanwknubpmiyhzwehchwzlfycqko` int DEFAULT NULL,\n `mnpcfrhoihrawkcwhsmtpueblyqwlfuu` int DEFAULT NULL,\n `lujvpjytvnasixhynggfcxqkizbvlqww` int DEFAULT NULL,\n `iqpqkaogreedowphdjxlwnpazvjhhagv` int DEFAULT NULL,\n `sdkiqoxxhgjikauiabacirrdipevsbcr` int DEFAULT NULL,\n `docmaflxzgwwvkdjxigynfcnsxxcuttq` int DEFAULT NULL,\n `xnpxbbzadbydeuvcsnlhvxulwmgvtlav` int DEFAULT NULL,\n `tafalfustcsubhvlnelshixissmagdwf` int DEFAULT NULL,\n `jflvxqhwuhodqcuhdycgmcbishojmhtt` int DEFAULT NULL,\n `rhafxnwllapwdsemkraqaxhzdgrfrrdd` int DEFAULT NULL,\n `jdlzkfjdfcislsyfkgbkpmwubleozcbu` int DEFAULT NULL,\n `phvgmofnfjnsislipnoetdnvwoubbama` int DEFAULT NULL,\n `iqtkqlabcknohtzehlwmsgomkepzpmde` int DEFAULT NULL,\n `bftcjvnrciqzcemuinhdmmtdgrnzpthg` int DEFAULT NULL,\n `xpmltbkqzmibwodufpdylioxfmpyiseu` int DEFAULT NULL,\n `nzjgdftcgthrldguffannglzovaglzpi` int DEFAULT NULL,\n `zxfveltgoykdjanslsocvzfmudkaiygh` int DEFAULT NULL,\n `uvakehvzodkwihsefviepsrocckffhqz` int DEFAULT NULL,\n `qycpoarhwagednsutasqyxxkvivapqwn` int DEFAULT NULL,\n `lmeavxpddgvjhuvtzpambajjebaqgqoe` int DEFAULT NULL,\n `lvazsfxbnsipvupyzzvawftspwbzbowg` int DEFAULT NULL,\n `lnfefdaiwnzgpidmgwmeufzorajxllma` int DEFAULT NULL,\n `cpwzewzhfsumglxixqefhsahrbjeiaiq` int DEFAULT NULL,\n `hhdoomiftxsmoloycuqcrizpqewemefs` int DEFAULT NULL,\n `sdpfjjjqentmymvujfxfplrwjalwpple` int DEFAULT NULL,\n `gemltltujpklvabmidjxoqmxbksgpvtt` int DEFAULT NULL,\n `itblgpbmmjlbxfbdjjnrgwzpfnahuzsl` int DEFAULT NULL,\n `mdsaedruryufbmnsawtteowpilnoidjp` int DEFAULT NULL,\n `hsvaaeviybxlbqpwojkreagzqfbapyhn` int DEFAULT NULL,\n `uouvmjupzaihzfceycouwungjxqzobbs` int DEFAULT NULL,\n `sfdfgsxmvdsjyupjgszhrfvvufqswbhc` int DEFAULT NULL,\n `lggtrifvijkbeqgwwfefeuqxlqqtqquf` int DEFAULT NULL,\n `sltjsbwqgfujcgiyvdrmevhixvmkdhhr` int DEFAULT NULL,\n `xthoqhlgslkbbeylduoeebqfwjzqdqaw` int DEFAULT NULL,\n `lytlippaydletizcpeflvilitedytmzv` int DEFAULT NULL,\n `yeljpcmhxymwaathfqykgqatfhudkmgc` int DEFAULT NULL,\n `lzrjckinckgkvnwbigtmthqdppgrzvnm` int DEFAULT NULL,\n `rothkyfhncloyppvoposzlebllpeaiaq` int DEFAULT NULL,\n `noxqjxnszgtprponycpnspxvxoahwaoy` int DEFAULT NULL,\n `sebwkcukjquzyhnelqcaczlnxoyfhuda` int DEFAULT NULL,\n `lkvegqytpxzvdlzeurzdgqpenaoqctbf` int DEFAULT NULL,\n `bkdbhwrpkwdntqccvluqsfepyssotfvb` int DEFAULT NULL,\n `vtjojgjbnmconwagyztonelwakvtblkk` int DEFAULT NULL,\n `yobfwcwufipddiogqyzaabfortenwrfk` int DEFAULT NULL,\n `bebshvjehqjzlgpugedverxqtgacbyob` int DEFAULT NULL,\n `cwpflxbwnykuzovirbytlmjvypdkbpks` int DEFAULT NULL,\n `zkhzehsqcuhkucnegwsckkdntsdfopfc` int DEFAULT NULL,\n `hlxbuuyhpuctrqwforwiyduiabkckmmi` int DEFAULT NULL,\n `fbtvugedqvtbtlwucxsgexiopylcsptv` int DEFAULT NULL,\n `xxpjpdpgqligfefxtqtkpjisrovhgmdg` int DEFAULT NULL,\n `ggngcefztejwabajooanimnirtrqixes` int DEFAULT NULL,\n `eaqzzlfkgswntjyzyqhyudphpijnfxqu` int DEFAULT NULL,\n `elavnoimqzrmrdikanmqwetjpbhnumhk` int DEFAULT NULL,\n `vznudohigyfaumriqaooedxvtjttfguw` int DEFAULT NULL,\n `bfpepkfasvlwcdnlsmppwcrjfuwcvpkc` int DEFAULT NULL,\n `bfzbqmxpgqsozalapvhuevsurzyovxjb` int DEFAULT NULL,\n `jjvmugzlswevsetwdnzxtrzxtcunzbfa` int DEFAULT NULL,\n `znqwfnbprrmwlnntvcttmhfmmrlkizgl` int DEFAULT NULL,\n `bjzelccpochtupsxgysetotcqjjcmhmz` int DEFAULT NULL,\n `eogeqwrvhasdjbaxzaeawmsecmjrmqza` int DEFAULT NULL,\n `ovfczxlvvxrbicobbikmcdgssdbjwvaw` int DEFAULT NULL,\n `evnuqjdkqflemvhgdpwrnnhrujmzsawh` int DEFAULT NULL,\n `xtnrwefmdhhazrmtaijgnuremvnuhjzc` int DEFAULT NULL,\n `llbkrshoikhqeumwpimoylcrcpafaiwi` int DEFAULT NULL,\n `sqocepfturohygfugbwyjshxuhiqmstd` int DEFAULT NULL,\n `ctgugpsbmijnmviholhkugjbzpvukeqt` int DEFAULT NULL,\n `rjngaoujkphuaeepflozrazqaouyoylh` int DEFAULT NULL,\n `kmlgygebfgpefcytgdrqepwehjftobxc` int DEFAULT NULL,\n `krektrebaxhksoanaenseegsmphjjnkm` int DEFAULT NULL,\n `qowiecfesyjfioqcwuwfhwiwobsokjzx` int DEFAULT NULL,\n `hnjkeedwruorflkgdhpyhljfhhsupyjn` int DEFAULT NULL,\n `utqrfavntqjdafpwbpycxnaernzgjoph` int DEFAULT NULL,\n `eufphpdyiakhodgrndvlickwkkplbilq` int DEFAULT NULL,\n `nrexdgralhvfsildepopcvrifdaluerx` int DEFAULT NULL,\n PRIMARY KEY (`bxptisjslcdommqdzebvfzelygbcpjte`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"grmuxqmusubjsziwgvwmpopfcnqtgvps\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["bxptisjslcdommqdzebvfzelygbcpjte"],"columns":[{"name":"bxptisjslcdommqdzebvfzelygbcpjte","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"xlwgammxbuzfpwrlqnxppauwhmmsomrq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"alnczgvjcomdknmuclpbfvryvacmxbiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujykcolzonmurizfqvdlqxacbmzlpwcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjtaakajczopxpzzcmwpwqmdkhfftnrl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"girbmxmlobizoexezobupipxqquapibg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqzydesqwkknyhvtppruvoxsjdrjlmte","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eemxgfejaqokdamxzylifylelvturdqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnjvpyxnrdemlawhoimxanyispvokczb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ompouyoueozqcwskplyxezdmhwpznwwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gxhoeobowtxutqkzmwhwkaescveqrmqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lthhvhyjvdjszwlpsldoutfafaolbbaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxxfvjkwxgoqfipibwikaiirtxplmhrf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lnjfqmcfvstitpysrbrnxgdpzbtapfcg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vukaqnrrtqadtjmcoxbkxkzfcnbadzit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"epreqlmtfybrevaosgdgpibpgdvnmdeq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sqlfqlgrcnoplonhvswjtpotylpkmpsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zrfmarhxapjknaxqxeqvrsnqldbgjjcp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zztfdqwkasvkpyjcopdkqiwdskmqbwae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ufbzzdfghurdmtfllayphwzjxqnmcfsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hubymnoznavqmslostsflkrwcbcofrbz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gwbuackqmmzoptwoynidwkhhpikkpzmd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"amglwgfpuyxlsakbnqchoirtpagdaxnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kumbtxmhgfgmjkcjdwgyhfljahcgbrdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wixdfygmokmkspncrfcbumfnapdqvtyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnqosjgvracayzovvrqbtddngdarlumy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlrqmanwknubpmiyhzwehchwzlfycqko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnpcfrhoihrawkcwhsmtpueblyqwlfuu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lujvpjytvnasixhynggfcxqkizbvlqww","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqpqkaogreedowphdjxlwnpazvjhhagv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdkiqoxxhgjikauiabacirrdipevsbcr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"docmaflxzgwwvkdjxigynfcnsxxcuttq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnpxbbzadbydeuvcsnlhvxulwmgvtlav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tafalfustcsubhvlnelshixissmagdwf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jflvxqhwuhodqcuhdycgmcbishojmhtt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhafxnwllapwdsemkraqaxhzdgrfrrdd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdlzkfjdfcislsyfkgbkpmwubleozcbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phvgmofnfjnsislipnoetdnvwoubbama","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqtkqlabcknohtzehlwmsgomkepzpmde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bftcjvnrciqzcemuinhdmmtdgrnzpthg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xpmltbkqzmibwodufpdylioxfmpyiseu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzjgdftcgthrldguffannglzovaglzpi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxfveltgoykdjanslsocvzfmudkaiygh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvakehvzodkwihsefviepsrocckffhqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qycpoarhwagednsutasqyxxkvivapqwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmeavxpddgvjhuvtzpambajjebaqgqoe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvazsfxbnsipvupyzzvawftspwbzbowg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lnfefdaiwnzgpidmgwmeufzorajxllma","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cpwzewzhfsumglxixqefhsahrbjeiaiq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhdoomiftxsmoloycuqcrizpqewemefs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdpfjjjqentmymvujfxfplrwjalwpple","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gemltltujpklvabmidjxoqmxbksgpvtt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itblgpbmmjlbxfbdjjnrgwzpfnahuzsl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mdsaedruryufbmnsawtteowpilnoidjp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hsvaaeviybxlbqpwojkreagzqfbapyhn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uouvmjupzaihzfceycouwungjxqzobbs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfdfgsxmvdsjyupjgszhrfvvufqswbhc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lggtrifvijkbeqgwwfefeuqxlqqtqquf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sltjsbwqgfujcgiyvdrmevhixvmkdhhr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xthoqhlgslkbbeylduoeebqfwjzqdqaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lytlippaydletizcpeflvilitedytmzv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yeljpcmhxymwaathfqykgqatfhudkmgc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lzrjckinckgkvnwbigtmthqdppgrzvnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rothkyfhncloyppvoposzlebllpeaiaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"noxqjxnszgtprponycpnspxvxoahwaoy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sebwkcukjquzyhnelqcaczlnxoyfhuda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lkvegqytpxzvdlzeurzdgqpenaoqctbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkdbhwrpkwdntqccvluqsfepyssotfvb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtjojgjbnmconwagyztonelwakvtblkk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yobfwcwufipddiogqyzaabfortenwrfk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bebshvjehqjzlgpugedverxqtgacbyob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwpflxbwnykuzovirbytlmjvypdkbpks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zkhzehsqcuhkucnegwsckkdntsdfopfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlxbuuyhpuctrqwforwiyduiabkckmmi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbtvugedqvtbtlwucxsgexiopylcsptv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxpjpdpgqligfefxtqtkpjisrovhgmdg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggngcefztejwabajooanimnirtrqixes","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eaqzzlfkgswntjyzyqhyudphpijnfxqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"elavnoimqzrmrdikanmqwetjpbhnumhk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vznudohigyfaumriqaooedxvtjttfguw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bfpepkfasvlwcdnlsmppwcrjfuwcvpkc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bfzbqmxpgqsozalapvhuevsurzyovxjb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjvmugzlswevsetwdnzxtrzxtcunzbfa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znqwfnbprrmwlnntvcttmhfmmrlkizgl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjzelccpochtupsxgysetotcqjjcmhmz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eogeqwrvhasdjbaxzaeawmsecmjrmqza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovfczxlvvxrbicobbikmcdgssdbjwvaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evnuqjdkqflemvhgdpwrnnhrujmzsawh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xtnrwefmdhhazrmtaijgnuremvnuhjzc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llbkrshoikhqeumwpimoylcrcpafaiwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sqocepfturohygfugbwyjshxuhiqmstd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctgugpsbmijnmviholhkugjbzpvukeqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjngaoujkphuaeepflozrazqaouyoylh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kmlgygebfgpefcytgdrqepwehjftobxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"krektrebaxhksoanaenseegsmphjjnkm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qowiecfesyjfioqcwuwfhwiwobsokjzx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hnjkeedwruorflkgdhpyhljfhhsupyjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utqrfavntqjdafpwbpycxnaernzgjoph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eufphpdyiakhodgrndvlickwkkplbilq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nrexdgralhvfsildepopcvrifdaluerx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668344,"databaseName":"models_schema","ddl":"CREATE TABLE `gsrskijzyhcygzvokrbnmkbtnlfyglog` (\n `efraljbcqbnruygmdcmqwxwxqwbzglpd` int NOT NULL,\n `axjktinpuujnwtseafnqwnswueucovxo` int DEFAULT NULL,\n `bxyfjzpfqijqqqdhbusqsopmafnplkec` int DEFAULT NULL,\n `wwyqqvwjbtvqqovkappzcydsgqurgsyu` int DEFAULT NULL,\n `qwwsaysjfygtqpzjqmboolfhejepidwj` int DEFAULT NULL,\n `cgvvvmfafupycbysldeirsvsueoazfiw` int DEFAULT NULL,\n `tlwuilpmzdlcpfifitilvwzdtprxpbhd` int DEFAULT NULL,\n `lglmqwcfrhzvfjfdlrvsctzowgasfbgp` int DEFAULT NULL,\n `yrvkwkhbfubgnvciqwhcbltwlnkabulk` int DEFAULT NULL,\n `efbxamjronudwwlbipzyrqxkjakmabfz` int DEFAULT NULL,\n `unyrrcpwxjedemdsqwexpytlqlzwlhdu` int DEFAULT NULL,\n `fhimfsyvcbremzrdpkmrosrvfdqskilk` int DEFAULT NULL,\n `zeoraantcpwiwvjlrgywaotvkfjzngpw` int DEFAULT NULL,\n `xisftxkllimwccpvyguvpxgxkvvmshos` int DEFAULT NULL,\n `itwyiuaadtgkwcupkwzrlmxdlyvswcyo` int DEFAULT NULL,\n `wwtyudvudbmbnrhzddsfocoxnwbaxnjt` int DEFAULT NULL,\n `rcejrylbkmtbwbxnokrkypaldlbqamqz` int DEFAULT NULL,\n `zbzkvqsieopewgyjanygotecofpicgoe` int DEFAULT NULL,\n `wqummeiksdlewxsyjyoktjabzpnieort` int DEFAULT NULL,\n `oxkrfwpkexafozqvxhlmgymhgrkdkeuq` int DEFAULT NULL,\n `nkgxbgcgycdvqjwhzmbfskrwxblusjdu` int DEFAULT NULL,\n `cphibuvajxhpgccusoaeviqfinviswci` int DEFAULT NULL,\n `nvsnmwaxxzcwswmuqjloeedpvluauwmf` int DEFAULT NULL,\n `lzcjapmelwkxewdjmjrarlvcqomwmxrz` int DEFAULT NULL,\n `hfdldpirjyfgdydjxcnvwvbvtpyfbolc` int DEFAULT NULL,\n `qsslxiodqpsfohveftbvfveztohlnlmo` int DEFAULT NULL,\n `nnojfvfkuznxxogbrwctjcvvhcgbglfe` int DEFAULT NULL,\n `pudkhhktoadfqfqzfokzbpjpvjkuweez` int DEFAULT NULL,\n `kknykayneqypvwwwgiwyphorifubwygp` int DEFAULT NULL,\n `mytrzqlgkqadmchhygtfqdkukxvgvrcy` int DEFAULT NULL,\n `oyufwcjycnhhtyhdknryojyjasguodxj` int DEFAULT NULL,\n `pzygrqixwyjfwblcsfgsfirruawgpgbr` int DEFAULT NULL,\n `uptpwenqhihorzenbmfqilsyujhoroky` int DEFAULT NULL,\n `fcuratiodbohyqgpwemmdaxfyvehjhqv` int DEFAULT NULL,\n `flivbtqjbwrmircjkwubwuzxvhhpnnxi` int DEFAULT NULL,\n `majftjcbtrtjzpmpxrcxatafhqlnxgst` int DEFAULT NULL,\n `qtlthmcnemwgsptaetajjffintnajbzp` int DEFAULT NULL,\n `csntliyldyckkjobohxmzmxicqpuzamn` int DEFAULT NULL,\n `rjslewgzjmteifxmbvhkrbkandgvrdrn` int DEFAULT NULL,\n `drxvjipealwgpqdlctnygbehimmfvdwb` int DEFAULT NULL,\n `zndkllmlacvncswluqshkvhqrbrffutx` int DEFAULT NULL,\n `bdmpefysensrrrjldfqqwpeqgvyuocqn` int DEFAULT NULL,\n `tzegxcuvgdwdfudxgfarbdnzciumeyih` int DEFAULT NULL,\n `rvpvhxxdexdhsbjedvwgxcrtnhwdeidr` int DEFAULT NULL,\n `etlrfyocwqccsqijhveqkoptaiihukjq` int DEFAULT NULL,\n `xrsnbkwhpetdwrazsuebzeaowkymhmlj` int DEFAULT NULL,\n `maqjhctbcgvyzovflwauncpqnaeoubvg` int DEFAULT NULL,\n `gohmjrybjtcfsebqtoyfsgdrwjsyuadn` int DEFAULT NULL,\n `mtvtmqemswpkmvawjfrxfkcekbcupyoy` int DEFAULT NULL,\n `upquomjnplxyykppnqbaocatbjqdqpjv` int DEFAULT NULL,\n `uopdytinaqwvndbugjhqycshzylucwfq` int DEFAULT NULL,\n `uyhxcevnjrnnfykzmlumxlzouefnctkz` int DEFAULT NULL,\n `hliirmcdknbhmtstreilyltyytizzgzg` int DEFAULT NULL,\n `ksfxvrvttlqhlvimqkmhyqmixkvtatvx` int DEFAULT NULL,\n `nafufflmjwhfmmvnivizitujikduyqnx` int DEFAULT NULL,\n `vtnazfmvpzapwrhbjpfvppilizcakxmq` int DEFAULT NULL,\n `ywxhdhxtrcxtyuukrgaqbrxzepcbbhrl` int DEFAULT NULL,\n `mmrioydifbnmuummlzeetzuwspnczytp` int DEFAULT NULL,\n `pwebsyxnfcrtakrvhkftkclxmlkfrvur` int DEFAULT NULL,\n `wkdzzausxpdwnxljpgbiqnmqdyvqnprh` int DEFAULT NULL,\n `qkzrxnpiukcauopyficzrjfntqhphysh` int DEFAULT NULL,\n `gkhhedboqbpusqmltnhznslebbiydpae` int DEFAULT NULL,\n `temnmkbqtjfciuckctmpwqjhtuymmvor` int DEFAULT NULL,\n `audrfqfabjhvyzsnafsysmqtoiavdoxk` int DEFAULT NULL,\n `lgnpqxajvygltccmuuvvngqylcllanfx` int DEFAULT NULL,\n `dsexhcketmwxdgyndjngoprmwpwpzjvn` int DEFAULT NULL,\n `rwyshmhjwuahzhvprmaizvgherayqwgo` int DEFAULT NULL,\n `dxgmrgsrsjxslcopuzellznitqtpqtbe` int DEFAULT NULL,\n `uxsykfqnpgupnjiueujwsngbvyxymzpw` int DEFAULT NULL,\n `gfiolrynkuoophjeifkfzxkzagqboylm` int DEFAULT NULL,\n `gatdpgczxllxfgrpwzavmgcqamwjayiw` int DEFAULT NULL,\n `mywojrecwoymzmkrdylxnceppzofqqhv` int DEFAULT NULL,\n `wztgpdrvtiarlxrgqcbluzawfrueguam` int DEFAULT NULL,\n `yfvewcvxbaapczicwsqcfwkaojflshjq` int DEFAULT NULL,\n `rpknuppgybtbqwjywukewztzeodzvowu` int DEFAULT NULL,\n `lfvkonbgmsybnpjlibpuxgyznsrjxcmc` int DEFAULT NULL,\n `obmiwgfzjoayknyarfcljrtzsgezlumc` int DEFAULT NULL,\n `uahqiktgmvyfkjhyypmhajnxhyzjrjnb` int DEFAULT NULL,\n `tjleggjykbdbvmqnongccmylghzvvdls` int DEFAULT NULL,\n `rnknupbzmhgxoeqdeljaryqwibmbnojg` int DEFAULT NULL,\n `btcncxuorqiknjnzkwuyzzdktorodden` int DEFAULT NULL,\n `joyrwphwollhhdwygqhgxkjphhziuoyg` int DEFAULT NULL,\n `kczihwjfxzhpzpsktqxhiaqyjpytxwuq` int DEFAULT NULL,\n `ucfjjwzdifjegysfcfbzakgmxtwjyuzn` int DEFAULT NULL,\n `mhscfomtkmwwtncdtplabjzbhnndcyqf` int DEFAULT NULL,\n `ytmtfhdluibmztswaysxffcsvflvwfuc` int DEFAULT NULL,\n `memxnjrdfnddsqiphvfjsgphezblyesu` int DEFAULT NULL,\n `bzasvvjexqaqxmhvlceyasvkraqvyasa` int DEFAULT NULL,\n `ohegvpctejseekenuslavxqgifybtjsk` int DEFAULT NULL,\n `vrqpayvhblmlhxrbajasuvgooxhvrxuy` int DEFAULT NULL,\n `duytbfavkxxwbvnoswepjxtpipcbajmh` int DEFAULT NULL,\n `nulseppieegfqsxtofocihealkyhjjrh` int DEFAULT NULL,\n `abrqlroskagxxjclmirwcuxxsoatxjte` int DEFAULT NULL,\n `tnfiwexsftrzpdithbwmmrixsjwlkivj` int DEFAULT NULL,\n `drlzqdewbuuhlnvsllizwduqxykcwoxd` int DEFAULT NULL,\n `ujikecfxfmvydrgnuksxwzblqltzjybb` int DEFAULT NULL,\n `wjjbbpibnvqcfzllardlvlumnmyrjefw` int DEFAULT NULL,\n `jhoueviczmabbajcqxjaeuwyixtxzbnv` int DEFAULT NULL,\n `faujjugwutfcpmmxthwwolfletjewyhu` int DEFAULT NULL,\n `wamuixjdqgtuflhurihwjwrehojhgeri` int DEFAULT NULL,\n PRIMARY KEY (`efraljbcqbnruygmdcmqwxwxqwbzglpd`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"gsrskijzyhcygzvokrbnmkbtnlfyglog\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["efraljbcqbnruygmdcmqwxwxqwbzglpd"],"columns":[{"name":"efraljbcqbnruygmdcmqwxwxqwbzglpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"axjktinpuujnwtseafnqwnswueucovxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bxyfjzpfqijqqqdhbusqsopmafnplkec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwyqqvwjbtvqqovkappzcydsgqurgsyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwwsaysjfygtqpzjqmboolfhejepidwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgvvvmfafupycbysldeirsvsueoazfiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlwuilpmzdlcpfifitilvwzdtprxpbhd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lglmqwcfrhzvfjfdlrvsctzowgasfbgp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yrvkwkhbfubgnvciqwhcbltwlnkabulk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"efbxamjronudwwlbipzyrqxkjakmabfz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unyrrcpwxjedemdsqwexpytlqlzwlhdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhimfsyvcbremzrdpkmrosrvfdqskilk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zeoraantcpwiwvjlrgywaotvkfjzngpw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xisftxkllimwccpvyguvpxgxkvvmshos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itwyiuaadtgkwcupkwzrlmxdlyvswcyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwtyudvudbmbnrhzddsfocoxnwbaxnjt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcejrylbkmtbwbxnokrkypaldlbqamqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbzkvqsieopewgyjanygotecofpicgoe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqummeiksdlewxsyjyoktjabzpnieort","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oxkrfwpkexafozqvxhlmgymhgrkdkeuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nkgxbgcgycdvqjwhzmbfskrwxblusjdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cphibuvajxhpgccusoaeviqfinviswci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvsnmwaxxzcwswmuqjloeedpvluauwmf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lzcjapmelwkxewdjmjrarlvcqomwmxrz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfdldpirjyfgdydjxcnvwvbvtpyfbolc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qsslxiodqpsfohveftbvfveztohlnlmo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nnojfvfkuznxxogbrwctjcvvhcgbglfe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pudkhhktoadfqfqzfokzbpjpvjkuweez","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kknykayneqypvwwwgiwyphorifubwygp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mytrzqlgkqadmchhygtfqdkukxvgvrcy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oyufwcjycnhhtyhdknryojyjasguodxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pzygrqixwyjfwblcsfgsfirruawgpgbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uptpwenqhihorzenbmfqilsyujhoroky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcuratiodbohyqgpwemmdaxfyvehjhqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flivbtqjbwrmircjkwubwuzxvhhpnnxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"majftjcbtrtjzpmpxrcxatafhqlnxgst","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtlthmcnemwgsptaetajjffintnajbzp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"csntliyldyckkjobohxmzmxicqpuzamn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjslewgzjmteifxmbvhkrbkandgvrdrn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drxvjipealwgpqdlctnygbehimmfvdwb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zndkllmlacvncswluqshkvhqrbrffutx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bdmpefysensrrrjldfqqwpeqgvyuocqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tzegxcuvgdwdfudxgfarbdnzciumeyih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rvpvhxxdexdhsbjedvwgxcrtnhwdeidr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"etlrfyocwqccsqijhveqkoptaiihukjq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xrsnbkwhpetdwrazsuebzeaowkymhmlj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"maqjhctbcgvyzovflwauncpqnaeoubvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gohmjrybjtcfsebqtoyfsgdrwjsyuadn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtvtmqemswpkmvawjfrxfkcekbcupyoy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upquomjnplxyykppnqbaocatbjqdqpjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uopdytinaqwvndbugjhqycshzylucwfq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uyhxcevnjrnnfykzmlumxlzouefnctkz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hliirmcdknbhmtstreilyltyytizzgzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ksfxvrvttlqhlvimqkmhyqmixkvtatvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nafufflmjwhfmmvnivizitujikduyqnx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtnazfmvpzapwrhbjpfvppilizcakxmq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywxhdhxtrcxtyuukrgaqbrxzepcbbhrl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmrioydifbnmuummlzeetzuwspnczytp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwebsyxnfcrtakrvhkftkclxmlkfrvur","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wkdzzausxpdwnxljpgbiqnmqdyvqnprh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qkzrxnpiukcauopyficzrjfntqhphysh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkhhedboqbpusqmltnhznslebbiydpae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"temnmkbqtjfciuckctmpwqjhtuymmvor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"audrfqfabjhvyzsnafsysmqtoiavdoxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgnpqxajvygltccmuuvvngqylcllanfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dsexhcketmwxdgyndjngoprmwpwpzjvn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rwyshmhjwuahzhvprmaizvgherayqwgo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxgmrgsrsjxslcopuzellznitqtpqtbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxsykfqnpgupnjiueujwsngbvyxymzpw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfiolrynkuoophjeifkfzxkzagqboylm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gatdpgczxllxfgrpwzavmgcqamwjayiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mywojrecwoymzmkrdylxnceppzofqqhv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wztgpdrvtiarlxrgqcbluzawfrueguam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfvewcvxbaapczicwsqcfwkaojflshjq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpknuppgybtbqwjywukewztzeodzvowu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfvkonbgmsybnpjlibpuxgyznsrjxcmc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obmiwgfzjoayknyarfcljrtzsgezlumc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uahqiktgmvyfkjhyypmhajnxhyzjrjnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjleggjykbdbvmqnongccmylghzvvdls","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnknupbzmhgxoeqdeljaryqwibmbnojg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"btcncxuorqiknjnzkwuyzzdktorodden","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"joyrwphwollhhdwygqhgxkjphhziuoyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kczihwjfxzhpzpsktqxhiaqyjpytxwuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ucfjjwzdifjegysfcfbzakgmxtwjyuzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhscfomtkmwwtncdtplabjzbhnndcyqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytmtfhdluibmztswaysxffcsvflvwfuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"memxnjrdfnddsqiphvfjsgphezblyesu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bzasvvjexqaqxmhvlceyasvkraqvyasa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohegvpctejseekenuslavxqgifybtjsk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vrqpayvhblmlhxrbajasuvgooxhvrxuy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"duytbfavkxxwbvnoswepjxtpipcbajmh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nulseppieegfqsxtofocihealkyhjjrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"abrqlroskagxxjclmirwcuxxsoatxjte","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnfiwexsftrzpdithbwmmrixsjwlkivj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drlzqdewbuuhlnvsllizwduqxykcwoxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujikecfxfmvydrgnuksxwzblqltzjybb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjjbbpibnvqcfzllardlvlumnmyrjefw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jhoueviczmabbajcqxjaeuwyixtxzbnv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"faujjugwutfcpmmxthwwolfletjewyhu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wamuixjdqgtuflhurihwjwrehojhgeri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668375,"databaseName":"models_schema","ddl":"CREATE TABLE `hchcurdohntyovpxuhajvwyugafgeysr` (\n `ysonfbupeivnjtbrvxbdsvzckqfambws` int NOT NULL,\n `suaeepkdcxxkllzaeoflhgejwsmccrdz` int DEFAULT NULL,\n `ryjanutcwjxneumbdidfwoqdofibeneh` int DEFAULT NULL,\n `skatsoqjgvmuiwfeptxrsghhmcymlhgj` int DEFAULT NULL,\n `hfgadpgsxzrphqoxcnbiacdqpoatakia` int DEFAULT NULL,\n `pjethlvbwahlvdefnfjgqeseudyvhvce` int DEFAULT NULL,\n `iwjvshuctjvvmomxixrqeyvnipowotjq` int DEFAULT NULL,\n `ojzelqgskzarffydcmfrlzgrccthmebv` int DEFAULT NULL,\n `jabjeqeojxwfyxwwyhcuaibpdqdmiina` int DEFAULT NULL,\n `sdkvjaktmwnspxyoeftszgiqnwovhdrb` int DEFAULT NULL,\n `tlkvnvtjqqvzsivyottslegqibjlqayv` int DEFAULT NULL,\n `yyucokjjqggroyzycogqvkrabawzvxxd` int DEFAULT NULL,\n `ikrntfnwclbydypfiqdcecerxyubaulv` int DEFAULT NULL,\n `xmzctnhwqkwvvjjxbpbwixkzbrosvzue` int DEFAULT NULL,\n `hxkilpxiqaeddnolwkvkcsjlsmjrjfwp` int DEFAULT NULL,\n `gugarfvschzuizdybsfhbobbfyjfppzt` int DEFAULT NULL,\n `ohzxasgknhczvpkjomfwfbbcckvnhvaa` int DEFAULT NULL,\n `rpfhcvoteukkhnfvdyerqnedctpftqcx` int DEFAULT NULL,\n `lgggnbtbzwzjwpfcgvevflkmuurxdrzs` int DEFAULT NULL,\n `scfkoudgsilqfvhtbfxvlbapoailngdb` int DEFAULT NULL,\n `tllmlgfxjqvlslwgryoqhfmpbeqcboyy` int DEFAULT NULL,\n `fmrnrpehycltuakzvnuuhnuggkufanrl` int DEFAULT NULL,\n `dcdbhhwnpgxjzvdfnpygzhdxfqbjyvgr` int DEFAULT NULL,\n `vokeqmfuteqaxbfaeoowmuoplvtltvgh` int DEFAULT NULL,\n `hqvisswoqsqocsdhaajditwdsznvxrez` int DEFAULT NULL,\n `nldlxsqsymrfcdvtvqyoviemprijdeua` int DEFAULT NULL,\n `zemhnujoksrvhnvnjrvbrguozvwjvhap` int DEFAULT NULL,\n `prgvunzuejeoumblmkfamfnvxclkextk` int DEFAULT NULL,\n `zbzyownkapxiqbpczoxzhrxtxoesbgty` int DEFAULT NULL,\n `exbfoobszaihtlgvtisrzfroqtjtjhgl` int DEFAULT NULL,\n `wrbossuygsetgcvrekxcruvuiddwvoev` int DEFAULT NULL,\n `atpyrltsnfhofkgoepclsomcpofoqrzy` int DEFAULT NULL,\n `gcorsrnopdtrjbqfuxzyajaxidyedacv` int DEFAULT NULL,\n `kjjvznfcjnprifuztfohpjsualrpssec` int DEFAULT NULL,\n `hvdyticorzwyaadaezwoffhdhmqkqdey` int DEFAULT NULL,\n `vsvfaymsnsgneaxirvqmwbudtolhffto` int DEFAULT NULL,\n `rdouupjibhstozzpfkuhdnhyzdlovfcp` int DEFAULT NULL,\n `tmrqwvisshlkkfszucazqsddstiwhwej` int DEFAULT NULL,\n `uvzmizbsxnyclhfpkjxpdbbofwyjrjuw` int DEFAULT NULL,\n `zpdvgznrxpdgjtkschbanovpvdkqeoac` int DEFAULT NULL,\n `yqshjkbzcopfnwabpkcfahctzmipuqbp` int DEFAULT NULL,\n `jicgigrxjelapesuuthywmjqbjesmrcg` int DEFAULT NULL,\n `kdqwyhdaahnmdagfjvhouemudantyonp` int DEFAULT NULL,\n `tvtvfvrtwcletzmekiiwwbdglzjnkqbs` int DEFAULT NULL,\n `kmhdbgsedmrjusatecwgpdjhmcqzclhr` int DEFAULT NULL,\n `flpdnrvxgccauugzwakxrmmsovjzbbvw` int DEFAULT NULL,\n `yjryanfbgsvlhjmsuivbniyvolwyakkd` int DEFAULT NULL,\n `hmnpiczfxehrkeilipulwsevvfblonaw` int DEFAULT NULL,\n `oqzytydiwmxcorzztkjisshufuyfkwhe` int DEFAULT NULL,\n `rkhiywynrglxfsrabtkfgvlxoysefril` int DEFAULT NULL,\n `nzxjjpjpbfmbumwfsquczknajqkdjhqt` int DEFAULT NULL,\n `vnttvrejptggcsshiiiopazpgtztyrzp` int DEFAULT NULL,\n `ixfejzxlfuvpwtnnlirgjfxdgvsdrqqg` int DEFAULT NULL,\n `wrtzpnnpbejcgapceqtsucinctqksayo` int DEFAULT NULL,\n `zoyuywkrvsmilyrfrgmzddporrqvzjoh` int DEFAULT NULL,\n `ycjsxxizbmwmdepmuqwifjgmckyapgsd` int DEFAULT NULL,\n `mirqbqhrbdqbbeojxxalhuphzmvovzds` int DEFAULT NULL,\n `zwrreargydesrbmjhlzkbilzrrprfkoa` int DEFAULT NULL,\n `nrxfyhwqbviubsduvaufstvfwaqdsbxd` int DEFAULT NULL,\n `jwgmafzzvakguijzuvqqxmkdsqduasoz` int DEFAULT NULL,\n `alrthtlcrelcknrscfbhgfqgbprytyko` int DEFAULT NULL,\n `egjqftwkfryidmmeuzffwnohddtjlgog` int DEFAULT NULL,\n `ciyujvkcohjpduqkegbxikpnwhgiabxp` int DEFAULT NULL,\n `rtvxvldkoiuqlfwfjiyqbumziveygtjf` int DEFAULT NULL,\n `hjwbjxzkmnjosxlfyetdomhvpupzwmnd` int DEFAULT NULL,\n `dlgtdbzfwxdsphdyskkuxdzxiwtbcalb` int DEFAULT NULL,\n `ykwycpxhwqjcjhenzmxqokobbvywxduz` int DEFAULT NULL,\n `vwdcwowvmtuhhsnwfdaxweeewhotegtu` int DEFAULT NULL,\n `mcxxxdlcktmhmqreaztibymcrrcgvllb` int DEFAULT NULL,\n `pvlydxrnabsnilkwgpeixypzrtofvddh` int DEFAULT NULL,\n `gycaxofasvaziszdkbyoorxckdzomqgw` int DEFAULT NULL,\n `kdigvcteabmcwobjszslikhiwtwbsvhn` int DEFAULT NULL,\n `uxlcddrafjkrlfjnbhnnwpotxzhkxrje` int DEFAULT NULL,\n `gtsdbohaosruuinwuougkwnfwihrnzti` int DEFAULT NULL,\n `umoqishlausrjozshuafqvyzyxuckjzz` int DEFAULT NULL,\n `kechfkgzpyyhbiilxldowjjyqqgqqdhk` int DEFAULT NULL,\n `tpanmdtgqxyismsfwfhtuizieqckghoq` int DEFAULT NULL,\n `sggqzgksmolmtdhmbxnxsjuhpabdanku` int DEFAULT NULL,\n `kqolngzdcsctigpzfzlbouaogocsmzne` int DEFAULT NULL,\n `gcxemyzmvpwnjjvfyzbzlsqddswhtaca` int DEFAULT NULL,\n `ymhfnbqhmmauktykiscoqcaogztqehor` int DEFAULT NULL,\n `guolyadrxwuouobrjjrokmpthwaoovea` int DEFAULT NULL,\n `azrqjebsmywxekidnhoqxodnqzozbvqs` int DEFAULT NULL,\n `epdhlbvsxoqycavqwgwnlqrursypafrr` int DEFAULT NULL,\n `dpjvgrafrgmvcrhkbejxojkqnoswnldd` int DEFAULT NULL,\n `xautzhxonfqpbewjzwfgkjwwoenuhdzp` int DEFAULT NULL,\n `bivvmyksahieihktvijqyhfdqugvyqcb` int DEFAULT NULL,\n `hebodmwvpuwvhuwbioncrnumyehymatt` int DEFAULT NULL,\n `lsihairbywdysdjkmhnbwtnewqetrkxa` int DEFAULT NULL,\n `xtcxapqvmnelenjxwoaoryxhryaxepnn` int DEFAULT NULL,\n `hukatwxzrdfammamqrkfqngttmqsvnlu` int DEFAULT NULL,\n `cvhpjwkvrhyhcpbysfprisfsdesuxhkt` int DEFAULT NULL,\n `qhdzrpejuwgaygqrdgyfmotnragqhxdb` int DEFAULT NULL,\n `duqpcrpurucecbiymwpgjrhfvudbfxau` int DEFAULT NULL,\n `hmfktvhjgwfrwjqysforzbirrslkphlm` int DEFAULT NULL,\n `pimpjatqtzlkilmwkwybdcjydwgrgtlp` int DEFAULT NULL,\n `zjjkupsiahzgdejutslqlbcdakqvabio` int DEFAULT NULL,\n `fsprxxjhbhenzxzmbjreozmtuwpiqntp` int DEFAULT NULL,\n `rxbpwhppgoibersqmlzdxzfgdufolwto` int DEFAULT NULL,\n `wejwkfqxvpvndqreuqfdxyluzyaqoecu` int DEFAULT NULL,\n PRIMARY KEY (`ysonfbupeivnjtbrvxbdsvzckqfambws`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"hchcurdohntyovpxuhajvwyugafgeysr\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["ysonfbupeivnjtbrvxbdsvzckqfambws"],"columns":[{"name":"ysonfbupeivnjtbrvxbdsvzckqfambws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"suaeepkdcxxkllzaeoflhgejwsmccrdz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ryjanutcwjxneumbdidfwoqdofibeneh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skatsoqjgvmuiwfeptxrsghhmcymlhgj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfgadpgsxzrphqoxcnbiacdqpoatakia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjethlvbwahlvdefnfjgqeseudyvhvce","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwjvshuctjvvmomxixrqeyvnipowotjq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojzelqgskzarffydcmfrlzgrccthmebv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jabjeqeojxwfyxwwyhcuaibpdqdmiina","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdkvjaktmwnspxyoeftszgiqnwovhdrb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlkvnvtjqqvzsivyottslegqibjlqayv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yyucokjjqggroyzycogqvkrabawzvxxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikrntfnwclbydypfiqdcecerxyubaulv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xmzctnhwqkwvvjjxbpbwixkzbrosvzue","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hxkilpxiqaeddnolwkvkcsjlsmjrjfwp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gugarfvschzuizdybsfhbobbfyjfppzt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohzxasgknhczvpkjomfwfbbcckvnhvaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpfhcvoteukkhnfvdyerqnedctpftqcx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgggnbtbzwzjwpfcgvevflkmuurxdrzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"scfkoudgsilqfvhtbfxvlbapoailngdb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tllmlgfxjqvlslwgryoqhfmpbeqcboyy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmrnrpehycltuakzvnuuhnuggkufanrl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcdbhhwnpgxjzvdfnpygzhdxfqbjyvgr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vokeqmfuteqaxbfaeoowmuoplvtltvgh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqvisswoqsqocsdhaajditwdsznvxrez","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nldlxsqsymrfcdvtvqyoviemprijdeua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zemhnujoksrvhnvnjrvbrguozvwjvhap","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prgvunzuejeoumblmkfamfnvxclkextk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbzyownkapxiqbpczoxzhrxtxoesbgty","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exbfoobszaihtlgvtisrzfroqtjtjhgl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wrbossuygsetgcvrekxcruvuiddwvoev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atpyrltsnfhofkgoepclsomcpofoqrzy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gcorsrnopdtrjbqfuxzyajaxidyedacv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjjvznfcjnprifuztfohpjsualrpssec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hvdyticorzwyaadaezwoffhdhmqkqdey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsvfaymsnsgneaxirvqmwbudtolhffto","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdouupjibhstozzpfkuhdnhyzdlovfcp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmrqwvisshlkkfszucazqsddstiwhwej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvzmizbsxnyclhfpkjxpdbbofwyjrjuw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zpdvgznrxpdgjtkschbanovpvdkqeoac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqshjkbzcopfnwabpkcfahctzmipuqbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jicgigrxjelapesuuthywmjqbjesmrcg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kdqwyhdaahnmdagfjvhouemudantyonp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvtvfvrtwcletzmekiiwwbdglzjnkqbs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kmhdbgsedmrjusatecwgpdjhmcqzclhr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flpdnrvxgccauugzwakxrmmsovjzbbvw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjryanfbgsvlhjmsuivbniyvolwyakkd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmnpiczfxehrkeilipulwsevvfblonaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqzytydiwmxcorzztkjisshufuyfkwhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkhiywynrglxfsrabtkfgvlxoysefril","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzxjjpjpbfmbumwfsquczknajqkdjhqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vnttvrejptggcsshiiiopazpgtztyrzp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixfejzxlfuvpwtnnlirgjfxdgvsdrqqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wrtzpnnpbejcgapceqtsucinctqksayo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zoyuywkrvsmilyrfrgmzddporrqvzjoh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ycjsxxizbmwmdepmuqwifjgmckyapgsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mirqbqhrbdqbbeojxxalhuphzmvovzds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zwrreargydesrbmjhlzkbilzrrprfkoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nrxfyhwqbviubsduvaufstvfwaqdsbxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwgmafzzvakguijzuvqqxmkdsqduasoz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"alrthtlcrelcknrscfbhgfqgbprytyko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"egjqftwkfryidmmeuzffwnohddtjlgog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ciyujvkcohjpduqkegbxikpnwhgiabxp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rtvxvldkoiuqlfwfjiyqbumziveygtjf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjwbjxzkmnjosxlfyetdomhvpupzwmnd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dlgtdbzfwxdsphdyskkuxdzxiwtbcalb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykwycpxhwqjcjhenzmxqokobbvywxduz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vwdcwowvmtuhhsnwfdaxweeewhotegtu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcxxxdlcktmhmqreaztibymcrrcgvllb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pvlydxrnabsnilkwgpeixypzrtofvddh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gycaxofasvaziszdkbyoorxckdzomqgw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kdigvcteabmcwobjszslikhiwtwbsvhn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxlcddrafjkrlfjnbhnnwpotxzhkxrje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtsdbohaosruuinwuougkwnfwihrnzti","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umoqishlausrjozshuafqvyzyxuckjzz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kechfkgzpyyhbiilxldowjjyqqgqqdhk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpanmdtgqxyismsfwfhtuizieqckghoq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sggqzgksmolmtdhmbxnxsjuhpabdanku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kqolngzdcsctigpzfzlbouaogocsmzne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gcxemyzmvpwnjjvfyzbzlsqddswhtaca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ymhfnbqhmmauktykiscoqcaogztqehor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"guolyadrxwuouobrjjrokmpthwaoovea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"azrqjebsmywxekidnhoqxodnqzozbvqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"epdhlbvsxoqycavqwgwnlqrursypafrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpjvgrafrgmvcrhkbejxojkqnoswnldd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xautzhxonfqpbewjzwfgkjwwoenuhdzp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bivvmyksahieihktvijqyhfdqugvyqcb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hebodmwvpuwvhuwbioncrnumyehymatt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lsihairbywdysdjkmhnbwtnewqetrkxa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xtcxapqvmnelenjxwoaoryxhryaxepnn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hukatwxzrdfammamqrkfqngttmqsvnlu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvhpjwkvrhyhcpbysfprisfsdesuxhkt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhdzrpejuwgaygqrdgyfmotnragqhxdb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"duqpcrpurucecbiymwpgjrhfvudbfxau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmfktvhjgwfrwjqysforzbirrslkphlm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pimpjatqtzlkilmwkwybdcjydwgrgtlp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjjkupsiahzgdejutslqlbcdakqvabio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fsprxxjhbhenzxzmbjreozmtuwpiqntp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxbpwhppgoibersqmlzdxzfgdufolwto","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wejwkfqxvpvndqreuqfdxyluzyaqoecu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668407,"databaseName":"models_schema","ddl":"CREATE TABLE `hkcokgnihhdfnawwtqjefmgjhhitamsj` (\n `jrjipngpdvqkwolpnalhyfjhkqiwlind` int NOT NULL,\n `frurxiscojimzoawbiwafbforzdzprxc` int DEFAULT NULL,\n `hjilpdjenkyoapmzwggmtgxtmiqvzjin` int DEFAULT NULL,\n `xshrtkmfnvpuwklblgpsomsfkpezxfnz` int DEFAULT NULL,\n `bvkjsqtwmxzxmvwlpbazwdzirzxwyvcq` int DEFAULT NULL,\n `tswxctabknuyzsypfsgfkxikveecifks` int DEFAULT NULL,\n `fyfhnguvjxyisukgvfqcjhtkuodifaiz` int DEFAULT NULL,\n `fgwndfhxdlmeqkezvdghjjvlajdgtdfz` int DEFAULT NULL,\n `xjpgpomelhbtlthkhzzykxssyjkrswmg` int DEFAULT NULL,\n `mwsabnqmsnaazlhybgqctkzlsoqamkvq` int DEFAULT NULL,\n `grtzpnntpbaervljgjtcvrwwghajkpdp` int DEFAULT NULL,\n `ohiqhmgroqfnqlpneczlmopdounmjjqj` int DEFAULT NULL,\n `exnatteukknkoqbbupdeqkzlkkxfotis` int DEFAULT NULL,\n `vuhmxoesexhbewognuawqhmgxpxnzqpm` int DEFAULT NULL,\n `bbbxcoxyhdregrnqsnsukmqjgtuejiuc` int DEFAULT NULL,\n `ihcypocrmvbzxmbcxsaneychctpngdgr` int DEFAULT NULL,\n `cqgibmokdhrufajccsudpaiufkmerlob` int DEFAULT NULL,\n `igdeakbvvxfctswqwrogstwikxhbfsam` int DEFAULT NULL,\n `wcstpkpvbflktsjwdvgqgbsitebkwirg` int DEFAULT NULL,\n `ynnbxzsakavacsocanfluldiqpoxyodq` int DEFAULT NULL,\n `kkpwwxlxjaljfowamvwpmimsheicbhso` int DEFAULT NULL,\n `hxgtcfywdeadaubjitytqvzqvwhzqger` int DEFAULT NULL,\n `agwujufzbwxzlkazvrkniowlqoyeygxy` int DEFAULT NULL,\n `abpzdfenvnmlhybsehqnacmlcaqhtcaw` int DEFAULT NULL,\n `vcqfxxkcrlmwrraefnkwsmpdwuwmelbz` int DEFAULT NULL,\n `ebleysrspthseevwevywaeauepgxbpwf` int DEFAULT NULL,\n `svhqliwlfkzsluurrovhwhkffdxrvxoo` int DEFAULT NULL,\n `viupaajxtzjvxfawhiebzqrhzilsefbs` int DEFAULT NULL,\n `zemqndbmxtzgiqkjknfcyelrutduqmkq` int DEFAULT NULL,\n `fpzcsqmkggolojrkorljxvewuqajxyfw` int DEFAULT NULL,\n `jxknwmxfndqfftdtdidjrypycnrjvbid` int DEFAULT NULL,\n `juyhtfyuyolnybmmxoymrriaeqqyggxd` int DEFAULT NULL,\n `zkddxbqdcvdfblqbijafzwwxzwoubunp` int DEFAULT NULL,\n `lddoaxmsztnjxxdrwypoxrbsvpcvdwqa` int DEFAULT NULL,\n `ttiazrkwmovmvkhudxlquahetkjhqccb` int DEFAULT NULL,\n `fjaflgdlozrfhmusojsrnhaxwfucfwgx` int DEFAULT NULL,\n `zjlksevjcakgxnhomxwjebybhmakftzh` int DEFAULT NULL,\n `cmrxwfoymdkkdwmfudllsnwgfqjwxzbb` int DEFAULT NULL,\n `uvtulgcbflzrdayzbholcujeekjgkcjn` int DEFAULT NULL,\n `exfekbyxxtuhwqdarfgwceppzgevpoaj` int DEFAULT NULL,\n `ubmvbwenqnseulctlxfkucvhngsmtgyn` int DEFAULT NULL,\n `bdouxxtmzdmiybvjlbigeohbvgwwotce` int DEFAULT NULL,\n `kfmjwtuwwcxvljfenhdlgskleyhosrkj` int DEFAULT NULL,\n `fdvmdujciqkqwvvitngeuzkpjtenzdsf` int DEFAULT NULL,\n `jmqornjldmzwfkylahgmckgcxfpnuuix` int DEFAULT NULL,\n `cnovsgbhkfvryifxnrbvhnhwrtussedw` int DEFAULT NULL,\n `dhrshzzpzhuywqwzvudomvkotskvoyxr` int DEFAULT NULL,\n `lhugmoclktidmkpvsueoviwwytkiwqul` int DEFAULT NULL,\n `sxkilmegpkrsfvgfnftajficmfvxmwcz` int DEFAULT NULL,\n `icdfvbtssqjflorufkjzgegflxhqrpvv` int DEFAULT NULL,\n `wwkkyfmrwxaewhszwgfdezxddpvlykco` int DEFAULT NULL,\n `myskaqxnxtikrephltvyopovsyroqbzw` int DEFAULT NULL,\n `fhbwajhrooxgzuhjbhjvyiczxbjtqwji` int DEFAULT NULL,\n `hbkycgxukkowsbpuciabybaenrqftcjg` int DEFAULT NULL,\n `cnkzaavdmwmjvhpziyyswbvicmdmttrg` int DEFAULT NULL,\n `qtconwtiyyggzqhbphcuxzqzzhbagqeg` int DEFAULT NULL,\n `xjhmbuubbywciuvzuwtmcrvtswlqghgm` int DEFAULT NULL,\n `eecitrrahnlsvtluuultaqygxnwjoclb` int DEFAULT NULL,\n `dioywewhcinreyodmlxkimvivwkkuaew` int DEFAULT NULL,\n `gmxembqaoelqlpxnfeqxtzpoawcviwwh` int DEFAULT NULL,\n `fmmuwsakjpgptapeztxridxzpvhvtncw` int DEFAULT NULL,\n `ieqswdtezpbkvyifwjhzafytuopmnoyn` int DEFAULT NULL,\n `vhxnkazcsxznpwbyygkbmzzevkyoxstl` int DEFAULT NULL,\n `fqbmkbbmezmrncxkyanryhclvdbiwxey` int DEFAULT NULL,\n `txaxpshpcgtjtydvnkgavfyvwfcjtdxv` int DEFAULT NULL,\n `javuoipmtaufkrqltkzqajtqvmmpqcjp` int DEFAULT NULL,\n `mndvxwcnyfylvqftcvpiqgbbgfxlqlck` int DEFAULT NULL,\n `fggrvdlerdybetxhthqrvwkhfonewscu` int DEFAULT NULL,\n `qcqliwjkhoxcdtpcsdzhnofjfwmcrpfs` int DEFAULT NULL,\n `bljyioclaxrefsvpbxrxbtctmaykvzsq` int DEFAULT NULL,\n `fbfhsagzbkxsiyzzjvhhnpuefdyhvbrs` int DEFAULT NULL,\n `ojzrccxkgkqssdvpjpmdiidvrblsntwu` int DEFAULT NULL,\n `atteortedrspruqihcnnklyyakrmjskj` int DEFAULT NULL,\n `zpyiedbquybhvhdlomciejmovpasuayq` int DEFAULT NULL,\n `kvmetbqhqpowipttlcxyhomerqkmhzma` int DEFAULT NULL,\n `axqyrtcqfivzlspaucmhzemuotgjkzvg` int DEFAULT NULL,\n `rbyaiegqdlnufojwgpzoqijhxzvpdtyl` int DEFAULT NULL,\n `bylwmiygzxdynyjxoicwblswwzsygdkd` int DEFAULT NULL,\n `vrtgfmwubdgzwwwikyxjzszrubvognpk` int DEFAULT NULL,\n `lagfknyjhruuzasbyrvlsroifsnmlxaj` int DEFAULT NULL,\n `retvqprtjnndeulmiwulctmlmtrkgtze` int DEFAULT NULL,\n `zthwrddolpdxjowxprniggdfkvzlzrnj` int DEFAULT NULL,\n `jiwrfqbpgkqwraoqcggypxennyoxxzoj` int DEFAULT NULL,\n `hyixxbneiecuerjanmwxemfkzizdfymd` int DEFAULT NULL,\n `ygnygtbfthrsjsdmcttlvcupuchgicjs` int DEFAULT NULL,\n `javxqhxbvxgkouvnysbgfprotvkqpehs` int DEFAULT NULL,\n `pbeukestkougfnlkiomvikkqdlhwouao` int DEFAULT NULL,\n `tcrzbwfxwcmtzviiyszourkauilivjru` int DEFAULT NULL,\n `tvczuyvpyftmafcexproeinxooxinzun` int DEFAULT NULL,\n `wwumzvxvseznxaszjwujogulvybgjazt` int DEFAULT NULL,\n `opzplcovlwfidmoslsqwqgzecrszhzww` int DEFAULT NULL,\n `jngcddkndrgpoujonafcoaafdgeaswco` int DEFAULT NULL,\n `xounyrltuydjrowfackiemtzsntakxqc` int DEFAULT NULL,\n `yoobjwchfbkfbyehfvlhnkfvuxoybyiv` int DEFAULT NULL,\n `ibggtkqeydvshixcrbmixpiuppqsahrk` int DEFAULT NULL,\n `uxggicoigupsteezplemvphzxinnrevh` int DEFAULT NULL,\n `qvtzmriuuhhuuibbdeaciaykdczatzqj` int DEFAULT NULL,\n `ouhwprmhkjfvzbedyyrhuqifjgvdwjgv` int DEFAULT NULL,\n `nueqlakgpaaarltojaqyxeyrgwvlpbhb` int DEFAULT NULL,\n `yxaohphhxrtyltvotnwmkjpzrnrxrttk` int DEFAULT NULL,\n PRIMARY KEY (`jrjipngpdvqkwolpnalhyfjhkqiwlind`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"hkcokgnihhdfnawwtqjefmgjhhitamsj\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["jrjipngpdvqkwolpnalhyfjhkqiwlind"],"columns":[{"name":"jrjipngpdvqkwolpnalhyfjhkqiwlind","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"frurxiscojimzoawbiwafbforzdzprxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjilpdjenkyoapmzwggmtgxtmiqvzjin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xshrtkmfnvpuwklblgpsomsfkpezxfnz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvkjsqtwmxzxmvwlpbazwdzirzxwyvcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tswxctabknuyzsypfsgfkxikveecifks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fyfhnguvjxyisukgvfqcjhtkuodifaiz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fgwndfhxdlmeqkezvdghjjvlajdgtdfz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjpgpomelhbtlthkhzzykxssyjkrswmg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwsabnqmsnaazlhybgqctkzlsoqamkvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grtzpnntpbaervljgjtcvrwwghajkpdp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohiqhmgroqfnqlpneczlmopdounmjjqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exnatteukknkoqbbupdeqkzlkkxfotis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vuhmxoesexhbewognuawqhmgxpxnzqpm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbbxcoxyhdregrnqsnsukmqjgtuejiuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ihcypocrmvbzxmbcxsaneychctpngdgr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqgibmokdhrufajccsudpaiufkmerlob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igdeakbvvxfctswqwrogstwikxhbfsam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcstpkpvbflktsjwdvgqgbsitebkwirg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynnbxzsakavacsocanfluldiqpoxyodq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kkpwwxlxjaljfowamvwpmimsheicbhso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hxgtcfywdeadaubjitytqvzqvwhzqger","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agwujufzbwxzlkazvrkniowlqoyeygxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"abpzdfenvnmlhybsehqnacmlcaqhtcaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vcqfxxkcrlmwrraefnkwsmpdwuwmelbz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebleysrspthseevwevywaeauepgxbpwf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"svhqliwlfkzsluurrovhwhkffdxrvxoo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"viupaajxtzjvxfawhiebzqrhzilsefbs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zemqndbmxtzgiqkjknfcyelrutduqmkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpzcsqmkggolojrkorljxvewuqajxyfw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jxknwmxfndqfftdtdidjrypycnrjvbid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"juyhtfyuyolnybmmxoymrriaeqqyggxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zkddxbqdcvdfblqbijafzwwxzwoubunp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lddoaxmsztnjxxdrwypoxrbsvpcvdwqa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ttiazrkwmovmvkhudxlquahetkjhqccb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjaflgdlozrfhmusojsrnhaxwfucfwgx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjlksevjcakgxnhomxwjebybhmakftzh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmrxwfoymdkkdwmfudllsnwgfqjwxzbb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvtulgcbflzrdayzbholcujeekjgkcjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exfekbyxxtuhwqdarfgwceppzgevpoaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubmvbwenqnseulctlxfkucvhngsmtgyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bdouxxtmzdmiybvjlbigeohbvgwwotce","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfmjwtuwwcxvljfenhdlgskleyhosrkj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fdvmdujciqkqwvvitngeuzkpjtenzdsf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmqornjldmzwfkylahgmckgcxfpnuuix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnovsgbhkfvryifxnrbvhnhwrtussedw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhrshzzpzhuywqwzvudomvkotskvoyxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhugmoclktidmkpvsueoviwwytkiwqul","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sxkilmegpkrsfvgfnftajficmfvxmwcz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icdfvbtssqjflorufkjzgegflxhqrpvv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwkkyfmrwxaewhszwgfdezxddpvlykco","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"myskaqxnxtikrephltvyopovsyroqbzw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhbwajhrooxgzuhjbhjvyiczxbjtqwji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbkycgxukkowsbpuciabybaenrqftcjg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnkzaavdmwmjvhpziyyswbvicmdmttrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtconwtiyyggzqhbphcuxzqzzhbagqeg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjhmbuubbywciuvzuwtmcrvtswlqghgm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eecitrrahnlsvtluuultaqygxnwjoclb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dioywewhcinreyodmlxkimvivwkkuaew","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmxembqaoelqlpxnfeqxtzpoawcviwwh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmmuwsakjpgptapeztxridxzpvhvtncw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ieqswdtezpbkvyifwjhzafytuopmnoyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhxnkazcsxznpwbyygkbmzzevkyoxstl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqbmkbbmezmrncxkyanryhclvdbiwxey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txaxpshpcgtjtydvnkgavfyvwfcjtdxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"javuoipmtaufkrqltkzqajtqvmmpqcjp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mndvxwcnyfylvqftcvpiqgbbgfxlqlck","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fggrvdlerdybetxhthqrvwkhfonewscu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qcqliwjkhoxcdtpcsdzhnofjfwmcrpfs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bljyioclaxrefsvpbxrxbtctmaykvzsq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbfhsagzbkxsiyzzjvhhnpuefdyhvbrs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojzrccxkgkqssdvpjpmdiidvrblsntwu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atteortedrspruqihcnnklyyakrmjskj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zpyiedbquybhvhdlomciejmovpasuayq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvmetbqhqpowipttlcxyhomerqkmhzma","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axqyrtcqfivzlspaucmhzemuotgjkzvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbyaiegqdlnufojwgpzoqijhxzvpdtyl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bylwmiygzxdynyjxoicwblswwzsygdkd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vrtgfmwubdgzwwwikyxjzszrubvognpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lagfknyjhruuzasbyrvlsroifsnmlxaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"retvqprtjnndeulmiwulctmlmtrkgtze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zthwrddolpdxjowxprniggdfkvzlzrnj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jiwrfqbpgkqwraoqcggypxennyoxxzoj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hyixxbneiecuerjanmwxemfkzizdfymd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ygnygtbfthrsjsdmcttlvcupuchgicjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"javxqhxbvxgkouvnysbgfprotvkqpehs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbeukestkougfnlkiomvikkqdlhwouao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tcrzbwfxwcmtzviiyszourkauilivjru","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvczuyvpyftmafcexproeinxooxinzun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwumzvxvseznxaszjwujogulvybgjazt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opzplcovlwfidmoslsqwqgzecrszhzww","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jngcddkndrgpoujonafcoaafdgeaswco","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xounyrltuydjrowfackiemtzsntakxqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yoobjwchfbkfbyehfvlhnkfvuxoybyiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibggtkqeydvshixcrbmixpiuppqsahrk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxggicoigupsteezplemvphzxinnrevh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvtzmriuuhhuuibbdeaciaykdczatzqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ouhwprmhkjfvzbedyyrhuqifjgvdwjgv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nueqlakgpaaarltojaqyxeyrgwvlpbhb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxaohphhxrtyltvotnwmkjpzrnrxrttk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668443,"databaseName":"models_schema","ddl":"CREATE TABLE `hvfxfpdbsddegbronmrpaixtvsqjqygk` (\n `swjdxbexcydbgwfprzuqbgflyvaapccg` int NOT NULL,\n `xzjvzklhemimrixabmpflxxfxdyxeqhz` int DEFAULT NULL,\n `vqpsdgbgjiuvhapadmaouqvtygoasjxn` int DEFAULT NULL,\n `jfsssrqnrabfhugpikcueivjlczijipb` int DEFAULT NULL,\n `skjuhktlicrnhiumlwizlvrrinvbuvmb` int DEFAULT NULL,\n `ivaxwfbjxzgnndpjwssumqrxtmppccco` int DEFAULT NULL,\n `ncvhbdiajoqcmhqpstgjuyvytgkjwlfw` int DEFAULT NULL,\n `ofhtldaxppulezacepswqooexoeuwdmk` int DEFAULT NULL,\n `nchzectyftsvuigbdfiociofyzyshuqy` int DEFAULT NULL,\n `sijtmqppmnlfycudfgembqwydricbcba` int DEFAULT NULL,\n `cqpqthrayfcdmyutuioembrfoucdfwgl` int DEFAULT NULL,\n `psgybpjoxvugwgtyhdxigkoqnwseqycj` int DEFAULT NULL,\n `aeoinixgyibktvcyqtozevlelahmjuan` int DEFAULT NULL,\n `gvazivyztxhacjkxxtntcmfvcrojnifl` int DEFAULT NULL,\n `kwvgjnqgozlrysmvottalulqpwjkdspf` int DEFAULT NULL,\n `qrkogkhrjdeekafzjlqkwnpnvqhxvvwg` int DEFAULT NULL,\n `iqgbyqzyecyxjxlcpsixcqybtrmucoqe` int DEFAULT NULL,\n `iiqiwiwkjhzwjakxjeqxkgmpgqpuvypu` int DEFAULT NULL,\n `fppgsmrlaqjxdjzekcyfemrefslytdya` int DEFAULT NULL,\n `gtbkidjpfifrizztfsotmsresqcuekmc` int DEFAULT NULL,\n `zvaqdmtuayrxlytjxwlgbnpguqynzrjn` int DEFAULT NULL,\n `gxerbnobeclgxqyejuttstifvtgqycor` int DEFAULT NULL,\n `qvkpgrvazawmhdrpqontjehlozxmmqlm` int DEFAULT NULL,\n `vibfvgwwucgzrquannaiodwuyjontowz` int DEFAULT NULL,\n `dcyzqtfhiqajfwqyyqozpkygkjexdktz` int DEFAULT NULL,\n `wdddekclrsqqllvjlnsasaankuzpkgkq` int DEFAULT NULL,\n `rlfcdnjayxubqralbcrzspcyabmoycix` int DEFAULT NULL,\n `xvaustjfixvofiickumpalpstbiabtba` int DEFAULT NULL,\n `arrluuauazyysjijinavkzccyksaqnqt` int DEFAULT NULL,\n `mlujnpsnxtpyzsosrekdhpuhuyiucnck` int DEFAULT NULL,\n `gqkhnswhlqbtmckqmtollargboffosde` int DEFAULT NULL,\n `qsiprozbglpkpnoumoiqosjsmjbseqzg` int DEFAULT NULL,\n `zvqugxpgdpfxzyabqnupvjeskmgranlf` int DEFAULT NULL,\n `dsixrfiknrpvivbwydopyfdmezrsgpky` int DEFAULT NULL,\n `jmuykrmpligvepzbyptafhcpmsgvezba` int DEFAULT NULL,\n `owctqamhbnijkalbvniumnabwkabkxuk` int DEFAULT NULL,\n `ypyfwxscnotzuszoayjwhtapmjlbmmov` int DEFAULT NULL,\n `yujftkgplwkbdzerdqohuimfwmdxdpor` int DEFAULT NULL,\n `sioqvzwzhztkhrnoyhwkyssgtpnpozdp` int DEFAULT NULL,\n `huorgyrpsritinmoqimcflaqfpqsqxip` int DEFAULT NULL,\n `elvvjkzalxboemfecokqdqycmqusqfsx` int DEFAULT NULL,\n `qjkzcipmkkixzmbrwktoekxwwycmgusz` int DEFAULT NULL,\n `ugfusnpvicvugdkroghivndkbzqjamsf` int DEFAULT NULL,\n `neradnzbdhxcmmxrixcopxlgqttbkhch` int DEFAULT NULL,\n `kjrrnhtmxhvtwanavkwxznbzxfpauzwv` int DEFAULT NULL,\n `vlaseallxxmsspeqfckjypfzwmfsfhwd` int DEFAULT NULL,\n `cfoxbtkevqwdmggszzkosanusmvjtlxt` int DEFAULT NULL,\n `mqndosdonwpulqtgqzncqcbzwygkqtme` int DEFAULT NULL,\n `skxcbrcirfmbnfdfqidkvldmleclvgqi` int DEFAULT NULL,\n `leskfwhtjfhdussmlwrkypcagycgazov` int DEFAULT NULL,\n `viavotsoymhdkcdovouvovqmzlfyttva` int DEFAULT NULL,\n `szxmgsutuggjdltnqhnfeziizjajgxrn` int DEFAULT NULL,\n `slykycaxhnrsiqpikyvxujhlzcucctns` int DEFAULT NULL,\n `ownbauyretuynffmwpldomjdedivdwfr` int DEFAULT NULL,\n `dgapqioawxkdodgcbqinakfsbslrysyk` int DEFAULT NULL,\n `bzgpxjvtoofxnfxhffrizzekpiktbeeg` int DEFAULT NULL,\n `zmlbcthsqrmwuhadkqgelwcxpaeaxufr` int DEFAULT NULL,\n `fwpfrmlwzqhuqktuzklzrvwsncgcxbou` int DEFAULT NULL,\n `tplofdzqlxyvunswrnbyhbybvereamvy` int DEFAULT NULL,\n `silgrrdhqwswksibzfvjsqselhvqmoyv` int DEFAULT NULL,\n `cicbauzpyjarqhtxeboezhggyshkfcyx` int DEFAULT NULL,\n `bvgcolltqhcfpwpnkhfhwprrqfartche` int DEFAULT NULL,\n `azjsjwqgcqgtqaushjlkfajumqlrfizv` int DEFAULT NULL,\n `kyzxvrsxavptdvrvmlltjbvbdjvxeynv` int DEFAULT NULL,\n `ognuihpbehwmgxxygmxuehdwiujfwrhd` int DEFAULT NULL,\n `gooxhvwukkzudnvtlnnufihhdwnzeepl` int DEFAULT NULL,\n `tsvfsqqlfrboiaajdgfmymarvedzmyfw` int DEFAULT NULL,\n `zrjthshihkbrvifrugdtzvkbavypasbv` int DEFAULT NULL,\n `ztxzyjekxemjfbxojnatrvjsxmmuomrs` int DEFAULT NULL,\n `qcmpoxfralwjllwwigsocayzrywxnvkl` int DEFAULT NULL,\n `sczgwakulyvbfbdmfoczkshtrqnffliq` int DEFAULT NULL,\n `qqoovezhqwmuqwlbzuasbhbategnjyhs` int DEFAULT NULL,\n `ybpowikjcrhtuowbgwrehrrrkxkteuha` int DEFAULT NULL,\n `dwaiexbkaacotbuypoaewlriafwcxwsn` int DEFAULT NULL,\n `nbntoubtiwvbjioookkchduaqdyoeyah` int DEFAULT NULL,\n `jwbnuwljvxfxmeqjoopiqagmorwlnstp` int DEFAULT NULL,\n `epzqdcggvbkqujkrwsrwecqyyvkvzcls` int DEFAULT NULL,\n `ezbrdepvvzmwpydeqaciudqvvdrrzhbs` int DEFAULT NULL,\n `jxfsejrmzdfmxaphrcyebvnxjnfbcjnw` int DEFAULT NULL,\n `cnbiwijywftjoqfchnkdxbmbvgtmvsdv` int DEFAULT NULL,\n `ksdhbrimniwscnthivubvkokmmkdjwgv` int DEFAULT NULL,\n `bxhcvctlaxkhwuzcqgbukzgcxuavrquj` int DEFAULT NULL,\n `ztyqpurbqpsxqfldrvuzgitagkgqafea` int DEFAULT NULL,\n `wqqidwjqptpoepluwoqocmdvyjgpekfq` int DEFAULT NULL,\n `icahorfnxtqbbvactlvavylrnqxfyrhc` int DEFAULT NULL,\n `zvjuvmdxomfgnbwsujbdywsvdluecfcj` int DEFAULT NULL,\n `gfjsgblywxucpzhfpwrytlnugbeiwanj` int DEFAULT NULL,\n `vhlghttenmepqiuwraayffzcddzxfpgi` int DEFAULT NULL,\n `casxcdnklzsifldongcgcmtsvokaqlrt` int DEFAULT NULL,\n `qjtzpkcutylzbvorqgtgyfoxelrddfnm` int DEFAULT NULL,\n `tklnkddaegqpuiteskshwvvbtratsqai` int DEFAULT NULL,\n `huwcgwjgqzwblildhijojzxcbfacixpi` int DEFAULT NULL,\n `suyanjxubxkxwayadksgvlhxxxbvfvpt` int DEFAULT NULL,\n `wivwdmezvdxqwwsfcngdqgojorymybre` int DEFAULT NULL,\n `hldxdapzskpjbhadiqbmtdbfckmvywld` int DEFAULT NULL,\n `uishwgosyrzzvgapfgnwlbocrnuoagie` int DEFAULT NULL,\n `vfsmnligxionqhmzlpvbmfijlzgutrqp` int DEFAULT NULL,\n `ezvxejvefezzcuezjiklomidhmagfglp` int DEFAULT NULL,\n `dwljkkyzdjrxserovyquntmaszcogsdx` int DEFAULT NULL,\n `fofjoadlddksuseseyvglzbiwnblelso` int DEFAULT NULL,\n PRIMARY KEY (`swjdxbexcydbgwfprzuqbgflyvaapccg`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"hvfxfpdbsddegbronmrpaixtvsqjqygk\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["swjdxbexcydbgwfprzuqbgflyvaapccg"],"columns":[{"name":"swjdxbexcydbgwfprzuqbgflyvaapccg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"xzjvzklhemimrixabmpflxxfxdyxeqhz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqpsdgbgjiuvhapadmaouqvtygoasjxn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jfsssrqnrabfhugpikcueivjlczijipb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skjuhktlicrnhiumlwizlvrrinvbuvmb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivaxwfbjxzgnndpjwssumqrxtmppccco","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ncvhbdiajoqcmhqpstgjuyvytgkjwlfw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofhtldaxppulezacepswqooexoeuwdmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nchzectyftsvuigbdfiociofyzyshuqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sijtmqppmnlfycudfgembqwydricbcba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqpqthrayfcdmyutuioembrfoucdfwgl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"psgybpjoxvugwgtyhdxigkoqnwseqycj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aeoinixgyibktvcyqtozevlelahmjuan","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gvazivyztxhacjkxxtntcmfvcrojnifl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwvgjnqgozlrysmvottalulqpwjkdspf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qrkogkhrjdeekafzjlqkwnpnvqhxvvwg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqgbyqzyecyxjxlcpsixcqybtrmucoqe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iiqiwiwkjhzwjakxjeqxkgmpgqpuvypu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fppgsmrlaqjxdjzekcyfemrefslytdya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtbkidjpfifrizztfsotmsresqcuekmc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvaqdmtuayrxlytjxwlgbnpguqynzrjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gxerbnobeclgxqyejuttstifvtgqycor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvkpgrvazawmhdrpqontjehlozxmmqlm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vibfvgwwucgzrquannaiodwuyjontowz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcyzqtfhiqajfwqyyqozpkygkjexdktz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wdddekclrsqqllvjlnsasaankuzpkgkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlfcdnjayxubqralbcrzspcyabmoycix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvaustjfixvofiickumpalpstbiabtba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"arrluuauazyysjijinavkzccyksaqnqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mlujnpsnxtpyzsosrekdhpuhuyiucnck","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqkhnswhlqbtmckqmtollargboffosde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qsiprozbglpkpnoumoiqosjsmjbseqzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvqugxpgdpfxzyabqnupvjeskmgranlf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dsixrfiknrpvivbwydopyfdmezrsgpky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmuykrmpligvepzbyptafhcpmsgvezba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owctqamhbnijkalbvniumnabwkabkxuk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypyfwxscnotzuszoayjwhtapmjlbmmov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yujftkgplwkbdzerdqohuimfwmdxdpor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sioqvzwzhztkhrnoyhwkyssgtpnpozdp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"huorgyrpsritinmoqimcflaqfpqsqxip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"elvvjkzalxboemfecokqdqycmqusqfsx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjkzcipmkkixzmbrwktoekxwwycmgusz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugfusnpvicvugdkroghivndkbzqjamsf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"neradnzbdhxcmmxrixcopxlgqttbkhch","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjrrnhtmxhvtwanavkwxznbzxfpauzwv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vlaseallxxmsspeqfckjypfzwmfsfhwd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfoxbtkevqwdmggszzkosanusmvjtlxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqndosdonwpulqtgqzncqcbzwygkqtme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skxcbrcirfmbnfdfqidkvldmleclvgqi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"leskfwhtjfhdussmlwrkypcagycgazov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"viavotsoymhdkcdovouvovqmzlfyttva","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"szxmgsutuggjdltnqhnfeziizjajgxrn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"slykycaxhnrsiqpikyvxujhlzcucctns","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ownbauyretuynffmwpldomjdedivdwfr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgapqioawxkdodgcbqinakfsbslrysyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bzgpxjvtoofxnfxhffrizzekpiktbeeg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmlbcthsqrmwuhadkqgelwcxpaeaxufr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwpfrmlwzqhuqktuzklzrvwsncgcxbou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tplofdzqlxyvunswrnbyhbybvereamvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"silgrrdhqwswksibzfvjsqselhvqmoyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cicbauzpyjarqhtxeboezhggyshkfcyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvgcolltqhcfpwpnkhfhwprrqfartche","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"azjsjwqgcqgtqaushjlkfajumqlrfizv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kyzxvrsxavptdvrvmlltjbvbdjvxeynv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ognuihpbehwmgxxygmxuehdwiujfwrhd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gooxhvwukkzudnvtlnnufihhdwnzeepl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tsvfsqqlfrboiaajdgfmymarvedzmyfw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zrjthshihkbrvifrugdtzvkbavypasbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ztxzyjekxemjfbxojnatrvjsxmmuomrs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qcmpoxfralwjllwwigsocayzrywxnvkl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sczgwakulyvbfbdmfoczkshtrqnffliq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqoovezhqwmuqwlbzuasbhbategnjyhs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ybpowikjcrhtuowbgwrehrrrkxkteuha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwaiexbkaacotbuypoaewlriafwcxwsn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbntoubtiwvbjioookkchduaqdyoeyah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwbnuwljvxfxmeqjoopiqagmorwlnstp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"epzqdcggvbkqujkrwsrwecqyyvkvzcls","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezbrdepvvzmwpydeqaciudqvvdrrzhbs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jxfsejrmzdfmxaphrcyebvnxjnfbcjnw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnbiwijywftjoqfchnkdxbmbvgtmvsdv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ksdhbrimniwscnthivubvkokmmkdjwgv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bxhcvctlaxkhwuzcqgbukzgcxuavrquj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ztyqpurbqpsxqfldrvuzgitagkgqafea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqqidwjqptpoepluwoqocmdvyjgpekfq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icahorfnxtqbbvactlvavylrnqxfyrhc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvjuvmdxomfgnbwsujbdywsvdluecfcj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfjsgblywxucpzhfpwrytlnugbeiwanj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhlghttenmepqiuwraayffzcddzxfpgi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"casxcdnklzsifldongcgcmtsvokaqlrt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjtzpkcutylzbvorqgtgyfoxelrddfnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tklnkddaegqpuiteskshwvvbtratsqai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"huwcgwjgqzwblildhijojzxcbfacixpi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"suyanjxubxkxwayadksgvlhxxxbvfvpt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wivwdmezvdxqwwsfcngdqgojorymybre","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hldxdapzskpjbhadiqbmtdbfckmvywld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uishwgosyrzzvgapfgnwlbocrnuoagie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vfsmnligxionqhmzlpvbmfijlzgutrqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezvxejvefezzcuezjiklomidhmagfglp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwljkkyzdjrxserovyquntmaszcogsdx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fofjoadlddksuseseyvglzbiwnblelso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668478,"databaseName":"models_schema","ddl":"CREATE TABLE `hwpjwafzowgrotlquywyqtrcabzussxr` (\n `rztunwpnxtsuerrfthvxaupcnimhewxs` int NOT NULL,\n `jworunjiwlincvcgdpfrmnruhgtadetm` int DEFAULT NULL,\n `vvrubxacbzccsaadqvxwkepitzzsykme` int DEFAULT NULL,\n `mbpooudzgcgokhsxokzwulbampbpppwh` int DEFAULT NULL,\n `klfhrnxkaxpbjthtixrtaavjyndgigxv` int DEFAULT NULL,\n `gzszxvoxpxgnyoxqkewfmmubbfyjtbbt` int DEFAULT NULL,\n `ompubwjarlqcmvbqjnkiycjvzsgmlmou` int DEFAULT NULL,\n `sheblwzvokjzrkfooskzaumsptuutwrq` int DEFAULT NULL,\n `rnpcjtvcybppsizeisbyhxmktudssmul` int DEFAULT NULL,\n `vvvmgmqqitnmcbixizrmtatxbtmnygpq` int DEFAULT NULL,\n `tnjucsjgvyfnickkwjaqenbkhujlrikw` int DEFAULT NULL,\n `txcgjbvwjhsespnozoqtyegrgevkxyri` int DEFAULT NULL,\n `mcuoeeaeqvxbtgqtnkchtkhuqtztlosd` int DEFAULT NULL,\n `zyeodclsorhyyqrzxbbsasmqfzueezox` int DEFAULT NULL,\n `dbjshvihnuxsuiqmdiffvfmwrhebqyoy` int DEFAULT NULL,\n `jjudtfhautgzkkgeiofmxtfzhpbtggzi` int DEFAULT NULL,\n `kdamgrukjglypvueeufhiytgvngastvm` int DEFAULT NULL,\n `hqxhvtrgueiiopnnauafzlkmohuwvytl` int DEFAULT NULL,\n `dpmclprrxhjraytqzzasqdvoxbjupkmz` int DEFAULT NULL,\n `ikzlvuqtqgogejeufkzdixrjswkqzdte` int DEFAULT NULL,\n `tsaklkpraenpburmgbtcybsbtudkqrsd` int DEFAULT NULL,\n `jiimwbiffkullssolrdrhbccvbxisxqg` int DEFAULT NULL,\n `bnvpssaepitymnimnrjzxdcqcqnavnjc` int DEFAULT NULL,\n `phnulxqafpmcfpjsinpmilhehccrzrjv` int DEFAULT NULL,\n `bkjxogckdpdqodoldfcjxsftpjfgewnv` int DEFAULT NULL,\n `wmetzixdhvgrtgyryovbfvlyjsiovdsz` int DEFAULT NULL,\n `rrpxyuoeddfckgjlyjuofqplmhkchkiq` int DEFAULT NULL,\n `dspkyewclbuawlyaycmzcmrscqnblccw` int DEFAULT NULL,\n `rsyrtcbnilucsicwklunjsidxohpvgmt` int DEFAULT NULL,\n `plqqnbvhpmybfduentrgtmmrazcwsdfy` int DEFAULT NULL,\n `ngthmccgsrbejpzefjgdddylemrfinld` int DEFAULT NULL,\n `gmysjynamftrdxokmphwiixksogxmkyp` int DEFAULT NULL,\n `bpdmkaosxznfqvtrvswubzkneepjckmv` int DEFAULT NULL,\n `sfabamasgpnhrmnvhwhdxauxwwafdyrh` int DEFAULT NULL,\n `sbwpzkqrkdhpacfinbjvhiubesgbyvss` int DEFAULT NULL,\n `csxtgpcfowlywpikofxrjmfstjclgmlf` int DEFAULT NULL,\n `hlvtjnjpskgjbtukxwyylopxpofzipsm` int DEFAULT NULL,\n `smvgcfwyrkvccsttyqrgxnkhivfdvfdx` int DEFAULT NULL,\n `neactvwtmywwijiodwjhjmrsqtwgkmck` int DEFAULT NULL,\n `ivyntochlzoqwmbzwkgxpmmgcqjledup` int DEFAULT NULL,\n `dqkewxcukcpxsyhsqbuzfpuhbocgkmgk` int DEFAULT NULL,\n `jmlbwfskshkxrrnfxvqlcrlkfmjghrvo` int DEFAULT NULL,\n `uznamavncgjcaxgzccxfqupbgspufhxy` int DEFAULT NULL,\n `winavcivpfywwmiyxsdmfhgsqzyoqhve` int DEFAULT NULL,\n `aqrbesefoysgcqhgcmkubzthwnvlpsnj` int DEFAULT NULL,\n `tzkhipgauvayeczmhylhbgfelcxlsdfr` int DEFAULT NULL,\n `uzpmxhufxfiwpdkscwytwhebjcmgcfmb` int DEFAULT NULL,\n `dlnsiatlhovhzacsqnmnszyypwbiffgb` int DEFAULT NULL,\n `zofzsgzsnwmdqmxvayucfjbqitokyzbe` int DEFAULT NULL,\n `njggztdzvzdcxtywzvbhbuebqjashnzp` int DEFAULT NULL,\n `epwwpckbdvrlxolhfrfaeuzhjegmgdkq` int DEFAULT NULL,\n `mmowkxcdgnyjambpexfpolvfjtyguijf` int DEFAULT NULL,\n `vyjcxbthqpibfvbtfrvwcyyzdqcgntka` int DEFAULT NULL,\n `oaxaodauaseqhxsiezeqltmukamgfryk` int DEFAULT NULL,\n `iwzssijfttwgiahefmrtdbrufnjrhjko` int DEFAULT NULL,\n `pmnehpfrhnjknbpjdbfdjvwlmbijbapy` int DEFAULT NULL,\n `yrfxchiqlwpmhtdmrkqddtlpxhgjwpxz` int DEFAULT NULL,\n `grikufnkojvmlibleqxvfawocsjdnniw` int DEFAULT NULL,\n `octpndwwqvjitnzwhotunymcjzycafzg` int DEFAULT NULL,\n `ehwzctvrfoecfhjfrtmpxwmthwcfvnen` int DEFAULT NULL,\n `teoxazltbsfdqzljmaxiqokqyphqtdkv` int DEFAULT NULL,\n `jhqjllmeggmsmqkhmqdskytekbzttlmk` int DEFAULT NULL,\n `uasogjlcbdfubfqxxjgbasxbufjzbgzj` int DEFAULT NULL,\n `znjxzqdxykhzyqkqixqpfubtkwuqufad` int DEFAULT NULL,\n `wazdeolbrjoxrypwhhkjtbrdaqtonzfg` int DEFAULT NULL,\n `arnewjklfobodechsskndcswamwzbfgt` int DEFAULT NULL,\n `wpofvmexpbmbfvkobgbsrukouyyaxgxj` int DEFAULT NULL,\n `wipykpmtkmharkjwnzayuqqvjwrdspds` int DEFAULT NULL,\n `yumbqnuyvdhvzeqiddurktcofljdjeik` int DEFAULT NULL,\n `etkyrawjrlrorxrtgzzcnghivzhbrvco` int DEFAULT NULL,\n `dceryjunvhfirtycldkgsqjkikbwrsxq` int DEFAULT NULL,\n `hipkrtjnkkwmnuxpuhvlpsxmmgusumal` int DEFAULT NULL,\n `fcjznsxgtkatkddxkgnumecaunvdxfzn` int DEFAULT NULL,\n `gbtpstchzwjporqccaqarkpifntpyanm` int DEFAULT NULL,\n `piwyajekwoatidwfugnmtvsiczljzufo` int DEFAULT NULL,\n `syrjgbvlcsbolzxhmfnrwbdrxqdzxbev` int DEFAULT NULL,\n `ctaxdqiayravmanczannpzahnhidmknz` int DEFAULT NULL,\n `tgmyeqocpkuqjljqcecppxgpkgokdytx` int DEFAULT NULL,\n `pusomfbjmvpabpyeehovmujnhlkvqthb` int DEFAULT NULL,\n `eqwkaclurhuyvufhdxclfypldagpgqky` int DEFAULT NULL,\n `bfxkwnexeghyhodnbjjumdkftmvdihtg` int DEFAULT NULL,\n `okubxdtelwclfzqydemhxfdtcrcxmreg` int DEFAULT NULL,\n `tszgoyqxdyxnldixzexxkftqsrsfrjvo` int DEFAULT NULL,\n `spldcvclpyeyyjovkikifaogtctqykdj` int DEFAULT NULL,\n `teqbaeckuvskqvrqgfzkawhtedikyqwv` int DEFAULT NULL,\n `zvryzkkhsipnbbkptfrfyospkwipmlyi` int DEFAULT NULL,\n `wwyrgyburhilertdcbvkpvfqddfqzssi` int DEFAULT NULL,\n `dthguqcwdotbckdotktdvbvbniolvxjg` int DEFAULT NULL,\n `bjtjuyxhanxxbetuburwkkcbxsxzazqj` int DEFAULT NULL,\n `jzqnqmlhytiyxiefmokvgvyjodkfyggo` int DEFAULT NULL,\n `grtuujeqeraocbbhzthfggjzzneqkqsz` int DEFAULT NULL,\n `wzdpauhnrnlunzpklnphjdajvmnxeqwo` int DEFAULT NULL,\n `osjtmiczsshdakykagnetsfqfnoeoowj` int DEFAULT NULL,\n `hsfavvtjrywelzmevndlbqdcsflextks` int DEFAULT NULL,\n `wjoxdqvxkaztsxxzaazdipkfyhswpvje` int DEFAULT NULL,\n `mijuypllildwwofttjpkukeickxmdzdv` int DEFAULT NULL,\n `mavzqycermggfjveiixwfugncrgbtnab` int DEFAULT NULL,\n `qeubnjxzsppledkvqjhpmnpeavuduzrb` int DEFAULT NULL,\n `tnyserjltsxykkragukzagvxwikuqwva` int DEFAULT NULL,\n `xxtkeohokwyimmpyhesqgdaxjipeuqty` int DEFAULT NULL,\n PRIMARY KEY (`rztunwpnxtsuerrfthvxaupcnimhewxs`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"hwpjwafzowgrotlquywyqtrcabzussxr\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["rztunwpnxtsuerrfthvxaupcnimhewxs"],"columns":[{"name":"rztunwpnxtsuerrfthvxaupcnimhewxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"jworunjiwlincvcgdpfrmnruhgtadetm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vvrubxacbzccsaadqvxwkepitzzsykme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbpooudzgcgokhsxokzwulbampbpppwh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"klfhrnxkaxpbjthtixrtaavjyndgigxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzszxvoxpxgnyoxqkewfmmubbfyjtbbt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ompubwjarlqcmvbqjnkiycjvzsgmlmou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sheblwzvokjzrkfooskzaumsptuutwrq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnpcjtvcybppsizeisbyhxmktudssmul","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vvvmgmqqitnmcbixizrmtatxbtmnygpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnjucsjgvyfnickkwjaqenbkhujlrikw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txcgjbvwjhsespnozoqtyegrgevkxyri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcuoeeaeqvxbtgqtnkchtkhuqtztlosd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zyeodclsorhyyqrzxbbsasmqfzueezox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbjshvihnuxsuiqmdiffvfmwrhebqyoy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjudtfhautgzkkgeiofmxtfzhpbtggzi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kdamgrukjglypvueeufhiytgvngastvm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqxhvtrgueiiopnnauafzlkmohuwvytl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpmclprrxhjraytqzzasqdvoxbjupkmz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikzlvuqtqgogejeufkzdixrjswkqzdte","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tsaklkpraenpburmgbtcybsbtudkqrsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jiimwbiffkullssolrdrhbccvbxisxqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnvpssaepitymnimnrjzxdcqcqnavnjc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phnulxqafpmcfpjsinpmilhehccrzrjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkjxogckdpdqodoldfcjxsftpjfgewnv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmetzixdhvgrtgyryovbfvlyjsiovdsz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrpxyuoeddfckgjlyjuofqplmhkchkiq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dspkyewclbuawlyaycmzcmrscqnblccw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rsyrtcbnilucsicwklunjsidxohpvgmt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"plqqnbvhpmybfduentrgtmmrazcwsdfy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ngthmccgsrbejpzefjgdddylemrfinld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmysjynamftrdxokmphwiixksogxmkyp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bpdmkaosxznfqvtrvswubzkneepjckmv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfabamasgpnhrmnvhwhdxauxwwafdyrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbwpzkqrkdhpacfinbjvhiubesgbyvss","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"csxtgpcfowlywpikofxrjmfstjclgmlf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlvtjnjpskgjbtukxwyylopxpofzipsm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smvgcfwyrkvccsttyqrgxnkhivfdvfdx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"neactvwtmywwijiodwjhjmrsqtwgkmck","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivyntochlzoqwmbzwkgxpmmgcqjledup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqkewxcukcpxsyhsqbuzfpuhbocgkmgk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmlbwfskshkxrrnfxvqlcrlkfmjghrvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uznamavncgjcaxgzccxfqupbgspufhxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"winavcivpfywwmiyxsdmfhgsqzyoqhve","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqrbesefoysgcqhgcmkubzthwnvlpsnj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tzkhipgauvayeczmhylhbgfelcxlsdfr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzpmxhufxfiwpdkscwytwhebjcmgcfmb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dlnsiatlhovhzacsqnmnszyypwbiffgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zofzsgzsnwmdqmxvayucfjbqitokyzbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njggztdzvzdcxtywzvbhbuebqjashnzp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"epwwpckbdvrlxolhfrfaeuzhjegmgdkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmowkxcdgnyjambpexfpolvfjtyguijf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vyjcxbthqpibfvbtfrvwcyyzdqcgntka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oaxaodauaseqhxsiezeqltmukamgfryk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwzssijfttwgiahefmrtdbrufnjrhjko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmnehpfrhnjknbpjdbfdjvwlmbijbapy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yrfxchiqlwpmhtdmrkqddtlpxhgjwpxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grikufnkojvmlibleqxvfawocsjdnniw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"octpndwwqvjitnzwhotunymcjzycafzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehwzctvrfoecfhjfrtmpxwmthwcfvnen","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"teoxazltbsfdqzljmaxiqokqyphqtdkv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jhqjllmeggmsmqkhmqdskytekbzttlmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uasogjlcbdfubfqxxjgbasxbufjzbgzj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znjxzqdxykhzyqkqixqpfubtkwuqufad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wazdeolbrjoxrypwhhkjtbrdaqtonzfg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"arnewjklfobodechsskndcswamwzbfgt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wpofvmexpbmbfvkobgbsrukouyyaxgxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wipykpmtkmharkjwnzayuqqvjwrdspds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yumbqnuyvdhvzeqiddurktcofljdjeik","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"etkyrawjrlrorxrtgzzcnghivzhbrvco","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dceryjunvhfirtycldkgsqjkikbwrsxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hipkrtjnkkwmnuxpuhvlpsxmmgusumal","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcjznsxgtkatkddxkgnumecaunvdxfzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gbtpstchzwjporqccaqarkpifntpyanm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"piwyajekwoatidwfugnmtvsiczljzufo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"syrjgbvlcsbolzxhmfnrwbdrxqdzxbev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctaxdqiayravmanczannpzahnhidmknz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tgmyeqocpkuqjljqcecppxgpkgokdytx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pusomfbjmvpabpyeehovmujnhlkvqthb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqwkaclurhuyvufhdxclfypldagpgqky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bfxkwnexeghyhodnbjjumdkftmvdihtg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"okubxdtelwclfzqydemhxfdtcrcxmreg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tszgoyqxdyxnldixzexxkftqsrsfrjvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"spldcvclpyeyyjovkikifaogtctqykdj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"teqbaeckuvskqvrqgfzkawhtedikyqwv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvryzkkhsipnbbkptfrfyospkwipmlyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwyrgyburhilertdcbvkpvfqddfqzssi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dthguqcwdotbckdotktdvbvbniolvxjg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjtjuyxhanxxbetuburwkkcbxsxzazqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jzqnqmlhytiyxiefmokvgvyjodkfyggo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grtuujeqeraocbbhzthfggjzzneqkqsz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzdpauhnrnlunzpklnphjdajvmnxeqwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"osjtmiczsshdakykagnetsfqfnoeoowj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hsfavvtjrywelzmevndlbqdcsflextks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjoxdqvxkaztsxxzaazdipkfyhswpvje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mijuypllildwwofttjpkukeickxmdzdv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mavzqycermggfjveiixwfugncrgbtnab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qeubnjxzsppledkvqjhpmnpeavuduzrb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnyserjltsxykkragukzagvxwikuqwva","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxtkeohokwyimmpyhesqgdaxjipeuqty","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668511,"databaseName":"models_schema","ddl":"CREATE TABLE `hyijqphvtvgdgegsnseyzeyooughktwe` (\n `hwrbeiacfojtvaiodicdkvrtloturcqd` int NOT NULL,\n `scdssplhfymiwzrpklklcxcgoknlvfyh` int DEFAULT NULL,\n `qfavcytewpzqzakgnvsyxrvzwcsldsww` int DEFAULT NULL,\n `djyfezprdqjvdfvryxavsqqlzivuzjjw` int DEFAULT NULL,\n `mtdvslbfxspbeerwsgizwdjonrygmilq` int DEFAULT NULL,\n `kerevgffwjflfhwawomyzbxismvzbuao` int DEFAULT NULL,\n `pijcwneopqtqlbpgztlqvxatilxvjalu` int DEFAULT NULL,\n `ljcnsrlagztqquzbeldwwhygpzlujoel` int DEFAULT NULL,\n `tjsbsjyopsizyxjzudnqpwlapmxfinev` int DEFAULT NULL,\n `smpczoojdzgumexgtlxovhtnoofzyubh` int DEFAULT NULL,\n `bkjcnmuymqrbpmrkvhkvucyufidehcpb` int DEFAULT NULL,\n `plasdypxeevfwmuofgpadfjpoyucepvy` int DEFAULT NULL,\n `xanfqqvhethtyolvdmmqeifokavlyjgm` int DEFAULT NULL,\n `dttljbdnhzrtsmdnwsckudhsxybnwxxy` int DEFAULT NULL,\n `bgpyyjhqtptrrocpazfjudfyaunjjpfq` int DEFAULT NULL,\n `ufqbdwtadgihvfyydgsccmpkekzabhyi` int DEFAULT NULL,\n `ljnajpbhwtpppbnrvzksosleaviwstkz` int DEFAULT NULL,\n `frfalhzrctlnrccfolxlmsiwoantpgwh` int DEFAULT NULL,\n `rdleowhpuhdzovrfsywdfwjodggolxwv` int DEFAULT NULL,\n `cywmascrncerefdqrfdnvodjwwozzoxr` int DEFAULT NULL,\n `jtcbqzqvleylfknytmqzsmulxtvvupeh` int DEFAULT NULL,\n `gpeqzrxkomnrfjwtuxvorlasrqygkqqn` int DEFAULT NULL,\n `pylpubcjannrieyvldqlkucuriaxesxb` int DEFAULT NULL,\n `obtnpwwwczdruxksvajvckibfbisdfow` int DEFAULT NULL,\n `namtadsaqrzzkjbkmepqhorxerackqkv` int DEFAULT NULL,\n `uwidehqncazffznlhfagctsoheoodhue` int DEFAULT NULL,\n `ndtmnedddpdcyzvegpdvedyiuefwudfu` int DEFAULT NULL,\n `quyxnclxfvpozwolnvspgskolzjsthaa` int DEFAULT NULL,\n `gjmaviodpuhlnimldasxfawpqfrqbxlu` int DEFAULT NULL,\n `xfqwkrlbpoxxlzsdqlqipgalvfwwxenv` int DEFAULT NULL,\n `jcloakskluxqbxksgbgsnwstaeqgoarx` int DEFAULT NULL,\n `xwljqbnaglkzynxbrwncjloafbyhaifn` int DEFAULT NULL,\n `ochpnsmyidvqriaupdlwahlbmpwgipqm` int DEFAULT NULL,\n `mpozuktvwtfqoivonvufgwzbfrictypp` int DEFAULT NULL,\n `adhhvamofjdfcxlhtkyjgtlhxsqrryiw` int DEFAULT NULL,\n `aubsqmcvqpvyiqhhqgtnatclhtnksczu` int DEFAULT NULL,\n `ueohgxpesawawylllkwryokeqavcedza` int DEFAULT NULL,\n `tbjzqelttxrghvsyifyywdcfxhxxeuqr` int DEFAULT NULL,\n `keoeklmcpflnfukdeuwrdwlbjeqynjcy` int DEFAULT NULL,\n `zpmyzvajkbmagvzyedarqkmnwuwfmlit` int DEFAULT NULL,\n `dljjwpbukhncaxltwiwszwwhihnfqfku` int DEFAULT NULL,\n `cyvdnzchftkjotyezxtprrijyroqbtuc` int DEFAULT NULL,\n `ncekgpcqskzxlmxgrroqwvlncrghabbr` int DEFAULT NULL,\n `pwxbrtfjwkmxclehqpuzikzstmsapbsj` int DEFAULT NULL,\n `itfbulbidchtdqgtasfglswilwshiimg` int DEFAULT NULL,\n `tomvilhduzulgahmkraszymehcvqmurh` int DEFAULT NULL,\n `cercrhnafizvvkznefbgtqrorfvcvuka` int DEFAULT NULL,\n `kspvettrlgntgezzcpkwrcoxfjojwglm` int DEFAULT NULL,\n `dcauzzkjugreddsqtfptpfeehvxoqhec` int DEFAULT NULL,\n `euoangmtociugjxktizapdkhbentwlfr` int DEFAULT NULL,\n `aobomcmxvfpbsqbkvbnlehxjulcgieiu` int DEFAULT NULL,\n `mscccdgyybszwvjbibbbjdzmxzblmnhu` int DEFAULT NULL,\n `wqbbdeqicliytxebjvnizshmnvdyyhtj` int DEFAULT NULL,\n `evodyngoanvtpdgtkccoztcxyrqbndrr` int DEFAULT NULL,\n `dsmxadaerpdmhsqvvvavqyujjeycnljq` int DEFAULT NULL,\n `qhbvrhpgffifqzjxxdmmpijqfassjkkv` int DEFAULT NULL,\n `qvkwzjznxmpzffnxzdxmubdaywycawlv` int DEFAULT NULL,\n `wxhichsfccbpmrnvnagnbnrpenocxcaz` int DEFAULT NULL,\n `vhunikekrethxzsnbmyawstqldmlyeju` int DEFAULT NULL,\n `njjwydimfitnsovriudxdefvucjnorzp` int DEFAULT NULL,\n `xbloocplbsooikdjhnszjqsedzmvakcf` int DEFAULT NULL,\n `nxgeqlcydhmiccigswpbvbpntkgwtydu` int DEFAULT NULL,\n `ifzeeghdohnsbhhgwlhcalyrdwfzbaln` int DEFAULT NULL,\n `uidigvkmnjmgibekgrvrmilovedsaemy` int DEFAULT NULL,\n `piflkkctjanlhkegaxjzcmaxxxmonjvz` int DEFAULT NULL,\n `gnlgicvaprzroughtrvpoblddqponafd` int DEFAULT NULL,\n `pnerfzexsrfaqotqafjienlhuruzhlpr` int DEFAULT NULL,\n `aojzrbfvpfglcevtkkasnojkqutwoumj` int DEFAULT NULL,\n `ahxvrqunrirovxwnzvckauchsbgiybzp` int DEFAULT NULL,\n `ggtyxgnwldpusitkbwdcosfjgazbnzna` int DEFAULT NULL,\n `llboedpahjxxkngrlneryjjajsjbzfey` int DEFAULT NULL,\n `kmmmwvcctuwhacqrmxmktpzllyxxhdxd` int DEFAULT NULL,\n `mvhtogkqyiftutdswotpyavxriqngnui` int DEFAULT NULL,\n `djqjuqmujabxdsjuxjqhvcbxklxtlysb` int DEFAULT NULL,\n `nukqotxzleveygwxilqfcxsvbnocmmdh` int DEFAULT NULL,\n `alroiljqujhjeyrwdxemqdgnjgbzlnzs` int DEFAULT NULL,\n `ojcyhsvxsaukiovrolvowagazkzxapxg` int DEFAULT NULL,\n `nwwqzcpjsidqyougngtjejvrfendgbzs` int DEFAULT NULL,\n `hobnbjvzrsomwxrjbxyvbasthikbpxum` int DEFAULT NULL,\n `ilgdswcyztjnxftsdewffixtyrwarlhv` int DEFAULT NULL,\n `ntyaulharotanleqnooqnnpusgkgslgv` int DEFAULT NULL,\n `nzetnphazksnppwmxdikzcpssmyfpxep` int DEFAULT NULL,\n `dzjsjdscmoieiywuihluzbgsdtmzwnaj` int DEFAULT NULL,\n `fiuptkqnblizymyctahkgecnerenkgou` int DEFAULT NULL,\n `ztthncaqzxneydmfkpxboaggoboxmqqv` int DEFAULT NULL,\n `switwcsjjzpngqwyposniskkgloftzgx` int DEFAULT NULL,\n `hjnnkhcpxsmuisdnpoibgvcxtyoeiqvr` int DEFAULT NULL,\n `uucjphzxwwuanjlnfasogssktsecpexr` int DEFAULT NULL,\n `xxwbckbxpdjroztcbhynxvzrradlvpec` int DEFAULT NULL,\n `xaqfsljivpscfargvlnekantugcjhnyj` int DEFAULT NULL,\n `vrkxchcrvrtcjjqrwyktenpqetddqmcw` int DEFAULT NULL,\n `ipnapxheperwcdggnfysjbsrnkynefgm` int DEFAULT NULL,\n `xpssuhhbopcdiryztbzlnnxiayjdqvbi` int DEFAULT NULL,\n `rwmnubsmeuqeqrjlwrkrshoupxnaemlk` int DEFAULT NULL,\n `jidakwmhsthgsknzjkhvsuscjzhbacew` int DEFAULT NULL,\n `qajsrwipxsyvmzezqtchvgtjtukibzbf` int DEFAULT NULL,\n `wxonyuxarjypgyfhhedwwgxjvldbxcjb` int DEFAULT NULL,\n `oilkijlpfftapxmzcllrnpiflvxoapix` int DEFAULT NULL,\n `knsryamdtcckhkbjsqqmfufdfmbrjnbs` int DEFAULT NULL,\n `nhvlpbknuftocgfrmljajgxaecifqqpq` int DEFAULT NULL,\n PRIMARY KEY (`hwrbeiacfojtvaiodicdkvrtloturcqd`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"hyijqphvtvgdgegsnseyzeyooughktwe\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["hwrbeiacfojtvaiodicdkvrtloturcqd"],"columns":[{"name":"hwrbeiacfojtvaiodicdkvrtloturcqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"scdssplhfymiwzrpklklcxcgoknlvfyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfavcytewpzqzakgnvsyxrvzwcsldsww","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"djyfezprdqjvdfvryxavsqqlzivuzjjw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtdvslbfxspbeerwsgizwdjonrygmilq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kerevgffwjflfhwawomyzbxismvzbuao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pijcwneopqtqlbpgztlqvxatilxvjalu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljcnsrlagztqquzbeldwwhygpzlujoel","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjsbsjyopsizyxjzudnqpwlapmxfinev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smpczoojdzgumexgtlxovhtnoofzyubh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkjcnmuymqrbpmrkvhkvucyufidehcpb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"plasdypxeevfwmuofgpadfjpoyucepvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xanfqqvhethtyolvdmmqeifokavlyjgm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dttljbdnhzrtsmdnwsckudhsxybnwxxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bgpyyjhqtptrrocpazfjudfyaunjjpfq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ufqbdwtadgihvfyydgsccmpkekzabhyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljnajpbhwtpppbnrvzksosleaviwstkz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"frfalhzrctlnrccfolxlmsiwoantpgwh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdleowhpuhdzovrfsywdfwjodggolxwv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cywmascrncerefdqrfdnvodjwwozzoxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jtcbqzqvleylfknytmqzsmulxtvvupeh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gpeqzrxkomnrfjwtuxvorlasrqygkqqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pylpubcjannrieyvldqlkucuriaxesxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obtnpwwwczdruxksvajvckibfbisdfow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"namtadsaqrzzkjbkmepqhorxerackqkv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uwidehqncazffznlhfagctsoheoodhue","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ndtmnedddpdcyzvegpdvedyiuefwudfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"quyxnclxfvpozwolnvspgskolzjsthaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjmaviodpuhlnimldasxfawpqfrqbxlu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xfqwkrlbpoxxlzsdqlqipgalvfwwxenv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jcloakskluxqbxksgbgsnwstaeqgoarx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xwljqbnaglkzynxbrwncjloafbyhaifn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ochpnsmyidvqriaupdlwahlbmpwgipqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpozuktvwtfqoivonvufgwzbfrictypp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"adhhvamofjdfcxlhtkyjgtlhxsqrryiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aubsqmcvqpvyiqhhqgtnatclhtnksczu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ueohgxpesawawylllkwryokeqavcedza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbjzqelttxrghvsyifyywdcfxhxxeuqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"keoeklmcpflnfukdeuwrdwlbjeqynjcy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zpmyzvajkbmagvzyedarqkmnwuwfmlit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dljjwpbukhncaxltwiwszwwhihnfqfku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cyvdnzchftkjotyezxtprrijyroqbtuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ncekgpcqskzxlmxgrroqwvlncrghabbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwxbrtfjwkmxclehqpuzikzstmsapbsj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itfbulbidchtdqgtasfglswilwshiimg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tomvilhduzulgahmkraszymehcvqmurh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cercrhnafizvvkznefbgtqrorfvcvuka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kspvettrlgntgezzcpkwrcoxfjojwglm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcauzzkjugreddsqtfptpfeehvxoqhec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"euoangmtociugjxktizapdkhbentwlfr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aobomcmxvfpbsqbkvbnlehxjulcgieiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mscccdgyybszwvjbibbbjdzmxzblmnhu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqbbdeqicliytxebjvnizshmnvdyyhtj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evodyngoanvtpdgtkccoztcxyrqbndrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dsmxadaerpdmhsqvvvavqyujjeycnljq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhbvrhpgffifqzjxxdmmpijqfassjkkv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvkwzjznxmpzffnxzdxmubdaywycawlv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxhichsfccbpmrnvnagnbnrpenocxcaz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhunikekrethxzsnbmyawstqldmlyeju","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njjwydimfitnsovriudxdefvucjnorzp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbloocplbsooikdjhnszjqsedzmvakcf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxgeqlcydhmiccigswpbvbpntkgwtydu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ifzeeghdohnsbhhgwlhcalyrdwfzbaln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uidigvkmnjmgibekgrvrmilovedsaemy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"piflkkctjanlhkegaxjzcmaxxxmonjvz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnlgicvaprzroughtrvpoblddqponafd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnerfzexsrfaqotqafjienlhuruzhlpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aojzrbfvpfglcevtkkasnojkqutwoumj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ahxvrqunrirovxwnzvckauchsbgiybzp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggtyxgnwldpusitkbwdcosfjgazbnzna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llboedpahjxxkngrlneryjjajsjbzfey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kmmmwvcctuwhacqrmxmktpzllyxxhdxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvhtogkqyiftutdswotpyavxriqngnui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"djqjuqmujabxdsjuxjqhvcbxklxtlysb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nukqotxzleveygwxilqfcxsvbnocmmdh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"alroiljqujhjeyrwdxemqdgnjgbzlnzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojcyhsvxsaukiovrolvowagazkzxapxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nwwqzcpjsidqyougngtjejvrfendgbzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hobnbjvzrsomwxrjbxyvbasthikbpxum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ilgdswcyztjnxftsdewffixtyrwarlhv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntyaulharotanleqnooqnnpusgkgslgv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzetnphazksnppwmxdikzcpssmyfpxep","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dzjsjdscmoieiywuihluzbgsdtmzwnaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fiuptkqnblizymyctahkgecnerenkgou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ztthncaqzxneydmfkpxboaggoboxmqqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"switwcsjjzpngqwyposniskkgloftzgx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjnnkhcpxsmuisdnpoibgvcxtyoeiqvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uucjphzxwwuanjlnfasogssktsecpexr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxwbckbxpdjroztcbhynxvzrradlvpec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xaqfsljivpscfargvlnekantugcjhnyj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vrkxchcrvrtcjjqrwyktenpqetddqmcw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ipnapxheperwcdggnfysjbsrnkynefgm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xpssuhhbopcdiryztbzlnnxiayjdqvbi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rwmnubsmeuqeqrjlwrkrshoupxnaemlk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jidakwmhsthgsknzjkhvsuscjzhbacew","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qajsrwipxsyvmzezqtchvgtjtukibzbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxonyuxarjypgyfhhedwwgxjvldbxcjb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oilkijlpfftapxmzcllrnpiflvxoapix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knsryamdtcckhkbjsqqmfufdfmbrjnbs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhvlpbknuftocgfrmljajgxaecifqqpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668543,"databaseName":"models_schema","ddl":"CREATE TABLE `ifbeclftxswghnufrctevakgzhdsmlko` (\n `hxpmitvzzpzrvxynbckrserhqsqraxne` int NOT NULL,\n `vtxsyqjsvdhpbztvclvpwgtazkujimyz` int DEFAULT NULL,\n `prtrhlfydwhhvpozjpnmtusbzjwlwljl` int DEFAULT NULL,\n `fcwtcscskdftymfprvanpazbjghtzbpw` int DEFAULT NULL,\n `buaxlhyrtmrxmvwwuesmzbvlxiwnwctb` int DEFAULT NULL,\n `xqfogsbvuvlwrdgxyplhrbizmzervpmz` int DEFAULT NULL,\n `keratpwlnumrivlcivrihlvhejaftkqm` int DEFAULT NULL,\n `eeqomzcfogzyephwpdgltjwqsexwjumo` int DEFAULT NULL,\n `sjwerpccdnpykavjkzhmbpwqmoomsale` int DEFAULT NULL,\n `dhcbmcutefioocymsyusyflawbbipkxm` int DEFAULT NULL,\n `sbttpcikdqlyzhcehbbgqdxbeqecbrrf` int DEFAULT NULL,\n `elrvjfsjnaclefakqjwfovcjulumkqtd` int DEFAULT NULL,\n `lprctxfpntjqjcdpigmtaecgefbkzuxt` int DEFAULT NULL,\n `qtshtvpeircwsqdeipgdasxrhofupgoa` int DEFAULT NULL,\n `uljsjbjnilkhcqiqydijawqhvrrckyso` int DEFAULT NULL,\n `gyyewjgryqdponchtyenbbhgsjrweeqh` int DEFAULT NULL,\n `zydkaxrsmybycbewhpcfvccamwjxdugv` int DEFAULT NULL,\n `opztuqjndkhqhgnzhbylliynytgjyhko` int DEFAULT NULL,\n `fbltudlpsrwfkhzfrshqvfarfiyqfyjj` int DEFAULT NULL,\n `qmylyqiejdijnotpxcxkfxjiyvfvsewk` int DEFAULT NULL,\n `qlgwqoszgztcthgmtsqotxjipoqensrk` int DEFAULT NULL,\n `skewjgulsscyglmjcilkndfzkdkchlmc` int DEFAULT NULL,\n `kibdxwoetkumasylgbbkwsucmrmubisr` int DEFAULT NULL,\n `igwgekkaoahvqxhbhvjadnvwuaoewdcd` int DEFAULT NULL,\n `fokratrgntskelomielhnrzhxmmlpgdm` int DEFAULT NULL,\n `ykflkdjzuixrcqrwhkvubylmmjzsuglr` int DEFAULT NULL,\n `oyyokodrdawwmzglxxulhapntqvvmgyu` int DEFAULT NULL,\n `udmymochdfdrlqcjfkwvzonhsybovnbc` int DEFAULT NULL,\n `qyiddxmtfiqqkyowteefugvumivbefco` int DEFAULT NULL,\n `hbslpqjnltkikqyeuldznwfebpipxvbv` int DEFAULT NULL,\n `jkmewjizgquqdrjnufwceyeylbhehngo` int DEFAULT NULL,\n `odvvsgocqshwtmmxvqnmghehjfdlcgeb` int DEFAULT NULL,\n `ekvtlqzumlzejmxibfrruuloxcsjhitb` int DEFAULT NULL,\n `bioluaghgtvnhqxqnyyvcloosmqnxqnu` int DEFAULT NULL,\n `hvslwfbhxswhvnjxeldtasrxpetwrhfo` int DEFAULT NULL,\n `alwgigngksokqdkugoylfjpwzjfkrioj` int DEFAULT NULL,\n `ntemjtavmlomvrslxzmxoxwlpwtrdkua` int DEFAULT NULL,\n `uosewpojkfrvzozytbgtcvvjdxtudtmj` int DEFAULT NULL,\n `ndcdolhxekbnnthanhjksdsghndmddgk` int DEFAULT NULL,\n `xgggbssgjeawaarzqlappavdjfregatg` int DEFAULT NULL,\n `munizthkozgvzqzkjcsjeredgvoowthn` int DEFAULT NULL,\n `cyuxkwubevleqptfoiphkgjuplobivuu` int DEFAULT NULL,\n `xrgnsqcmsyetufwuzcnyzkespeawntyg` int DEFAULT NULL,\n `leouovocancqvkrqetohjtwwgssqxvnj` int DEFAULT NULL,\n `ppdelcsoztddkjdqaekragubyblbxxvn` int DEFAULT NULL,\n `yqylapdjwhxeproqgmxmklzenzcuvqmy` int DEFAULT NULL,\n `zfmmsbnsuyjnjxfjqfznetcyxkjcinuk` int DEFAULT NULL,\n `sxvteykwtotsaypobaztckdnvyhjcymt` int DEFAULT NULL,\n `obpltbosguppfrqkgricosjpmmymbelw` int DEFAULT NULL,\n `xunmyoquonhqvscazwgqxuaqelppblni` int DEFAULT NULL,\n `fqxegiwtufwooexmbrrtxyblconwnazz` int DEFAULT NULL,\n `aldurwtdlrjezzfkxgxytpwerleohsmt` int DEFAULT NULL,\n `eyzaqnylhjpljaytwfdltaqphqhdebgt` int DEFAULT NULL,\n `ksmqsjfohbqlkfjuxuxihperuawhkrpk` int DEFAULT NULL,\n `dvkvvdpzkogvlwleoniwaskfyzybaqtv` int DEFAULT NULL,\n `mgxlwczxpzruvfeadjqmlrfomjlggvnr` int DEFAULT NULL,\n `qdlxaafmlwzinxkpjsbeybgcwhtebmma` int DEFAULT NULL,\n `ueddugwgbcbbsuxwfwstkmctxirtvxyx` int DEFAULT NULL,\n `jlvzwgwgomgdppgqikzldlbrpqqftxbp` int DEFAULT NULL,\n `oavakmdrmhwsmbtumjzgpdhknrydaxsm` int DEFAULT NULL,\n `qkrmycpxdfjlxrhlvfvwkvwnhotypfwv` int DEFAULT NULL,\n `toayveyrmmggussfjilxioldnurkqljq` int DEFAULT NULL,\n `buggdzldklzfmhvmthrpqsgskavxbles` int DEFAULT NULL,\n `frnluvrlezfgvkgrnlvwvddseulghwkf` int DEFAULT NULL,\n `cutiwjofdbacfmzmwgcacficncnvyshm` int DEFAULT NULL,\n `qscimjetrtvqhrhhpboiqgyiarovnzfm` int DEFAULT NULL,\n `sawbzbonpkvkaxcyacgsqtqxjpewuddk` int DEFAULT NULL,\n `tvklmetonywcnuqudzmgcpdfentmdugs` int DEFAULT NULL,\n `mnjqqstbqtxyevyiczmynbcytphxejgf` int DEFAULT NULL,\n `jtsevwkdssfgnlwndkofnbvhlirzhckg` int DEFAULT NULL,\n `jykyjuoelwfkqaehyghrbvnxwtpzhoto` int DEFAULT NULL,\n `zzxpmafxhtckezrustleelphvygzeuwq` int DEFAULT NULL,\n `ezalqitaevsydcszhnofjcmnrzbmawom` int DEFAULT NULL,\n `sjkasfqxhkodmlxwhnghptioiztvofut` int DEFAULT NULL,\n `rfdtktfndnhorjkxvxicoxinjefzsqmy` int DEFAULT NULL,\n `dtkrgriqyxwhivmofkoqvodyibtjxpkg` int DEFAULT NULL,\n `uozjvlhcnyidwnjdfvrjqfdmsutxeppf` int DEFAULT NULL,\n `hqglkuhnhumbwbjafbhzxkcvjyzbrbrw` int DEFAULT NULL,\n `byvsfcykgmapflzsexbatuuknqrtaflf` int DEFAULT NULL,\n `sfyxcalqzhrinfloylbbrhtphbciqrjm` int DEFAULT NULL,\n `wvjplmuhcnriycpjbhseoqtdqxyqmqlz` int DEFAULT NULL,\n `sfnhksjvcdnvjeuvkmsqgvevmynrghgc` int DEFAULT NULL,\n `edfyomubizlgicvkpitgddvwvitrknwq` int DEFAULT NULL,\n `tzxnwmzklqoisvvobexnwyonqxwvggbk` int DEFAULT NULL,\n `gnmoltulkucnicfixfxrakedvugjmcza` int DEFAULT NULL,\n `uqvxrfogzxqpeeaxebdytxtyqkitcnxp` int DEFAULT NULL,\n `oauzokqrwnouylrvtlhwhpirmfqzxbsd` int DEFAULT NULL,\n `xydcsqdhpdxmdamxatquincqzybhafvb` int DEFAULT NULL,\n `vadajpjedltytakpuumejgoyhfnqfvdx` int DEFAULT NULL,\n `erlfbvcwlegpetykpjxqjtsljqogkfui` int DEFAULT NULL,\n `tnulnalrqqnblgsisfeueqavbnnwedmq` int DEFAULT NULL,\n `wiytxpsidtqoffijiedhmzumfnsuplou` int DEFAULT NULL,\n `geypgkivqznvszigmexukagzswykhxev` int DEFAULT NULL,\n `hsrdizuizzqpthcltqcvphuqgamiciyf` int DEFAULT NULL,\n `idltweusmaozfeumrjpteusewdvuitxa` int DEFAULT NULL,\n `ypvermwcpddwrhlhvvimrziaggnajtdu` int DEFAULT NULL,\n `ojwvjcmhrnmsresdxrqxpnbuglzrtgqb` int DEFAULT NULL,\n `otexsgacnrtruzymbqqxcvxfitfeewae` int DEFAULT NULL,\n `dsxgpunfeahzwonvbubmmeedgjaaeyna` int DEFAULT NULL,\n `notxylcffsytyzpcpbfmkabxzpywnzkw` int DEFAULT NULL,\n PRIMARY KEY (`hxpmitvzzpzrvxynbckrserhqsqraxne`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"ifbeclftxswghnufrctevakgzhdsmlko\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["hxpmitvzzpzrvxynbckrserhqsqraxne"],"columns":[{"name":"hxpmitvzzpzrvxynbckrserhqsqraxne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"vtxsyqjsvdhpbztvclvpwgtazkujimyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prtrhlfydwhhvpozjpnmtusbzjwlwljl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcwtcscskdftymfprvanpazbjghtzbpw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"buaxlhyrtmrxmvwwuesmzbvlxiwnwctb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqfogsbvuvlwrdgxyplhrbizmzervpmz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"keratpwlnumrivlcivrihlvhejaftkqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eeqomzcfogzyephwpdgltjwqsexwjumo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjwerpccdnpykavjkzhmbpwqmoomsale","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhcbmcutefioocymsyusyflawbbipkxm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbttpcikdqlyzhcehbbgqdxbeqecbrrf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"elrvjfsjnaclefakqjwfovcjulumkqtd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lprctxfpntjqjcdpigmtaecgefbkzuxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtshtvpeircwsqdeipgdasxrhofupgoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uljsjbjnilkhcqiqydijawqhvrrckyso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gyyewjgryqdponchtyenbbhgsjrweeqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zydkaxrsmybycbewhpcfvccamwjxdugv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opztuqjndkhqhgnzhbylliynytgjyhko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbltudlpsrwfkhzfrshqvfarfiyqfyjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmylyqiejdijnotpxcxkfxjiyvfvsewk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qlgwqoszgztcthgmtsqotxjipoqensrk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skewjgulsscyglmjcilkndfzkdkchlmc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kibdxwoetkumasylgbbkwsucmrmubisr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igwgekkaoahvqxhbhvjadnvwuaoewdcd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fokratrgntskelomielhnrzhxmmlpgdm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykflkdjzuixrcqrwhkvubylmmjzsuglr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oyyokodrdawwmzglxxulhapntqvvmgyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udmymochdfdrlqcjfkwvzonhsybovnbc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qyiddxmtfiqqkyowteefugvumivbefco","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbslpqjnltkikqyeuldznwfebpipxvbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jkmewjizgquqdrjnufwceyeylbhehngo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"odvvsgocqshwtmmxvqnmghehjfdlcgeb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekvtlqzumlzejmxibfrruuloxcsjhitb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bioluaghgtvnhqxqnyyvcloosmqnxqnu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hvslwfbhxswhvnjxeldtasrxpetwrhfo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"alwgigngksokqdkugoylfjpwzjfkrioj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntemjtavmlomvrslxzmxoxwlpwtrdkua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uosewpojkfrvzozytbgtcvvjdxtudtmj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ndcdolhxekbnnthanhjksdsghndmddgk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xgggbssgjeawaarzqlappavdjfregatg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"munizthkozgvzqzkjcsjeredgvoowthn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cyuxkwubevleqptfoiphkgjuplobivuu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xrgnsqcmsyetufwuzcnyzkespeawntyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"leouovocancqvkrqetohjtwwgssqxvnj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ppdelcsoztddkjdqaekragubyblbxxvn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqylapdjwhxeproqgmxmklzenzcuvqmy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zfmmsbnsuyjnjxfjqfznetcyxkjcinuk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sxvteykwtotsaypobaztckdnvyhjcymt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obpltbosguppfrqkgricosjpmmymbelw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xunmyoquonhqvscazwgqxuaqelppblni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqxegiwtufwooexmbrrtxyblconwnazz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aldurwtdlrjezzfkxgxytpwerleohsmt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eyzaqnylhjpljaytwfdltaqphqhdebgt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ksmqsjfohbqlkfjuxuxihperuawhkrpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvkvvdpzkogvlwleoniwaskfyzybaqtv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mgxlwczxpzruvfeadjqmlrfomjlggvnr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdlxaafmlwzinxkpjsbeybgcwhtebmma","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ueddugwgbcbbsuxwfwstkmctxirtvxyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlvzwgwgomgdppgqikzldlbrpqqftxbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oavakmdrmhwsmbtumjzgpdhknrydaxsm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qkrmycpxdfjlxrhlvfvwkvwnhotypfwv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"toayveyrmmggussfjilxioldnurkqljq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"buggdzldklzfmhvmthrpqsgskavxbles","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"frnluvrlezfgvkgrnlvwvddseulghwkf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cutiwjofdbacfmzmwgcacficncnvyshm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qscimjetrtvqhrhhpboiqgyiarovnzfm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sawbzbonpkvkaxcyacgsqtqxjpewuddk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvklmetonywcnuqudzmgcpdfentmdugs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnjqqstbqtxyevyiczmynbcytphxejgf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jtsevwkdssfgnlwndkofnbvhlirzhckg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jykyjuoelwfkqaehyghrbvnxwtpzhoto","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzxpmafxhtckezrustleelphvygzeuwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezalqitaevsydcszhnofjcmnrzbmawom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjkasfqxhkodmlxwhnghptioiztvofut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfdtktfndnhorjkxvxicoxinjefzsqmy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtkrgriqyxwhivmofkoqvodyibtjxpkg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uozjvlhcnyidwnjdfvrjqfdmsutxeppf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqglkuhnhumbwbjafbhzxkcvjyzbrbrw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"byvsfcykgmapflzsexbatuuknqrtaflf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfyxcalqzhrinfloylbbrhtphbciqrjm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wvjplmuhcnriycpjbhseoqtdqxyqmqlz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfnhksjvcdnvjeuvkmsqgvevmynrghgc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edfyomubizlgicvkpitgddvwvitrknwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tzxnwmzklqoisvvobexnwyonqxwvggbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnmoltulkucnicfixfxrakedvugjmcza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqvxrfogzxqpeeaxebdytxtyqkitcnxp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oauzokqrwnouylrvtlhwhpirmfqzxbsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xydcsqdhpdxmdamxatquincqzybhafvb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vadajpjedltytakpuumejgoyhfnqfvdx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"erlfbvcwlegpetykpjxqjtsljqogkfui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnulnalrqqnblgsisfeueqavbnnwedmq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wiytxpsidtqoffijiedhmzumfnsuplou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"geypgkivqznvszigmexukagzswykhxev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hsrdizuizzqpthcltqcvphuqgamiciyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idltweusmaozfeumrjpteusewdvuitxa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypvermwcpddwrhlhvvimrziaggnajtdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojwvjcmhrnmsresdxrqxpnbuglzrtgqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otexsgacnrtruzymbqqxcvxfitfeewae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dsxgpunfeahzwonvbubmmeedgjaaeyna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"notxylcffsytyzpcpbfmkabxzpywnzkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668578,"databaseName":"models_schema","ddl":"CREATE TABLE `ihrmsdgptsjleslopqmanczyqcdtudap` (\n `omgscaajrsnhepoxqpxaeduiojjigfbd` int NOT NULL,\n `emnwinnjxykbjuttwwremknorzdhfftu` int DEFAULT NULL,\n `mguoswiiamsmntrngvlhnwjkkaxbehdp` int DEFAULT NULL,\n `nsvkkmwlodnidabhpjveykcrhaxihgiq` int DEFAULT NULL,\n `bhrehocxhhbycgwztbkwvaojbqqsbaqi` int DEFAULT NULL,\n `nhlwgnttwizbbiddnjgatqowboxsoknb` int DEFAULT NULL,\n `xotevviyujojeupaetyazseoefmepcyg` int DEFAULT NULL,\n `mcyzglgrcygphmvbhbumsekdpkdzmdxl` int DEFAULT NULL,\n `cxfgujtvfwldztfcytarbcaznpasbxmp` int DEFAULT NULL,\n `sstgmmdomrkmcnytosgizzyieqgjscrk` int DEFAULT NULL,\n `qugvqllmceagbebbefrihjlihhqccbyx` int DEFAULT NULL,\n `eklnwvjdaxyfnzdjgwflvsnhfggshghk` int DEFAULT NULL,\n `uinxvxnsghofiejljyyrhuqnfrhruypw` int DEFAULT NULL,\n `uilatowssmjvwpgyvjpqvtxiyfibluzs` int DEFAULT NULL,\n `fmbcffimobbiqaupbnmjbwwupsleuukl` int DEFAULT NULL,\n `ewglddxzlygblkyvtcxfugperntyjnkr` int DEFAULT NULL,\n `geggatzdyjvpjyisxyzberjzyrdlzbpr` int DEFAULT NULL,\n `ygroepsswilohrxemyfiwnvhyubzfgdq` int DEFAULT NULL,\n `pwwfddbymewbebeqdrqzdwuxzmgiewbr` int DEFAULT NULL,\n `xfozfpojvrldlxlthpgkfnutnlyvhlrf` int DEFAULT NULL,\n `ykewzbiexokiurkdkluhxjpsibayzuju` int DEFAULT NULL,\n `jioyhiwfpkslpnxjppreiuzvcyjcrsau` int DEFAULT NULL,\n `ayrgqssrgtzpmbrfbxqncsvaknkvkatk` int DEFAULT NULL,\n `tkmqbiaaokhvikyiofhzkodbuxzxvaqc` int DEFAULT NULL,\n `qhquauetyhekfbyjhddqilggeycfaktr` int DEFAULT NULL,\n `zxdypzufbypigkkqetdnbxeariulpzxy` int DEFAULT NULL,\n `xzaznsbdgvjsyksozydatcsvfckalqzq` int DEFAULT NULL,\n `lbidzfkqgsxwykuuyjgrsszljbxudeyt` int DEFAULT NULL,\n `sisjelhcdpkbmiycpasmjiphhgmtpgzm` int DEFAULT NULL,\n `vqbdoiwyiqgrcxuebljgsqizhyltjypo` int DEFAULT NULL,\n `rcsxmzswajlbofnjhhhyyqojhaoeoyde` int DEFAULT NULL,\n `pxvryiguuutphxrqfzbgbssiibawduqu` int DEFAULT NULL,\n `ohrzbhphuodliwqcaqafqvdfjmbpqvjo` int DEFAULT NULL,\n `zryixbhfsksrfynbtoirafruvhnpdtpj` int DEFAULT NULL,\n `jwojcgobvnwxvttrsvkbdwemmluaehkz` int DEFAULT NULL,\n `fsirhtcxrzbcohmbcthicokjpnzezojd` int DEFAULT NULL,\n `cabaubqflfgvxunqlepervedmdrhluxt` int DEFAULT NULL,\n `pfnoijuupucvwcohjhhnmdfwszigyokf` int DEFAULT NULL,\n `drcykzxrkaidxdsbbexkcwhaktqearyj` int DEFAULT NULL,\n `eroinyxqnlhlzmuplfyrplfxynzozlfi` int DEFAULT NULL,\n `mdmdghtihdxiezcjioogsohlxfxqwpuu` int DEFAULT NULL,\n `tmrcgoojkxbxfqyiuutbsvvcepdiembp` int DEFAULT NULL,\n `kkwyrlwvswcpaqzixfqdzajokflvizyb` int DEFAULT NULL,\n `jtyddhoxrsiyyljmgzfyvlnexnvdvlhw` int DEFAULT NULL,\n `pfhzvdmlncvtgylpzqzpvywxopdgnbvl` int DEFAULT NULL,\n `ianmpbxvcwbcdnlxqsvpymomzjohrlbd` int DEFAULT NULL,\n `fpfkerekmgvqvyvupprnaqbilngntedn` int DEFAULT NULL,\n `orrewoxehzleznrxynrsbafmlgmcfynn` int DEFAULT NULL,\n `dervvynfadxnyngyxfazrllchhsdyxjx` int DEFAULT NULL,\n `mluinycondpvlsrpjedbhjgrgjyikkgj` int DEFAULT NULL,\n `qphhgqsllhzfndncvtwdmmygvojhwxrd` int DEFAULT NULL,\n `rapdlwpimlhhlsqvnfemucvdqveephgs` int DEFAULT NULL,\n `ootwtyoufqtjfivyjokuqhwptwmkouza` int DEFAULT NULL,\n `qtkbnuhtnofpxsirzitwgflwhatyyhqz` int DEFAULT NULL,\n `gdntsyhwgnqmkzbhjukifaciuflzwcvj` int DEFAULT NULL,\n `rxmyxgvgxcgkqnabqcygmhmjsyvcnomo` int DEFAULT NULL,\n `gbplpjphcojaobxwygnqmuiqnyfnurrw` int DEFAULT NULL,\n `rsqzgvmuipfabrgyfwwlnotnnhkhddvt` int DEFAULT NULL,\n `pztczqjdxhabfzwxsaoqiqhjxwqomklw` int DEFAULT NULL,\n `gwujrdlfjgysfqqbjbghogphifixbsrt` int DEFAULT NULL,\n `urlutxtcrvoblpyzusrninzjhazdkpub` int DEFAULT NULL,\n `hbccrjjiywjoymxosmiwxngzarfkvfnn` int DEFAULT NULL,\n `mdjarlgipndbyeyvubqhpcjwxtvvhjkm` int DEFAULT NULL,\n `xjjpvreyrekpvyztaxbnvngafedhdcfr` int DEFAULT NULL,\n `sryuiebstqmkymuqzbpdswgsexiwrtui` int DEFAULT NULL,\n `mtfwuptxkcyxpoqjadszbiyfucxwjuri` int DEFAULT NULL,\n `hudkpxiyyeztonxuobsecgaaeotidvfg` int DEFAULT NULL,\n `kjwwszdyoldpcgkqmjnwvaptarqjgwek` int DEFAULT NULL,\n `lvexgrsshjfskxlzcmwkrdmritvyntwl` int DEFAULT NULL,\n `ukhbhvgrohcofizgkvxvwpvtukcpyglp` int DEFAULT NULL,\n `uatkwdnspinifbkaiyekrqokutddbfam` int DEFAULT NULL,\n `ncmngeelnorhljpwhygmgbwuzqfxbqvm` int DEFAULT NULL,\n `wvdhuaqgqiorxmcpjffahsnelocyfflc` int DEFAULT NULL,\n `avhpoifmjziwyaqcdjinyywznjxzsopy` int DEFAULT NULL,\n `gdavmtqvrkucxzksqwkrjqizqzzjjkqe` int DEFAULT NULL,\n `uqirvdryjggevsricmjryiknjihllnmg` int DEFAULT NULL,\n `jshyyozomtyxxuernfsicpbmcqngzmvw` int DEFAULT NULL,\n `zqpictwhsbrzrzmncnqgdxnrcrwcqxek` int DEFAULT NULL,\n `tvfffabgzyzdkwjoylrocujmgzamhuqq` int DEFAULT NULL,\n `ivfkpyhkexbhxcrrniirblkjklbcpydr` int DEFAULT NULL,\n `isvlquopxiftbbtvgarvizleuswbleqj` int DEFAULT NULL,\n `pyfspamidcmgxjiegfalvulcvzvtlofj` int DEFAULT NULL,\n `wexdsyxsfqzjpvckuhxbqpgzxlovafhn` int DEFAULT NULL,\n `jercaxryluciydpilznzshrrkfoqplzh` int DEFAULT NULL,\n `paybwvnsykrjifcmuanereklpmroclai` int DEFAULT NULL,\n `sxkicylndzwjczoklvltqdgpvezrtxom` int DEFAULT NULL,\n `nvhxxckxgvcxbzqakheynvuipxxtopsw` int DEFAULT NULL,\n `rdsgphwggspqhjobnzncuicxamrdnajs` int DEFAULT NULL,\n `ktdxgfneqxxzdljgyfnfbhaaieueorkr` int DEFAULT NULL,\n `tuloaesdsbiqhljlhduuhosdahaiycsg` int DEFAULT NULL,\n `dloobsupmntjcpobjkvkwowpawbdsjyk` int DEFAULT NULL,\n `hczupmmopyqnnsrijvpitdpwfhvnvucr` int DEFAULT NULL,\n `fncabuxrknicvqgvlbatntnyqmswsidl` int DEFAULT NULL,\n `equsrpiweuwyptjbrdtwdcanuyjmmpcs` int DEFAULT NULL,\n `bqdbrjolcsciqriamijoeyndhnwxrwcs` int DEFAULT NULL,\n `xlgoiphprrbmzwidlfchipnsvquejvyx` int DEFAULT NULL,\n `kopkwzeukmpzridmdzdycudartifxguc` int DEFAULT NULL,\n `ioblxvzxzlywenvmmizyqmlupkvmlipu` int DEFAULT NULL,\n `nhneuljiogdsreyhomlbyqahjkapggmr` int DEFAULT NULL,\n `qlwlaqaigdrrbuspizwprbrxkaqqluzq` int DEFAULT NULL,\n PRIMARY KEY (`omgscaajrsnhepoxqpxaeduiojjigfbd`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"ihrmsdgptsjleslopqmanczyqcdtudap\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["omgscaajrsnhepoxqpxaeduiojjigfbd"],"columns":[{"name":"omgscaajrsnhepoxqpxaeduiojjigfbd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"emnwinnjxykbjuttwwremknorzdhfftu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mguoswiiamsmntrngvlhnwjkkaxbehdp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nsvkkmwlodnidabhpjveykcrhaxihgiq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bhrehocxhhbycgwztbkwvaojbqqsbaqi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhlwgnttwizbbiddnjgatqowboxsoknb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xotevviyujojeupaetyazseoefmepcyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcyzglgrcygphmvbhbumsekdpkdzmdxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cxfgujtvfwldztfcytarbcaznpasbxmp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sstgmmdomrkmcnytosgizzyieqgjscrk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qugvqllmceagbebbefrihjlihhqccbyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eklnwvjdaxyfnzdjgwflvsnhfggshghk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uinxvxnsghofiejljyyrhuqnfrhruypw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uilatowssmjvwpgyvjpqvtxiyfibluzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmbcffimobbiqaupbnmjbwwupsleuukl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ewglddxzlygblkyvtcxfugperntyjnkr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"geggatzdyjvpjyisxyzberjzyrdlzbpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ygroepsswilohrxemyfiwnvhyubzfgdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwwfddbymewbebeqdrqzdwuxzmgiewbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xfozfpojvrldlxlthpgkfnutnlyvhlrf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykewzbiexokiurkdkluhxjpsibayzuju","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jioyhiwfpkslpnxjppreiuzvcyjcrsau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ayrgqssrgtzpmbrfbxqncsvaknkvkatk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkmqbiaaokhvikyiofhzkodbuxzxvaqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhquauetyhekfbyjhddqilggeycfaktr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxdypzufbypigkkqetdnbxeariulpzxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xzaznsbdgvjsyksozydatcsvfckalqzq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lbidzfkqgsxwykuuyjgrsszljbxudeyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sisjelhcdpkbmiycpasmjiphhgmtpgzm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqbdoiwyiqgrcxuebljgsqizhyltjypo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcsxmzswajlbofnjhhhyyqojhaoeoyde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxvryiguuutphxrqfzbgbssiibawduqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohrzbhphuodliwqcaqafqvdfjmbpqvjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zryixbhfsksrfynbtoirafruvhnpdtpj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwojcgobvnwxvttrsvkbdwemmluaehkz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fsirhtcxrzbcohmbcthicokjpnzezojd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cabaubqflfgvxunqlepervedmdrhluxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pfnoijuupucvwcohjhhnmdfwszigyokf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drcykzxrkaidxdsbbexkcwhaktqearyj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eroinyxqnlhlzmuplfyrplfxynzozlfi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mdmdghtihdxiezcjioogsohlxfxqwpuu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmrcgoojkxbxfqyiuutbsvvcepdiembp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kkwyrlwvswcpaqzixfqdzajokflvizyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jtyddhoxrsiyyljmgzfyvlnexnvdvlhw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pfhzvdmlncvtgylpzqzpvywxopdgnbvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ianmpbxvcwbcdnlxqsvpymomzjohrlbd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpfkerekmgvqvyvupprnaqbilngntedn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orrewoxehzleznrxynrsbafmlgmcfynn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dervvynfadxnyngyxfazrllchhsdyxjx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mluinycondpvlsrpjedbhjgrgjyikkgj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qphhgqsllhzfndncvtwdmmygvojhwxrd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rapdlwpimlhhlsqvnfemucvdqveephgs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ootwtyoufqtjfivyjokuqhwptwmkouza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtkbnuhtnofpxsirzitwgflwhatyyhqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdntsyhwgnqmkzbhjukifaciuflzwcvj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxmyxgvgxcgkqnabqcygmhmjsyvcnomo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gbplpjphcojaobxwygnqmuiqnyfnurrw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rsqzgvmuipfabrgyfwwlnotnnhkhddvt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pztczqjdxhabfzwxsaoqiqhjxwqomklw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gwujrdlfjgysfqqbjbghogphifixbsrt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urlutxtcrvoblpyzusrninzjhazdkpub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbccrjjiywjoymxosmiwxngzarfkvfnn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mdjarlgipndbyeyvubqhpcjwxtvvhjkm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjjpvreyrekpvyztaxbnvngafedhdcfr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sryuiebstqmkymuqzbpdswgsexiwrtui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtfwuptxkcyxpoqjadszbiyfucxwjuri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hudkpxiyyeztonxuobsecgaaeotidvfg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjwwszdyoldpcgkqmjnwvaptarqjgwek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvexgrsshjfskxlzcmwkrdmritvyntwl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ukhbhvgrohcofizgkvxvwpvtukcpyglp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uatkwdnspinifbkaiyekrqokutddbfam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ncmngeelnorhljpwhygmgbwuzqfxbqvm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wvdhuaqgqiorxmcpjffahsnelocyfflc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avhpoifmjziwyaqcdjinyywznjxzsopy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdavmtqvrkucxzksqwkrjqizqzzjjkqe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqirvdryjggevsricmjryiknjihllnmg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jshyyozomtyxxuernfsicpbmcqngzmvw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqpictwhsbrzrzmncnqgdxnrcrwcqxek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvfffabgzyzdkwjoylrocujmgzamhuqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivfkpyhkexbhxcrrniirblkjklbcpydr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"isvlquopxiftbbtvgarvizleuswbleqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pyfspamidcmgxjiegfalvulcvzvtlofj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wexdsyxsfqzjpvckuhxbqpgzxlovafhn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jercaxryluciydpilznzshrrkfoqplzh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"paybwvnsykrjifcmuanereklpmroclai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sxkicylndzwjczoklvltqdgpvezrtxom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvhxxckxgvcxbzqakheynvuipxxtopsw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdsgphwggspqhjobnzncuicxamrdnajs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ktdxgfneqxxzdljgyfnfbhaaieueorkr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tuloaesdsbiqhljlhduuhosdahaiycsg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dloobsupmntjcpobjkvkwowpawbdsjyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hczupmmopyqnnsrijvpitdpwfhvnvucr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fncabuxrknicvqgvlbatntnyqmswsidl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"equsrpiweuwyptjbrdtwdcanuyjmmpcs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqdbrjolcsciqriamijoeyndhnwxrwcs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xlgoiphprrbmzwidlfchipnsvquejvyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kopkwzeukmpzridmdzdycudartifxguc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ioblxvzxzlywenvmmizyqmlupkvmlipu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhneuljiogdsreyhomlbyqahjkapggmr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qlwlaqaigdrrbuspizwprbrxkaqqluzq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668609,"databaseName":"models_schema","ddl":"CREATE TABLE `iigengzntldyhysbkebjxfctfqrglsed` (\n `vpfkurfqtwucfpklpyxsbxolxvbiycuu` int NOT NULL,\n `kgdmnemywumwpxdbfxaswetxcnhvouwg` int DEFAULT NULL,\n `sbssjrptjpemezwhpafrdvujaqefctiv` int DEFAULT NULL,\n `xhmfdkweewfirrxymxubogengnbfzrjo` int DEFAULT NULL,\n `kcmiigejxevdavodubcaootceawlquha` int DEFAULT NULL,\n `yvrxcbnstfevzkpjmjzkigfttzzndgve` int DEFAULT NULL,\n `vhnkjmkndghiruvkgxmidjoiwhsjbydk` int DEFAULT NULL,\n `fbfryhnbfkqbsqqrfnyzzusxjerqvamz` int DEFAULT NULL,\n `rexjnpwebkmdaowicoemoljxyosqjaus` int DEFAULT NULL,\n `mrniyhkacqvoxyuccpenrlxszzfpfuxh` int DEFAULT NULL,\n `qkwujmeaqnnyeifeuevoumdmlhnbdrsd` int DEFAULT NULL,\n `dejzijyhvjmwqaurbutkvjpnrxlabcxt` int DEFAULT NULL,\n `zldtshblsjgeelqdiyxuauinkhnisxdp` int DEFAULT NULL,\n `momlltqbekmkvqlyyuelsrgpsmkqxpwo` int DEFAULT NULL,\n `pupcfvwtppgxnjjuohxeestqvezakkuz` int DEFAULT NULL,\n `xjauhgdisjpldbpydmiotappxhzoxpwe` int DEFAULT NULL,\n `ydlagfuubustdsexpgagijjccbnmvoop` int DEFAULT NULL,\n `rxssrrsexvnqjxmgdrkzuiaojfztebha` int DEFAULT NULL,\n `tjicuirytsltahoftembmashvtbhmqoe` int DEFAULT NULL,\n `ytvspkfannuxfjynovnfuyavcqsxfpom` int DEFAULT NULL,\n `zyqyjrmwolafebcgsntlvkjzwitkrllt` int DEFAULT NULL,\n `atwqcduoibpapqwinzkomfadgahfprrz` int DEFAULT NULL,\n `zsgvubtgpyxqemakbxncvqdjhidewvru` int DEFAULT NULL,\n `kzeecrgagohwtqzchbtdesoehcjkiciw` int DEFAULT NULL,\n `rdkkyjxfupaybktjlkskiplvlstksykw` int DEFAULT NULL,\n `nyqodkyppbgmlxbqwnflqexyzwksgzld` int DEFAULT NULL,\n `xagwewbxpvyywlagxsktdptnghcofvfq` int DEFAULT NULL,\n `bvuzayzligrfquohpovsazvweivyopwg` int DEFAULT NULL,\n `hftqahpfpvbcduhrbuawmrtaoaktlvov` int DEFAULT NULL,\n `jbzchfrthfwvpxregpfjtzrshlfwwrvu` int DEFAULT NULL,\n `jajiaujcholmijxcjyopqaixmxeacugy` int DEFAULT NULL,\n `xbkilmshzpanjxdopywswevqbpxnsfdz` int DEFAULT NULL,\n `mwpavyxbmsgkpcegjhtfgfblekepijox` int DEFAULT NULL,\n `xuahijzvbdsrbwucohpefypavwgvduwi` int DEFAULT NULL,\n `obkkflonlqbetlqjqqqdcqjnkwkaoyme` int DEFAULT NULL,\n `cateqgfzzytydlnqeiaqmbatezizadre` int DEFAULT NULL,\n `aitpkeqzckltquisiuvvmstcqxiatira` int DEFAULT NULL,\n `ycuwxplcnjnmleltvoyvraxnnaynsayq` int DEFAULT NULL,\n `edsotvghechundzfoejmkfjundorushp` int DEFAULT NULL,\n `hshpxjzaaqjsvpgexypittvwpewaxoub` int DEFAULT NULL,\n `baoltkgbxaxghtyynrwjxxuwauwvgizo` int DEFAULT NULL,\n `rauzxkgaliwzcbitqnuegxdqhyegccak` int DEFAULT NULL,\n `mzpvvkdrxwfsnbnameouilgkvcnelqsm` int DEFAULT NULL,\n `fbvxzvykggcyhdbbjqjrnwtmcwmbasnw` int DEFAULT NULL,\n `tesnbgmapxviuqjmlflnzhgbdnvwbtko` int DEFAULT NULL,\n `xwrrzqbcyrvcicpnjqzhhgdptlxisjkf` int DEFAULT NULL,\n `kvivhelrkvzyxiyfwgbtbvmccgysqcrk` int DEFAULT NULL,\n `irmglkgiqjnvgfczriesdzchdzdfbbeq` int DEFAULT NULL,\n `jzkmnbizhmddywzmpekapxyealyydfzt` int DEFAULT NULL,\n `wwlpffhsqmzlxzahinecpkbwniuvqbzk` int DEFAULT NULL,\n `btpagtjlcjdjgxjucgccykjmqanoidlp` int DEFAULT NULL,\n `jtzunrodghoaelfqokkqelnnovznvrkw` int DEFAULT NULL,\n `agtiiktcrioghzvkqcckmqivksnqhzzb` int DEFAULT NULL,\n `qmwriffdmqshbqzrmuymcpfisdadjooi` int DEFAULT NULL,\n `ruhezrfqeawpcmcgmkcngsirmfargmzs` int DEFAULT NULL,\n `ojfhubiheaqqgevjskhoteaxxupcckyo` int DEFAULT NULL,\n `ovayanlhpgqanpgwdczzrousubkhsthf` int DEFAULT NULL,\n `aloteffqotkkcicmttyqtnbhmggkppnw` int DEFAULT NULL,\n `isrnylcucnideqqkxgktqzmxakoqflsk` int DEFAULT NULL,\n `tmeoubuawbdhlddmqbbwzsfimxkfaeqs` int DEFAULT NULL,\n `mwmczrzhjwvmcbenxclclaphstxrazid` int DEFAULT NULL,\n `jzqhvkqwkxibtuytrhomoncwnmjujfau` int DEFAULT NULL,\n `kevldcxegzikqscgprkoqdsddmzxygij` int DEFAULT NULL,\n `mhfavblcchmjooveeounfcrwukoaoowj` int DEFAULT NULL,\n `qslnsfnxbxgbgxmrvkoxbphurrkohmca` int DEFAULT NULL,\n `apzlkwukiojblntvdlswticveigufgwk` int DEFAULT NULL,\n `jburgievzfwfliycazackfjbbopcvxxf` int DEFAULT NULL,\n `dhtjrsdzxeqmfofyuzjdvmogbaqcbcqa` int DEFAULT NULL,\n `krzkrgtemjrwhbqnyetqurbfenfxkrgq` int DEFAULT NULL,\n `mdtdvksioggmhrwtpvszfwvypikiidmo` int DEFAULT NULL,\n `lmzbtyhmzyhqtghxykmgyctrrgzyicet` int DEFAULT NULL,\n `icrqhoggqyvinuanmzevawnjbasfbjvj` int DEFAULT NULL,\n `cjustzdnmilewicricaogkpkezbyoqtq` int DEFAULT NULL,\n `hiljzbyygcvvtgiobrjdllcqhrgulxpu` int DEFAULT NULL,\n `qihzwqgkknglulacxmjerfdbmiwdrxtq` int DEFAULT NULL,\n `syfauxhoglsepdptgqxjcdpkmrssibij` int DEFAULT NULL,\n `yovbwltgyerrteyxixqezuyflrmymcsb` int DEFAULT NULL,\n `maiplwbjkiyxjilctypastodwmxjjskr` int DEFAULT NULL,\n `zlelysgjvcrtlwmeofrxxzhtwcndfuqy` int DEFAULT NULL,\n `zosjwdufnvbmyjqpyzwmxfwnjxhknuhi` int DEFAULT NULL,\n `odzdnpixspxsdcjbakhwpacbripfkixa` int DEFAULT NULL,\n `otsiwspcofwmcchkxwcazqzgeihzcokl` int DEFAULT NULL,\n `ehnmailmofmeisidlvfksbjovoiavauh` int DEFAULT NULL,\n `nfzmdrxfolsnrkftnujxopshsvriaavt` int DEFAULT NULL,\n `skpzxdttbjqozeuyvsjtqnkjgpumbicb` int DEFAULT NULL,\n `nfpiabesbicbaqvrbntlvniddoujrdct` int DEFAULT NULL,\n `fcexodwajbnedunnqlucbjhweefgczgs` int DEFAULT NULL,\n `ezejthgrghtowhooqjkqawmaeqcolfyx` int DEFAULT NULL,\n `krmcxwigluccbstehkxsbwjhlkirixdb` int DEFAULT NULL,\n `teatvrqiqrajokvsehqkwzgeutapyshw` int DEFAULT NULL,\n `awsgcphfnprxkhcwdvjihpmrcfbuozrv` int DEFAULT NULL,\n `ammeusdqmgyhxdupnqgubybzyvocvgqv` int DEFAULT NULL,\n `toprjuryxxeigsqiohwtjjvihgsorszc` int DEFAULT NULL,\n `daoekyurjmafmifrhrealeiqyvjxoxzn` int DEFAULT NULL,\n `tpmmczurulnkfmyshxejetzzihhprpim` int DEFAULT NULL,\n `uchtsywcqfyxqypjgpspauxjkpkrzfio` int DEFAULT NULL,\n `ghktgfpaypwqsgtgrollgreivbhbnyfx` int DEFAULT NULL,\n `ikpkmqflimdqczpjicwpvebsxlaploau` int DEFAULT NULL,\n `tfbqfsvspxrhpdxoesajfwwqmhnuayit` int DEFAULT NULL,\n `fospzlzsrucmxassbbmxorepmellzjxc` int DEFAULT NULL,\n PRIMARY KEY (`vpfkurfqtwucfpklpyxsbxolxvbiycuu`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"iigengzntldyhysbkebjxfctfqrglsed\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["vpfkurfqtwucfpklpyxsbxolxvbiycuu"],"columns":[{"name":"vpfkurfqtwucfpklpyxsbxolxvbiycuu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"kgdmnemywumwpxdbfxaswetxcnhvouwg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbssjrptjpemezwhpafrdvujaqefctiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xhmfdkweewfirrxymxubogengnbfzrjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kcmiigejxevdavodubcaootceawlquha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yvrxcbnstfevzkpjmjzkigfttzzndgve","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhnkjmkndghiruvkgxmidjoiwhsjbydk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbfryhnbfkqbsqqrfnyzzusxjerqvamz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rexjnpwebkmdaowicoemoljxyosqjaus","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrniyhkacqvoxyuccpenrlxszzfpfuxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qkwujmeaqnnyeifeuevoumdmlhnbdrsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dejzijyhvjmwqaurbutkvjpnrxlabcxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zldtshblsjgeelqdiyxuauinkhnisxdp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"momlltqbekmkvqlyyuelsrgpsmkqxpwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pupcfvwtppgxnjjuohxeestqvezakkuz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjauhgdisjpldbpydmiotappxhzoxpwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydlagfuubustdsexpgagijjccbnmvoop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxssrrsexvnqjxmgdrkzuiaojfztebha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjicuirytsltahoftembmashvtbhmqoe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytvspkfannuxfjynovnfuyavcqsxfpom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zyqyjrmwolafebcgsntlvkjzwitkrllt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atwqcduoibpapqwinzkomfadgahfprrz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zsgvubtgpyxqemakbxncvqdjhidewvru","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzeecrgagohwtqzchbtdesoehcjkiciw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdkkyjxfupaybktjlkskiplvlstksykw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nyqodkyppbgmlxbqwnflqexyzwksgzld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xagwewbxpvyywlagxsktdptnghcofvfq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvuzayzligrfquohpovsazvweivyopwg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hftqahpfpvbcduhrbuawmrtaoaktlvov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jbzchfrthfwvpxregpfjtzrshlfwwrvu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jajiaujcholmijxcjyopqaixmxeacugy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbkilmshzpanjxdopywswevqbpxnsfdz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwpavyxbmsgkpcegjhtfgfblekepijox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xuahijzvbdsrbwucohpefypavwgvduwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obkkflonlqbetlqjqqqdcqjnkwkaoyme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cateqgfzzytydlnqeiaqmbatezizadre","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aitpkeqzckltquisiuvvmstcqxiatira","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ycuwxplcnjnmleltvoyvraxnnaynsayq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edsotvghechundzfoejmkfjundorushp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hshpxjzaaqjsvpgexypittvwpewaxoub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"baoltkgbxaxghtyynrwjxxuwauwvgizo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rauzxkgaliwzcbitqnuegxdqhyegccak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzpvvkdrxwfsnbnameouilgkvcnelqsm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbvxzvykggcyhdbbjqjrnwtmcwmbasnw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tesnbgmapxviuqjmlflnzhgbdnvwbtko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xwrrzqbcyrvcicpnjqzhhgdptlxisjkf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvivhelrkvzyxiyfwgbtbvmccgysqcrk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"irmglkgiqjnvgfczriesdzchdzdfbbeq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jzkmnbizhmddywzmpekapxyealyydfzt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwlpffhsqmzlxzahinecpkbwniuvqbzk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"btpagtjlcjdjgxjucgccykjmqanoidlp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jtzunrodghoaelfqokkqelnnovznvrkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agtiiktcrioghzvkqcckmqivksnqhzzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmwriffdmqshbqzrmuymcpfisdadjooi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ruhezrfqeawpcmcgmkcngsirmfargmzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojfhubiheaqqgevjskhoteaxxupcckyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovayanlhpgqanpgwdczzrousubkhsthf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aloteffqotkkcicmttyqtnbhmggkppnw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"isrnylcucnideqqkxgktqzmxakoqflsk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmeoubuawbdhlddmqbbwzsfimxkfaeqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwmczrzhjwvmcbenxclclaphstxrazid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jzqhvkqwkxibtuytrhomoncwnmjujfau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kevldcxegzikqscgprkoqdsddmzxygij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhfavblcchmjooveeounfcrwukoaoowj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qslnsfnxbxgbgxmrvkoxbphurrkohmca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"apzlkwukiojblntvdlswticveigufgwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jburgievzfwfliycazackfjbbopcvxxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhtjrsdzxeqmfofyuzjdvmogbaqcbcqa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"krzkrgtemjrwhbqnyetqurbfenfxkrgq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mdtdvksioggmhrwtpvszfwvypikiidmo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmzbtyhmzyhqtghxykmgyctrrgzyicet","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icrqhoggqyvinuanmzevawnjbasfbjvj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cjustzdnmilewicricaogkpkezbyoqtq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hiljzbyygcvvtgiobrjdllcqhrgulxpu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qihzwqgkknglulacxmjerfdbmiwdrxtq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"syfauxhoglsepdptgqxjcdpkmrssibij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yovbwltgyerrteyxixqezuyflrmymcsb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"maiplwbjkiyxjilctypastodwmxjjskr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zlelysgjvcrtlwmeofrxxzhtwcndfuqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zosjwdufnvbmyjqpyzwmxfwnjxhknuhi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"odzdnpixspxsdcjbakhwpacbripfkixa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otsiwspcofwmcchkxwcazqzgeihzcokl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehnmailmofmeisidlvfksbjovoiavauh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfzmdrxfolsnrkftnujxopshsvriaavt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skpzxdttbjqozeuyvsjtqnkjgpumbicb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfpiabesbicbaqvrbntlvniddoujrdct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcexodwajbnedunnqlucbjhweefgczgs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezejthgrghtowhooqjkqawmaeqcolfyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"krmcxwigluccbstehkxsbwjhlkirixdb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"teatvrqiqrajokvsehqkwzgeutapyshw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awsgcphfnprxkhcwdvjihpmrcfbuozrv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ammeusdqmgyhxdupnqgubybzyvocvgqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"toprjuryxxeigsqiohwtjjvihgsorszc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"daoekyurjmafmifrhrealeiqyvjxoxzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpmmczurulnkfmyshxejetzzihhprpim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uchtsywcqfyxqypjgpspauxjkpkrzfio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghktgfpaypwqsgtgrollgreivbhbnyfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikpkmqflimdqczpjicwpvebsxlaploau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tfbqfsvspxrhpdxoesajfwwqmhnuayit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fospzlzsrucmxassbbmxorepmellzjxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668639,"databaseName":"models_schema","ddl":"CREATE TABLE `itudgkajsibeeiwiqpdermkbhjhcuhez` (\n `kpexqvffwdzbpmyxtqrqamrqisqffiob` int NOT NULL,\n `hlgbxfswmmlnswwkmzcjpapynsuirkwa` int DEFAULT NULL,\n `pwcazidsgpajkaczmmopkkqulhoqnxnw` int DEFAULT NULL,\n `vbsajgmcdzecpqjntbkifeihtelqjnhu` int DEFAULT NULL,\n `fvvxlkjreexhoqymeqtqdhlwjsxnekll` int DEFAULT NULL,\n `zzgfifvtqjuiacwyrasliubcskzysqyu` int DEFAULT NULL,\n `gtxvwitbqpnenekayobwlroqllftwwdx` int DEFAULT NULL,\n `phsfhouscwjboangsonpkmdliwcxdgts` int DEFAULT NULL,\n `frjetsvhbpulagpwhnrmurdulermsosg` int DEFAULT NULL,\n `hszmosxrrplhbxoiczngwcbdpadzpqpq` int DEFAULT NULL,\n `wpxzknntundefuqvdyrbzshjoimtdxdg` int DEFAULT NULL,\n `obwpafgrpxrmvpovycosjwtoewqdkjob` int DEFAULT NULL,\n `vkkcrkinffefafttqzkdabohgsovpawb` int DEFAULT NULL,\n `kevkwesmflxmrghsivsuklfvrlgiawcb` int DEFAULT NULL,\n `ulvqpdxjnfouodplxngielarzamtdrxq` int DEFAULT NULL,\n `irydiguaibsazidgtsvmurpiputcpmqu` int DEFAULT NULL,\n `rdfubimebqgofsvqflcxuvxjfpwzfefw` int DEFAULT NULL,\n `nokqxecadcxktbirbgybztnextpzqdzn` int DEFAULT NULL,\n `xhkcxkdevnwuobbqsutcsjuyifzqhpbq` int DEFAULT NULL,\n `zflvniyoaggyqwkgfkwywnbhwfujzkgm` int DEFAULT NULL,\n `rnsxcrvdbcsmirdzoggtchtgvozuqols` int DEFAULT NULL,\n `xmoqwiyzknfpfjmdzmoetvxsptrpohwx` int DEFAULT NULL,\n `qdxwysqnnotlpeasnszauptgknucitvx` int DEFAULT NULL,\n `iazcraodrqatxobnnsvrjzlwczfyhnfx` int DEFAULT NULL,\n `nxrayaddrxhivqcrnhyxiwzecaaqrnbk` int DEFAULT NULL,\n `hznpiqrngsvwmptqqiabcnboryucouyc` int DEFAULT NULL,\n `nlkrliiqkbogfkvdnsvcmmapcbutzrrg` int DEFAULT NULL,\n `mvwntgunircjlzfcffzvohmvklzoijmb` int DEFAULT NULL,\n `zwziizgdybjqsewpnizqpeudcieftuhl` int DEFAULT NULL,\n `dbnttypyuosjmcokqmzzbtxjfwjqkucp` int DEFAULT NULL,\n `nxwamosrapcaytvdrxrbaslywrbajutv` int DEFAULT NULL,\n `juxhbtpafgjftjukvtdszxptjxqrtdbd` int DEFAULT NULL,\n `bbzquvlzoryogjnflplknmsvmehvycay` int DEFAULT NULL,\n `gomtvqwhqnjluoiusbkzwphwkjnhbmra` int DEFAULT NULL,\n `peswsvlnoxojttlahukngdldcrbplrdg` int DEFAULT NULL,\n `btuhrspjlqqwwctfjnwebjyelbugodgk` int DEFAULT NULL,\n `feueyhxbvgzqxidtpfervrutjtsnytof` int DEFAULT NULL,\n `hcxjnpqwzxargrjpsgeckuuioypvzzym` int DEFAULT NULL,\n `swsdvynbdxauqbyerewgwkvscwgwxprv` int DEFAULT NULL,\n `progzykbcgvfxkhasvjdfpbevkpympvc` int DEFAULT NULL,\n `npxuaqgejuwsflzbsbwvlbppstyblwda` int DEFAULT NULL,\n `ipzqlddybbmytterxftjxcbnkbzrytfl` int DEFAULT NULL,\n `thubhyghamhwzatjmaanafrqmdfftisq` int DEFAULT NULL,\n `qtlduuulyhdfsspwdqmexphrcqiwudcg` int DEFAULT NULL,\n `kxuieucmyfagkjlowageyswcpxlbvuuc` int DEFAULT NULL,\n `xxldablsyticemtnebvfcorhjcmzrhld` int DEFAULT NULL,\n `rlzjpkinbypjtidukvdpxccctyidruog` int DEFAULT NULL,\n `dhaqravbaogwnqhokwvhslupyufuqovt` int DEFAULT NULL,\n `wngojhueydkpdizjuymfmyimcisgarpu` int DEFAULT NULL,\n `nvljxughhivyamdirtojtgwrcgmqmzhj` int DEFAULT NULL,\n `griyhrjmbxbooydqxmrzxdzbkxyducph` int DEFAULT NULL,\n `tqgfvbnreekbvrgzrorextjnvnkxnzfp` int DEFAULT NULL,\n `ocbzainghtxtfspxbfyfolyvaoeqtlgi` int DEFAULT NULL,\n `pzwwvmwvaxwqlzizumxjqgucfyohherc` int DEFAULT NULL,\n `tkhjxwdxshytuzvfuliodntepbypgmpa` int DEFAULT NULL,\n `hykvmqzdyvfkrapzobhewdqvdzbjtolu` int DEFAULT NULL,\n `cenybgeknxkfzlvqgfpxlbnoszwewvab` int DEFAULT NULL,\n `rpngawxuznxbnpiffhnkrjqmuaseibwn` int DEFAULT NULL,\n `uoktaoqqokyaxmbacvbjowdjlpjotjdc` int DEFAULT NULL,\n `loquoctntclybhysqighpdnbinxqvtzz` int DEFAULT NULL,\n `kpduzpzrhwrnpvqyijfpnzbgnlbufwje` int DEFAULT NULL,\n `dgdkpgouwtrurqdvgulgqpdbaabqhbcl` int DEFAULT NULL,\n `vwidlvyhkaebcpdpmcsgbcydratbcuxx` int DEFAULT NULL,\n `sertktnqigbzyrqazgbugzbyzjvitbqx` int DEFAULT NULL,\n `vvulwvdrihtgehdtmaqrjqwevxfsazpp` int DEFAULT NULL,\n `zesrpqtzfejtsojpdwwcgkggqufswhyt` int DEFAULT NULL,\n `ullznizoxpkamxlnlyxtptxgwyuuzqif` int DEFAULT NULL,\n `mdoiphjbtyesckpcgbeiyqnkhkzafixd` int DEFAULT NULL,\n `hpddnbbamtnrjqnbmlgtbgamzggxvvml` int DEFAULT NULL,\n `bppueljvjqgnrgytedraxmmwjvbjtmfe` int DEFAULT NULL,\n `gfvabsueisvgmuwmxrpxbqndbdwophyy` int DEFAULT NULL,\n `lwptvxadnoebtkxwpxmkscduiesaibak` int DEFAULT NULL,\n `oizdjvwuwelpsvwqwornegrpxwkdmyxl` int DEFAULT NULL,\n `wftnzfbnnzappjbqcgvskbtrzbkvlvum` int DEFAULT NULL,\n `txldnmnjbytddwzvthkocsgqlbcswpsd` int DEFAULT NULL,\n `yvwkejcnpyzengzsjarvuuiffakimmxl` int DEFAULT NULL,\n `rxkarotgblcfyfmklzggkvuzvnandjjf` int DEFAULT NULL,\n `bfoaewlzqywytjykolwjmtpgzewivjeb` int DEFAULT NULL,\n `eeegbytahkvtzqpvhtphypcwrshisunp` int DEFAULT NULL,\n `hmofyzdguhwheqnfoswqkdnkwasmjmkj` int DEFAULT NULL,\n `jfgpvvecwjxxgydkqsyhztpcpljosvee` int DEFAULT NULL,\n `pplnpxmsssrgkznovmmgfpfgeilavwzm` int DEFAULT NULL,\n `etqwejwfyvvnjsrqkvhrdnsxjdadzyfl` int DEFAULT NULL,\n `jnglhbjnolhxnlmzphtvxzrnxcfzwahz` int DEFAULT NULL,\n `ffckakjiuougyhcabdpeuxorqkyixhfn` int DEFAULT NULL,\n `uhzsyfiwwssgomlkzhtqbntazbfnenat` int DEFAULT NULL,\n `ekesreudeuobqlmykguhmvxtxxicqdob` int DEFAULT NULL,\n `tkqgpwuqtmxiwrifqvhghvxsftyjtkkq` int DEFAULT NULL,\n `wlzqmehfbzsyvmhprxcdsmwqyvbwrxah` int DEFAULT NULL,\n `lqwglwasmjjjzhwglgeqeapkgxjdokki` int DEFAULT NULL,\n `dgcjpyafsyvwbqfqnkaernilhntybwcw` int DEFAULT NULL,\n `sqssnusfoxsiimevdurgjthssbssanzo` int DEFAULT NULL,\n `gjrysrpqdsvxlybfddmfpeuxdyashyel` int DEFAULT NULL,\n `umfdlakufwilytdkmbdoygmndaiviajt` int DEFAULT NULL,\n `cqtwldfbzzrfopynmojbiyzxatvdpoej` int DEFAULT NULL,\n `cmmdfszdlodgaitihgkghvbhnfxhlyiv` int DEFAULT NULL,\n `xqtjhaoworocjwxhqfcdtzjqsngaokuc` int DEFAULT NULL,\n `xmsakcxnpjwmqfbfbudbfuunwaxphvea` int DEFAULT NULL,\n `maxrktaslbbkaepcwahaauphokisvdja` int DEFAULT NULL,\n `tllvewatktxmxrohmerbzimazmsnexdp` int DEFAULT NULL,\n PRIMARY KEY (`kpexqvffwdzbpmyxtqrqamrqisqffiob`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"itudgkajsibeeiwiqpdermkbhjhcuhez\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["kpexqvffwdzbpmyxtqrqamrqisqffiob"],"columns":[{"name":"kpexqvffwdzbpmyxtqrqamrqisqffiob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"hlgbxfswmmlnswwkmzcjpapynsuirkwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwcazidsgpajkaczmmopkkqulhoqnxnw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbsajgmcdzecpqjntbkifeihtelqjnhu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fvvxlkjreexhoqymeqtqdhlwjsxnekll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzgfifvtqjuiacwyrasliubcskzysqyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtxvwitbqpnenekayobwlroqllftwwdx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phsfhouscwjboangsonpkmdliwcxdgts","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"frjetsvhbpulagpwhnrmurdulermsosg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hszmosxrrplhbxoiczngwcbdpadzpqpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wpxzknntundefuqvdyrbzshjoimtdxdg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obwpafgrpxrmvpovycosjwtoewqdkjob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkkcrkinffefafttqzkdabohgsovpawb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kevkwesmflxmrghsivsuklfvrlgiawcb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ulvqpdxjnfouodplxngielarzamtdrxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"irydiguaibsazidgtsvmurpiputcpmqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdfubimebqgofsvqflcxuvxjfpwzfefw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nokqxecadcxktbirbgybztnextpzqdzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xhkcxkdevnwuobbqsutcsjuyifzqhpbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zflvniyoaggyqwkgfkwywnbhwfujzkgm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnsxcrvdbcsmirdzoggtchtgvozuqols","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xmoqwiyzknfpfjmdzmoetvxsptrpohwx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdxwysqnnotlpeasnszauptgknucitvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iazcraodrqatxobnnsvrjzlwczfyhnfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxrayaddrxhivqcrnhyxiwzecaaqrnbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hznpiqrngsvwmptqqiabcnboryucouyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nlkrliiqkbogfkvdnsvcmmapcbutzrrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvwntgunircjlzfcffzvohmvklzoijmb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zwziizgdybjqsewpnizqpeudcieftuhl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbnttypyuosjmcokqmzzbtxjfwjqkucp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxwamosrapcaytvdrxrbaslywrbajutv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"juxhbtpafgjftjukvtdszxptjxqrtdbd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbzquvlzoryogjnflplknmsvmehvycay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gomtvqwhqnjluoiusbkzwphwkjnhbmra","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"peswsvlnoxojttlahukngdldcrbplrdg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"btuhrspjlqqwwctfjnwebjyelbugodgk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"feueyhxbvgzqxidtpfervrutjtsnytof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hcxjnpqwzxargrjpsgeckuuioypvzzym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swsdvynbdxauqbyerewgwkvscwgwxprv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"progzykbcgvfxkhasvjdfpbevkpympvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"npxuaqgejuwsflzbsbwvlbppstyblwda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ipzqlddybbmytterxftjxcbnkbzrytfl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thubhyghamhwzatjmaanafrqmdfftisq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtlduuulyhdfsspwdqmexphrcqiwudcg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxuieucmyfagkjlowageyswcpxlbvuuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxldablsyticemtnebvfcorhjcmzrhld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlzjpkinbypjtidukvdpxccctyidruog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhaqravbaogwnqhokwvhslupyufuqovt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wngojhueydkpdizjuymfmyimcisgarpu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvljxughhivyamdirtojtgwrcgmqmzhj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"griyhrjmbxbooydqxmrzxdzbkxyducph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqgfvbnreekbvrgzrorextjnvnkxnzfp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocbzainghtxtfspxbfyfolyvaoeqtlgi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pzwwvmwvaxwqlzizumxjqgucfyohherc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkhjxwdxshytuzvfuliodntepbypgmpa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hykvmqzdyvfkrapzobhewdqvdzbjtolu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cenybgeknxkfzlvqgfpxlbnoszwewvab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpngawxuznxbnpiffhnkrjqmuaseibwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uoktaoqqokyaxmbacvbjowdjlpjotjdc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"loquoctntclybhysqighpdnbinxqvtzz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kpduzpzrhwrnpvqyijfpnzbgnlbufwje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgdkpgouwtrurqdvgulgqpdbaabqhbcl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vwidlvyhkaebcpdpmcsgbcydratbcuxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sertktnqigbzyrqazgbugzbyzjvitbqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vvulwvdrihtgehdtmaqrjqwevxfsazpp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zesrpqtzfejtsojpdwwcgkggqufswhyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ullznizoxpkamxlnlyxtptxgwyuuzqif","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mdoiphjbtyesckpcgbeiyqnkhkzafixd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hpddnbbamtnrjqnbmlgtbgamzggxvvml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bppueljvjqgnrgytedraxmmwjvbjtmfe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfvabsueisvgmuwmxrpxbqndbdwophyy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwptvxadnoebtkxwpxmkscduiesaibak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oizdjvwuwelpsvwqwornegrpxwkdmyxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wftnzfbnnzappjbqcgvskbtrzbkvlvum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txldnmnjbytddwzvthkocsgqlbcswpsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yvwkejcnpyzengzsjarvuuiffakimmxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxkarotgblcfyfmklzggkvuzvnandjjf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bfoaewlzqywytjykolwjmtpgzewivjeb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eeegbytahkvtzqpvhtphypcwrshisunp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmofyzdguhwheqnfoswqkdnkwasmjmkj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jfgpvvecwjxxgydkqsyhztpcpljosvee","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pplnpxmsssrgkznovmmgfpfgeilavwzm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"etqwejwfyvvnjsrqkvhrdnsxjdadzyfl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jnglhbjnolhxnlmzphtvxzrnxcfzwahz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffckakjiuougyhcabdpeuxorqkyixhfn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhzsyfiwwssgomlkzhtqbntazbfnenat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekesreudeuobqlmykguhmvxtxxicqdob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkqgpwuqtmxiwrifqvhghvxsftyjtkkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wlzqmehfbzsyvmhprxcdsmwqyvbwrxah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqwglwasmjjjzhwglgeqeapkgxjdokki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgcjpyafsyvwbqfqnkaernilhntybwcw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sqssnusfoxsiimevdurgjthssbssanzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjrysrpqdsvxlybfddmfpeuxdyashyel","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umfdlakufwilytdkmbdoygmndaiviajt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqtwldfbzzrfopynmojbiyzxatvdpoej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmmdfszdlodgaitihgkghvbhnfxhlyiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqtjhaoworocjwxhqfcdtzjqsngaokuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xmsakcxnpjwmqfbfbudbfuunwaxphvea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"maxrktaslbbkaepcwahaauphokisvdja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tllvewatktxmxrohmerbzimazmsnexdp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668670,"databaseName":"models_schema","ddl":"CREATE TABLE `ivjawdrlpjejctimphddwlktsjeoqpsc` (\n `higmmeccpfhcfftzbwtocduxwamfmiao` int NOT NULL,\n `ekdwqpqpjxdsxjnnxnuhjjedxtqpqdkz` int DEFAULT NULL,\n `cgapirpteirbzkgxfeizftieskcxtvug` int DEFAULT NULL,\n `omlnngxtyfvfrplnaydaudlwpstlaidp` int DEFAULT NULL,\n `brbkktrpzhfwlxvtyljnjjvpbtmftxqw` int DEFAULT NULL,\n `pdklwsingehudzpqfbkvltqowcpyjbol` int DEFAULT NULL,\n `clvppvtehygnicpkrlmsuvdgqlgyikdu` int DEFAULT NULL,\n `jpavcckyijeaostxrlitvqptrmxghcaa` int DEFAULT NULL,\n `ldtrznvsdwvqzexlmspkamxikiwkppzb` int DEFAULT NULL,\n `pomlgrsmqptcttoibeihdeplxtspptbf` int DEFAULT NULL,\n `aiuagompjmgkwawynmdubtuhcaayvzhj` int DEFAULT NULL,\n `sinsjxkfdncnaxqassmuzpunzxkylixu` int DEFAULT NULL,\n `gcdtepzqjqvqmmikkdjpyaxsaebpnmhh` int DEFAULT NULL,\n `ablmfemhwbsssaidbuspwpkwrlczfggq` int DEFAULT NULL,\n `khtaghnbjhukhqgblzekcowlgmbpqsdy` int DEFAULT NULL,\n `hlpmgwtyfzysmangvhscfzygdasrpwgp` int DEFAULT NULL,\n `tbqcvrawlaseyodhibandjadjxpahvhn` int DEFAULT NULL,\n `uccwcivhztiqxzntfljbwitsajmmiyem` int DEFAULT NULL,\n `sggecczsmtojsxuqurppiibmjgmfjkjx` int DEFAULT NULL,\n `psoesjjktrpzdomvchtvlujuyesoxunv` int DEFAULT NULL,\n `xackualxlncazdapmworwkddszwhmxvn` int DEFAULT NULL,\n `iyujlbvydcnvddkbgqapclfbydhvykam` int DEFAULT NULL,\n `hhznhlpsavxwihxhiehohsawcympfpcl` int DEFAULT NULL,\n `yahxpdexqswjodtbklilyjgjjfcidawl` int DEFAULT NULL,\n `gjrzlxgjwxtlhbetwmwdqjansppjxsdk` int DEFAULT NULL,\n `pfqupfwvspojfodptivyaahidroufwsh` int DEFAULT NULL,\n `wiqadgsmkiivsmpumjqwuajghdlnufvf` int DEFAULT NULL,\n `lnycureemlassjhafuyatdueynanesnp` int DEFAULT NULL,\n `oofovzjmwbacjolsoklmnhfjlvhcbstr` int DEFAULT NULL,\n `galtdhkcbakrsuzolqnteupfmwhqvdja` int DEFAULT NULL,\n `adobnlahniqljuvzcfocnxlqkytximht` int DEFAULT NULL,\n `nqufzgntnxjaypwxsqobkkikdwemakco` int DEFAULT NULL,\n `betzagszkphutoedhvvkyzevveyywbjb` int DEFAULT NULL,\n `zcdqkvwkbhgndneimhonaljzouhxrses` int DEFAULT NULL,\n `bikxsbarndjuoencsiheooquixtssdkg` int DEFAULT NULL,\n `ddpphnhpdhcalynwjazuueeurxyonjnr` int DEFAULT NULL,\n `kcztcanymdeeeflsvdjlkqoftslnixmu` int DEFAULT NULL,\n `zhlalgcabokbigokffhctasmefkzgwsa` int DEFAULT NULL,\n `tjzeuieawoodjgwjiwmonrpkeestokwq` int DEFAULT NULL,\n `kudvcdsidbztspvwnubzwjdfgakyxjuf` int DEFAULT NULL,\n `wjxpynuammuhycrcyskryaudxbzikhkz` int DEFAULT NULL,\n `wyykqndjlmwqhajgluuavpkmivnbqhfa` int DEFAULT NULL,\n `iheydhcjxffqydktwdjszsezjulfuckm` int DEFAULT NULL,\n `zdwvvxygjmigpnbbwzznxpncpszsjnck` int DEFAULT NULL,\n `aympoipseqsryfzwsvloeftvvjbnwmxp` int DEFAULT NULL,\n `khztafuhzsxtsjepostrwfqrkupbgrul` int DEFAULT NULL,\n `yfwctbpvovfaodsgkbvcuniexqyqtwkj` int DEFAULT NULL,\n `wnrrbltfbngrihnwydliwubhwwlabyho` int DEFAULT NULL,\n `agwgidppynlchfwfqhlxpfdadkfqsznh` int DEFAULT NULL,\n `jdwcfvtbewuomsuutelpdwahhxglyofc` int DEFAULT NULL,\n `uofnkjsdcdnkqvwgvzrgalluajkuwgol` int DEFAULT NULL,\n `paktmrtriwnykkyemlvftxlvgrmwisbn` int DEFAULT NULL,\n `gqzetfvrbkmoxytfielwpyvjhclyccve` int DEFAULT NULL,\n `drluawpkghvhizuyjtoziuyyxiglcmkq` int DEFAULT NULL,\n `dfejeuyebudmctvuigucmhxtijpreyov` int DEFAULT NULL,\n `clzvmnbqrdryzgcyhlqaustchhjvtenu` int DEFAULT NULL,\n `bynnzevhbjoopciterhrthjuqlkuaqro` int DEFAULT NULL,\n `cthzoacvhucgyabqynnnfpfjioxmhinv` int DEFAULT NULL,\n `lzyvqokomibqwitlhxcurwyvhtvqptgz` int DEFAULT NULL,\n `igznecwadwvvxrloufgmyyvmfxbjmvjr` int DEFAULT NULL,\n `ywayukgeajuowxdasyakcnnizgozyukl` int DEFAULT NULL,\n `wypzafelhpnssodfqocjzstynwlsnxmk` int DEFAULT NULL,\n `kqhrnilkpmrvqayjofzozgagmzswqbki` int DEFAULT NULL,\n `hthvecxwrcfvvwkojowisbhvqimvrvjd` int DEFAULT NULL,\n `hwrfeatgijbrclvpmlzlsreackegaums` int DEFAULT NULL,\n `ydsjowgrvwaorejgyphdikqgxiqtyjom` int DEFAULT NULL,\n `hywgizxxkmeytwdrkihjrbmvdjpsxjoj` int DEFAULT NULL,\n `cvbaiwyscestsaxrprbuzqcibumdzdvy` int DEFAULT NULL,\n `dhrwupxsbodrwrkhpsiutoymrvmnovyl` int DEFAULT NULL,\n `wsjtpxjqoxakjleytouegyhzqgxpdrzw` int DEFAULT NULL,\n `vujagaeajozbhpgxbgzknicaxczzwwwa` int DEFAULT NULL,\n `zrhkmktdvehoqurqzwdsotjhzhqwstvr` int DEFAULT NULL,\n `qsxagbhhcmlqxveptzmllezcnejrlieu` int DEFAULT NULL,\n `wmjcewtxlhhfaeuedhpgsjthrthfrzxa` int DEFAULT NULL,\n `pxlkfunsqtafkyvwkliobiuvayiddlzf` int DEFAULT NULL,\n `gnrqydmygrmbirqivmqgthkruxfeeasa` int DEFAULT NULL,\n `gbnftoequegqotllgufozszdvnpwnhyp` int DEFAULT NULL,\n `qrffcbwtsatdqhmrztvrqayfgypevspp` int DEFAULT NULL,\n `gphdhcljzxvdmtothyqyaqtyjxkkbsbp` int DEFAULT NULL,\n `vmwtpfhgprcmonhmoihakbchmmsretje` int DEFAULT NULL,\n `hxmbhyxfpfviaurtctkljdewwumopzes` int DEFAULT NULL,\n `homnjtvhnxfmskxwujunvxokloffakfy` int DEFAULT NULL,\n `nypqcmvnomtcucwrpryntqsrjmjxorfs` int DEFAULT NULL,\n `tvacktlcypqxnxsbrsapstbvjimpiwjx` int DEFAULT NULL,\n `flkokmuuybvwrnyuagqiwslbbvkwhwrh` int DEFAULT NULL,\n `qecjtlulnzhdedrcqqpunbcyxausdquu` int DEFAULT NULL,\n `avepqedptzjagmwhwlgitouqocvxlosv` int DEFAULT NULL,\n `iiqmrnbmowjgteokvkvkkmjtobhoodei` int DEFAULT NULL,\n `hwvowbuwkscesbzepzesmyggrsmzmmde` int DEFAULT NULL,\n `akofilwxdumsswsrqyhwrdnnvdkvboiy` int DEFAULT NULL,\n `qdtvwcxaqqwkvifcgopswvqxllukjyhl` int DEFAULT NULL,\n `dvcfskrfjnlgjtihyrcyitqkmhlgqoci` int DEFAULT NULL,\n `ngtvrjkgexbvzavdfwojrssrfxykczcn` int DEFAULT NULL,\n `wmvonlfthwzgttvbddiuuldjfwvzbbpi` int DEFAULT NULL,\n `lwkdraifnrmvsaxepsktttotyiiwontl` int DEFAULT NULL,\n `idmzbpgrrhbdkxcofejxhtflezxcdsmk` int DEFAULT NULL,\n `fmqnluogrekaqovemtonibgxwudqutdm` int DEFAULT NULL,\n `mqajikcmgtnnvggxgqjsaoiuouxojkfs` int DEFAULT NULL,\n `qtbwyahjncwzhttrpmctbwfzepmkspmz` int DEFAULT NULL,\n `nmkfeavmgdgqncahfofkedqbzdpycbiu` int DEFAULT NULL,\n PRIMARY KEY (`higmmeccpfhcfftzbwtocduxwamfmiao`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"ivjawdrlpjejctimphddwlktsjeoqpsc\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["higmmeccpfhcfftzbwtocduxwamfmiao"],"columns":[{"name":"higmmeccpfhcfftzbwtocduxwamfmiao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"ekdwqpqpjxdsxjnnxnuhjjedxtqpqdkz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgapirpteirbzkgxfeizftieskcxtvug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omlnngxtyfvfrplnaydaudlwpstlaidp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"brbkktrpzhfwlxvtyljnjjvpbtmftxqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdklwsingehudzpqfbkvltqowcpyjbol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"clvppvtehygnicpkrlmsuvdgqlgyikdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jpavcckyijeaostxrlitvqptrmxghcaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ldtrznvsdwvqzexlmspkamxikiwkppzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pomlgrsmqptcttoibeihdeplxtspptbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aiuagompjmgkwawynmdubtuhcaayvzhj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sinsjxkfdncnaxqassmuzpunzxkylixu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gcdtepzqjqvqmmikkdjpyaxsaebpnmhh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ablmfemhwbsssaidbuspwpkwrlczfggq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"khtaghnbjhukhqgblzekcowlgmbpqsdy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlpmgwtyfzysmangvhscfzygdasrpwgp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbqcvrawlaseyodhibandjadjxpahvhn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uccwcivhztiqxzntfljbwitsajmmiyem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sggecczsmtojsxuqurppiibmjgmfjkjx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"psoesjjktrpzdomvchtvlujuyesoxunv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xackualxlncazdapmworwkddszwhmxvn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iyujlbvydcnvddkbgqapclfbydhvykam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhznhlpsavxwihxhiehohsawcympfpcl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yahxpdexqswjodtbklilyjgjjfcidawl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjrzlxgjwxtlhbetwmwdqjansppjxsdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pfqupfwvspojfodptivyaahidroufwsh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wiqadgsmkiivsmpumjqwuajghdlnufvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lnycureemlassjhafuyatdueynanesnp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oofovzjmwbacjolsoklmnhfjlvhcbstr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"galtdhkcbakrsuzolqnteupfmwhqvdja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"adobnlahniqljuvzcfocnxlqkytximht","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqufzgntnxjaypwxsqobkkikdwemakco","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"betzagszkphutoedhvvkyzevveyywbjb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zcdqkvwkbhgndneimhonaljzouhxrses","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bikxsbarndjuoencsiheooquixtssdkg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ddpphnhpdhcalynwjazuueeurxyonjnr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kcztcanymdeeeflsvdjlkqoftslnixmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhlalgcabokbigokffhctasmefkzgwsa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjzeuieawoodjgwjiwmonrpkeestokwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kudvcdsidbztspvwnubzwjdfgakyxjuf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjxpynuammuhycrcyskryaudxbzikhkz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wyykqndjlmwqhajgluuavpkmivnbqhfa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iheydhcjxffqydktwdjszsezjulfuckm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdwvvxygjmigpnbbwzznxpncpszsjnck","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aympoipseqsryfzwsvloeftvvjbnwmxp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"khztafuhzsxtsjepostrwfqrkupbgrul","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfwctbpvovfaodsgkbvcuniexqyqtwkj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnrrbltfbngrihnwydliwubhwwlabyho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agwgidppynlchfwfqhlxpfdadkfqsznh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdwcfvtbewuomsuutelpdwahhxglyofc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uofnkjsdcdnkqvwgvzrgalluajkuwgol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"paktmrtriwnykkyemlvftxlvgrmwisbn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqzetfvrbkmoxytfielwpyvjhclyccve","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drluawpkghvhizuyjtoziuyyxiglcmkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dfejeuyebudmctvuigucmhxtijpreyov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"clzvmnbqrdryzgcyhlqaustchhjvtenu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bynnzevhbjoopciterhrthjuqlkuaqro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cthzoacvhucgyabqynnnfpfjioxmhinv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lzyvqokomibqwitlhxcurwyvhtvqptgz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igznecwadwvvxrloufgmyyvmfxbjmvjr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywayukgeajuowxdasyakcnnizgozyukl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wypzafelhpnssodfqocjzstynwlsnxmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kqhrnilkpmrvqayjofzozgagmzswqbki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hthvecxwrcfvvwkojowisbhvqimvrvjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwrfeatgijbrclvpmlzlsreackegaums","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydsjowgrvwaorejgyphdikqgxiqtyjom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hywgizxxkmeytwdrkihjrbmvdjpsxjoj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvbaiwyscestsaxrprbuzqcibumdzdvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhrwupxsbodrwrkhpsiutoymrvmnovyl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wsjtpxjqoxakjleytouegyhzqgxpdrzw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vujagaeajozbhpgxbgzknicaxczzwwwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zrhkmktdvehoqurqzwdsotjhzhqwstvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qsxagbhhcmlqxveptzmllezcnejrlieu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmjcewtxlhhfaeuedhpgsjthrthfrzxa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxlkfunsqtafkyvwkliobiuvayiddlzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnrqydmygrmbirqivmqgthkruxfeeasa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gbnftoequegqotllgufozszdvnpwnhyp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qrffcbwtsatdqhmrztvrqayfgypevspp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gphdhcljzxvdmtothyqyaqtyjxkkbsbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vmwtpfhgprcmonhmoihakbchmmsretje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hxmbhyxfpfviaurtctkljdewwumopzes","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"homnjtvhnxfmskxwujunvxokloffakfy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nypqcmvnomtcucwrpryntqsrjmjxorfs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvacktlcypqxnxsbrsapstbvjimpiwjx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flkokmuuybvwrnyuagqiwslbbvkwhwrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qecjtlulnzhdedrcqqpunbcyxausdquu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avepqedptzjagmwhwlgitouqocvxlosv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iiqmrnbmowjgteokvkvkkmjtobhoodei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwvowbuwkscesbzepzesmyggrsmzmmde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akofilwxdumsswsrqyhwrdnnvdkvboiy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdtvwcxaqqwkvifcgopswvqxllukjyhl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvcfskrfjnlgjtihyrcyitqkmhlgqoci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ngtvrjkgexbvzavdfwojrssrfxykczcn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmvonlfthwzgttvbddiuuldjfwvzbbpi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwkdraifnrmvsaxepsktttotyiiwontl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idmzbpgrrhbdkxcofejxhtflezxcdsmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmqnluogrekaqovemtonibgxwudqutdm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqajikcmgtnnvggxgqjsaoiuouxojkfs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtbwyahjncwzhttrpmctbwfzepmkspmz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmkfeavmgdgqncahfofkedqbzdpycbiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668702,"databaseName":"models_schema","ddl":"CREATE TABLE `iwnntobuwmkuzncjkkxxbjyvktvzwcla` (\n `zcldsswjalnwvntzwpwkelyiwhpnxebs` int NOT NULL,\n `hftiuabvtuplaqdtdzrfuoriyswniodg` int DEFAULT NULL,\n `idgeaszhaufaskbcexzhyuwxdovdizce` int DEFAULT NULL,\n `raqooccyxupdlsthkdrvukcuxflabhih` int DEFAULT NULL,\n `nflbnhrjoaxcsbnczwgiqwqabqfgyikz` int DEFAULT NULL,\n `kfahrzeotguonqvolkrumkclgkjvmzvt` int DEFAULT NULL,\n `nlmdabcrchwqwisbfqqwsndjqcltxlqi` int DEFAULT NULL,\n `utrlgltfehihwzizqckthaanlgqylbyk` int DEFAULT NULL,\n `hdsbgujmgrcjnralhqawqusxkujuhish` int DEFAULT NULL,\n `trrccvhockkyvyofjxkpldlgsmvsapju` int DEFAULT NULL,\n `zadeadyjxozddklnytyklpsfweijflbs` int DEFAULT NULL,\n `lofjszofzabnmfsacygswgayayyiatwr` int DEFAULT NULL,\n `qhfhrxbzluekayattuwpngggypvimumz` int DEFAULT NULL,\n `nhymduqlpaithjwbcmhpnvpdmolfeevd` int DEFAULT NULL,\n `adywbvttclvocfgyaamoowdtqoxcsetx` int DEFAULT NULL,\n `zxwlobytoofwngxtybuitmdtvvgwsayz` int DEFAULT NULL,\n `rfphmtmawzgqeleyfmbwpodkyoqnmcff` int DEFAULT NULL,\n `nhxtserjbhugnheksxeplvyoguhlrneo` int DEFAULT NULL,\n `nzmsybwdluehumzcfgojrdsnzyhwmsua` int DEFAULT NULL,\n `mrdwjuqszpvjlqboaamoccjzzlnrdbbu` int DEFAULT NULL,\n `hgmpoayzlfmpfmzosdfyhakjsdftveya` int DEFAULT NULL,\n `klseeueujhhotnuwqardsuwuanuwcqxr` int DEFAULT NULL,\n `iptpahwdwwuocgcztqntogjdyrknbhzw` int DEFAULT NULL,\n `yjnzaskwwitkwefyglnhrkbqmehraypw` int DEFAULT NULL,\n `kvgmbfplkwahqfbsklcoexlcubfxlecu` int DEFAULT NULL,\n `lellmogbqtcndrvsthfxnjzkapftvlxt` int DEFAULT NULL,\n `blrziancalsuakxivpyhuvsnhtuoxaji` int DEFAULT NULL,\n `gmwzpwhqccyhhuprwjzecjzgxetaclzx` int DEFAULT NULL,\n `zstokfstlsrhkdrvopsdcgyxpkjddtqm` int DEFAULT NULL,\n `mjrxmkkniuspjqimadwrtgrcdurgoqcs` int DEFAULT NULL,\n `ynqfqoxmbzmhxhcpnqbgehvcdsykznpd` int DEFAULT NULL,\n `dhqizyhklmxvzpgaveeitycrjtpjysrc` int DEFAULT NULL,\n `fmfxocmtylyhbihwphmmgbwbamxwpxcq` int DEFAULT NULL,\n `twlqcxgyvqamrqqwwrctzqtdbzhorock` int DEFAULT NULL,\n `swpvgcjddhrtsvueehdchywaagzeeabk` int DEFAULT NULL,\n `kuoluvplitorpzcawhyjnqafqtpzrcgd` int DEFAULT NULL,\n `dabsrxfwlirkzwvtewrreepchgvqaweg` int DEFAULT NULL,\n `ejjtkwqkkvsjixeorsodrybwiqnmxbrh` int DEFAULT NULL,\n `zuzdixkgfhurtzlkgufdtwpjdnnudeip` int DEFAULT NULL,\n `djzihpworqzoyggukwygnbuupdkughlo` int DEFAULT NULL,\n `aoifapuntzrtjipuxfbpngcvtmziuicm` int DEFAULT NULL,\n `znckcmtdxiehocaqvmlkegnvwqhhdfms` int DEFAULT NULL,\n `fqogzvegiwyclplslwptyqlsimptzvzj` int DEFAULT NULL,\n `ticifxbnounmkhnnxetjejqkcstvgldt` int DEFAULT NULL,\n `fcfmmcovlhkfqwfapmpafdgbcnrhpwvl` int DEFAULT NULL,\n `izleasprtdtpwzvhkoujwrgouykskngn` int DEFAULT NULL,\n `fkvwfaeazrmegyouvfjqralslcuthxpq` int DEFAULT NULL,\n `rvtgtrbmjzlymaxxnygufckosigrcrxl` int DEFAULT NULL,\n `zvtdrklazjfdfjvghltzkbwtkzdhalpi` int DEFAULT NULL,\n `mpcnvutnxoadeiyozhuvovthptejtatt` int DEFAULT NULL,\n `rocckmoskolsoblusbvswrudruthnhio` int DEFAULT NULL,\n `xabukithmttjrxhchzlncjnwnvayebpo` int DEFAULT NULL,\n `zxgqnicriluwvqrfobxsrprjoaiefsyx` int DEFAULT NULL,\n `bgkskkoletvvqatwqecxlppchipfipbm` int DEFAULT NULL,\n `jwvrlrjjptwyefzgwyabigepnvwbeyvo` int DEFAULT NULL,\n `dbaxggabrrjeiswwnicipmkxenxjzumu` int DEFAULT NULL,\n `slzvxdmjdulmnhfniepbefvtxcavdhbv` int DEFAULT NULL,\n `ulqpbaqvozxesersyrgjzbxqfrkoaqng` int DEFAULT NULL,\n `niinqlnvfjpzvkrekionxnbmvkqcxknp` int DEFAULT NULL,\n `slsxbjcaetgvonddnibxstvksefegbsg` int DEFAULT NULL,\n `lalpiarcwgmqiccrbhccjjbpglxdsgmf` int DEFAULT NULL,\n `awhjzvhbtpionycdmvzakhuybigdwsot` int DEFAULT NULL,\n `uxnchwrzprnguyzwspmpyjfjmfovaosr` int DEFAULT NULL,\n `orjyeaygqhfauqpzknpirxzfzoqdglag` int DEFAULT NULL,\n `gclkxxelujnxdscymzdbqfhqriysuthk` int DEFAULT NULL,\n `qwongavsgwiamevgxsqtysobpwrewzjs` int DEFAULT NULL,\n `fjrqeweopishsnbghwxvxwprmtzbuvvl` int DEFAULT NULL,\n `ofpkukmndbiannlbtqzafdxceoghrdlh` int DEFAULT NULL,\n `xamemvnqcnjhahxgulncwqehnuaprine` int DEFAULT NULL,\n `rwzznfqxjmpovswcupajcsgsbgpwbcdb` int DEFAULT NULL,\n `zutqxysenxwgvttfecamoculdiidsshy` int DEFAULT NULL,\n `fubafzdimkkfpxljfvpsshwrvfwyfhkw` int DEFAULT NULL,\n `xkltmdfcbmghqqwkbhlbonggsvpnsqrp` int DEFAULT NULL,\n `qztybypvhqgtwqrigfkczeocklikfees` int DEFAULT NULL,\n `elqwaflevvqjwbfryfjajdnbvyuhqkgo` int DEFAULT NULL,\n `cpwgnynyswfihienwqmudlrmsguuizcf` int DEFAULT NULL,\n `kmkgopgiifxovcpmwezvblytdijqzwcm` int DEFAULT NULL,\n `hlsffyaksloqbjtmcogxkrhnvgdfvlws` int DEFAULT NULL,\n `owtbdjboguudsmeljanuxetbvvyhnkry` int DEFAULT NULL,\n `cgwsbkyfvwecsgcstxqazvigrvxxmvmb` int DEFAULT NULL,\n `wrefdmgdmwlrgghsmfuehgfgssltksli` int DEFAULT NULL,\n `kllapahrkhqaxysexumqbanaybsottbq` int DEFAULT NULL,\n `bdbapwsklwbvveqqjcpnzzemcalwsrws` int DEFAULT NULL,\n `yjirtevwtmuacbyvygtwwpccclgygjzm` int DEFAULT NULL,\n `ebwpmhxgldaycrtujyodcflwtphmlcjs` int DEFAULT NULL,\n `awbbbzwlegtyvwgyfypbydafhwpgqhvr` int DEFAULT NULL,\n `sdgueqwjudenqqvrcslrmxbgcdxfftdo` int DEFAULT NULL,\n `dxqzawfaquagarjpnazwniwwstkquque` int DEFAULT NULL,\n `fbkgfqqqtayozsjuzjqxmtzootraydrr` int DEFAULT NULL,\n `jfkwnmjjinjswfubumctspecmxvklqnz` int DEFAULT NULL,\n `ckzjfhdoqjdzpvyxjboiyvldfvrikybq` int DEFAULT NULL,\n `akckzladypuwnwmhcdgjzbcjfgqyykjn` int DEFAULT NULL,\n `mqzrmspaufueokqaussftqpqwgckjbrm` int DEFAULT NULL,\n `yhepgyaeckkzjrahzvnsabapypiilbvy` int DEFAULT NULL,\n `uzzxcyedblccvnfbmpkizrnunzhobpvn` int DEFAULT NULL,\n `mmscainaryzhckxdggnawqkztoesumda` int DEFAULT NULL,\n `yxjaajtaphlqbrqngkamkibxdbbotehv` int DEFAULT NULL,\n `lxyhksipwtyvnfdrrlzrmtpcejchujgw` int DEFAULT NULL,\n `rxfchzjarmwnfulauxcwlscxfvvxikjt` int DEFAULT NULL,\n `btofrezcikkcelppxbkvcrpzcezbaprj` int DEFAULT NULL,\n PRIMARY KEY (`zcldsswjalnwvntzwpwkelyiwhpnxebs`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"iwnntobuwmkuzncjkkxxbjyvktvzwcla\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["zcldsswjalnwvntzwpwkelyiwhpnxebs"],"columns":[{"name":"zcldsswjalnwvntzwpwkelyiwhpnxebs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"hftiuabvtuplaqdtdzrfuoriyswniodg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idgeaszhaufaskbcexzhyuwxdovdizce","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"raqooccyxupdlsthkdrvukcuxflabhih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nflbnhrjoaxcsbnczwgiqwqabqfgyikz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfahrzeotguonqvolkrumkclgkjvmzvt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nlmdabcrchwqwisbfqqwsndjqcltxlqi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utrlgltfehihwzizqckthaanlgqylbyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdsbgujmgrcjnralhqawqusxkujuhish","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"trrccvhockkyvyofjxkpldlgsmvsapju","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zadeadyjxozddklnytyklpsfweijflbs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lofjszofzabnmfsacygswgayayyiatwr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhfhrxbzluekayattuwpngggypvimumz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhymduqlpaithjwbcmhpnvpdmolfeevd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"adywbvttclvocfgyaamoowdtqoxcsetx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxwlobytoofwngxtybuitmdtvvgwsayz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfphmtmawzgqeleyfmbwpodkyoqnmcff","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhxtserjbhugnheksxeplvyoguhlrneo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzmsybwdluehumzcfgojrdsnzyhwmsua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrdwjuqszpvjlqboaamoccjzzlnrdbbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hgmpoayzlfmpfmzosdfyhakjsdftveya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"klseeueujhhotnuwqardsuwuanuwcqxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iptpahwdwwuocgcztqntogjdyrknbhzw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjnzaskwwitkwefyglnhrkbqmehraypw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvgmbfplkwahqfbsklcoexlcubfxlecu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lellmogbqtcndrvsthfxnjzkapftvlxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blrziancalsuakxivpyhuvsnhtuoxaji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmwzpwhqccyhhuprwjzecjzgxetaclzx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zstokfstlsrhkdrvopsdcgyxpkjddtqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjrxmkkniuspjqimadwrtgrcdurgoqcs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynqfqoxmbzmhxhcpnqbgehvcdsykznpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhqizyhklmxvzpgaveeitycrjtpjysrc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmfxocmtylyhbihwphmmgbwbamxwpxcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twlqcxgyvqamrqqwwrctzqtdbzhorock","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swpvgcjddhrtsvueehdchywaagzeeabk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kuoluvplitorpzcawhyjnqafqtpzrcgd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dabsrxfwlirkzwvtewrreepchgvqaweg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejjtkwqkkvsjixeorsodrybwiqnmxbrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zuzdixkgfhurtzlkgufdtwpjdnnudeip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"djzihpworqzoyggukwygnbuupdkughlo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aoifapuntzrtjipuxfbpngcvtmziuicm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znckcmtdxiehocaqvmlkegnvwqhhdfms","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqogzvegiwyclplslwptyqlsimptzvzj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ticifxbnounmkhnnxetjejqkcstvgldt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcfmmcovlhkfqwfapmpafdgbcnrhpwvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"izleasprtdtpwzvhkoujwrgouykskngn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fkvwfaeazrmegyouvfjqralslcuthxpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rvtgtrbmjzlymaxxnygufckosigrcrxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvtdrklazjfdfjvghltzkbwtkzdhalpi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpcnvutnxoadeiyozhuvovthptejtatt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rocckmoskolsoblusbvswrudruthnhio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xabukithmttjrxhchzlncjnwnvayebpo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxgqnicriluwvqrfobxsrprjoaiefsyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bgkskkoletvvqatwqecxlppchipfipbm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwvrlrjjptwyefzgwyabigepnvwbeyvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbaxggabrrjeiswwnicipmkxenxjzumu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"slzvxdmjdulmnhfniepbefvtxcavdhbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ulqpbaqvozxesersyrgjzbxqfrkoaqng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"niinqlnvfjpzvkrekionxnbmvkqcxknp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"slsxbjcaetgvonddnibxstvksefegbsg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lalpiarcwgmqiccrbhccjjbpglxdsgmf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awhjzvhbtpionycdmvzakhuybigdwsot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxnchwrzprnguyzwspmpyjfjmfovaosr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orjyeaygqhfauqpzknpirxzfzoqdglag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gclkxxelujnxdscymzdbqfhqriysuthk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwongavsgwiamevgxsqtysobpwrewzjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjrqeweopishsnbghwxvxwprmtzbuvvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofpkukmndbiannlbtqzafdxceoghrdlh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xamemvnqcnjhahxgulncwqehnuaprine","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rwzznfqxjmpovswcupajcsgsbgpwbcdb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zutqxysenxwgvttfecamoculdiidsshy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fubafzdimkkfpxljfvpsshwrvfwyfhkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkltmdfcbmghqqwkbhlbonggsvpnsqrp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qztybypvhqgtwqrigfkczeocklikfees","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"elqwaflevvqjwbfryfjajdnbvyuhqkgo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cpwgnynyswfihienwqmudlrmsguuizcf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kmkgopgiifxovcpmwezvblytdijqzwcm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlsffyaksloqbjtmcogxkrhnvgdfvlws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owtbdjboguudsmeljanuxetbvvyhnkry","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgwsbkyfvwecsgcstxqazvigrvxxmvmb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wrefdmgdmwlrgghsmfuehgfgssltksli","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kllapahrkhqaxysexumqbanaybsottbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bdbapwsklwbvveqqjcpnzzemcalwsrws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjirtevwtmuacbyvygtwwpccclgygjzm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebwpmhxgldaycrtujyodcflwtphmlcjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awbbbzwlegtyvwgyfypbydafhwpgqhvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdgueqwjudenqqvrcslrmxbgcdxfftdo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxqzawfaquagarjpnazwniwwstkquque","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbkgfqqqtayozsjuzjqxmtzootraydrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jfkwnmjjinjswfubumctspecmxvklqnz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ckzjfhdoqjdzpvyxjboiyvldfvrikybq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akckzladypuwnwmhcdgjzbcjfgqyykjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqzrmspaufueokqaussftqpqwgckjbrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhepgyaeckkzjrahzvnsabapypiilbvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzzxcyedblccvnfbmpkizrnunzhobpvn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmscainaryzhckxdggnawqkztoesumda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxjaajtaphlqbrqngkamkibxdbbotehv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxyhksipwtyvnfdrrlzrmtpcejchujgw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxfchzjarmwnfulauxcwlscxfvvxikjt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"btofrezcikkcelppxbkvcrpzcezbaprj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668731,"databaseName":"models_schema","ddl":"CREATE TABLE `jklxyfguyfwhbanvhqbtokakczltxncj` (\n `ibqxiavsffarnerqiirqpikdqfacblsa` int NOT NULL,\n `dsneaywkivhqbkvkmchljtrciuaqoxff` int DEFAULT NULL,\n `kpiymkkjkxjzrwbhmxwycpmflueeenyk` int DEFAULT NULL,\n `jsrtrtsuidofdhsrfhqobzinihgsanmf` int DEFAULT NULL,\n `thggkahoyejxiuxnbizvmygbaruhhsfk` int DEFAULT NULL,\n `bgtqnqlegtgjrkmijmznhcmgbsgzgvvh` int DEFAULT NULL,\n `doovgumiyqolyztfooxmfdvnkiaovkee` int DEFAULT NULL,\n `plkeqmjwkfkjdepgligujqmwmpbumfcf` int DEFAULT NULL,\n `ghccizgvcwxkyzvuszjzegtibeefvvov` int DEFAULT NULL,\n `bnugehdjafxhlssaanrsdcsbirbannul` int DEFAULT NULL,\n `hzjfxpmfkulodorgecfnprhtktuwsvrf` int DEFAULT NULL,\n `oreeiwzmyjdbflmnifemrvgyvigwctvd` int DEFAULT NULL,\n `jshhfmelsdqhngvyekxkkqulysqtfzky` int DEFAULT NULL,\n `gkutigxwowdqjkogudbaimyepcszolku` int DEFAULT NULL,\n `aiujnqgcpcwklxuqlshepdoyvaxzuazw` int DEFAULT NULL,\n `mejaskpixzdbfcdsggyxbfxuqxxmtzvf` int DEFAULT NULL,\n `cypcstpsxnxbnqbguyeuncphepjqgsle` int DEFAULT NULL,\n `pdydavibuktnbkakltwjxgsyajzxjmvc` int DEFAULT NULL,\n `nqwiyimojuimkhadkycbgduhwzggvdcw` int DEFAULT NULL,\n `cegkvrdayraivnxccxwtrplomjkkxfgd` int DEFAULT NULL,\n `kjnyrcdqzfsblwwoegytqwfywziuicty` int DEFAULT NULL,\n `qfjzrwfvvkxnrxriadrntzprnjihfoyx` int DEFAULT NULL,\n `cmpvwwfkxeopbekxsskyxomtgbvtqoyj` int DEFAULT NULL,\n `cruodiybnbfkzzmldesbqlqkycyfvpkn` int DEFAULT NULL,\n `gohmsxaxbdswryhxcnqneanmfyhwdyga` int DEFAULT NULL,\n `fqkhtljywbhygqnxzwaamdtodevrqdlw` int DEFAULT NULL,\n `lvffhtyxcsqziwnltxkvernetxdlasqx` int DEFAULT NULL,\n `nxisqlwjxwkgpbvwbjuniiulhrzqozjc` int DEFAULT NULL,\n `xdehihkeatdkyidmjfyhmswmxkhdhqdx` int DEFAULT NULL,\n `hmycaudhurhqjpmphygbhciwghrwwdcy` int DEFAULT NULL,\n `yfuvrbxydogtgvccqgirfbdmknkfijbn` int DEFAULT NULL,\n `kyrnxpyxewqaqrwefoqboqpjtrykivet` int DEFAULT NULL,\n `padmlbhpkmghrtxphcntcyfvmitrreri` int DEFAULT NULL,\n `gzghvionrkyvqyhnqwjqysdfwrpgzqok` int DEFAULT NULL,\n `zlemobdncofrjzubxlyupwabpejasbys` int DEFAULT NULL,\n `gaajfowokqyloaodwzdecgqgfylnyvbo` int DEFAULT NULL,\n `inbzjxruqkbvzhudrrlxgbsircfpqezq` int DEFAULT NULL,\n `fbfwewgmroxicocjlbmlxunlltimxhvc` int DEFAULT NULL,\n `fgcifwnkuoghuxmukqtpvgakiixttwle` int DEFAULT NULL,\n `kiexidbeisjwbubobnbgzendqbqyhzoi` int DEFAULT NULL,\n `lanzdrcmfbuneuxbkezvlouudvcpjwzh` int DEFAULT NULL,\n `oplebgshyanzqxoxrzsqkhexyncgqhkp` int DEFAULT NULL,\n `tahvehzswfqnksybjlyqulebhqursrmu` int DEFAULT NULL,\n `hoyrglpjfshortqfdgbltowxepgrbbkf` int DEFAULT NULL,\n `ehubphjyvleletnvvwmpvpyfvbdzxqep` int DEFAULT NULL,\n `wbsxfkadxfrcuxlsiectbanpqeizfvkh` int DEFAULT NULL,\n `lgwphfxhqhwsliwzdmqgrutatdclivdm` int DEFAULT NULL,\n `jsrriezoxomezrrussfslpzfadtjzmhk` int DEFAULT NULL,\n `owlwxyupjtzyofioiercocekihiofpyy` int DEFAULT NULL,\n `onsapkpwfiqvvrivizbnowmsiyxtsijt` int DEFAULT NULL,\n `evpsdwahhubhaaikpplrnfpqreumupno` int DEFAULT NULL,\n `ruqsfqiyhkmfelsrtujckglksswzxnaw` int DEFAULT NULL,\n `djnnqcymfotnipyphxxnvnrsfaeiqdhs` int DEFAULT NULL,\n `gykkvngxggnukvlnsdcpmfjvefjkciwe` int DEFAULT NULL,\n `xekhjlrnfaaljznnuprimazdkwhqkwof` int DEFAULT NULL,\n `ynesmxrewfpreiiiojpyfghturszuuqg` int DEFAULT NULL,\n `mlxyyrwqnypflejotkyexahbpgzwqoar` int DEFAULT NULL,\n `vccohnnhsjkrewcxkkcphyisxjtxzfee` int DEFAULT NULL,\n `ypzolqcnklvgnsvjdupyidltwpiuxfep` int DEFAULT NULL,\n `tlcrocktdtdmoppxifjgdbmsofqwytpz` int DEFAULT NULL,\n `jnixxoafqhgjfwtaiscgeepxrbuohxps` int DEFAULT NULL,\n `lpyxcjabqiqsxmfvknwtaqzsjhaishnu` int DEFAULT NULL,\n `ulqosqztpwfvevttdrabttbdeekgyzbj` int DEFAULT NULL,\n `nfdjvejiiozidwvbviwgijmxdsmqrgvq` int DEFAULT NULL,\n `dwemcjwyqccgcxvoockeeczgjixlyhmm` int DEFAULT NULL,\n `natfftrykrulyowjpshrzcmpvalboxxf` int DEFAULT NULL,\n `vrlylhtkpiiulljfpmtyxpvyqxxjfiqd` int DEFAULT NULL,\n `dvhfptcquytcvafwjmhxwopwpgxrjvhe` int DEFAULT NULL,\n `yokbxmaabaeidgpskfjgzefupbykwxbv` int DEFAULT NULL,\n `mxdnzzthofvycniepsbtijxwcrlqnmzs` int DEFAULT NULL,\n `xkylerpsyuwtcywrnxonkfevrmsggiwq` int DEFAULT NULL,\n `bphbehkkoxrawbcfuncnzmpmycfjzxys` int DEFAULT NULL,\n `sxsbjlobkevbznztruxlmopijtkbjryx` int DEFAULT NULL,\n `smhdplsqonhzufnbcffejiquuqnxpcol` int DEFAULT NULL,\n `wmztamwgbjjxnvszhscbtmqieycuglwc` int DEFAULT NULL,\n `okvymumotiuwidwtcpuhmeguejhppthu` int DEFAULT NULL,\n `lfjadgfawdkjmxkvxinmlohxlokaofzw` int DEFAULT NULL,\n `qvqfnvmcootxetgdepnpjkiubkbwugyy` int DEFAULT NULL,\n `rltyvqowrstzqpnvmbkocxlztxyczzfv` int DEFAULT NULL,\n `vtooxysuiskixlkneyulugjamvpwgdby` int DEFAULT NULL,\n `knovukmirvbxvhxqgjrjyexskdtdzovj` int DEFAULT NULL,\n `ieaogiytgpkeecuwqmggfxvicpfulvzp` int DEFAULT NULL,\n `iydmvpmbespeuuszmyuhmddbiparfmfb` int DEFAULT NULL,\n `cgcammrmmqqeakxrtvmhepwmgeqydfuw` int DEFAULT NULL,\n `etkkccnnhyufqzggcccasnsefzhuhssy` int DEFAULT NULL,\n `pdkbvobkletdprljgifnicjdefnkvsoi` int DEFAULT NULL,\n `aaxqxswnlrokanwigdhctyskgklnluxo` int DEFAULT NULL,\n `crdgoywdmcojlgnfxtgarxhhjattnoff` int DEFAULT NULL,\n `zczoyoegwnzapyclzjgumltanordwkze` int DEFAULT NULL,\n `nscjrddqxgqskaafwegwdjrcdczqkbch` int DEFAULT NULL,\n `busyuqlfvmnmikrjpgirrqbeomxwddod` int DEFAULT NULL,\n `mqszmtiochsraopqvdbdyfznghkonxll` int DEFAULT NULL,\n `cvqupdsmsifwnqgrqfzvmgcwbzprxnol` int DEFAULT NULL,\n `qzvomrkiwqxghllfajshrpdowdvhzaem` int DEFAULT NULL,\n `actweszxaueanhzzcalifnmgywwudokb` int DEFAULT NULL,\n `atrmjzmbpjbipcagqzoomjltytrhvvey` int DEFAULT NULL,\n `elvlnhpyjwvoqlvukltlclemvbdypyaa` int DEFAULT NULL,\n `qncribyfcefdgdtadpbfbjrsiknvmifi` int DEFAULT NULL,\n `owagelluawahbcxpyejpvyhzyuzkdboz` int DEFAULT NULL,\n `jpybjdzksesggjbnezpqwmvducpmiypd` int DEFAULT NULL,\n PRIMARY KEY (`ibqxiavsffarnerqiirqpikdqfacblsa`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"jklxyfguyfwhbanvhqbtokakczltxncj\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["ibqxiavsffarnerqiirqpikdqfacblsa"],"columns":[{"name":"ibqxiavsffarnerqiirqpikdqfacblsa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"dsneaywkivhqbkvkmchljtrciuaqoxff","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kpiymkkjkxjzrwbhmxwycpmflueeenyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jsrtrtsuidofdhsrfhqobzinihgsanmf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thggkahoyejxiuxnbizvmygbaruhhsfk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bgtqnqlegtgjrkmijmznhcmgbsgzgvvh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"doovgumiyqolyztfooxmfdvnkiaovkee","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"plkeqmjwkfkjdepgligujqmwmpbumfcf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghccizgvcwxkyzvuszjzegtibeefvvov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnugehdjafxhlssaanrsdcsbirbannul","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hzjfxpmfkulodorgecfnprhtktuwsvrf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oreeiwzmyjdbflmnifemrvgyvigwctvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jshhfmelsdqhngvyekxkkqulysqtfzky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkutigxwowdqjkogudbaimyepcszolku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aiujnqgcpcwklxuqlshepdoyvaxzuazw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mejaskpixzdbfcdsggyxbfxuqxxmtzvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cypcstpsxnxbnqbguyeuncphepjqgsle","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdydavibuktnbkakltwjxgsyajzxjmvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqwiyimojuimkhadkycbgduhwzggvdcw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cegkvrdayraivnxccxwtrplomjkkxfgd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjnyrcdqzfsblwwoegytqwfywziuicty","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfjzrwfvvkxnrxriadrntzprnjihfoyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmpvwwfkxeopbekxsskyxomtgbvtqoyj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cruodiybnbfkzzmldesbqlqkycyfvpkn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gohmsxaxbdswryhxcnqneanmfyhwdyga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqkhtljywbhygqnxzwaamdtodevrqdlw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvffhtyxcsqziwnltxkvernetxdlasqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxisqlwjxwkgpbvwbjuniiulhrzqozjc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdehihkeatdkyidmjfyhmswmxkhdhqdx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmycaudhurhqjpmphygbhciwghrwwdcy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfuvrbxydogtgvccqgirfbdmknkfijbn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kyrnxpyxewqaqrwefoqboqpjtrykivet","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"padmlbhpkmghrtxphcntcyfvmitrreri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzghvionrkyvqyhnqwjqysdfwrpgzqok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zlemobdncofrjzubxlyupwabpejasbys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gaajfowokqyloaodwzdecgqgfylnyvbo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"inbzjxruqkbvzhudrrlxgbsircfpqezq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbfwewgmroxicocjlbmlxunlltimxhvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fgcifwnkuoghuxmukqtpvgakiixttwle","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kiexidbeisjwbubobnbgzendqbqyhzoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lanzdrcmfbuneuxbkezvlouudvcpjwzh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oplebgshyanzqxoxrzsqkhexyncgqhkp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tahvehzswfqnksybjlyqulebhqursrmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hoyrglpjfshortqfdgbltowxepgrbbkf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehubphjyvleletnvvwmpvpyfvbdzxqep","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbsxfkadxfrcuxlsiectbanpqeizfvkh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgwphfxhqhwsliwzdmqgrutatdclivdm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jsrriezoxomezrrussfslpzfadtjzmhk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owlwxyupjtzyofioiercocekihiofpyy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"onsapkpwfiqvvrivizbnowmsiyxtsijt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evpsdwahhubhaaikpplrnfpqreumupno","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ruqsfqiyhkmfelsrtujckglksswzxnaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"djnnqcymfotnipyphxxnvnrsfaeiqdhs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gykkvngxggnukvlnsdcpmfjvefjkciwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xekhjlrnfaaljznnuprimazdkwhqkwof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynesmxrewfpreiiiojpyfghturszuuqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mlxyyrwqnypflejotkyexahbpgzwqoar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vccohnnhsjkrewcxkkcphyisxjtxzfee","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypzolqcnklvgnsvjdupyidltwpiuxfep","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlcrocktdtdmoppxifjgdbmsofqwytpz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jnixxoafqhgjfwtaiscgeepxrbuohxps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lpyxcjabqiqsxmfvknwtaqzsjhaishnu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ulqosqztpwfvevttdrabttbdeekgyzbj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfdjvejiiozidwvbviwgijmxdsmqrgvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwemcjwyqccgcxvoockeeczgjixlyhmm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"natfftrykrulyowjpshrzcmpvalboxxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vrlylhtkpiiulljfpmtyxpvyqxxjfiqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvhfptcquytcvafwjmhxwopwpgxrjvhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yokbxmaabaeidgpskfjgzefupbykwxbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mxdnzzthofvycniepsbtijxwcrlqnmzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkylerpsyuwtcywrnxonkfevrmsggiwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bphbehkkoxrawbcfuncnzmpmycfjzxys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sxsbjlobkevbznztruxlmopijtkbjryx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smhdplsqonhzufnbcffejiquuqnxpcol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmztamwgbjjxnvszhscbtmqieycuglwc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"okvymumotiuwidwtcpuhmeguejhppthu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfjadgfawdkjmxkvxinmlohxlokaofzw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvqfnvmcootxetgdepnpjkiubkbwugyy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rltyvqowrstzqpnvmbkocxlztxyczzfv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtooxysuiskixlkneyulugjamvpwgdby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knovukmirvbxvhxqgjrjyexskdtdzovj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ieaogiytgpkeecuwqmggfxvicpfulvzp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iydmvpmbespeuuszmyuhmddbiparfmfb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgcammrmmqqeakxrtvmhepwmgeqydfuw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"etkkccnnhyufqzggcccasnsefzhuhssy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdkbvobkletdprljgifnicjdefnkvsoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aaxqxswnlrokanwigdhctyskgklnluxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"crdgoywdmcojlgnfxtgarxhhjattnoff","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zczoyoegwnzapyclzjgumltanordwkze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nscjrddqxgqskaafwegwdjrcdczqkbch","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"busyuqlfvmnmikrjpgirrqbeomxwddod","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqszmtiochsraopqvdbdyfznghkonxll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvqupdsmsifwnqgrqfzvmgcwbzprxnol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qzvomrkiwqxghllfajshrpdowdvhzaem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"actweszxaueanhzzcalifnmgywwudokb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atrmjzmbpjbipcagqzoomjltytrhvvey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"elvlnhpyjwvoqlvukltlclemvbdypyaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qncribyfcefdgdtadpbfbjrsiknvmifi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owagelluawahbcxpyejpvyhzyuzkdboz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jpybjdzksesggjbnezpqwmvducpmiypd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668763,"databaseName":"models_schema","ddl":"CREATE TABLE `jnnbrmmdrkoflyyvppyijnmfxbdveonu` (\n `wunooyehcpcgtitbrmhscnamyjmmpxdh` int NOT NULL,\n `nqqkvixnpxithgffblgktehpcvbhsrqx` int DEFAULT NULL,\n `pnkvnynxchdakslvjjoyqohrfachchdc` int DEFAULT NULL,\n `hgqiodtdakmrinxbxeobvzzndqwvbbpd` int DEFAULT NULL,\n `jebufehymlvmevmrmgstmaqknyozvkov` int DEFAULT NULL,\n `dpdsypxwizowjqnvgmaajupbcagyekoe` int DEFAULT NULL,\n `ekyshyfqdtrahdbmywueeacjhcfezigs` int DEFAULT NULL,\n `foeopclxbsptpegewchxizavjnekwpgd` int DEFAULT NULL,\n `igyrdnsjayilxuucaxoskuwqvhkqaebm` int DEFAULT NULL,\n `cqsezcdqiwkqjovzfzxmghuzckkqaqsj` int DEFAULT NULL,\n `nfogzydrfkzivelyhonqxruexequijhc` int DEFAULT NULL,\n `hxdjkfgtschrsrpbwxcbnuquarbokxnf` int DEFAULT NULL,\n `wkzurmiagdnewjihkemlhjbckyuxslbh` int DEFAULT NULL,\n `ajmclmklovhkfwhjpxmadwrfmhakvqyu` int DEFAULT NULL,\n `bgmkspmcdegkmrmvdscayhygiduwxpkt` int DEFAULT NULL,\n `ozjiazbpzwtlrtonzofurnypwmhuxvwo` int DEFAULT NULL,\n `ytnvvshvqpdimjhujmufuesivkndfzlt` int DEFAULT NULL,\n `cujououyuaupwfkudlzsuxhxrnofvzkz` int DEFAULT NULL,\n `mkpuprysdkwlcvhdfvluqqqknfilkoak` int DEFAULT NULL,\n `gkucljtzuupfrgrbnpjuelmttrcemrxw` int DEFAULT NULL,\n `iwqhhwzmnjzimnqnnreozqotwnaejkpf` int DEFAULT NULL,\n `hobgxyscdkjlekxtbvyfvcokttmexwpm` int DEFAULT NULL,\n `whycdhbtyakikrjjvoklszasifbukgqj` int DEFAULT NULL,\n `vomjinaqocrgcfjnpqnofegqetlakhsr` int DEFAULT NULL,\n `dzpvmxkpvcjhirnjcxgybyjqmfvjtcot` int DEFAULT NULL,\n `umtibnqnsgjgthtaneobtjzyrknrelha` int DEFAULT NULL,\n `tgufgpkyvazxtwysishupxjxbhxacooi` int DEFAULT NULL,\n `ycxojthgcftbkbtmlpaxjwhlhvtbbxdi` int DEFAULT NULL,\n `cnfbohibwclupyfvhwtyceggiknzyfhy` int DEFAULT NULL,\n `aowwjkrihpvkenpbvzzjmybeqlktuezi` int DEFAULT NULL,\n `xjbktvhylqdszuhknxsotcmlwyjrbnhk` int DEFAULT NULL,\n `vzltnzabelrfcdzmjdhxxrumherhogak` int DEFAULT NULL,\n `uelevjmgntnowmcclqrncaqleixlkhzj` int DEFAULT NULL,\n `giiuyrsdjpvswwjumnddosbuswwroeek` int DEFAULT NULL,\n `safqpjqopffqtuicutnzvcjzddzmmekj` int DEFAULT NULL,\n `ynammgmwfkkfhbfxfnbpwmiwyebpfvdl` int DEFAULT NULL,\n `uzlsobpikxzqzrnmxcnmatgpacrvphgn` int DEFAULT NULL,\n `yqvctadcathhaidleplybizjvbfercip` int DEFAULT NULL,\n `yetynuuhlywgtpytzqfrseeecqtyymfo` int DEFAULT NULL,\n `czvbhrwrhigyzxxkcpkikmhlxbexwelh` int DEFAULT NULL,\n `bqzekgbhphoeiaillfrgjienfnfoeasl` int DEFAULT NULL,\n `ofnzgsteeqvejipkrsyeuvusvlcfpjtf` int DEFAULT NULL,\n `cwwvchdhinmykfanxmpdbldwzvdtynht` int DEFAULT NULL,\n `phynnhrktzzpzhepqaqdayavxezelmhk` int DEFAULT NULL,\n `afwnueoeywtnahdtdsptjykrgzkxxvog` int DEFAULT NULL,\n `hwfmillfyfvcnvulzhltriardfwdhmke` int DEFAULT NULL,\n `gvihadnmzsgoytoulyumquictczmibon` int DEFAULT NULL,\n `mjyhlqbuywrmpjgdskpsahiltsbavddg` int DEFAULT NULL,\n `ymlqbmohterdlewqqeqhdtuzfsoxpcgn` int DEFAULT NULL,\n `jjxmbstkzwqfqynkpjdimrbrqrbmodvd` int DEFAULT NULL,\n `kabilbcydfpxpandkkswwseenfzomqhj` int DEFAULT NULL,\n `qxdwizzmjoltvlazfuigyihtauhamwxj` int DEFAULT NULL,\n `ihznzezeivvlaydpmqlolusaylzzgjzf` int DEFAULT NULL,\n `zsgcpwnwwfyuwrzxgbcvkvlzskprkoet` int DEFAULT NULL,\n `vitcneyeidzptdtjxspxyniqlzlfvxqr` int DEFAULT NULL,\n `pzzjifrbocqrmvlqzrueekjfpyjotwzj` int DEFAULT NULL,\n `ractjatswaumpmuxecmjcncjjznigfto` int DEFAULT NULL,\n `rneghpamubgbpgwblahxbydoqlnqhclj` int DEFAULT NULL,\n `kxrokxxgqcefnhzmhmaryqitulyuukqp` int DEFAULT NULL,\n `vfzacrlybsxgorjhsfddwtxodppnpjzo` int DEFAULT NULL,\n `dyrwidtclpmtstgikzknzosldrfipkjd` int DEFAULT NULL,\n `taotwdqasrbvdeawikdjmottjqzhfjtw` int DEFAULT NULL,\n `sxhtcxvysidbdrbkvzdwjghujkenooho` int DEFAULT NULL,\n `kfqpumfyuwvryxzntgdaqdfcrkahzpka` int DEFAULT NULL,\n `ikyujsnwoitueircnfhttlasfkwqtckd` int DEFAULT NULL,\n `zuyakezrlovhwuaxhqgqzitzpckegycd` int DEFAULT NULL,\n `gqabiihpjwlxceldvkdqgjmqllfipvtb` int DEFAULT NULL,\n `cthqmolomhxvpwzusuqmmmluluzyveki` int DEFAULT NULL,\n `nnqhyddlcfvsuphtjepjuyvwbjdzzyng` int DEFAULT NULL,\n `pfxqgfoenuzzikvetlidhjvsvixjirbd` int DEFAULT NULL,\n `ohroopfwdtfkqisnqfkxtdwhafuytvvc` int DEFAULT NULL,\n `pvrttkmapccrslelydjbwwtxflwrnxqy` int DEFAULT NULL,\n `dyfxpflxuqzvsydignhrneiktguscboq` int DEFAULT NULL,\n `ibnbkfxkqhhslcmidfsyhlibrnoviyff` int DEFAULT NULL,\n `wpkwhyonkufuycynkirugotwjiyltnbf` int DEFAULT NULL,\n `harmxxwmjraffadckkggmrwwigpgkmrn` int DEFAULT NULL,\n `orauenxqzbbsvrenmrqruvjvzlcwjcao` int DEFAULT NULL,\n `qyzalasouvpjqpkzczroqilqkcxouddq` int DEFAULT NULL,\n `nmlsjejsmdwanleculclvqhekmxoxkek` int DEFAULT NULL,\n `yyzbdxrnqoyriahprcjakpsnsvwezfcu` int DEFAULT NULL,\n `oghfqhaulpfkgurfquuiccvompadrxij` int DEFAULT NULL,\n `fhkuxbnvguiyegrehbdreywxkqcwqfce` int DEFAULT NULL,\n `ecgrnaoktzeupzsrldqdhwsjomxqcnde` int DEFAULT NULL,\n `ujejvjduinkprchqnuzjfzhbmiyahhym` int DEFAULT NULL,\n `eovwelonrdjcopiggotqejbwakjjpkmw` int DEFAULT NULL,\n `ujvqplllnztinouheufowafmfnlpwwfb` int DEFAULT NULL,\n `tzqofgpefhmnojlofbbkcrudlcldbxzr` int DEFAULT NULL,\n `yadipimayueeqpmtcwvjlkaxgyiipeuw` int DEFAULT NULL,\n `dkfobgyfuzoargqhzvmrlwbmgrxrlogb` int DEFAULT NULL,\n `ojkosdspyyvwtsioubnvgedcstxvuwho` int DEFAULT NULL,\n `cacsrhkmcnieitmvpbuqwhaiawzoftui` int DEFAULT NULL,\n `krltuopwdcgovxvcyihvhxekawkibuyq` int DEFAULT NULL,\n `wucklplmjgfatyaegrdnpkrdjpjzvvtf` int DEFAULT NULL,\n `sdrricpknsueeejomnlnvmnfddixjkam` int DEFAULT NULL,\n `nkyurdnkrgptvohhartqmmuyzzsvtvgp` int DEFAULT NULL,\n `iydglrgrzdkgsaiktuhzrmskldbdndxi` int DEFAULT NULL,\n `qhspnnyfvqxjxhfwicvdqdwxvduokawc` int DEFAULT NULL,\n `nzphiwxcfbjivhyznrfcubkohqbdfsze` int DEFAULT NULL,\n `edayzlzxeueckguucikgfmezhjigazje` int DEFAULT NULL,\n `euxplodzirkoylyjnprvtbigdzzbkiuz` int DEFAULT NULL,\n PRIMARY KEY (`wunooyehcpcgtitbrmhscnamyjmmpxdh`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"jnnbrmmdrkoflyyvppyijnmfxbdveonu\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["wunooyehcpcgtitbrmhscnamyjmmpxdh"],"columns":[{"name":"wunooyehcpcgtitbrmhscnamyjmmpxdh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"nqqkvixnpxithgffblgktehpcvbhsrqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnkvnynxchdakslvjjoyqohrfachchdc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hgqiodtdakmrinxbxeobvzzndqwvbbpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jebufehymlvmevmrmgstmaqknyozvkov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpdsypxwizowjqnvgmaajupbcagyekoe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekyshyfqdtrahdbmywueeacjhcfezigs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"foeopclxbsptpegewchxizavjnekwpgd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igyrdnsjayilxuucaxoskuwqvhkqaebm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqsezcdqiwkqjovzfzxmghuzckkqaqsj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfogzydrfkzivelyhonqxruexequijhc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hxdjkfgtschrsrpbwxcbnuquarbokxnf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wkzurmiagdnewjihkemlhjbckyuxslbh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajmclmklovhkfwhjpxmadwrfmhakvqyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bgmkspmcdegkmrmvdscayhygiduwxpkt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ozjiazbpzwtlrtonzofurnypwmhuxvwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytnvvshvqpdimjhujmufuesivkndfzlt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cujououyuaupwfkudlzsuxhxrnofvzkz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkpuprysdkwlcvhdfvluqqqknfilkoak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkucljtzuupfrgrbnpjuelmttrcemrxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwqhhwzmnjzimnqnnreozqotwnaejkpf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hobgxyscdkjlekxtbvyfvcokttmexwpm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"whycdhbtyakikrjjvoklszasifbukgqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vomjinaqocrgcfjnpqnofegqetlakhsr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dzpvmxkpvcjhirnjcxgybyjqmfvjtcot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umtibnqnsgjgthtaneobtjzyrknrelha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tgufgpkyvazxtwysishupxjxbhxacooi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ycxojthgcftbkbtmlpaxjwhlhvtbbxdi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnfbohibwclupyfvhwtyceggiknzyfhy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aowwjkrihpvkenpbvzzjmybeqlktuezi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjbktvhylqdszuhknxsotcmlwyjrbnhk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vzltnzabelrfcdzmjdhxxrumherhogak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uelevjmgntnowmcclqrncaqleixlkhzj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"giiuyrsdjpvswwjumnddosbuswwroeek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"safqpjqopffqtuicutnzvcjzddzmmekj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynammgmwfkkfhbfxfnbpwmiwyebpfvdl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzlsobpikxzqzrnmxcnmatgpacrvphgn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqvctadcathhaidleplybizjvbfercip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yetynuuhlywgtpytzqfrseeecqtyymfo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"czvbhrwrhigyzxxkcpkikmhlxbexwelh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqzekgbhphoeiaillfrgjienfnfoeasl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofnzgsteeqvejipkrsyeuvusvlcfpjtf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwwvchdhinmykfanxmpdbldwzvdtynht","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phynnhrktzzpzhepqaqdayavxezelmhk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afwnueoeywtnahdtdsptjykrgzkxxvog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwfmillfyfvcnvulzhltriardfwdhmke","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gvihadnmzsgoytoulyumquictczmibon","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjyhlqbuywrmpjgdskpsahiltsbavddg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ymlqbmohterdlewqqeqhdtuzfsoxpcgn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjxmbstkzwqfqynkpjdimrbrqrbmodvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kabilbcydfpxpandkkswwseenfzomqhj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxdwizzmjoltvlazfuigyihtauhamwxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ihznzezeivvlaydpmqlolusaylzzgjzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zsgcpwnwwfyuwrzxgbcvkvlzskprkoet","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vitcneyeidzptdtjxspxyniqlzlfvxqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pzzjifrbocqrmvlqzrueekjfpyjotwzj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ractjatswaumpmuxecmjcncjjznigfto","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rneghpamubgbpgwblahxbydoqlnqhclj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxrokxxgqcefnhzmhmaryqitulyuukqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vfzacrlybsxgorjhsfddwtxodppnpjzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dyrwidtclpmtstgikzknzosldrfipkjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"taotwdqasrbvdeawikdjmottjqzhfjtw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sxhtcxvysidbdrbkvzdwjghujkenooho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfqpumfyuwvryxzntgdaqdfcrkahzpka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikyujsnwoitueircnfhttlasfkwqtckd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zuyakezrlovhwuaxhqgqzitzpckegycd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqabiihpjwlxceldvkdqgjmqllfipvtb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cthqmolomhxvpwzusuqmmmluluzyveki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nnqhyddlcfvsuphtjepjuyvwbjdzzyng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pfxqgfoenuzzikvetlidhjvsvixjirbd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohroopfwdtfkqisnqfkxtdwhafuytvvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pvrttkmapccrslelydjbwwtxflwrnxqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dyfxpflxuqzvsydignhrneiktguscboq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibnbkfxkqhhslcmidfsyhlibrnoviyff","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wpkwhyonkufuycynkirugotwjiyltnbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"harmxxwmjraffadckkggmrwwigpgkmrn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orauenxqzbbsvrenmrqruvjvzlcwjcao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qyzalasouvpjqpkzczroqilqkcxouddq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmlsjejsmdwanleculclvqhekmxoxkek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yyzbdxrnqoyriahprcjakpsnsvwezfcu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oghfqhaulpfkgurfquuiccvompadrxij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhkuxbnvguiyegrehbdreywxkqcwqfce","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecgrnaoktzeupzsrldqdhwsjomxqcnde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujejvjduinkprchqnuzjfzhbmiyahhym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eovwelonrdjcopiggotqejbwakjjpkmw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujvqplllnztinouheufowafmfnlpwwfb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tzqofgpefhmnojlofbbkcrudlcldbxzr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yadipimayueeqpmtcwvjlkaxgyiipeuw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkfobgyfuzoargqhzvmrlwbmgrxrlogb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojkosdspyyvwtsioubnvgedcstxvuwho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cacsrhkmcnieitmvpbuqwhaiawzoftui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"krltuopwdcgovxvcyihvhxekawkibuyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wucklplmjgfatyaegrdnpkrdjpjzvvtf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdrricpknsueeejomnlnvmnfddixjkam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nkyurdnkrgptvohhartqmmuyzzsvtvgp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iydglrgrzdkgsaiktuhzrmskldbdndxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhspnnyfvqxjxhfwicvdqdwxvduokawc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzphiwxcfbjivhyznrfcubkohqbdfsze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edayzlzxeueckguucikgfmezhjigazje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"euxplodzirkoylyjnprvtbigdzzbkiuz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668793,"databaseName":"models_schema","ddl":"CREATE TABLE `jwaehjgccilncrxqdqdzytzyjdhdrtfi` (\n `ikxvuzwufjkmlyqhcshbeyxpwgumppei` int NOT NULL,\n `kyokwitzbxswqfuhufaqqvvgugzxbmzz` int DEFAULT NULL,\n `orjpcycwvupdenjwlhttxulmcarygewx` int DEFAULT NULL,\n `lnkmwjqcfrfixijqsvqdqrfqcfoamxat` int DEFAULT NULL,\n `wfhuowxejjdmzmnwiiiiabstunszpoih` int DEFAULT NULL,\n `ivolysrwhpuybvzdtowbsywcvulpuics` int DEFAULT NULL,\n `jovjddxjaselpttextmeloesipmglmpk` int DEFAULT NULL,\n `zfcurzmfqezzebjbdybwkvvgfebptfqv` int DEFAULT NULL,\n `fatbmodkvohpeevflsojalktntaodvrb` int DEFAULT NULL,\n `aabrctxcertvbasqzryzqhpetzpuwnsc` int DEFAULT NULL,\n `wrztnchvudvagvjveipsjnmjlvcvvwdq` int DEFAULT NULL,\n `oowiclcbfbqftgqpecqmwrzztgiwwjmu` int DEFAULT NULL,\n `obkuhbkkntocvxcapumarwrbzwdwsljz` int DEFAULT NULL,\n `zjfxtjnmqklagficrizecscocnefydzs` int DEFAULT NULL,\n `mtqwgwptplxbryzngvbovtftsqkbbntc` int DEFAULT NULL,\n `ocitnwzcgjucqjjczxoruoshkpdubydc` int DEFAULT NULL,\n `pxxjeywembzyvtoxllzjlgporqitvogf` int DEFAULT NULL,\n `cdsrgoobdtqizmeqfdxszjkgereutpqp` int DEFAULT NULL,\n `eunbfuawnjoqvghlojosztiiohxneunv` int DEFAULT NULL,\n `oyaxzgybfdiwathziqsjmtzfijcnqxni` int DEFAULT NULL,\n `piwusynabdmcwjvpuergeklaphvwnvwk` int DEFAULT NULL,\n `ukvcjjqfgfizfqdzdmbgxtzhhnnebylg` int DEFAULT NULL,\n `sllkbigxcsuyppnaiiyblsujxdevjaau` int DEFAULT NULL,\n `rzgfhnmaknlycqwkfmpnybhbmqjuixyv` int DEFAULT NULL,\n `iepdhlekdbvsrxhkelifkwstrtiekhiy` int DEFAULT NULL,\n `gaslgbsmcnnekohqnflwnrcvebcwirlr` int DEFAULT NULL,\n `eeayvqhpkujjhzwzwfnnxbjdmzbftftx` int DEFAULT NULL,\n `oxsztblquccvmgiqkkgceoztdwqytjav` int DEFAULT NULL,\n `wmglrllgbgpahinmnhwmhknfvoybegxm` int DEFAULT NULL,\n `rmcwzkhfbrgpczacyslsgrrmfozhwzev` int DEFAULT NULL,\n `ekzbxnslanxzejvojzeaomevcqspnhtc` int DEFAULT NULL,\n `yzbimekncwtbdnwxzcqgnvdpqbwqmalg` int DEFAULT NULL,\n `awatssclxdschmjmtwdpiktwgfyyjrbm` int DEFAULT NULL,\n `axzuzeigugwuevxqolbueorrrzeyufzy` int DEFAULT NULL,\n `okolctosffzihacmbvywizatwvuyszal` int DEFAULT NULL,\n `rtouvmpbukjjbjxgvniyoaxwqbckeczw` int DEFAULT NULL,\n `nypwnoqzscbxljwbnkriqywbjqmzachb` int DEFAULT NULL,\n `cewkmtokgjzwyvcregnnezhitworjniq` int DEFAULT NULL,\n `uzplurgvkxbpijragkzqtqfpolpbbmxd` int DEFAULT NULL,\n `zjgkhpzluqallextxsqzedrgffvvrvzf` int DEFAULT NULL,\n `xjujcdxgdwrsaqlphsgxezblxjumicun` int DEFAULT NULL,\n `qxlzxcutkfyhermlvlulsoxbblxkdewm` int DEFAULT NULL,\n `dzyleuuwdwuklfpoouqjpmbytujfdrae` int DEFAULT NULL,\n `axeeeekfvznpucxhypdavlqseatkozgq` int DEFAULT NULL,\n `fyiyezwssqkmzcpmdqugeimuiqqqpfyu` int DEFAULT NULL,\n `ehajdtztmezdcmzwhadpjvmftysbdqab` int DEFAULT NULL,\n `gebezzbbupanmbqvddjsbjjjwduzejsd` int DEFAULT NULL,\n `hfgynwcokqlfijnctruqhgtddnwmdhae` int DEFAULT NULL,\n `tkmqnmvsbgaewjcjlcgwpoxyrhtwqhuw` int DEFAULT NULL,\n `ehnkclesartdpdheatlakfnmfadrujcz` int DEFAULT NULL,\n `gwtezqvjfhijsjjmjajntxrtorparapd` int DEFAULT NULL,\n `ahnypptfezwqzatrhpzxaltbesczszyl` int DEFAULT NULL,\n `ssczprkydxykqrsbpadbrxqzkdhjcthp` int DEFAULT NULL,\n `jdfwskgldeaptwcvatjyyysptuwdomvr` int DEFAULT NULL,\n `xsnioxtgigbxhvdvsiuwlvtmalckeibu` int DEFAULT NULL,\n `alcevksgqlhgkhqqelyjzijxcpogyova` int DEFAULT NULL,\n `edbkwkycagozrvemhlfyrpxkfozwngxi` int DEFAULT NULL,\n `pyfewffgswzrcgkclyahxhfmtuvrhtys` int DEFAULT NULL,\n `xusuitjmyxqmfqgldusvnqyskbxkmcsi` int DEFAULT NULL,\n `zbyojloahyxmshlagnjetlwcknpzjsgo` int DEFAULT NULL,\n `uaumxuxbnbvjsulwgvhlgtqxshwxsnfy` int DEFAULT NULL,\n `amguzjmzslukogpidatmneduutgbfabh` int DEFAULT NULL,\n `ucartsapmfkqxjkclavgyvgkodwweizh` int DEFAULT NULL,\n `xpyyysehszsjactseriweqlqwxkvkirm` int DEFAULT NULL,\n `ctyoerhonmtjhybknzmhpjlyqjlwbscw` int DEFAULT NULL,\n `hntnxyeoqenbidwqeapaufrwomisriod` int DEFAULT NULL,\n `lukkxkbghvtbzhiyeojxyiutqgykklvs` int DEFAULT NULL,\n `weqspyrlmewmoujjqoynemmpbxzjmqwn` int DEFAULT NULL,\n `fajjrcrzcjecqhfgblfeawhxbdvtzchh` int DEFAULT NULL,\n `hhusnrrjrykszplbkzhjjchmgjwqdjgc` int DEFAULT NULL,\n `rivxpyymlsrjqqikemasygdoepbpczly` int DEFAULT NULL,\n `pbaglwnvczdeucuuisofgqvortomqiuz` int DEFAULT NULL,\n `jrliiouokcrkwcuzwuogkigvcyvozjcr` int DEFAULT NULL,\n `ztjfxkgszgiqrtazitfwrikzwlfbsfmr` int DEFAULT NULL,\n `aehmskdahmyuuwiwrvvnofrmewpftwzj` int DEFAULT NULL,\n `knhcafhyqjvxyasyvviscgyvuhitviyi` int DEFAULT NULL,\n `nhkcloftelrfxircftyxddqktaobinem` int DEFAULT NULL,\n `uifnurgbhxroyeyjsxbgfdobkqoxesnb` int DEFAULT NULL,\n `unrffdzdosqzfltxkjmkgtsezcclasbe` int DEFAULT NULL,\n `vhnykbddbgbaiikmlcgaoeyugwkodbwc` int DEFAULT NULL,\n `hmurbjgsckkkhysuwqrsruclwittwauv` int DEFAULT NULL,\n `xqyxyxwxxpndzacsvlnhhaipqukjqbnr` int DEFAULT NULL,\n `vnajzwkdcleqvbsbherzamnenvbdekbg` int DEFAULT NULL,\n `ydkvhwusigvljamutojzilwsecfoztko` int DEFAULT NULL,\n `tmeeubjbmkztclxbfcnlhhocwfuagikv` int DEFAULT NULL,\n `pmvilzzthzbqsdilxiemlafyjhjeefpc` int DEFAULT NULL,\n `kwzqliwlbvycasewmnjrkjkkwsgcyayf` int DEFAULT NULL,\n `zmnuybhyksbjdjoujgtvjcdgvkyfnwgb` int DEFAULT NULL,\n `uowueqqiwfspouspvbbokcvlvlhqxqwr` int DEFAULT NULL,\n `fdkmpilzeoybzvuzvgskieiqzuidqgzi` int DEFAULT NULL,\n `gjryrmwaxfjdcbchwbpyoncfoxseflpy` int DEFAULT NULL,\n `rjypulguhecrfjzvimfabxhqegdakdbo` int DEFAULT NULL,\n `ywgkqxuapsfbaxkiiwtfnjqsxdylimxg` int DEFAULT NULL,\n `umsolajdmxjonxxnrwhaoudwsciblujr` int DEFAULT NULL,\n `jhqmkrhtiosyqjcnkxzsgxhcrehzsdca` int DEFAULT NULL,\n `ythviazuhoomzzlmamtcjznjmvczeamp` int DEFAULT NULL,\n `bsafpxjzwzjwsmkkwfpsujttyevbdzck` int DEFAULT NULL,\n `qulnoodqmxlvsrproyjkxyrlqrvotiqs` int DEFAULT NULL,\n `ceerytjsrsidgxwwpmluanpszilbmwkf` int DEFAULT NULL,\n `dcojftjkxhdphyjoaonfogblvrnyvgxq` int DEFAULT NULL,\n PRIMARY KEY (`ikxvuzwufjkmlyqhcshbeyxpwgumppei`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"jwaehjgccilncrxqdqdzytzyjdhdrtfi\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["ikxvuzwufjkmlyqhcshbeyxpwgumppei"],"columns":[{"name":"ikxvuzwufjkmlyqhcshbeyxpwgumppei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"kyokwitzbxswqfuhufaqqvvgugzxbmzz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orjpcycwvupdenjwlhttxulmcarygewx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lnkmwjqcfrfixijqsvqdqrfqcfoamxat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfhuowxejjdmzmnwiiiiabstunszpoih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivolysrwhpuybvzdtowbsywcvulpuics","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jovjddxjaselpttextmeloesipmglmpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zfcurzmfqezzebjbdybwkvvgfebptfqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fatbmodkvohpeevflsojalktntaodvrb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aabrctxcertvbasqzryzqhpetzpuwnsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wrztnchvudvagvjveipsjnmjlvcvvwdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oowiclcbfbqftgqpecqmwrzztgiwwjmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obkuhbkkntocvxcapumarwrbzwdwsljz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjfxtjnmqklagficrizecscocnefydzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtqwgwptplxbryzngvbovtftsqkbbntc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocitnwzcgjucqjjczxoruoshkpdubydc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxxjeywembzyvtoxllzjlgporqitvogf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cdsrgoobdtqizmeqfdxszjkgereutpqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eunbfuawnjoqvghlojosztiiohxneunv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oyaxzgybfdiwathziqsjmtzfijcnqxni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"piwusynabdmcwjvpuergeklaphvwnvwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ukvcjjqfgfizfqdzdmbgxtzhhnnebylg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sllkbigxcsuyppnaiiyblsujxdevjaau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzgfhnmaknlycqwkfmpnybhbmqjuixyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iepdhlekdbvsrxhkelifkwstrtiekhiy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gaslgbsmcnnekohqnflwnrcvebcwirlr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eeayvqhpkujjhzwzwfnnxbjdmzbftftx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oxsztblquccvmgiqkkgceoztdwqytjav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmglrllgbgpahinmnhwmhknfvoybegxm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rmcwzkhfbrgpczacyslsgrrmfozhwzev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekzbxnslanxzejvojzeaomevcqspnhtc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzbimekncwtbdnwxzcqgnvdpqbwqmalg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awatssclxdschmjmtwdpiktwgfyyjrbm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axzuzeigugwuevxqolbueorrrzeyufzy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"okolctosffzihacmbvywizatwvuyszal","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rtouvmpbukjjbjxgvniyoaxwqbckeczw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nypwnoqzscbxljwbnkriqywbjqmzachb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cewkmtokgjzwyvcregnnezhitworjniq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzplurgvkxbpijragkzqtqfpolpbbmxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjgkhpzluqallextxsqzedrgffvvrvzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjujcdxgdwrsaqlphsgxezblxjumicun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxlzxcutkfyhermlvlulsoxbblxkdewm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dzyleuuwdwuklfpoouqjpmbytujfdrae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axeeeekfvznpucxhypdavlqseatkozgq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fyiyezwssqkmzcpmdqugeimuiqqqpfyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehajdtztmezdcmzwhadpjvmftysbdqab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gebezzbbupanmbqvddjsbjjjwduzejsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfgynwcokqlfijnctruqhgtddnwmdhae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkmqnmvsbgaewjcjlcgwpoxyrhtwqhuw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehnkclesartdpdheatlakfnmfadrujcz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gwtezqvjfhijsjjmjajntxrtorparapd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ahnypptfezwqzatrhpzxaltbesczszyl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ssczprkydxykqrsbpadbrxqzkdhjcthp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdfwskgldeaptwcvatjyyysptuwdomvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsnioxtgigbxhvdvsiuwlvtmalckeibu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"alcevksgqlhgkhqqelyjzijxcpogyova","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edbkwkycagozrvemhlfyrpxkfozwngxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pyfewffgswzrcgkclyahxhfmtuvrhtys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xusuitjmyxqmfqgldusvnqyskbxkmcsi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbyojloahyxmshlagnjetlwcknpzjsgo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uaumxuxbnbvjsulwgvhlgtqxshwxsnfy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"amguzjmzslukogpidatmneduutgbfabh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ucartsapmfkqxjkclavgyvgkodwweizh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xpyyysehszsjactseriweqlqwxkvkirm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctyoerhonmtjhybknzmhpjlyqjlwbscw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hntnxyeoqenbidwqeapaufrwomisriod","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lukkxkbghvtbzhiyeojxyiutqgykklvs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"weqspyrlmewmoujjqoynemmpbxzjmqwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fajjrcrzcjecqhfgblfeawhxbdvtzchh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhusnrrjrykszplbkzhjjchmgjwqdjgc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rivxpyymlsrjqqikemasygdoepbpczly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbaglwnvczdeucuuisofgqvortomqiuz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jrliiouokcrkwcuzwuogkigvcyvozjcr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ztjfxkgszgiqrtazitfwrikzwlfbsfmr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aehmskdahmyuuwiwrvvnofrmewpftwzj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knhcafhyqjvxyasyvviscgyvuhitviyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhkcloftelrfxircftyxddqktaobinem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uifnurgbhxroyeyjsxbgfdobkqoxesnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unrffdzdosqzfltxkjmkgtsezcclasbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhnykbddbgbaiikmlcgaoeyugwkodbwc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmurbjgsckkkhysuwqrsruclwittwauv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqyxyxwxxpndzacsvlnhhaipqukjqbnr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vnajzwkdcleqvbsbherzamnenvbdekbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydkvhwusigvljamutojzilwsecfoztko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmeeubjbmkztclxbfcnlhhocwfuagikv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmvilzzthzbqsdilxiemlafyjhjeefpc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwzqliwlbvycasewmnjrkjkkwsgcyayf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmnuybhyksbjdjoujgtvjcdgvkyfnwgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uowueqqiwfspouspvbbokcvlvlhqxqwr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fdkmpilzeoybzvuzvgskieiqzuidqgzi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjryrmwaxfjdcbchwbpyoncfoxseflpy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjypulguhecrfjzvimfabxhqegdakdbo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywgkqxuapsfbaxkiiwtfnjqsxdylimxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umsolajdmxjonxxnrwhaoudwsciblujr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jhqmkrhtiosyqjcnkxzsgxhcrehzsdca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ythviazuhoomzzlmamtcjznjmvczeamp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bsafpxjzwzjwsmkkwfpsujttyevbdzck","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qulnoodqmxlvsrproyjkxyrlqrvotiqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ceerytjsrsidgxwwpmluanpszilbmwkf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcojftjkxhdphyjoaonfogblvrnyvgxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668826,"databaseName":"models_schema","ddl":"CREATE TABLE `jwtirnhbsptqymlhedjwtfeddytgzipg` (\n `atgxbjcvepakurprykfqphzttwkcvslq` int NOT NULL,\n `puddilzhyzcrtdpboyqfixaesqccgdyt` int DEFAULT NULL,\n `dnbdqozjwaxdqrkpuzlbhexeljbthgqx` int DEFAULT NULL,\n `muhfgevnwssdvpgagxexvsztslgwadud` int DEFAULT NULL,\n `ypmdnwhkupntoryesjfrgnrgpaqaorjw` int DEFAULT NULL,\n `eotsboodgjbmuouazwqhqiywtuydxdxl` int DEFAULT NULL,\n `rijhnhgndgwjvnmhwodhgmsplexqtriw` int DEFAULT NULL,\n `qnnyxdkflfssyecakbmoyfxdhxphsmex` int DEFAULT NULL,\n `vutnebhonkimbluhreammztlysnvynhb` int DEFAULT NULL,\n `umoxagguleuluhmeaijbmfeheabgklwq` int DEFAULT NULL,\n `ctvghpixxjycpbhhwumnsbmijeqtmgnf` int DEFAULT NULL,\n `efjpbpsptbotbyhkvmhuhgyrbeivcsnu` int DEFAULT NULL,\n `mimsylvxbgtrlkqlisnuudviuiftrhsh` int DEFAULT NULL,\n `lbnrnudynejecvzjjpomkvdfdsrbyefo` int DEFAULT NULL,\n `mpeisbdxolgaaxxzbgfsywjuussklorj` int DEFAULT NULL,\n `edqtxabvqgmlsuxfguuomuvzdfgptbsv` int DEFAULT NULL,\n `cvrsszsnoczbqockhacpltnmtavywzot` int DEFAULT NULL,\n `ghprqrhjarlzxtillnjbwweasoxaujia` int DEFAULT NULL,\n `bqqtuyywiapydzrdlsbuchzojlirgwmk` int DEFAULT NULL,\n `rlgfrpjocrikaqqrpfqfhlkiwgbspznt` int DEFAULT NULL,\n `sidwluhvwgozriofnfpkdnefqztcbbfj` int DEFAULT NULL,\n `brohbcecgimapjpfqzxawngbjpqitfua` int DEFAULT NULL,\n `idyuzlmgyzkofbawwiqqvivlgpillkxx` int DEFAULT NULL,\n `vdyafivspeegnckoqijkffccvbaaikhq` int DEFAULT NULL,\n `nenxohgbltqbnlmzhuqrjosaqvrxyqfz` int DEFAULT NULL,\n `fcaouxkgemxoadgcywlnytxmipukfmji` int DEFAULT NULL,\n `jmedetyzjlpcvtrklounlzsxicwumtft` int DEFAULT NULL,\n `bmyllciaknmyuqziunolwcfgzbctuybp` int DEFAULT NULL,\n `bwdxhifkucleoyhjvjlsorufkskrlfel` int DEFAULT NULL,\n `cpkiwejhjxjzetyctrbohjyoorqwwzhw` int DEFAULT NULL,\n `srmsgrfeifnvrgeqkmiyzxoypyibwgtt` int DEFAULT NULL,\n `kvzgeyafghxjspcmrsamwnbljwoetgrm` int DEFAULT NULL,\n `sdqprcfatbzvrpkstulmtobhdtprkmam` int DEFAULT NULL,\n `kexttpungojjgkpeszgrbwwadrbadwsk` int DEFAULT NULL,\n `rfetkodovqmefqszlecghnhyelsowunm` int DEFAULT NULL,\n `gvnsbtzprrgzcznzoazdwoqcaigbjarr` int DEFAULT NULL,\n `icqjvpxxboiszntagyrrlsdrcpcawlyc` int DEFAULT NULL,\n `vbeqnutkryuvvnekrzfbvughcdfjwsgi` int DEFAULT NULL,\n `qglpbysmfjyfrghoukbyvoddydciwaex` int DEFAULT NULL,\n `joraqfmccbcxebuwvxvptxfdqsxulvxk` int DEFAULT NULL,\n `rappcjlaqrgagyafqnzovalqvpevtfme` int DEFAULT NULL,\n `chystuccluflulpmbydtkbfnjgkymfql` int DEFAULT NULL,\n `hshqrdgslbeqvodzyfqqjwuxppmzzhhs` int DEFAULT NULL,\n `ucnzadytjvkfuxcudbicsqvzlogfwsib` int DEFAULT NULL,\n `ggeqdfhpihlrqdqmwjuocyamkupupxpo` int DEFAULT NULL,\n `pitdslvnfjugwnxtxukjwjwqmsvatazh` int DEFAULT NULL,\n `ldjsuldbkqurreqhxerukvjhjepucoal` int DEFAULT NULL,\n `ykbfwtksbupdgqylstfxxrefxfsifvjg` int DEFAULT NULL,\n `svhgjfxstkcuhctuiucvhjtmvikpscci` int DEFAULT NULL,\n `jjykqepjoncgttkmyojqyhzakgeulwba` int DEFAULT NULL,\n `mmjfkaawgjoevpbtxhltgomnjrpylawi` int DEFAULT NULL,\n `oyeeveppqygiwcsbdnsmpmckooqfaonf` int DEFAULT NULL,\n `atntikkepjabnnzngadwrfhcrzclcxpv` int DEFAULT NULL,\n `itcktugprzkwvsbnaefuhrwjmgufzgbo` int DEFAULT NULL,\n `taumrlcvpyfrqtgjfniixufxjfbuhyif` int DEFAULT NULL,\n `jvlejcsdqgoijbuezgwvyrmtnapbezox` int DEFAULT NULL,\n `fgmpzqmkynapfqlwieifbjczjgmmxqkn` int DEFAULT NULL,\n `xtscyrzbqlurgfhnbvamaccqvjjqnlsl` int DEFAULT NULL,\n `kxuwqnsppmpzozeceuryyucnvzsjfzeg` int DEFAULT NULL,\n `zvxkrfmhpheptcqewmzzzgfdmgatejoj` int DEFAULT NULL,\n `junvjtlzslnhyoifglknqionzwabrfxc` int DEFAULT NULL,\n `vqjozstljsxjygwzdywrfnsehvstxzwy` int DEFAULT NULL,\n `xluxrmylxihebxcvrugbzftnfgxpwdvd` int DEFAULT NULL,\n `zwusvlzygwnihogdarqzxzipdcuzsjxx` int DEFAULT NULL,\n `vsxoxfcujiysiffgedwptpfkellpmazy` int DEFAULT NULL,\n `mapizremwwnpekbofbfwijkkjpuowboj` int DEFAULT NULL,\n `fltgsscssnpzinpmvrkfndyahvoadmqd` int DEFAULT NULL,\n `amlkstwwihiviegqxvbvtrbqhlbrajjb` int DEFAULT NULL,\n `vglyjzcushniqawvpvonzwmgrerkgeap` int DEFAULT NULL,\n `gliefyxlajlpujacjsntdgiognpxpfan` int DEFAULT NULL,\n `cjmvbrrpovzmodagnuisorlruczaizmu` int DEFAULT NULL,\n `hutgtdilktjuicdkokhpfpulrgjgofyf` int DEFAULT NULL,\n `fqqbsquqhlzymkyzwgagrgilxdzwktla` int DEFAULT NULL,\n `byyndjzmpiasbsaudcvpyfahpsnvymcc` int DEFAULT NULL,\n `oyovkmtwvelvmzbwvtodtignilpxklpf` int DEFAULT NULL,\n `nfqddvsdblnroqwtahrnwakttchiremk` int DEFAULT NULL,\n `exuofvxvwxioijcemmmdhostpmtticlw` int DEFAULT NULL,\n `aqqqxqqgrgzufxdahvtaqgjbtrnkjqpt` int DEFAULT NULL,\n `rzxcqohjsyfuyjsjyutthuxhccsblcyf` int DEFAULT NULL,\n `fwecxoxlilwqrekiqdrlteldoouhvcoi` int DEFAULT NULL,\n `ayndbxpzjgyrvhempesdpzxqrfnoekdp` int DEFAULT NULL,\n `wqdbyqzkfifetfqjvegvfjmrpppepwbp` int DEFAULT NULL,\n `nfsazkfelfgwcuyrrdajlizhokposasf` int DEFAULT NULL,\n `hqaelbzoycrrremmrehewuhubrjcjqlh` int DEFAULT NULL,\n `ijdyqefupjqcwfyjpcwrwswkdlbxrwit` int DEFAULT NULL,\n `nrcogvtydrffopyhfhqarvmcgqjdfwlb` int DEFAULT NULL,\n `uysxouhiduwsuorzgxovdbycxomvcdyv` int DEFAULT NULL,\n `kisinhniwvifgknxyouwexkkiychearl` int DEFAULT NULL,\n `xvmvjxgwizutkvndfnvypgtybisireip` int DEFAULT NULL,\n `smrluthrwmnfgwabkqhaxytnsexsehmb` int DEFAULT NULL,\n `cggdweojakcoiykjjvklzwdjsazuzbab` int DEFAULT NULL,\n `qdxrtgnswcmlsgfeltzthqvwttahtlre` int DEFAULT NULL,\n `wiszkwwrqwwmzfjgiyggnzfnarhhwyoz` int DEFAULT NULL,\n `mizufjgkhitiudhutrozshbtiimmooya` int DEFAULT NULL,\n `hxrzcamxyjmmveisftzofvdinnddxyzm` int DEFAULT NULL,\n `snjqzifessogkggbwqkbjakfgrvfejtl` int DEFAULT NULL,\n `rdlijziaovgkvjrcpprlquajuamzdzjf` int DEFAULT NULL,\n `moqglsmicbitipuxyjocnxmzcsjutbnh` int DEFAULT NULL,\n `vcnlynxavoqrupesaayzqkuuybjztxbf` int DEFAULT NULL,\n `bivwxlhtxvhdpoflttonhfutmkutxtdh` int DEFAULT NULL,\n PRIMARY KEY (`atgxbjcvepakurprykfqphzttwkcvslq`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"jwtirnhbsptqymlhedjwtfeddytgzipg\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["atgxbjcvepakurprykfqphzttwkcvslq"],"columns":[{"name":"atgxbjcvepakurprykfqphzttwkcvslq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"puddilzhyzcrtdpboyqfixaesqccgdyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dnbdqozjwaxdqrkpuzlbhexeljbthgqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"muhfgevnwssdvpgagxexvsztslgwadud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypmdnwhkupntoryesjfrgnrgpaqaorjw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eotsboodgjbmuouazwqhqiywtuydxdxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rijhnhgndgwjvnmhwodhgmsplexqtriw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qnnyxdkflfssyecakbmoyfxdhxphsmex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vutnebhonkimbluhreammztlysnvynhb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umoxagguleuluhmeaijbmfeheabgklwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctvghpixxjycpbhhwumnsbmijeqtmgnf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"efjpbpsptbotbyhkvmhuhgyrbeivcsnu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mimsylvxbgtrlkqlisnuudviuiftrhsh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lbnrnudynejecvzjjpomkvdfdsrbyefo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpeisbdxolgaaxxzbgfsywjuussklorj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edqtxabvqgmlsuxfguuomuvzdfgptbsv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvrsszsnoczbqockhacpltnmtavywzot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghprqrhjarlzxtillnjbwweasoxaujia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqqtuyywiapydzrdlsbuchzojlirgwmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlgfrpjocrikaqqrpfqfhlkiwgbspznt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sidwluhvwgozriofnfpkdnefqztcbbfj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"brohbcecgimapjpfqzxawngbjpqitfua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idyuzlmgyzkofbawwiqqvivlgpillkxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdyafivspeegnckoqijkffccvbaaikhq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nenxohgbltqbnlmzhuqrjosaqvrxyqfz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcaouxkgemxoadgcywlnytxmipukfmji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmedetyzjlpcvtrklounlzsxicwumtft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bmyllciaknmyuqziunolwcfgzbctuybp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bwdxhifkucleoyhjvjlsorufkskrlfel","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cpkiwejhjxjzetyctrbohjyoorqwwzhw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"srmsgrfeifnvrgeqkmiyzxoypyibwgtt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvzgeyafghxjspcmrsamwnbljwoetgrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdqprcfatbzvrpkstulmtobhdtprkmam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kexttpungojjgkpeszgrbwwadrbadwsk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfetkodovqmefqszlecghnhyelsowunm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gvnsbtzprrgzcznzoazdwoqcaigbjarr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icqjvpxxboiszntagyrrlsdrcpcawlyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbeqnutkryuvvnekrzfbvughcdfjwsgi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qglpbysmfjyfrghoukbyvoddydciwaex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"joraqfmccbcxebuwvxvptxfdqsxulvxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rappcjlaqrgagyafqnzovalqvpevtfme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"chystuccluflulpmbydtkbfnjgkymfql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hshqrdgslbeqvodzyfqqjwuxppmzzhhs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ucnzadytjvkfuxcudbicsqvzlogfwsib","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggeqdfhpihlrqdqmwjuocyamkupupxpo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pitdslvnfjugwnxtxukjwjwqmsvatazh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ldjsuldbkqurreqhxerukvjhjepucoal","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykbfwtksbupdgqylstfxxrefxfsifvjg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"svhgjfxstkcuhctuiucvhjtmvikpscci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjykqepjoncgttkmyojqyhzakgeulwba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmjfkaawgjoevpbtxhltgomnjrpylawi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oyeeveppqygiwcsbdnsmpmckooqfaonf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atntikkepjabnnzngadwrfhcrzclcxpv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itcktugprzkwvsbnaefuhrwjmgufzgbo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"taumrlcvpyfrqtgjfniixufxjfbuhyif","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvlejcsdqgoijbuezgwvyrmtnapbezox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fgmpzqmkynapfqlwieifbjczjgmmxqkn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xtscyrzbqlurgfhnbvamaccqvjjqnlsl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxuwqnsppmpzozeceuryyucnvzsjfzeg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvxkrfmhpheptcqewmzzzgfdmgatejoj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"junvjtlzslnhyoifglknqionzwabrfxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqjozstljsxjygwzdywrfnsehvstxzwy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xluxrmylxihebxcvrugbzftnfgxpwdvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zwusvlzygwnihogdarqzxzipdcuzsjxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsxoxfcujiysiffgedwptpfkellpmazy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mapizremwwnpekbofbfwijkkjpuowboj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fltgsscssnpzinpmvrkfndyahvoadmqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"amlkstwwihiviegqxvbvtrbqhlbrajjb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vglyjzcushniqawvpvonzwmgrerkgeap","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gliefyxlajlpujacjsntdgiognpxpfan","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cjmvbrrpovzmodagnuisorlruczaizmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hutgtdilktjuicdkokhpfpulrgjgofyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqqbsquqhlzymkyzwgagrgilxdzwktla","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"byyndjzmpiasbsaudcvpyfahpsnvymcc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oyovkmtwvelvmzbwvtodtignilpxklpf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfqddvsdblnroqwtahrnwakttchiremk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exuofvxvwxioijcemmmdhostpmtticlw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqqqxqqgrgzufxdahvtaqgjbtrnkjqpt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzxcqohjsyfuyjsjyutthuxhccsblcyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwecxoxlilwqrekiqdrlteldoouhvcoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ayndbxpzjgyrvhempesdpzxqrfnoekdp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqdbyqzkfifetfqjvegvfjmrpppepwbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfsazkfelfgwcuyrrdajlizhokposasf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqaelbzoycrrremmrehewuhubrjcjqlh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijdyqefupjqcwfyjpcwrwswkdlbxrwit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nrcogvtydrffopyhfhqarvmcgqjdfwlb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uysxouhiduwsuorzgxovdbycxomvcdyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kisinhniwvifgknxyouwexkkiychearl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvmvjxgwizutkvndfnvypgtybisireip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smrluthrwmnfgwabkqhaxytnsexsehmb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cggdweojakcoiykjjvklzwdjsazuzbab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdxrtgnswcmlsgfeltzthqvwttahtlre","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wiszkwwrqwwmzfjgiyggnzfnarhhwyoz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mizufjgkhitiudhutrozshbtiimmooya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hxrzcamxyjmmveisftzofvdinnddxyzm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"snjqzifessogkggbwqkbjakfgrvfejtl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdlijziaovgkvjrcpprlquajuamzdzjf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"moqglsmicbitipuxyjocnxmzcsjutbnh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vcnlynxavoqrupesaayzqkuuybjztxbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bivwxlhtxvhdpoflttonhfutmkutxtdh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668862,"databaseName":"models_schema","ddl":"CREATE TABLE `jxtszwleobqkzaxtmowwchvvkrzyootc` (\n `efmgqhyeivzukzwluhosnhbdvskqacwl` int NOT NULL,\n `hxsxnvdtgwpehxbzcfssccqbwjpggdpk` int DEFAULT NULL,\n `mrapsyzbcqrfkgobetantcdtfjssypji` int DEFAULT NULL,\n `bomkkukholybohglgkvvqbuuytlrjzhl` int DEFAULT NULL,\n `kfrysrvutvxatpmpwwouichlzlfwvqhn` int DEFAULT NULL,\n `ysngmeyxnfqtsuziqybgoaqesuyuphra` int DEFAULT NULL,\n `liptvuucksmrkreerhzciqydibyzhccl` int DEFAULT NULL,\n `bejtxyuzvxotiddpuabchjlubcgapueo` int DEFAULT NULL,\n `vrimbihaayrwpcwdrmnrtveyzeoiaufv` int DEFAULT NULL,\n `zqhttmkurptfnbojwjzrxjyqmnfggllj` int DEFAULT NULL,\n `weupfiuiqpgplktsjyvseuomhtcjswdf` int DEFAULT NULL,\n `btiepvrmgtziunyhnubkrqbasqbwpgyw` int DEFAULT NULL,\n `ubqsfdgohrxlypyrmebwntluqryrjbdd` int DEFAULT NULL,\n `tiximrahkheafjrbuzppofktpjhbekgy` int DEFAULT NULL,\n `sjqorinxycjxnhugzliullnewkfaybqj` int DEFAULT NULL,\n `piwtjqwyudgneegneewqlhkdtqxsykss` int DEFAULT NULL,\n `pclfclrrpnouabmjfywvtnxpsgewdbcp` int DEFAULT NULL,\n `eipuzosgqrszajgiyiqplufvjlfljbdm` int DEFAULT NULL,\n `ybipvdcmnaulpxscwpomqsoaoenzvfqu` int DEFAULT NULL,\n `jelysxihawrbwpsjqrosmhyqtvjluqri` int DEFAULT NULL,\n `funiplxcotgouwbfxqdqxlxgsxctuazw` int DEFAULT NULL,\n `ixqcfnvfndnnnrzkyetiqfvtxwjsnohi` int DEFAULT NULL,\n `fqqhtrcnjzrwtmqrtjlortylterajecm` int DEFAULT NULL,\n `xmqycjupccoyqpyvkbkabahfkroqmmqt` int DEFAULT NULL,\n `dhatverstpscqrypjqobazwakxboumcv` int DEFAULT NULL,\n `khrdymvzszrfblueokwyvttlqpgyyphv` int DEFAULT NULL,\n `fklowuzpdrdszoxfvagzdkadjqtgbioj` int DEFAULT NULL,\n `pzxkxoycdkfwwcwmiqjykibqzpbfntbo` int DEFAULT NULL,\n `itjyttgxvevzgmlmnbfotprbswlnfoez` int DEFAULT NULL,\n `daxqebzltkaedrptajatkxwowkubeohq` int DEFAULT NULL,\n `hwaqwzbmbxnvtxsprcjpwggxvmjnepmz` int DEFAULT NULL,\n `qeedrqwbpggagyyndtujvcpomiyhhbbp` int DEFAULT NULL,\n `jjnmabmcyniprwrqjdqgqfytuzvypgdp` int DEFAULT NULL,\n `bqzfqmvrggiayfxwkpjdhtolytzbbnnx` int DEFAULT NULL,\n `ckwkhqocsdtzuwgyvkzutekeaeffikai` int DEFAULT NULL,\n `ivqlecfetirgfazfloxfocdgvnilfzlm` int DEFAULT NULL,\n `vrccxqinsrdgihjokixtoptxwnxydpyo` int DEFAULT NULL,\n `bbjmkdpyknrtqekslmpgtlsrrkowwpaf` int DEFAULT NULL,\n `kbcnjmxsroushuqrpcbmmgkzegkxyety` int DEFAULT NULL,\n `fmbuwltvdkwexnentrnfrzophluapsxu` int DEFAULT NULL,\n `hpqygdjbydkzfzewzsaxlrgmgunudsdl` int DEFAULT NULL,\n `kvmsatawfikhfgvshwbpodkgcxfjguoh` int DEFAULT NULL,\n `cydqjwyibaandmgqbtzusbakiexiubug` int DEFAULT NULL,\n `myuylpvvyonrzvsltwibtfplbcavzres` int DEFAULT NULL,\n `eyhxfkexlwgrpdufxkcdgamjkgfhhtcv` int DEFAULT NULL,\n `wbkqhxigpnpnyarwdgneqednuujmgjfj` int DEFAULT NULL,\n `nixffivpaldghyxagtpmnrykcbtszhfh` int DEFAULT NULL,\n `gxxvbylbutkiocrylecvyzkigbjtxrjn` int DEFAULT NULL,\n `ciltvlwyhgbgvrjebaraqyhdwvxeuqgp` int DEFAULT NULL,\n `sukyqrrpcqikhclxrkhbizfrqxruusoc` int DEFAULT NULL,\n `ltrolmckirmxsuucjzukcozhryxbixra` int DEFAULT NULL,\n `rutnawtihtqaimctirvibpwyrrpqzmxa` int DEFAULT NULL,\n `lzfvjoxsptedbinthywstanpivdddjsd` int DEFAULT NULL,\n `zknykrekxayzaogipaoobwcfqrcrgjss` int DEFAULT NULL,\n `amcmepbhyqztalsvkjxoaufvoewfbvno` int DEFAULT NULL,\n `logjxdnththbmeeriiggqquatzmagoru` int DEFAULT NULL,\n `olmxswbolqzjhqjzkqnsfsqhmiqhyeyu` int DEFAULT NULL,\n `zrbbrelcwrkuxgbldotugbjmpggghvda` int DEFAULT NULL,\n `rfmmjxvayctgbcivbqhpiirneyblsrzy` int DEFAULT NULL,\n `yvnwiftyhqsrhlspafamtsrumfdxjjev` int DEFAULT NULL,\n `uriljfmvmmihhihbeiiwtqstzwxosrxo` int DEFAULT NULL,\n `akrhkwhykejocznfjosvlscntinyqcoh` int DEFAULT NULL,\n `cqrzutyolymnvypslknwqhbfgxvfzwey` int DEFAULT NULL,\n `knpojkvfjdakqdjsauddsmqqdolfnilf` int DEFAULT NULL,\n `hmubkejcfxkmdwbsbaqbhdvctdgzedct` int DEFAULT NULL,\n `lygnkzgpdyleyjbjukbgjcpalphiuhgk` int DEFAULT NULL,\n `kyypdvvejfoietqrgiswnqroxuxrzxhe` int DEFAULT NULL,\n `kfaggnluavjwktaxruknpbuizyogqqkz` int DEFAULT NULL,\n `qosxrsarvrlolfwrzwpwyqwyibyzzbwn` int DEFAULT NULL,\n `blcxhtezacsotjlduuwgzaoivgfxznxj` int DEFAULT NULL,\n `yxthnkqglqddqaudncbewwbjurgmiguz` int DEFAULT NULL,\n `cukqbttcckoduxpnvufxcvggcigxqzau` int DEFAULT NULL,\n `ggoaakhqtyvtaopvhdcvxdmiicykynhe` int DEFAULT NULL,\n `irjmvthklvithbllflswmoiaqbwkofji` int DEFAULT NULL,\n `dlxbmycehwszywrsldkuqjvzamzbhyum` int DEFAULT NULL,\n `crypccrixuetoyyvpjwcfabtadeitpuk` int DEFAULT NULL,\n `dzqwaotogpyitsfgydrwzkygnhoeqhqg` int DEFAULT NULL,\n `hbztluxhhpayyfeepfpclcetkhjctjmj` int DEFAULT NULL,\n `gpmwgbvojysrgnrjejnxiogokzspyetj` int DEFAULT NULL,\n `qailkojpuxriqikyledpzaqpmhuemhur` int DEFAULT NULL,\n `moqmtkoxqfyuvpcegsceaazhdwydpzsf` int DEFAULT NULL,\n `lxqomjdrbdpdwwprvwfrprdaspiistkc` int DEFAULT NULL,\n `xcmnjfweyqkvbqksljkoskpvbmpczprs` int DEFAULT NULL,\n `otgrqdnyarzqqxtovamamsapqoajxghm` int DEFAULT NULL,\n `xfimwrvtexmcbgvrfaoyurvlpufqoqsc` int DEFAULT NULL,\n `zbcxukrksuyveuiucebhevqidwuxthon` int DEFAULT NULL,\n `hgoziggcodajglmqretrqrgoiotfadch` int DEFAULT NULL,\n `pzwstlllsfyluepazxhbxlubdlgsjkgg` int DEFAULT NULL,\n `tqnwpywyuwlyeudyqxwferhytfklhezv` int DEFAULT NULL,\n `cndjbxdqpinbptsxnybppvdjbpiqdhxx` int DEFAULT NULL,\n `mzsehaifwrkaniiesbsydjwrcaxxosdw` int DEFAULT NULL,\n `ejgtqjmqdfjauzfyofjqrnvkwlotyjjw` int DEFAULT NULL,\n `rkehuryymnqszmsncvsvxpslxawecljt` int DEFAULT NULL,\n `laeafxkimajkzriaeptqyijzxeiejygw` int DEFAULT NULL,\n `qlfshvycgihdmynsswxpayjsoboyhbwn` int DEFAULT NULL,\n `piaytifajfoswovhgndjoldwzbbrrjjj` int DEFAULT NULL,\n `lafvjprszidasstltcazeibycqzvxnui` int DEFAULT NULL,\n `myxhhmlyilaaooazckcbdphjhfqgtwxq` int DEFAULT NULL,\n `pweodshlrcngiydqnclbjpwviynpducu` int DEFAULT NULL,\n `dorpojhmkfpodglpvqaoirshdlhqczzm` int DEFAULT NULL,\n PRIMARY KEY (`efmgqhyeivzukzwluhosnhbdvskqacwl`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"jxtszwleobqkzaxtmowwchvvkrzyootc\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["efmgqhyeivzukzwluhosnhbdvskqacwl"],"columns":[{"name":"efmgqhyeivzukzwluhosnhbdvskqacwl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"hxsxnvdtgwpehxbzcfssccqbwjpggdpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrapsyzbcqrfkgobetantcdtfjssypji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bomkkukholybohglgkvvqbuuytlrjzhl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfrysrvutvxatpmpwwouichlzlfwvqhn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ysngmeyxnfqtsuziqybgoaqesuyuphra","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"liptvuucksmrkreerhzciqydibyzhccl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bejtxyuzvxotiddpuabchjlubcgapueo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vrimbihaayrwpcwdrmnrtveyzeoiaufv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqhttmkurptfnbojwjzrxjyqmnfggllj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"weupfiuiqpgplktsjyvseuomhtcjswdf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"btiepvrmgtziunyhnubkrqbasqbwpgyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubqsfdgohrxlypyrmebwntluqryrjbdd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tiximrahkheafjrbuzppofktpjhbekgy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjqorinxycjxnhugzliullnewkfaybqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"piwtjqwyudgneegneewqlhkdtqxsykss","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pclfclrrpnouabmjfywvtnxpsgewdbcp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eipuzosgqrszajgiyiqplufvjlfljbdm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ybipvdcmnaulpxscwpomqsoaoenzvfqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jelysxihawrbwpsjqrosmhyqtvjluqri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"funiplxcotgouwbfxqdqxlxgsxctuazw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixqcfnvfndnnnrzkyetiqfvtxwjsnohi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqqhtrcnjzrwtmqrtjlortylterajecm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xmqycjupccoyqpyvkbkabahfkroqmmqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhatverstpscqrypjqobazwakxboumcv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"khrdymvzszrfblueokwyvttlqpgyyphv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fklowuzpdrdszoxfvagzdkadjqtgbioj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pzxkxoycdkfwwcwmiqjykibqzpbfntbo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itjyttgxvevzgmlmnbfotprbswlnfoez","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"daxqebzltkaedrptajatkxwowkubeohq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwaqwzbmbxnvtxsprcjpwggxvmjnepmz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qeedrqwbpggagyyndtujvcpomiyhhbbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjnmabmcyniprwrqjdqgqfytuzvypgdp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqzfqmvrggiayfxwkpjdhtolytzbbnnx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ckwkhqocsdtzuwgyvkzutekeaeffikai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivqlecfetirgfazfloxfocdgvnilfzlm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vrccxqinsrdgihjokixtoptxwnxydpyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbjmkdpyknrtqekslmpgtlsrrkowwpaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kbcnjmxsroushuqrpcbmmgkzegkxyety","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmbuwltvdkwexnentrnfrzophluapsxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hpqygdjbydkzfzewzsaxlrgmgunudsdl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvmsatawfikhfgvshwbpodkgcxfjguoh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cydqjwyibaandmgqbtzusbakiexiubug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"myuylpvvyonrzvsltwibtfplbcavzres","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eyhxfkexlwgrpdufxkcdgamjkgfhhtcv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbkqhxigpnpnyarwdgneqednuujmgjfj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nixffivpaldghyxagtpmnrykcbtszhfh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gxxvbylbutkiocrylecvyzkigbjtxrjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ciltvlwyhgbgvrjebaraqyhdwvxeuqgp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sukyqrrpcqikhclxrkhbizfrqxruusoc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ltrolmckirmxsuucjzukcozhryxbixra","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rutnawtihtqaimctirvibpwyrrpqzmxa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lzfvjoxsptedbinthywstanpivdddjsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zknykrekxayzaogipaoobwcfqrcrgjss","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"amcmepbhyqztalsvkjxoaufvoewfbvno","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"logjxdnththbmeeriiggqquatzmagoru","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"olmxswbolqzjhqjzkqnsfsqhmiqhyeyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zrbbrelcwrkuxgbldotugbjmpggghvda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfmmjxvayctgbcivbqhpiirneyblsrzy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yvnwiftyhqsrhlspafamtsrumfdxjjev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uriljfmvmmihhihbeiiwtqstzwxosrxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akrhkwhykejocznfjosvlscntinyqcoh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqrzutyolymnvypslknwqhbfgxvfzwey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knpojkvfjdakqdjsauddsmqqdolfnilf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmubkejcfxkmdwbsbaqbhdvctdgzedct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lygnkzgpdyleyjbjukbgjcpalphiuhgk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kyypdvvejfoietqrgiswnqroxuxrzxhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfaggnluavjwktaxruknpbuizyogqqkz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qosxrsarvrlolfwrzwpwyqwyibyzzbwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blcxhtezacsotjlduuwgzaoivgfxznxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxthnkqglqddqaudncbewwbjurgmiguz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cukqbttcckoduxpnvufxcvggcigxqzau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggoaakhqtyvtaopvhdcvxdmiicykynhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"irjmvthklvithbllflswmoiaqbwkofji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dlxbmycehwszywrsldkuqjvzamzbhyum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"crypccrixuetoyyvpjwcfabtadeitpuk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dzqwaotogpyitsfgydrwzkygnhoeqhqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbztluxhhpayyfeepfpclcetkhjctjmj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gpmwgbvojysrgnrjejnxiogokzspyetj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qailkojpuxriqikyledpzaqpmhuemhur","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"moqmtkoxqfyuvpcegsceaazhdwydpzsf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxqomjdrbdpdwwprvwfrprdaspiistkc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xcmnjfweyqkvbqksljkoskpvbmpczprs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otgrqdnyarzqqxtovamamsapqoajxghm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xfimwrvtexmcbgvrfaoyurvlpufqoqsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbcxukrksuyveuiucebhevqidwuxthon","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hgoziggcodajglmqretrqrgoiotfadch","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pzwstlllsfyluepazxhbxlubdlgsjkgg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqnwpywyuwlyeudyqxwferhytfklhezv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cndjbxdqpinbptsxnybppvdjbpiqdhxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzsehaifwrkaniiesbsydjwrcaxxosdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejgtqjmqdfjauzfyofjqrnvkwlotyjjw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkehuryymnqszmsncvsvxpslxawecljt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"laeafxkimajkzriaeptqyijzxeiejygw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qlfshvycgihdmynsswxpayjsoboyhbwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"piaytifajfoswovhgndjoldwzbbrrjjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lafvjprszidasstltcazeibycqzvxnui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"myxhhmlyilaaooazckcbdphjhfqgtwxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pweodshlrcngiydqnclbjpwviynpducu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dorpojhmkfpodglpvqaoirshdlhqczzm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668899,"databaseName":"models_schema","ddl":"CREATE TABLE `jzkrhqtehgofuwbzfrjzkrenxfjfbkjc` (\n `sulhojifeflwkrbluskomlouorxnulgc` int NOT NULL,\n `qjutdldlelmtgferovhbhxrgqzzxpyiq` int DEFAULT NULL,\n `dsiyijkgdgsibqhiycwemqqopofktzxu` int DEFAULT NULL,\n `gsnrpcfkvsvrrnmkntqhaqihelsztyfc` int DEFAULT NULL,\n `ibcqycybfoqprqrtukxuvfxvskgpllen` int DEFAULT NULL,\n `eeidrezcdlyrldtssjglvxlftbzyidja` int DEFAULT NULL,\n `mawhkjtnnxhvcdmfuzathdopelrnfswl` int DEFAULT NULL,\n `hrmgopagvyjcwqckjgbtrgsfqxnsdxyt` int DEFAULT NULL,\n `qjsoxvdiicpxbsjcoqcnnoskylyyubxv` int DEFAULT NULL,\n `xbuesasprlthejrdmojnpyjozpyrdklo` int DEFAULT NULL,\n `tczkfvhamcaugtepllgmupqwgdboadxu` int DEFAULT NULL,\n `omqtuchlcbagxagrhshgplpcdczbxamx` int DEFAULT NULL,\n `tutfxajiljuiyibsizbpxwxebvuuhhvd` int DEFAULT NULL,\n `utvzlwutqqrcvjsixvcpudhmduvdupnl` int DEFAULT NULL,\n `phdrvjrtsbzveiwkhphsxluokdgdetnc` int DEFAULT NULL,\n `oocdlmwjciisbxpxxbdomcakygwyrnjd` int DEFAULT NULL,\n `gcfazkwmlufgzkcznifwknesetchkuwi` int DEFAULT NULL,\n `ebbubxduxfsdplupxattckymrpaukvaf` int DEFAULT NULL,\n `zhqedtmmoywsuveepznimqgkpbfkrbbc` int DEFAULT NULL,\n `qithfqdpytmeiqmhkbbkqxeiisdzyulb` int DEFAULT NULL,\n `nktdllnmetdczareokujogqfkfqvtrsw` int DEFAULT NULL,\n `iukeogqadkxwkzpgvcojljjzrdcclslk` int DEFAULT NULL,\n `qxkocqikdxxovcevidhntgscuhkbnlaf` int DEFAULT NULL,\n `mjmjuvfbegdvljkwlebkwpqklzqpakbp` int DEFAULT NULL,\n `tbbbwsnepnyzuwknkewwxbzlxoigkwsx` int DEFAULT NULL,\n `bffulwbbagwrtbmvzqxrtqgsszpclvix` int DEFAULT NULL,\n `ahaalhmnradspztzgfogrojtachoswlo` int DEFAULT NULL,\n `hmuuliuelpdrrtjjfebbiqenieanmdgn` int DEFAULT NULL,\n `krannlgntklnzeuicezbcjllhjslvgeg` int DEFAULT NULL,\n `dewnlenftnnmodilpbtbrgdxdxqsdsji` int DEFAULT NULL,\n `mifdtejvghssbhyipufzgszpknfxceff` int DEFAULT NULL,\n `eatdwsyaajfkcnsbijrmgrunkmfyxpsw` int DEFAULT NULL,\n `ivvqsokkvqgmfewkeuqlwwfmmztdtgpx` int DEFAULT NULL,\n `kutrodusshfmvdaqrdvwncshdlurnvkt` int DEFAULT NULL,\n `zklvkhrafowhztjahdxsdtfyankjkvmi` int DEFAULT NULL,\n `joaospqpqulxgrjciznkyowszztieqhm` int DEFAULT NULL,\n `eyyuejjcwgffgrqkngrlpbovfxyynfgd` int DEFAULT NULL,\n `tszgtjxvkoqtaaipmtnbtathnmizvwqk` int DEFAULT NULL,\n `zxsnxaslnvzxsixvtmrthqbpsyonkhyd` int DEFAULT NULL,\n `xaqeqkgqqaqoqsselqicfmqswctkctyy` int DEFAULT NULL,\n `xodrqchgmgghleppfaglftouphlzdmsk` int DEFAULT NULL,\n `hpcupwvjwunlmznbicqibunqrfhadilq` int DEFAULT NULL,\n `tgqhqajcxootqtdiobvjypcoyqnbvtuz` int DEFAULT NULL,\n `cedpyyngdfomkzbjcgzzzvgtiytrfqvh` int DEFAULT NULL,\n `jpnkqnbteizvmmhzzmswsmjfdgydcabx` int DEFAULT NULL,\n `fjqrujvuwihtkwdpdfdaejnjiqnzhmad` int DEFAULT NULL,\n `fipbkawhlipmzufidmrecydnbyebaslz` int DEFAULT NULL,\n `rofapacntytmsjezhhrpksifmxtzqdtd` int DEFAULT NULL,\n `ceuhmzozyforprwohngafdtsgdlahwwf` int DEFAULT NULL,\n `cuzrbqndcpxatqqmvjirsivuntdpzpox` int DEFAULT NULL,\n `aqiyejtgfwcbhudtlinxpagcewoweeli` int DEFAULT NULL,\n `jdnhnnjkbhbfpgqbnzvelmdzysqqqcpu` int DEFAULT NULL,\n `gdueuiziepakvemnhijqasknlgzxdyko` int DEFAULT NULL,\n `imvfxeduabmlcczhyjwdqovhpalynwlg` int DEFAULT NULL,\n `suwnwcjijvbqakofxoqtfeinacjzjvfx` int DEFAULT NULL,\n `hxkqsbrismeiuwvhslrakvplmmjhwkrp` int DEFAULT NULL,\n `cbqdqxvnykblbseqmjhyhptjbobgandn` int DEFAULT NULL,\n `kjuodjjrwbsdfcpclwfbhkbzpobgmzmi` int DEFAULT NULL,\n `vbuyjegcfxnonigtkqpdytvprrsdzuhw` int DEFAULT NULL,\n `mwovnuiyfmrilmowgrkydfolatqvkdxr` int DEFAULT NULL,\n `krshnsvfamzmkyigrbkgrsmvsxszdslz` int DEFAULT NULL,\n `rhlaoeooqqxnkqmucjhlakniuwidkycr` int DEFAULT NULL,\n `hefcvvsriwzyenyqovqhoddnysnwqief` int DEFAULT NULL,\n `rsmogvmsforkidlnmjgwbfcrfiqqdqjb` int DEFAULT NULL,\n `velgakllhkeaskhtlmgzbabeizcaeafk` int DEFAULT NULL,\n `yflwbruowdsvxijdkwyruusqpxvexwmv` int DEFAULT NULL,\n `bqthjhmcrxehuiuranktxcpubbpkjufy` int DEFAULT NULL,\n `mxhmgevexryepgfqxnljerdbnqxgfyfd` int DEFAULT NULL,\n `lpwacrsrfddiqgqjisbcaemoxcmnvfzu` int DEFAULT NULL,\n `jufgzdgawoqvxtbvpuamwktmyqjoztze` int DEFAULT NULL,\n `lxkhmvrypogbsgvmnncxmddrwswmvbxi` int DEFAULT NULL,\n `kmnyhrieeweevriyehyjfqftjathhiua` int DEFAULT NULL,\n `qqqsokflwcjpavmpazvwesyszdxsxhmh` int DEFAULT NULL,\n `flhdpooovjlkvgcginrhcfwtdxwnkbxt` int DEFAULT NULL,\n `fzwhbgamwmvfnfpgmbxklpqbdnlfcvve` int DEFAULT NULL,\n `wujayhyebfkupbvjczmgtnrxsypehzet` int DEFAULT NULL,\n `fkwztoylpbegxbqopbfsoolrzyljzcge` int DEFAULT NULL,\n `zkbqjlfrhwdfybqqoxyfobiytipvhcyq` int DEFAULT NULL,\n `bcelmassufxmbcoueberrhbxobemhvmi` int DEFAULT NULL,\n `ckclhsznzvrufremkpkghxjnlxjjihao` int DEFAULT NULL,\n `loeysotqllyukirhuqtdhrevypvdqujf` int DEFAULT NULL,\n `tapowdehmkjkqjrfsxryveslppvgwbgi` int DEFAULT NULL,\n `qkhrchptqhccfgpndqzkxmazahgijcjv` int DEFAULT NULL,\n `vpyugyhlcrrpmnggiaygqxxlpxjecyvs` int DEFAULT NULL,\n `cybjurmplunnbjsxzudxaaaeehcratmc` int DEFAULT NULL,\n `ezuldhfujoqgbjujrnjfgxdlnlxxvpxz` int DEFAULT NULL,\n `jsvawhcwyxyrkvzntngvsznrrnayodcc` int DEFAULT NULL,\n `ftnoidengnosoxbtybkwfwgwsonouuxv` int DEFAULT NULL,\n `raltsozfrtpbxotpmxhznugdyfyafzsu` int DEFAULT NULL,\n `mkbmwzfeqokzgsuemgqpchifkozhjgpz` int DEFAULT NULL,\n `anhdkvqerhiiycpdsomzxftwqvsmsnke` int DEFAULT NULL,\n `hqtcrpgcwuknhzndbkyggiraiwderrbw` int DEFAULT NULL,\n `gekegofsgjawwsqlxqzupkrtkhfuxxat` int DEFAULT NULL,\n `dlxqannohukidywpxtojegcmoaerdenv` int DEFAULT NULL,\n `ickcwuzejaajtfdkdbmqyerrtvuiredh` int DEFAULT NULL,\n `qgotjdwqiwrggagcfhjmmwfgmczaghzi` int DEFAULT NULL,\n `vmjprkxaorsyazmodxbfzmqkuevyawxi` int DEFAULT NULL,\n `xnkgirwdnvssxlcdlelnokwlwispcxpj` int DEFAULT NULL,\n `zqnwwcvnbfduxlnkxbfliyjophkdoiyu` int DEFAULT NULL,\n `ejfekdwfgjyafmtzpyplgoltvzqzmxoe` int DEFAULT NULL,\n PRIMARY KEY (`sulhojifeflwkrbluskomlouorxnulgc`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"jzkrhqtehgofuwbzfrjzkrenxfjfbkjc\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["sulhojifeflwkrbluskomlouorxnulgc"],"columns":[{"name":"sulhojifeflwkrbluskomlouorxnulgc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"qjutdldlelmtgferovhbhxrgqzzxpyiq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dsiyijkgdgsibqhiycwemqqopofktzxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gsnrpcfkvsvrrnmkntqhaqihelsztyfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibcqycybfoqprqrtukxuvfxvskgpllen","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eeidrezcdlyrldtssjglvxlftbzyidja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mawhkjtnnxhvcdmfuzathdopelrnfswl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hrmgopagvyjcwqckjgbtrgsfqxnsdxyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjsoxvdiicpxbsjcoqcnnoskylyyubxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbuesasprlthejrdmojnpyjozpyrdklo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tczkfvhamcaugtepllgmupqwgdboadxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omqtuchlcbagxagrhshgplpcdczbxamx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tutfxajiljuiyibsizbpxwxebvuuhhvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utvzlwutqqrcvjsixvcpudhmduvdupnl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phdrvjrtsbzveiwkhphsxluokdgdetnc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oocdlmwjciisbxpxxbdomcakygwyrnjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gcfazkwmlufgzkcznifwknesetchkuwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebbubxduxfsdplupxattckymrpaukvaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhqedtmmoywsuveepznimqgkpbfkrbbc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qithfqdpytmeiqmhkbbkqxeiisdzyulb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nktdllnmetdczareokujogqfkfqvtrsw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iukeogqadkxwkzpgvcojljjzrdcclslk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxkocqikdxxovcevidhntgscuhkbnlaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjmjuvfbegdvljkwlebkwpqklzqpakbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbbbwsnepnyzuwknkewwxbzlxoigkwsx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bffulwbbagwrtbmvzqxrtqgsszpclvix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ahaalhmnradspztzgfogrojtachoswlo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmuuliuelpdrrtjjfebbiqenieanmdgn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"krannlgntklnzeuicezbcjllhjslvgeg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dewnlenftnnmodilpbtbrgdxdxqsdsji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mifdtejvghssbhyipufzgszpknfxceff","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eatdwsyaajfkcnsbijrmgrunkmfyxpsw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivvqsokkvqgmfewkeuqlwwfmmztdtgpx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kutrodusshfmvdaqrdvwncshdlurnvkt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zklvkhrafowhztjahdxsdtfyankjkvmi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"joaospqpqulxgrjciznkyowszztieqhm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eyyuejjcwgffgrqkngrlpbovfxyynfgd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tszgtjxvkoqtaaipmtnbtathnmizvwqk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxsnxaslnvzxsixvtmrthqbpsyonkhyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xaqeqkgqqaqoqsselqicfmqswctkctyy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xodrqchgmgghleppfaglftouphlzdmsk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hpcupwvjwunlmznbicqibunqrfhadilq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tgqhqajcxootqtdiobvjypcoyqnbvtuz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cedpyyngdfomkzbjcgzzzvgtiytrfqvh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jpnkqnbteizvmmhzzmswsmjfdgydcabx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjqrujvuwihtkwdpdfdaejnjiqnzhmad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fipbkawhlipmzufidmrecydnbyebaslz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rofapacntytmsjezhhrpksifmxtzqdtd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ceuhmzozyforprwohngafdtsgdlahwwf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cuzrbqndcpxatqqmvjirsivuntdpzpox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqiyejtgfwcbhudtlinxpagcewoweeli","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdnhnnjkbhbfpgqbnzvelmdzysqqqcpu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdueuiziepakvemnhijqasknlgzxdyko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"imvfxeduabmlcczhyjwdqovhpalynwlg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"suwnwcjijvbqakofxoqtfeinacjzjvfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hxkqsbrismeiuwvhslrakvplmmjhwkrp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbqdqxvnykblbseqmjhyhptjbobgandn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjuodjjrwbsdfcpclwfbhkbzpobgmzmi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbuyjegcfxnonigtkqpdytvprrsdzuhw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwovnuiyfmrilmowgrkydfolatqvkdxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"krshnsvfamzmkyigrbkgrsmvsxszdslz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhlaoeooqqxnkqmucjhlakniuwidkycr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hefcvvsriwzyenyqovqhoddnysnwqief","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rsmogvmsforkidlnmjgwbfcrfiqqdqjb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"velgakllhkeaskhtlmgzbabeizcaeafk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yflwbruowdsvxijdkwyruusqpxvexwmv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqthjhmcrxehuiuranktxcpubbpkjufy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mxhmgevexryepgfqxnljerdbnqxgfyfd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lpwacrsrfddiqgqjisbcaemoxcmnvfzu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jufgzdgawoqvxtbvpuamwktmyqjoztze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxkhmvrypogbsgvmnncxmddrwswmvbxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kmnyhrieeweevriyehyjfqftjathhiua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqqsokflwcjpavmpazvwesyszdxsxhmh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flhdpooovjlkvgcginrhcfwtdxwnkbxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzwhbgamwmvfnfpgmbxklpqbdnlfcvve","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wujayhyebfkupbvjczmgtnrxsypehzet","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fkwztoylpbegxbqopbfsoolrzyljzcge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zkbqjlfrhwdfybqqoxyfobiytipvhcyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bcelmassufxmbcoueberrhbxobemhvmi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ckclhsznzvrufremkpkghxjnlxjjihao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"loeysotqllyukirhuqtdhrevypvdqujf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tapowdehmkjkqjrfsxryveslppvgwbgi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qkhrchptqhccfgpndqzkxmazahgijcjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpyugyhlcrrpmnggiaygqxxlpxjecyvs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cybjurmplunnbjsxzudxaaaeehcratmc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezuldhfujoqgbjujrnjfgxdlnlxxvpxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jsvawhcwyxyrkvzntngvsznrrnayodcc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftnoidengnosoxbtybkwfwgwsonouuxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"raltsozfrtpbxotpmxhznugdyfyafzsu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkbmwzfeqokzgsuemgqpchifkozhjgpz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"anhdkvqerhiiycpdsomzxftwqvsmsnke","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqtcrpgcwuknhzndbkyggiraiwderrbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gekegofsgjawwsqlxqzupkrtkhfuxxat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dlxqannohukidywpxtojegcmoaerdenv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ickcwuzejaajtfdkdbmqyerrtvuiredh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qgotjdwqiwrggagcfhjmmwfgmczaghzi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vmjprkxaorsyazmodxbfzmqkuevyawxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnkgirwdnvssxlcdlelnokwlwispcxpj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqnwwcvnbfduxlnkxbfliyjophkdoiyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejfekdwfgjyafmtzpyplgoltvzqzmxoe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668932,"databaseName":"models_schema","ddl":"CREATE TABLE `kdodfqyudmcpsufuzzqeocbauczaskpt` (\n `wydbnnsulqpwkajtidqdmlemhtdugdbp` int NOT NULL,\n `lbavrrguphkzxulpwcrwdpshkymfhozm` int DEFAULT NULL,\n `jbvzlknsnaetyywfdnigovrqtljrfugs` int DEFAULT NULL,\n `hzguxnwnygkvlwveubbltmxfxztarjiq` int DEFAULT NULL,\n `lxbphipovcbtezmmpzaeucmdlurgjvmx` int DEFAULT NULL,\n `uzkujxweotdgvgzebhopylzkqmvmcrpx` int DEFAULT NULL,\n `kfyfglalwmngpvaeyldlfhabupmangdh` int DEFAULT NULL,\n `rgtbjnqeibbtcnocuartmtnotaavsvbu` int DEFAULT NULL,\n `yrqpuqyjjvxgwagsugkqafeqpjzgrqlt` int DEFAULT NULL,\n `lqoguqfbitehdcuioeynmxfhailkrjje` int DEFAULT NULL,\n `hmwxedbxpnncivexdblqgrpqblsbydbu` int DEFAULT NULL,\n `juhjzgzwvzyocuglbksfhuryoydlqdhc` int DEFAULT NULL,\n `rdojawfkbncbdyqmjqeaidnlbbpvumvj` int DEFAULT NULL,\n `pbrdrckffrcuvrmzasetnhcoidoexjla` int DEFAULT NULL,\n `mrxxecamoqksxoktopnzvevicjqmkwst` int DEFAULT NULL,\n `sdvkxgouhsnnxgkjuyrgnuieydgzmrwx` int DEFAULT NULL,\n `hbidlzjmymqccaqppeaupnajvgkkrmep` int DEFAULT NULL,\n `ehwpcrpftoiqailonhowjzfkeyesxsjv` int DEFAULT NULL,\n `bdzurxiokmrofhraplfktukbmpoarswz` int DEFAULT NULL,\n `sasuypscglmnpxeuwwwjgxymwbhqouyb` int DEFAULT NULL,\n `ixhgcluabvbfwjbmnbvnludlxxfdmzyl` int DEFAULT NULL,\n `yhrhyqxyrbnkagjwurrcstewlguhhuip` int DEFAULT NULL,\n `zvfjchnbllrvtdfyjuecggvfdczgutmi` int DEFAULT NULL,\n `ggpxjadihpnulsqpqphufacdipygdfpg` int DEFAULT NULL,\n `fbfwyxgbiietvlyoezmqotvrkvzzprqv` int DEFAULT NULL,\n `uprlfceuejgmzxzwjexxrhoxwvkpsmye` int DEFAULT NULL,\n `rjbzehjnkledoftmbggxhyoqymzpmqts` int DEFAULT NULL,\n `ypeuuocgwyfsqdkypfvoovfoopjerxmr` int DEFAULT NULL,\n `rnglhxdzgiivvxqrzjmpvoclxbyngbqu` int DEFAULT NULL,\n `fazxxhyxoingjxksbmgrrsbkklctvizf` int DEFAULT NULL,\n `gwichjzyjifinxwzkmiptvkkdkdjodww` int DEFAULT NULL,\n `xgyzmlsrkpctlfvxgwmazgqmpzoxzohl` int DEFAULT NULL,\n `wzidnfcbpwdoqesktcsvlfmyvxsvndmg` int DEFAULT NULL,\n `kxsnzkeaekzdiccwpvotgnwcozcbydhz` int DEFAULT NULL,\n `ikjzeqogqbkybnhwcabpexxvgnienshm` int DEFAULT NULL,\n `vfiwyxnwtircnegqfzvjcljjdgyndcrc` int DEFAULT NULL,\n `isfazsmpebuvjsbacvwksqublzhrxdnb` int DEFAULT NULL,\n `vzgbqpfknumsryotxdeokcoeeegusita` int DEFAULT NULL,\n `wtedfwtqrbvxtmusuptqlwtiwioynrjz` int DEFAULT NULL,\n `isrstotsfdszkiwloaunxcjhpjvbcqwq` int DEFAULT NULL,\n `brsfptswreqdpntqpddxfrdgabwxslsm` int DEFAULT NULL,\n `cjoeyzvbbnrsalodtkqngfditeuuiwzn` int DEFAULT NULL,\n `hshkcaposzjfmvtqfxvfsufxngalqzgq` int DEFAULT NULL,\n `hwuunjvzamuhrrlhzyheaedammvhypel` int DEFAULT NULL,\n `qoiokrdveijvggjlsmuzolpgdijzykcp` int DEFAULT NULL,\n `puwaytghmsdhjjfaquiwqnyorfzyefeu` int DEFAULT NULL,\n `rdyzkkhhetgsmylygujsznjzrmmadjfg` int DEFAULT NULL,\n `dpjpitwcdrtelysjqmwyqjwsnfukaipt` int DEFAULT NULL,\n `yufhktyoehkowmuufgxlfoajkfnhvplo` int DEFAULT NULL,\n `budmsfhgjsofujgfsephgcanrapfphvp` int DEFAULT NULL,\n `lhfdbsmemcsthnyjrgygwspwxhyesdxu` int DEFAULT NULL,\n `xgacovfpbgkmpexwiixeaqlajrynmgia` int DEFAULT NULL,\n `cecgfcrkizkivqqghlpkriaryiwucbkl` int DEFAULT NULL,\n `rzrxqoatlvadprjzvhlgufkbzdgjxcxs` int DEFAULT NULL,\n `lfszcehvesvzeaazeupjemtoswqchuxi` int DEFAULT NULL,\n `fltkzbdvpsmwcustpfgbanomcbqnitho` int DEFAULT NULL,\n `rliwqcoagvfnpwmepmpvxdwrzetndhpr` int DEFAULT NULL,\n `uyvnpjcobeqwolmtjrqowiknpbcmihzf` int DEFAULT NULL,\n `xypefadzskdoenbtkylliclqoycwxnul` int DEFAULT NULL,\n `jmstlkvgehhuguutquatejkqqgpeplbp` int DEFAULT NULL,\n `bvwhwzomnmdawelyeubxnsocdppthqcz` int DEFAULT NULL,\n `meesbnquqzfmifamyotyrytuqyathqgr` int DEFAULT NULL,\n `xvfinfzefpkerbxqlyrmanplxucvtsle` int DEFAULT NULL,\n `wcdffubpfuqfiihqzwknwpxrhrzegwcw` int DEFAULT NULL,\n `qtrbuucmnakfrbpsbobzaiqmuntbioqx` int DEFAULT NULL,\n `nukdkxvalabpulhzkaakqlmlmoqdpnjk` int DEFAULT NULL,\n `mlwnaxxxjcptrippfljfhrutmawophuc` int DEFAULT NULL,\n `fjaikkbqjewmixcswjgrqsglhbbhqfgu` int DEFAULT NULL,\n `uinszdugrfmwycbsbtuhhunycaznsvrf` int DEFAULT NULL,\n `osbjbkbspwafudglallazzomqfdurkmx` int DEFAULT NULL,\n `ksgpmamdznxgwjgvvylilwnhxhbcbikn` int DEFAULT NULL,\n `anrwjxdqiedmuftayenqhestekepfrcx` int DEFAULT NULL,\n `nbllseyozxacwpeowopqlcmhalcsjsqf` int DEFAULT NULL,\n `vzoewlttgwojotveodcutfyyspgxtrpo` int DEFAULT NULL,\n `pejphrrqlgfkxtwsvxhlcxfakxieqaed` int DEFAULT NULL,\n `gxhhwzukydjrxgrmjuxgmxwzgxhjbgid` int DEFAULT NULL,\n `cfogmhoxvnydkseivlrdonlupipjnmet` int DEFAULT NULL,\n `loqpkbevxmjmyvkjyiunjsfmyalrtcfi` int DEFAULT NULL,\n `rpbmdywwhpemuergpjiqjgptteffyplm` int DEFAULT NULL,\n `aylfeabljkewdidxqnioiujucgnwvnoq` int DEFAULT NULL,\n `scmxisgjnbxrxsbzardwxrfejbefecww` int DEFAULT NULL,\n `lthbwqxgtghxynqwqndzshdxjlkpbcly` int DEFAULT NULL,\n `ntnlvlpbqdvqiptftttfvzckfxygjuzv` int DEFAULT NULL,\n `akoedmvctejdvsdftpugheruxnbztnor` int DEFAULT NULL,\n `cvqartduukqhhyxdeereohchnsdjhgeu` int DEFAULT NULL,\n `auzlmmsywlfrisekjgwyeruxfslnwgnl` int DEFAULT NULL,\n `nrubikcjkgnoajcanuuegbqxhdnbksbb` int DEFAULT NULL,\n `vuelclbqunnaftcsbcbiqmldbobofzpj` int DEFAULT NULL,\n `irzyeiglxevuekrauhdbgupjfseboexr` int DEFAULT NULL,\n `pakpbnxjmopdyhtwtzcdsxgjpolgsvzx` int DEFAULT NULL,\n `izdsqkokkbnjitvqjpwznqaiyrfhktuy` int DEFAULT NULL,\n `zspkxwikgplnlzojyyqrenvdenbnbljp` int DEFAULT NULL,\n `tdimauyoywvijijrujoasiwdbvqyhxct` int DEFAULT NULL,\n `jvmdypeqngqvnwfjmfateqmxmfqxzquq` int DEFAULT NULL,\n `qjuvhcvnukpqnbdpewottyperlxzbzjy` int DEFAULT NULL,\n `sdxwhwpvqseelvoruzaagrxhyazmbsaq` int DEFAULT NULL,\n `faxtrfljjfdedixubiwmnmwvtmpijgha` int DEFAULT NULL,\n `vebxpejvwpvyiyxeisarafunhtsnvckw` int DEFAULT NULL,\n `pntquiujbbuphgpmqiclhkczgrsjabro` int DEFAULT NULL,\n `oncvismnpsmnxzfinbxpxakaamxwuhke` int DEFAULT NULL,\n PRIMARY KEY (`wydbnnsulqpwkajtidqdmlemhtdugdbp`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"kdodfqyudmcpsufuzzqeocbauczaskpt\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["wydbnnsulqpwkajtidqdmlemhtdugdbp"],"columns":[{"name":"wydbnnsulqpwkajtidqdmlemhtdugdbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"lbavrrguphkzxulpwcrwdpshkymfhozm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jbvzlknsnaetyywfdnigovrqtljrfugs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hzguxnwnygkvlwveubbltmxfxztarjiq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxbphipovcbtezmmpzaeucmdlurgjvmx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzkujxweotdgvgzebhopylzkqmvmcrpx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfyfglalwmngpvaeyldlfhabupmangdh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgtbjnqeibbtcnocuartmtnotaavsvbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yrqpuqyjjvxgwagsugkqafeqpjzgrqlt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqoguqfbitehdcuioeynmxfhailkrjje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmwxedbxpnncivexdblqgrpqblsbydbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"juhjzgzwvzyocuglbksfhuryoydlqdhc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdojawfkbncbdyqmjqeaidnlbbpvumvj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbrdrckffrcuvrmzasetnhcoidoexjla","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrxxecamoqksxoktopnzvevicjqmkwst","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdvkxgouhsnnxgkjuyrgnuieydgzmrwx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbidlzjmymqccaqppeaupnajvgkkrmep","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehwpcrpftoiqailonhowjzfkeyesxsjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bdzurxiokmrofhraplfktukbmpoarswz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sasuypscglmnpxeuwwwjgxymwbhqouyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixhgcluabvbfwjbmnbvnludlxxfdmzyl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhrhyqxyrbnkagjwurrcstewlguhhuip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvfjchnbllrvtdfyjuecggvfdczgutmi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggpxjadihpnulsqpqphufacdipygdfpg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbfwyxgbiietvlyoezmqotvrkvzzprqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uprlfceuejgmzxzwjexxrhoxwvkpsmye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjbzehjnkledoftmbggxhyoqymzpmqts","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypeuuocgwyfsqdkypfvoovfoopjerxmr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnglhxdzgiivvxqrzjmpvoclxbyngbqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fazxxhyxoingjxksbmgrrsbkklctvizf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gwichjzyjifinxwzkmiptvkkdkdjodww","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xgyzmlsrkpctlfvxgwmazgqmpzoxzohl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzidnfcbpwdoqesktcsvlfmyvxsvndmg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxsnzkeaekzdiccwpvotgnwcozcbydhz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikjzeqogqbkybnhwcabpexxvgnienshm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vfiwyxnwtircnegqfzvjcljjdgyndcrc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"isfazsmpebuvjsbacvwksqublzhrxdnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vzgbqpfknumsryotxdeokcoeeegusita","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wtedfwtqrbvxtmusuptqlwtiwioynrjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"isrstotsfdszkiwloaunxcjhpjvbcqwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"brsfptswreqdpntqpddxfrdgabwxslsm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cjoeyzvbbnrsalodtkqngfditeuuiwzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hshkcaposzjfmvtqfxvfsufxngalqzgq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwuunjvzamuhrrlhzyheaedammvhypel","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qoiokrdveijvggjlsmuzolpgdijzykcp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"puwaytghmsdhjjfaquiwqnyorfzyefeu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdyzkkhhetgsmylygujsznjzrmmadjfg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpjpitwcdrtelysjqmwyqjwsnfukaipt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yufhktyoehkowmuufgxlfoajkfnhvplo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"budmsfhgjsofujgfsephgcanrapfphvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhfdbsmemcsthnyjrgygwspwxhyesdxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xgacovfpbgkmpexwiixeaqlajrynmgia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cecgfcrkizkivqqghlpkriaryiwucbkl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzrxqoatlvadprjzvhlgufkbzdgjxcxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfszcehvesvzeaazeupjemtoswqchuxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fltkzbdvpsmwcustpfgbanomcbqnitho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rliwqcoagvfnpwmepmpvxdwrzetndhpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uyvnpjcobeqwolmtjrqowiknpbcmihzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xypefadzskdoenbtkylliclqoycwxnul","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmstlkvgehhuguutquatejkqqgpeplbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvwhwzomnmdawelyeubxnsocdppthqcz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"meesbnquqzfmifamyotyrytuqyathqgr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvfinfzefpkerbxqlyrmanplxucvtsle","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcdffubpfuqfiihqzwknwpxrhrzegwcw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtrbuucmnakfrbpsbobzaiqmuntbioqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nukdkxvalabpulhzkaakqlmlmoqdpnjk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mlwnaxxxjcptrippfljfhrutmawophuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjaikkbqjewmixcswjgrqsglhbbhqfgu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uinszdugrfmwycbsbtuhhunycaznsvrf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"osbjbkbspwafudglallazzomqfdurkmx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ksgpmamdznxgwjgvvylilwnhxhbcbikn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"anrwjxdqiedmuftayenqhestekepfrcx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbllseyozxacwpeowopqlcmhalcsjsqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vzoewlttgwojotveodcutfyyspgxtrpo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pejphrrqlgfkxtwsvxhlcxfakxieqaed","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gxhhwzukydjrxgrmjuxgmxwzgxhjbgid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfogmhoxvnydkseivlrdonlupipjnmet","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"loqpkbevxmjmyvkjyiunjsfmyalrtcfi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpbmdywwhpemuergpjiqjgptteffyplm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aylfeabljkewdidxqnioiujucgnwvnoq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"scmxisgjnbxrxsbzardwxrfejbefecww","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lthbwqxgtghxynqwqndzshdxjlkpbcly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntnlvlpbqdvqiptftttfvzckfxygjuzv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akoedmvctejdvsdftpugheruxnbztnor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvqartduukqhhyxdeereohchnsdjhgeu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"auzlmmsywlfrisekjgwyeruxfslnwgnl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nrubikcjkgnoajcanuuegbqxhdnbksbb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vuelclbqunnaftcsbcbiqmldbobofzpj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"irzyeiglxevuekrauhdbgupjfseboexr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pakpbnxjmopdyhtwtzcdsxgjpolgsvzx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"izdsqkokkbnjitvqjpwznqaiyrfhktuy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zspkxwikgplnlzojyyqrenvdenbnbljp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tdimauyoywvijijrujoasiwdbvqyhxct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvmdypeqngqvnwfjmfateqmxmfqxzquq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjuvhcvnukpqnbdpewottyperlxzbzjy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdxwhwpvqseelvoruzaagrxhyazmbsaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"faxtrfljjfdedixubiwmnmwvtmpijgha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vebxpejvwpvyiyxeisarafunhtsnvckw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pntquiujbbuphgpmqiclhkczgrsjabro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oncvismnpsmnxzfinbxpxakaamxwuhke","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842668970,"databaseName":"models_schema","ddl":"CREATE TABLE `kepkeqfmkwienbdkjycwcyzjpzrrkrrg` (\n `rfdnmkadwictbudjjnaicqpvswpffdnr` int NOT NULL,\n `ulhkffbemrfmpstcrmzmmvykwjxiwfkl` int DEFAULT NULL,\n `ibnsfzqnlcbbynsygvvvlpmbcpvdmwwm` int DEFAULT NULL,\n `vbhvijqalhwqeavcwjzxoqwpketvjida` int DEFAULT NULL,\n `yknpmyfmbzybqhqioowsnzipzfynpdga` int DEFAULT NULL,\n `byxcwzfmsfvnmgppiedttsowbbacfsjq` int DEFAULT NULL,\n `rruubxvchekihooglevengfifwmxzcsl` int DEFAULT NULL,\n `szphoelepnxaudlafjfiiexiwuofzbdn` int DEFAULT NULL,\n `snzwtjxpcddymzzofmwfuethbiraexip` int DEFAULT NULL,\n `iepsvxqkaqdnjoaixnptuvxrjcjniilf` int DEFAULT NULL,\n `nctfrnghtnxidftdealaldvmkawcgxnj` int DEFAULT NULL,\n `uxvqfnwmiabpjlswyfhpuqlulnybmkdw` int DEFAULT NULL,\n `gdmydhjygrigpgfuerwdzgthliwmofke` int DEFAULT NULL,\n `rflinbosngitlqyrbwzzucsfmbowsfwt` int DEFAULT NULL,\n `rkozxygwuaqqoneauuygixayquadbkbg` int DEFAULT NULL,\n `umjunjiudwkbzpknvptbfyetqgtdzcaa` int DEFAULT NULL,\n `shppayroeyvbfuvsoyneehroydcdmugc` int DEFAULT NULL,\n `eeuazdjnztrwflsssloykivjqdijqtoo` int DEFAULT NULL,\n `xudoorfsyjhucfmnqbbhwmrzfyspqxgn` int DEFAULT NULL,\n `wtdgmdqdmyampfkptnetnbafuezqtsls` int DEFAULT NULL,\n `msgjwdcobzkelzzcwvhmexytofnmgtyw` int DEFAULT NULL,\n `otskjjtmftxjwbtrbubjfbbokatlxgfj` int DEFAULT NULL,\n `fsnndqxmafznzlrotmugsqiufofusrra` int DEFAULT NULL,\n `qpxzobofbjsbizcncmtsejkfltulggkh` int DEFAULT NULL,\n `pmnyqvrdyltmtjxqszdrjyemhnusuibk` int DEFAULT NULL,\n `etrvazyrscpikjtcwhxwnfwuvstgmojl` int DEFAULT NULL,\n `sojmftxrgsbtrjolvtgwiimqalgsyofn` int DEFAULT NULL,\n `mwdtnsvgolhyrcjfvcmhjjlemxxswond` int DEFAULT NULL,\n `pmsctxfsskbieylshyhqbtiftmhuomtn` int DEFAULT NULL,\n `kekulrxykubdzkjxsestsiznshmbeokr` int DEFAULT NULL,\n `bktncrylkufpkhjakydhurfddavruygg` int DEFAULT NULL,\n `gylzugakxxdtfdmjxikrlmmemaakkpyc` int DEFAULT NULL,\n `ngkirbgknvjogseobrobglbkbgjocqwm` int DEFAULT NULL,\n `kanarkkfwocgazzpsdqvlysyayvtvfro` int DEFAULT NULL,\n `sjparnbelkinyjuhcaezuudhymxrsbxh` int DEFAULT NULL,\n `nloijyopucpsrsgujfkwzklnulardxhb` int DEFAULT NULL,\n `ymrqtusxfxqwgdzwvesvxecfgkovnbti` int DEFAULT NULL,\n `unqkxkjkmrlagiantebycgfaqvkesuie` int DEFAULT NULL,\n `zhbsifigxfqztgficnqqypvjblyeatng` int DEFAULT NULL,\n `ywnjloifxpvczbpkijcjgwldfwnfcnft` int DEFAULT NULL,\n `whmchirfvoxsgmdnpqakhbpfarvtypbb` int DEFAULT NULL,\n `milqnltkhbqpcaispxqhihewcndgdcbj` int DEFAULT NULL,\n `lrzriqslavlabhdbpsegpmgfppaefhmo` int DEFAULT NULL,\n `lrycaywfirhtvnmkeyrclihrdjwndcnx` int DEFAULT NULL,\n `cdkapzrumbkayigsypbgobgftejvthjg` int DEFAULT NULL,\n `grkyrsxllozjxtldttnvgjvbbokqvmxu` int DEFAULT NULL,\n `denxpyymdsssyazigjqhnovizhgloxmn` int DEFAULT NULL,\n `kzibexrjefylesmvhsgulofnuxiqkktg` int DEFAULT NULL,\n `ssbdnlxwalhotyydivxaybghxvvlagnp` int DEFAULT NULL,\n `vlwyexxvcejdjlkajrdhqvzdzcqtpffa` int DEFAULT NULL,\n `aoddwkzhcdsxhyugigjvptdlbkuyrvpd` int DEFAULT NULL,\n `lykkxbnxvmzmhkctnskdqnmmjkjndfzp` int DEFAULT NULL,\n `vmekbbswldodlljppkhmwosrxejdgjyc` int DEFAULT NULL,\n `wbwplwgfdssnsbyfiggnvtbaduwnetxm` int DEFAULT NULL,\n `rnztkbtkgngvkipvvxcntanrhhfxooqq` int DEFAULT NULL,\n `navyfyktfrcihuytvabkzgsdebbplbjt` int DEFAULT NULL,\n `anihawspdxvsassmmcyflwniiqdhkupp` int DEFAULT NULL,\n `jytegwxercweoxkvshggnoxxrmuvgvvz` int DEFAULT NULL,\n `tfybwgjnncmdwhbgbskztbargmigqjei` int DEFAULT NULL,\n `tviqwkywtnzonyfhektgqavvrxhpykym` int DEFAULT NULL,\n `kyhthzazvptnbvhsafycdxwzigcaeqyb` int DEFAULT NULL,\n `ylifrrpiqzyjexfxnpilntqeklfrrvwk` int DEFAULT NULL,\n `zyfumejnlvtfxeejtfoadffcinbvqwjo` int DEFAULT NULL,\n `lbkablxvlzpijygghnkdosnbyzxitxjk` int DEFAULT NULL,\n `gdtuznpdrrpnywfieybhwlzgpdlcmuyb` int DEFAULT NULL,\n `xeznzjhxezentkkzsirvowpbrjdulkkv` int DEFAULT NULL,\n `xypsyrttgmdjewoutiarefikjkqyaupr` int DEFAULT NULL,\n `nvomnlpclfgcmcjxqspmovfjugpjmlwi` int DEFAULT NULL,\n `vakcmwmuujbyodzbbewynsapppjtrtha` int DEFAULT NULL,\n `xydgkxavlyqtilihavnrkzjbypkswsmt` int DEFAULT NULL,\n `zrexodjlzubbnpnutyyoxottnjgoeigh` int DEFAULT NULL,\n `zzkyrpfsmrsacsuublhhlqlaqpodlwxw` int DEFAULT NULL,\n `bihcbxdimvnrxjairqjgrevjkxjyswmq` int DEFAULT NULL,\n `padtenlnraqecvqevcshwojjdewibopb` int DEFAULT NULL,\n `baudbfojunvywcgmhxpgpbyevrymhakr` int DEFAULT NULL,\n `ijuqepmexyzxhypfuldlqgyebuhhwvtp` int DEFAULT NULL,\n `svxwwuasparnqnnhupxihulyzfruptub` int DEFAULT NULL,\n `voyiwqkgsnmbsfpfleirzgyrlgpzgszz` int DEFAULT NULL,\n `zmvzgqpmfczcmfosehgpbaetvbjsfggd` int DEFAULT NULL,\n `yownwttopuprssgwrzipzgapomutzcps` int DEFAULT NULL,\n `dqrwrdbvfijridakyfqpensoxkbrdowk` int DEFAULT NULL,\n `scpygdtpaahysbsktyuhqbidepgzefem` int DEFAULT NULL,\n `mhakodedgljnhemsfjfcqeekhpbvqvbk` int DEFAULT NULL,\n `dvfwfzwtkzuveqjrkhcddbgvzyrgmcsc` int DEFAULT NULL,\n `pwapoaonbeavjqlvqcbuaoncbrnpnitb` int DEFAULT NULL,\n `hwbbmdmdpklfjrceangxkchomdymuhsg` int DEFAULT NULL,\n `luqmwvdmjqxbavejwojpjohzbkxhhkzf` int DEFAULT NULL,\n `llehxmntfcnizqzwxmtpwofnoiqnhckw` int DEFAULT NULL,\n `amqyjomgxyijyznfanwjpaklephqugki` int DEFAULT NULL,\n `ckxzqmgjohnwrufqdjtcqfuuuvkpikfe` int DEFAULT NULL,\n `grmtuprevezxmsbstyoigdlxksumscxb` int DEFAULT NULL,\n `xtpenvqytkxixvbafzceleeypsmnvgaz` int DEFAULT NULL,\n `auyfjjvsyyktoilrjkvobrhnafedyhqs` int DEFAULT NULL,\n `bveaqysoyjuokejeqatlcvwfixkqohed` int DEFAULT NULL,\n `qjmofpxycewopmstoxlmfzvajqyyvits` int DEFAULT NULL,\n `eznurmcgtzdubfhxcpcskfqmamyfkfkv` int DEFAULT NULL,\n `mbrwthdyrtheabfjyhwrszppimrapdtm` int DEFAULT NULL,\n `txdgvsrdqwlcdpcuavyqqqunspsemuhy` int DEFAULT NULL,\n `fjiciitoncysbvulpskolwtawffeoqnl` int DEFAULT NULL,\n `lovhbyriuwfwjhvemwdtneqgcigtteby` int DEFAULT NULL,\n PRIMARY KEY (`rfdnmkadwictbudjjnaicqpvswpffdnr`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"kepkeqfmkwienbdkjycwcyzjpzrrkrrg\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["rfdnmkadwictbudjjnaicqpvswpffdnr"],"columns":[{"name":"rfdnmkadwictbudjjnaicqpvswpffdnr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"ulhkffbemrfmpstcrmzmmvykwjxiwfkl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibnsfzqnlcbbynsygvvvlpmbcpvdmwwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbhvijqalhwqeavcwjzxoqwpketvjida","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yknpmyfmbzybqhqioowsnzipzfynpdga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"byxcwzfmsfvnmgppiedttsowbbacfsjq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rruubxvchekihooglevengfifwmxzcsl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"szphoelepnxaudlafjfiiexiwuofzbdn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"snzwtjxpcddymzzofmwfuethbiraexip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iepsvxqkaqdnjoaixnptuvxrjcjniilf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nctfrnghtnxidftdealaldvmkawcgxnj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxvqfnwmiabpjlswyfhpuqlulnybmkdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdmydhjygrigpgfuerwdzgthliwmofke","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rflinbosngitlqyrbwzzucsfmbowsfwt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkozxygwuaqqoneauuygixayquadbkbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umjunjiudwkbzpknvptbfyetqgtdzcaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shppayroeyvbfuvsoyneehroydcdmugc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eeuazdjnztrwflsssloykivjqdijqtoo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xudoorfsyjhucfmnqbbhwmrzfyspqxgn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wtdgmdqdmyampfkptnetnbafuezqtsls","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"msgjwdcobzkelzzcwvhmexytofnmgtyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otskjjtmftxjwbtrbubjfbbokatlxgfj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fsnndqxmafznzlrotmugsqiufofusrra","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qpxzobofbjsbizcncmtsejkfltulggkh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmnyqvrdyltmtjxqszdrjyemhnusuibk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"etrvazyrscpikjtcwhxwnfwuvstgmojl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sojmftxrgsbtrjolvtgwiimqalgsyofn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwdtnsvgolhyrcjfvcmhjjlemxxswond","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmsctxfsskbieylshyhqbtiftmhuomtn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kekulrxykubdzkjxsestsiznshmbeokr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bktncrylkufpkhjakydhurfddavruygg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gylzugakxxdtfdmjxikrlmmemaakkpyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ngkirbgknvjogseobrobglbkbgjocqwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kanarkkfwocgazzpsdqvlysyayvtvfro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjparnbelkinyjuhcaezuudhymxrsbxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nloijyopucpsrsgujfkwzklnulardxhb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ymrqtusxfxqwgdzwvesvxecfgkovnbti","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unqkxkjkmrlagiantebycgfaqvkesuie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhbsifigxfqztgficnqqypvjblyeatng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywnjloifxpvczbpkijcjgwldfwnfcnft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"whmchirfvoxsgmdnpqakhbpfarvtypbb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"milqnltkhbqpcaispxqhihewcndgdcbj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lrzriqslavlabhdbpsegpmgfppaefhmo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lrycaywfirhtvnmkeyrclihrdjwndcnx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cdkapzrumbkayigsypbgobgftejvthjg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grkyrsxllozjxtldttnvgjvbbokqvmxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"denxpyymdsssyazigjqhnovizhgloxmn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzibexrjefylesmvhsgulofnuxiqkktg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ssbdnlxwalhotyydivxaybghxvvlagnp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vlwyexxvcejdjlkajrdhqvzdzcqtpffa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aoddwkzhcdsxhyugigjvptdlbkuyrvpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lykkxbnxvmzmhkctnskdqnmmjkjndfzp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vmekbbswldodlljppkhmwosrxejdgjyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbwplwgfdssnsbyfiggnvtbaduwnetxm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnztkbtkgngvkipvvxcntanrhhfxooqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"navyfyktfrcihuytvabkzgsdebbplbjt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"anihawspdxvsassmmcyflwniiqdhkupp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jytegwxercweoxkvshggnoxxrmuvgvvz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tfybwgjnncmdwhbgbskztbargmigqjei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tviqwkywtnzonyfhektgqavvrxhpykym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kyhthzazvptnbvhsafycdxwzigcaeqyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ylifrrpiqzyjexfxnpilntqeklfrrvwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zyfumejnlvtfxeejtfoadffcinbvqwjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lbkablxvlzpijygghnkdosnbyzxitxjk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdtuznpdrrpnywfieybhwlzgpdlcmuyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xeznzjhxezentkkzsirvowpbrjdulkkv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xypsyrttgmdjewoutiarefikjkqyaupr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvomnlpclfgcmcjxqspmovfjugpjmlwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vakcmwmuujbyodzbbewynsapppjtrtha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xydgkxavlyqtilihavnrkzjbypkswsmt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zrexodjlzubbnpnutyyoxottnjgoeigh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzkyrpfsmrsacsuublhhlqlaqpodlwxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bihcbxdimvnrxjairqjgrevjkxjyswmq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"padtenlnraqecvqevcshwojjdewibopb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"baudbfojunvywcgmhxpgpbyevrymhakr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijuqepmexyzxhypfuldlqgyebuhhwvtp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"svxwwuasparnqnnhupxihulyzfruptub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"voyiwqkgsnmbsfpfleirzgyrlgpzgszz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmvzgqpmfczcmfosehgpbaetvbjsfggd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yownwttopuprssgwrzipzgapomutzcps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqrwrdbvfijridakyfqpensoxkbrdowk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"scpygdtpaahysbsktyuhqbidepgzefem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhakodedgljnhemsfjfcqeekhpbvqvbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvfwfzwtkzuveqjrkhcddbgvzyrgmcsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwapoaonbeavjqlvqcbuaoncbrnpnitb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwbbmdmdpklfjrceangxkchomdymuhsg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"luqmwvdmjqxbavejwojpjohzbkxhhkzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llehxmntfcnizqzwxmtpwofnoiqnhckw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"amqyjomgxyijyznfanwjpaklephqugki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ckxzqmgjohnwrufqdjtcqfuuuvkpikfe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grmtuprevezxmsbstyoigdlxksumscxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xtpenvqytkxixvbafzceleeypsmnvgaz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"auyfjjvsyyktoilrjkvobrhnafedyhqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bveaqysoyjuokejeqatlcvwfixkqohed","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjmofpxycewopmstoxlmfzvajqyyvits","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eznurmcgtzdubfhxcpcskfqmamyfkfkv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbrwthdyrtheabfjyhwrszppimrapdtm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txdgvsrdqwlcdpcuavyqqqunspsemuhy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjiciitoncysbvulpskolwtawffeoqnl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lovhbyriuwfwjhvemwdtneqgcigtteby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842668,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669000,"databaseName":"models_schema","ddl":"CREATE TABLE `kfixdbsknznmfkubbmksyozpamncervh` (\n `xrtreixvlialqwqdjxovbnzwnyvakbjj` int NOT NULL,\n `xiewjjmsnysivixlhzpnpgaagjvrpolr` int DEFAULT NULL,\n `jgqxxrmdigbzoisszntpnmlnvodpdpdb` int DEFAULT NULL,\n `vnpxamiotwfefjwsqovbymqnvaptqxgf` int DEFAULT NULL,\n `vqqjfsxkdquxdjjusenjcaccjlzduhwn` int DEFAULT NULL,\n `icgiqxnecxmfinibvsoutnierzzdxcxi` int DEFAULT NULL,\n `fxcxagyskxtdmxiappqnudyaohevzjyx` int DEFAULT NULL,\n `zimejnjrzwzzlmilacsehccywovicwws` int DEFAULT NULL,\n `hjhkqqrmykycfapfafkvpvwjvnfonllz` int DEFAULT NULL,\n `dnfwnpivocksyswszolhppjrfjhmpiot` int DEFAULT NULL,\n `yqcdghsyuehmnlbnpazniihsnohvjazt` int DEFAULT NULL,\n `entslmchtzdbinalfganseqbbffbfwam` int DEFAULT NULL,\n `yskqtxnhnuvlislztpbpiosfosjmkmmr` int DEFAULT NULL,\n `hkefgtisaynlzkmciykljshowgiqleii` int DEFAULT NULL,\n `iqqvftbpkwfwjsabmpvdobpzvmpuamjq` int DEFAULT NULL,\n `drqmxphnknipmzdijqwzxhuemwrbibvn` int DEFAULT NULL,\n `rfbozwwzruzqwcknsibqwmgbetzoaslj` int DEFAULT NULL,\n `gscpwwgggmidqccxynqduqrscehbirkt` int DEFAULT NULL,\n `wtxdpdayvphqwhaqpspjaugericwgobu` int DEFAULT NULL,\n `iwmgadpdtsppzvoetnfggtegdjzabxne` int DEFAULT NULL,\n `bvtqrpopiocnedqqnpcfqgjohqjdcevb` int DEFAULT NULL,\n `xbuqalxveobkjazvbsxefqbqjojzumwk` int DEFAULT NULL,\n `faufgskliatjbsykgwmqfbhkwvrrjebz` int DEFAULT NULL,\n `yoczfxpflhxohapyiuwcorjuxyxxktsn` int DEFAULT NULL,\n `vwlejjyphtxxlactypjcihwewnhhjnwk` int DEFAULT NULL,\n `ojuxbvnzzaabwvusmwrjfaaugxbjxihf` int DEFAULT NULL,\n `coqtiqgxriyxwzwpwxdkhlwfiihsazpp` int DEFAULT NULL,\n `xkaiepsygivzxlrkrodjlirzyurxnmcu` int DEFAULT NULL,\n `jpcppqpplwwqyzykstkkqljapczrolqb` int DEFAULT NULL,\n `flvwtweegfbrswgvlhyrrunrehokpiie` int DEFAULT NULL,\n `ebmyzwgpijpjiejylduzeuwckqjeimdd` int DEFAULT NULL,\n `uarzvtgljhjczcrjkexwxnfxpoptibsc` int DEFAULT NULL,\n `fuaqowrslgbrzqyymjiakwbhteyflbhs` int DEFAULT NULL,\n `izvxsvmwzpuhshrdstayomjrvocmlnfm` int DEFAULT NULL,\n `kajyroviaburchschsorvskwpkfdfnkz` int DEFAULT NULL,\n `fwtjkcumainteshpxbgcxpwcqirgjuhv` int DEFAULT NULL,\n `yfdurrwyhjrfhgyywgmarcxvnpoialwr` int DEFAULT NULL,\n `sccypdrhajqyiztbsfhryqhjtgryruji` int DEFAULT NULL,\n `oopzjdizcdtibhgbzhuxjbhhqykpnrrh` int DEFAULT NULL,\n `xnslifatydxtgfwupztuakjpnmbiqoyv` int DEFAULT NULL,\n `aypnrkzgnkqmxbukjwgddqresrqgszry` int DEFAULT NULL,\n `uhytdxkoztywgeuowxfglbkhcdtozqjb` int DEFAULT NULL,\n `yfuurtiapzgsdtkcqesuatitdzkcpudd` int DEFAULT NULL,\n `rhyotrcfzjubmpjtphoanlzmjphygitg` int DEFAULT NULL,\n `hdbgkumjxfpocrilnligitwnvfohyiei` int DEFAULT NULL,\n `ycgwuuogxpzeqbggwwfgqpinukzjmxma` int DEFAULT NULL,\n `nnefeqbhnngkmyfkmzlgorjhhxikdwcs` int DEFAULT NULL,\n `onzkiswnfsckyqdffqgepyovanamcqak` int DEFAULT NULL,\n `hiuayaqzqfeegztzylncpasfldimrjsj` int DEFAULT NULL,\n `yisgqjqizsajlfwxholyhpergwtmhgex` int DEFAULT NULL,\n `kbmubxpwxphdbblxusirfkmlwmjdgvwy` int DEFAULT NULL,\n `kqylsoqhwcdwqomeceplcdbeahjpinse` int DEFAULT NULL,\n `kskfwjvolabngicetxarhkctsyotrqxs` int DEFAULT NULL,\n `yprdlrxbnrunpiivkpqsnnaiqbiidxui` int DEFAULT NULL,\n `gxnrmuntwffozbxpalgazsgixrzrxiqw` int DEFAULT NULL,\n `lxlpnllvvbzdemxodfkfutdmllvbxfhs` int DEFAULT NULL,\n `wqyygiknxalegptzxdcagzltsewnzafi` int DEFAULT NULL,\n `hcwqcofyrevskhdigsbypuohrydpmywv` int DEFAULT NULL,\n `pfnwgeqynctfrngssenoycoelxhreioe` int DEFAULT NULL,\n `lormcsirytfhwxdqkzersruvmeyowzat` int DEFAULT NULL,\n `hamcbmrlwdmavcgboqohajvywjpyakpk` int DEFAULT NULL,\n `vzlnfqpdvecjvwrpweypbjyiditiulsa` int DEFAULT NULL,\n `cvxzfesipscedyegtjxeexjnzeqnefpu` int DEFAULT NULL,\n `rhhtcellnyknaradhhptrmkehvpxfuah` int DEFAULT NULL,\n `zyolbwlftzwehzhntsraatuoblrcxtxh` int DEFAULT NULL,\n `ixlqbbidvootkryhhhduipbuvuuytkrh` int DEFAULT NULL,\n `awqgqpzngfxsxeueuttcvwwmmhcfcwfg` int DEFAULT NULL,\n `cvmsgkatmtgvpdcoqwpwguiblzaubffl` int DEFAULT NULL,\n `stktprlqlkzjroqqyqlosguflbuakmhm` int DEFAULT NULL,\n `gwphofmcwegqbktpigxtqppmrwifvomb` int DEFAULT NULL,\n `blgwdkkwlnpspqnpfrmcthxfuqofhere` int DEFAULT NULL,\n `oakdlnomkzcvzpvswmlupekgdqxkkamv` int DEFAULT NULL,\n `oqqavkjxryuyudotviqdsvkzkmexkgpt` int DEFAULT NULL,\n `vbiyzsnkjclffygfycigyduiorynxxnv` int DEFAULT NULL,\n `ivtjglqymihivjstxibhywjsasgvkmjy` int DEFAULT NULL,\n `rkawijnghaufysyypvxosqaxhyijjrsr` int DEFAULT NULL,\n `mjmhnvrhefflqtupqlziqdxeibkcfndk` int DEFAULT NULL,\n `ikyphluecwqmsnujfhxceyerafftusqi` int DEFAULT NULL,\n `jdwrjbnxersvoiawpzgncmzwythlslst` int DEFAULT NULL,\n `cowutphtickvyaduudrbjhslcoldbcji` int DEFAULT NULL,\n `lwrwgbzwfxlpvpsmxtwmqqdtbjocwpil` int DEFAULT NULL,\n `svjngwihpckozwcyrkwzxvpzllydvrye` int DEFAULT NULL,\n `vntsfxzptwzunihpsvqgisbkwrpsjdzq` int DEFAULT NULL,\n `bwcspmjdtexolhgixnhcqdnanarrktca` int DEFAULT NULL,\n `mmufsixuhhpanmuejygfwoiygkqzonrv` int DEFAULT NULL,\n `csqfwepucymozmsxelhgzlwsoncmnpok` int DEFAULT NULL,\n `zfdkvxzhwkxhkofqwtvpqolxrwwktnih` int DEFAULT NULL,\n `bxanninndpombseheqwkgcesuvbtuqqa` int DEFAULT NULL,\n `lpmksdnqufnaomngmjdmqbehbvpksoed` int DEFAULT NULL,\n `dgpyufiubxdsczhicjvmkcefdhlqsaho` int DEFAULT NULL,\n `snkoalkarsxdczbcbtydnjpdgffkeulj` int DEFAULT NULL,\n `upzbnxgdoofqfzcnanwtvgnnnararjpx` int DEFAULT NULL,\n `fccwesicnefcykeuyvdukpsqywdbcsyw` int DEFAULT NULL,\n `cfuqpdzptscmlbraykfqpxbcbqnixnbv` int DEFAULT NULL,\n `btlnedqabdlogfsybxrflchcngniydad` int DEFAULT NULL,\n `vkdfpnxthouxwjfxfbunzieomnjmxwde` int DEFAULT NULL,\n `olpyvrtpbiercvgqkfjpmundevocjcqw` int DEFAULT NULL,\n `qytcfsuchltkpllfvwqlczyjkschiusy` int DEFAULT NULL,\n `cydnubzoslrpdpybflvleaucxbwsvfop` int DEFAULT NULL,\n `yexahtcelhgvfxqeqfushzeuilabmazw` int DEFAULT NULL,\n PRIMARY KEY (`xrtreixvlialqwqdjxovbnzwnyvakbjj`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"kfixdbsknznmfkubbmksyozpamncervh\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["xrtreixvlialqwqdjxovbnzwnyvakbjj"],"columns":[{"name":"xrtreixvlialqwqdjxovbnzwnyvakbjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"xiewjjmsnysivixlhzpnpgaagjvrpolr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgqxxrmdigbzoisszntpnmlnvodpdpdb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vnpxamiotwfefjwsqovbymqnvaptqxgf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqqjfsxkdquxdjjusenjcaccjlzduhwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icgiqxnecxmfinibvsoutnierzzdxcxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxcxagyskxtdmxiappqnudyaohevzjyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zimejnjrzwzzlmilacsehccywovicwws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjhkqqrmykycfapfafkvpvwjvnfonllz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dnfwnpivocksyswszolhppjrfjhmpiot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqcdghsyuehmnlbnpazniihsnohvjazt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"entslmchtzdbinalfganseqbbffbfwam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yskqtxnhnuvlislztpbpiosfosjmkmmr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkefgtisaynlzkmciykljshowgiqleii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqqvftbpkwfwjsabmpvdobpzvmpuamjq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drqmxphnknipmzdijqwzxhuemwrbibvn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfbozwwzruzqwcknsibqwmgbetzoaslj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gscpwwgggmidqccxynqduqrscehbirkt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wtxdpdayvphqwhaqpspjaugericwgobu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwmgadpdtsppzvoetnfggtegdjzabxne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvtqrpopiocnedqqnpcfqgjohqjdcevb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbuqalxveobkjazvbsxefqbqjojzumwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"faufgskliatjbsykgwmqfbhkwvrrjebz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yoczfxpflhxohapyiuwcorjuxyxxktsn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vwlejjyphtxxlactypjcihwewnhhjnwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojuxbvnzzaabwvusmwrjfaaugxbjxihf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"coqtiqgxriyxwzwpwxdkhlwfiihsazpp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkaiepsygivzxlrkrodjlirzyurxnmcu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jpcppqpplwwqyzykstkkqljapczrolqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flvwtweegfbrswgvlhyrrunrehokpiie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebmyzwgpijpjiejylduzeuwckqjeimdd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uarzvtgljhjczcrjkexwxnfxpoptibsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fuaqowrslgbrzqyymjiakwbhteyflbhs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"izvxsvmwzpuhshrdstayomjrvocmlnfm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kajyroviaburchschsorvskwpkfdfnkz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwtjkcumainteshpxbgcxpwcqirgjuhv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfdurrwyhjrfhgyywgmarcxvnpoialwr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sccypdrhajqyiztbsfhryqhjtgryruji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oopzjdizcdtibhgbzhuxjbhhqykpnrrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnslifatydxtgfwupztuakjpnmbiqoyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aypnrkzgnkqmxbukjwgddqresrqgszry","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhytdxkoztywgeuowxfglbkhcdtozqjb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfuurtiapzgsdtkcqesuatitdzkcpudd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhyotrcfzjubmpjtphoanlzmjphygitg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdbgkumjxfpocrilnligitwnvfohyiei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ycgwuuogxpzeqbggwwfgqpinukzjmxma","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nnefeqbhnngkmyfkmzlgorjhhxikdwcs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"onzkiswnfsckyqdffqgepyovanamcqak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hiuayaqzqfeegztzylncpasfldimrjsj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yisgqjqizsajlfwxholyhpergwtmhgex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kbmubxpwxphdbblxusirfkmlwmjdgvwy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kqylsoqhwcdwqomeceplcdbeahjpinse","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kskfwjvolabngicetxarhkctsyotrqxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yprdlrxbnrunpiivkpqsnnaiqbiidxui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gxnrmuntwffozbxpalgazsgixrzrxiqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxlpnllvvbzdemxodfkfutdmllvbxfhs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqyygiknxalegptzxdcagzltsewnzafi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hcwqcofyrevskhdigsbypuohrydpmywv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pfnwgeqynctfrngssenoycoelxhreioe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lormcsirytfhwxdqkzersruvmeyowzat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hamcbmrlwdmavcgboqohajvywjpyakpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vzlnfqpdvecjvwrpweypbjyiditiulsa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvxzfesipscedyegtjxeexjnzeqnefpu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhhtcellnyknaradhhptrmkehvpxfuah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zyolbwlftzwehzhntsraatuoblrcxtxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixlqbbidvootkryhhhduipbuvuuytkrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awqgqpzngfxsxeueuttcvwwmmhcfcwfg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvmsgkatmtgvpdcoqwpwguiblzaubffl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"stktprlqlkzjroqqyqlosguflbuakmhm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gwphofmcwegqbktpigxtqppmrwifvomb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blgwdkkwlnpspqnpfrmcthxfuqofhere","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oakdlnomkzcvzpvswmlupekgdqxkkamv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqqavkjxryuyudotviqdsvkzkmexkgpt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbiyzsnkjclffygfycigyduiorynxxnv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivtjglqymihivjstxibhywjsasgvkmjy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkawijnghaufysyypvxosqaxhyijjrsr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjmhnvrhefflqtupqlziqdxeibkcfndk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikyphluecwqmsnujfhxceyerafftusqi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdwrjbnxersvoiawpzgncmzwythlslst","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cowutphtickvyaduudrbjhslcoldbcji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwrwgbzwfxlpvpsmxtwmqqdtbjocwpil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"svjngwihpckozwcyrkwzxvpzllydvrye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vntsfxzptwzunihpsvqgisbkwrpsjdzq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bwcspmjdtexolhgixnhcqdnanarrktca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmufsixuhhpanmuejygfwoiygkqzonrv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"csqfwepucymozmsxelhgzlwsoncmnpok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zfdkvxzhwkxhkofqwtvpqolxrwwktnih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bxanninndpombseheqwkgcesuvbtuqqa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lpmksdnqufnaomngmjdmqbehbvpksoed","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgpyufiubxdsczhicjvmkcefdhlqsaho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"snkoalkarsxdczbcbtydnjpdgffkeulj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upzbnxgdoofqfzcnanwtvgnnnararjpx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fccwesicnefcykeuyvdukpsqywdbcsyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfuqpdzptscmlbraykfqpxbcbqnixnbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"btlnedqabdlogfsybxrflchcngniydad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkdfpnxthouxwjfxfbunzieomnjmxwde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"olpyvrtpbiercvgqkfjpmundevocjcqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qytcfsuchltkpllfvwqlczyjkschiusy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cydnubzoslrpdpybflvleaucxbwsvfop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yexahtcelhgvfxqeqfushzeuilabmazw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669031,"databaseName":"models_schema","ddl":"CREATE TABLE `kftwodjtxilhqupkceqeadajangtxxfg` (\n `jsivmqiklvkmmwynhncuidcobicwzriw` int NOT NULL,\n `ssfbcvsiiqyukjqedcohrhucfwpjvbvc` int DEFAULT NULL,\n `ebhzjngmocvpqrwhyskkwtvtepfuvsad` int DEFAULT NULL,\n `qowjqscldmpmrtlhyhleohrzejiyhddf` int DEFAULT NULL,\n `ybrkqmpaytvwbhwqeerfzcspoblfhito` int DEFAULT NULL,\n `xikzpdbvybmgrigwvysvpadqhsvrumgb` int DEFAULT NULL,\n `twhdnkgluxqtdbfrzcuesppuckekigez` int DEFAULT NULL,\n `vbanoqwnpbtymhomkcmvxexyecpagvif` int DEFAULT NULL,\n `ibgqwlqcztpbiizfgqqitmhmvpneeziu` int DEFAULT NULL,\n `vfcfywprzumaphnwxkocakvfgbagtxjz` int DEFAULT NULL,\n `xiiaoadxbmroaebwnlbgiknpnprhezkg` int DEFAULT NULL,\n `phlvbtyovxdeobwgvznhtwrgrdmjpenz` int DEFAULT NULL,\n `aptxnjpozqmpufdhabimgatrwrjzbney` int DEFAULT NULL,\n `iacntyrjpxwfsikyzfvsedcphpuxxvsz` int DEFAULT NULL,\n `perrznclmdtfbajwpolpvlzwkreowyco` int DEFAULT NULL,\n `toxgznxhsxngrcgxenyvdwnzarvofazq` int DEFAULT NULL,\n `ibcqzvlrtxlrlfovcxakmlnnwvgorbut` int DEFAULT NULL,\n `kyvpxsrakphseurvmjybtoyfsaueerxo` int DEFAULT NULL,\n `hxfvezlzjcdtptlvpcplgngedwdtznov` int DEFAULT NULL,\n `qfqfnunxrasciyfwriiafzvrkghjbume` int DEFAULT NULL,\n `fekzclvlsqtvqabckqiyjinqadauyath` int DEFAULT NULL,\n `lgouhoezcqahngaeekdvzzdanudjwhxy` int DEFAULT NULL,\n `ldlwdogqexiuxkrvdgviqlvhpmnvekte` int DEFAULT NULL,\n `hssrvwqdhxiujiioxynyaftbobfafjxa` int DEFAULT NULL,\n `nzjfqbvfjkbekugodmduygkupxoookif` int DEFAULT NULL,\n `ljklizgkkwzyqwmuagxlkuccmqonslyz` int DEFAULT NULL,\n `kyjpjtvsvrbjfupmjgpuljhlmgjyykgf` int DEFAULT NULL,\n `ctajswbsoyfjlbimklruuwmnurtmksjk` int DEFAULT NULL,\n `demdpqezhygygwgcnilhbkyfyvrogfsm` int DEFAULT NULL,\n `wzbbwpzvqqmmigtxrdlwhlhuechktpmf` int DEFAULT NULL,\n `sdojvercolnlfaxvtrqpmnoofjcgihzb` int DEFAULT NULL,\n `klhnxkyrulaefudxdbqychuxacwnvvye` int DEFAULT NULL,\n `jmesjytqatwdheglfntqtofalzxzbmuf` int DEFAULT NULL,\n `xbqihualfviazlwgsfgupzetumsfaejk` int DEFAULT NULL,\n `ztzbjqfvmhzhqahnlaslcsnlfjsmckbj` int DEFAULT NULL,\n `orvhdazjbixbjvgcezioancoljqyaywh` int DEFAULT NULL,\n `bnsbqnehvzzvoytaysowgqoyxfyepevd` int DEFAULT NULL,\n `zmpjnwparwhwpedxfnfdvgtpecnhqott` int DEFAULT NULL,\n `dgerzexifdzlckcjuaoledpxpakivolf` int DEFAULT NULL,\n `xcwkmndxmwqbiodoxbpxxbataydcepbk` int DEFAULT NULL,\n `xkoenykbxzthepftqbudiguvocokcmxw` int DEFAULT NULL,\n `xpeaquapawksrkfsxktuwmzxlbwnvhvs` int DEFAULT NULL,\n `dndhsvtbfcedqzimdrvlhjqtgeerqlfz` int DEFAULT NULL,\n `cjazkrgoydjkpmssldametzsjvvzlxaa` int DEFAULT NULL,\n `kpyvrpmamitdyluwdccwfcxenminmhot` int DEFAULT NULL,\n `fnwqarmylikuasdoutbhemshhwsusvwz` int DEFAULT NULL,\n `tlwvzivwmctwvsydledrfqjbxdfvntjj` int DEFAULT NULL,\n `ryomngkynhcmripmsvxkoxsjswfequda` int DEFAULT NULL,\n `acwkmoavlykhwbboyebcxhwuozaafsmw` int DEFAULT NULL,\n `vawpnbzaoxebemnkifkhfoaeqpciqxbs` int DEFAULT NULL,\n `nmltgrovcpazbbuboubznmkcttjgzaqi` int DEFAULT NULL,\n `mtxqojddwvprkbzqsyeyywoqwwrrxarl` int DEFAULT NULL,\n `kpudxywepiyxgkzegrftxfktgpsnteqj` int DEFAULT NULL,\n `bdpvyvysfpnmlcgaizvbspbeknututgu` int DEFAULT NULL,\n `uarchuzkqhgbobgqqyczvwyxccbxswvc` int DEFAULT NULL,\n `graqrhoqbcdsudcdzvywgecjdiopjlkb` int DEFAULT NULL,\n `ysblsrkzfhpxnhevyrqhpuidcxplworj` int DEFAULT NULL,\n `glejlatsajlskomfwrmjosumerfauuqf` int DEFAULT NULL,\n `aupmtmozdfptjqpnpcblaedslpxexews` int DEFAULT NULL,\n `bihecvpxinrtmwmugajyjotjxdprwyxz` int DEFAULT NULL,\n `pwdlbpixjpohseelqbhylcmkmezcqvkf` int DEFAULT NULL,\n `zzapysxwnwepmnwxsshvdbdcgcgleglh` int DEFAULT NULL,\n `nspxrbkkudbvghcmhmcwvsucgmkfczbw` int DEFAULT NULL,\n `trhatqflqdgrsuzsvbmgjmzzyljyoawz` int DEFAULT NULL,\n `zvgosvsncgriwxbpmxpufnxkaeatuuog` int DEFAULT NULL,\n `nlmvnkbunznvukbilwnjolzetfnooier` int DEFAULT NULL,\n `zwaihbdlloyyuitqiqndbgrgyxslxddi` int DEFAULT NULL,\n `mkjrzgztqjdfkakhpydgsyoumlqhfmmj` int DEFAULT NULL,\n `evklnsgrtizlabxcmruyzegljercwwmv` int DEFAULT NULL,\n `eisxyjprpcuyuegsdvklpkzqyongtyoj` int DEFAULT NULL,\n `heqbamubsgzufhknoghpqtdfwbtxykuz` int DEFAULT NULL,\n `rogzerohgxwugqprxsjglxjrsvwsaabt` int DEFAULT NULL,\n `rqbxcqjdjtrhyvkfonswblpthcssxdtp` int DEFAULT NULL,\n `dgktdlgjanpltvjqnyazwirajdqbxctr` int DEFAULT NULL,\n `hdefpeufmazjydjgzxbipweyszazmxrk` int DEFAULT NULL,\n `brumcomhirjtafxqasurandyvexhvcxo` int DEFAULT NULL,\n `cqpxkoqbrkdgftvwsbmuqdaylfpnjaeq` int DEFAULT NULL,\n `orhqbpevgnzvjdnaatytlukocikqfssp` int DEFAULT NULL,\n `rjfzortffhmtgjdxubrqathddujdymna` int DEFAULT NULL,\n `unzfztnwxnnguvpyzgbmfwhmkjkvqvyv` int DEFAULT NULL,\n `drsuipqlcppzvaaxfadjjffuhrnhfdil` int DEFAULT NULL,\n `axlepfvyqqquogbuameghmmiuznvxkoi` int DEFAULT NULL,\n `ijkdppldttarazpeppsyatifucintroz` int DEFAULT NULL,\n `zqltfgacfaunmsqatcisjghgdzjcrcwk` int DEFAULT NULL,\n `ccakrymadhoosoiaiznkdicufgfnyyro` int DEFAULT NULL,\n `wkejiddvotcryzhxzvynpsplcumxwgra` int DEFAULT NULL,\n `odmtllqdzfrruxiypjyipzjvqjvipnpv` int DEFAULT NULL,\n `pamnzlvsuzawrcyicuibmrxecbfomguj` int DEFAULT NULL,\n `wbbpuyvtnfrqunhejnmvnyhyzwuyaaoi` int DEFAULT NULL,\n `llyrstwrkibfcofihvnswbbstwfvrnnk` int DEFAULT NULL,\n `phwfiqdwmngipdcythwhtocclomcyhgr` int DEFAULT NULL,\n `nxmoudiwgfnroquwucbbtbxtrbwelyof` int DEFAULT NULL,\n `lymnfmeedmfhqbeinkoeiahjainkqmpq` int DEFAULT NULL,\n `ddegvvaxjweyujpvpeurcnjqaqvcxlhk` int DEFAULT NULL,\n `osbrryqyxepprlvwkvutpnvhyxrsxoox` int DEFAULT NULL,\n `yckpaofgjzmlpoflelpdpfupnwmcjxei` int DEFAULT NULL,\n `cathqqciqbhedhjqpmosicqstovfemvt` int DEFAULT NULL,\n `nudoavgvcgwlgsfwhlkeglhbfxoobblh` int DEFAULT NULL,\n `pramrukaaxwoahdxywtzqutdzchgnzwg` int DEFAULT NULL,\n `agukaynvovhiahunozcaycsdxujydngd` int DEFAULT NULL,\n PRIMARY KEY (`jsivmqiklvkmmwynhncuidcobicwzriw`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"kftwodjtxilhqupkceqeadajangtxxfg\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["jsivmqiklvkmmwynhncuidcobicwzriw"],"columns":[{"name":"jsivmqiklvkmmwynhncuidcobicwzriw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"ssfbcvsiiqyukjqedcohrhucfwpjvbvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebhzjngmocvpqrwhyskkwtvtepfuvsad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qowjqscldmpmrtlhyhleohrzejiyhddf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ybrkqmpaytvwbhwqeerfzcspoblfhito","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xikzpdbvybmgrigwvysvpadqhsvrumgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twhdnkgluxqtdbfrzcuesppuckekigez","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbanoqwnpbtymhomkcmvxexyecpagvif","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibgqwlqcztpbiizfgqqitmhmvpneeziu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vfcfywprzumaphnwxkocakvfgbagtxjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xiiaoadxbmroaebwnlbgiknpnprhezkg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phlvbtyovxdeobwgvznhtwrgrdmjpenz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aptxnjpozqmpufdhabimgatrwrjzbney","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iacntyrjpxwfsikyzfvsedcphpuxxvsz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"perrznclmdtfbajwpolpvlzwkreowyco","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"toxgznxhsxngrcgxenyvdwnzarvofazq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibcqzvlrtxlrlfovcxakmlnnwvgorbut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kyvpxsrakphseurvmjybtoyfsaueerxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hxfvezlzjcdtptlvpcplgngedwdtznov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfqfnunxrasciyfwriiafzvrkghjbume","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fekzclvlsqtvqabckqiyjinqadauyath","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgouhoezcqahngaeekdvzzdanudjwhxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ldlwdogqexiuxkrvdgviqlvhpmnvekte","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hssrvwqdhxiujiioxynyaftbobfafjxa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzjfqbvfjkbekugodmduygkupxoookif","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljklizgkkwzyqwmuagxlkuccmqonslyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kyjpjtvsvrbjfupmjgpuljhlmgjyykgf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctajswbsoyfjlbimklruuwmnurtmksjk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"demdpqezhygygwgcnilhbkyfyvrogfsm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzbbwpzvqqmmigtxrdlwhlhuechktpmf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdojvercolnlfaxvtrqpmnoofjcgihzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"klhnxkyrulaefudxdbqychuxacwnvvye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmesjytqatwdheglfntqtofalzxzbmuf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbqihualfviazlwgsfgupzetumsfaejk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ztzbjqfvmhzhqahnlaslcsnlfjsmckbj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orvhdazjbixbjvgcezioancoljqyaywh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnsbqnehvzzvoytaysowgqoyxfyepevd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmpjnwparwhwpedxfnfdvgtpecnhqott","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgerzexifdzlckcjuaoledpxpakivolf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xcwkmndxmwqbiodoxbpxxbataydcepbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkoenykbxzthepftqbudiguvocokcmxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xpeaquapawksrkfsxktuwmzxlbwnvhvs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dndhsvtbfcedqzimdrvlhjqtgeerqlfz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cjazkrgoydjkpmssldametzsjvvzlxaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kpyvrpmamitdyluwdccwfcxenminmhot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnwqarmylikuasdoutbhemshhwsusvwz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlwvzivwmctwvsydledrfqjbxdfvntjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ryomngkynhcmripmsvxkoxsjswfequda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"acwkmoavlykhwbboyebcxhwuozaafsmw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vawpnbzaoxebemnkifkhfoaeqpciqxbs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmltgrovcpazbbuboubznmkcttjgzaqi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtxqojddwvprkbzqsyeyywoqwwrrxarl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kpudxywepiyxgkzegrftxfktgpsnteqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bdpvyvysfpnmlcgaizvbspbeknututgu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uarchuzkqhgbobgqqyczvwyxccbxswvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"graqrhoqbcdsudcdzvywgecjdiopjlkb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ysblsrkzfhpxnhevyrqhpuidcxplworj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"glejlatsajlskomfwrmjosumerfauuqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aupmtmozdfptjqpnpcblaedslpxexews","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bihecvpxinrtmwmugajyjotjxdprwyxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwdlbpixjpohseelqbhylcmkmezcqvkf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzapysxwnwepmnwxsshvdbdcgcgleglh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nspxrbkkudbvghcmhmcwvsucgmkfczbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"trhatqflqdgrsuzsvbmgjmzzyljyoawz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvgosvsncgriwxbpmxpufnxkaeatuuog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nlmvnkbunznvukbilwnjolzetfnooier","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zwaihbdlloyyuitqiqndbgrgyxslxddi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkjrzgztqjdfkakhpydgsyoumlqhfmmj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evklnsgrtizlabxcmruyzegljercwwmv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eisxyjprpcuyuegsdvklpkzqyongtyoj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"heqbamubsgzufhknoghpqtdfwbtxykuz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rogzerohgxwugqprxsjglxjrsvwsaabt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqbxcqjdjtrhyvkfonswblpthcssxdtp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgktdlgjanpltvjqnyazwirajdqbxctr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdefpeufmazjydjgzxbipweyszazmxrk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"brumcomhirjtafxqasurandyvexhvcxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqpxkoqbrkdgftvwsbmuqdaylfpnjaeq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orhqbpevgnzvjdnaatytlukocikqfssp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjfzortffhmtgjdxubrqathddujdymna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unzfztnwxnnguvpyzgbmfwhmkjkvqvyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drsuipqlcppzvaaxfadjjffuhrnhfdil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axlepfvyqqquogbuameghmmiuznvxkoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijkdppldttarazpeppsyatifucintroz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqltfgacfaunmsqatcisjghgdzjcrcwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ccakrymadhoosoiaiznkdicufgfnyyro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wkejiddvotcryzhxzvynpsplcumxwgra","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"odmtllqdzfrruxiypjyipzjvqjvipnpv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pamnzlvsuzawrcyicuibmrxecbfomguj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbbpuyvtnfrqunhejnmvnyhyzwuyaaoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llyrstwrkibfcofihvnswbbstwfvrnnk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phwfiqdwmngipdcythwhtocclomcyhgr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxmoudiwgfnroquwucbbtbxtrbwelyof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lymnfmeedmfhqbeinkoeiahjainkqmpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ddegvvaxjweyujpvpeurcnjqaqvcxlhk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"osbrryqyxepprlvwkvutpnvhyxrsxoox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yckpaofgjzmlpoflelpdpfupnwmcjxei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cathqqciqbhedhjqpmosicqstovfemvt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nudoavgvcgwlgsfwhlkeglhbfxoobblh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pramrukaaxwoahdxywtzqutdzchgnzwg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agukaynvovhiahunozcaycsdxujydngd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669061,"databaseName":"models_schema","ddl":"CREATE TABLE `kgeadtdnymxzvfhjvvodgeoxonwagwll` (\n `trzmxekaguqekzyoucmzroqaqswbksug` int NOT NULL,\n `kpuorhlwxpghnchaakxiyuwtxidfkmdc` int DEFAULT NULL,\n `jjnsctwfjweqzhhjtkavrnmufexcxigr` int DEFAULT NULL,\n `nwujhvaphahaogjqqurdudpjngnzpmoy` int DEFAULT NULL,\n `kfabrkrifsrfiyxzjrsicpvfgsvuhqim` int DEFAULT NULL,\n `ayeyqvacuknnnvrvrumbstqmjqswknpv` int DEFAULT NULL,\n `mcltpfagrfeiaomicszeujnylkxsjcrf` int DEFAULT NULL,\n `zmdiktcyhcbefzygareinwkaxpemgwrr` int DEFAULT NULL,\n `rsqnzeuqhffaehxhodgpdrdseyeclphv` int DEFAULT NULL,\n `gdqfkyrjdpfzsnfumnaayprxsqnoglli` int DEFAULT NULL,\n `enddmoweeaoohasacvlutyxxycbdghsq` int DEFAULT NULL,\n `sugguztavtmspgkfclahdrearpbxxrev` int DEFAULT NULL,\n `wsfzcqlhawxzmcwafcifkhpqfsxfdqxc` int DEFAULT NULL,\n `vxoguwvvrxbgxvimvakjegadgldkwuqu` int DEFAULT NULL,\n `cgayjvzvczrllyzvubqdenkphysjlllr` int DEFAULT NULL,\n `rgkwqgncaoskknupfjkhkryegrhzsoxs` int DEFAULT NULL,\n `tqbmxylypxomxquoivjuxuzewpgxvout` int DEFAULT NULL,\n `bzgtstpdoessfdtiphoawrwftvpszkjt` int DEFAULT NULL,\n `olyhsdoeihceolzqyfijvbcubgphxjlu` int DEFAULT NULL,\n `gqnntcmeyxckeyfcbbqnvsgbpjlwaanc` int DEFAULT NULL,\n `nlofftuisyuwsegwswuxryhqwhiroqju` int DEFAULT NULL,\n `durkwcsqpgnacksahlqemuazkjdeyztj` int DEFAULT NULL,\n `nvlcpprsbuprixhydtmiwmmtjkksrkhr` int DEFAULT NULL,\n `gazaxewrpooxmsmzluoxsrwhpiqpabts` int DEFAULT NULL,\n `kvhppxibpxbnneiukqbrirwylgqnyyzw` int DEFAULT NULL,\n `wzaeddngayigvjxhuvxnnqgrdiucowxo` int DEFAULT NULL,\n `btszgdjfblcdkhwbjtobohcpqjbwcrbe` int DEFAULT NULL,\n `fngnfinjjkgtqkakszcjryksbtmlhzly` int DEFAULT NULL,\n `lqkxohcwhrjbjqnwoxzqctfshsgcpsdn` int DEFAULT NULL,\n `umnackinazuzgmafqkpcssrkdmgvhfhj` int DEFAULT NULL,\n `nushuxpihapggpxqtfcbhmgmcbnhbeiw` int DEFAULT NULL,\n `dlhqscksmhwojkehsksrcyrehfdjplgl` int DEFAULT NULL,\n `uncemvqhcullqgkvnsghwpqglalnbbob` int DEFAULT NULL,\n `oahzgghwkschsxxaawvtnffwprlqzncr` int DEFAULT NULL,\n `iqjsycnfbtrnfnznygzzxhhvkrsinmma` int DEFAULT NULL,\n `nlmtnrisfddtwcgbuzoinwglyghdtblc` int DEFAULT NULL,\n `lsrkwtabvaavthnxmbleaksiuyaznjsi` int DEFAULT NULL,\n `hpqyfivswtjphhwloetncuehgizztgiw` int DEFAULT NULL,\n `utodjrnbnmzkembmmbufartrjlkuldzm` int DEFAULT NULL,\n `gqyyyvtzmdwaazmaejcfmpbrjgbmvflf` int DEFAULT NULL,\n `evxxytimnykoeqqpjisdgnmjxqhyjrwg` int DEFAULT NULL,\n `oecftaeiofyactmoefbatflhfoefixow` int DEFAULT NULL,\n `jlxlpqxwezwqqvpdnwpstusaejiimuak` int DEFAULT NULL,\n `qalpuawypsyacksxnfsezffbqkmrgunp` int DEFAULT NULL,\n `ibhubtufmifyinkrewepugeqypvauawa` int DEFAULT NULL,\n `sbdhqqwjdzxoetedbzjozlqbxzmbstrr` int DEFAULT NULL,\n `dvqsoeseehglmzslqinhvviuuzvdxwuq` int DEFAULT NULL,\n `bbhivcsrylhxlsjcqjzfgjfcpzsduclj` int DEFAULT NULL,\n `oialkxykyeqapjerrvpaznfymfofmddv` int DEFAULT NULL,\n `tlfadntzojqqoczlnunxcaclkjlmabnb` int DEFAULT NULL,\n `sjhavoxypxgpcatbskbwxcrtheaxuibd` int DEFAULT NULL,\n `sbrpgyodtdzgdfkajencptsvxitaeknn` int DEFAULT NULL,\n `uxnfhonpeifdkcqzxovwmgqdlrugypkr` int DEFAULT NULL,\n `wwjgxyhtmgmjfcwqtmmjegyxzqrdvejn` int DEFAULT NULL,\n `bbriquouoyflefvyuismejhcyylkkkkb` int DEFAULT NULL,\n `giqcnjrshpgdcexsvsnkrwnleclopwsn` int DEFAULT NULL,\n `giippspiftmbebivsnjdqhfpygummcyi` int DEFAULT NULL,\n `zutipgfcmnjoutipsisricgqnemhbsev` int DEFAULT NULL,\n `jfjwehvgnjdlodzmkmgxugknudswasio` int DEFAULT NULL,\n `gprqzwuazeufewowdiarqrsusxmtkkui` int DEFAULT NULL,\n `zpxztfvguxqkjjbnvbjvqqymlvgxkyiu` int DEFAULT NULL,\n `zrrviqedroojcurijcxoawxfbmewtshl` int DEFAULT NULL,\n `fvpsvrmzjkwiaclpvpodtkpthxwxdxvt` int DEFAULT NULL,\n `ednbopgrnlkiwgzfrldnptfreljymwnk` int DEFAULT NULL,\n `yqfdziigzevmyzrwbfyjfnicelypoyde` int DEFAULT NULL,\n `mctrhoshvwjroovzkyixslhaweoyibxo` int DEFAULT NULL,\n `cufutzcaecaegycknqnsrtzwkajaxhma` int DEFAULT NULL,\n `xubgqwpzhxrglupqqxzawsspgbqoxiie` int DEFAULT NULL,\n `gmxkqeddrztoclikyzdqcdbpkwprrklq` int DEFAULT NULL,\n `zcggiynsxmfsgzkcfmuxejstlaagoiiq` int DEFAULT NULL,\n `wqtcrikiltitukigspyhbutnrvfoygbr` int DEFAULT NULL,\n `hackpnwhunxkgnkgaiibkmdctpihjycf` int DEFAULT NULL,\n `qilnlsniktpjacojnpfufcbvilvlhqbn` int DEFAULT NULL,\n `afvzaiaqvxyzkddwmbbpvytpyzlnhcmp` int DEFAULT NULL,\n `xhvjbqkesudrgiueczyyoxdjmyammexp` int DEFAULT NULL,\n `oyxhrsjsqcuudfhtqgnctebffoecaxqs` int DEFAULT NULL,\n `adutvcrijvhzpoxzasmejnriehkmyjor` int DEFAULT NULL,\n `cgoebszzaqmtsxlxseeuogyvcugtqvxu` int DEFAULT NULL,\n `ctuabhrmmamiqaiinudvmyixigkhhpdx` int DEFAULT NULL,\n `fnyrjhdthknixedhomwlysryniwaotjl` int DEFAULT NULL,\n `ajypchqjogauklngkxnrtphgzjqzehsz` int DEFAULT NULL,\n `lxozywekwwyzckwbzixnjhonkkbntaln` int DEFAULT NULL,\n `sowuylgbcfempksynduznbqyhcqvhmdy` int DEFAULT NULL,\n `bvszhepwwghzlyotvjmaxfscesmmjzyh` int DEFAULT NULL,\n `fsosetqtvogwuhimoajmjihtyxotkmws` int DEFAULT NULL,\n `icynbkqhuyfhsuqzifgrqysiwxneswbk` int DEFAULT NULL,\n `aluuuodvdrrlnuwmabethueijmmjbjcq` int DEFAULT NULL,\n `einhmgzkcqhfpgexrbwnzfeidtozqvrm` int DEFAULT NULL,\n `wjusittqsjyuqzihiuquedvoykfqoydr` int DEFAULT NULL,\n `uumqnfqndfifaqrqxrrygkflltmadrkg` int DEFAULT NULL,\n `sqfvbcqleoswpkypisquebnuhvhbjyok` int DEFAULT NULL,\n `gytirviqybirhjpbgctegrdezzhqnqdw` int DEFAULT NULL,\n `ceomvnmcwuodnhldlumnpbytkrxvpznt` int DEFAULT NULL,\n `ndercrflqxtgqsaqoasnukplvhlapiyc` int DEFAULT NULL,\n `dkordqiktsvgseekpubrjveuufyxtkpg` int DEFAULT NULL,\n `ohbjrbprmsackddglyevhzkvkjmwzbda` int DEFAULT NULL,\n `gfdelwcgqhseobxzmyvntvminwdecxyo` int DEFAULT NULL,\n `qccsrtqisvcoqgyhpmrljqfhltspojrk` int DEFAULT NULL,\n `cvbcvbkletosbtsnvsegnnydrzpktpok` int DEFAULT NULL,\n `pqeskqqfcuvmibzkgwpuaqjnctiqfoae` int DEFAULT NULL,\n PRIMARY KEY (`trzmxekaguqekzyoucmzroqaqswbksug`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"kgeadtdnymxzvfhjvvodgeoxonwagwll\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["trzmxekaguqekzyoucmzroqaqswbksug"],"columns":[{"name":"trzmxekaguqekzyoucmzroqaqswbksug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"kpuorhlwxpghnchaakxiyuwtxidfkmdc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjnsctwfjweqzhhjtkavrnmufexcxigr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nwujhvaphahaogjqqurdudpjngnzpmoy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfabrkrifsrfiyxzjrsicpvfgsvuhqim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ayeyqvacuknnnvrvrumbstqmjqswknpv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcltpfagrfeiaomicszeujnylkxsjcrf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmdiktcyhcbefzygareinwkaxpemgwrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rsqnzeuqhffaehxhodgpdrdseyeclphv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdqfkyrjdpfzsnfumnaayprxsqnoglli","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"enddmoweeaoohasacvlutyxxycbdghsq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sugguztavtmspgkfclahdrearpbxxrev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wsfzcqlhawxzmcwafcifkhpqfsxfdqxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxoguwvvrxbgxvimvakjegadgldkwuqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgayjvzvczrllyzvubqdenkphysjlllr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgkwqgncaoskknupfjkhkryegrhzsoxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqbmxylypxomxquoivjuxuzewpgxvout","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bzgtstpdoessfdtiphoawrwftvpszkjt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"olyhsdoeihceolzqyfijvbcubgphxjlu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqnntcmeyxckeyfcbbqnvsgbpjlwaanc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nlofftuisyuwsegwswuxryhqwhiroqju","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"durkwcsqpgnacksahlqemuazkjdeyztj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvlcpprsbuprixhydtmiwmmtjkksrkhr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gazaxewrpooxmsmzluoxsrwhpiqpabts","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvhppxibpxbnneiukqbrirwylgqnyyzw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzaeddngayigvjxhuvxnnqgrdiucowxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"btszgdjfblcdkhwbjtobohcpqjbwcrbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fngnfinjjkgtqkakszcjryksbtmlhzly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqkxohcwhrjbjqnwoxzqctfshsgcpsdn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umnackinazuzgmafqkpcssrkdmgvhfhj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nushuxpihapggpxqtfcbhmgmcbnhbeiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dlhqscksmhwojkehsksrcyrehfdjplgl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uncemvqhcullqgkvnsghwpqglalnbbob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oahzgghwkschsxxaawvtnffwprlqzncr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqjsycnfbtrnfnznygzzxhhvkrsinmma","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nlmtnrisfddtwcgbuzoinwglyghdtblc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lsrkwtabvaavthnxmbleaksiuyaznjsi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hpqyfivswtjphhwloetncuehgizztgiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utodjrnbnmzkembmmbufartrjlkuldzm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqyyyvtzmdwaazmaejcfmpbrjgbmvflf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evxxytimnykoeqqpjisdgnmjxqhyjrwg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oecftaeiofyactmoefbatflhfoefixow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlxlpqxwezwqqvpdnwpstusaejiimuak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qalpuawypsyacksxnfsezffbqkmrgunp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibhubtufmifyinkrewepugeqypvauawa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbdhqqwjdzxoetedbzjozlqbxzmbstrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvqsoeseehglmzslqinhvviuuzvdxwuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbhivcsrylhxlsjcqjzfgjfcpzsduclj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oialkxykyeqapjerrvpaznfymfofmddv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlfadntzojqqoczlnunxcaclkjlmabnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjhavoxypxgpcatbskbwxcrtheaxuibd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbrpgyodtdzgdfkajencptsvxitaeknn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxnfhonpeifdkcqzxovwmgqdlrugypkr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwjgxyhtmgmjfcwqtmmjegyxzqrdvejn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbriquouoyflefvyuismejhcyylkkkkb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"giqcnjrshpgdcexsvsnkrwnleclopwsn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"giippspiftmbebivsnjdqhfpygummcyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zutipgfcmnjoutipsisricgqnemhbsev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jfjwehvgnjdlodzmkmgxugknudswasio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gprqzwuazeufewowdiarqrsusxmtkkui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zpxztfvguxqkjjbnvbjvqqymlvgxkyiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zrrviqedroojcurijcxoawxfbmewtshl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fvpsvrmzjkwiaclpvpodtkpthxwxdxvt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ednbopgrnlkiwgzfrldnptfreljymwnk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqfdziigzevmyzrwbfyjfnicelypoyde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mctrhoshvwjroovzkyixslhaweoyibxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cufutzcaecaegycknqnsrtzwkajaxhma","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xubgqwpzhxrglupqqxzawsspgbqoxiie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmxkqeddrztoclikyzdqcdbpkwprrklq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zcggiynsxmfsgzkcfmuxejstlaagoiiq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqtcrikiltitukigspyhbutnrvfoygbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hackpnwhunxkgnkgaiibkmdctpihjycf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qilnlsniktpjacojnpfufcbvilvlhqbn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afvzaiaqvxyzkddwmbbpvytpyzlnhcmp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xhvjbqkesudrgiueczyyoxdjmyammexp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oyxhrsjsqcuudfhtqgnctebffoecaxqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"adutvcrijvhzpoxzasmejnriehkmyjor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgoebszzaqmtsxlxseeuogyvcugtqvxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctuabhrmmamiqaiinudvmyixigkhhpdx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnyrjhdthknixedhomwlysryniwaotjl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajypchqjogauklngkxnrtphgzjqzehsz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxozywekwwyzckwbzixnjhonkkbntaln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sowuylgbcfempksynduznbqyhcqvhmdy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvszhepwwghzlyotvjmaxfscesmmjzyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fsosetqtvogwuhimoajmjihtyxotkmws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icynbkqhuyfhsuqzifgrqysiwxneswbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aluuuodvdrrlnuwmabethueijmmjbjcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"einhmgzkcqhfpgexrbwnzfeidtozqvrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjusittqsjyuqzihiuquedvoykfqoydr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uumqnfqndfifaqrqxrrygkflltmadrkg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sqfvbcqleoswpkypisquebnuhvhbjyok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gytirviqybirhjpbgctegrdezzhqnqdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ceomvnmcwuodnhldlumnpbytkrxvpznt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ndercrflqxtgqsaqoasnukplvhlapiyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkordqiktsvgseekpubrjveuufyxtkpg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohbjrbprmsackddglyevhzkvkjmwzbda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfdelwcgqhseobxzmyvntvminwdecxyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qccsrtqisvcoqgyhpmrljqfhltspojrk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvbcvbkletosbtsnvsegnnydrzpktpok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqeskqqfcuvmibzkgwpuaqjnctiqfoae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669097,"databaseName":"models_schema","ddl":"CREATE TABLE `kgjyjbtpzshoafctbllepaalknrmhmzy` (\n `ykfozsivykbdsxpqbbwnozsfctwdfvtj` int NOT NULL,\n `cdtyvuqpubpgypqygivitrvhvblfdkrq` int DEFAULT NULL,\n `jvuzkrgvtncodotepixnrmbexkexjaqx` int DEFAULT NULL,\n `qxvlxgtgpizbywzebjiehcjiiutaqmly` int DEFAULT NULL,\n `alheysaqhkhzsrtvcwguormjdlpehrhk` int DEFAULT NULL,\n `osdgqifrchkdczyhqzdhjqksdlikoyat` int DEFAULT NULL,\n `wwepaarauoskpdbczoczxlphmpqwdeqf` int DEFAULT NULL,\n `fccjhbigthifomyklkjwjsejwrcnjgvp` int DEFAULT NULL,\n `aehgtlkhczmbbhihyrdovanwclqrjemj` int DEFAULT NULL,\n `uozqtbhwclnsffjhzaqueuchjrzkdkkw` int DEFAULT NULL,\n `tdtncyigogzxbjpkxvfavkcsluwtlkkw` int DEFAULT NULL,\n `ruxdslqdabtzimukltmydwhztxqshkmx` int DEFAULT NULL,\n `hxweqkyfmolugsmmbnijbamhxfyfwkmw` int DEFAULT NULL,\n `jprrxtqainbpyodoefuyylcrcjcfgrmu` int DEFAULT NULL,\n `zgimeyyefppksbxkfzxjwklqrxpfieuz` int DEFAULT NULL,\n `ouyquumrpsktndpdmijnqlzqtputevur` int DEFAULT NULL,\n `yjerqtfbdjsmfdhtmvusgwehqdnwhtks` int DEFAULT NULL,\n `fhulzanzrcxklrmljurqppcbexrxaofi` int DEFAULT NULL,\n `basbkjmqowcapcqsmvqnoyetubapumib` int DEFAULT NULL,\n `utowrndokitjbwlmqxrqlnyyhdfivkew` int DEFAULT NULL,\n `wtswlometccxmlkykmtpbnrtatirdcgi` int DEFAULT NULL,\n `olqbuyfurajtpyliaduzktvkqsfeklel` int DEFAULT NULL,\n `aybpsgzuyzflimucuzimjhtveleubtoc` int DEFAULT NULL,\n `wvybbivfhuwfzsboxcuhzwjzkyytefbg` int DEFAULT NULL,\n `veyuvffxoqqaxvcwwtozymhdgtfykipi` int DEFAULT NULL,\n `lhondfunrbzrxbjvzuftjdycryqxtpnx` int DEFAULT NULL,\n `huxuqgpcavkzybxvzyazfinalxqlpbqu` int DEFAULT NULL,\n `zddiyjuuprksprhocrfumsfwifxvfrhf` int DEFAULT NULL,\n `wibncirunjqstfgioccjtcwxvfblslqf` int DEFAULT NULL,\n `wsemkdruguqendoouyqoazqosmlxkleh` int DEFAULT NULL,\n `ktwwolagxidtlwramygwhuykeejhdacd` int DEFAULT NULL,\n `ltticajqgkfdtfwhdxqdwbbrkigkquvc` int DEFAULT NULL,\n `oxzxplhxklmauetrycfqnqomknnburiz` int DEFAULT NULL,\n `wjsalyxppysmpzxofocuaikmcvkmbziw` int DEFAULT NULL,\n `iptnzzdfweungiwpvwsdcritvqzgiawe` int DEFAULT NULL,\n `toirncfxuucgproaxveqtpsrbtohwklh` int DEFAULT NULL,\n `clojqxlkcpsctqtxydzouodciefqlfhf` int DEFAULT NULL,\n `bmcrqmwkvtbggbrlxmjfvkibupuslddc` int DEFAULT NULL,\n `cbaasuznysvgecrqyrisixoawisubyls` int DEFAULT NULL,\n `tprtftghjoxmvntffsafgzusobpyfvzg` int DEFAULT NULL,\n `fcgagpjkhabujbgvhhfgielaqmtcrhck` int DEFAULT NULL,\n `xzgfgruhqjhifjflorpmffnttlrgyhtv` int DEFAULT NULL,\n `wtqucnfoxjpcvvdbvcqihwlkqepwpgbk` int DEFAULT NULL,\n `rfaywdqwxhicopcmhlwwbmhuyulwedau` int DEFAULT NULL,\n `ouwkhzmyfvuaiisicrzmduxtkiictngv` int DEFAULT NULL,\n `qdfygdclhhcqtrmuatbahcvptyuveqid` int DEFAULT NULL,\n `sbyunaqkzmdkylzssaosxqjxrljvzchz` int DEFAULT NULL,\n `rukfmanumvdaukktomrdibgrwonxaatn` int DEFAULT NULL,\n `yuvnxdiltqdgkgspdrzczkgspytfbcjg` int DEFAULT NULL,\n `mogzlhexhwjpbkwioivfosykadxtngfh` int DEFAULT NULL,\n `rapehblzpqhghwcbgqaoxkottxtvfxts` int DEFAULT NULL,\n `lfkxoomwyjrahvukrsajnouxrcqguxhz` int DEFAULT NULL,\n `qgqeeyovxkjfyidbspkvxjbghbaomuna` int DEFAULT NULL,\n `fwjaisncbljfeiksvozfldyoilclveiy` int DEFAULT NULL,\n `usaegaumtafmnfxhdveilgvmktyrosrp` int DEFAULT NULL,\n `irtpahgsjzeaibrfhavzwzuujsfnkgtu` int DEFAULT NULL,\n `moedisqvbmjuvtlegepxxmdndaoyhwgw` int DEFAULT NULL,\n `tfbespmcybocfvztyxbfrlxbrnsgdivl` int DEFAULT NULL,\n `nxbfsmnnvzhzjrbmvpjxkymruoflpzdq` int DEFAULT NULL,\n `ukzraawvkzowekurpqobxnjaymsktasf` int DEFAULT NULL,\n `lcekrqlfkukzmfdnrqpqjdnygyxyfynl` int DEFAULT NULL,\n `qqulottedyyljalziswozfrrjhbmdqgm` int DEFAULT NULL,\n `pvecvklumiwejsmjdvzshnjhwvxeuaue` int DEFAULT NULL,\n `ncrqjpscmlajzyldjmedosivgbgntuuz` int DEFAULT NULL,\n `mskzxsvtoofzbvribqxalhpshroqvjhh` int DEFAULT NULL,\n `nfmxeabgbyxvhxzqywskyiqkefgrwzvz` int DEFAULT NULL,\n `wrxpepztnczydpcvkiohevlofddkpbwk` int DEFAULT NULL,\n `oefusigixwhqdlximnjhfltmralrpcos` int DEFAULT NULL,\n `onofddlhvyvtrcvjbaeprwziucfkuwrb` int DEFAULT NULL,\n `dcnrkpqsztldfsziwmizjjgehzqlzvno` int DEFAULT NULL,\n `wiuotxauiyjbnahagfngedwghfqpotzg` int DEFAULT NULL,\n `balonewrcysdgaasbrozosvzefzazjvj` int DEFAULT NULL,\n `kriwgaurjjhvzdlhlfqamdxgqywrukjd` int DEFAULT NULL,\n `ylriffqytmnlnmniuqqpxleiynnfdvwj` int DEFAULT NULL,\n `gzfhuzdaldqfuapftyyfgqnvzbzstlge` int DEFAULT NULL,\n `suqojzaqcwqfaylrxkdyjqjcmzbhrucf` int DEFAULT NULL,\n `hbwmddxnzvoyvawsgrqiyspsvbmlwipu` int DEFAULT NULL,\n `xkmfdafyhgzharjmuskwevwuhigvgokk` int DEFAULT NULL,\n `wemhetrjkohbffgvwdfhlwpvhgxqjxqu` int DEFAULT NULL,\n `zrwlpxjoenaddzfeshrggwvcfsmtlesw` int DEFAULT NULL,\n `jkkywrjlmixzvdmhgczlvwkbijvpovrw` int DEFAULT NULL,\n `oahsdejvowtsdwoajfnrwbkzgwczcbqy` int DEFAULT NULL,\n `rudcmqaebgqbuzihgjuyhzmvwzefiuic` int DEFAULT NULL,\n `kjxzywtplwczcmmnlmzwjyxmsjqmpwrh` int DEFAULT NULL,\n `puxgltsmaliuridjmlhguqwkmxeapnas` int DEFAULT NULL,\n `dnknreaumwmpovcvcqzyuadlydttocdu` int DEFAULT NULL,\n `wlwinedjghrlrtfgicmfgmuohfsghqqa` int DEFAULT NULL,\n `ydbbnbkqrhsrgyoyhxebfbtdawrkwufy` int DEFAULT NULL,\n `bfbfxncbuhwzjbmpoargvjghuulpdngi` int DEFAULT NULL,\n `kryzpncupjxxmbsxgonfjghxcmbynzln` int DEFAULT NULL,\n `qbtakpyegbcjvkvbppndltduxpaqdjvq` int DEFAULT NULL,\n `fjpicfvhahvrcmrtqhsxocrdqpywtvcd` int DEFAULT NULL,\n `uquissdxsbxbunkknmwcwsybydajzjvv` int DEFAULT NULL,\n `hfgwvkywcjvojsgstijdmupnodexjoye` int DEFAULT NULL,\n `muoeqmcawqzrbdosjpjywipireaffpuh` int DEFAULT NULL,\n `nlmjxdvmoecgaifvqwtlmrqwxcsdoqte` int DEFAULT NULL,\n `zmdlhiuqufdpmopgfvwcdftjihmkukgd` int DEFAULT NULL,\n `hhejboilivnppuadueozvppzjgpchksv` int DEFAULT NULL,\n `rwvjzhzloyjkwuwygjbxhcysbwrebsse` int DEFAULT NULL,\n `dliqqngavxopxrkeoxojcawvfbxuhirv` int DEFAULT NULL,\n PRIMARY KEY (`ykfozsivykbdsxpqbbwnozsfctwdfvtj`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"kgjyjbtpzshoafctbllepaalknrmhmzy\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["ykfozsivykbdsxpqbbwnozsfctwdfvtj"],"columns":[{"name":"ykfozsivykbdsxpqbbwnozsfctwdfvtj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"cdtyvuqpubpgypqygivitrvhvblfdkrq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvuzkrgvtncodotepixnrmbexkexjaqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxvlxgtgpizbywzebjiehcjiiutaqmly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"alheysaqhkhzsrtvcwguormjdlpehrhk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"osdgqifrchkdczyhqzdhjqksdlikoyat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwepaarauoskpdbczoczxlphmpqwdeqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fccjhbigthifomyklkjwjsejwrcnjgvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aehgtlkhczmbbhihyrdovanwclqrjemj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uozqtbhwclnsffjhzaqueuchjrzkdkkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tdtncyigogzxbjpkxvfavkcsluwtlkkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ruxdslqdabtzimukltmydwhztxqshkmx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hxweqkyfmolugsmmbnijbamhxfyfwkmw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jprrxtqainbpyodoefuyylcrcjcfgrmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zgimeyyefppksbxkfzxjwklqrxpfieuz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ouyquumrpsktndpdmijnqlzqtputevur","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjerqtfbdjsmfdhtmvusgwehqdnwhtks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhulzanzrcxklrmljurqppcbexrxaofi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"basbkjmqowcapcqsmvqnoyetubapumib","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utowrndokitjbwlmqxrqlnyyhdfivkew","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wtswlometccxmlkykmtpbnrtatirdcgi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"olqbuyfurajtpyliaduzktvkqsfeklel","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aybpsgzuyzflimucuzimjhtveleubtoc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wvybbivfhuwfzsboxcuhzwjzkyytefbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"veyuvffxoqqaxvcwwtozymhdgtfykipi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhondfunrbzrxbjvzuftjdycryqxtpnx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"huxuqgpcavkzybxvzyazfinalxqlpbqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zddiyjuuprksprhocrfumsfwifxvfrhf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wibncirunjqstfgioccjtcwxvfblslqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wsemkdruguqendoouyqoazqosmlxkleh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ktwwolagxidtlwramygwhuykeejhdacd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ltticajqgkfdtfwhdxqdwbbrkigkquvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oxzxplhxklmauetrycfqnqomknnburiz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjsalyxppysmpzxofocuaikmcvkmbziw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iptnzzdfweungiwpvwsdcritvqzgiawe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"toirncfxuucgproaxveqtpsrbtohwklh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"clojqxlkcpsctqtxydzouodciefqlfhf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bmcrqmwkvtbggbrlxmjfvkibupuslddc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbaasuznysvgecrqyrisixoawisubyls","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tprtftghjoxmvntffsafgzusobpyfvzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcgagpjkhabujbgvhhfgielaqmtcrhck","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xzgfgruhqjhifjflorpmffnttlrgyhtv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wtqucnfoxjpcvvdbvcqihwlkqepwpgbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfaywdqwxhicopcmhlwwbmhuyulwedau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ouwkhzmyfvuaiisicrzmduxtkiictngv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdfygdclhhcqtrmuatbahcvptyuveqid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbyunaqkzmdkylzssaosxqjxrljvzchz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rukfmanumvdaukktomrdibgrwonxaatn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yuvnxdiltqdgkgspdrzczkgspytfbcjg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mogzlhexhwjpbkwioivfosykadxtngfh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rapehblzpqhghwcbgqaoxkottxtvfxts","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfkxoomwyjrahvukrsajnouxrcqguxhz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qgqeeyovxkjfyidbspkvxjbghbaomuna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwjaisncbljfeiksvozfldyoilclveiy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"usaegaumtafmnfxhdveilgvmktyrosrp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"irtpahgsjzeaibrfhavzwzuujsfnkgtu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"moedisqvbmjuvtlegepxxmdndaoyhwgw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tfbespmcybocfvztyxbfrlxbrnsgdivl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxbfsmnnvzhzjrbmvpjxkymruoflpzdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ukzraawvkzowekurpqobxnjaymsktasf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lcekrqlfkukzmfdnrqpqjdnygyxyfynl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqulottedyyljalziswozfrrjhbmdqgm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pvecvklumiwejsmjdvzshnjhwvxeuaue","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ncrqjpscmlajzyldjmedosivgbgntuuz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mskzxsvtoofzbvribqxalhpshroqvjhh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfmxeabgbyxvhxzqywskyiqkefgrwzvz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wrxpepztnczydpcvkiohevlofddkpbwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oefusigixwhqdlximnjhfltmralrpcos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"onofddlhvyvtrcvjbaeprwziucfkuwrb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcnrkpqsztldfsziwmizjjgehzqlzvno","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wiuotxauiyjbnahagfngedwghfqpotzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"balonewrcysdgaasbrozosvzefzazjvj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kriwgaurjjhvzdlhlfqamdxgqywrukjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ylriffqytmnlnmniuqqpxleiynnfdvwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzfhuzdaldqfuapftyyfgqnvzbzstlge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"suqojzaqcwqfaylrxkdyjqjcmzbhrucf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbwmddxnzvoyvawsgrqiyspsvbmlwipu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkmfdafyhgzharjmuskwevwuhigvgokk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wemhetrjkohbffgvwdfhlwpvhgxqjxqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zrwlpxjoenaddzfeshrggwvcfsmtlesw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jkkywrjlmixzvdmhgczlvwkbijvpovrw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oahsdejvowtsdwoajfnrwbkzgwczcbqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rudcmqaebgqbuzihgjuyhzmvwzefiuic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjxzywtplwczcmmnlmzwjyxmsjqmpwrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"puxgltsmaliuridjmlhguqwkmxeapnas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dnknreaumwmpovcvcqzyuadlydttocdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wlwinedjghrlrtfgicmfgmuohfsghqqa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydbbnbkqrhsrgyoyhxebfbtdawrkwufy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bfbfxncbuhwzjbmpoargvjghuulpdngi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kryzpncupjxxmbsxgonfjghxcmbynzln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qbtakpyegbcjvkvbppndltduxpaqdjvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjpicfvhahvrcmrtqhsxocrdqpywtvcd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uquissdxsbxbunkknmwcwsybydajzjvv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfgwvkywcjvojsgstijdmupnodexjoye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"muoeqmcawqzrbdosjpjywipireaffpuh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nlmjxdvmoecgaifvqwtlmrqwxcsdoqte","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmdlhiuqufdpmopgfvwcdftjihmkukgd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhejboilivnppuadueozvppzjgpchksv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rwvjzhzloyjkwuwygjbxhcysbwrebsse","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dliqqngavxopxrkeoxojcawvfbxuhirv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669128,"databaseName":"models_schema","ddl":"CREATE TABLE `kmifjrkanbihkzrymcquzyofrbogiygu` (\n `gpayyeejjhhwykzwiobdevxxrkykqdpc` int NOT NULL,\n `jmqhbxncdfmwadhhabcecifykvtommay` int DEFAULT NULL,\n `udqfuetqronsykpqgjrqdxdocsrfrvbv` int DEFAULT NULL,\n `agzdqkngtmahrcyonaowbiaycmygyglk` int DEFAULT NULL,\n `cceqsyrrmdauhubbmkbwsaehejnzljzv` int DEFAULT NULL,\n `ijxtzffnnmhqpjeahcvvgaynicgkqfyd` int DEFAULT NULL,\n `tqstazewnjtkvvpyieitwoluztgxslvo` int DEFAULT NULL,\n `rtqskdgndnotbamhfifcbtfviukvkoww` int DEFAULT NULL,\n `bqriexnfcvsqwpffsvsfyjqsfnzvyllg` int DEFAULT NULL,\n `bslyxndvyzfphuvwnspybxuyktlhhqkq` int DEFAULT NULL,\n `hbpyachdenbdokmmgkzniilhejiwtdev` int DEFAULT NULL,\n `vimpojwrdsdsoolwqiirhpiygdnwpehj` int DEFAULT NULL,\n `apjgmmjycwxmtdtvxzcworjbwmcvqphn` int DEFAULT NULL,\n `jcmmgwlkuszmtbkghkngciqczwfkqrrm` int DEFAULT NULL,\n `yfyghachhrgjnrzzpfrzrfubaoczgigo` int DEFAULT NULL,\n `yzalafxfbvenldrsaewkxruzelaeakso` int DEFAULT NULL,\n `txccvssaadichcsxwvqwjksgcfmunhyt` int DEFAULT NULL,\n `eviblbrdaortqjgicasjvlewoddkqykm` int DEFAULT NULL,\n `ufqoxclvdxsxbxofvjaocmgymopsvrtx` int DEFAULT NULL,\n `tvgrlherqeujptbzympznrhfkhqlaabp` int DEFAULT NULL,\n `fevelawtldnwfivjenbtlcstcuhzbhey` int DEFAULT NULL,\n `ozdeykjilwvxgpausuudniyicruczpwq` int DEFAULT NULL,\n `rtvohzgapedtrsfjytxmuyekfogvnltq` int DEFAULT NULL,\n `mdhlixtpotjljwicoqfzevnzzbgbfocm` int DEFAULT NULL,\n `qbwyqndibgpvenezeivatfcrkpcelnjz` int DEFAULT NULL,\n `cmmnenvhagtmrzjmmdduddveiipgqacr` int DEFAULT NULL,\n `qweaczfviwxztrhgdxuwlweehzyivofm` int DEFAULT NULL,\n `iayfwqaxqpwiynfqmhoecnzqdfzzjyfu` int DEFAULT NULL,\n `cqinkkbwfbthxszisaqvpjmmzppzlunf` int DEFAULT NULL,\n `paqebxlbuhjhixhypbzvcwgkekpvvzae` int DEFAULT NULL,\n `qxpwyjflombluofwvotdekzsytnnwata` int DEFAULT NULL,\n `vllesssxncbnjexsottizhwbnmpsbuju` int DEFAULT NULL,\n `paonvuynkvpyejmnkyiajtkcvcqgevbw` int DEFAULT NULL,\n `jpkltckoykqikcbzrslopqiloctywxsx` int DEFAULT NULL,\n `bubsglbgqqlipzbvekjutcbjksutphcg` int DEFAULT NULL,\n `yxsoylyhwznwttwqlqmrshvjfmoheyrx` int DEFAULT NULL,\n `sfnvppxkxaxqucjoywjwkkldtzyckhxu` int DEFAULT NULL,\n `cznzfdtfkpskgwtsybkdeuqyegzppfio` int DEFAULT NULL,\n `kqkefghflppuhluonpmqdsozrewgmruj` int DEFAULT NULL,\n `ktvcofobtaxmtootgkgmulmziojknkfn` int DEFAULT NULL,\n `wyiopgoezlwjqvvrqwtvbfgskcobggob` int DEFAULT NULL,\n `zqzhfugepphyumpsagskbmvsaytvamng` int DEFAULT NULL,\n `ipnhjgvjyvqdxnzfhkhexxsphhxltiyd` int DEFAULT NULL,\n `jcugkzpqnfxpeadimkyvpmxpbqyaezfg` int DEFAULT NULL,\n `lrtyohmbmahgyhwhszbeispvbvxgbvwn` int DEFAULT NULL,\n `busekztpomiljexegrsfnyrggfkescln` int DEFAULT NULL,\n `lfqdgdnswnzkdzsrqkieewtsuaiheqmn` int DEFAULT NULL,\n `royukaveojjudawlmynxbxvlvhrdvgyt` int DEFAULT NULL,\n `fextuxictbppurpkwyjmjmoidpnzapty` int DEFAULT NULL,\n `yhasimokfxivqvmsalfwhfardymbgugy` int DEFAULT NULL,\n `ozjrzxyvklqrbqlsjoqcertpkieensei` int DEFAULT NULL,\n `mfrvhhoknfnpkuysrsrapaxtvgwuyreh` int DEFAULT NULL,\n `udjzrcoxmpjaxklylbrqrvbaruiloybe` int DEFAULT NULL,\n `hoqakjysggprpcsdvrziwyaurpcxuphk` int DEFAULT NULL,\n `bcqqumqbvqsufhwzhmogxjmpaplicjyn` int DEFAULT NULL,\n `ohuhxgwulnfjvorpbqzvsbzkxrkcgcom` int DEFAULT NULL,\n `tqdqxusqbovfsemauuwbidceuoxknjmx` int DEFAULT NULL,\n `gkeupfjivkvaddcnsdtkqtrtdpkyfugi` int DEFAULT NULL,\n `abfcskieovfizcbfujhwtunmyeatidms` int DEFAULT NULL,\n `iuvurpkpjksvcbecdbziyhmlkhpoagwx` int DEFAULT NULL,\n `sgfktybkcwxntpiholkjynqxlzchwvhn` int DEFAULT NULL,\n `ccsqhophgyhmusaqrxizaayuxpheqyra` int DEFAULT NULL,\n `wmebpfpxmjovgipnyegytkxcszqkakei` int DEFAULT NULL,\n `axjwisaivzeeabyqehjmkewurskhncyv` int DEFAULT NULL,\n `jwlkzztlctytzwtcwtfeicirgyholkxn` int DEFAULT NULL,\n `ngdvzlbjlfkkuxshttpofclrqgnrtvfk` int DEFAULT NULL,\n `vzabnxillzfbedzkwjidruiyadgqqofy` int DEFAULT NULL,\n `vmfhyfrcwiqehcjhlscgjrdbphszbyot` int DEFAULT NULL,\n `volwofltvyzvhcwczmjomrlxrgflzkpp` int DEFAULT NULL,\n `tgnvafiphhdtmnhopynsradvmyrmdixe` int DEFAULT NULL,\n `qnzyweqfondmpzrklogghfylqsiyentd` int DEFAULT NULL,\n `djnfyysbiwwwxhmwacpwlixjpcmlprbh` int DEFAULT NULL,\n `erdvjguynbaeocyricennyshjtbtkglb` int DEFAULT NULL,\n `gztbuzmhwstjryvbkxyvbmwwzteufiyg` int DEFAULT NULL,\n `nvrlvhehjxxjcixuswxpzdlxdsuurlwe` int DEFAULT NULL,\n `bqveyiitpdwuvetfbknlpyhvnoeatkvp` int DEFAULT NULL,\n `xcsveiuscghnifdvpxzigykphfgtodsv` int DEFAULT NULL,\n `kwqqafsoonokrketzgnrqokuvpubyxkd` int DEFAULT NULL,\n `lcsolawpwnpizembooemrdkqvbpckaxb` int DEFAULT NULL,\n `rkqwazmldtsjrgziznpylrlsuagwqosg` int DEFAULT NULL,\n `evowzxvapnsenwueznbqpuorzwjetgzf` int DEFAULT NULL,\n `ukhanoxbfmtsonffxjcvupwvkkrczbpr` int DEFAULT NULL,\n `fncpqldxbyhqbsniolnyjgnsuwdjvjjk` int DEFAULT NULL,\n `wfcurcsjtgvscqkxnoffhskwmmwtwhuj` int DEFAULT NULL,\n `uvgsrrpdjveagtjwnmfimzqucoeitxhs` int DEFAULT NULL,\n `xdowvvyvixohstuihugivhtcqgaycrqj` int DEFAULT NULL,\n `exujfekcqettldxxywueuzwuelednjkp` int DEFAULT NULL,\n `yvqpdhcvnsbvvqpyrfswaywrrlyoetmu` int DEFAULT NULL,\n `xhivngdxuvfjlrfqdpxzmislgwxvtpml` int DEFAULT NULL,\n `wcqbasuybvcnbskyyigyuxlfabssvnlz` int DEFAULT NULL,\n `qjvigpwjcjpsuhqlocslrqnzbachebbr` int DEFAULT NULL,\n `qalottsxujgqitwvvwxhvzbatqexhcys` int DEFAULT NULL,\n `ohpxfenrgunkyycyzvwsynswpwxfzbia` int DEFAULT NULL,\n `tctyhgpjqsrpwlqykolkwsizoooalxmv` int DEFAULT NULL,\n `lljxtvhskgipxtntirnzmtvsladvbwri` int DEFAULT NULL,\n `sfjbwgepxdapheldfrajhsybcgygmbpw` int DEFAULT NULL,\n `ifdydcetarytigbzruihlpfvpzautzhu` int DEFAULT NULL,\n `njroxflxdrmwdylcxvbwmdyaxykdxstt` int DEFAULT NULL,\n `xghpwtgjtlnjcnuimqpvcefeomozbhxp` int DEFAULT NULL,\n `zizaowdgwhjqgfsievckvgaesdjdktwt` int DEFAULT NULL,\n PRIMARY KEY (`gpayyeejjhhwykzwiobdevxxrkykqdpc`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"kmifjrkanbihkzrymcquzyofrbogiygu\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["gpayyeejjhhwykzwiobdevxxrkykqdpc"],"columns":[{"name":"gpayyeejjhhwykzwiobdevxxrkykqdpc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"jmqhbxncdfmwadhhabcecifykvtommay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udqfuetqronsykpqgjrqdxdocsrfrvbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agzdqkngtmahrcyonaowbiaycmygyglk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cceqsyrrmdauhubbmkbwsaehejnzljzv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijxtzffnnmhqpjeahcvvgaynicgkqfyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqstazewnjtkvvpyieitwoluztgxslvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rtqskdgndnotbamhfifcbtfviukvkoww","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqriexnfcvsqwpffsvsfyjqsfnzvyllg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bslyxndvyzfphuvwnspybxuyktlhhqkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbpyachdenbdokmmgkzniilhejiwtdev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vimpojwrdsdsoolwqiirhpiygdnwpehj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"apjgmmjycwxmtdtvxzcworjbwmcvqphn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jcmmgwlkuszmtbkghkngciqczwfkqrrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfyghachhrgjnrzzpfrzrfubaoczgigo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzalafxfbvenldrsaewkxruzelaeakso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txccvssaadichcsxwvqwjksgcfmunhyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eviblbrdaortqjgicasjvlewoddkqykm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ufqoxclvdxsxbxofvjaocmgymopsvrtx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvgrlherqeujptbzympznrhfkhqlaabp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fevelawtldnwfivjenbtlcstcuhzbhey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ozdeykjilwvxgpausuudniyicruczpwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rtvohzgapedtrsfjytxmuyekfogvnltq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mdhlixtpotjljwicoqfzevnzzbgbfocm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qbwyqndibgpvenezeivatfcrkpcelnjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmmnenvhagtmrzjmmdduddveiipgqacr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qweaczfviwxztrhgdxuwlweehzyivofm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iayfwqaxqpwiynfqmhoecnzqdfzzjyfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqinkkbwfbthxszisaqvpjmmzppzlunf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"paqebxlbuhjhixhypbzvcwgkekpvvzae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxpwyjflombluofwvotdekzsytnnwata","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vllesssxncbnjexsottizhwbnmpsbuju","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"paonvuynkvpyejmnkyiajtkcvcqgevbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jpkltckoykqikcbzrslopqiloctywxsx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bubsglbgqqlipzbvekjutcbjksutphcg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxsoylyhwznwttwqlqmrshvjfmoheyrx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfnvppxkxaxqucjoywjwkkldtzyckhxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cznzfdtfkpskgwtsybkdeuqyegzppfio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kqkefghflppuhluonpmqdsozrewgmruj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ktvcofobtaxmtootgkgmulmziojknkfn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wyiopgoezlwjqvvrqwtvbfgskcobggob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqzhfugepphyumpsagskbmvsaytvamng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ipnhjgvjyvqdxnzfhkhexxsphhxltiyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jcugkzpqnfxpeadimkyvpmxpbqyaezfg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lrtyohmbmahgyhwhszbeispvbvxgbvwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"busekztpomiljexegrsfnyrggfkescln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfqdgdnswnzkdzsrqkieewtsuaiheqmn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"royukaveojjudawlmynxbxvlvhrdvgyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fextuxictbppurpkwyjmjmoidpnzapty","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhasimokfxivqvmsalfwhfardymbgugy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ozjrzxyvklqrbqlsjoqcertpkieensei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mfrvhhoknfnpkuysrsrapaxtvgwuyreh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udjzrcoxmpjaxklylbrqrvbaruiloybe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hoqakjysggprpcsdvrziwyaurpcxuphk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bcqqumqbvqsufhwzhmogxjmpaplicjyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohuhxgwulnfjvorpbqzvsbzkxrkcgcom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqdqxusqbovfsemauuwbidceuoxknjmx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkeupfjivkvaddcnsdtkqtrtdpkyfugi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"abfcskieovfizcbfujhwtunmyeatidms","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iuvurpkpjksvcbecdbziyhmlkhpoagwx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sgfktybkcwxntpiholkjynqxlzchwvhn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ccsqhophgyhmusaqrxizaayuxpheqyra","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmebpfpxmjovgipnyegytkxcszqkakei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axjwisaivzeeabyqehjmkewurskhncyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwlkzztlctytzwtcwtfeicirgyholkxn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ngdvzlbjlfkkuxshttpofclrqgnrtvfk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vzabnxillzfbedzkwjidruiyadgqqofy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vmfhyfrcwiqehcjhlscgjrdbphszbyot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"volwofltvyzvhcwczmjomrlxrgflzkpp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tgnvafiphhdtmnhopynsradvmyrmdixe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qnzyweqfondmpzrklogghfylqsiyentd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"djnfyysbiwwwxhmwacpwlixjpcmlprbh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"erdvjguynbaeocyricennyshjtbtkglb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gztbuzmhwstjryvbkxyvbmwwzteufiyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvrlvhehjxxjcixuswxpzdlxdsuurlwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqveyiitpdwuvetfbknlpyhvnoeatkvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xcsveiuscghnifdvpxzigykphfgtodsv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwqqafsoonokrketzgnrqokuvpubyxkd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lcsolawpwnpizembooemrdkqvbpckaxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkqwazmldtsjrgziznpylrlsuagwqosg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evowzxvapnsenwueznbqpuorzwjetgzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ukhanoxbfmtsonffxjcvupwvkkrczbpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fncpqldxbyhqbsniolnyjgnsuwdjvjjk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfcurcsjtgvscqkxnoffhskwmmwtwhuj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvgsrrpdjveagtjwnmfimzqucoeitxhs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdowvvyvixohstuihugivhtcqgaycrqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exujfekcqettldxxywueuzwuelednjkp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yvqpdhcvnsbvvqpyrfswaywrrlyoetmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xhivngdxuvfjlrfqdpxzmislgwxvtpml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcqbasuybvcnbskyyigyuxlfabssvnlz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjvigpwjcjpsuhqlocslrqnzbachebbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qalottsxujgqitwvvwxhvzbatqexhcys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohpxfenrgunkyycyzvwsynswpwxfzbia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tctyhgpjqsrpwlqykolkwsizoooalxmv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lljxtvhskgipxtntirnzmtvsladvbwri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfjbwgepxdapheldfrajhsybcgygmbpw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ifdydcetarytigbzruihlpfvpzautzhu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njroxflxdrmwdylcxvbwmdyaxykdxstt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xghpwtgjtlnjcnuimqpvcefeomozbhxp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zizaowdgwhjqgfsievckvgaesdjdktwt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669159,"databaseName":"models_schema","ddl":"CREATE TABLE `korrbwglsldbalqvsswaqstzuxvnlrps` (\n `vdnjtbaguirntqnoyqivoefwieuumpwf` int NOT NULL,\n `lfiwchvjvflqxecgnpkpwsmqpegnlsvf` int DEFAULT NULL,\n `wbrfjumgyjjmliqfrzsyuqrndbkchcnb` int DEFAULT NULL,\n `jdddgxoqlrscitvpuexducyowlelzdcy` int DEFAULT NULL,\n `radlgasynweomtklggfuydkkekdqqsqw` int DEFAULT NULL,\n `qfangdfwoeykkaqjffttpqkeykxscsni` int DEFAULT NULL,\n `fvoucsmttcslmbyjtfbtqxdnlzgkgwjr` int DEFAULT NULL,\n `didfbzhfqpkiavkvepvesbwgvywvpyde` int DEFAULT NULL,\n `cmsrgymspnkjoqdmlnrvbjkqpjxxderz` int DEFAULT NULL,\n `bvovwnkvocevpsysplsfmgvpzykerreg` int DEFAULT NULL,\n `tvwjcjkaljaknqcddofynhhyfuiaxubh` int DEFAULT NULL,\n `pqspzmukmxlanpnyewhcfskzpsmhaqux` int DEFAULT NULL,\n `vefowtvbzjsosdvuhsfmajlphlgacuqs` int DEFAULT NULL,\n `qaldiexpfxzstyhxlazjekijwfhtnjkt` int DEFAULT NULL,\n `uqxrvgouajzziroujomshnaubvfvqhew` int DEFAULT NULL,\n `fqaheqxmzhroxxyzkynsxeigkipgxdjh` int DEFAULT NULL,\n `ppetjauxdmbznwdnqiqpefoxjnsrqngi` int DEFAULT NULL,\n `cezjyfemijhghzilgxrnwdskkuyqkfsj` int DEFAULT NULL,\n `pdmaafinzkvyasqpuyneyfjrzjcciahi` int DEFAULT NULL,\n `mtagjeaxgiwneesfdouiiirpwmfmiyjw` int DEFAULT NULL,\n `xurbmhytctkibcnowfqgnxpaoyizvtxt` int DEFAULT NULL,\n `mxnyvruqcjoxcnsrohasvzlkzboevmxw` int DEFAULT NULL,\n `gkjtffzcxdrydlhnouxqbvuvikoykcvn` int DEFAULT NULL,\n `regvhfmgnmgrbjspfhutzhlzxjqhfsie` int DEFAULT NULL,\n `ffcpjhphodtsbajklutdottcqhvupzwt` int DEFAULT NULL,\n `jfrooqzqvfziqeogaiymgtljymotydks` int DEFAULT NULL,\n `drwyfhcaujrkwpaioaunfwjflnubgmwu` int DEFAULT NULL,\n `ccxcfihrjxrzcfwoomdwvokuczfwnmup` int DEFAULT NULL,\n `kmbkdkgotrzodqhwpocgytwderidfddc` int DEFAULT NULL,\n `wpkcpsumgaobuqwnlaecciqylawllibw` int DEFAULT NULL,\n `mrqzuvfcejopgpnbokowsrigcztstfxf` int DEFAULT NULL,\n `erbwrmyjuxaqpbyvmxqkvgtsmnpypgns` int DEFAULT NULL,\n `iqckpvcuuxiquoakfzyzthigcpowgffe` int DEFAULT NULL,\n `ukvffzvglyrkjwrvoyqbpeqcftpctjur` int DEFAULT NULL,\n `hwejpkitorkgvzgwrwlvfhrluenyzmol` int DEFAULT NULL,\n `ghynlavpmvzrlszizfhantssktgrajzc` int DEFAULT NULL,\n `lysavxkbatplmofpzbigogevacmbwolf` int DEFAULT NULL,\n `nwieavbehmrpzgnwvbcwhusbhqeggfed` int DEFAULT NULL,\n `hmkwzxrjtoagsjjnnhawmsskwvmwyxib` int DEFAULT NULL,\n `ulkfdufctrbgleclpzsmshmqtujkcqyw` int DEFAULT NULL,\n `ntahejocyqpqmckbidshzwwyaqdpdami` int DEFAULT NULL,\n `otahycyhnqqalsxzonkquelkvpfcxbtx` int DEFAULT NULL,\n `fwfejyvkqorvylrnhqncochlgfayydzy` int DEFAULT NULL,\n `mojqntppkbrfeanvdekqyfaxypmfjiga` int DEFAULT NULL,\n `eskqzwxmlbpaejhuzhgydkzvqkiiobkc` int DEFAULT NULL,\n `rrekpkrkpfdtwccdcyoraxjtnmbxjwof` int DEFAULT NULL,\n `dshkjyucuyubkylbrrobbnjrfbicmxfn` int DEFAULT NULL,\n `tgqqdextuczmlddbedbhehgiwyehlfqo` int DEFAULT NULL,\n `hcwnkfjqjawbjnarpinqwaqekewhewzz` int DEFAULT NULL,\n `pjcrolnjwvhyxgilmzgygedaiskwrtjr` int DEFAULT NULL,\n `awwmxxgnkycxsjqfhhsailunoxbhdhhk` int DEFAULT NULL,\n `isabpojkhoodatmirnvfdqmmdpttdfxx` int DEFAULT NULL,\n `ehhlwlpmuapaxlaurwtecroekwnagqnb` int DEFAULT NULL,\n `omrxywdgyyjmgdnjdyqzlsqpdmfesuil` int DEFAULT NULL,\n `rkjazzsrpcodqmmrxmyorbdbwqqnemku` int DEFAULT NULL,\n `csdbclkbqddqokbzpxbkgcizgouelfas` int DEFAULT NULL,\n `pvhubgyuzohlnsawglddkxdtkphvhoyw` int DEFAULT NULL,\n `yrpjdgltoebeytelinbldwmdkzhvafpn` int DEFAULT NULL,\n `lhzjgyskifgtgsyusbecuugzahqhspcf` int DEFAULT NULL,\n `iuqikzdttzepccxaohicdmsaikrisbrb` int DEFAULT NULL,\n `rytimonptnmkaynarpdouecurovzxbzn` int DEFAULT NULL,\n `xkgxhqfbaixqptkrvtcdvnqawdovancg` int DEFAULT NULL,\n `yguwfykssqbfgtfxqcspnjfzsztmoeez` int DEFAULT NULL,\n `vbvcvlvebwavyqiocziosvppkdpumvye` int DEFAULT NULL,\n `pajrcffqidiknlgjnqoregjkqopehnhp` int DEFAULT NULL,\n `xrmkkshrdudtgeafwtdiytsjjdnyrrov` int DEFAULT NULL,\n `hpcvwrfppvdkqhsgdmddltthyspzziph` int DEFAULT NULL,\n `gcmbsfspbolljaujfeptfbgdshlhveaj` int DEFAULT NULL,\n `jmawqzlzdbyjtbbqkdubzxmlhlxczrjh` int DEFAULT NULL,\n `jzxxpzyfftezgvnbkqfbcuswiuqxxybw` int DEFAULT NULL,\n `uaypnjmwdxcclaxcdxuiazxucljznrud` int DEFAULT NULL,\n `khsexfyxmaiwosxtbtfellsiomkkljqb` int DEFAULT NULL,\n `urwhdboloixjnqlkrgovuetbchivqwfn` int DEFAULT NULL,\n `dlgwyjpvjuddxjazvuckomtqpalrmctp` int DEFAULT NULL,\n `xhvbbsupyhkuuxyagwbceacsgagceerr` int DEFAULT NULL,\n `qfloipzfoihjpieqlmwjqcetkgqgfsaj` int DEFAULT NULL,\n `iwksnhslhsmfmuvcrdhhzzfjqikoustn` int DEFAULT NULL,\n `knsvxvhlzgahanvkiwcgyspkergxngoz` int DEFAULT NULL,\n `rmqeshlhqfivsmrebmwgylijwwrihmgg` int DEFAULT NULL,\n `idgqbuhorxmmyjltjpubzoziqxsuvzyz` int DEFAULT NULL,\n `lbchoyutgrojuxnenjgezggwzyfqmomh` int DEFAULT NULL,\n `daxspeonmkjojhtjexwervssmunyovvd` int DEFAULT NULL,\n `xetctonjanvenueycrunbouvrddwvtqe` int DEFAULT NULL,\n `nosjigacpqqjenkgxdncdkdecqzxxhrg` int DEFAULT NULL,\n `ubgkprzjwfohnykpclxyfqhminrnjtcs` int DEFAULT NULL,\n `xzmwepqtblnlfueonqkfosewjbjiwapf` int DEFAULT NULL,\n `bhiplyqhylkjlifqfuypnqaydkbzlehj` int DEFAULT NULL,\n `ewjvwkdddfiglezltcbfqpbnfmmdgknc` int DEFAULT NULL,\n `ppgbqhhwsbhwcdhzulguqdsidkaxfqos` int DEFAULT NULL,\n `zqxborpxcmxvtfpzjnkctvsenwpypkof` int DEFAULT NULL,\n `ftjujpwvldvjgawrcdnbqvsuufrtiuwy` int DEFAULT NULL,\n `nonoonievcjzbchgrxuytasovyurmjmk` int DEFAULT NULL,\n `mwwginxqxiglloldwrzyddgcncqdrqrf` int DEFAULT NULL,\n `laorucjvptkeimrkankhryxujigtagbm` int DEFAULT NULL,\n `pqetscaepcidulvdvqobfdlngbivjrit` int DEFAULT NULL,\n `fettsztuuvkgrxrrfcpeulfpqkxsrdes` int DEFAULT NULL,\n `sptevwixnzykynvdwxhaewinolhloyuq` int DEFAULT NULL,\n `prhfayghkijgknlinpzvefsjuhjdcdtw` int DEFAULT NULL,\n `bueollqfjwhssdltmyknkmqbrqhjdivu` int DEFAULT NULL,\n `sfftyjxrtnqrbuavynqeuxapmdkvclkq` int DEFAULT NULL,\n PRIMARY KEY (`vdnjtbaguirntqnoyqivoefwieuumpwf`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"korrbwglsldbalqvsswaqstzuxvnlrps\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["vdnjtbaguirntqnoyqivoefwieuumpwf"],"columns":[{"name":"vdnjtbaguirntqnoyqivoefwieuumpwf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"lfiwchvjvflqxecgnpkpwsmqpegnlsvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbrfjumgyjjmliqfrzsyuqrndbkchcnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdddgxoqlrscitvpuexducyowlelzdcy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"radlgasynweomtklggfuydkkekdqqsqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfangdfwoeykkaqjffttpqkeykxscsni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fvoucsmttcslmbyjtfbtqxdnlzgkgwjr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"didfbzhfqpkiavkvepvesbwgvywvpyde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmsrgymspnkjoqdmlnrvbjkqpjxxderz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvovwnkvocevpsysplsfmgvpzykerreg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvwjcjkaljaknqcddofynhhyfuiaxubh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqspzmukmxlanpnyewhcfskzpsmhaqux","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vefowtvbzjsosdvuhsfmajlphlgacuqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qaldiexpfxzstyhxlazjekijwfhtnjkt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqxrvgouajzziroujomshnaubvfvqhew","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqaheqxmzhroxxyzkynsxeigkipgxdjh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ppetjauxdmbznwdnqiqpefoxjnsrqngi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cezjyfemijhghzilgxrnwdskkuyqkfsj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdmaafinzkvyasqpuyneyfjrzjcciahi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtagjeaxgiwneesfdouiiirpwmfmiyjw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xurbmhytctkibcnowfqgnxpaoyizvtxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mxnyvruqcjoxcnsrohasvzlkzboevmxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkjtffzcxdrydlhnouxqbvuvikoykcvn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"regvhfmgnmgrbjspfhutzhlzxjqhfsie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffcpjhphodtsbajklutdottcqhvupzwt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jfrooqzqvfziqeogaiymgtljymotydks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drwyfhcaujrkwpaioaunfwjflnubgmwu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ccxcfihrjxrzcfwoomdwvokuczfwnmup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kmbkdkgotrzodqhwpocgytwderidfddc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wpkcpsumgaobuqwnlaecciqylawllibw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrqzuvfcejopgpnbokowsrigcztstfxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"erbwrmyjuxaqpbyvmxqkvgtsmnpypgns","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqckpvcuuxiquoakfzyzthigcpowgffe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ukvffzvglyrkjwrvoyqbpeqcftpctjur","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwejpkitorkgvzgwrwlvfhrluenyzmol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghynlavpmvzrlszizfhantssktgrajzc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lysavxkbatplmofpzbigogevacmbwolf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nwieavbehmrpzgnwvbcwhusbhqeggfed","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmkwzxrjtoagsjjnnhawmsskwvmwyxib","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ulkfdufctrbgleclpzsmshmqtujkcqyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntahejocyqpqmckbidshzwwyaqdpdami","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otahycyhnqqalsxzonkquelkvpfcxbtx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwfejyvkqorvylrnhqncochlgfayydzy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mojqntppkbrfeanvdekqyfaxypmfjiga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eskqzwxmlbpaejhuzhgydkzvqkiiobkc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrekpkrkpfdtwccdcyoraxjtnmbxjwof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dshkjyucuyubkylbrrobbnjrfbicmxfn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tgqqdextuczmlddbedbhehgiwyehlfqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hcwnkfjqjawbjnarpinqwaqekewhewzz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjcrolnjwvhyxgilmzgygedaiskwrtjr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awwmxxgnkycxsjqfhhsailunoxbhdhhk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"isabpojkhoodatmirnvfdqmmdpttdfxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehhlwlpmuapaxlaurwtecroekwnagqnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omrxywdgyyjmgdnjdyqzlsqpdmfesuil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkjazzsrpcodqmmrxmyorbdbwqqnemku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"csdbclkbqddqokbzpxbkgcizgouelfas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pvhubgyuzohlnsawglddkxdtkphvhoyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yrpjdgltoebeytelinbldwmdkzhvafpn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhzjgyskifgtgsyusbecuugzahqhspcf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iuqikzdttzepccxaohicdmsaikrisbrb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rytimonptnmkaynarpdouecurovzxbzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkgxhqfbaixqptkrvtcdvnqawdovancg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yguwfykssqbfgtfxqcspnjfzsztmoeez","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbvcvlvebwavyqiocziosvppkdpumvye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pajrcffqidiknlgjnqoregjkqopehnhp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xrmkkshrdudtgeafwtdiytsjjdnyrrov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hpcvwrfppvdkqhsgdmddltthyspzziph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gcmbsfspbolljaujfeptfbgdshlhveaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmawqzlzdbyjtbbqkdubzxmlhlxczrjh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jzxxpzyfftezgvnbkqfbcuswiuqxxybw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uaypnjmwdxcclaxcdxuiazxucljznrud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"khsexfyxmaiwosxtbtfellsiomkkljqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urwhdboloixjnqlkrgovuetbchivqwfn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dlgwyjpvjuddxjazvuckomtqpalrmctp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xhvbbsupyhkuuxyagwbceacsgagceerr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfloipzfoihjpieqlmwjqcetkgqgfsaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwksnhslhsmfmuvcrdhhzzfjqikoustn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knsvxvhlzgahanvkiwcgyspkergxngoz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rmqeshlhqfivsmrebmwgylijwwrihmgg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idgqbuhorxmmyjltjpubzoziqxsuvzyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lbchoyutgrojuxnenjgezggwzyfqmomh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"daxspeonmkjojhtjexwervssmunyovvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xetctonjanvenueycrunbouvrddwvtqe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nosjigacpqqjenkgxdncdkdecqzxxhrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubgkprzjwfohnykpclxyfqhminrnjtcs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xzmwepqtblnlfueonqkfosewjbjiwapf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bhiplyqhylkjlifqfuypnqaydkbzlehj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ewjvwkdddfiglezltcbfqpbnfmmdgknc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ppgbqhhwsbhwcdhzulguqdsidkaxfqos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqxborpxcmxvtfpzjnkctvsenwpypkof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftjujpwvldvjgawrcdnbqvsuufrtiuwy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nonoonievcjzbchgrxuytasovyurmjmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwwginxqxiglloldwrzyddgcncqdrqrf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"laorucjvptkeimrkankhryxujigtagbm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqetscaepcidulvdvqobfdlngbivjrit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fettsztuuvkgrxrrfcpeulfpqkxsrdes","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sptevwixnzykynvdwxhaewinolhloyuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prhfayghkijgknlinpzvefsjuhjdcdtw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bueollqfjwhssdltmyknkmqbrqhjdivu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfftyjxrtnqrbuavynqeuxapmdkvclkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669194,"databaseName":"models_schema","ddl":"CREATE TABLE `kuykqleuwgycpydwatkgiczdqgleegnu` (\n `uogmseavfyjrmovhuzmjuvhtnjivtsnh` int NOT NULL,\n `ofqgaxtpamspgvdjxwdlokeazpsnmhvl` int DEFAULT NULL,\n `euynytnwjznsidqfhqcysmqlgazzhpjj` int DEFAULT NULL,\n `ddkkarjvpbrdhcecnfoqchesnauufxoo` int DEFAULT NULL,\n `rsmezlhmfmifzfuehnsspxkgesqqwldm` int DEFAULT NULL,\n `bgvvwljyedbbcebondnzecydgyohvphk` int DEFAULT NULL,\n `zqtpdlkgpbmyxkechvybgvekrqrjnwpd` int DEFAULT NULL,\n `xyovhcbbwsvzawlyctoofiveksbalyqg` int DEFAULT NULL,\n `eldikjylgschsnabmlqzycekplrxnqba` int DEFAULT NULL,\n `uvyyqufumpyzmbcqdvzhflihezucrdxz` int DEFAULT NULL,\n `xdwrzffbpltpbofeeggwfljuteohoapv` int DEFAULT NULL,\n `ytjxcxkurlcxqvsmtpidobfbttkrdwdi` int DEFAULT NULL,\n `lxzdwocclfhurxjgxpmkeyufbyqnyhiw` int DEFAULT NULL,\n `hmqbgicgggerizjjymvyhzupsrpntaar` int DEFAULT NULL,\n `jqqpizkxqbdwlvsknzdgmvmxxlhkoqza` int DEFAULT NULL,\n `kzqhwmreyhwoforulpcyasgmushtbcum` int DEFAULT NULL,\n `lyxwbzcrbxrhhzwissarzbbllyqswtsf` int DEFAULT NULL,\n `rjgnioyyhuezryjfqzyemhuphrauvxoa` int DEFAULT NULL,\n `mccgvjrylkgetwlxnezafswueeojsfvp` int DEFAULT NULL,\n `dleksyovbxeuqnykjoxzmqtjkasufvsy` int DEFAULT NULL,\n `byrctakaayrvuuaehvbhpncdhornnxnu` int DEFAULT NULL,\n `ohsaolwcqjjlwpbutdxiuoytwzeltobd` int DEFAULT NULL,\n `xyplearpcdefttruqahaeqaroekayurh` int DEFAULT NULL,\n `jeireskqclcguqgwccuuqzaxheziiaxi` int DEFAULT NULL,\n `qgrsapbhccxfquwlriqvkmsvnmxcfkou` int DEFAULT NULL,\n `clsyodjqorvppprzqatkizmlqepyheyv` int DEFAULT NULL,\n `qtwbdqkdsmpvfsbgkdwrzomkolvejycd` int DEFAULT NULL,\n `pjcqujlutiypyhgubxfetziopxtmqtng` int DEFAULT NULL,\n `zwzgjoddwyertngslimjpfzsosmjwhiz` int DEFAULT NULL,\n `zpnrpsmboutjdbkvkmsodctvuvcogved` int DEFAULT NULL,\n `ettvwahqjbburpbgegumesaayencposa` int DEFAULT NULL,\n `qovvlysugmpqssfmxodstozcsaemgqpi` int DEFAULT NULL,\n `kaudxyqdjwydivmjkqeivetoygmktbsq` int DEFAULT NULL,\n `oioshucdmoflwcdxyaizzdzmuarbgrcd` int DEFAULT NULL,\n `rtnhiemmuheypzswdfxnrtevwcmxsniy` int DEFAULT NULL,\n `qckbohsnwordqyklgbsqdvyflwyarohd` int DEFAULT NULL,\n `gjsslphnjouiieyappfiwnhivffrhopp` int DEFAULT NULL,\n `yjncnhvmddbkobadsrxasaklmizmmmjm` int DEFAULT NULL,\n `erdfybuuqgrusnhjhusjupwewmzwiwug` int DEFAULT NULL,\n `xkzdmgsjmlkhrledaqsksiothjutnpyd` int DEFAULT NULL,\n `nbexgobjmewhbvmckhzkjngiswhiegrl` int DEFAULT NULL,\n `ioioeehtqevxzuevvmaojiuuicohjaou` int DEFAULT NULL,\n `ptlfbjfgkjgexjnhrrbdqcvifflqdpyp` int DEFAULT NULL,\n `ghamfjyojsanxwcrftpszlfqazdkvhwk` int DEFAULT NULL,\n `xcmunppfwbyvcmbkgjfllgtuhzlauiex` int DEFAULT NULL,\n `hmnwoampksyrfklhdxfpawijpusvcbcx` int DEFAULT NULL,\n `ajefmjptmssyjshucjxpnneljrprzhew` int DEFAULT NULL,\n `jfsinbftypleflrxoavvnswvurasmvgd` int DEFAULT NULL,\n `zbqysqlkjdcojmnwdmfjalbembjmpmeo` int DEFAULT NULL,\n `hkmsxstvjdiitewotffkxcrwkafwsptc` int DEFAULT NULL,\n `knxkgszbmnlwzlwnntojfxcepfxvlagd` int DEFAULT NULL,\n `umdjtaigdzyekweqbfbiqdzunigyukkg` int DEFAULT NULL,\n `gzzksydazsvmuoaajxgiitiybsyfzedg` int DEFAULT NULL,\n `uljcrpkkkjwxtfubmdcssicyfwdixcfx` int DEFAULT NULL,\n `qjiskfxmiruwxxhalfllwzqewzbdangb` int DEFAULT NULL,\n `grrwcprkbthptqhmtecybalwmowwfflr` int DEFAULT NULL,\n `qvvuyddakebevpuejxjtnpulwedykrcd` int DEFAULT NULL,\n `aqoyytzysahcyavdadcllsvqhyyufrtw` int DEFAULT NULL,\n `cpcxvppkiqerorrlczrvkbwvyijskrzi` int DEFAULT NULL,\n `fhjjnwnxpbdgnftxlkqyfnnadoboxlzg` int DEFAULT NULL,\n `jmsgchjzllffpzkjislcwudqhfankxav` int DEFAULT NULL,\n `ewgitpsiplqzjsksqxxbatxhrqvxwtaf` int DEFAULT NULL,\n `vrldsgnnrxdnevrzgordkrnjhwgnjrlj` int DEFAULT NULL,\n `givglgqplarawbmhwiicaodeaiwndqzv` int DEFAULT NULL,\n `veurfgmkerdqknpgzogjhucheapttpdb` int DEFAULT NULL,\n `wabjasrdnrffykliecqrgcoodkddclqo` int DEFAULT NULL,\n `axizulxlixutwvgxnawwypdzkzgxjrgv` int DEFAULT NULL,\n `nickgpxxopzlbvidrobyoxtuqkghhgcv` int DEFAULT NULL,\n `znvgwnwjsvbjraxxzajioryfgrspwguc` int DEFAULT NULL,\n `ddtuzzasergtpwetibjbhcbnmpdtpsbw` int DEFAULT NULL,\n `ovrutdgsgrmaivqsmrmvrzpnvtjfxeti` int DEFAULT NULL,\n `dusmpajminzvaflqrsflyyknxwxvlsle` int DEFAULT NULL,\n `usdtecncvgjpppzwvtdvjsguyvjmnngv` int DEFAULT NULL,\n `kxxgjwwsotxpewsubqwqyerftkyyoacb` int DEFAULT NULL,\n `vqcxwnrnqrioqxedffchgnsigwbazmxo` int DEFAULT NULL,\n `facnjqzosbtslewphseznokxnauzzxzc` int DEFAULT NULL,\n `nmpfwtxmypkizkpgymgkamglllwyujro` int DEFAULT NULL,\n `ntkcumibillxidhgrlatfgbwsguznxyv` int DEFAULT NULL,\n `exorxduqixiwscgnyghzcaaehldqmfme` int DEFAULT NULL,\n `mczghtwiunuvjfsymkucqlgymxazhikh` int DEFAULT NULL,\n `dotoldqknfilrtlahyujgnzorqppvpis` int DEFAULT NULL,\n `vgfixtxwwyjkyxbbihifrjygsezkzfqs` int DEFAULT NULL,\n `rxytxunfpluqidzmdvmjpvvyaclszjqr` int DEFAULT NULL,\n `rtycbauedewhiomvpgeefsddudqjihwb` int DEFAULT NULL,\n `zdiqcyxnvkkwqsjinvyulthlkxtbvzoc` int DEFAULT NULL,\n `qhwusgzvxcyupebseiqafkfjxenubccw` int DEFAULT NULL,\n `tevkkkdgakdyjydtsxsxbjnrchfitcsz` int DEFAULT NULL,\n `zkcwkzmsosusyccxhqtbawbbfervzgin` int DEFAULT NULL,\n `lyduklhrjshwkutjervsbcdphaphyjpx` int DEFAULT NULL,\n `llggdwrgdxdvknzajmfmugdkqpnsydxb` int DEFAULT NULL,\n `dgjwqrgejlqrfxbnlukeyjqizisarutk` int DEFAULT NULL,\n `ivtjgkrbpyltmnlqdmgddzbuobihnupu` int DEFAULT NULL,\n `mqfpjgceklbqivyqgfmthsdbslhhjcto` int DEFAULT NULL,\n `npekwhoeahfarpiwtskmquywcqaowalp` int DEFAULT NULL,\n `gnerastowdpblibaxqkciyqstfvhckjl` int DEFAULT NULL,\n `otolgwbsbzxlydyfpcykgcqdvepdgdip` int DEFAULT NULL,\n `blgbvwqasdmgplmaqivryzgbfcphgfuq` int DEFAULT NULL,\n `tocluxntoqenomijjmxhsijzqpfkvgpa` int DEFAULT NULL,\n `qzokmancnexmeyppmgeoyaqokopxmznj` int DEFAULT NULL,\n `jncyoszueabejrwlitshdbyndmjoycua` int DEFAULT NULL,\n PRIMARY KEY (`uogmseavfyjrmovhuzmjuvhtnjivtsnh`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"kuykqleuwgycpydwatkgiczdqgleegnu\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["uogmseavfyjrmovhuzmjuvhtnjivtsnh"],"columns":[{"name":"uogmseavfyjrmovhuzmjuvhtnjivtsnh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"ofqgaxtpamspgvdjxwdlokeazpsnmhvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"euynytnwjznsidqfhqcysmqlgazzhpjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ddkkarjvpbrdhcecnfoqchesnauufxoo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rsmezlhmfmifzfuehnsspxkgesqqwldm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bgvvwljyedbbcebondnzecydgyohvphk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqtpdlkgpbmyxkechvybgvekrqrjnwpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyovhcbbwsvzawlyctoofiveksbalyqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eldikjylgschsnabmlqzycekplrxnqba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvyyqufumpyzmbcqdvzhflihezucrdxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdwrzffbpltpbofeeggwfljuteohoapv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytjxcxkurlcxqvsmtpidobfbttkrdwdi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxzdwocclfhurxjgxpmkeyufbyqnyhiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmqbgicgggerizjjymvyhzupsrpntaar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jqqpizkxqbdwlvsknzdgmvmxxlhkoqza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzqhwmreyhwoforulpcyasgmushtbcum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lyxwbzcrbxrhhzwissarzbbllyqswtsf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjgnioyyhuezryjfqzyemhuphrauvxoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mccgvjrylkgetwlxnezafswueeojsfvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dleksyovbxeuqnykjoxzmqtjkasufvsy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"byrctakaayrvuuaehvbhpncdhornnxnu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohsaolwcqjjlwpbutdxiuoytwzeltobd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyplearpcdefttruqahaeqaroekayurh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jeireskqclcguqgwccuuqzaxheziiaxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qgrsapbhccxfquwlriqvkmsvnmxcfkou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"clsyodjqorvppprzqatkizmlqepyheyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtwbdqkdsmpvfsbgkdwrzomkolvejycd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjcqujlutiypyhgubxfetziopxtmqtng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zwzgjoddwyertngslimjpfzsosmjwhiz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zpnrpsmboutjdbkvkmsodctvuvcogved","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ettvwahqjbburpbgegumesaayencposa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qovvlysugmpqssfmxodstozcsaemgqpi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kaudxyqdjwydivmjkqeivetoygmktbsq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oioshucdmoflwcdxyaizzdzmuarbgrcd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rtnhiemmuheypzswdfxnrtevwcmxsniy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qckbohsnwordqyklgbsqdvyflwyarohd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjsslphnjouiieyappfiwnhivffrhopp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjncnhvmddbkobadsrxasaklmizmmmjm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"erdfybuuqgrusnhjhusjupwewmzwiwug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkzdmgsjmlkhrledaqsksiothjutnpyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbexgobjmewhbvmckhzkjngiswhiegrl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ioioeehtqevxzuevvmaojiuuicohjaou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ptlfbjfgkjgexjnhrrbdqcvifflqdpyp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghamfjyojsanxwcrftpszlfqazdkvhwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xcmunppfwbyvcmbkgjfllgtuhzlauiex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmnwoampksyrfklhdxfpawijpusvcbcx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajefmjptmssyjshucjxpnneljrprzhew","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jfsinbftypleflrxoavvnswvurasmvgd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbqysqlkjdcojmnwdmfjalbembjmpmeo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkmsxstvjdiitewotffkxcrwkafwsptc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knxkgszbmnlwzlwnntojfxcepfxvlagd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umdjtaigdzyekweqbfbiqdzunigyukkg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzzksydazsvmuoaajxgiitiybsyfzedg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uljcrpkkkjwxtfubmdcssicyfwdixcfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjiskfxmiruwxxhalfllwzqewzbdangb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grrwcprkbthptqhmtecybalwmowwfflr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvvuyddakebevpuejxjtnpulwedykrcd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqoyytzysahcyavdadcllsvqhyyufrtw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cpcxvppkiqerorrlczrvkbwvyijskrzi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhjjnwnxpbdgnftxlkqyfnnadoboxlzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmsgchjzllffpzkjislcwudqhfankxav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ewgitpsiplqzjsksqxxbatxhrqvxwtaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vrldsgnnrxdnevrzgordkrnjhwgnjrlj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"givglgqplarawbmhwiicaodeaiwndqzv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"veurfgmkerdqknpgzogjhucheapttpdb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wabjasrdnrffykliecqrgcoodkddclqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axizulxlixutwvgxnawwypdzkzgxjrgv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nickgpxxopzlbvidrobyoxtuqkghhgcv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znvgwnwjsvbjraxxzajioryfgrspwguc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ddtuzzasergtpwetibjbhcbnmpdtpsbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovrutdgsgrmaivqsmrmvrzpnvtjfxeti","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dusmpajminzvaflqrsflyyknxwxvlsle","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"usdtecncvgjpppzwvtdvjsguyvjmnngv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxxgjwwsotxpewsubqwqyerftkyyoacb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqcxwnrnqrioqxedffchgnsigwbazmxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"facnjqzosbtslewphseznokxnauzzxzc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmpfwtxmypkizkpgymgkamglllwyujro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntkcumibillxidhgrlatfgbwsguznxyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exorxduqixiwscgnyghzcaaehldqmfme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mczghtwiunuvjfsymkucqlgymxazhikh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dotoldqknfilrtlahyujgnzorqppvpis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgfixtxwwyjkyxbbihifrjygsezkzfqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxytxunfpluqidzmdvmjpvvyaclszjqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rtycbauedewhiomvpgeefsddudqjihwb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdiqcyxnvkkwqsjinvyulthlkxtbvzoc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhwusgzvxcyupebseiqafkfjxenubccw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tevkkkdgakdyjydtsxsxbjnrchfitcsz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zkcwkzmsosusyccxhqtbawbbfervzgin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lyduklhrjshwkutjervsbcdphaphyjpx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llggdwrgdxdvknzajmfmugdkqpnsydxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgjwqrgejlqrfxbnlukeyjqizisarutk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivtjgkrbpyltmnlqdmgddzbuobihnupu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqfpjgceklbqivyqgfmthsdbslhhjcto","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"npekwhoeahfarpiwtskmquywcqaowalp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnerastowdpblibaxqkciyqstfvhckjl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otolgwbsbzxlydyfpcykgcqdvepdgdip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blgbvwqasdmgplmaqivryzgbfcphgfuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tocluxntoqenomijjmxhsijzqpfkvgpa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qzokmancnexmeyppmgeoyaqokopxmznj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jncyoszueabejrwlitshdbyndmjoycua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669229,"databaseName":"models_schema","ddl":"CREATE TABLE `kvqskdqluyprqlisnljdnaxumzqetjoo` (\n `rrlafvjakfgfwbrlowthkshdowfzdkyj` int NOT NULL,\n `ymjbypvbjfopunyrfoiipeqjolumynks` int DEFAULT NULL,\n `fowdjyovsjhmgrrcvzjqbbipiralosee` int DEFAULT NULL,\n `kghdggstefwibndqkfnliabjqpkzlclj` int DEFAULT NULL,\n `awsoktvkzacpdcrtfgtxbllteegifywe` int DEFAULT NULL,\n `qqqjdwankclmobjydofdpmufdzqrbemm` int DEFAULT NULL,\n `elpeygiyolxgsqfqqfrgaqwcsiwywgfw` int DEFAULT NULL,\n `qrolnuochamdyaxzlkfyyaftlfpelyjl` int DEFAULT NULL,\n `ydawbxifcdqrdybkfhwomjmurvrwbmta` int DEFAULT NULL,\n `atbqzpouxjscgqqfyfjsknkrfvmvgplp` int DEFAULT NULL,\n `hbmkgqkknxelaiygqdwuifsgvoezwwno` int DEFAULT NULL,\n `fbjuswsqwuzdmmxicffpjniszvclzlsc` int DEFAULT NULL,\n `ooziocyxfolpwxsqqrcvtqsigkxaxrzd` int DEFAULT NULL,\n `olunngmxnhdztaokjgqsvztufqsweeyk` int DEFAULT NULL,\n `retvefwqupgfuooyngptkeglzdbjpqlx` int DEFAULT NULL,\n `esdqwlhizfmzghahnlvfadgempsuubjf` int DEFAULT NULL,\n `lkbyykdrdtkttnhshfsewfsibiwgardf` int DEFAULT NULL,\n `auhpmejagxecpeabqtzfcguuyirttqds` int DEFAULT NULL,\n `hzamsdcraobhklvdgxhjafzfqeerehpy` int DEFAULT NULL,\n `jxvjkcjzuwgikbmfezyyzpmwcebejndc` int DEFAULT NULL,\n `fdfuakdidilgrjjvtzeazioyzxceznvv` int DEFAULT NULL,\n `hymhvgrvninzfablvccohcxhwntwufob` int DEFAULT NULL,\n `gmbixipwlvogjcxvrkcpuqbmrqakpwdd` int DEFAULT NULL,\n `htnwhowmvrnftgfeotbljrfrtejtsqib` int DEFAULT NULL,\n `jrrwrdvjvecttzloqwblepckdhaeutfj` int DEFAULT NULL,\n `bolskxuebuqhwjpkjpsqmmrlxjfttxep` int DEFAULT NULL,\n `kjfyysovnapkzrnwbzpkmsydfdlzulku` int DEFAULT NULL,\n `aixenziwpwvdwyghlbwtpdahxluwzplp` int DEFAULT NULL,\n `oycwvsubzfoigduglkzzffbyvufrjiag` int DEFAULT NULL,\n `ikwenfsbuvxgdyplnrgqxszzofkpuffz` int DEFAULT NULL,\n `vqjlhrraxwxsvnsimzqihsvcuefcketl` int DEFAULT NULL,\n `japdqanfmrgztenmbjufhhlrzaslgpmr` int DEFAULT NULL,\n `onyzyrxfhwhimypwexifmveamtmnerdj` int DEFAULT NULL,\n `bgzisrxruaoawuzdpptqtenqfbhlzpgm` int DEFAULT NULL,\n `tysprxxtkpakdiaqtakhatgvowidagra` int DEFAULT NULL,\n `nlxrtzjrdrtpfzryfzwgyoihsdhukhky` int DEFAULT NULL,\n `fjhuhotzdloofjccvzedvlypvwbptnfv` int DEFAULT NULL,\n `mzpnshmnmqfnpbingcabmzomnexfcafx` int DEFAULT NULL,\n `faiqdendsnuliexaazbzjjknmudeizna` int DEFAULT NULL,\n `wqjgfpvorbojlkxhhwdoprlvgwenqgmy` int DEFAULT NULL,\n `zbsrkjfzmrhjcuqnkdhbjfvzxoluavqu` int DEFAULT NULL,\n `jjhinjeaknmgxtloomuwlvdvnrxshsqc` int DEFAULT NULL,\n `yzooxzeyttoxdoibmrhniormrhakvptl` int DEFAULT NULL,\n `rgnyouhptozynahgknhycdmhiscleayu` int DEFAULT NULL,\n `oivmnabaznagrqysjqbifywtamgdfoda` int DEFAULT NULL,\n `lmbpvgzvxjzmjpmctufpceyofiuswzmd` int DEFAULT NULL,\n `tqkrayveevouevrxmgxtxchxgxamdnvg` int DEFAULT NULL,\n `xigytzkbeducorfgqvnkoxbcmovjulmn` int DEFAULT NULL,\n `kvkzeuntfbtetkcxrqlmeqockpyjoyuj` int DEFAULT NULL,\n `ysyomzwbbzstepvvhlkyrwnpcimfswqt` int DEFAULT NULL,\n `usvdvrwhfrhxazcxtfefpsyvdjriddcq` int DEFAULT NULL,\n `acfgvlqalernpbdnhtslckcazvzqmdbh` int DEFAULT NULL,\n `qpudkfydbrwpzustjifqvizfgmakmwsv` int DEFAULT NULL,\n `zksmzkxaraihopappzilepxansvivirs` int DEFAULT NULL,\n `wkilmrjvxapadvutsvcqpjnhqszqpahr` int DEFAULT NULL,\n `zoahwwtxwdpfgxgilzgrychjtedrlpzg` int DEFAULT NULL,\n `qqtylovmqbfrlawrxjnljydczipczrwb` int DEFAULT NULL,\n `besuetnhbgvhspvhdmhoctzphcptnudt` int DEFAULT NULL,\n `bldchpxecokmyrmnlftfkfyoyugjcoqu` int DEFAULT NULL,\n `clvgygeymxmownfttjegfatgcvksliyr` int DEFAULT NULL,\n `dmnrrccawlpbbppgeainhkgkpwnohfhq` int DEFAULT NULL,\n `kysgnqtkfmqnhwckyvionlsrucwiyemv` int DEFAULT NULL,\n `datdcwvrdlrwkjmvuwzaffzketimriqt` int DEFAULT NULL,\n `qfiqxhwmlxglpkjoznarlwhfynutxaud` int DEFAULT NULL,\n `ugcaeqegilwevvafkhnzjabjdqjsvalu` int DEFAULT NULL,\n `uqsanuzmvfblcpjnzrtcpkvgwcdldcsj` int DEFAULT NULL,\n `wthoetennmfhetracjfbhajduilipoff` int DEFAULT NULL,\n `hhnqlwotmxhcumpnzadlfcqhawlwvcuh` int DEFAULT NULL,\n `nqmsjyujdcfqerwscwzqtatyrixcwbom` int DEFAULT NULL,\n `tvodxhmujaakyqmckiawdtimzrbecnrq` int DEFAULT NULL,\n `ztazdedwrjukdubfxaxvnnmtsqpolqms` int DEFAULT NULL,\n `bluzwlefintmazctwfvdpujrmxwthwlr` int DEFAULT NULL,\n `mrcynxfxghghnqcecuucvoolkzvfjjtq` int DEFAULT NULL,\n `lwadbuptnxrhipciukrpwnvqviqbzvqo` int DEFAULT NULL,\n `heakcnlcspfzorjsuqyezdrugejxqknm` int DEFAULT NULL,\n `zlcokmlvumnlhzkljcqrtampcardknqy` int DEFAULT NULL,\n `driuwatqywgzgvdbxlsnglffrpwydzxz` int DEFAULT NULL,\n `ecnuaqupwpwkaldqqbhvhugsnmkoygba` int DEFAULT NULL,\n `cmrucqjijlfpmhgzprndylqhgxzosbdo` int DEFAULT NULL,\n `sytqqozsazmuqehvztqlkahsksxntmim` int DEFAULT NULL,\n `oywjbtveuqovxtgdeqnguvrnzyjtxzgi` int DEFAULT NULL,\n `ekinhsgwvoayyvllbxlefbamolmjozzv` int DEFAULT NULL,\n `fselycmqlehjcuhrucdbftzrfmkxlybt` int DEFAULT NULL,\n `ngigphuombfndmzsodltnqawjogpiftl` int DEFAULT NULL,\n `cwcywsofsleoilmtqytmntzgfrieslag` int DEFAULT NULL,\n `rhvtcoeglwvvgahvgikrxbrlfkmbxnks` int DEFAULT NULL,\n `lkjxtbctmraakecxnlwkjzkizszjyqxb` int DEFAULT NULL,\n `rrfbelrxisujsnechxcdvgvdgyfncihp` int DEFAULT NULL,\n `asosfzkwxinustnelnykcjharwbrqvqt` int DEFAULT NULL,\n `bisokqbyjlfhxtaanlulkfyuqxvlljav` int DEFAULT NULL,\n `maxtdilrenuldkkoblpajelbxinwwlxn` int DEFAULT NULL,\n `qbzqorsfhsoluhxniedvlwsnqmdllxkm` int DEFAULT NULL,\n `ghsrxgsupvlggurgtbizotqxubchejfn` int DEFAULT NULL,\n `hmzlthrglwuwnxcgmtkpcaihocgvldjh` int DEFAULT NULL,\n `ebonfkftqucxacssdjxyxsupqarbxgig` int DEFAULT NULL,\n `oanmnqjghkndhrfofcbomjqvvtkmuwpw` int DEFAULT NULL,\n `dnjxznlyxurnoicgkwsalwytjhmnvsld` int DEFAULT NULL,\n `vsafxtbknvwkzmmeamnfkeexaqnaxxlj` int DEFAULT NULL,\n `mzygdjeryjfynfumqzlmaqrvzwhvysro` int DEFAULT NULL,\n `auahfcfmcxafvbpwognxzozjrkasyjyi` int DEFAULT NULL,\n PRIMARY KEY (`rrlafvjakfgfwbrlowthkshdowfzdkyj`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"kvqskdqluyprqlisnljdnaxumzqetjoo\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["rrlafvjakfgfwbrlowthkshdowfzdkyj"],"columns":[{"name":"rrlafvjakfgfwbrlowthkshdowfzdkyj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"ymjbypvbjfopunyrfoiipeqjolumynks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fowdjyovsjhmgrrcvzjqbbipiralosee","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kghdggstefwibndqkfnliabjqpkzlclj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awsoktvkzacpdcrtfgtxbllteegifywe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqqjdwankclmobjydofdpmufdzqrbemm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"elpeygiyolxgsqfqqfrgaqwcsiwywgfw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qrolnuochamdyaxzlkfyyaftlfpelyjl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydawbxifcdqrdybkfhwomjmurvrwbmta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atbqzpouxjscgqqfyfjsknkrfvmvgplp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbmkgqkknxelaiygqdwuifsgvoezwwno","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbjuswsqwuzdmmxicffpjniszvclzlsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ooziocyxfolpwxsqqrcvtqsigkxaxrzd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"olunngmxnhdztaokjgqsvztufqsweeyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"retvefwqupgfuooyngptkeglzdbjpqlx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"esdqwlhizfmzghahnlvfadgempsuubjf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lkbyykdrdtkttnhshfsewfsibiwgardf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"auhpmejagxecpeabqtzfcguuyirttqds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hzamsdcraobhklvdgxhjafzfqeerehpy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jxvjkcjzuwgikbmfezyyzpmwcebejndc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fdfuakdidilgrjjvtzeazioyzxceznvv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hymhvgrvninzfablvccohcxhwntwufob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmbixipwlvogjcxvrkcpuqbmrqakpwdd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"htnwhowmvrnftgfeotbljrfrtejtsqib","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jrrwrdvjvecttzloqwblepckdhaeutfj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bolskxuebuqhwjpkjpsqmmrlxjfttxep","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjfyysovnapkzrnwbzpkmsydfdlzulku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aixenziwpwvdwyghlbwtpdahxluwzplp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oycwvsubzfoigduglkzzffbyvufrjiag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikwenfsbuvxgdyplnrgqxszzofkpuffz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqjlhrraxwxsvnsimzqihsvcuefcketl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"japdqanfmrgztenmbjufhhlrzaslgpmr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"onyzyrxfhwhimypwexifmveamtmnerdj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bgzisrxruaoawuzdpptqtenqfbhlzpgm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tysprxxtkpakdiaqtakhatgvowidagra","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nlxrtzjrdrtpfzryfzwgyoihsdhukhky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjhuhotzdloofjccvzedvlypvwbptnfv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzpnshmnmqfnpbingcabmzomnexfcafx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"faiqdendsnuliexaazbzjjknmudeizna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqjgfpvorbojlkxhhwdoprlvgwenqgmy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbsrkjfzmrhjcuqnkdhbjfvzxoluavqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjhinjeaknmgxtloomuwlvdvnrxshsqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzooxzeyttoxdoibmrhniormrhakvptl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgnyouhptozynahgknhycdmhiscleayu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oivmnabaznagrqysjqbifywtamgdfoda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmbpvgzvxjzmjpmctufpceyofiuswzmd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqkrayveevouevrxmgxtxchxgxamdnvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xigytzkbeducorfgqvnkoxbcmovjulmn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvkzeuntfbtetkcxrqlmeqockpyjoyuj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ysyomzwbbzstepvvhlkyrwnpcimfswqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"usvdvrwhfrhxazcxtfefpsyvdjriddcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"acfgvlqalernpbdnhtslckcazvzqmdbh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qpudkfydbrwpzustjifqvizfgmakmwsv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zksmzkxaraihopappzilepxansvivirs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wkilmrjvxapadvutsvcqpjnhqszqpahr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zoahwwtxwdpfgxgilzgrychjtedrlpzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqtylovmqbfrlawrxjnljydczipczrwb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"besuetnhbgvhspvhdmhoctzphcptnudt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bldchpxecokmyrmnlftfkfyoyugjcoqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"clvgygeymxmownfttjegfatgcvksliyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dmnrrccawlpbbppgeainhkgkpwnohfhq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kysgnqtkfmqnhwckyvionlsrucwiyemv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"datdcwvrdlrwkjmvuwzaffzketimriqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfiqxhwmlxglpkjoznarlwhfynutxaud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugcaeqegilwevvafkhnzjabjdqjsvalu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqsanuzmvfblcpjnzrtcpkvgwcdldcsj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wthoetennmfhetracjfbhajduilipoff","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhnqlwotmxhcumpnzadlfcqhawlwvcuh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqmsjyujdcfqerwscwzqtatyrixcwbom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvodxhmujaakyqmckiawdtimzrbecnrq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ztazdedwrjukdubfxaxvnnmtsqpolqms","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bluzwlefintmazctwfvdpujrmxwthwlr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrcynxfxghghnqcecuucvoolkzvfjjtq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwadbuptnxrhipciukrpwnvqviqbzvqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"heakcnlcspfzorjsuqyezdrugejxqknm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zlcokmlvumnlhzkljcqrtampcardknqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"driuwatqywgzgvdbxlsnglffrpwydzxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecnuaqupwpwkaldqqbhvhugsnmkoygba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmrucqjijlfpmhgzprndylqhgxzosbdo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sytqqozsazmuqehvztqlkahsksxntmim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oywjbtveuqovxtgdeqnguvrnzyjtxzgi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekinhsgwvoayyvllbxlefbamolmjozzv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fselycmqlehjcuhrucdbftzrfmkxlybt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ngigphuombfndmzsodltnqawjogpiftl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwcywsofsleoilmtqytmntzgfrieslag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhvtcoeglwvvgahvgikrxbrlfkmbxnks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lkjxtbctmraakecxnlwkjzkizszjyqxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrfbelrxisujsnechxcdvgvdgyfncihp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"asosfzkwxinustnelnykcjharwbrqvqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bisokqbyjlfhxtaanlulkfyuqxvlljav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"maxtdilrenuldkkoblpajelbxinwwlxn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qbzqorsfhsoluhxniedvlwsnqmdllxkm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghsrxgsupvlggurgtbizotqxubchejfn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmzlthrglwuwnxcgmtkpcaihocgvldjh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebonfkftqucxacssdjxyxsupqarbxgig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oanmnqjghkndhrfofcbomjqvvtkmuwpw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dnjxznlyxurnoicgkwsalwytjhmnvsld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsafxtbknvwkzmmeamnfkeexaqnaxxlj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzygdjeryjfynfumqzlmaqrvzwhvysro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"auahfcfmcxafvbpwognxzozjrkasyjyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669263,"databaseName":"models_schema","ddl":"CREATE TABLE `kwcrcymugsbqmlclxhvjycitcrcbqmuq` (\n `fpkgbhuaifrwqtizwvwxrvdmoidfwujy` int NOT NULL,\n `ieewmyqsohkpxsqbcsotetnosbhhfomf` int DEFAULT NULL,\n `asihplnpepskwstcsobwmcvjfbeuwjly` int DEFAULT NULL,\n `kbchlriuuaagptswuujftaoydatvwhrb` int DEFAULT NULL,\n `wwvipxrsegeawmsmupnfquwlohegygta` int DEFAULT NULL,\n `dlacjrrnmadytllozrqrhlhffjvomkiv` int DEFAULT NULL,\n `wxstkdpdicixqwnncsokhflposigtyjz` int DEFAULT NULL,\n `wednanqhqrvdnaoucqymifselcjngseo` int DEFAULT NULL,\n `eqqfoivodrjvmunwayzadfggmdajbwde` int DEFAULT NULL,\n `zqinmcpdjnysqcxwcownejqhqmymamzj` int DEFAULT NULL,\n `zfrwlgfcpwuxwqntcupmfummywxzciwq` int DEFAULT NULL,\n `csxhphabmqqwyowvpsgnvnnnxxyirmcf` int DEFAULT NULL,\n `azttlntlmbalunvpazfulkmtrkjtblya` int DEFAULT NULL,\n `oepzhohxrhxxqvcymnispdixhjytmnqu` int DEFAULT NULL,\n `fjllrgmqifqpdaykgimxpugotmakfxpd` int DEFAULT NULL,\n `fgcutiulagojcpjjnrgsmlnachmicqzf` int DEFAULT NULL,\n `zppsnraricnkwrkwzomulbliwcnrjono` int DEFAULT NULL,\n `jafojzptebuohsztwszkuuvomxmfvvta` int DEFAULT NULL,\n `zljljblffvttskdltfbkrffvdeuqkcsg` int DEFAULT NULL,\n `zdwnhebnufsttbeefqoxsxwsdjuepanr` int DEFAULT NULL,\n `zcvlzbirbottdajyzlocdxjhzuhwqwek` int DEFAULT NULL,\n `mbhoocpptiwsecgvqjpztfxmonqzffgp` int DEFAULT NULL,\n `mzukhalksbddmvsjdpipkhbjxlgrfivk` int DEFAULT NULL,\n `nfpiujqdcokucglqawutibjxxcwozmkp` int DEFAULT NULL,\n `utzphsnjttdblpnjnwynuhnwuzfqkrar` int DEFAULT NULL,\n `hshefqddhcwlvlnvfckanuledktfaock` int DEFAULT NULL,\n `nqhhavypbrpcudfathlveytxnpfkgulp` int DEFAULT NULL,\n `deytyjyfvcowcdqqypfmekxizawhkfkc` int DEFAULT NULL,\n `tljcvejgtgqulaiijbyspahvpgaxknvt` int DEFAULT NULL,\n `lqbrsniesjtkxysbgtoxdcdcvutiftvm` int DEFAULT NULL,\n `amkstvgebbtqxrumtrpxzsnjsqrdtmim` int DEFAULT NULL,\n `vjodsxygwpmzbwemiaeytwramqetglls` int DEFAULT NULL,\n `ulwotnfodvkmwjrnpyhwqphubjxjwzpo` int DEFAULT NULL,\n `srxavgyxploqqmxzixvrzxkslnkpiteo` int DEFAULT NULL,\n `cqormvbbukeqgydjprhaqtjmylzleehd` int DEFAULT NULL,\n `macprluugscckjcdfxnywwsrarrhuywa` int DEFAULT NULL,\n `azimmqcnejapgfmnaegacmhlcgiahnbv` int DEFAULT NULL,\n `nnmdgjbpindfsgzvfxrhxkxwyguoenyj` int DEFAULT NULL,\n `ijatqaeutlroeespreuajprirfusgoee` int DEFAULT NULL,\n `fozgqmqdtbucmmopxppkxzccgncrbqqd` int DEFAULT NULL,\n `naorrlatoscnouvzqrgxyyvxozghkdmx` int DEFAULT NULL,\n `tmuzetlunknddottleuvdzwiwbcevcbb` int DEFAULT NULL,\n `utsygkwlkhifriyqezendpidlznzmqtt` int DEFAULT NULL,\n `fpwvpwdeyxhzrkdchomsfkgfdubeazgx` int DEFAULT NULL,\n `cezfmexzwgevxnoqazueaflbdzikinsr` int DEFAULT NULL,\n `dcqylunzbtprhrchfnucyqfnxmrnkgyp` int DEFAULT NULL,\n `doobfmjmhljliectfrufytnfwdxqjpxn` int DEFAULT NULL,\n `bsztudieeulseddbhhenmaatnndrxntx` int DEFAULT NULL,\n `cvraaqpaklfgqwqktyyzdbfrlwalfmsc` int DEFAULT NULL,\n `giznildgzbgbskuwvvstrmdlhwxkxmne` int DEFAULT NULL,\n `skddusrbykugmseobhbyghsllrprxclf` int DEFAULT NULL,\n `zgqtujnsojcuikbgrncwzarkeqsraxte` int DEFAULT NULL,\n `ypscijyemubhoyhaituiployvxeukktd` int DEFAULT NULL,\n `isxzpbhtjtvqxaboflcjzfcmqktszgkh` int DEFAULT NULL,\n `uvpwoqgnlurmpayqlksqydfvmlkigxof` int DEFAULT NULL,\n `pqanoxfrwfknfiknenduyhuhfadgjefh` int DEFAULT NULL,\n `giumkrcgfsokhpnbdcckslxygrxwavvf` int DEFAULT NULL,\n `qzafvtzkvjnceplhnphyebabkgtukjig` int DEFAULT NULL,\n `oidcktpjncqigmrqpbrvsxocqxjdjjxn` int DEFAULT NULL,\n `jrqzmthkqohcgqlohypyfsreffcnzvvg` int DEFAULT NULL,\n `aprhhwtdvskvqoikwvjzohrocamuhbnz` int DEFAULT NULL,\n `fxhczudffnthgxalzckehzmhdefynski` int DEFAULT NULL,\n `ppikawkyjbhrlsdhakdlvjxtawodycze` int DEFAULT NULL,\n `dvvupewknbssyfkddixxmiuysqqhlhbq` int DEFAULT NULL,\n `vjwhqxzkiobjijctgudtjryxlonvhzzf` int DEFAULT NULL,\n `kxgrulxdtbpvdzuppedqseikskfnoand` int DEFAULT NULL,\n `cjgoehblgurtdggqvtkuqooabbwrlpjo` int DEFAULT NULL,\n `gvqqwoohhyjvzumeccwkvdpyittgdmwq` int DEFAULT NULL,\n `tblboijzqbrnqjpzljnbuameanodcpcy` int DEFAULT NULL,\n `phlwaphfxcsqtlyzgrgjwozfnsoqepmq` int DEFAULT NULL,\n `yffdzgvoykcrjzebspqlsswtxxbltdqk` int DEFAULT NULL,\n `nvaslmglntwmhgfzrnaotyqwhcmubddd` int DEFAULT NULL,\n `csmnmmoquvyfzvuhvrcwuuqxzemqlzex` int DEFAULT NULL,\n `pxjirofdwxjohaioffoljeieohvbikrz` int DEFAULT NULL,\n `vbcvfrzkflzvbmjhfdnswfzgpdntdhrg` int DEFAULT NULL,\n `smrbqklhsqpruktzdvafrebagxcpuwah` int DEFAULT NULL,\n `cpmesatvanrntcamkvpeuohqqghrlsbi` int DEFAULT NULL,\n `hjwmtnijltegvqctutknadcycwcbeloq` int DEFAULT NULL,\n `zailzqxrqsvfctltyulaifyrvrfmywun` int DEFAULT NULL,\n `iwrtlddpeiwrmafksxsqnxxzgiankjnr` int DEFAULT NULL,\n `zkbkhtihikgrmldhndtvclivlozwpsxh` int DEFAULT NULL,\n `igczluiarsaogjergolgbewzcqpmgahk` int DEFAULT NULL,\n `pybjckupciwvrmqjofmrjyuuzjxpbaqy` int DEFAULT NULL,\n `wcrawubeiobiwgszlspmsgbcjcigvoty` int DEFAULT NULL,\n `cdxiiwrlbixnswnyueuxicuwhxxpvoqr` int DEFAULT NULL,\n `yomrwdvobanzpqzbrrgqosmsuvksxxjz` int DEFAULT NULL,\n `nxatzawizislowhvihaddbwgmohurmjz` int DEFAULT NULL,\n `albdlsvtsamtixkqwflhxrgjriudthqo` int DEFAULT NULL,\n `jvnuooerllklqcuwzcihkemcwuvclldx` int DEFAULT NULL,\n `bcdzaftgsnqrbdrgmqwxjmgcyasmbygk` int DEFAULT NULL,\n `cfcustnasuowofrpyddjhziaxetgtrvp` int DEFAULT NULL,\n `pxnawhxdpmuxuczujemxhodegpdkiiif` int DEFAULT NULL,\n `yeiyxgndsuijoxgsjwzhpuivcnusczqy` int DEFAULT NULL,\n `wcpkaplameyaezbqewnjnbrkmzzcxmjj` int DEFAULT NULL,\n `oxuwhocwpmxskpzzvxghbygkutzdtsuc` int DEFAULT NULL,\n `vbsuwczuaceqzldhvtkegheturnponsd` int DEFAULT NULL,\n `yzuqfmpnpsqksrhibipgyyxvbqofkhva` int DEFAULT NULL,\n `kgqxhsqzwoxsixxyhyllzgevtbodlqyy` int DEFAULT NULL,\n `qpmhsnxnowfjnjjdlcheuydeptbkfzxt` int DEFAULT NULL,\n `ksuvqxrnbwtrqxabwdjywqsyqfwbedfu` int DEFAULT NULL,\n PRIMARY KEY (`fpkgbhuaifrwqtizwvwxrvdmoidfwujy`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"kwcrcymugsbqmlclxhvjycitcrcbqmuq\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["fpkgbhuaifrwqtizwvwxrvdmoidfwujy"],"columns":[{"name":"fpkgbhuaifrwqtizwvwxrvdmoidfwujy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"ieewmyqsohkpxsqbcsotetnosbhhfomf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"asihplnpepskwstcsobwmcvjfbeuwjly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kbchlriuuaagptswuujftaoydatvwhrb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwvipxrsegeawmsmupnfquwlohegygta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dlacjrrnmadytllozrqrhlhffjvomkiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxstkdpdicixqwnncsokhflposigtyjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wednanqhqrvdnaoucqymifselcjngseo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqqfoivodrjvmunwayzadfggmdajbwde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqinmcpdjnysqcxwcownejqhqmymamzj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zfrwlgfcpwuxwqntcupmfummywxzciwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"csxhphabmqqwyowvpsgnvnnnxxyirmcf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"azttlntlmbalunvpazfulkmtrkjtblya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oepzhohxrhxxqvcymnispdixhjytmnqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjllrgmqifqpdaykgimxpugotmakfxpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fgcutiulagojcpjjnrgsmlnachmicqzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zppsnraricnkwrkwzomulbliwcnrjono","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jafojzptebuohsztwszkuuvomxmfvvta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zljljblffvttskdltfbkrffvdeuqkcsg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdwnhebnufsttbeefqoxsxwsdjuepanr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zcvlzbirbottdajyzlocdxjhzuhwqwek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbhoocpptiwsecgvqjpztfxmonqzffgp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzukhalksbddmvsjdpipkhbjxlgrfivk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfpiujqdcokucglqawutibjxxcwozmkp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utzphsnjttdblpnjnwynuhnwuzfqkrar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hshefqddhcwlvlnvfckanuledktfaock","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqhhavypbrpcudfathlveytxnpfkgulp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"deytyjyfvcowcdqqypfmekxizawhkfkc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tljcvejgtgqulaiijbyspahvpgaxknvt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqbrsniesjtkxysbgtoxdcdcvutiftvm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"amkstvgebbtqxrumtrpxzsnjsqrdtmim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjodsxygwpmzbwemiaeytwramqetglls","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ulwotnfodvkmwjrnpyhwqphubjxjwzpo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"srxavgyxploqqmxzixvrzxkslnkpiteo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqormvbbukeqgydjprhaqtjmylzleehd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"macprluugscckjcdfxnywwsrarrhuywa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"azimmqcnejapgfmnaegacmhlcgiahnbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nnmdgjbpindfsgzvfxrhxkxwyguoenyj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijatqaeutlroeespreuajprirfusgoee","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fozgqmqdtbucmmopxppkxzccgncrbqqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"naorrlatoscnouvzqrgxyyvxozghkdmx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmuzetlunknddottleuvdzwiwbcevcbb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utsygkwlkhifriyqezendpidlznzmqtt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpwvpwdeyxhzrkdchomsfkgfdubeazgx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cezfmexzwgevxnoqazueaflbdzikinsr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcqylunzbtprhrchfnucyqfnxmrnkgyp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"doobfmjmhljliectfrufytnfwdxqjpxn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bsztudieeulseddbhhenmaatnndrxntx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvraaqpaklfgqwqktyyzdbfrlwalfmsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"giznildgzbgbskuwvvstrmdlhwxkxmne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skddusrbykugmseobhbyghsllrprxclf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zgqtujnsojcuikbgrncwzarkeqsraxte","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypscijyemubhoyhaituiployvxeukktd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"isxzpbhtjtvqxaboflcjzfcmqktszgkh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvpwoqgnlurmpayqlksqydfvmlkigxof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqanoxfrwfknfiknenduyhuhfadgjefh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"giumkrcgfsokhpnbdcckslxygrxwavvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qzafvtzkvjnceplhnphyebabkgtukjig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oidcktpjncqigmrqpbrvsxocqxjdjjxn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jrqzmthkqohcgqlohypyfsreffcnzvvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aprhhwtdvskvqoikwvjzohrocamuhbnz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxhczudffnthgxalzckehzmhdefynski","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ppikawkyjbhrlsdhakdlvjxtawodycze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvvupewknbssyfkddixxmiuysqqhlhbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjwhqxzkiobjijctgudtjryxlonvhzzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxgrulxdtbpvdzuppedqseikskfnoand","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cjgoehblgurtdggqvtkuqooabbwrlpjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gvqqwoohhyjvzumeccwkvdpyittgdmwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tblboijzqbrnqjpzljnbuameanodcpcy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phlwaphfxcsqtlyzgrgjwozfnsoqepmq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yffdzgvoykcrjzebspqlsswtxxbltdqk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvaslmglntwmhgfzrnaotyqwhcmubddd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"csmnmmoquvyfzvuhvrcwuuqxzemqlzex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxjirofdwxjohaioffoljeieohvbikrz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbcvfrzkflzvbmjhfdnswfzgpdntdhrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smrbqklhsqpruktzdvafrebagxcpuwah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cpmesatvanrntcamkvpeuohqqghrlsbi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjwmtnijltegvqctutknadcycwcbeloq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zailzqxrqsvfctltyulaifyrvrfmywun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwrtlddpeiwrmafksxsqnxxzgiankjnr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zkbkhtihikgrmldhndtvclivlozwpsxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igczluiarsaogjergolgbewzcqpmgahk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pybjckupciwvrmqjofmrjyuuzjxpbaqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcrawubeiobiwgszlspmsgbcjcigvoty","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cdxiiwrlbixnswnyueuxicuwhxxpvoqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yomrwdvobanzpqzbrrgqosmsuvksxxjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxatzawizislowhvihaddbwgmohurmjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"albdlsvtsamtixkqwflhxrgjriudthqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvnuooerllklqcuwzcihkemcwuvclldx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bcdzaftgsnqrbdrgmqwxjmgcyasmbygk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfcustnasuowofrpyddjhziaxetgtrvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxnawhxdpmuxuczujemxhodegpdkiiif","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yeiyxgndsuijoxgsjwzhpuivcnusczqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcpkaplameyaezbqewnjnbrkmzzcxmjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oxuwhocwpmxskpzzvxghbygkutzdtsuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbsuwczuaceqzldhvtkegheturnponsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzuqfmpnpsqksrhibipgyyxvbqofkhva","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kgqxhsqzwoxsixxyhyllzgevtbodlqyy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qpmhsnxnowfjnjjdlcheuydeptbkfzxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ksuvqxrnbwtrqxabwdjywqsyqfwbedfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669293,"databaseName":"models_schema","ddl":"CREATE TABLE `kxmwllnisximtjilqoifyciirajdkdqe` (\n `ameelqvcniuvwnvoaicfoifazyoqyqdj` int NOT NULL,\n `sgvhytprvsnywerhedktuivjybngrdjx` int DEFAULT NULL,\n `xyqwmelzbxwbbkggxtmxkkrlysdlzfox` int DEFAULT NULL,\n `ijssffvpztkibtgqjczpvzzzedaaedms` int DEFAULT NULL,\n `zrsauytaijrpkchwtkdexzmxpqcflfey` int DEFAULT NULL,\n `panoyfndwqhnhbwjygdfydlwzmpgnomo` int DEFAULT NULL,\n `ulppwigmcevycntsiujijxmsqjshiemq` int DEFAULT NULL,\n `jiihivlsgaklojftnfbyrvfhqsczsdav` int DEFAULT NULL,\n `vsektuzomntxttpbfgodepyjemkwmrnm` int DEFAULT NULL,\n `sybwoxlmmpqqropibzfasbxdrvdxabqq` int DEFAULT NULL,\n `rqasytnuupyclhdomhjoxkmnvmovfrsr` int DEFAULT NULL,\n `crflryfjxxsxwvkkpqhidxvfgowhujlm` int DEFAULT NULL,\n `hyvzviprtyhzvrgagfscmtojiaaagpeu` int DEFAULT NULL,\n `qystjgdvambgwlyzjmyygkwlrwvjwoym` int DEFAULT NULL,\n `cwgjepybmnxhdmnshipqamihehjdlcga` int DEFAULT NULL,\n `aayhzyyjfvyojvwmenckoqxemnnhpuve` int DEFAULT NULL,\n `rlvnppbxkufzefnmzdjcapkwcylrbyur` int DEFAULT NULL,\n `pdtyuxgomggwntqdvaiinxfmskenxbbk` int DEFAULT NULL,\n `pgrdrudfrrynyqfgyylqriqqhvlpszny` int DEFAULT NULL,\n `eklrcnbfafulbbqcidbjxztflovxerae` int DEFAULT NULL,\n `hdwllitydxrxxafxpmnpdixgwtaanejj` int DEFAULT NULL,\n `vfadmgsmnjkvzkhrjcjotohwplkztyil` int DEFAULT NULL,\n `hkuayvpqhdjjugfsqqrplzsuprayyjwr` int DEFAULT NULL,\n `ftudsbmlxmelwsgwjkpudfqxsypfvpbu` int DEFAULT NULL,\n `rhtuqijdulxclntezatwnuxyhloonrcc` int DEFAULT NULL,\n `xccmiwneldgulfqurywdncanftnwkukm` int DEFAULT NULL,\n `gqyjdcmsztflpyrjleyrcnjqlwvsiujr` int DEFAULT NULL,\n `ndqporktkxkrdxdickmuzsbdsmvhdcwq` int DEFAULT NULL,\n `dbkvjayqqrvrxoqweteccxtheicomtxp` int DEFAULT NULL,\n `sdhlfqinykhbuudfxtcjltaswfudkzpq` int DEFAULT NULL,\n `acpussvueblyikzbrxxzljrmrdmtugne` int DEFAULT NULL,\n `vaunagwjmswaidxwobmeaomuhxezbkej` int DEFAULT NULL,\n `baaupbhljngsnvvkgadrxpourwpmuskw` int DEFAULT NULL,\n `jrfuqwscitnqmxiluhlihyyshieutemg` int DEFAULT NULL,\n `rzmhrsiydgsgfquilljzjnwxumhuvqyn` int DEFAULT NULL,\n `eeqccojbxznjxlxsxlphuwolwvmkglms` int DEFAULT NULL,\n `tmoratqvtoremqudjtnpoispmepwyzeg` int DEFAULT NULL,\n `tyvmqbjemwcrhsbcsgnoujyaiuyouupx` int DEFAULT NULL,\n `hekacutyzahwoswpusorycgqceouvebh` int DEFAULT NULL,\n `uasmepxqeqmqcpscgkkiajzldvfkzzsf` int DEFAULT NULL,\n `txylsflrwdbhwqaqoeyunazojddbrvan` int DEFAULT NULL,\n `mruxbujmoraufmjzhfxgfrpownzfwujl` int DEFAULT NULL,\n `hwuaapzoufgbjvjjdsdmddcmxhmcrgqz` int DEFAULT NULL,\n `acxivmoszamiwgedtaexxyagvrieftxe` int DEFAULT NULL,\n `xvvomrorgjdxnfgnnyvkvuhkcwatltgm` int DEFAULT NULL,\n `tammnlplvqdtmwnakikgbszkjqebfqoq` int DEFAULT NULL,\n `yxoyntwbngsflzhmmcblyexdrbovcaiv` int DEFAULT NULL,\n `btzcfeydlgmdmaofjevkxgljpjxbmohl` int DEFAULT NULL,\n `dxecwprfsfzqfjbggfhonvmhypazzzys` int DEFAULT NULL,\n `pjjwhyhcqfyxvaxubdrfcuydlkecramv` int DEFAULT NULL,\n `cchlakycfnlzxevqermjsnqacrkalrad` int DEFAULT NULL,\n `lpktegkaflkyxoztzofsofyfcublbsfs` int DEFAULT NULL,\n `opcpzwxyytucdeqcloxkbfhuolgqaarp` int DEFAULT NULL,\n `mzduaqpymuqdnqmcdrshapwecrocpugp` int DEFAULT NULL,\n `pmnkrwvcyjtpzlawlaejgmbbskybuwpl` int DEFAULT NULL,\n `ygnzjcwosvmyfwywmjynnzkwnugeyrzy` int DEFAULT NULL,\n `tcpqnkvuujimskkyjhtfraunliwnjhrt` int DEFAULT NULL,\n `cvoojqhnwmywxciuqwudivwyyrbnkxbe` int DEFAULT NULL,\n `itpmxdvzqttcgvkouqwvfxotmgcfzrtn` int DEFAULT NULL,\n `taumlqhosqlxxaeapojzjtdqbgscckgc` int DEFAULT NULL,\n `iaatigwtqefisdfwvcsosxilfqudwncm` int DEFAULT NULL,\n `msaaqvasfsrxaircsolfhirnkailmhmq` int DEFAULT NULL,\n `pgyrrkflbxsnmkxnhqezrayjilkioadr` int DEFAULT NULL,\n `xignvwphcbnysboasiojaplpfpmwzdlp` int DEFAULT NULL,\n `hkwdfhxvyyikqclgrktmzdxluhmgpbqv` int DEFAULT NULL,\n `gkybkjhyxdfdzaxdflhnbkekyuutagca` int DEFAULT NULL,\n `ecihkvqkqxsdgpcacjdkwlowfknzdrze` int DEFAULT NULL,\n `vkxztlvfbzgcldvpqdbmictzyoupasxy` int DEFAULT NULL,\n `pzimjgdfhhutjzzubyyhvpovwtdlhlfl` int DEFAULT NULL,\n `lmwaftjkravrqxnmqrmerojednjxhixb` int DEFAULT NULL,\n `xhspfdsltwsqbrlntoqakqjffmyslblj` int DEFAULT NULL,\n `dialhtxjfputtpqaykdwpcomknyyflmj` int DEFAULT NULL,\n `ezvslrkjxxhxovbomipvacgxwygbxoje` int DEFAULT NULL,\n `fxvkwcokkhgzvujlqmohsbkyatezksdq` int DEFAULT NULL,\n `rhsqzvgcvlfkovchzosbnbgxbuhviqpd` int DEFAULT NULL,\n `rknpzzfwtnurykllcrwexsbxcnivjigg` int DEFAULT NULL,\n `rgaekhethuyiviwmfbpgskmkcezhvrjn` int DEFAULT NULL,\n `ffgvifvwauxxzvagjogntqhfshsslemy` int DEFAULT NULL,\n `eefgjxlwhesixgleaysxkajzftltquvn` int DEFAULT NULL,\n `gasmmczgizzupwxpymgevmedkyceckfv` int DEFAULT NULL,\n `wucfprszsgogqholzhvndpmibzwrbkem` int DEFAULT NULL,\n `duuysswtxazalcmipvxvscvctxbaapsp` int DEFAULT NULL,\n `gykplnehekfozmxsxchofesgkntcvwij` int DEFAULT NULL,\n `tuwzqkcovzommeganbmlvxaloadmaiqi` int DEFAULT NULL,\n `ectygjfueatkayapaxduaelmdddgoaek` int DEFAULT NULL,\n `abentfrjgwwuyxrlrdkyhswlkaewgybe` int DEFAULT NULL,\n `heglcrzqndmtlsvuldmdemgsrjcptdpu` int DEFAULT NULL,\n `cqhuyinqqhourauldrgatsvofitkjbbi` int DEFAULT NULL,\n `vnvvinmuobljddfafuowdgneloiksfuk` int DEFAULT NULL,\n `zxlcnrxyndoadkthbepweaylunmikxjp` int DEFAULT NULL,\n `pryipistcyumtcjuvsynwvjcmbgdfuiy` int DEFAULT NULL,\n `ivvdlhcsapfpugalexcqoigchlctbvwh` int DEFAULT NULL,\n `royqnqcwsppnhprpdcqpbzwuzqcftnsd` int DEFAULT NULL,\n `hyvjdwthlivjuwkoftvlecwhqgcmnqmc` int DEFAULT NULL,\n `aafyacikdhomvnlxknrpecgfvzhxklwp` int DEFAULT NULL,\n `ggfjnqujcqawtdxythhtlslpvpomuzrd` int DEFAULT NULL,\n `dllbsxvxgjdrrocidomyrgwnhuswaate` int DEFAULT NULL,\n `bqyxxlfjijpkcfnwqmwtxfjvgtzbmast` int DEFAULT NULL,\n `ygpuxyggttibntpbcjbzjfcldmqqiivj` int DEFAULT NULL,\n `xjjofdnoxebbuneqrhqkwgfqkntwqksr` int DEFAULT NULL,\n PRIMARY KEY (`ameelqvcniuvwnvoaicfoifazyoqyqdj`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"kxmwllnisximtjilqoifyciirajdkdqe\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["ameelqvcniuvwnvoaicfoifazyoqyqdj"],"columns":[{"name":"ameelqvcniuvwnvoaicfoifazyoqyqdj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"sgvhytprvsnywerhedktuivjybngrdjx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyqwmelzbxwbbkggxtmxkkrlysdlzfox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijssffvpztkibtgqjczpvzzzedaaedms","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zrsauytaijrpkchwtkdexzmxpqcflfey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"panoyfndwqhnhbwjygdfydlwzmpgnomo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ulppwigmcevycntsiujijxmsqjshiemq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jiihivlsgaklojftnfbyrvfhqsczsdav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsektuzomntxttpbfgodepyjemkwmrnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sybwoxlmmpqqropibzfasbxdrvdxabqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqasytnuupyclhdomhjoxkmnvmovfrsr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"crflryfjxxsxwvkkpqhidxvfgowhujlm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hyvzviprtyhzvrgagfscmtojiaaagpeu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qystjgdvambgwlyzjmyygkwlrwvjwoym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwgjepybmnxhdmnshipqamihehjdlcga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aayhzyyjfvyojvwmenckoqxemnnhpuve","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlvnppbxkufzefnmzdjcapkwcylrbyur","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdtyuxgomggwntqdvaiinxfmskenxbbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgrdrudfrrynyqfgyylqriqqhvlpszny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eklrcnbfafulbbqcidbjxztflovxerae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdwllitydxrxxafxpmnpdixgwtaanejj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vfadmgsmnjkvzkhrjcjotohwplkztyil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkuayvpqhdjjugfsqqrplzsuprayyjwr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftudsbmlxmelwsgwjkpudfqxsypfvpbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhtuqijdulxclntezatwnuxyhloonrcc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xccmiwneldgulfqurywdncanftnwkukm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqyjdcmsztflpyrjleyrcnjqlwvsiujr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ndqporktkxkrdxdickmuzsbdsmvhdcwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbkvjayqqrvrxoqweteccxtheicomtxp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdhlfqinykhbuudfxtcjltaswfudkzpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"acpussvueblyikzbrxxzljrmrdmtugne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vaunagwjmswaidxwobmeaomuhxezbkej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"baaupbhljngsnvvkgadrxpourwpmuskw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jrfuqwscitnqmxiluhlihyyshieutemg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzmhrsiydgsgfquilljzjnwxumhuvqyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eeqccojbxznjxlxsxlphuwolwvmkglms","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmoratqvtoremqudjtnpoispmepwyzeg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tyvmqbjemwcrhsbcsgnoujyaiuyouupx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hekacutyzahwoswpusorycgqceouvebh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uasmepxqeqmqcpscgkkiajzldvfkzzsf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txylsflrwdbhwqaqoeyunazojddbrvan","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mruxbujmoraufmjzhfxgfrpownzfwujl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwuaapzoufgbjvjjdsdmddcmxhmcrgqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"acxivmoszamiwgedtaexxyagvrieftxe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvvomrorgjdxnfgnnyvkvuhkcwatltgm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tammnlplvqdtmwnakikgbszkjqebfqoq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxoyntwbngsflzhmmcblyexdrbovcaiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"btzcfeydlgmdmaofjevkxgljpjxbmohl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxecwprfsfzqfjbggfhonvmhypazzzys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjjwhyhcqfyxvaxubdrfcuydlkecramv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cchlakycfnlzxevqermjsnqacrkalrad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lpktegkaflkyxoztzofsofyfcublbsfs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opcpzwxyytucdeqcloxkbfhuolgqaarp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzduaqpymuqdnqmcdrshapwecrocpugp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmnkrwvcyjtpzlawlaejgmbbskybuwpl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ygnzjcwosvmyfwywmjynnzkwnugeyrzy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tcpqnkvuujimskkyjhtfraunliwnjhrt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvoojqhnwmywxciuqwudivwyyrbnkxbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itpmxdvzqttcgvkouqwvfxotmgcfzrtn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"taumlqhosqlxxaeapojzjtdqbgscckgc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iaatigwtqefisdfwvcsosxilfqudwncm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"msaaqvasfsrxaircsolfhirnkailmhmq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgyrrkflbxsnmkxnhqezrayjilkioadr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xignvwphcbnysboasiojaplpfpmwzdlp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkwdfhxvyyikqclgrktmzdxluhmgpbqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkybkjhyxdfdzaxdflhnbkekyuutagca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecihkvqkqxsdgpcacjdkwlowfknzdrze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkxztlvfbzgcldvpqdbmictzyoupasxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pzimjgdfhhutjzzubyyhvpovwtdlhlfl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmwaftjkravrqxnmqrmerojednjxhixb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xhspfdsltwsqbrlntoqakqjffmyslblj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dialhtxjfputtpqaykdwpcomknyyflmj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezvslrkjxxhxovbomipvacgxwygbxoje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxvkwcokkhgzvujlqmohsbkyatezksdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhsqzvgcvlfkovchzosbnbgxbuhviqpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rknpzzfwtnurykllcrwexsbxcnivjigg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgaekhethuyiviwmfbpgskmkcezhvrjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffgvifvwauxxzvagjogntqhfshsslemy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eefgjxlwhesixgleaysxkajzftltquvn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gasmmczgizzupwxpymgevmedkyceckfv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wucfprszsgogqholzhvndpmibzwrbkem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"duuysswtxazalcmipvxvscvctxbaapsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gykplnehekfozmxsxchofesgkntcvwij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tuwzqkcovzommeganbmlvxaloadmaiqi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ectygjfueatkayapaxduaelmdddgoaek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"abentfrjgwwuyxrlrdkyhswlkaewgybe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"heglcrzqndmtlsvuldmdemgsrjcptdpu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqhuyinqqhourauldrgatsvofitkjbbi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vnvvinmuobljddfafuowdgneloiksfuk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxlcnrxyndoadkthbepweaylunmikxjp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pryipistcyumtcjuvsynwvjcmbgdfuiy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivvdlhcsapfpugalexcqoigchlctbvwh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"royqnqcwsppnhprpdcqpbzwuzqcftnsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hyvjdwthlivjuwkoftvlecwhqgcmnqmc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aafyacikdhomvnlxknrpecgfvzhxklwp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggfjnqujcqawtdxythhtlslpvpomuzrd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dllbsxvxgjdrrocidomyrgwnhuswaate","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqyxxlfjijpkcfnwqmwtxfjvgtzbmast","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ygpuxyggttibntpbcjbzjfcldmqqiivj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjjofdnoxebbuneqrhqkwgfqkntwqksr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669324,"databaseName":"models_schema","ddl":"CREATE TABLE `kybtprhlbzqgbnsogitpfetdycsqqqmu` (\n `vlxgmkqctxskrwgganlvcaoutiwdonnc` int NOT NULL,\n `iknahmawvpowelgsbxvruuxlkpzilnyu` int DEFAULT NULL,\n `aefhbohfkqcqbwbzjoekgsdyyugoarmj` int DEFAULT NULL,\n `mnzblnkkxanzwzbwszstencyhnghodlt` int DEFAULT NULL,\n `nqlmpyvdosoypvgyflftudpyhpjpkyvz` int DEFAULT NULL,\n `ntajulvhaqafxjenowyscnaxrjxldfci` int DEFAULT NULL,\n `lgwjsyxdtcjoctyqbvowqyraklhwksaf` int DEFAULT NULL,\n `mimyoqdzycvzhpdiqtfmhlgpvgwxqrnt` int DEFAULT NULL,\n `qqqirfdudeferlezqslxcdivdaebrnrz` int DEFAULT NULL,\n `kquloxgbewmajoefhplsxociorgmilek` int DEFAULT NULL,\n `hpbxxggczgnygiuryrvnurtcqhyrgfiv` int DEFAULT NULL,\n `zoelbwaavtqovxaghlxtwneyhyshemcq` int DEFAULT NULL,\n `wgtzyfpfnuoepiceqitcgyajxpswmupd` int DEFAULT NULL,\n `bxytvmknziozalbykogzygcprxlvhsyj` int DEFAULT NULL,\n `itojohsdjoovnvrzwkhtcmekppkjlbnv` int DEFAULT NULL,\n `bmsepyzijtnrpfqcllwgpnjttigysqvr` int DEFAULT NULL,\n `qdqxvwdunaldoldfsxwzrpyisjsmgbdv` int DEFAULT NULL,\n `joqkuedjroyqbmgihqcvnoimjcnsrrim` int DEFAULT NULL,\n `nsccgyfnwovexioyptqllinfurdrquey` int DEFAULT NULL,\n `ggwbtokldwrgfeszrzyujticakurccep` int DEFAULT NULL,\n `redvyddncpotumhepoacamozxityfunk` int DEFAULT NULL,\n `psqpwnrnnevpxvbtfxtsmvkwoznqhrgk` int DEFAULT NULL,\n `qtnlrqnbnmgfeeqmzrecueuzmectmgwq` int DEFAULT NULL,\n `fpfnijcnszlinfqvlokezlkrawecuaju` int DEFAULT NULL,\n `ywdfoagntxuhjahibqqjrxmlqflcgjed` int DEFAULT NULL,\n `unxfgpdprvcqmlsreqrrxoibplyndiwn` int DEFAULT NULL,\n `jlxjovqrpdarldyjmyyasinbalblsbbq` int DEFAULT NULL,\n `mhgglmzkukxcthqlxfnizkcmeyfjmsqn` int DEFAULT NULL,\n `kdviigaftxllivpwqqxzdrwenexdnlea` int DEFAULT NULL,\n `udprzndopcjrcjjudbklzrsxgpntjnfr` int DEFAULT NULL,\n `gflnuwrgqafcuxjxjlwkkeualhpscqye` int DEFAULT NULL,\n `msgmxzukslmqgwanimrqoytjdieefvxh` int DEFAULT NULL,\n `yrtmufnwvnfpjyhezxurhnhsemojvccs` int DEFAULT NULL,\n `wawevhhhdcjzcoxokfwowhindiqkkqeu` int DEFAULT NULL,\n `khozjvcmbzrbkscgbrosksecpihsmfbq` int DEFAULT NULL,\n `qfqsmxflbtnfmpsmbbedqtqphypdqcrx` int DEFAULT NULL,\n `wcxxbzdsyqxdjsihpevphzqreondpiyq` int DEFAULT NULL,\n `wxfjcivoccoskbhxwtysddpgmetflfaf` int DEFAULT NULL,\n `iqbirpyimaxghnpjnqnomkzgwoabxnkx` int DEFAULT NULL,\n `hwmstwxdouueuzdmqloehuarhdmzcohk` int DEFAULT NULL,\n `sanuxhjgkrxrkktrziaxjaczqzvccjeh` int DEFAULT NULL,\n `gkrrabxvjvqxuxkogvspqagucdxzbood` int DEFAULT NULL,\n `kmsfmbhalqrjhnihathetrltkeolyidp` int DEFAULT NULL,\n `eygegfwqrennsirvknhvodnuumkrxvpc` int DEFAULT NULL,\n `jvitpuhsdsmgzdrkdxvdxsaqecusrgrd` int DEFAULT NULL,\n `adhcexggddgcygiqjqdblizitdpdpvtg` int DEFAULT NULL,\n `umxevnouvjqgtyawnhbwvvbtdreguzcs` int DEFAULT NULL,\n `mpvcnageoddxcetymphksxdcentcihag` int DEFAULT NULL,\n `guwmfgdpusaurnqvmcfyefmyyiyymlyc` int DEFAULT NULL,\n `bkbfqcnnldfuwceirfypgondpaiawjxh` int DEFAULT NULL,\n `rjmwcurtnxqgjbkybegjwkbyyaadwznk` int DEFAULT NULL,\n `lohpmgzlngomreiirkkkkytlejozbwjb` int DEFAULT NULL,\n `zutllzwjplzprmfblqtrdczgtuzyjyge` int DEFAULT NULL,\n `zwxqsewcnkwseifkttiieuoovdkecvxr` int DEFAULT NULL,\n `yfwytaeqxweueblslaalpcwaymenljqf` int DEFAULT NULL,\n `awhxxxzrlzsjsokyovlnkjwgrhqifxne` int DEFAULT NULL,\n `qumbcvxucgyorfzbybvnhsbxezxcbvia` int DEFAULT NULL,\n `pnprfnklnzeubikmzqrayysewsznewey` int DEFAULT NULL,\n `gqpeqdpmizcuoterfxwwcbifxzggiexm` int DEFAULT NULL,\n `menyilyvcnxvbnjymcqurkmhzhcniywt` int DEFAULT NULL,\n `dsagufekcxcywaeuehbgqddjnhqkogez` int DEFAULT NULL,\n `ojtiymdkbaxlijimojtgruhzlyplflfk` int DEFAULT NULL,\n `ptephhuiojpcwdnsqkhqdgsfdmwcwikj` int DEFAULT NULL,\n `ztczesdtgfffrbarwcpwuuszgsdaihar` int DEFAULT NULL,\n `ygiimfcrwpsqfalhubvwncqsgoryesdj` int DEFAULT NULL,\n `uhabpvlxnnpyfagjpnlrophgpymqyzcs` int DEFAULT NULL,\n `ygwfdnqnkvdzbnerlcdhhuvvthrmekmv` int DEFAULT NULL,\n `temfqrdlchlegfztdiqfexflejxgzcmp` int DEFAULT NULL,\n `nncpjdqflcfpoxcfgrtxslcjtgqpalfq` int DEFAULT NULL,\n `qstlmjaykmdlmuvrjyjsfvmglzzcydwa` int DEFAULT NULL,\n `xjenprcbootbcpsrdbukvhtgrutunjks` int DEFAULT NULL,\n `oacshsugpxjfgxdvibsqcmhzlpwexzzq` int DEFAULT NULL,\n `wnnwvcephmoiouojdvtlgyqrmhrfbsbe` int DEFAULT NULL,\n `nsauruiadfuqajgrsjuyyhhwhemctvya` int DEFAULT NULL,\n `qcxvupcifpcovyrywtjwgxqaontydyhc` int DEFAULT NULL,\n `hnzncaotoykowydrkakfaatauxxxvvvg` int DEFAULT NULL,\n `tvafqmtmmquuzvxwdtguslveynvzuuop` int DEFAULT NULL,\n `autwewxqptvmfgaslrhbqskpgigfkewi` int DEFAULT NULL,\n `lplmrxbmrihlwrhcsblwyazphocrhakf` int DEFAULT NULL,\n `lkxucpyeehffnveumvxwfdkuiudqjfci` int DEFAULT NULL,\n `bhjwbzfgzemscmssfuvljhhtuseighjx` int DEFAULT NULL,\n `othnnsokazaqmtfmcptxmlvucmzwzihd` int DEFAULT NULL,\n `qagynnohqlifomkarrqtznejrkqmmczx` int DEFAULT NULL,\n `rusrbbsjtxiackefpagrktrlgabsvnep` int DEFAULT NULL,\n `wrkfluffnqjdnkwuxmxgtiyoyypaxued` int DEFAULT NULL,\n `swcbliulimmayggnqnboqaxcpasthjka` int DEFAULT NULL,\n `lvloxsvdvajncrugludywnkfcubtobua` int DEFAULT NULL,\n `nguzqwflzsfuvkkmasvzakmrirgnxdos` int DEFAULT NULL,\n `wkqdqxmqndkasloxyuluumwrtrnqjsar` int DEFAULT NULL,\n `vbqboeukbyoobltwgcezfizqlgpjpzua` int DEFAULT NULL,\n `lorfxwpztwcvdytczadzsgeoqrrpttjy` int DEFAULT NULL,\n `emvhzshgmopnfymwboccxhxkzapyjdxr` int DEFAULT NULL,\n `gavkogyzdbvkqoaqihohzbhelcfdulkd` int DEFAULT NULL,\n `mqfzewmnfcvovvdvcsybnvpyrrnrmkxr` int DEFAULT NULL,\n `hyuetroodpufpauvbrfvfhpjtmxnvlhq` int DEFAULT NULL,\n `nnvbshesmodsvkkloejpqxsrgokpbfzb` int DEFAULT NULL,\n `qqtwxvgrlnshwpitzadmfsdaflnmhown` int DEFAULT NULL,\n `yvfitoshqhurxzwgwgyyqgjbvchzyrby` int DEFAULT NULL,\n `watnbvumkaoxhwguwtbhdiciukekrsgg` int DEFAULT NULL,\n `dewnwwucwzkeofugfhxnbryhlvzzcvcd` int DEFAULT NULL,\n PRIMARY KEY (`vlxgmkqctxskrwgganlvcaoutiwdonnc`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"kybtprhlbzqgbnsogitpfetdycsqqqmu\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["vlxgmkqctxskrwgganlvcaoutiwdonnc"],"columns":[{"name":"vlxgmkqctxskrwgganlvcaoutiwdonnc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"iknahmawvpowelgsbxvruuxlkpzilnyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aefhbohfkqcqbwbzjoekgsdyyugoarmj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnzblnkkxanzwzbwszstencyhnghodlt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqlmpyvdosoypvgyflftudpyhpjpkyvz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntajulvhaqafxjenowyscnaxrjxldfci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgwjsyxdtcjoctyqbvowqyraklhwksaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mimyoqdzycvzhpdiqtfmhlgpvgwxqrnt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqqirfdudeferlezqslxcdivdaebrnrz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kquloxgbewmajoefhplsxociorgmilek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hpbxxggczgnygiuryrvnurtcqhyrgfiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zoelbwaavtqovxaghlxtwneyhyshemcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wgtzyfpfnuoepiceqitcgyajxpswmupd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bxytvmknziozalbykogzygcprxlvhsyj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itojohsdjoovnvrzwkhtcmekppkjlbnv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bmsepyzijtnrpfqcllwgpnjttigysqvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdqxvwdunaldoldfsxwzrpyisjsmgbdv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"joqkuedjroyqbmgihqcvnoimjcnsrrim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nsccgyfnwovexioyptqllinfurdrquey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggwbtokldwrgfeszrzyujticakurccep","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"redvyddncpotumhepoacamozxityfunk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"psqpwnrnnevpxvbtfxtsmvkwoznqhrgk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtnlrqnbnmgfeeqmzrecueuzmectmgwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpfnijcnszlinfqvlokezlkrawecuaju","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywdfoagntxuhjahibqqjrxmlqflcgjed","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unxfgpdprvcqmlsreqrrxoibplyndiwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlxjovqrpdarldyjmyyasinbalblsbbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhgglmzkukxcthqlxfnizkcmeyfjmsqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kdviigaftxllivpwqqxzdrwenexdnlea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udprzndopcjrcjjudbklzrsxgpntjnfr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gflnuwrgqafcuxjxjlwkkeualhpscqye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"msgmxzukslmqgwanimrqoytjdieefvxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yrtmufnwvnfpjyhezxurhnhsemojvccs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wawevhhhdcjzcoxokfwowhindiqkkqeu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"khozjvcmbzrbkscgbrosksecpihsmfbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfqsmxflbtnfmpsmbbedqtqphypdqcrx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcxxbzdsyqxdjsihpevphzqreondpiyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxfjcivoccoskbhxwtysddpgmetflfaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqbirpyimaxghnpjnqnomkzgwoabxnkx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwmstwxdouueuzdmqloehuarhdmzcohk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sanuxhjgkrxrkktrziaxjaczqzvccjeh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkrrabxvjvqxuxkogvspqagucdxzbood","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kmsfmbhalqrjhnihathetrltkeolyidp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eygegfwqrennsirvknhvodnuumkrxvpc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvitpuhsdsmgzdrkdxvdxsaqecusrgrd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"adhcexggddgcygiqjqdblizitdpdpvtg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umxevnouvjqgtyawnhbwvvbtdreguzcs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpvcnageoddxcetymphksxdcentcihag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"guwmfgdpusaurnqvmcfyefmyyiyymlyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkbfqcnnldfuwceirfypgondpaiawjxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjmwcurtnxqgjbkybegjwkbyyaadwznk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lohpmgzlngomreiirkkkkytlejozbwjb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zutllzwjplzprmfblqtrdczgtuzyjyge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zwxqsewcnkwseifkttiieuoovdkecvxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfwytaeqxweueblslaalpcwaymenljqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awhxxxzrlzsjsokyovlnkjwgrhqifxne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qumbcvxucgyorfzbybvnhsbxezxcbvia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnprfnklnzeubikmzqrayysewsznewey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqpeqdpmizcuoterfxwwcbifxzggiexm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"menyilyvcnxvbnjymcqurkmhzhcniywt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dsagufekcxcywaeuehbgqddjnhqkogez","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojtiymdkbaxlijimojtgruhzlyplflfk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ptephhuiojpcwdnsqkhqdgsfdmwcwikj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ztczesdtgfffrbarwcpwuuszgsdaihar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ygiimfcrwpsqfalhubvwncqsgoryesdj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhabpvlxnnpyfagjpnlrophgpymqyzcs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ygwfdnqnkvdzbnerlcdhhuvvthrmekmv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"temfqrdlchlegfztdiqfexflejxgzcmp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nncpjdqflcfpoxcfgrtxslcjtgqpalfq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qstlmjaykmdlmuvrjyjsfvmglzzcydwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjenprcbootbcpsrdbukvhtgrutunjks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oacshsugpxjfgxdvibsqcmhzlpwexzzq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnnwvcephmoiouojdvtlgyqrmhrfbsbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nsauruiadfuqajgrsjuyyhhwhemctvya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qcxvupcifpcovyrywtjwgxqaontydyhc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hnzncaotoykowydrkakfaatauxxxvvvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvafqmtmmquuzvxwdtguslveynvzuuop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"autwewxqptvmfgaslrhbqskpgigfkewi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lplmrxbmrihlwrhcsblwyazphocrhakf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lkxucpyeehffnveumvxwfdkuiudqjfci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bhjwbzfgzemscmssfuvljhhtuseighjx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"othnnsokazaqmtfmcptxmlvucmzwzihd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qagynnohqlifomkarrqtznejrkqmmczx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rusrbbsjtxiackefpagrktrlgabsvnep","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wrkfluffnqjdnkwuxmxgtiyoyypaxued","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swcbliulimmayggnqnboqaxcpasthjka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvloxsvdvajncrugludywnkfcubtobua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nguzqwflzsfuvkkmasvzakmrirgnxdos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wkqdqxmqndkasloxyuluumwrtrnqjsar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbqboeukbyoobltwgcezfizqlgpjpzua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lorfxwpztwcvdytczadzsgeoqrrpttjy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"emvhzshgmopnfymwboccxhxkzapyjdxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gavkogyzdbvkqoaqihohzbhelcfdulkd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqfzewmnfcvovvdvcsybnvpyrrnrmkxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hyuetroodpufpauvbrfvfhpjtmxnvlhq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nnvbshesmodsvkkloejpqxsrgokpbfzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqtwxvgrlnshwpitzadmfsdaflnmhown","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yvfitoshqhurxzwgwgyyqgjbvchzyrby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"watnbvumkaoxhwguwtbhdiciukekrsgg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dewnwwucwzkeofugfhxnbryhlvzzcvcd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669357,"databaseName":"models_schema","ddl":"CREATE TABLE `lgzqspwbxcvbxbxdceywhoesgrnsmpga` (\n `wjrvzrothgodipzyxfsguyamuguaodbs` int NOT NULL,\n `rnlnvaumlgqxsyqlbdmhsdxztisagtnt` int DEFAULT NULL,\n `htkofgwknjmlufuremgwuxdsmzfqnzjz` int DEFAULT NULL,\n `prngjnahcrfaqlfrxuehefbhexrsflfb` int DEFAULT NULL,\n `zvifvmvdendnbnpzvjgecyvxuqkyiwfk` int DEFAULT NULL,\n `qnppuhwiynnttmmwzlrprsdhgvkbkprc` int DEFAULT NULL,\n `mmoxvwbyxznpaeaewyypvpzswefzqxdz` int DEFAULT NULL,\n `kwjmsrykavzckmjhorpswowpfjbmogxq` int DEFAULT NULL,\n `cexaeiuutcmunheuwiyzruejejonhean` int DEFAULT NULL,\n `mkjbnpfiknnkhdwdvouqrqdxipphvoro` int DEFAULT NULL,\n `mepzgwrojyopvxbjkvxmgihjpfvtwena` int DEFAULT NULL,\n `tcjxgikxbesclrrmsdaeitnvzhbcdgoq` int DEFAULT NULL,\n `yxehsfmusnawsgaxoczrbouqzzswxvyf` int DEFAULT NULL,\n `eogoqrwownibmgsqemqtfnfusxfphcoe` int DEFAULT NULL,\n `rhmhiesufbehgecstjiuamkzocthphnr` int DEFAULT NULL,\n `adkaxdofainwufhidlrtktmjlmjelaio` int DEFAULT NULL,\n `sydglfhedthbtvjaakuodhzpehudiome` int DEFAULT NULL,\n `kzijansnkrvmqbqbkryylduzhawpcmpk` int DEFAULT NULL,\n `uxjbmnvkaaoramgrtptyzunzpxalplwk` int DEFAULT NULL,\n `xnxtdmxeiwpohajrahteztsxzihhsgjg` int DEFAULT NULL,\n `oqpfbzpppchcsktxetgupfyblmvxdsfv` int DEFAULT NULL,\n `ofbvtcbmpamrsobtddfmrocbkyhuthgt` int DEFAULT NULL,\n `wxhjyznhhvvafdsvtmomcpgcpdojtbao` int DEFAULT NULL,\n `vyfuguxmviovqeewekbjlxrbtqtritjy` int DEFAULT NULL,\n `krocnjlcnsyfninfnyaajinxphcpitcu` int DEFAULT NULL,\n `uzktdtdsmuuronwsbdtmycsazohgenhg` int DEFAULT NULL,\n `nuuagqvxlpdvxcjydzrjojcaupwiwnqo` int DEFAULT NULL,\n `mrtcknblrxqitxzqmultcywugrugerez` int DEFAULT NULL,\n `ljkhgomectjxuobevwecxxsuytfmrzkp` int DEFAULT NULL,\n `zocxbvhfwqzswygjiyzzbztzfdxkscdw` int DEFAULT NULL,\n `mxnqrsfakmorwfdmlnrswhktrvrvpmsl` int DEFAULT NULL,\n `tbefjxwllujenzeboxeziuffjnnkelci` int DEFAULT NULL,\n `yauyrfearmzqtxyoznjxwypzccqasjfz` int DEFAULT NULL,\n `vqxucnywacmmvawzolthydivzdguulet` int DEFAULT NULL,\n `hrohrhdcgklksmytkumbpcssqquorfab` int DEFAULT NULL,\n `lmhkjpclrbudqffxzdfstzuuutmjynta` int DEFAULT NULL,\n `xifxplvfadhpfhuquwswkysivsizihgv` int DEFAULT NULL,\n `vcfzzgixbdaykdutyurribzmwbjkyjve` int DEFAULT NULL,\n `xkgtpyalsbgsoxacmnisaecwsprsapxh` int DEFAULT NULL,\n `mmbjkmhfpzinkiclrwfaidnymtvvnich` int DEFAULT NULL,\n `skfbfcamuiawqcfmkcubiqdgduajbvgz` int DEFAULT NULL,\n `jiyxtujfbieyxbuuwiebunbspzpesfcg` int DEFAULT NULL,\n `wkszirnfmlbdxbnvbzzdysrmzvotzrrz` int DEFAULT NULL,\n `gntefhxleplmbwxlukqosufrxpaoccqr` int DEFAULT NULL,\n `zyosqzarfwxwezxvtojdilmpzjebvonj` int DEFAULT NULL,\n `wsuxytsggadortorouculbftzcrpdwse` int DEFAULT NULL,\n `ninixiwyrjcwvnltzhgljudirsbhlekk` int DEFAULT NULL,\n `qcmqzycoyoqhqvofpwvftrxgsvunpwqr` int DEFAULT NULL,\n `uvmnfujenwszwsphrbcjirvgprodosyh` int DEFAULT NULL,\n `edwtcghfhhjnhwvvtcmrgaoqtnpyvnxs` int DEFAULT NULL,\n `sgeatykmziyenhzkrhooilktppmifatz` int DEFAULT NULL,\n `stwkuaebngcpnnsancswlegdrfrgbldd` int DEFAULT NULL,\n `tjjudqaihkwlnoqacgxampjfeiacmwgo` int DEFAULT NULL,\n `ezmmrdqtwytjtovzafxgqzmzhsnbmfmc` int DEFAULT NULL,\n `nfrtvrmmahelsqwdwlglidbcpbgaekpc` int DEFAULT NULL,\n `otxeexxnrqqfjcntpuqrvbrtfuqmcigv` int DEFAULT NULL,\n `kxrdahdtfueofejlxwzdnakpfalkviom` int DEFAULT NULL,\n `liyyquwtcbznwugjigcwevpyalfovcei` int DEFAULT NULL,\n `aqannosureorxcfpryzawpzaedmqifhz` int DEFAULT NULL,\n `jxcwmpnaceidpfxlerabvwqqmgqfzlld` int DEFAULT NULL,\n `xxmnqjvvgymnmkqqclhmvwrszlhynppt` int DEFAULT NULL,\n `oueqvwkvejjlhxnctrbxchzsurmtltvg` int DEFAULT NULL,\n `edlvzftulevxrhlhrsfdeanjbsazbsct` int DEFAULT NULL,\n `phvhkemkxzzqfembgohpxqlsquzhoguv` int DEFAULT NULL,\n `gmcyjgknqpfyiwxahbewdeacyrkcotow` int DEFAULT NULL,\n `zihyyeaycrwnfnfmureztzoevnsuazjf` int DEFAULT NULL,\n `izsysmuaadldxslxkkyhpzqxlzvlafxs` int DEFAULT NULL,\n `ugbvljqprahylwyibynrmeimeahqyjyp` int DEFAULT NULL,\n `ezjakesmqxumniofcoysgnwkirpgisuz` int DEFAULT NULL,\n `yflxckviyygrtpaxzbtxandppowezdvt` int DEFAULT NULL,\n `rzcfubxwyyynpqdglrknacoemszkobts` int DEFAULT NULL,\n `iayvryykegqyowzccyqjdranlqccwqjo` int DEFAULT NULL,\n `huevyugppedhrisplayiqypsorxacrpw` int DEFAULT NULL,\n `wsftlasyelygcqwzsbfqnyuxtyrwpexe` int DEFAULT NULL,\n `lqzruhcbdhsmouqvrhndgahfqzqeedpw` int DEFAULT NULL,\n `zpetrvucmkoqyttpvjudiocqfxpxwrfv` int DEFAULT NULL,\n `jwhhpphqnfiuwbqzzesbgeedqqosbxrb` int DEFAULT NULL,\n `kakwdxbctfbjlqnkxouqllignrdlvdds` int DEFAULT NULL,\n `xaiymukglhdfwebftzywxdrriqbblejg` int DEFAULT NULL,\n `eacsbwfddnikicrvcfhktplydquihqbn` int DEFAULT NULL,\n `ijmidyhavtaeaejxihlklwpekuatukzd` int DEFAULT NULL,\n `ftbwegnjtugfhlskkjwmrxsyuskxoqpk` int DEFAULT NULL,\n `vkguiynakzonbayfxlhgqhapqltodjbc` int DEFAULT NULL,\n `ehsrpupfqymqwyatnvfejluwxahdnaoz` int DEFAULT NULL,\n `aqzutujiebeyidwxmignxjkbjvksyjvs` int DEFAULT NULL,\n `odxavawzaromdbbirdicnkrzaxlzocll` int DEFAULT NULL,\n `gjjirfzvfiwenxkwvceawwyvptozoiqn` int DEFAULT NULL,\n `hovhgpbanqstuoaublldataocllzawtp` int DEFAULT NULL,\n `xurntoocdpzesckkadlwvaavptrsrasc` int DEFAULT NULL,\n `unutyfffrvzaintifjcyiktbarrrrego` int DEFAULT NULL,\n `lshorsdfyrfhuenshnnvbyiobekchfss` int DEFAULT NULL,\n `ndpuendygbgdjwavdmuimirrsytblvps` int DEFAULT NULL,\n `opmbojppkgruqgpdivkgfqtzhlvuozbg` int DEFAULT NULL,\n `khsjwmnqwmjbqzggqjdrnmlolsrxidus` int DEFAULT NULL,\n `whzxsvuvkvboudmjhqfntwjyzxrxblji` int DEFAULT NULL,\n `ggggaewhwyvcqxqwvjgjtzbysybhkvbs` int DEFAULT NULL,\n `dtvqoyqzzfuajwuukrrviyfskavnqmfi` int DEFAULT NULL,\n `vwnulrzohcwvpeysmnwtaktejpbfqxhi` int DEFAULT NULL,\n `dkzoxttxjlbpfvpakppwaguetwqelwds` int DEFAULT NULL,\n `ixrlcpwoddgjspvrszakzxmvxubpuunc` int DEFAULT NULL,\n PRIMARY KEY (`wjrvzrothgodipzyxfsguyamuguaodbs`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"lgzqspwbxcvbxbxdceywhoesgrnsmpga\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["wjrvzrothgodipzyxfsguyamuguaodbs"],"columns":[{"name":"wjrvzrothgodipzyxfsguyamuguaodbs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"rnlnvaumlgqxsyqlbdmhsdxztisagtnt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"htkofgwknjmlufuremgwuxdsmzfqnzjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prngjnahcrfaqlfrxuehefbhexrsflfb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvifvmvdendnbnpzvjgecyvxuqkyiwfk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qnppuhwiynnttmmwzlrprsdhgvkbkprc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmoxvwbyxznpaeaewyypvpzswefzqxdz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwjmsrykavzckmjhorpswowpfjbmogxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cexaeiuutcmunheuwiyzruejejonhean","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkjbnpfiknnkhdwdvouqrqdxipphvoro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mepzgwrojyopvxbjkvxmgihjpfvtwena","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tcjxgikxbesclrrmsdaeitnvzhbcdgoq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxehsfmusnawsgaxoczrbouqzzswxvyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eogoqrwownibmgsqemqtfnfusxfphcoe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhmhiesufbehgecstjiuamkzocthphnr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"adkaxdofainwufhidlrtktmjlmjelaio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sydglfhedthbtvjaakuodhzpehudiome","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzijansnkrvmqbqbkryylduzhawpcmpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxjbmnvkaaoramgrtptyzunzpxalplwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnxtdmxeiwpohajrahteztsxzihhsgjg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqpfbzpppchcsktxetgupfyblmvxdsfv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofbvtcbmpamrsobtddfmrocbkyhuthgt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxhjyznhhvvafdsvtmomcpgcpdojtbao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vyfuguxmviovqeewekbjlxrbtqtritjy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"krocnjlcnsyfninfnyaajinxphcpitcu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzktdtdsmuuronwsbdtmycsazohgenhg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nuuagqvxlpdvxcjydzrjojcaupwiwnqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrtcknblrxqitxzqmultcywugrugerez","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljkhgomectjxuobevwecxxsuytfmrzkp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zocxbvhfwqzswygjiyzzbztzfdxkscdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mxnqrsfakmorwfdmlnrswhktrvrvpmsl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbefjxwllujenzeboxeziuffjnnkelci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yauyrfearmzqtxyoznjxwypzccqasjfz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqxucnywacmmvawzolthydivzdguulet","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hrohrhdcgklksmytkumbpcssqquorfab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmhkjpclrbudqffxzdfstzuuutmjynta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xifxplvfadhpfhuquwswkysivsizihgv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vcfzzgixbdaykdutyurribzmwbjkyjve","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkgtpyalsbgsoxacmnisaecwsprsapxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmbjkmhfpzinkiclrwfaidnymtvvnich","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skfbfcamuiawqcfmkcubiqdgduajbvgz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jiyxtujfbieyxbuuwiebunbspzpesfcg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wkszirnfmlbdxbnvbzzdysrmzvotzrrz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gntefhxleplmbwxlukqosufrxpaoccqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zyosqzarfwxwezxvtojdilmpzjebvonj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wsuxytsggadortorouculbftzcrpdwse","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ninixiwyrjcwvnltzhgljudirsbhlekk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qcmqzycoyoqhqvofpwvftrxgsvunpwqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvmnfujenwszwsphrbcjirvgprodosyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edwtcghfhhjnhwvvtcmrgaoqtnpyvnxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sgeatykmziyenhzkrhooilktppmifatz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"stwkuaebngcpnnsancswlegdrfrgbldd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjjudqaihkwlnoqacgxampjfeiacmwgo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezmmrdqtwytjtovzafxgqzmzhsnbmfmc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfrtvrmmahelsqwdwlglidbcpbgaekpc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otxeexxnrqqfjcntpuqrvbrtfuqmcigv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxrdahdtfueofejlxwzdnakpfalkviom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"liyyquwtcbznwugjigcwevpyalfovcei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqannosureorxcfpryzawpzaedmqifhz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jxcwmpnaceidpfxlerabvwqqmgqfzlld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxmnqjvvgymnmkqqclhmvwrszlhynppt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oueqvwkvejjlhxnctrbxchzsurmtltvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edlvzftulevxrhlhrsfdeanjbsazbsct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phvhkemkxzzqfembgohpxqlsquzhoguv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmcyjgknqpfyiwxahbewdeacyrkcotow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zihyyeaycrwnfnfmureztzoevnsuazjf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"izsysmuaadldxslxkkyhpzqxlzvlafxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugbvljqprahylwyibynrmeimeahqyjyp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezjakesmqxumniofcoysgnwkirpgisuz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yflxckviyygrtpaxzbtxandppowezdvt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzcfubxwyyynpqdglrknacoemszkobts","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iayvryykegqyowzccyqjdranlqccwqjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"huevyugppedhrisplayiqypsorxacrpw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wsftlasyelygcqwzsbfqnyuxtyrwpexe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqzruhcbdhsmouqvrhndgahfqzqeedpw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zpetrvucmkoqyttpvjudiocqfxpxwrfv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwhhpphqnfiuwbqzzesbgeedqqosbxrb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kakwdxbctfbjlqnkxouqllignrdlvdds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xaiymukglhdfwebftzywxdrriqbblejg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eacsbwfddnikicrvcfhktplydquihqbn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijmidyhavtaeaejxihlklwpekuatukzd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftbwegnjtugfhlskkjwmrxsyuskxoqpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkguiynakzonbayfxlhgqhapqltodjbc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehsrpupfqymqwyatnvfejluwxahdnaoz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqzutujiebeyidwxmignxjkbjvksyjvs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"odxavawzaromdbbirdicnkrzaxlzocll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjjirfzvfiwenxkwvceawwyvptozoiqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hovhgpbanqstuoaublldataocllzawtp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xurntoocdpzesckkadlwvaavptrsrasc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unutyfffrvzaintifjcyiktbarrrrego","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lshorsdfyrfhuenshnnvbyiobekchfss","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ndpuendygbgdjwavdmuimirrsytblvps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opmbojppkgruqgpdivkgfqtzhlvuozbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"khsjwmnqwmjbqzggqjdrnmlolsrxidus","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"whzxsvuvkvboudmjhqfntwjyzxrxblji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggggaewhwyvcqxqwvjgjtzbysybhkvbs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtvqoyqzzfuajwuukrrviyfskavnqmfi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vwnulrzohcwvpeysmnwtaktejpbfqxhi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkzoxttxjlbpfvpakppwaguetwqelwds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixrlcpwoddgjspvrszakzxmvxubpuunc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669387,"databaseName":"models_schema","ddl":"CREATE TABLE `lneozjmnjubkgsxmcosrybaevorbgvvn` (\n `xmsimqsosbruhpqfjxxdvmklvyetndow` int NOT NULL,\n `gpidrotrnlswhuuovpovrdzxctatpdhx` int DEFAULT NULL,\n `wyswqnbgaazykgltivajzibsxsgovrzg` int DEFAULT NULL,\n `nuupludotkhlaeqlcokcthrywlblilij` int DEFAULT NULL,\n `nfzarkfycsnlbidzkkrpfjwgwyjtppin` int DEFAULT NULL,\n `lxzahowxugpgvldydqjpcsfuiixycbch` int DEFAULT NULL,\n `zebgzmwstoinpjqrhqfndxyidxbsejqr` int DEFAULT NULL,\n `quxlviguljzevxghosyfmmlkgsfavdkh` int DEFAULT NULL,\n `addyvsegvghmstkbcykxeqqxqmthkctp` int DEFAULT NULL,\n `drmehmbkeyugaoinmdentosyshlyfgzl` int DEFAULT NULL,\n `ytmitgmpxwipjcjbsmizgekqzqzsxrii` int DEFAULT NULL,\n `rspojyzrvdpalrwnvuuwlcysqjtfnuso` int DEFAULT NULL,\n `lxxyolpmnjmiwxlpwnqnebsrzpjbhjty` int DEFAULT NULL,\n `lrpecjkimpdgnwmrxkcihedoptdcmvtd` int DEFAULT NULL,\n `hnwgmjolhvsqsndnchfjkmghidydogyq` int DEFAULT NULL,\n `auvebpizmbhdprlzponsizwqejscaouu` int DEFAULT NULL,\n `wqhdqcampghlctdfkgtwughmrwuclbjz` int DEFAULT NULL,\n `iditfstcjtfkkmvwsqftzhwfcfqpwiuy` int DEFAULT NULL,\n `tgtaboajhzjlycfhuqsxkylgcbczpnbs` int DEFAULT NULL,\n `vioedwivvwilujqemadtvolhrfmfxffp` int DEFAULT NULL,\n `gngcaelkirfcduczljmemjjgldcqidct` int DEFAULT NULL,\n `nbpevwidwlgoxkfthanyrumlamolproy` int DEFAULT NULL,\n `sbwdnfjaytowuvscuvxrrffbdzudpmok` int DEFAULT NULL,\n `tmjkwnaijnnmvpfpcyrrdpwiyetdtytt` int DEFAULT NULL,\n `hgdnfcrzxxriiqcmipcevkommigytunc` int DEFAULT NULL,\n `amhsynqykxhalfzflumdwxiyfqlcjame` int DEFAULT NULL,\n `gvtprvbisiuevkgbvrtpwgvyftipcevo` int DEFAULT NULL,\n `rngryjtcajhhtcmretdvktdidplnjhrf` int DEFAULT NULL,\n `cuahnbsoaecsxgyjpusvgfpakeliknyw` int DEFAULT NULL,\n `gaghlcthryjjjktbjvwckjkyijgfuosq` int DEFAULT NULL,\n `eueohnqaiaznpugngkgrtewmbwxemguc` int DEFAULT NULL,\n `kpquajlwrkimqoobthokmaglcajthwwu` int DEFAULT NULL,\n `fvqatdxdcizxkslixgnrspmbgdvjgjjq` int DEFAULT NULL,\n `ndpflobsqdxwvrlilcpdcexpfwkswedf` int DEFAULT NULL,\n `btvwqwmgygaoybldkqtocyiredyxgfpd` int DEFAULT NULL,\n `lucsaijjldlzuwmjewwkjvozxubbvuqc` int DEFAULT NULL,\n `nhyrekjbsvlhlmkcdzjilhdphujwczcm` int DEFAULT NULL,\n `bzpfkrprgvbrstiwlhghnthbxmdirkwj` int DEFAULT NULL,\n `bfojakrkvvgqlqquvoehsddhfmabqgey` int DEFAULT NULL,\n `eqkjijerjbogicdnenkowfjfkyotnvlc` int DEFAULT NULL,\n `rhujlxgvzpcmbotihkitizhmojgiqsdv` int DEFAULT NULL,\n `zykyrqkcvmjtzggqbtvmfbboqpskpbhx` int DEFAULT NULL,\n `ezcngicbsimptnjrjxvluiirtzjxewqo` int DEFAULT NULL,\n `lmzfhiottchaahlnddoaaiiwsjnpogdh` int DEFAULT NULL,\n `rlelkwfaypirvtbgfthaxmcutxyyxwbg` int DEFAULT NULL,\n `kkihjrmcthwhrnuyvyjzbrnzpcxkjhys` int DEFAULT NULL,\n `ognryixbzpzfhbnwlumnxoarlnpmsfyi` int DEFAULT NULL,\n `cwusznvqahduvanyvxrhbbmsrttzxybi` int DEFAULT NULL,\n `mpxlbgfutrziwmipdbjnijdfdwihjjqv` int DEFAULT NULL,\n `pejiivjqyxggqfpawbwpnwmggortvbnv` int DEFAULT NULL,\n `wnpxcohxwwtskyzhevefwhxzfyxavity` int DEFAULT NULL,\n `bnkcmhlbhfvcpfhtzqjehvslbkunttun` int DEFAULT NULL,\n `eluhmdeacjlzwfnwyktizeqclnjzwdgs` int DEFAULT NULL,\n `wekbpkmykkuivvckiugbggnydzoxkwiw` int DEFAULT NULL,\n `tfokdopuplxnclhxohizmkqtdafznyjn` int DEFAULT NULL,\n `qjcschfonzaykivsoiwagmwqojejbzrp` int DEFAULT NULL,\n `asszpjgsnfsouyzmzwehuxvujdmjgbul` int DEFAULT NULL,\n `eeyhtisiipxuhotlvzyqcdprrzkltxvg` int DEFAULT NULL,\n `ltmsapillxoqkfvqgfcpdzinwotyjbiq` int DEFAULT NULL,\n `bxybtpkxilfbvddfabqyxexjudfccovs` int DEFAULT NULL,\n `baufraruebvdozvuynlvazccrvhswxyo` int DEFAULT NULL,\n `rxibyzsbwxkvtqleahdmrdodfqylrncz` int DEFAULT NULL,\n `utwcozncmsjvndbnqcnzfczirrtjzkah` int DEFAULT NULL,\n `mqvdqcehpkfgrbzfkygthbvdwqagtqoh` int DEFAULT NULL,\n `qspycwprnwywcusbnngfdkyknajjycly` int DEFAULT NULL,\n `gtnraxrgjhroarjbrdksiakhiteyjyaz` int DEFAULT NULL,\n `elqtlaorxytgbfiirfquhozbcorxacas` int DEFAULT NULL,\n `caffubzxftpgyoyqpyhpyrssbqrwjqwr` int DEFAULT NULL,\n `xyihmkxcpitvahnvjuuaaymfmaspbaey` int DEFAULT NULL,\n `czmakqidancaogjseylewxpnfgcpbrtd` int DEFAULT NULL,\n `ebbeuwmlvujtyksyftpbofbcbosxizgv` int DEFAULT NULL,\n `kxaqtlzjqmglndojpqaztjkqjkulwajk` int DEFAULT NULL,\n `wnibdxqlsjmjcwtysbizsjqpldwtdvvm` int DEFAULT NULL,\n `fhgtednwuyteakppcshljgrlqoycjthr` int DEFAULT NULL,\n `rioswpnxgapwgyludlcugmyjwofidstn` int DEFAULT NULL,\n `yelfnkvwjuvpdkbsunqknbarbhvdqroy` int DEFAULT NULL,\n `jchqjofthmkfqcixsfgydexbiqliivwp` int DEFAULT NULL,\n `ahcmomguqiylajmciwtosenjyvntrbtc` int DEFAULT NULL,\n `suknuimugjyviqmvqqtpaogspiqplaba` int DEFAULT NULL,\n `znondilrnvrzfvsguqjhawgniufwaonc` int DEFAULT NULL,\n `lupraclayvxccsdroxyhcbagdewvihha` int DEFAULT NULL,\n `bfvllafthqomgitxyjorrchjklpojfuu` int DEFAULT NULL,\n `rxrevpjzzaassnzaefhifzkecmnsddfx` int DEFAULT NULL,\n `avaaqhwjqkkomsluuzvdopohcsfivivu` int DEFAULT NULL,\n `lmretcqijhvefqlcfhlswnpyuoawxlir` int DEFAULT NULL,\n `epfevqmnbpiszgvhkpsvuuxdarfufnuk` int DEFAULT NULL,\n `vcctzakfcphnadirvacubdzjclrcuveu` int DEFAULT NULL,\n `qqwjuolajjyhvmyavkmzhymxnrxkuxzc` int DEFAULT NULL,\n `wcjqcljzwsqbuzmsfemsczkahixevbkk` int DEFAULT NULL,\n `vfvtexhjsjruhwotvbpsdprekcbmjwmz` int DEFAULT NULL,\n `xegrontbcfjdaglymkekednbjazvhrxu` int DEFAULT NULL,\n `qmdykjquuxpnfkwlgudmchjodownxsyj` int DEFAULT NULL,\n `yezzcrgsfrkcbwmsxhwqqrfbvfatptcm` int DEFAULT NULL,\n `rqfzzvkqclwasdqmiqzrjldvpofrqxpq` int DEFAULT NULL,\n `cpfwrsybkodkvovwfekqmafhsrgcmean` int DEFAULT NULL,\n `lltvaxlmmwnfxgtfzvafejjnxjpfxnlw` int DEFAULT NULL,\n `yyvlzbjpqgonwispusqixpvvfyusjybs` int DEFAULT NULL,\n `pycihfamepfgakrbesdhebeobncdovdk` int DEFAULT NULL,\n `ddovzgexkcvalipfzmixtesoiajjnnky` int DEFAULT NULL,\n `pybfjegolupzukerystlnbbqnaczwcpt` int DEFAULT NULL,\n PRIMARY KEY (`xmsimqsosbruhpqfjxxdvmklvyetndow`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"lneozjmnjubkgsxmcosrybaevorbgvvn\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["xmsimqsosbruhpqfjxxdvmklvyetndow"],"columns":[{"name":"xmsimqsosbruhpqfjxxdvmklvyetndow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"gpidrotrnlswhuuovpovrdzxctatpdhx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wyswqnbgaazykgltivajzibsxsgovrzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nuupludotkhlaeqlcokcthrywlblilij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfzarkfycsnlbidzkkrpfjwgwyjtppin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxzahowxugpgvldydqjpcsfuiixycbch","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zebgzmwstoinpjqrhqfndxyidxbsejqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"quxlviguljzevxghosyfmmlkgsfavdkh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"addyvsegvghmstkbcykxeqqxqmthkctp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drmehmbkeyugaoinmdentosyshlyfgzl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytmitgmpxwipjcjbsmizgekqzqzsxrii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rspojyzrvdpalrwnvuuwlcysqjtfnuso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxxyolpmnjmiwxlpwnqnebsrzpjbhjty","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lrpecjkimpdgnwmrxkcihedoptdcmvtd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hnwgmjolhvsqsndnchfjkmghidydogyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"auvebpizmbhdprlzponsizwqejscaouu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqhdqcampghlctdfkgtwughmrwuclbjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iditfstcjtfkkmvwsqftzhwfcfqpwiuy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tgtaboajhzjlycfhuqsxkylgcbczpnbs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vioedwivvwilujqemadtvolhrfmfxffp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gngcaelkirfcduczljmemjjgldcqidct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbpevwidwlgoxkfthanyrumlamolproy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbwdnfjaytowuvscuvxrrffbdzudpmok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmjkwnaijnnmvpfpcyrrdpwiyetdtytt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hgdnfcrzxxriiqcmipcevkommigytunc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"amhsynqykxhalfzflumdwxiyfqlcjame","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gvtprvbisiuevkgbvrtpwgvyftipcevo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rngryjtcajhhtcmretdvktdidplnjhrf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cuahnbsoaecsxgyjpusvgfpakeliknyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gaghlcthryjjjktbjvwckjkyijgfuosq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eueohnqaiaznpugngkgrtewmbwxemguc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kpquajlwrkimqoobthokmaglcajthwwu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fvqatdxdcizxkslixgnrspmbgdvjgjjq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ndpflobsqdxwvrlilcpdcexpfwkswedf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"btvwqwmgygaoybldkqtocyiredyxgfpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lucsaijjldlzuwmjewwkjvozxubbvuqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhyrekjbsvlhlmkcdzjilhdphujwczcm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bzpfkrprgvbrstiwlhghnthbxmdirkwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bfojakrkvvgqlqquvoehsddhfmabqgey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqkjijerjbogicdnenkowfjfkyotnvlc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhujlxgvzpcmbotihkitizhmojgiqsdv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zykyrqkcvmjtzggqbtvmfbboqpskpbhx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezcngicbsimptnjrjxvluiirtzjxewqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmzfhiottchaahlnddoaaiiwsjnpogdh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlelkwfaypirvtbgfthaxmcutxyyxwbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kkihjrmcthwhrnuyvyjzbrnzpcxkjhys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ognryixbzpzfhbnwlumnxoarlnpmsfyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwusznvqahduvanyvxrhbbmsrttzxybi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpxlbgfutrziwmipdbjnijdfdwihjjqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pejiivjqyxggqfpawbwpnwmggortvbnv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnpxcohxwwtskyzhevefwhxzfyxavity","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnkcmhlbhfvcpfhtzqjehvslbkunttun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eluhmdeacjlzwfnwyktizeqclnjzwdgs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wekbpkmykkuivvckiugbggnydzoxkwiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tfokdopuplxnclhxohizmkqtdafznyjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjcschfonzaykivsoiwagmwqojejbzrp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"asszpjgsnfsouyzmzwehuxvujdmjgbul","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eeyhtisiipxuhotlvzyqcdprrzkltxvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ltmsapillxoqkfvqgfcpdzinwotyjbiq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bxybtpkxilfbvddfabqyxexjudfccovs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"baufraruebvdozvuynlvazccrvhswxyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxibyzsbwxkvtqleahdmrdodfqylrncz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utwcozncmsjvndbnqcnzfczirrtjzkah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqvdqcehpkfgrbzfkygthbvdwqagtqoh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qspycwprnwywcusbnngfdkyknajjycly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtnraxrgjhroarjbrdksiakhiteyjyaz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"elqtlaorxytgbfiirfquhozbcorxacas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"caffubzxftpgyoyqpyhpyrssbqrwjqwr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyihmkxcpitvahnvjuuaaymfmaspbaey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"czmakqidancaogjseylewxpnfgcpbrtd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebbeuwmlvujtyksyftpbofbcbosxizgv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxaqtlzjqmglndojpqaztjkqjkulwajk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnibdxqlsjmjcwtysbizsjqpldwtdvvm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhgtednwuyteakppcshljgrlqoycjthr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rioswpnxgapwgyludlcugmyjwofidstn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yelfnkvwjuvpdkbsunqknbarbhvdqroy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jchqjofthmkfqcixsfgydexbiqliivwp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ahcmomguqiylajmciwtosenjyvntrbtc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"suknuimugjyviqmvqqtpaogspiqplaba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znondilrnvrzfvsguqjhawgniufwaonc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lupraclayvxccsdroxyhcbagdewvihha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bfvllafthqomgitxyjorrchjklpojfuu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxrevpjzzaassnzaefhifzkecmnsddfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avaaqhwjqkkomsluuzvdopohcsfivivu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmretcqijhvefqlcfhlswnpyuoawxlir","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"epfevqmnbpiszgvhkpsvuuxdarfufnuk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vcctzakfcphnadirvacubdzjclrcuveu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqwjuolajjyhvmyavkmzhymxnrxkuxzc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcjqcljzwsqbuzmsfemsczkahixevbkk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vfvtexhjsjruhwotvbpsdprekcbmjwmz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xegrontbcfjdaglymkekednbjazvhrxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmdykjquuxpnfkwlgudmchjodownxsyj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yezzcrgsfrkcbwmsxhwqqrfbvfatptcm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqfzzvkqclwasdqmiqzrjldvpofrqxpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cpfwrsybkodkvovwfekqmafhsrgcmean","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lltvaxlmmwnfxgtfzvafejjnxjpfxnlw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yyvlzbjpqgonwispusqixpvvfyusjybs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pycihfamepfgakrbesdhebeobncdovdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ddovzgexkcvalipfzmixtesoiajjnnky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pybfjegolupzukerystlnbbqnaczwcpt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669421,"databaseName":"models_schema","ddl":"CREATE TABLE `lqbwjasfleffegotnszounuxojffyehx` (\n `vxljxeklpgfharzeyqsyyislebnodztg` int NOT NULL,\n `ckmnccpzyyzzpzpwxogjzdedqeodttpd` int DEFAULT NULL,\n `vueqtggktklxmqcagaqydajovraxqwsu` int DEFAULT NULL,\n `nmvfpmsmcjznzkxkcbghrfbgdlufeafs` int DEFAULT NULL,\n `ujkksgugcnzbujxlivzvlrigorzwpscz` int DEFAULT NULL,\n `sxgtxmonpaasxgzuzkcbnbrmpvulslqe` int DEFAULT NULL,\n `nkvhdmrobrdnnftigqbwoddugjoafvik` int DEFAULT NULL,\n `dxdyqofkdcpttabnqlwhcsbuwibwzifl` int DEFAULT NULL,\n `sacoarusaypzdyzstfrcvwltuhflgfaj` int DEFAULT NULL,\n `prumadvvinsgfpczqsjlyroxoarfyjpc` int DEFAULT NULL,\n `gqjbkrloippmcwrzguqwhftjyuujzgnu` int DEFAULT NULL,\n `pgsnbzsfhpdzzcyjwcmzlditxzcwlqtc` int DEFAULT NULL,\n `fidypndwowswusousrpdbweztpugmbwz` int DEFAULT NULL,\n `wrdzikgommvgzhcromgvtlqclzvogwxv` int DEFAULT NULL,\n `thoiffngswmlngrulojugvcydjiqnubu` int DEFAULT NULL,\n `odefpxgwhnguuuwuqrzknzalepxctkzb` int DEFAULT NULL,\n `gkadcngvfbjnjkwpkssygknhrrpsgkdv` int DEFAULT NULL,\n `lsjjtzdmsvmstiofcrrvnaifgurbvghb` int DEFAULT NULL,\n `enkcpbqwkuojytkcransvnindkvfhykj` int DEFAULT NULL,\n `ofverbmdcqzfrquhdidvzjqrwtwxsggo` int DEFAULT NULL,\n `jdfmqihamnprmzzcgkcxfwhydlwnfbno` int DEFAULT NULL,\n `qlannfzyrrurwjjdbzhyrcnsodjntbdl` int DEFAULT NULL,\n `srmnhiyvmqmqxjnssyrsoqcwrihvsllc` int DEFAULT NULL,\n `wcqxwjceuhdvxchqyhvimquugdfoqdfz` int DEFAULT NULL,\n `yiyfdmmivvhzwkvotzduzbylomtiuzms` int DEFAULT NULL,\n `pbdvwvfkvxmqisubxvnkzolgxglwplua` int DEFAULT NULL,\n `bqgaqjicsclnyjxordwfqntbmedfioom` int DEFAULT NULL,\n `vrcslcceefzibmcbpvhoffuoiyleogvk` int DEFAULT NULL,\n `lrciufxzsupehbivkazgvlyjxjzoqmbb` int DEFAULT NULL,\n `ponelxzxxamsseslhhgnpyozszgvwazg` int DEFAULT NULL,\n `rmrqgxxkesdrwzhzvjbwgulpygknxtdf` int DEFAULT NULL,\n `govvjzzanaphvnjzhqlnnjyisggqvrvx` int DEFAULT NULL,\n `lvrkgywnhpjsivdwactgihqrujriexbf` int DEFAULT NULL,\n `navyvcqgggzckxqlottcssudpxtgniav` int DEFAULT NULL,\n `jmoxlhgzflcdzziduwwqaokaqklktfzg` int DEFAULT NULL,\n `axdcnebqrturymxdoivmnytlpwgzoobf` int DEFAULT NULL,\n `gyhoqpalbutchgcsalandgjavuebwndc` int DEFAULT NULL,\n `bqowdsfjxyuueihcsvnqfmuaclwzzuog` int DEFAULT NULL,\n `znemdnszterneirgkfphdlerimjxxsqz` int DEFAULT NULL,\n `evikbuwqrdclyuaohfvolygabedlacmy` int DEFAULT NULL,\n `jajzeqtjfmikmfveyullakicydbwjofh` int DEFAULT NULL,\n `igqgfurowjggjvawezuysfrswwmseqfx` int DEFAULT NULL,\n `pdbrjkmfygmfxheuffxczmljqmxhnjvg` int DEFAULT NULL,\n `nbjesvmehzjipluonjykichhhjifvyqo` int DEFAULT NULL,\n `kedybkusilvwbsxsdswrrhwcwwyalpzf` int DEFAULT NULL,\n `cmudkcidxzlftejungqcquqnnmsqsnrj` int DEFAULT NULL,\n `uaqhjhrbpwloqzzueyphttuocysrgusp` int DEFAULT NULL,\n `uibqdkltkxfxtjsceamhcuqfksevelmr` int DEFAULT NULL,\n `mphmowippkpulejwwvbcqarbvevpujgc` int DEFAULT NULL,\n `rrwocnffwiaorwgzcaiafuvtryatwsoo` int DEFAULT NULL,\n `fdjnuxncputfzqfphfkjtyxaffkqohsv` int DEFAULT NULL,\n `qthiiniofsbqfvzakzzjnbntojwqwvsl` int DEFAULT NULL,\n `nbiofpkblmdmtwvvricrtmuwbytbmcdb` int DEFAULT NULL,\n `ahaoczknkhtkqyntcrymjeiczehvgwfg` int DEFAULT NULL,\n `pdvbrqpoltfdhiglvbvzqpwsblycqaiy` int DEFAULT NULL,\n `norqxsgmkfnmktvsotqkddyicowkdpbv` int DEFAULT NULL,\n `txbmcafyoftspcecygpcvfkvhwnkoojs` int DEFAULT NULL,\n `lcqrcrcgpifbtbhcptbztwxscjjdpftk` int DEFAULT NULL,\n `ymaebhtrnovovbxggndogzpdwyrpgsiv` int DEFAULT NULL,\n `lvacurxqomljynltyotqxqzqvxsnbety` int DEFAULT NULL,\n `hjscamrjqpoxaycuinftyldkxosnmiyq` int DEFAULT NULL,\n `llaewtiheqmgradpczfrlmuvnwlrsbsx` int DEFAULT NULL,\n `fpmktburakjdmowthhxjymuamvvafxfb` int DEFAULT NULL,\n `ircrrchstoobclqttqohprjghyhddkol` int DEFAULT NULL,\n `waoasyyxjtaqzjwpttdbgtyswmrtvyog` int DEFAULT NULL,\n `imdqwmkyhmmoyqdzospckwmagazclqix` int DEFAULT NULL,\n `mzzrrkqxuwxfqnjubqkzrxljrstsaqxb` int DEFAULT NULL,\n `xjbyqnxigtguspsvbofojqzhragkldmw` int DEFAULT NULL,\n `htkfvvrubblutkgilnrjoezcfxuhvzkn` int DEFAULT NULL,\n `urqrxekunuikrsnrnhbfbnuiczkkeikl` int DEFAULT NULL,\n `xbsbnexqyzsrosqfptpuiorsnyownnyk` int DEFAULT NULL,\n `cnbgakjhsuiciykxfiuwxtnkzwtbtksl` int DEFAULT NULL,\n `vkzjzurrqtgzbgrglxafznqcitlalccx` int DEFAULT NULL,\n `swhlhvipfwsmqxeojrwwkychqhdpfvma` int DEFAULT NULL,\n `exaazkaqcmxohnxfjlngfgufbbhowoon` int DEFAULT NULL,\n `kjfifittwqarslcwopgvobighlstmatu` int DEFAULT NULL,\n `otkfrmvgjhobnirrqrnfpfjnitwuwswa` int DEFAULT NULL,\n `tmubobghvlunqtrwortkzkhcbqbegrii` int DEFAULT NULL,\n `ptuaqxnwqxhomngwipflnzdicnjkajdy` int DEFAULT NULL,\n `vxmpmrsruqlpclivrnnnuttxkdknegud` int DEFAULT NULL,\n `rdgmfqztrriuxcuatfdhlpifolisvtxm` int DEFAULT NULL,\n `uclwjzfeubpdajgxxcxnxhfnqjkspmdx` int DEFAULT NULL,\n `lixfcalbgayibdimbwcnbhgqshktqfaz` int DEFAULT NULL,\n `qieqfxychjklzqfnmmygahadlmoughca` int DEFAULT NULL,\n `auwfpymogfhofkqmbhmbxloucvldoeid` int DEFAULT NULL,\n `ktviwxducxageectzaquwzuatmbqciwx` int DEFAULT NULL,\n `ppgkxbeuuyfvovtqndursdoglzcyxnyx` int DEFAULT NULL,\n `ioazggfrwhspmabrwcrzypfrlqotlumg` int DEFAULT NULL,\n `ofzaklsnoeclxebybservusufvsddqeo` int DEFAULT NULL,\n `qkgrlwbwsarwpwcccahkbstqcbmfsvng` int DEFAULT NULL,\n `wxdzquuvqdinyrvslfiejncvkrhbfrom` int DEFAULT NULL,\n `dvzculyjswkxdigwxeywmrlfhvntxeqr` int DEFAULT NULL,\n `xyidbhdbcpikuhvlqcgcyarusfdowzcn` int DEFAULT NULL,\n `aaezatzqfmqsvljdaaswqbgymlcqdudb` int DEFAULT NULL,\n `jbqlducztmmnzngstiukhwtqerxtcvdk` int DEFAULT NULL,\n `tmomlawykiiflkviuxnvrkqbwefeokms` int DEFAULT NULL,\n `tfimijuvlusdzvrhlozeopwwlwrwsqrk` int DEFAULT NULL,\n `qjkrgvaltyldxaiypnuwkyfmuiqbtbyg` int DEFAULT NULL,\n `qvpbfwxsigsdbhkrxywuxuzlusvpruxp` int DEFAULT NULL,\n `wlpruxzwknijqbuvkeivtgkthftpsanw` int DEFAULT NULL,\n PRIMARY KEY (`vxljxeklpgfharzeyqsyyislebnodztg`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"lqbwjasfleffegotnszounuxojffyehx\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["vxljxeklpgfharzeyqsyyislebnodztg"],"columns":[{"name":"vxljxeklpgfharzeyqsyyislebnodztg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"ckmnccpzyyzzpzpwxogjzdedqeodttpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vueqtggktklxmqcagaqydajovraxqwsu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmvfpmsmcjznzkxkcbghrfbgdlufeafs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujkksgugcnzbujxlivzvlrigorzwpscz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sxgtxmonpaasxgzuzkcbnbrmpvulslqe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nkvhdmrobrdnnftigqbwoddugjoafvik","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxdyqofkdcpttabnqlwhcsbuwibwzifl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sacoarusaypzdyzstfrcvwltuhflgfaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prumadvvinsgfpczqsjlyroxoarfyjpc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqjbkrloippmcwrzguqwhftjyuujzgnu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgsnbzsfhpdzzcyjwcmzlditxzcwlqtc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fidypndwowswusousrpdbweztpugmbwz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wrdzikgommvgzhcromgvtlqclzvogwxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thoiffngswmlngrulojugvcydjiqnubu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"odefpxgwhnguuuwuqrzknzalepxctkzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkadcngvfbjnjkwpkssygknhrrpsgkdv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lsjjtzdmsvmstiofcrrvnaifgurbvghb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"enkcpbqwkuojytkcransvnindkvfhykj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofverbmdcqzfrquhdidvzjqrwtwxsggo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdfmqihamnprmzzcgkcxfwhydlwnfbno","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qlannfzyrrurwjjdbzhyrcnsodjntbdl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"srmnhiyvmqmqxjnssyrsoqcwrihvsllc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcqxwjceuhdvxchqyhvimquugdfoqdfz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yiyfdmmivvhzwkvotzduzbylomtiuzms","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbdvwvfkvxmqisubxvnkzolgxglwplua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqgaqjicsclnyjxordwfqntbmedfioom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vrcslcceefzibmcbpvhoffuoiyleogvk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lrciufxzsupehbivkazgvlyjxjzoqmbb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ponelxzxxamsseslhhgnpyozszgvwazg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rmrqgxxkesdrwzhzvjbwgulpygknxtdf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"govvjzzanaphvnjzhqlnnjyisggqvrvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvrkgywnhpjsivdwactgihqrujriexbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"navyvcqgggzckxqlottcssudpxtgniav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmoxlhgzflcdzziduwwqaokaqklktfzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axdcnebqrturymxdoivmnytlpwgzoobf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gyhoqpalbutchgcsalandgjavuebwndc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqowdsfjxyuueihcsvnqfmuaclwzzuog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znemdnszterneirgkfphdlerimjxxsqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evikbuwqrdclyuaohfvolygabedlacmy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jajzeqtjfmikmfveyullakicydbwjofh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igqgfurowjggjvawezuysfrswwmseqfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdbrjkmfygmfxheuffxczmljqmxhnjvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbjesvmehzjipluonjykichhhjifvyqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kedybkusilvwbsxsdswrrhwcwwyalpzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmudkcidxzlftejungqcquqnnmsqsnrj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uaqhjhrbpwloqzzueyphttuocysrgusp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uibqdkltkxfxtjsceamhcuqfksevelmr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mphmowippkpulejwwvbcqarbvevpujgc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrwocnffwiaorwgzcaiafuvtryatwsoo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fdjnuxncputfzqfphfkjtyxaffkqohsv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qthiiniofsbqfvzakzzjnbntojwqwvsl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbiofpkblmdmtwvvricrtmuwbytbmcdb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ahaoczknkhtkqyntcrymjeiczehvgwfg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdvbrqpoltfdhiglvbvzqpwsblycqaiy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"norqxsgmkfnmktvsotqkddyicowkdpbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txbmcafyoftspcecygpcvfkvhwnkoojs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lcqrcrcgpifbtbhcptbztwxscjjdpftk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ymaebhtrnovovbxggndogzpdwyrpgsiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvacurxqomljynltyotqxqzqvxsnbety","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjscamrjqpoxaycuinftyldkxosnmiyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llaewtiheqmgradpczfrlmuvnwlrsbsx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpmktburakjdmowthhxjymuamvvafxfb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ircrrchstoobclqttqohprjghyhddkol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"waoasyyxjtaqzjwpttdbgtyswmrtvyog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"imdqwmkyhmmoyqdzospckwmagazclqix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzzrrkqxuwxfqnjubqkzrxljrstsaqxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjbyqnxigtguspsvbofojqzhragkldmw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"htkfvvrubblutkgilnrjoezcfxuhvzkn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urqrxekunuikrsnrnhbfbnuiczkkeikl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbsbnexqyzsrosqfptpuiorsnyownnyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnbgakjhsuiciykxfiuwxtnkzwtbtksl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkzjzurrqtgzbgrglxafznqcitlalccx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swhlhvipfwsmqxeojrwwkychqhdpfvma","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exaazkaqcmxohnxfjlngfgufbbhowoon","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjfifittwqarslcwopgvobighlstmatu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otkfrmvgjhobnirrqrnfpfjnitwuwswa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmubobghvlunqtrwortkzkhcbqbegrii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ptuaqxnwqxhomngwipflnzdicnjkajdy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxmpmrsruqlpclivrnnnuttxkdknegud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdgmfqztrriuxcuatfdhlpifolisvtxm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uclwjzfeubpdajgxxcxnxhfnqjkspmdx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lixfcalbgayibdimbwcnbhgqshktqfaz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qieqfxychjklzqfnmmygahadlmoughca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"auwfpymogfhofkqmbhmbxloucvldoeid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ktviwxducxageectzaquwzuatmbqciwx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ppgkxbeuuyfvovtqndursdoglzcyxnyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ioazggfrwhspmabrwcrzypfrlqotlumg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofzaklsnoeclxebybservusufvsddqeo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qkgrlwbwsarwpwcccahkbstqcbmfsvng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxdzquuvqdinyrvslfiejncvkrhbfrom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvzculyjswkxdigwxeywmrlfhvntxeqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyidbhdbcpikuhvlqcgcyarusfdowzcn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aaezatzqfmqsvljdaaswqbgymlcqdudb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jbqlducztmmnzngstiukhwtqerxtcvdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmomlawykiiflkviuxnvrkqbwefeokms","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tfimijuvlusdzvrhlozeopwwlwrwsqrk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjkrgvaltyldxaiypnuwkyfmuiqbtbyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvpbfwxsigsdbhkrxywuxuzlusvpruxp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wlpruxzwknijqbuvkeivtgkthftpsanw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669458,"databaseName":"models_schema","ddl":"CREATE TABLE `lzbcpccmabxinidkpdxbjeyepkhowvqb` (\n `jipdcpzdxqvfoaowglzumftrwgyvucmk` int NOT NULL,\n `enqcejoiudqbfopqtcimwqwuttrkvfkx` int DEFAULT NULL,\n `ecqbpgudtbpciveheckdlzijuthcgygb` int DEFAULT NULL,\n `bztoeyocahuvkszpknuepyjdndjqcuvh` int DEFAULT NULL,\n `cgqprdsgviwbciuocbdtafahwcgenlco` int DEFAULT NULL,\n `dgbzfnzpvefytudioficdqdqpqnrztwr` int DEFAULT NULL,\n `xbdeuhzieddcfeetkywkqobikbijxrmt` int DEFAULT NULL,\n `gcmfbzxcwsshnguzszdzlqalizjehvpe` int DEFAULT NULL,\n `tdcmaatzauywzmmqhtfxybvblbzqhxpp` int DEFAULT NULL,\n `ucdfunxanqimwsgipgkchdmkkxxjzlna` int DEFAULT NULL,\n `ennsltsutmuxxutovgtbxiogajhlbppd` int DEFAULT NULL,\n `vzenhpzeeqxxltajxvucfzkyvzfkqcvm` int DEFAULT NULL,\n `gmpefnsjwivizocvbvsmuyatamtiqthl` int DEFAULT NULL,\n `uazyqcgddtkzegbidtjgqpznhritpqdj` int DEFAULT NULL,\n `elswuuleqaeqqajxorznizrnchubggtp` int DEFAULT NULL,\n `xgbmatezwjfrwmxqpopkdzivpkifoojt` int DEFAULT NULL,\n `nnspybrlqrmpmdjnemxpyndmdygeuive` int DEFAULT NULL,\n `ntplbexpkcgycdgjhjjwwxgkqjbcyrhs` int DEFAULT NULL,\n `ggedqntlishxnkknfiktxlggoeytnnkc` int DEFAULT NULL,\n `qfsndneradadlmaggmnbhysczbjcqkfo` int DEFAULT NULL,\n `opaoremmbertbdlciolhmcrycgqlbubw` int DEFAULT NULL,\n `uwsgovtelqrauvecikwpojulbamfjkjk` int DEFAULT NULL,\n `gefkccdxsabkiaqnatmgiczbcfqjhtvw` int DEFAULT NULL,\n `tfzraylfvwpzbxzaabwxfxckybhqegqv` int DEFAULT NULL,\n `qnujbmsbwqxmjveqqcuwbuhegasnldav` int DEFAULT NULL,\n `dizfuneyfcustlcxhggqpumwseqgwggs` int DEFAULT NULL,\n `extvhkqcwufgmduhjuhhmulmxmasxfkv` int DEFAULT NULL,\n `jhwcldrwygsszjsmdsvsmcnzattcnhyp` int DEFAULT NULL,\n `zyckxikzkxdhjqznduzzoycowtjzwomr` int DEFAULT NULL,\n `shnwsstncbzcmihmqecvjqiwctlcpmso` int DEFAULT NULL,\n `wbooetpjmzqkutsbkhdzashocqibmomc` int DEFAULT NULL,\n `kgjhunuvggecgfsvavgwjyeebdohdzze` int DEFAULT NULL,\n `sasimxewtnxytqqbqvxqqgzutgmpugor` int DEFAULT NULL,\n `glbudmvacwtlzejrvtfiyqiyqabcbvpq` int DEFAULT NULL,\n `yaftopzhdnqqjpehvydapwwtokvclofs` int DEFAULT NULL,\n `yhnbjdpqvibcscogmafiigysnmegbkyn` int DEFAULT NULL,\n `btkwybryxfhxeoybuwjxckhfcxmtfjdt` int DEFAULT NULL,\n `fnofsuyqovlghiaowqhuohahpybxmpdw` int DEFAULT NULL,\n `hwwazgwulualhxexbabdqsbqhjlzdzkp` int DEFAULT NULL,\n `xrferbdtizdrnhzzstqdonmqjcobcpcb` int DEFAULT NULL,\n `rzzbtaohnuqwbiukompffuoibphmmbrl` int DEFAULT NULL,\n `dplqrxppndwxtpvrowwulgyssriwharu` int DEFAULT NULL,\n `cfqfdypivmzvuwpigkolhoksxwydzaga` int DEFAULT NULL,\n `xqadniffnwpvlzzpfvgedmhyvwyydrcb` int DEFAULT NULL,\n `gfpaojaunkzhejdkwyhksmxajxrbhjki` int DEFAULT NULL,\n `lxxbedqwcpzavxvrxvenznekfamywkmm` int DEFAULT NULL,\n `qdnllacehrutegtxmoyglqvbtdbirbjy` int DEFAULT NULL,\n `ugxvjneuhendxkldehssnswvwzdylmuy` int DEFAULT NULL,\n `fhquclmqaqrlypslsrrecerremhkmagv` int DEFAULT NULL,\n `kryrxukpdawicgwvgrhfiytkpxxjhwbz` int DEFAULT NULL,\n `lylprlfrbowqukrtmpftqfdfrobpjtpd` int DEFAULT NULL,\n `ejkkovooglfaarmmbxhsvvdzwtaymbzn` int DEFAULT NULL,\n `adpvljjshhgjtakoowvvblqrnedntxml` int DEFAULT NULL,\n `tdiputnshinybzgcxkxqwvckrgrwfzqi` int DEFAULT NULL,\n `rirycnqnmghrwfkvauyzlbaweasjycgb` int DEFAULT NULL,\n `rxqnugkrapsqkaicuzzrobdmexperhsg` int DEFAULT NULL,\n `prtqohwxhvcdvnzrztiqwcgfvlzspqxi` int DEFAULT NULL,\n `zdsgamvkmjvujdldhyowbdmcwhprlgkh` int DEFAULT NULL,\n `knkazyadoktfwxflzvwsvqulypsatyvq` int DEFAULT NULL,\n `txbilhhywtyhppzzgllpxktadhuvsbtm` int DEFAULT NULL,\n `timhrflnypimhmmtepdoboxkmmjyyjkp` int DEFAULT NULL,\n `cmxbglcjcsrybqabphvjwocfrvvrzhdj` int DEFAULT NULL,\n `ghbcvhpdvmnxtxojffpbrovcgpjczflj` int DEFAULT NULL,\n `tjumrllgcpwgjkzbyoacboouewrkzovi` int DEFAULT NULL,\n `stqrktzxdvshgkwrmyypishfwpednmqb` int DEFAULT NULL,\n `pyvdfxftlxhlxuohzciqmaqcqkzxorzh` int DEFAULT NULL,\n `yqtnajbwxhbtkqowuqkzupszybuiprgz` int DEFAULT NULL,\n `pdocgnnpcfmzanjrhfcesqqaxbncvtoh` int DEFAULT NULL,\n `evdqazorcumqppnmrpwvxrjrmjrchmvn` int DEFAULT NULL,\n `pndzoutlzxglstbumwiakhcuudyklput` int DEFAULT NULL,\n `uuhqbhkevuzaoepjujhlkbhvzqzihcbx` int DEFAULT NULL,\n `tpcrfhmirpzmosyuejhyesxvqhibphqj` int DEFAULT NULL,\n `mtkxsbetxcgqjskrkipqahgyoewypjeo` int DEFAULT NULL,\n `gcwhacgmburwvohkrmqabwvlwokcvofa` int DEFAULT NULL,\n `tdfpcjwxgffydhkoxmklofmfseawqver` int DEFAULT NULL,\n `klbpwvautujadsidxruwwuebikavgsjm` int DEFAULT NULL,\n `rsnjbsjawzdrdbmxqyotavghvecrwuzf` int DEFAULT NULL,\n `munhetkmecwoxcrgqgzmbyfveekrahea` int DEFAULT NULL,\n `swrajwkhbjdjvhlkmotgxzmdnaqkchbv` int DEFAULT NULL,\n `rjpyivcdgpofktkmqjpnddowtiwmbnxa` int DEFAULT NULL,\n `ahqqajddikzwfofnhcmjcurotsmjndxs` int DEFAULT NULL,\n `pirylitdwffjckrclajacrzntnnrkeyc` int DEFAULT NULL,\n `knpzxmwuqhjuzyqrpoviglxcqwggmggs` int DEFAULT NULL,\n `pbnxtfnolwdsczrgydpipjxdcovvfzbw` int DEFAULT NULL,\n `zhlqtsgfhcxrrwwdklsjclbvoummfymc` int DEFAULT NULL,\n `njgscsucvinhbqsjcdpnrhiptzedagob` int DEFAULT NULL,\n `dwhaqnwwpjuuuspcpvixhjiyzoopavph` int DEFAULT NULL,\n `jjuefwtdzzimzmckccvzalitpsbdcwey` int DEFAULT NULL,\n `zjsqhapuggizogicavspgwmgjteacikh` int DEFAULT NULL,\n `rkzenetqhhjsvmkpthjunipnmdszumms` int DEFAULT NULL,\n `ztksyxlahqwwsghfvhhegpfrnnmtdlmo` int DEFAULT NULL,\n `wphgbryzkzwhctwbuonidjikubvtrhef` int DEFAULT NULL,\n `rqlyratkvrohoohldreezklrwturzpmd` int DEFAULT NULL,\n `xpohsgnaqihunkyjtfsleilptensvzot` int DEFAULT NULL,\n `bfhaxsaxtbpdoallxakpsbvpqufrpnil` int DEFAULT NULL,\n `ncukfduamdecozmbhaecixpcifwlhlka` int DEFAULT NULL,\n `wxrsepbhdaweeqmrylsgnngctzpzbmit` int DEFAULT NULL,\n `mulifjdouebgdnlnziyvvomzhqltkkcb` int DEFAULT NULL,\n `zwgqwmxvjmcmtfpiviemnbedtbhrbzaf` int DEFAULT NULL,\n `qnccnaphvfenfvgycmfzciozultiglir` int DEFAULT NULL,\n PRIMARY KEY (`jipdcpzdxqvfoaowglzumftrwgyvucmk`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"lzbcpccmabxinidkpdxbjeyepkhowvqb\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["jipdcpzdxqvfoaowglzumftrwgyvucmk"],"columns":[{"name":"jipdcpzdxqvfoaowglzumftrwgyvucmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"enqcejoiudqbfopqtcimwqwuttrkvfkx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecqbpgudtbpciveheckdlzijuthcgygb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bztoeyocahuvkszpknuepyjdndjqcuvh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgqprdsgviwbciuocbdtafahwcgenlco","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgbzfnzpvefytudioficdqdqpqnrztwr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbdeuhzieddcfeetkywkqobikbijxrmt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gcmfbzxcwsshnguzszdzlqalizjehvpe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tdcmaatzauywzmmqhtfxybvblbzqhxpp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ucdfunxanqimwsgipgkchdmkkxxjzlna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ennsltsutmuxxutovgtbxiogajhlbppd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vzenhpzeeqxxltajxvucfzkyvzfkqcvm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmpefnsjwivizocvbvsmuyatamtiqthl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uazyqcgddtkzegbidtjgqpznhritpqdj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"elswuuleqaeqqajxorznizrnchubggtp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xgbmatezwjfrwmxqpopkdzivpkifoojt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nnspybrlqrmpmdjnemxpyndmdygeuive","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntplbexpkcgycdgjhjjwwxgkqjbcyrhs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggedqntlishxnkknfiktxlggoeytnnkc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfsndneradadlmaggmnbhysczbjcqkfo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opaoremmbertbdlciolhmcrycgqlbubw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uwsgovtelqrauvecikwpojulbamfjkjk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gefkccdxsabkiaqnatmgiczbcfqjhtvw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tfzraylfvwpzbxzaabwxfxckybhqegqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qnujbmsbwqxmjveqqcuwbuhegasnldav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dizfuneyfcustlcxhggqpumwseqgwggs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"extvhkqcwufgmduhjuhhmulmxmasxfkv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jhwcldrwygsszjsmdsvsmcnzattcnhyp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zyckxikzkxdhjqznduzzoycowtjzwomr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shnwsstncbzcmihmqecvjqiwctlcpmso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbooetpjmzqkutsbkhdzashocqibmomc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kgjhunuvggecgfsvavgwjyeebdohdzze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sasimxewtnxytqqbqvxqqgzutgmpugor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"glbudmvacwtlzejrvtfiyqiyqabcbvpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yaftopzhdnqqjpehvydapwwtokvclofs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhnbjdpqvibcscogmafiigysnmegbkyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"btkwybryxfhxeoybuwjxckhfcxmtfjdt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnofsuyqovlghiaowqhuohahpybxmpdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwwazgwulualhxexbabdqsbqhjlzdzkp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xrferbdtizdrnhzzstqdonmqjcobcpcb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzzbtaohnuqwbiukompffuoibphmmbrl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dplqrxppndwxtpvrowwulgyssriwharu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfqfdypivmzvuwpigkolhoksxwydzaga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqadniffnwpvlzzpfvgedmhyvwyydrcb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfpaojaunkzhejdkwyhksmxajxrbhjki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxxbedqwcpzavxvrxvenznekfamywkmm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdnllacehrutegtxmoyglqvbtdbirbjy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugxvjneuhendxkldehssnswvwzdylmuy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhquclmqaqrlypslsrrecerremhkmagv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kryrxukpdawicgwvgrhfiytkpxxjhwbz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lylprlfrbowqukrtmpftqfdfrobpjtpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejkkovooglfaarmmbxhsvvdzwtaymbzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"adpvljjshhgjtakoowvvblqrnedntxml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tdiputnshinybzgcxkxqwvckrgrwfzqi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rirycnqnmghrwfkvauyzlbaweasjycgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxqnugkrapsqkaicuzzrobdmexperhsg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prtqohwxhvcdvnzrztiqwcgfvlzspqxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdsgamvkmjvujdldhyowbdmcwhprlgkh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knkazyadoktfwxflzvwsvqulypsatyvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txbilhhywtyhppzzgllpxktadhuvsbtm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"timhrflnypimhmmtepdoboxkmmjyyjkp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmxbglcjcsrybqabphvjwocfrvvrzhdj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghbcvhpdvmnxtxojffpbrovcgpjczflj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjumrllgcpwgjkzbyoacboouewrkzovi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"stqrktzxdvshgkwrmyypishfwpednmqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pyvdfxftlxhlxuohzciqmaqcqkzxorzh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqtnajbwxhbtkqowuqkzupszybuiprgz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdocgnnpcfmzanjrhfcesqqaxbncvtoh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evdqazorcumqppnmrpwvxrjrmjrchmvn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pndzoutlzxglstbumwiakhcuudyklput","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uuhqbhkevuzaoepjujhlkbhvzqzihcbx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpcrfhmirpzmosyuejhyesxvqhibphqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtkxsbetxcgqjskrkipqahgyoewypjeo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gcwhacgmburwvohkrmqabwvlwokcvofa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tdfpcjwxgffydhkoxmklofmfseawqver","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"klbpwvautujadsidxruwwuebikavgsjm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rsnjbsjawzdrdbmxqyotavghvecrwuzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"munhetkmecwoxcrgqgzmbyfveekrahea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swrajwkhbjdjvhlkmotgxzmdnaqkchbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjpyivcdgpofktkmqjpnddowtiwmbnxa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ahqqajddikzwfofnhcmjcurotsmjndxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pirylitdwffjckrclajacrzntnnrkeyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knpzxmwuqhjuzyqrpoviglxcqwggmggs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbnxtfnolwdsczrgydpipjxdcovvfzbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhlqtsgfhcxrrwwdklsjclbvoummfymc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njgscsucvinhbqsjcdpnrhiptzedagob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwhaqnwwpjuuuspcpvixhjiyzoopavph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjuefwtdzzimzmckccvzalitpsbdcwey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjsqhapuggizogicavspgwmgjteacikh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkzenetqhhjsvmkpthjunipnmdszumms","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ztksyxlahqwwsghfvhhegpfrnnmtdlmo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wphgbryzkzwhctwbuonidjikubvtrhef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqlyratkvrohoohldreezklrwturzpmd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xpohsgnaqihunkyjtfsleilptensvzot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bfhaxsaxtbpdoallxakpsbvpqufrpnil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ncukfduamdecozmbhaecixpcifwlhlka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxrsepbhdaweeqmrylsgnngctzpzbmit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mulifjdouebgdnlnziyvvomzhqltkkcb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zwgqwmxvjmcmtfpiviemnbedtbhrbzaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qnccnaphvfenfvgycmfzciozultiglir","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669467,"databaseName":"models_schema","ddl":"CREATE TABLE `models` (\n `id` int NOT NULL,\n `make_id` int DEFAULT NULL,\n `model` varchar(200) DEFAULT NULL,\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"models\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["id"],"columns":[{"name":"id","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"make_id","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"model","jdbcType":12,"typeName":"VARCHAR","typeExpression":"VARCHAR","charsetName":"utf8mb4","length":200,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669472,"databaseName":"models_schema","ddl":"CREATE TABLE `models_random` (\n `id_random` int NOT NULL,\n `make_id_random` int DEFAULT NULL,\n `model_random` varchar(200) DEFAULT NULL,\n PRIMARY KEY (`id_random`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"models_random\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["id_random"],"columns":[{"name":"id_random","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"make_id_random","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"model_random","jdbcType":12,"typeName":"VARCHAR","typeExpression":"VARCHAR","charsetName":"utf8mb4","length":200,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669514,"databaseName":"models_schema","ddl":"CREATE TABLE `mrhwnmuraagswlujmtsibhxramzicgvh` (\n `xtluxxwmkmngdovvfrteprzirxzfmbjw` int NOT NULL,\n `piuqxezvukaamolrmetfgkajjzthxgtw` int DEFAULT NULL,\n `emucoeszifxauvhtbkfjujroguumrwsy` int DEFAULT NULL,\n `tnmxnygmtozarnsptdwcwinfnboiclap` int DEFAULT NULL,\n `lxobjtewcmnlxkfzeufbbnwwzfanxlma` int DEFAULT NULL,\n `tirzbbedbcxtrtwnynpjabizrjgotbto` int DEFAULT NULL,\n `yfvblhhkhlcqjfredplqnwgedslmthyc` int DEFAULT NULL,\n `ltiiajflmjmedfijqhspygefyfztzoyv` int DEFAULT NULL,\n `vceyraywvvchqndubkfkghgppavuhkkd` int DEFAULT NULL,\n `gfdlxfqxqibjgorogiktnsqsxfwakado` int DEFAULT NULL,\n `igtxpqtjnvvbltlhzwpaappwitfydngv` int DEFAULT NULL,\n `fhfkisnrilokscwinywjgsgcsfbazcdi` int DEFAULT NULL,\n `fykjptwelvfanwptnnthzdlrzlhtjohv` int DEFAULT NULL,\n `kuxfhpmuetwmwreqgffzocxflfaefkhz` int DEFAULT NULL,\n `hyalwnlbebsyuiemqhpkyiwbvjkyignv` int DEFAULT NULL,\n `fhyxmdxtuncvrzuzdgbspmxezxofahva` int DEFAULT NULL,\n `sjzooegvbuqtljbmbupyvvngshgayqbz` int DEFAULT NULL,\n `otxxdzlvlyqoasihmoehybwdrlbdxwfx` int DEFAULT NULL,\n `mrbendrtceafsdqhtmuaxajjcbglgkly` int DEFAULT NULL,\n `mcsaofckbiozyssgoevmhnugwhyrtlwm` int DEFAULT NULL,\n `zqsevgvnwkzlmziqrdtvsielssyypfml` int DEFAULT NULL,\n `dahgayxuuywflnttxfidzyeiipwyyxth` int DEFAULT NULL,\n `ipwmclxbjkdtukhbmbwntkhpggsbsfdj` int DEFAULT NULL,\n `xrxcbpyoxnzbxtgoxfelxyjbetupxrbf` int DEFAULT NULL,\n `xomqnobsirvpmcbhmsuqodhqqorhwqkl` int DEFAULT NULL,\n `ljbfkdtexvdmvqhftwjnzsffktwttfpo` int DEFAULT NULL,\n `akdahtakmzrmrakjvrafgiqxiocgrcsp` int DEFAULT NULL,\n `wbogjxunnhiqucyqbfxseqdwqzkkswcl` int DEFAULT NULL,\n `crftlavrpwwghbljekcmmtxhytairkqo` int DEFAULT NULL,\n `qyqdfsdsubkngbdorqpsfgpdjguowndn` int DEFAULT NULL,\n `bjywujuobdjdvbyieesqsayjtgsvdoiu` int DEFAULT NULL,\n `auyyfsdpxvctyvtvjufppnoftivvnlgq` int DEFAULT NULL,\n `duulaiybnpupzfwjfrbzubwzxjksvfsw` int DEFAULT NULL,\n `ygmaejopxbwvcbpblpthkfjnijwmomgc` int DEFAULT NULL,\n `covblkxbnmovjfpnkbwgjcjohfajzeon` int DEFAULT NULL,\n `pkjcpcgqrrmssaooanubvtmfumyhwgks` int DEFAULT NULL,\n `cmadbxccadehomqjctwcncdargcftqzw` int DEFAULT NULL,\n `twiuiqggbjsewdskhxygfbzfcbuablmv` int DEFAULT NULL,\n `hwxljbubxnxmuvsylbfrhjppqcyzyhps` int DEFAULT NULL,\n `fzbutfsnmbqrimchguqohwfgetimydam` int DEFAULT NULL,\n `lvaeabxfqequjaybdbjvnvtbjpkihgun` int DEFAULT NULL,\n `mprkbdephqfcmqjxyikqjyljfbhslarl` int DEFAULT NULL,\n `inofkwyegbpyukgbgmpzmfnnzawchkxl` int DEFAULT NULL,\n `wkijonnpjtzvdehgvyyoofrqwfdaineo` int DEFAULT NULL,\n `sqoftvhvhuqvhfayyhzbrqcrehgmumuw` int DEFAULT NULL,\n `qoxicvjfhukkjkpnlupyxdvdymsoovdq` int DEFAULT NULL,\n `gowtofcpgdetkvjudukrrfjgidkpjuro` int DEFAULT NULL,\n `xgsefhqtptyxiqhartzuuqloskcgdmyp` int DEFAULT NULL,\n `vhbxgteyhccdrpbbbulxuybrbnvlsgaz` int DEFAULT NULL,\n `mshtbnnanfjgscwpyourmknyfahwojhj` int DEFAULT NULL,\n `selmnidwdntduucyzqpcxqkeepyomvmk` int DEFAULT NULL,\n `qkmodbvtjciukdeihcuatfadvwuxbndl` int DEFAULT NULL,\n `jaqwunuhjrcivkjcxheshsupiuaabbzh` int DEFAULT NULL,\n `ppzulzlobrpmqdkqqyqxlgxylprhoknh` int DEFAULT NULL,\n `fqmzyjzrdhjmxdxtnjnoaeitakgpjiym` int DEFAULT NULL,\n `wvgompuxssswsuefugsrchxymzlrjepq` int DEFAULT NULL,\n `dlinfalqzxwccxrerfdsvoghnsbjufsl` int DEFAULT NULL,\n `rfikjzggmtkdnfhuxfzimuojamnvzlkv` int DEFAULT NULL,\n `mjjwulgymhtyqthfloskmedgdmgdsorz` int DEFAULT NULL,\n `vxoofwgliycowavbqemsiodgiyiooceu` int DEFAULT NULL,\n `umjxrndksdmxoycrpzcnibglcwwetkxq` int DEFAULT NULL,\n `pipoqnowldibocletbcutcbwmygilakn` int DEFAULT NULL,\n `juwvhnshgvacbwljyfhxeuyexafbvvto` int DEFAULT NULL,\n `vxbgmopnzdbsnopsirxpngdcbclwxtty` int DEFAULT NULL,\n `yghmmepiuedoneudgopdeqtnbggkvhoa` int DEFAULT NULL,\n `ylxtkkpszsbulvumsjhirrkookxpfuam` int DEFAULT NULL,\n `wssawvjohyidwzxfsfdxnjxprjhprzeb` int DEFAULT NULL,\n `lraphgiszbybpxhitjqvwjbpndzbhufb` int DEFAULT NULL,\n `ppkkzwluwtgopzkoumwyzsijwwidtxnm` int DEFAULT NULL,\n `fedudqjcjmvhzsmcaytvafplugqrdjtp` int DEFAULT NULL,\n `xxvtfgylyhcspqmwkxfrqacohlmnpkrh` int DEFAULT NULL,\n `jaeuaswnatuknqklkylomstyveegeoug` int DEFAULT NULL,\n `eqmnrzdqcwmuoxvpbzblftythzbykynm` int DEFAULT NULL,\n `aesccmyelfwrsxkicwvicvgxmggvcqyq` int DEFAULT NULL,\n `eyoptkvcvnztbpcbrrhkggxystffqhmi` int DEFAULT NULL,\n `zhztrlbdmvmqjfwmbfnryuzwotfcjsmb` int DEFAULT NULL,\n `hqrgxxigwcmorwdkbngkbvbvehhlgqee` int DEFAULT NULL,\n `amfedxcqmbgrjhyaglfmqbzhntbthmcl` int DEFAULT NULL,\n `cvmubnsnwfwdjsmehhylziqewzeoskkg` int DEFAULT NULL,\n `dgacqcspcnnzkdmchccxadythcakwtnh` int DEFAULT NULL,\n `pqfwcahhyzvjpiruusoykcfzroljjscp` int DEFAULT NULL,\n `zuopswbiguwscibkpjpumzyjikicbqsa` int DEFAULT NULL,\n `mxafjuazevsdphqymgxgwejbzbhiqztm` int DEFAULT NULL,\n `rqeseyetvhzhnokaqmjvqaektmqsusbr` int DEFAULT NULL,\n `wgvglurdexfpjdevmsasllhkfotrktqh` int DEFAULT NULL,\n `tqdnltggrzedshamebwkxkrnhaejypmo` int DEFAULT NULL,\n `tvysjgkokjpwinwfvfguhtaipibrgqtu` int DEFAULT NULL,\n `qolazdaocdnmhagaqwrzmpotacnplqqu` int DEFAULT NULL,\n `tahxlqxzzhmdclmrqqowbvnxbwsdqyex` int DEFAULT NULL,\n `iqntjaqpqbicozfeziokjhwtnyrszjit` int DEFAULT NULL,\n `zyucttxkqwmmnjvrtfqjdugkzdzfkkey` int DEFAULT NULL,\n `qdhhjdlhmeqhukajtgadsvmxvupyaikw` int DEFAULT NULL,\n `zrqbdndsjtyqllwasdyifewwrvvdtppk` int DEFAULT NULL,\n `hkhqxhprhrpoyvlmomeywiryxjlfsnpc` int DEFAULT NULL,\n `wifdyfyljpmyrydjvidpwljslzrqxwhd` int DEFAULT NULL,\n `ixcrrwjcrnhoprkpkutvxmasqsthomug` int DEFAULT NULL,\n `shsiiektljprdgtlitdxpjdfkxobhikv` int DEFAULT NULL,\n `ohvoqywseikujkqnhokbgrierhcifass` int DEFAULT NULL,\n `mivqbslmiyktekdxpufehespijafexbl` int DEFAULT NULL,\n `zpcklqzgyeaxpdytdqdjdflmfdsfqlhf` int DEFAULT NULL,\n PRIMARY KEY (`xtluxxwmkmngdovvfrteprzirxzfmbjw`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"mrhwnmuraagswlujmtsibhxramzicgvh\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["xtluxxwmkmngdovvfrteprzirxzfmbjw"],"columns":[{"name":"xtluxxwmkmngdovvfrteprzirxzfmbjw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"piuqxezvukaamolrmetfgkajjzthxgtw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"emucoeszifxauvhtbkfjujroguumrwsy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnmxnygmtozarnsptdwcwinfnboiclap","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxobjtewcmnlxkfzeufbbnwwzfanxlma","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tirzbbedbcxtrtwnynpjabizrjgotbto","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfvblhhkhlcqjfredplqnwgedslmthyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ltiiajflmjmedfijqhspygefyfztzoyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vceyraywvvchqndubkfkghgppavuhkkd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfdlxfqxqibjgorogiktnsqsxfwakado","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igtxpqtjnvvbltlhzwpaappwitfydngv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhfkisnrilokscwinywjgsgcsfbazcdi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fykjptwelvfanwptnnthzdlrzlhtjohv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kuxfhpmuetwmwreqgffzocxflfaefkhz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hyalwnlbebsyuiemqhpkyiwbvjkyignv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhyxmdxtuncvrzuzdgbspmxezxofahva","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjzooegvbuqtljbmbupyvvngshgayqbz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otxxdzlvlyqoasihmoehybwdrlbdxwfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrbendrtceafsdqhtmuaxajjcbglgkly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcsaofckbiozyssgoevmhnugwhyrtlwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqsevgvnwkzlmziqrdtvsielssyypfml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dahgayxuuywflnttxfidzyeiipwyyxth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ipwmclxbjkdtukhbmbwntkhpggsbsfdj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xrxcbpyoxnzbxtgoxfelxyjbetupxrbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xomqnobsirvpmcbhmsuqodhqqorhwqkl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljbfkdtexvdmvqhftwjnzsffktwttfpo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akdahtakmzrmrakjvrafgiqxiocgrcsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbogjxunnhiqucyqbfxseqdwqzkkswcl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"crftlavrpwwghbljekcmmtxhytairkqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qyqdfsdsubkngbdorqpsfgpdjguowndn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjywujuobdjdvbyieesqsayjtgsvdoiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"auyyfsdpxvctyvtvjufppnoftivvnlgq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"duulaiybnpupzfwjfrbzubwzxjksvfsw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ygmaejopxbwvcbpblpthkfjnijwmomgc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"covblkxbnmovjfpnkbwgjcjohfajzeon","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkjcpcgqrrmssaooanubvtmfumyhwgks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmadbxccadehomqjctwcncdargcftqzw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twiuiqggbjsewdskhxygfbzfcbuablmv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwxljbubxnxmuvsylbfrhjppqcyzyhps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzbutfsnmbqrimchguqohwfgetimydam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvaeabxfqequjaybdbjvnvtbjpkihgun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mprkbdephqfcmqjxyikqjyljfbhslarl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"inofkwyegbpyukgbgmpzmfnnzawchkxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wkijonnpjtzvdehgvyyoofrqwfdaineo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sqoftvhvhuqvhfayyhzbrqcrehgmumuw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qoxicvjfhukkjkpnlupyxdvdymsoovdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gowtofcpgdetkvjudukrrfjgidkpjuro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xgsefhqtptyxiqhartzuuqloskcgdmyp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhbxgteyhccdrpbbbulxuybrbnvlsgaz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mshtbnnanfjgscwpyourmknyfahwojhj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"selmnidwdntduucyzqpcxqkeepyomvmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qkmodbvtjciukdeihcuatfadvwuxbndl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jaqwunuhjrcivkjcxheshsupiuaabbzh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ppzulzlobrpmqdkqqyqxlgxylprhoknh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqmzyjzrdhjmxdxtnjnoaeitakgpjiym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wvgompuxssswsuefugsrchxymzlrjepq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dlinfalqzxwccxrerfdsvoghnsbjufsl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfikjzggmtkdnfhuxfzimuojamnvzlkv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjjwulgymhtyqthfloskmedgdmgdsorz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxoofwgliycowavbqemsiodgiyiooceu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umjxrndksdmxoycrpzcnibglcwwetkxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pipoqnowldibocletbcutcbwmygilakn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"juwvhnshgvacbwljyfhxeuyexafbvvto","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxbgmopnzdbsnopsirxpngdcbclwxtty","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yghmmepiuedoneudgopdeqtnbggkvhoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ylxtkkpszsbulvumsjhirrkookxpfuam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wssawvjohyidwzxfsfdxnjxprjhprzeb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lraphgiszbybpxhitjqvwjbpndzbhufb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ppkkzwluwtgopzkoumwyzsijwwidtxnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fedudqjcjmvhzsmcaytvafplugqrdjtp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxvtfgylyhcspqmwkxfrqacohlmnpkrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jaeuaswnatuknqklkylomstyveegeoug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqmnrzdqcwmuoxvpbzblftythzbykynm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aesccmyelfwrsxkicwvicvgxmggvcqyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eyoptkvcvnztbpcbrrhkggxystffqhmi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhztrlbdmvmqjfwmbfnryuzwotfcjsmb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqrgxxigwcmorwdkbngkbvbvehhlgqee","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"amfedxcqmbgrjhyaglfmqbzhntbthmcl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvmubnsnwfwdjsmehhylziqewzeoskkg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgacqcspcnnzkdmchccxadythcakwtnh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqfwcahhyzvjpiruusoykcfzroljjscp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zuopswbiguwscibkpjpumzyjikicbqsa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mxafjuazevsdphqymgxgwejbzbhiqztm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqeseyetvhzhnokaqmjvqaektmqsusbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wgvglurdexfpjdevmsasllhkfotrktqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqdnltggrzedshamebwkxkrnhaejypmo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvysjgkokjpwinwfvfguhtaipibrgqtu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qolazdaocdnmhagaqwrzmpotacnplqqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tahxlqxzzhmdclmrqqowbvnxbwsdqyex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqntjaqpqbicozfeziokjhwtnyrszjit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zyucttxkqwmmnjvrtfqjdugkzdzfkkey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdhhjdlhmeqhukajtgadsvmxvupyaikw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zrqbdndsjtyqllwasdyifewwrvvdtppk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkhqxhprhrpoyvlmomeywiryxjlfsnpc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wifdyfyljpmyrydjvidpwljslzrqxwhd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixcrrwjcrnhoprkpkutvxmasqsthomug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shsiiektljprdgtlitdxpjdfkxobhikv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohvoqywseikujkqnhokbgrierhcifass","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mivqbslmiyktekdxpufehespijafexbl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zpcklqzgyeaxpdytdqdjdflmfdsfqlhf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669552,"databaseName":"models_schema","ddl":"CREATE TABLE `mrorqfumguckiypivdoraipjpawwjdfq` (\n `uupoucvktvbpruanfeivovahvfbwdjog` int NOT NULL,\n `epvrdgfdkaaphlyvmmeavwslbewoeodw` int DEFAULT NULL,\n `gfkgxqlanjodrwbadkgwytxrcrdbctxp` int DEFAULT NULL,\n `oqxmcozhdnrixwxtxdjdvfmxeshaupmm` int DEFAULT NULL,\n `grsovsylykjwfiqpcjyocsdqxjousgbl` int DEFAULT NULL,\n `fnjfqmtfcozqxfgriryzautjxphyumlg` int DEFAULT NULL,\n `worumbaocvzbgfuhhfniuuitpjuauhcv` int DEFAULT NULL,\n `dilqlkgdvwyhxmfzilnazxjnwkdgwgbv` int DEFAULT NULL,\n `bvioudhyqpjtizlrdgjjqkmkrcdushvg` int DEFAULT NULL,\n `fpmcprtehokmrwkitafszwpqxucxvqyb` int DEFAULT NULL,\n `zxdzisaqppjgqflmczgfbmmvhspewvsd` int DEFAULT NULL,\n `cedvkptrgwisayxyffrtsafngvoapgzm` int DEFAULT NULL,\n `vwtjzcifiazcrktetwwsoypifoabcvzn` int DEFAULT NULL,\n `zsqzqpbxbnunyfbzypvdnzdqfawvmooj` int DEFAULT NULL,\n `sbtqporhcesqpdofjrjbtyqabffoxadi` int DEFAULT NULL,\n `nzriukonyqvvchlfjxlvyvnwlwkakdcy` int DEFAULT NULL,\n `omghefiaktnblrroxkxozinuyxhczhcd` int DEFAULT NULL,\n `nvhvefegqdydmdtlmgictinxwswdcxsz` int DEFAULT NULL,\n `hstrnucekhnvppprcwppjoccykvrqesp` int DEFAULT NULL,\n `mspjfldoliixasklyjmvhqhehpdjxbaa` int DEFAULT NULL,\n `rcmxjnsdnhzxbhtueseyxlknhwfzvtex` int DEFAULT NULL,\n `wmfshgyjrtwkxmcwqjsiiknegmzmhyrc` int DEFAULT NULL,\n `tixcvbixtfixnrvvjoatfakxdlpxmezb` int DEFAULT NULL,\n `zmyxagdkfbfjxofcuoejfcidufpppbay` int DEFAULT NULL,\n `adziungjeqjpjapsqdxprgtdmpsvnsto` int DEFAULT NULL,\n `kocdpwvwlujfkpyyvvcllbdyqscpzllj` int DEFAULT NULL,\n `ucpkzhmaujnchawfzhhupycntudskaub` int DEFAULT NULL,\n `ljzfirncrhbykpwjyyhwwlqwzqmgzmwz` int DEFAULT NULL,\n `aozeqgzvpdnnmoonyarzmwzbcimlchck` int DEFAULT NULL,\n `xbzinadnnenkfgjclvqgnrcsylwuyeib` int DEFAULT NULL,\n `sktksldxocjexqzkfodzrkoxucskyuzo` int DEFAULT NULL,\n `hvmblzugvecuxwfubfkfyrrddncnvwic` int DEFAULT NULL,\n `fbwscolrdisxslfvumcekyeebzesdiog` int DEFAULT NULL,\n `tekxtqixmgzcwfidpfwnjxdrwhlrmdps` int DEFAULT NULL,\n `lgybrfslmbetlfbhsmkqmibvtgrhtdao` int DEFAULT NULL,\n `vgdighiegtitzqapqbwwitcwdjkpjelq` int DEFAULT NULL,\n `ypltavawmbuivcnhttochbpodaeskqdm` int DEFAULT NULL,\n `dbeaogcumbxyrjketurvlgkppfeldgah` int DEFAULT NULL,\n `ikyvbcjpzjqoewelkymnblgdihgbdpue` int DEFAULT NULL,\n `kgcjygajpkggoswkvewnlkliicsgjkvx` int DEFAULT NULL,\n `fchrylyxcpionxaurbcrjmqttrjzqjpw` int DEFAULT NULL,\n `rhqosozpkmzvvbeztinkdmlylblgsvgq` int DEFAULT NULL,\n `fjpkrsiwngztqddvuwpkkhmhvwrvhnki` int DEFAULT NULL,\n `sdiifemdavxljgnmcdncwkonmojnduky` int DEFAULT NULL,\n `jqtiyhbwkahktyrcqdpzqmpnlouqhbyr` int DEFAULT NULL,\n `mfvkncgiortmpforpdynazyzmffwdbiq` int DEFAULT NULL,\n `zakngcbmgpmzwowubfygnabkfgqfuajy` int DEFAULT NULL,\n `ubwkwubfqcyokvhtuyslwwxogilvqgjw` int DEFAULT NULL,\n `ywvoigvhximyiyswzundpjekeyxyxzrk` int DEFAULT NULL,\n `ohhhrfhsyzcaflbpmwzxfkahizlfddiw` int DEFAULT NULL,\n `ucrdzlkwmeoslsibgpizofxgbqnlemob` int DEFAULT NULL,\n `ovzmovsadtuidoaunpqaxmbmjptbwnha` int DEFAULT NULL,\n `kjeccgdibeklomivtalbafctboucbozu` int DEFAULT NULL,\n `wvptiivebqimhvnuixwvkqqowmnktjwh` int DEFAULT NULL,\n `yxbagpuomsybmgiyqkjepdfabsjooirj` int DEFAULT NULL,\n `sltytrbbkkouybqulphdtaheqekfrirb` int DEFAULT NULL,\n `uwevnbstiokbejzlirkjaemsmkhejtnv` int DEFAULT NULL,\n `elqxadsqhextfycqqpjxziaoakuourab` int DEFAULT NULL,\n `zhpmyclpcsjwqxiryklrlgnnccmlxcer` int DEFAULT NULL,\n `xjcwqyuezhrxgtsmbqewummecjhhduvc` int DEFAULT NULL,\n `maphwsfslhmjcaarryjyrlrxyuxmwgrc` int DEFAULT NULL,\n `dsmraqtkdjyibyewvehkgswkakhpxrql` int DEFAULT NULL,\n `denivgzkkattquftwwkptsypoplokouq` int DEFAULT NULL,\n `xsuoazqoeironshlgkskspzzwysjtbkk` int DEFAULT NULL,\n `mtxnoqgrefbhbktiftbeyqtfbxgoxsjz` int DEFAULT NULL,\n `aqensxwzbujizwbaikvahpqvmpwdsfgl` int DEFAULT NULL,\n `gpsmzgvbiwqzghoosbqyzrqtjrkianre` int DEFAULT NULL,\n `sgkanjokmmrcinzqzhxxawwtarpfbldu` int DEFAULT NULL,\n `qxekbexrpdnhmrwakpfdqnmbwkcssckd` int DEFAULT NULL,\n `icvyoyjsybbppkacmtplchxllmpttfpq` int DEFAULT NULL,\n `ocozbupsbddtwihqcqgxisepjdiduwwc` int DEFAULT NULL,\n `ghjdgqqrothuaydgobvjbpinkmhqgdfm` int DEFAULT NULL,\n `nujvcdlwjqoroysmvrvxwtcyurfbiwxn` int DEFAULT NULL,\n `hywdebiokwvfoprdxmsgodtkoqafhmlz` int DEFAULT NULL,\n `raahfwlmgwkaehesckmsjwgcbhezpxrh` int DEFAULT NULL,\n `edprqwiwbkpofhpcwjtfxtfbyetsapqx` int DEFAULT NULL,\n `ntsheevngltyctdmdbgnjqmxcahbrrda` int DEFAULT NULL,\n `tvvgvwcavfetdxmrgdslawayvfavttyi` int DEFAULT NULL,\n `vajpcfjphhxtfgvoufzhzqisvlzytvwc` int DEFAULT NULL,\n `ihacqqdnktjfrkrnjqyxnewkifxnuyvn` int DEFAULT NULL,\n `zhndnafvyoqdvnictusqlabnczurwfsl` int DEFAULT NULL,\n `tytdyjcevjqbhciuqfftdnddizauicpv` int DEFAULT NULL,\n `uzmazvwjisetjmkdxsywqmkeowbisnba` int DEFAULT NULL,\n `wxvpiufmcpznjgymgbrvcvypivikogdd` int DEFAULT NULL,\n `dsacqgipzzetgpiohxwmqxjrlbvzzutm` int DEFAULT NULL,\n `kwoozrirxhqjpbswxlpotyexexhojbny` int DEFAULT NULL,\n `pnyprrqtqfjfbnznjlnahlhnuwbjtabf` int DEFAULT NULL,\n `quemscaiqqxhiguiwrhgwosgsihcmgmr` int DEFAULT NULL,\n `wbiqbtrggjjtgrlgggrohquqjihgrcli` int DEFAULT NULL,\n `tbobjkdwiyobesgthwsmthbrwjqrkzsm` int DEFAULT NULL,\n `swazqthgiblrdusbbpegqokfjctohdpi` int DEFAULT NULL,\n `swxkjkfcwwisyygaeqnuuyxvekaiiezw` int DEFAULT NULL,\n `iqkmogfsgxaybmykcfosawgfeimhaoci` int DEFAULT NULL,\n `bvnfrsdhhqaexsevbkvdcwhfqcflmqnn` int DEFAULT NULL,\n `llqwrdheehxpmconsclucspumsmrqgjk` int DEFAULT NULL,\n `yexavsscxbudvuxtbxylmselgfgyixif` int DEFAULT NULL,\n `sjwlknlrdrgkjlvnawoldkkqoftkgzzl` int DEFAULT NULL,\n `rzuberelwkogucnohdmyyxbylkpohrde` int DEFAULT NULL,\n `pflukjzrksugwmxruohhdmcyzkvyidmi` int DEFAULT NULL,\n `icbyxmwcdxgdaxaqbeyyztbatvxbnerc` int DEFAULT NULL,\n PRIMARY KEY (`uupoucvktvbpruanfeivovahvfbwdjog`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"mrorqfumguckiypivdoraipjpawwjdfq\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["uupoucvktvbpruanfeivovahvfbwdjog"],"columns":[{"name":"uupoucvktvbpruanfeivovahvfbwdjog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"epvrdgfdkaaphlyvmmeavwslbewoeodw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfkgxqlanjodrwbadkgwytxrcrdbctxp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqxmcozhdnrixwxtxdjdvfmxeshaupmm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grsovsylykjwfiqpcjyocsdqxjousgbl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnjfqmtfcozqxfgriryzautjxphyumlg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"worumbaocvzbgfuhhfniuuitpjuauhcv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dilqlkgdvwyhxmfzilnazxjnwkdgwgbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvioudhyqpjtizlrdgjjqkmkrcdushvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpmcprtehokmrwkitafszwpqxucxvqyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxdzisaqppjgqflmczgfbmmvhspewvsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cedvkptrgwisayxyffrtsafngvoapgzm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vwtjzcifiazcrktetwwsoypifoabcvzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zsqzqpbxbnunyfbzypvdnzdqfawvmooj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbtqporhcesqpdofjrjbtyqabffoxadi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzriukonyqvvchlfjxlvyvnwlwkakdcy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omghefiaktnblrroxkxozinuyxhczhcd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvhvefegqdydmdtlmgictinxwswdcxsz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hstrnucekhnvppprcwppjoccykvrqesp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mspjfldoliixasklyjmvhqhehpdjxbaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcmxjnsdnhzxbhtueseyxlknhwfzvtex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmfshgyjrtwkxmcwqjsiiknegmzmhyrc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tixcvbixtfixnrvvjoatfakxdlpxmezb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmyxagdkfbfjxofcuoejfcidufpppbay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"adziungjeqjpjapsqdxprgtdmpsvnsto","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kocdpwvwlujfkpyyvvcllbdyqscpzllj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ucpkzhmaujnchawfzhhupycntudskaub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljzfirncrhbykpwjyyhwwlqwzqmgzmwz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aozeqgzvpdnnmoonyarzmwzbcimlchck","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbzinadnnenkfgjclvqgnrcsylwuyeib","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sktksldxocjexqzkfodzrkoxucskyuzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hvmblzugvecuxwfubfkfyrrddncnvwic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbwscolrdisxslfvumcekyeebzesdiog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tekxtqixmgzcwfidpfwnjxdrwhlrmdps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgybrfslmbetlfbhsmkqmibvtgrhtdao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgdighiegtitzqapqbwwitcwdjkpjelq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypltavawmbuivcnhttochbpodaeskqdm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbeaogcumbxyrjketurvlgkppfeldgah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikyvbcjpzjqoewelkymnblgdihgbdpue","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kgcjygajpkggoswkvewnlkliicsgjkvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fchrylyxcpionxaurbcrjmqttrjzqjpw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhqosozpkmzvvbeztinkdmlylblgsvgq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjpkrsiwngztqddvuwpkkhmhvwrvhnki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdiifemdavxljgnmcdncwkonmojnduky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jqtiyhbwkahktyrcqdpzqmpnlouqhbyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mfvkncgiortmpforpdynazyzmffwdbiq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zakngcbmgpmzwowubfygnabkfgqfuajy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubwkwubfqcyokvhtuyslwwxogilvqgjw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywvoigvhximyiyswzundpjekeyxyxzrk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohhhrfhsyzcaflbpmwzxfkahizlfddiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ucrdzlkwmeoslsibgpizofxgbqnlemob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovzmovsadtuidoaunpqaxmbmjptbwnha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjeccgdibeklomivtalbafctboucbozu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wvptiivebqimhvnuixwvkqqowmnktjwh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxbagpuomsybmgiyqkjepdfabsjooirj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sltytrbbkkouybqulphdtaheqekfrirb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uwevnbstiokbejzlirkjaemsmkhejtnv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"elqxadsqhextfycqqpjxziaoakuourab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhpmyclpcsjwqxiryklrlgnnccmlxcer","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjcwqyuezhrxgtsmbqewummecjhhduvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"maphwsfslhmjcaarryjyrlrxyuxmwgrc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dsmraqtkdjyibyewvehkgswkakhpxrql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"denivgzkkattquftwwkptsypoplokouq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsuoazqoeironshlgkskspzzwysjtbkk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtxnoqgrefbhbktiftbeyqtfbxgoxsjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqensxwzbujizwbaikvahpqvmpwdsfgl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gpsmzgvbiwqzghoosbqyzrqtjrkianre","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sgkanjokmmrcinzqzhxxawwtarpfbldu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxekbexrpdnhmrwakpfdqnmbwkcssckd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icvyoyjsybbppkacmtplchxllmpttfpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocozbupsbddtwihqcqgxisepjdiduwwc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghjdgqqrothuaydgobvjbpinkmhqgdfm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nujvcdlwjqoroysmvrvxwtcyurfbiwxn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hywdebiokwvfoprdxmsgodtkoqafhmlz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"raahfwlmgwkaehesckmsjwgcbhezpxrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edprqwiwbkpofhpcwjtfxtfbyetsapqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntsheevngltyctdmdbgnjqmxcahbrrda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvvgvwcavfetdxmrgdslawayvfavttyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vajpcfjphhxtfgvoufzhzqisvlzytvwc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ihacqqdnktjfrkrnjqyxnewkifxnuyvn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhndnafvyoqdvnictusqlabnczurwfsl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tytdyjcevjqbhciuqfftdnddizauicpv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzmazvwjisetjmkdxsywqmkeowbisnba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxvpiufmcpznjgymgbrvcvypivikogdd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dsacqgipzzetgpiohxwmqxjrlbvzzutm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwoozrirxhqjpbswxlpotyexexhojbny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnyprrqtqfjfbnznjlnahlhnuwbjtabf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"quemscaiqqxhiguiwrhgwosgsihcmgmr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbiqbtrggjjtgrlgggrohquqjihgrcli","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbobjkdwiyobesgthwsmthbrwjqrkzsm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swazqthgiblrdusbbpegqokfjctohdpi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swxkjkfcwwisyygaeqnuuyxvekaiiezw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqkmogfsgxaybmykcfosawgfeimhaoci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvnfrsdhhqaexsevbkvdcwhfqcflmqnn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llqwrdheehxpmconsclucspumsmrqgjk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yexavsscxbudvuxtbxylmselgfgyixif","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjwlknlrdrgkjlvnawoldkkqoftkgzzl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzuberelwkogucnohdmyyxbylkpohrde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pflukjzrksugwmxruohhdmcyzkvyidmi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icbyxmwcdxgdaxaqbeyyztbatvxbnerc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669589,"databaseName":"models_schema","ddl":"CREATE TABLE `mwyzswmpkowqnbzyvfhkpmvnjfrgnraz` (\n `hannjaxilomphxnkxgjoeknpykgtmusd` int NOT NULL,\n `wwjuagezguzxdjinfnafisnvxemmravv` int DEFAULT NULL,\n `ibiyxzvpquldszqqifksyvmezyvjsvcj` int DEFAULT NULL,\n `zkbribagonzehpsbsmidwajfbakuvmmg` int DEFAULT NULL,\n `goukmgdilegrlpnyhncguyvdrnegxqvb` int DEFAULT NULL,\n `ftkguokihzlolfvzmwjwqzwwurvhafxs` int DEFAULT NULL,\n `fmdlzbdndgtkmzbwoxygmnrexiizzjay` int DEFAULT NULL,\n `lmjsjxqsycunkfkyggoocgdinauzntks` int DEFAULT NULL,\n `pfbgqdmfbxibxtixufaslqnatfximbpa` int DEFAULT NULL,\n `daeyggxkbfnloaxqpanygkyurzdczqdb` int DEFAULT NULL,\n `zdmelpfzlcwqbniddnijkphlavbeodlt` int DEFAULT NULL,\n `gthpebbtfrwswnwvdvtbqggicwvmkhga` int DEFAULT NULL,\n `orufdnuzuoppxjiwmfflqeksxqicwjqe` int DEFAULT NULL,\n `owcbdmtkdndxemkbnjztcqsepkolmyfc` int DEFAULT NULL,\n `ctpuyxjaasmftyjchbbgidqlpaktpnyg` int DEFAULT NULL,\n `liwinphmuwvgfvbfgfmnkmuirckxvbed` int DEFAULT NULL,\n `ljmzjbzekwjsievgfyeegadsepqcqemq` int DEFAULT NULL,\n `ssqmjsplmldgqhlkhhynaihollnpiuha` int DEFAULT NULL,\n `eyhmyofktudxbdqdtdfzljgyhbfyshhk` int DEFAULT NULL,\n `awzcjmksfdnakssicwyzjbndhnmhbntf` int DEFAULT NULL,\n `ylffdzcoyicmddcmnbmwvykjlcvqqgna` int DEFAULT NULL,\n `djcbxysreqwlzicninavvwqyudliuudb` int DEFAULT NULL,\n `syorgqxbeboxjilfcqinoasgvzpquhdi` int DEFAULT NULL,\n `yufadxypptzhpuvjaitbkdcnvuifyaew` int DEFAULT NULL,\n `omipaquvfripiipsiyiternrpboglqwr` int DEFAULT NULL,\n `cmxfbvienpaapkqreanmwigjujvmlemc` int DEFAULT NULL,\n `dwcxiwoeyqqvlviedegvlqdfrksrnade` int DEFAULT NULL,\n `vpmuineylkgbxozgkewpxzseuqpqeega` int DEFAULT NULL,\n `fkrpdyxeiajwvesklfxlfdrtdkqvdqkg` int DEFAULT NULL,\n `squjndcwirdkpaluvpfthbnnderlqzac` int DEFAULT NULL,\n `oinobdkzuafrrgovgtppvqruxdaurspj` int DEFAULT NULL,\n `diykmipxbmzsmfmsyqkmrteagfkzbmpj` int DEFAULT NULL,\n `kxkrakjhufcgjjohiwtkpgdkupzumapl` int DEFAULT NULL,\n `pndlvoziauwpvrdwwhlzkvdcfajxezvf` int DEFAULT NULL,\n `obzsxryicirekexlelucbaokuyxfwbsb` int DEFAULT NULL,\n `sshotwnrdyejzfnyigwvtiauqoqfslek` int DEFAULT NULL,\n `hzevnvzrfelpydzgnmawbydhbdsjaqje` int DEFAULT NULL,\n `hetuewigyqijdqitjwzccesqldfnwlqj` int DEFAULT NULL,\n `liexbkrjirdmkpccmixabqmvwwubfusv` int DEFAULT NULL,\n `rmoiqitbfvctalyrdzcdfsmtalmkqumq` int DEFAULT NULL,\n `bbkjjawwmumavayghlmggohtezrbmddm` int DEFAULT NULL,\n `glohcmxuinshowwownhledjfqzfvikgd` int DEFAULT NULL,\n `rotwmqmjezohkkzqrxdwypwbljbzkjwq` int DEFAULT NULL,\n `kfuufegzhvwrpwfcqjxbavixpinrqgur` int DEFAULT NULL,\n `jdbynxrpkniwgwhjnwjtggyzonfeartr` int DEFAULT NULL,\n `fxzhhzgsxpbmiwhmjgkghvqdrmughxnf` int DEFAULT NULL,\n `xgusslwjoxdpxijbcmyryfnwovtgviqd` int DEFAULT NULL,\n `okjcjqnimfzdmiymjmsmyerxhnxpgkid` int DEFAULT NULL,\n `mygrjfpvkdyzrptluxxhdnmhadsvkdyn` int DEFAULT NULL,\n `hwlchdbalhcwpmmjtxfwajjoymxvtqcz` int DEFAULT NULL,\n `rblaraoxqtaxkkivdzvdngfoowfvnojp` int DEFAULT NULL,\n `xhrgdfhcvkkcrmlvyfoqwemrwmzqpjce` int DEFAULT NULL,\n `ypacffkqkkzxhlltawlstllyzgsbsmvk` int DEFAULT NULL,\n `vtfcscnwyelzexreobdmjvqfwhccwtdc` int DEFAULT NULL,\n `ytrzbgvgonmrjqozcerritkexgpzudjv` int DEFAULT NULL,\n `ofidncvxrqunyzjbuxwctsmwxqyudzef` int DEFAULT NULL,\n `prwkbwmnhhdybikpveayxczskejstwuh` int DEFAULT NULL,\n `xjotyuuurbconotdvcdkivodaswoahuo` int DEFAULT NULL,\n `tmzcoeohhknurgisxbqfwjxfwemeugbu` int DEFAULT NULL,\n `jgpjghejnlvxeuffejfrkyyldvcidjih` int DEFAULT NULL,\n `dvazxtmwwpdthtiqwleqvueuqrvxydbt` int DEFAULT NULL,\n `qdlpeiwnpwtywvvlabuwgcqmbrnixpcd` int DEFAULT NULL,\n `yjtrneotrlhttmzlsslokqplaskrshpe` int DEFAULT NULL,\n `qktejrumfybgeagprxpoowrecorrgobt` int DEFAULT NULL,\n `eqbflrdhfjcrzbwaxlprsayawngaxorr` int DEFAULT NULL,\n `lvegqtnjhtsuqtjlhkfgxigjydunyite` int DEFAULT NULL,\n `qspwcgymdeibwfhmkflcputwkvrqptiq` int DEFAULT NULL,\n `sgxgkmhnbuywfkeeasccdgdcodiditao` int DEFAULT NULL,\n `swfreirgboddirzcbzmirjtstpfqzkof` int DEFAULT NULL,\n `ncmyjbycjyrvfghfsupkttzfowtoonbu` int DEFAULT NULL,\n `qubmnelqovvluavtgdxphetalxfevwlt` int DEFAULT NULL,\n `gahipimdhhgnxofytqorujsurzefifgv` int DEFAULT NULL,\n `nswqvzzvxnmuixwagdretqfnenkavspf` int DEFAULT NULL,\n `iciqafayzwhgscuajwphwbfcbgqedplc` int DEFAULT NULL,\n `uzrcufpsbanqyihvuswnxsdehaphoiii` int DEFAULT NULL,\n `qvsujoxspetsgmjpxzeggkvrnjepngxd` int DEFAULT NULL,\n `eietridnbpfzwhrnsxbknqglpdkiubxl` int DEFAULT NULL,\n `oqpxowcoqinhwmyrpotbougdxmfctxsc` int DEFAULT NULL,\n `ordtronddhgrndzkmdyxnxkyaqusrzlk` int DEFAULT NULL,\n `ahccvlalajqkydwwuonrwmllgfgxmpra` int DEFAULT NULL,\n `mgqsjkusxluuudyfosfmydkplhchxwhl` int DEFAULT NULL,\n `gzwhputdrdtxbinydezdwpwmosngltuc` int DEFAULT NULL,\n `ehuerrvztkkliwwpconwoefwhhimbeys` int DEFAULT NULL,\n `qpxkeutgsrrjfdjwdzdbpvdsxegmdmau` int DEFAULT NULL,\n `ssckkvlkwfxwowjfmjwhnfglkzcrojuf` int DEFAULT NULL,\n `qndhncgdfggybihbdktqhrchumybtjie` int DEFAULT NULL,\n `vxmrejiwnmdnckqakpgcsvymmtwhtqyv` int DEFAULT NULL,\n `opnnmexlepwxoilyzfphhquzjjllhvuw` int DEFAULT NULL,\n `blayucedfrzuumjbbxuthlmxqyaytprq` int DEFAULT NULL,\n `adyqlvmzpeipyvfbjaivypsgpmjepnhp` int DEFAULT NULL,\n `yiddzszskszugnkcpfmyiwpvpgcvcyvp` int DEFAULT NULL,\n `zkivrrywnxhxlazbwxektajclogtsoyb` int DEFAULT NULL,\n `abtijtqqvnbctncksvgtytomyhxrzxad` int DEFAULT NULL,\n `ilzuzakhksdxdwwmnfyqzxyvwxiwisyf` int DEFAULT NULL,\n `ahmlrbwzcjplhecqvzyilwordwgaeieu` int DEFAULT NULL,\n `eyxjjotnabetvtchzkropvgrwexcdjow` int DEFAULT NULL,\n `zaqfccgukxkhcybxqjyaoeardleavhgx` int DEFAULT NULL,\n `knftffxltijwluhuscjklqnkmsomtlym` int DEFAULT NULL,\n `ynscipmghbsavmkzmhhwcurjjwsjheqk` int DEFAULT NULL,\n `auaspjprfbsuxjpquiwqkbiwrlttwfab` int DEFAULT NULL,\n PRIMARY KEY (`hannjaxilomphxnkxgjoeknpykgtmusd`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"mwyzswmpkowqnbzyvfhkpmvnjfrgnraz\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["hannjaxilomphxnkxgjoeknpykgtmusd"],"columns":[{"name":"hannjaxilomphxnkxgjoeknpykgtmusd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"wwjuagezguzxdjinfnafisnvxemmravv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibiyxzvpquldszqqifksyvmezyvjsvcj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zkbribagonzehpsbsmidwajfbakuvmmg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"goukmgdilegrlpnyhncguyvdrnegxqvb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftkguokihzlolfvzmwjwqzwwurvhafxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmdlzbdndgtkmzbwoxygmnrexiizzjay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmjsjxqsycunkfkyggoocgdinauzntks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pfbgqdmfbxibxtixufaslqnatfximbpa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"daeyggxkbfnloaxqpanygkyurzdczqdb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdmelpfzlcwqbniddnijkphlavbeodlt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gthpebbtfrwswnwvdvtbqggicwvmkhga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orufdnuzuoppxjiwmfflqeksxqicwjqe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owcbdmtkdndxemkbnjztcqsepkolmyfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctpuyxjaasmftyjchbbgidqlpaktpnyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"liwinphmuwvgfvbfgfmnkmuirckxvbed","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljmzjbzekwjsievgfyeegadsepqcqemq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ssqmjsplmldgqhlkhhynaihollnpiuha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eyhmyofktudxbdqdtdfzljgyhbfyshhk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awzcjmksfdnakssicwyzjbndhnmhbntf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ylffdzcoyicmddcmnbmwvykjlcvqqgna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"djcbxysreqwlzicninavvwqyudliuudb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"syorgqxbeboxjilfcqinoasgvzpquhdi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yufadxypptzhpuvjaitbkdcnvuifyaew","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omipaquvfripiipsiyiternrpboglqwr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmxfbvienpaapkqreanmwigjujvmlemc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwcxiwoeyqqvlviedegvlqdfrksrnade","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpmuineylkgbxozgkewpxzseuqpqeega","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fkrpdyxeiajwvesklfxlfdrtdkqvdqkg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"squjndcwirdkpaluvpfthbnnderlqzac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oinobdkzuafrrgovgtppvqruxdaurspj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"diykmipxbmzsmfmsyqkmrteagfkzbmpj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxkrakjhufcgjjohiwtkpgdkupzumapl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pndlvoziauwpvrdwwhlzkvdcfajxezvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obzsxryicirekexlelucbaokuyxfwbsb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sshotwnrdyejzfnyigwvtiauqoqfslek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hzevnvzrfelpydzgnmawbydhbdsjaqje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hetuewigyqijdqitjwzccesqldfnwlqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"liexbkrjirdmkpccmixabqmvwwubfusv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rmoiqitbfvctalyrdzcdfsmtalmkqumq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbkjjawwmumavayghlmggohtezrbmddm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"glohcmxuinshowwownhledjfqzfvikgd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rotwmqmjezohkkzqrxdwypwbljbzkjwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfuufegzhvwrpwfcqjxbavixpinrqgur","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdbynxrpkniwgwhjnwjtggyzonfeartr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxzhhzgsxpbmiwhmjgkghvqdrmughxnf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xgusslwjoxdpxijbcmyryfnwovtgviqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"okjcjqnimfzdmiymjmsmyerxhnxpgkid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mygrjfpvkdyzrptluxxhdnmhadsvkdyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwlchdbalhcwpmmjtxfwajjoymxvtqcz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rblaraoxqtaxkkivdzvdngfoowfvnojp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xhrgdfhcvkkcrmlvyfoqwemrwmzqpjce","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypacffkqkkzxhlltawlstllyzgsbsmvk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtfcscnwyelzexreobdmjvqfwhccwtdc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytrzbgvgonmrjqozcerritkexgpzudjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofidncvxrqunyzjbuxwctsmwxqyudzef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prwkbwmnhhdybikpveayxczskejstwuh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjotyuuurbconotdvcdkivodaswoahuo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmzcoeohhknurgisxbqfwjxfwemeugbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgpjghejnlvxeuffejfrkyyldvcidjih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvazxtmwwpdthtiqwleqvueuqrvxydbt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdlpeiwnpwtywvvlabuwgcqmbrnixpcd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjtrneotrlhttmzlsslokqplaskrshpe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qktejrumfybgeagprxpoowrecorrgobt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqbflrdhfjcrzbwaxlprsayawngaxorr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvegqtnjhtsuqtjlhkfgxigjydunyite","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qspwcgymdeibwfhmkflcputwkvrqptiq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sgxgkmhnbuywfkeeasccdgdcodiditao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swfreirgboddirzcbzmirjtstpfqzkof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ncmyjbycjyrvfghfsupkttzfowtoonbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qubmnelqovvluavtgdxphetalxfevwlt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gahipimdhhgnxofytqorujsurzefifgv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nswqvzzvxnmuixwagdretqfnenkavspf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iciqafayzwhgscuajwphwbfcbgqedplc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzrcufpsbanqyihvuswnxsdehaphoiii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvsujoxspetsgmjpxzeggkvrnjepngxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eietridnbpfzwhrnsxbknqglpdkiubxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqpxowcoqinhwmyrpotbougdxmfctxsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ordtronddhgrndzkmdyxnxkyaqusrzlk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ahccvlalajqkydwwuonrwmllgfgxmpra","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mgqsjkusxluuudyfosfmydkplhchxwhl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzwhputdrdtxbinydezdwpwmosngltuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehuerrvztkkliwwpconwoefwhhimbeys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qpxkeutgsrrjfdjwdzdbpvdsxegmdmau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ssckkvlkwfxwowjfmjwhnfglkzcrojuf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qndhncgdfggybihbdktqhrchumybtjie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxmrejiwnmdnckqakpgcsvymmtwhtqyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opnnmexlepwxoilyzfphhquzjjllhvuw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blayucedfrzuumjbbxuthlmxqyaytprq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"adyqlvmzpeipyvfbjaivypsgpmjepnhp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yiddzszskszugnkcpfmyiwpvpgcvcyvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zkivrrywnxhxlazbwxektajclogtsoyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"abtijtqqvnbctncksvgtytomyhxrzxad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ilzuzakhksdxdwwmnfyqzxyvwxiwisyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ahmlrbwzcjplhecqvzyilwordwgaeieu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eyxjjotnabetvtchzkropvgrwexcdjow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zaqfccgukxkhcybxqjyaoeardleavhgx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knftffxltijwluhuscjklqnkmsomtlym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynscipmghbsavmkzmhhwcurjjwsjheqk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"auaspjprfbsuxjpquiwqkbiwrlttwfab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669634,"databaseName":"models_schema","ddl":"CREATE TABLE `mxslcfjftoitkvwkjafdifwuxfdmfsym` (\n `nuvngcwhgaawiilkhytpztjnohcmjjdp` int NOT NULL,\n `dxbsgzcehkmzonyrnqmpxgwrobrbmcge` int DEFAULT NULL,\n `jjfbbrdtcqrvkrebhvtmcdzwpgiuwcwy` int DEFAULT NULL,\n `kghxtoukyzxyollotrookzrahaiejyru` int DEFAULT NULL,\n `uegwqpjbipzjdsaosmgsrtzneewibsme` int DEFAULT NULL,\n `nhwafywenzlzjkgekngmskqkbdzmxncw` int DEFAULT NULL,\n `ywolpfmintbyrqesfumucdqedoalrzrj` int DEFAULT NULL,\n `lchqauuolebdeylpmslyebraojddreki` int DEFAULT NULL,\n `ohnyynhcuzoebvkujplqcxdlpltdlmdk` int DEFAULT NULL,\n `usssvkfycolvmzapqxmmfsfrwofqifxt` int DEFAULT NULL,\n `exezvanzzryqeczrguioqayubgdhtodg` int DEFAULT NULL,\n `qtbeoogcpgihfoimvaywrihlnavwhytj` int DEFAULT NULL,\n `swkvpfqnthlswfyqbkyujdnkbdipxpaa` int DEFAULT NULL,\n `kmahsxfmwsgslzvexbiywkhgsrbaxnnc` int DEFAULT NULL,\n `cqmyibpgyrmmourpekckonrpvzobfjlx` int DEFAULT NULL,\n `kiwbpdvqqfpxzrpfppfqanfmulmsegnc` int DEFAULT NULL,\n `lwxqgjucnzicsitasgyxigcyebonihgm` int DEFAULT NULL,\n `xvsbgnzmgnkjtixmkikrqojpdhuasevl` int DEFAULT NULL,\n `plxvaulgengvyplntcdjcmkcukvdblpf` int DEFAULT NULL,\n `pnlehutiikrowrfrtkqfaobmksfmiyuh` int DEFAULT NULL,\n `yjulyvxipzzduaauoiujvyftsjxgpbks` int DEFAULT NULL,\n `jhroxmfapttykxtlxvnzkbojzsgbwzhx` int DEFAULT NULL,\n `prqdbujyzillfwpwyhtdunpgjcajobjx` int DEFAULT NULL,\n `oofcrjrofyzekyyzusuchxpeyjejgnyn` int DEFAULT NULL,\n `sidjlrtrurmouxadrgpemniklzouwyts` int DEFAULT NULL,\n `tjzesthoridizeqjbxukjjkqwiotgvpa` int DEFAULT NULL,\n `zcqkglawkrhtlxnwwjjpcibdehhpruyt` int DEFAULT NULL,\n `nyywbkhahigbggxmwpwplgztiaawvdtf` int DEFAULT NULL,\n `rwramejoqsxkxqfxltsxytjbfmzmenkx` int DEFAULT NULL,\n `fbpycncnklyhhdyiqknqielqqigsofrt` int DEFAULT NULL,\n `ciehsuvhrbhcewhjomwkfynypaivxqdo` int DEFAULT NULL,\n `zyostfrihrnscvdmhifuyawwtpaadnqw` int DEFAULT NULL,\n `ujcbwzqydirbvpuoynxcfvdkloqmtajh` int DEFAULT NULL,\n `leptcorflpprqkwbwtsodhltoomsothv` int DEFAULT NULL,\n `mzsuvhivbnuiuorgdrlkqtykceltiybi` int DEFAULT NULL,\n `qmkedfrdclsczfsrkbcviedwurpyyfcz` int DEFAULT NULL,\n `lgvyrkgitxdzjthyajxlyelprkilflum` int DEFAULT NULL,\n `zclxbagmqlrrwufqpfnjhutoikxpafin` int DEFAULT NULL,\n `dmsmjyufyegzbxtmifwolouxbozyqffc` int DEFAULT NULL,\n `tpavuychpjdfytzveccssymhslkamchs` int DEFAULT NULL,\n `fcxhikkzovpvkavnvzqalxeyhcfmhhad` int DEFAULT NULL,\n `mydtpmecxtbelwseovujvfrnzqiuhnad` int DEFAULT NULL,\n `rqgauuxhhldceriedcgsjykypmpygnai` int DEFAULT NULL,\n `jppstccuysqepwdjmakshjppqosbduvr` int DEFAULT NULL,\n `uxhktneokjxwetvyubrtpkcuejhfmtqw` int DEFAULT NULL,\n `ogdljpyhqiuswmozmpwuoxeynbecraiw` int DEFAULT NULL,\n `amlltdighnxkdxmvjyjgtthkqhkwfevw` int DEFAULT NULL,\n `cqrqnceyravqdtcerrhivvkeszcirqwu` int DEFAULT NULL,\n `ixutsvimwdychkbttoteymyafykagknb` int DEFAULT NULL,\n `rfelgfeduwoduiseqqgfvbmdsbcanrkr` int DEFAULT NULL,\n `rjehitwwfgklnsxwtqednzhdmrjieexl` int DEFAULT NULL,\n `mqggzvloquyerqhiyrpztrkkpssfrisi` int DEFAULT NULL,\n `ialmtwyjvblrlpzkujoefnepgvmqqoku` int DEFAULT NULL,\n `gwsosxvalmopwgcabmramvsuqvtgxjop` int DEFAULT NULL,\n `mzfqozddqivqfmqphsffltfwcbsbsssd` int DEFAULT NULL,\n `elqshdfovwuzfarrlxiiqymplaloqjvg` int DEFAULT NULL,\n `oshltoihpxzhkdjyfwahonyxgsxsoyvo` int DEFAULT NULL,\n `bykrcgewfrtyaejbkpuhulghaqocyxre` int DEFAULT NULL,\n `iuhfadzkhoixbnyecnzxlycpselqdnhm` int DEFAULT NULL,\n `itaexwpanbcmhjowofplbcszexphoimd` int DEFAULT NULL,\n `aklufponbtqcvircmbwuustxklaoomks` int DEFAULT NULL,\n `ticzjfrrjawwjfhxobbxgwgwjzxzredf` int DEFAULT NULL,\n `njrlnppoouaxzlcfjkcbskbcxryumpyn` int DEFAULT NULL,\n `fhezmwwosbtaisabjvtcvrpquhbmwonk` int DEFAULT NULL,\n `lyslcgkaapnecadvedtslmkbrtnyvzzz` int DEFAULT NULL,\n `qqidayjrsxtxxmcvqamzroswhxgegwkh` int DEFAULT NULL,\n `prqhejsgpwiuemeajsqwihndthqzdrmh` int DEFAULT NULL,\n `tduytsierwazkvirwhbddpxnvsqfwcrr` int DEFAULT NULL,\n `lgoomgfwcmenluhviuhlvtjfhmzulvff` int DEFAULT NULL,\n `akfcaawknlidimeptdieddzlixcavpkw` int DEFAULT NULL,\n `xhibxbkyxzhnkcguinosnedzszrsmxib` int DEFAULT NULL,\n `nrrzbqcsyupvtseqdpzirsznopnwttit` int DEFAULT NULL,\n `gmjjyqcyxntnlsthjmxgcgdxbbhwfusx` int DEFAULT NULL,\n `qhokgjydfoxfbxtmtrzxwgdvqstteaiu` int DEFAULT NULL,\n `ubecjjpruxszmycbyoszkimysejhhrxl` int DEFAULT NULL,\n `kqfgknoyypenidhmkgagzwhlqudsbdzs` int DEFAULT NULL,\n `nwljavssfmeoceqociwxywvobpsvfeei` int DEFAULT NULL,\n `nzdjemxuvcedwuoswxnlnichfdguqjob` int DEFAULT NULL,\n `aznvvkemvysuhrktpctwuafzkoltwrgn` int DEFAULT NULL,\n `rqvvuadwyaajwofghcrslhucomvfkehr` int DEFAULT NULL,\n `ifvmlyihoadzxpwwqpapjhaaeqrefwjk` int DEFAULT NULL,\n `ejvqreiweanaykezgxqjalxhbigxtedm` int DEFAULT NULL,\n `lhtxzwjczckxojtvtkkqobmloahkqoqf` int DEFAULT NULL,\n `pjyjrhwaipcdoibahpgjaltxihtgueue` int DEFAULT NULL,\n `lttagjrzeortqindlgvlyifwkuhmuhrl` int DEFAULT NULL,\n `dwjvjgvzfxihzfkwozbgzhfierevevin` int DEFAULT NULL,\n `ffszdogsbawqauvikcqkhvrvfzcmjstb` int DEFAULT NULL,\n `tqtshojrjkghflacpjixehdnakdcbcbn` int DEFAULT NULL,\n `fzprlrdwoblzrcwxeoimsucdwkhzncnj` int DEFAULT NULL,\n `inxccbdpgrchfocxaqbflmfckercfktj` int DEFAULT NULL,\n `iaefgidtdxacdvkwfgwatqcmicwcdisk` int DEFAULT NULL,\n `vumdwuxbvzqexlktnhgsnfkfdqfryktu` int DEFAULT NULL,\n `nynuzbiaxstwnbwzpcdfajmluqbnenha` int DEFAULT NULL,\n `vsoeycqrjolpccupshfvejpbexcfsfya` int DEFAULT NULL,\n `kphobtxejltqjwaiymctcvrxajwvehtv` int DEFAULT NULL,\n `kfualxqovgwiisuuavawzvcifgrhnmrc` int DEFAULT NULL,\n `proqhnkbkobruwyktmhjappjeqlyqgfu` int DEFAULT NULL,\n `kqkynokqeempqeaxkrtqmmcwbghpqskc` int DEFAULT NULL,\n `wrqyqpupixbgysqfdsjngriqzbbwifzx` int DEFAULT NULL,\n `acnqjeencsrnfzflsekctyblxwsehxmr` int DEFAULT NULL,\n PRIMARY KEY (`nuvngcwhgaawiilkhytpztjnohcmjjdp`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"mxslcfjftoitkvwkjafdifwuxfdmfsym\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["nuvngcwhgaawiilkhytpztjnohcmjjdp"],"columns":[{"name":"nuvngcwhgaawiilkhytpztjnohcmjjdp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"dxbsgzcehkmzonyrnqmpxgwrobrbmcge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjfbbrdtcqrvkrebhvtmcdzwpgiuwcwy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kghxtoukyzxyollotrookzrahaiejyru","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uegwqpjbipzjdsaosmgsrtzneewibsme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhwafywenzlzjkgekngmskqkbdzmxncw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywolpfmintbyrqesfumucdqedoalrzrj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lchqauuolebdeylpmslyebraojddreki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohnyynhcuzoebvkujplqcxdlpltdlmdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"usssvkfycolvmzapqxmmfsfrwofqifxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exezvanzzryqeczrguioqayubgdhtodg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtbeoogcpgihfoimvaywrihlnavwhytj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swkvpfqnthlswfyqbkyujdnkbdipxpaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kmahsxfmwsgslzvexbiywkhgsrbaxnnc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqmyibpgyrmmourpekckonrpvzobfjlx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kiwbpdvqqfpxzrpfppfqanfmulmsegnc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwxqgjucnzicsitasgyxigcyebonihgm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvsbgnzmgnkjtixmkikrqojpdhuasevl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"plxvaulgengvyplntcdjcmkcukvdblpf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnlehutiikrowrfrtkqfaobmksfmiyuh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjulyvxipzzduaauoiujvyftsjxgpbks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jhroxmfapttykxtlxvnzkbojzsgbwzhx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prqdbujyzillfwpwyhtdunpgjcajobjx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oofcrjrofyzekyyzusuchxpeyjejgnyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sidjlrtrurmouxadrgpemniklzouwyts","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjzesthoridizeqjbxukjjkqwiotgvpa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zcqkglawkrhtlxnwwjjpcibdehhpruyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nyywbkhahigbggxmwpwplgztiaawvdtf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rwramejoqsxkxqfxltsxytjbfmzmenkx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbpycncnklyhhdyiqknqielqqigsofrt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ciehsuvhrbhcewhjomwkfynypaivxqdo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zyostfrihrnscvdmhifuyawwtpaadnqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujcbwzqydirbvpuoynxcfvdkloqmtajh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"leptcorflpprqkwbwtsodhltoomsothv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzsuvhivbnuiuorgdrlkqtykceltiybi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmkedfrdclsczfsrkbcviedwurpyyfcz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgvyrkgitxdzjthyajxlyelprkilflum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zclxbagmqlrrwufqpfnjhutoikxpafin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dmsmjyufyegzbxtmifwolouxbozyqffc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpavuychpjdfytzveccssymhslkamchs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcxhikkzovpvkavnvzqalxeyhcfmhhad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mydtpmecxtbelwseovujvfrnzqiuhnad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqgauuxhhldceriedcgsjykypmpygnai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jppstccuysqepwdjmakshjppqosbduvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxhktneokjxwetvyubrtpkcuejhfmtqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ogdljpyhqiuswmozmpwuoxeynbecraiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"amlltdighnxkdxmvjyjgtthkqhkwfevw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqrqnceyravqdtcerrhivvkeszcirqwu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixutsvimwdychkbttoteymyafykagknb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfelgfeduwoduiseqqgfvbmdsbcanrkr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjehitwwfgklnsxwtqednzhdmrjieexl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqggzvloquyerqhiyrpztrkkpssfrisi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ialmtwyjvblrlpzkujoefnepgvmqqoku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gwsosxvalmopwgcabmramvsuqvtgxjop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzfqozddqivqfmqphsffltfwcbsbsssd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"elqshdfovwuzfarrlxiiqymplaloqjvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oshltoihpxzhkdjyfwahonyxgsxsoyvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bykrcgewfrtyaejbkpuhulghaqocyxre","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iuhfadzkhoixbnyecnzxlycpselqdnhm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itaexwpanbcmhjowofplbcszexphoimd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aklufponbtqcvircmbwuustxklaoomks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ticzjfrrjawwjfhxobbxgwgwjzxzredf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njrlnppoouaxzlcfjkcbskbcxryumpyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhezmwwosbtaisabjvtcvrpquhbmwonk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lyslcgkaapnecadvedtslmkbrtnyvzzz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqidayjrsxtxxmcvqamzroswhxgegwkh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prqhejsgpwiuemeajsqwihndthqzdrmh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tduytsierwazkvirwhbddpxnvsqfwcrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgoomgfwcmenluhviuhlvtjfhmzulvff","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akfcaawknlidimeptdieddzlixcavpkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xhibxbkyxzhnkcguinosnedzszrsmxib","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nrrzbqcsyupvtseqdpzirsznopnwttit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmjjyqcyxntnlsthjmxgcgdxbbhwfusx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhokgjydfoxfbxtmtrzxwgdvqstteaiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubecjjpruxszmycbyoszkimysejhhrxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kqfgknoyypenidhmkgagzwhlqudsbdzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nwljavssfmeoceqociwxywvobpsvfeei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzdjemxuvcedwuoswxnlnichfdguqjob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aznvvkemvysuhrktpctwuafzkoltwrgn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqvvuadwyaajwofghcrslhucomvfkehr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ifvmlyihoadzxpwwqpapjhaaeqrefwjk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejvqreiweanaykezgxqjalxhbigxtedm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhtxzwjczckxojtvtkkqobmloahkqoqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjyjrhwaipcdoibahpgjaltxihtgueue","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lttagjrzeortqindlgvlyifwkuhmuhrl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwjvjgvzfxihzfkwozbgzhfierevevin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffszdogsbawqauvikcqkhvrvfzcmjstb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqtshojrjkghflacpjixehdnakdcbcbn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzprlrdwoblzrcwxeoimsucdwkhzncnj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"inxccbdpgrchfocxaqbflmfckercfktj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iaefgidtdxacdvkwfgwatqcmicwcdisk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vumdwuxbvzqexlktnhgsnfkfdqfryktu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nynuzbiaxstwnbwzpcdfajmluqbnenha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsoeycqrjolpccupshfvejpbexcfsfya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kphobtxejltqjwaiymctcvrxajwvehtv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfualxqovgwiisuuavawzvcifgrhnmrc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"proqhnkbkobruwyktmhjappjeqlyqgfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kqkynokqeempqeaxkrtqmmcwbghpqskc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wrqyqpupixbgysqfdsjngriqzbbwifzx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"acnqjeencsrnfzflsekctyblxwsehxmr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669673,"databaseName":"models_schema","ddl":"CREATE TABLE `mykafjtkvhgjskiyabehpblifngdkhwu` (\n `chsmtctijsbiaabuuijhjpjzzjmtmshf` int NOT NULL,\n `fnneojctkmblijneaohxcnsqrmtrsdle` int DEFAULT NULL,\n `ghjhnhlhqhlgquubosagxccmoauvwuxh` int DEFAULT NULL,\n `vqhfahoswbvwuyibytnpvjulsvjzxgpk` int DEFAULT NULL,\n `rucwegavkoybrnzxgobsdiyzasvcazue` int DEFAULT NULL,\n `jaeanqoinfmabdoevzoskqdyvjzmzbow` int DEFAULT NULL,\n `pgdpvbecfgcecfyalfeioavdmzjmrktd` int DEFAULT NULL,\n `geezcmsqxrxdeihubpemyprffsiisxfy` int DEFAULT NULL,\n `gtyxrsitzfaezauxgonfwzjbjtzqpfgt` int DEFAULT NULL,\n `jwklshufpgdiyqwjqybuswwqeujklqez` int DEFAULT NULL,\n `aghdnubfhrdncijwjboaykztuhdaxvxb` int DEFAULT NULL,\n `yjiabykshzpsxjluxppnjqdezldawrxk` int DEFAULT NULL,\n `pdcqnxnpkdqcvseadpervstiiixdhvhb` int DEFAULT NULL,\n `narcxxcbbgqfwuzypmajagvhupcowwwk` int DEFAULT NULL,\n `pgzytfkalkedukptoxrlvtlomtoeycke` int DEFAULT NULL,\n `ofzmramvotqbdccokwmwtxglbhrehzmh` int DEFAULT NULL,\n `qdwqspfvjtuezxbtastssgkfzizfffah` int DEFAULT NULL,\n `fcmqqujwqrnsuxaimhjrucopjqtgvalx` int DEFAULT NULL,\n `cfggsmzdwstcdvpexoszitwhqwnifdii` int DEFAULT NULL,\n `lcheijcxckaapjgfffjrhnewhfinlmxr` int DEFAULT NULL,\n `srjiemtjrpegmquebgtvgxtiskcnhdlo` int DEFAULT NULL,\n `xyizfwwnanxtdppguxmziuvzpyektxub` int DEFAULT NULL,\n `ajywckmbkpkdldarewwykqwnavidcaih` int DEFAULT NULL,\n `khgngtmvmbxzahzcqqrufeaqozqvmxws` int DEFAULT NULL,\n `nmqnfbvdesxdavvbxmmjbqzdolvcijqz` int DEFAULT NULL,\n `aupstvmvdbmijanjeymeqkjsirrxrvhp` int DEFAULT NULL,\n `xcvjuxycmyewwoybpsqqkbbxytbumafy` int DEFAULT NULL,\n `fnoxcskuwqzgocajdrodcjuoevzvmvfi` int DEFAULT NULL,\n `jhddkolmxrmuoosekvzyrbnjaubsitzh` int DEFAULT NULL,\n `yxhfbsykacjrvrnirmgdkzoknintpcjs` int DEFAULT NULL,\n `swroknlaihmjxzdvtzsgbdrfvkoqnljy` int DEFAULT NULL,\n `mpvlbwgweuamuhtoyydjodpoayzgszfo` int DEFAULT NULL,\n `iltjrlmlsuxgpdxkbmmqzkqpqljfnesn` int DEFAULT NULL,\n `falctyqmlovwdebsupxgmlzqpipghhnh` int DEFAULT NULL,\n `laqtehahialrhjpnfolpxoqfeciojtdm` int DEFAULT NULL,\n `uhdutovhdbwjlwruabgdtkkdutypgcug` int DEFAULT NULL,\n `ymfbeyqqufeutfnsptjvygapakzdwhen` int DEFAULT NULL,\n `pqqjphmiyinxrqmzozwxluhkudyluemz` int DEFAULT NULL,\n `qxclwryqqyfbuhyobdnyuaosdfcuyhla` int DEFAULT NULL,\n `xamfjdwcvzkijtyrhqrubtatxcpnflbn` int DEFAULT NULL,\n `tstkjmjcejeetapbpslkwqdmvletrzpa` int DEFAULT NULL,\n `mpnkmcentjddrxtttxjonleaafpnsifr` int DEFAULT NULL,\n `wxyixoteqldlxuggdebvuqhcoyhjuavh` int DEFAULT NULL,\n `msywiwqhlxiovsfgotvocsqzhgsiwvaq` int DEFAULT NULL,\n `ehssrhedhdarivkcbdvgujrbantroxhp` int DEFAULT NULL,\n `bmrtwvqpnjpyiejjkmnfpvwyxsuhkbzx` int DEFAULT NULL,\n `ispietaajjtueryrazxyqboctzfoyreu` int DEFAULT NULL,\n `wucngcmnalafivwbpfiqtzodzetqmrks` int DEFAULT NULL,\n `vogaxkecdoyxmldsjynjwtqojieqgfni` int DEFAULT NULL,\n `ftfvvgflnjznmfcqivknwzlbqwurlizu` int DEFAULT NULL,\n `qbwcgjppvizbrzvbantufqlrhnoalder` int DEFAULT NULL,\n `efpwuffvufbumitazafoegtbrjluxkyg` int DEFAULT NULL,\n `ztzbcpjgephewbzfumrraplyyoflgxus` int DEFAULT NULL,\n `rzmagczmbfzsttlzshofadjzkhswaaol` int DEFAULT NULL,\n `pngnissauayymnodbaamnkfmfpccpuzb` int DEFAULT NULL,\n `lcccaezeoqfzjrzxbwtuizhhxbfixtqr` int DEFAULT NULL,\n `lmpewidfxmwvqoawuixcmwhoahcltesq` int DEFAULT NULL,\n `kscezgrrtibsyrasbolakseiilbafist` int DEFAULT NULL,\n `shjjokpkgocrxhriuylkiadccyzeobkj` int DEFAULT NULL,\n `yyanbjsqblnzeqdxcvjsayvrixdxhcrv` int DEFAULT NULL,\n `ovcxztswpwgkuekvxrsirrqpllbvhhzh` int DEFAULT NULL,\n `gdfluzifenefpxsstwsqstikohpuuond` int DEFAULT NULL,\n `dvkpynjaifygtimrxsxjdfatiddcrnji` int DEFAULT NULL,\n `uqbksusrpttnavrvdztdidwftxvaxvdv` int DEFAULT NULL,\n `qclchekvzzjhwmuneeldqytnovnucmxp` int DEFAULT NULL,\n `pnwgcolepuaksggxleconanrkbudmvya` int DEFAULT NULL,\n `ymdklpdovuttedjebfmjdxpogroicqzo` int DEFAULT NULL,\n `dxqpxinyffnxriojktgzqoifcifrrjir` int DEFAULT NULL,\n `nxercswwmusuhytszjvpkmtlymtdovdq` int DEFAULT NULL,\n `rdsvuaxeuplzivrxbmxnpfbehtgxddgt` int DEFAULT NULL,\n `gnjdrldwiaavoitzrndhhwsenjaecwmc` int DEFAULT NULL,\n `otnoltwjlmhohjdpfurityjzdopgpcbw` int DEFAULT NULL,\n `fcbdqdlgvejiwbnqdrdfjbyodpyejyvs` int DEFAULT NULL,\n `azkrwsliifssupzhmbgotaokssfytvxa` int DEFAULT NULL,\n `vipzczhdtxkhfkkbislvdbbvgnlwhxyy` int DEFAULT NULL,\n `lovtmcunuvdjdexgimnyohgzlqzutbnx` int DEFAULT NULL,\n `cwfgnyazydwdspikyvjafqswagckiplm` int DEFAULT NULL,\n `fmlrnmuboywmmlapbblmbvsfwaidcdty` int DEFAULT NULL,\n `zyxdxikdfdyqedvfakusycrzkmnufcfb` int DEFAULT NULL,\n `kqrwyxfwknwvjxgidfksjgsopmzvqkto` int DEFAULT NULL,\n `unsvandbpweinvxmpyvpprzytxwpfbcv` int DEFAULT NULL,\n `tzhbwwvurjdkpvexgudgsxknpmogrwrs` int DEFAULT NULL,\n `ycitctudgjiyvncuhbmpqrcftfpleahv` int DEFAULT NULL,\n `xevtrfqpwbcjfoiudavxzweycelzwplm` int DEFAULT NULL,\n `zlmtercfdbhbjkiytfvpnpfcjqcgzuze` int DEFAULT NULL,\n `fbtfdugyyrzyoedzuiuwunefabfeugzx` int DEFAULT NULL,\n `ksdvowcfouobbtldpijyfsviyewohaml` int DEFAULT NULL,\n `ypkihbmyobjlaxxlbvcrjwtwzdfdqmlu` int DEFAULT NULL,\n `hscxypwjmlgasdgpidedudkgxzkvbcem` int DEFAULT NULL,\n `djlkymgongsrytflibycwbuidlhsmwwc` int DEFAULT NULL,\n `auadvwugnqorsecmkduhmdcyzttjdtgj` int DEFAULT NULL,\n `jxabpzuviqscwogqdcryvteoxlsilwmk` int DEFAULT NULL,\n `pklqtllmwilffcrwegyhatwbfpsionps` int DEFAULT NULL,\n `zruqqsggrmibfttcxqvcdcgmoswikvux` int DEFAULT NULL,\n `iwdijobquemqnvwmxycvxmynebpjpumz` int DEFAULT NULL,\n `knxghnkkbcbwteqtbficbyquqitharyx` int DEFAULT NULL,\n `rzgbifuneionddchzjivilbeezyvapmk` int DEFAULT NULL,\n `knhtsflpdcfqmaidxsawhzrhtbstesmk` int DEFAULT NULL,\n `uagljziqpssypipnakltqdhghtztkzuq` int DEFAULT NULL,\n `zmxlnnqvcyesifkznnjwxftfmuuaaqdu` int DEFAULT NULL,\n PRIMARY KEY (`chsmtctijsbiaabuuijhjpjzzjmtmshf`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"mykafjtkvhgjskiyabehpblifngdkhwu\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["chsmtctijsbiaabuuijhjpjzzjmtmshf"],"columns":[{"name":"chsmtctijsbiaabuuijhjpjzzjmtmshf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"fnneojctkmblijneaohxcnsqrmtrsdle","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghjhnhlhqhlgquubosagxccmoauvwuxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqhfahoswbvwuyibytnpvjulsvjzxgpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rucwegavkoybrnzxgobsdiyzasvcazue","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jaeanqoinfmabdoevzoskqdyvjzmzbow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgdpvbecfgcecfyalfeioavdmzjmrktd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"geezcmsqxrxdeihubpemyprffsiisxfy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtyxrsitzfaezauxgonfwzjbjtzqpfgt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwklshufpgdiyqwjqybuswwqeujklqez","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aghdnubfhrdncijwjboaykztuhdaxvxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjiabykshzpsxjluxppnjqdezldawrxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdcqnxnpkdqcvseadpervstiiixdhvhb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"narcxxcbbgqfwuzypmajagvhupcowwwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgzytfkalkedukptoxrlvtlomtoeycke","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofzmramvotqbdccokwmwtxglbhrehzmh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdwqspfvjtuezxbtastssgkfzizfffah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcmqqujwqrnsuxaimhjrucopjqtgvalx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfggsmzdwstcdvpexoszitwhqwnifdii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lcheijcxckaapjgfffjrhnewhfinlmxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"srjiemtjrpegmquebgtvgxtiskcnhdlo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyizfwwnanxtdppguxmziuvzpyektxub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajywckmbkpkdldarewwykqwnavidcaih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"khgngtmvmbxzahzcqqrufeaqozqvmxws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmqnfbvdesxdavvbxmmjbqzdolvcijqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aupstvmvdbmijanjeymeqkjsirrxrvhp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xcvjuxycmyewwoybpsqqkbbxytbumafy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnoxcskuwqzgocajdrodcjuoevzvmvfi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jhddkolmxrmuoosekvzyrbnjaubsitzh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxhfbsykacjrvrnirmgdkzoknintpcjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swroknlaihmjxzdvtzsgbdrfvkoqnljy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpvlbwgweuamuhtoyydjodpoayzgszfo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iltjrlmlsuxgpdxkbmmqzkqpqljfnesn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"falctyqmlovwdebsupxgmlzqpipghhnh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"laqtehahialrhjpnfolpxoqfeciojtdm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhdutovhdbwjlwruabgdtkkdutypgcug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ymfbeyqqufeutfnsptjvygapakzdwhen","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqqjphmiyinxrqmzozwxluhkudyluemz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxclwryqqyfbuhyobdnyuaosdfcuyhla","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xamfjdwcvzkijtyrhqrubtatxcpnflbn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tstkjmjcejeetapbpslkwqdmvletrzpa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpnkmcentjddrxtttxjonleaafpnsifr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxyixoteqldlxuggdebvuqhcoyhjuavh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"msywiwqhlxiovsfgotvocsqzhgsiwvaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehssrhedhdarivkcbdvgujrbantroxhp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bmrtwvqpnjpyiejjkmnfpvwyxsuhkbzx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ispietaajjtueryrazxyqboctzfoyreu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wucngcmnalafivwbpfiqtzodzetqmrks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vogaxkecdoyxmldsjynjwtqojieqgfni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftfvvgflnjznmfcqivknwzlbqwurlizu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qbwcgjppvizbrzvbantufqlrhnoalder","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"efpwuffvufbumitazafoegtbrjluxkyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ztzbcpjgephewbzfumrraplyyoflgxus","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzmagczmbfzsttlzshofadjzkhswaaol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pngnissauayymnodbaamnkfmfpccpuzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lcccaezeoqfzjrzxbwtuizhhxbfixtqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmpewidfxmwvqoawuixcmwhoahcltesq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kscezgrrtibsyrasbolakseiilbafist","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shjjokpkgocrxhriuylkiadccyzeobkj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yyanbjsqblnzeqdxcvjsayvrixdxhcrv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovcxztswpwgkuekvxrsirrqpllbvhhzh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdfluzifenefpxsstwsqstikohpuuond","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvkpynjaifygtimrxsxjdfatiddcrnji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqbksusrpttnavrvdztdidwftxvaxvdv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qclchekvzzjhwmuneeldqytnovnucmxp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnwgcolepuaksggxleconanrkbudmvya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ymdklpdovuttedjebfmjdxpogroicqzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxqpxinyffnxriojktgzqoifcifrrjir","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxercswwmusuhytszjvpkmtlymtdovdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdsvuaxeuplzivrxbmxnpfbehtgxddgt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnjdrldwiaavoitzrndhhwsenjaecwmc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otnoltwjlmhohjdpfurityjzdopgpcbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcbdqdlgvejiwbnqdrdfjbyodpyejyvs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"azkrwsliifssupzhmbgotaokssfytvxa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vipzczhdtxkhfkkbislvdbbvgnlwhxyy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lovtmcunuvdjdexgimnyohgzlqzutbnx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwfgnyazydwdspikyvjafqswagckiplm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmlrnmuboywmmlapbblmbvsfwaidcdty","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zyxdxikdfdyqedvfakusycrzkmnufcfb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kqrwyxfwknwvjxgidfksjgsopmzvqkto","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unsvandbpweinvxmpyvpprzytxwpfbcv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tzhbwwvurjdkpvexgudgsxknpmogrwrs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ycitctudgjiyvncuhbmpqrcftfpleahv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xevtrfqpwbcjfoiudavxzweycelzwplm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zlmtercfdbhbjkiytfvpnpfcjqcgzuze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbtfdugyyrzyoedzuiuwunefabfeugzx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ksdvowcfouobbtldpijyfsviyewohaml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypkihbmyobjlaxxlbvcrjwtwzdfdqmlu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hscxypwjmlgasdgpidedudkgxzkvbcem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"djlkymgongsrytflibycwbuidlhsmwwc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"auadvwugnqorsecmkduhmdcyzttjdtgj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jxabpzuviqscwogqdcryvteoxlsilwmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pklqtllmwilffcrwegyhatwbfpsionps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zruqqsggrmibfttcxqvcdcgmoswikvux","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwdijobquemqnvwmxycvxmynebpjpumz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knxghnkkbcbwteqtbficbyquqitharyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzgbifuneionddchzjivilbeezyvapmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knhtsflpdcfqmaidxsawhzrhtbstesmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uagljziqpssypipnakltqdhghtztkzuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmxlnnqvcyesifkznnjwxftfmuuaaqdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669706,"databaseName":"models_schema","ddl":"CREATE TABLE `nfqrzhysvyortaitkelwhsffveslnthx` (\n `dflqskdirhackweyrdlgnbxtxmwnmjxu` int NOT NULL,\n `goncslwvscpoqdxeksxmlvplwbjhhicl` int DEFAULT NULL,\n `havhcaxflzeciaykaezatjjeglvduheo` int DEFAULT NULL,\n `flnursnwcxyvjrrygosbslaitoqqyhxn` int DEFAULT NULL,\n `wgfzrbbxljpmiuntbtfiosqnpzwpjont` int DEFAULT NULL,\n `zodfkotljmpiufduyfkcyjvofgbgjnjb` int DEFAULT NULL,\n `qnbdkwrmlccylwbumxyyymztqwfqfrpa` int DEFAULT NULL,\n `jrilebmuidkywqmdcciqvebsjcbmyqmm` int DEFAULT NULL,\n `cmegkhixgauygayrdnoltdjoopsrubws` int DEFAULT NULL,\n `zayrqdykxvzudtycndvxeodxbvhelvfx` int DEFAULT NULL,\n `acyvkfebtuscjilxnurzsqwjdqzidwqs` int DEFAULT NULL,\n `dcmfdawpjyqpxygiivdcbwkivkyquucv` int DEFAULT NULL,\n `nxenfgtuabnxzhzzygikfnggnqtblfhz` int DEFAULT NULL,\n `tkqefdzrntfoahrqcsonqnavejvnwmmn` int DEFAULT NULL,\n `xfpevsdnecrvjnbptdpttmifhphwyxqo` int DEFAULT NULL,\n `giqlbizclmkyvdweitcdsjcmqlpvrqjr` int DEFAULT NULL,\n `stpsblarituovqefqdyleulfymiojuau` int DEFAULT NULL,\n `dstpoigpctmkzewrampcjkfzricbstxb` int DEFAULT NULL,\n `azwgeokokgthibxmqibegvxxfxpgaaca` int DEFAULT NULL,\n `zualkxqsgjhjsoobcfjtpypjrbkvqrub` int DEFAULT NULL,\n `iqumqigtiissdkhaaslwrylezsenrsep` int DEFAULT NULL,\n `ycesgwfgovjmnrbhufjiyewprrugfbia` int DEFAULT NULL,\n `avwvqfjqvrwafnwpseyjuckjwsvhhrbc` int DEFAULT NULL,\n `qorqvxrdndbvdwjjgixajkefjbzcrpon` int DEFAULT NULL,\n `ryorsemjwecelkfupqvzphuxhdwwppbu` int DEFAULT NULL,\n `zgatjkdijscytxxcrsrcjfvdmqznkyts` int DEFAULT NULL,\n `ctmxpsomxwzqvxshyenxhdtoogfczokg` int DEFAULT NULL,\n `wrvlccdswkkqahhjdvosdozbwfjdnepu` int DEFAULT NULL,\n `ebppcpijgctydczebvhovkyzgxobchmx` int DEFAULT NULL,\n `wvgaeufbdknymttpgoqxyedgibxdntlo` int DEFAULT NULL,\n `zdixvyvjtarwkdgazibsajyqsetvzdeh` int DEFAULT NULL,\n `mvilvscunheavbdjewikmlwuhvzogqct` int DEFAULT NULL,\n `wnenwayogunxyxjmheorwesbsqqhdatp` int DEFAULT NULL,\n `gtwmadjdwiyiwkgjfsyzdhlqtkxwdwkw` int DEFAULT NULL,\n `ehtgxsoulurhvpagosaytypplcwtsscp` int DEFAULT NULL,\n `wvhwjzoexmsyzzvmbdtxpnotuiyqrblw` int DEFAULT NULL,\n `fjfddgwuntvfpngxgbxywtgxlmlgqyec` int DEFAULT NULL,\n `jfycbxtozisvajbhjyxokazmyqcwzvef` int DEFAULT NULL,\n `dcbilgpxszsyptgqrmdwndhqwzyunlaw` int DEFAULT NULL,\n `csvhjmbulfqqkaydhefnbqrjihhbhusi` int DEFAULT NULL,\n `wkmftkprhgvitgcphagppxqvfsrdyvmt` int DEFAULT NULL,\n `yfusghvxyeyyspabkgipbdknvdhhcxqq` int DEFAULT NULL,\n `zumnirjtpibdqrvwrxxhcrpwpjcdylom` int DEFAULT NULL,\n `miqvempnwrxycftuutisjpzsvozjbiho` int DEFAULT NULL,\n `xlqoadegbwvkyrxroxmlzkwjneqnhgcd` int DEFAULT NULL,\n `yjjnmbkwesmgazbspxushmbchklzntos` int DEFAULT NULL,\n `pnjtkbtgpjsayxmnrdfuqqutgzpjyrns` int DEFAULT NULL,\n `zxripoakcukuztszhdxilkxslykwctfk` int DEFAULT NULL,\n `zqjdwwmundeagnwmabmneozvgreuvket` int DEFAULT NULL,\n `szlcvbyhpncldlrcradwdgoswjauctjm` int DEFAULT NULL,\n `jgsgtcwtieevoakaosngfkaywgegxwsk` int DEFAULT NULL,\n `jgzdvcvimxhpktwibzchmqncddezvwdi` int DEFAULT NULL,\n `aumvletdpdrmteorzfimbyiganwkzqed` int DEFAULT NULL,\n `xsklwoajrqupxuzvgqtswipyzbrrnqpb` int DEFAULT NULL,\n `vulnmjgohjwlsrohbvhyrtwzdrjurknt` int DEFAULT NULL,\n `ljyfrbhspexrflekbqfceodypakdfapt` int DEFAULT NULL,\n `mmgrmgluziacimlsvrcxfklgyizhnwvr` int DEFAULT NULL,\n `scvixkahykbritrozjcbsvmzulenvltf` int DEFAULT NULL,\n `zxprajopwdmeokpwffhbaoaeelbuxbso` int DEFAULT NULL,\n `ctyyyvjezlxfhfzytsnchisrykntvcnd` int DEFAULT NULL,\n `zknebzelkzyxonbhkweedbsgmafzzmlu` int DEFAULT NULL,\n `ojvpusdrarttxetwvftwlctpizgfxtxw` int DEFAULT NULL,\n `dlxpgfmmaeqzuaczbdajpohwprljtckw` int DEFAULT NULL,\n `mmtdzlowqgzdntsviemmtshvgkxtfzkt` int DEFAULT NULL,\n `yqopfqqsiuezkqowksarnljfhypxypgh` int DEFAULT NULL,\n `tpsnmqlmpfyephnrplqwbbpcgfosvhbb` int DEFAULT NULL,\n `ziuyccchelvhjgmcgsjokhwjlazgrcsq` int DEFAULT NULL,\n `xsejyrchpubbfndihuiayljdkjsxrctq` int DEFAULT NULL,\n `ziokluuhlmkymmmpwfjqrkzdilbtbony` int DEFAULT NULL,\n `fmusxcgljfghwpisbghvjfpiobjhvwhd` int DEFAULT NULL,\n `upmsyfvqewdzldadzqkvqsntguepyzes` int DEFAULT NULL,\n `ggomeswxcrytdkeuavvulopzpjmcbgnk` int DEFAULT NULL,\n `fqlpwjqheexaualxspeldblhdaccmcvp` int DEFAULT NULL,\n `xiklussrhcvveuzkjfxjsapqgsdueedc` int DEFAULT NULL,\n `cgkwlmfvqlabnvikerpjankbwnplyapk` int DEFAULT NULL,\n `xzyflzxyaminkfbarqlyhnwpzcuslkzd` int DEFAULT NULL,\n `adufgemorrhymsqnhrdabbhtemeggaqk` int DEFAULT NULL,\n `rnujnzctipbviljawmpdoirwlnfbnmrs` int DEFAULT NULL,\n `mdptobghymmvlyrxjkynqlxkpqcoekjd` int DEFAULT NULL,\n `jroovhthkfnzkxpsdpewttsxnftmemxy` int DEFAULT NULL,\n `wgxfaisocdyvxmkocbymoectuxfnsfrx` int DEFAULT NULL,\n `lymzstnahzzvffzpawfjwauewjnempok` int DEFAULT NULL,\n `tsabdodwwwotfmhzwojprfqkcxhixitp` int DEFAULT NULL,\n `dqbvlioxkarciuhrzurjviwxfwrsxskz` int DEFAULT NULL,\n `ytikuotltxwcbjxsvledyhbolrrpvgik` int DEFAULT NULL,\n `cmnevwnrjgpemlillkcvdntfslcvgsez` int DEFAULT NULL,\n `thpjvvvyisftpukgswwsothcdjkdagbp` int DEFAULT NULL,\n `uluhvevnwgcmpletfengbyjcznrlfkcw` int DEFAULT NULL,\n `ghtlulxrecgbdfohqnxdnihqddplikhz` int DEFAULT NULL,\n `srvpdjoapxrnbtbrlgswyqqapsbxeusf` int DEFAULT NULL,\n `caucsgzpeexmpjtjisfpodjmxlmrsakd` int DEFAULT NULL,\n `phzaoydliassypuyieovjzvxnzdobxaf` int DEFAULT NULL,\n `gemfonsffqzdvdvsaccgytjfmguxpvyo` int DEFAULT NULL,\n `zqhjbjsibxkqfmauihvskjdfiqkawoue` int DEFAULT NULL,\n `alyfrjcfszhicvbpqasnzuqahkmdwblb` int DEFAULT NULL,\n `apvfblyyrhcutbvzghurxmurwjzqdwbb` int DEFAULT NULL,\n `ffduzhmkdqnyvkijqjeneiciqlvmmzos` int DEFAULT NULL,\n `vdxkonjklhvnowisqcwbfnxtpzpdwouu` int DEFAULT NULL,\n `ythbwvulklhkletkzotflqvmurjfgsgl` int DEFAULT NULL,\n `qzwofixpyrdjsxqtlhevsrquaadakxyn` int DEFAULT NULL,\n PRIMARY KEY (`dflqskdirhackweyrdlgnbxtxmwnmjxu`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"nfqrzhysvyortaitkelwhsffveslnthx\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["dflqskdirhackweyrdlgnbxtxmwnmjxu"],"columns":[{"name":"dflqskdirhackweyrdlgnbxtxmwnmjxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"goncslwvscpoqdxeksxmlvplwbjhhicl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"havhcaxflzeciaykaezatjjeglvduheo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flnursnwcxyvjrrygosbslaitoqqyhxn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wgfzrbbxljpmiuntbtfiosqnpzwpjont","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zodfkotljmpiufduyfkcyjvofgbgjnjb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qnbdkwrmlccylwbumxyyymztqwfqfrpa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jrilebmuidkywqmdcciqvebsjcbmyqmm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmegkhixgauygayrdnoltdjoopsrubws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zayrqdykxvzudtycndvxeodxbvhelvfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"acyvkfebtuscjilxnurzsqwjdqzidwqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcmfdawpjyqpxygiivdcbwkivkyquucv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxenfgtuabnxzhzzygikfnggnqtblfhz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkqefdzrntfoahrqcsonqnavejvnwmmn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xfpevsdnecrvjnbptdpttmifhphwyxqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"giqlbizclmkyvdweitcdsjcmqlpvrqjr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"stpsblarituovqefqdyleulfymiojuau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dstpoigpctmkzewrampcjkfzricbstxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"azwgeokokgthibxmqibegvxxfxpgaaca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zualkxqsgjhjsoobcfjtpypjrbkvqrub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqumqigtiissdkhaaslwrylezsenrsep","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ycesgwfgovjmnrbhufjiyewprrugfbia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avwvqfjqvrwafnwpseyjuckjwsvhhrbc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qorqvxrdndbvdwjjgixajkefjbzcrpon","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ryorsemjwecelkfupqvzphuxhdwwppbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zgatjkdijscytxxcrsrcjfvdmqznkyts","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctmxpsomxwzqvxshyenxhdtoogfczokg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wrvlccdswkkqahhjdvosdozbwfjdnepu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebppcpijgctydczebvhovkyzgxobchmx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wvgaeufbdknymttpgoqxyedgibxdntlo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdixvyvjtarwkdgazibsajyqsetvzdeh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvilvscunheavbdjewikmlwuhvzogqct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnenwayogunxyxjmheorwesbsqqhdatp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtwmadjdwiyiwkgjfsyzdhlqtkxwdwkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehtgxsoulurhvpagosaytypplcwtsscp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wvhwjzoexmsyzzvmbdtxpnotuiyqrblw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjfddgwuntvfpngxgbxywtgxlmlgqyec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jfycbxtozisvajbhjyxokazmyqcwzvef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcbilgpxszsyptgqrmdwndhqwzyunlaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"csvhjmbulfqqkaydhefnbqrjihhbhusi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wkmftkprhgvitgcphagppxqvfsrdyvmt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfusghvxyeyyspabkgipbdknvdhhcxqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zumnirjtpibdqrvwrxxhcrpwpjcdylom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"miqvempnwrxycftuutisjpzsvozjbiho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xlqoadegbwvkyrxroxmlzkwjneqnhgcd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjjnmbkwesmgazbspxushmbchklzntos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnjtkbtgpjsayxmnrdfuqqutgzpjyrns","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxripoakcukuztszhdxilkxslykwctfk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqjdwwmundeagnwmabmneozvgreuvket","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"szlcvbyhpncldlrcradwdgoswjauctjm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgsgtcwtieevoakaosngfkaywgegxwsk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgzdvcvimxhpktwibzchmqncddezvwdi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aumvletdpdrmteorzfimbyiganwkzqed","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsklwoajrqupxuzvgqtswipyzbrrnqpb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vulnmjgohjwlsrohbvhyrtwzdrjurknt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljyfrbhspexrflekbqfceodypakdfapt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmgrmgluziacimlsvrcxfklgyizhnwvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"scvixkahykbritrozjcbsvmzulenvltf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxprajopwdmeokpwffhbaoaeelbuxbso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctyyyvjezlxfhfzytsnchisrykntvcnd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zknebzelkzyxonbhkweedbsgmafzzmlu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojvpusdrarttxetwvftwlctpizgfxtxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dlxpgfmmaeqzuaczbdajpohwprljtckw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmtdzlowqgzdntsviemmtshvgkxtfzkt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqopfqqsiuezkqowksarnljfhypxypgh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpsnmqlmpfyephnrplqwbbpcgfosvhbb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ziuyccchelvhjgmcgsjokhwjlazgrcsq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsejyrchpubbfndihuiayljdkjsxrctq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ziokluuhlmkymmmpwfjqrkzdilbtbony","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmusxcgljfghwpisbghvjfpiobjhvwhd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upmsyfvqewdzldadzqkvqsntguepyzes","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggomeswxcrytdkeuavvulopzpjmcbgnk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqlpwjqheexaualxspeldblhdaccmcvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xiklussrhcvveuzkjfxjsapqgsdueedc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgkwlmfvqlabnvikerpjankbwnplyapk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xzyflzxyaminkfbarqlyhnwpzcuslkzd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"adufgemorrhymsqnhrdabbhtemeggaqk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnujnzctipbviljawmpdoirwlnfbnmrs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mdptobghymmvlyrxjkynqlxkpqcoekjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jroovhthkfnzkxpsdpewttsxnftmemxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wgxfaisocdyvxmkocbymoectuxfnsfrx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lymzstnahzzvffzpawfjwauewjnempok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tsabdodwwwotfmhzwojprfqkcxhixitp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqbvlioxkarciuhrzurjviwxfwrsxskz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytikuotltxwcbjxsvledyhbolrrpvgik","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmnevwnrjgpemlillkcvdntfslcvgsez","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thpjvvvyisftpukgswwsothcdjkdagbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uluhvevnwgcmpletfengbyjcznrlfkcw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghtlulxrecgbdfohqnxdnihqddplikhz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"srvpdjoapxrnbtbrlgswyqqapsbxeusf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"caucsgzpeexmpjtjisfpodjmxlmrsakd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phzaoydliassypuyieovjzvxnzdobxaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gemfonsffqzdvdvsaccgytjfmguxpvyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqhjbjsibxkqfmauihvskjdfiqkawoue","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"alyfrjcfszhicvbpqasnzuqahkmdwblb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"apvfblyyrhcutbvzghurxmurwjzqdwbb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffduzhmkdqnyvkijqjeneiciqlvmmzos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdxkonjklhvnowisqcwbfnxtpzpdwouu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ythbwvulklhkletkzotflqvmurjfgsgl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qzwofixpyrdjsxqtlhevsrquaadakxyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669740,"databaseName":"models_schema","ddl":"CREATE TABLE `nmbgkiphylqvhfzedfvrjrurcnseuvvw` (\n `rgfwkirientofqggujieqzgezsrwlilq` int NOT NULL,\n `xacymhcdjoegnoziflbeiryulkwpwzeo` int DEFAULT NULL,\n `wgqxdkaymqissjcmjneyxkpodcwfjefu` int DEFAULT NULL,\n `sgbvxtfdfjffhkitkahniudsxstswoku` int DEFAULT NULL,\n `pfwfddoroxoqnmpmfrtychhoegcoxbth` int DEFAULT NULL,\n `bebfrgjvaecollntyuyjmbxxqjpwbmpl` int DEFAULT NULL,\n `tbxertnhzjxtrxhghuayfwieshypstwm` int DEFAULT NULL,\n `mkusqtmkeoolxxpnzvnfvymkgxnbtizy` int DEFAULT NULL,\n `tpnqatcrxglwvjthjpywlyknydpfdplu` int DEFAULT NULL,\n `qkkbzgxyexazmabhbcxraynyrpwlvvqg` int DEFAULT NULL,\n `syxchuovsyvvkcemwuhecxikoffbvwdw` int DEFAULT NULL,\n `nmxhttrepdxgyrdsydfhmwfwhjbnzike` int DEFAULT NULL,\n `jlhtkeewfelpvuppmjpiloxqsxiwjxuo` int DEFAULT NULL,\n `keuddoaitxjrcvwsafokxathndedktcv` int DEFAULT NULL,\n `nhsnkfnltwmsvjvtpknfjhmmnxhfsuyo` int DEFAULT NULL,\n `qvelwyujwxnopnwishmqgewsflcmounm` int DEFAULT NULL,\n `kefoqpobmvlngragpnwxuqypxahuykiq` int DEFAULT NULL,\n `nokcjtfpweixjhcghkneizqukbybctkv` int DEFAULT NULL,\n `pbijoubcuxuyirahgrtbggdiecglvzth` int DEFAULT NULL,\n `owajjufmnfhiaxznkhvdnwkqcaiwsrng` int DEFAULT NULL,\n `keigylursfeaepsiznmgkihwdgpynfmq` int DEFAULT NULL,\n `gktxsxcpizstsihsxehcvyvjayoancxe` int DEFAULT NULL,\n `fnxjwjxtmalzioyjoujnzsdkjmexuxsh` int DEFAULT NULL,\n `fytzknlypvzqxitcwkhbgvtpzkmksgzo` int DEFAULT NULL,\n `galmobqrlnkidxfmxixyvbzzajdowtwj` int DEFAULT NULL,\n `danqadxuxirvwkpdsqraoivayakwxncc` int DEFAULT NULL,\n `xjkoqfgixxpitosehjkfaagkkxplvqem` int DEFAULT NULL,\n `rjzrshwgngsuzqadtjhvfvifysglghxw` int DEFAULT NULL,\n `mxzxtnmuyrxjwjhcjmrrfjrjwfpbjhwo` int DEFAULT NULL,\n `yyezipyzwualyoxuavojeohoxetzwvyr` int DEFAULT NULL,\n `huwmqrfuiaeszmyhvbfxrtdocanrxval` int DEFAULT NULL,\n `rjgwcavopcmsusjkfjfheibboabbrnfc` int DEFAULT NULL,\n `jypbqmzyfanmrfnjhriczresffzsfukk` int DEFAULT NULL,\n `sokaxswwmsveuoeknvotdxcujyvpfxyz` int DEFAULT NULL,\n `zvkoyktybsrdzdldsgaojwtqhwhcnvac` int DEFAULT NULL,\n `vkxcsmoelhecudqvngofruoskesnycla` int DEFAULT NULL,\n `usgjretgdfslxsoxqztlgkzlwmagjbzy` int DEFAULT NULL,\n `ifezodzreabnsqlzowhbhmsdmzqdijzm` int DEFAULT NULL,\n `holzxwmecswlhrygivgmdesyaypcxqls` int DEFAULT NULL,\n `cinunqbkhppkrfnvqrarzijblypryrql` int DEFAULT NULL,\n `xuqjdjbywifbathjebuzpmdtwrcnkqqu` int DEFAULT NULL,\n `zswsumnkfpjdcqmlbiwmyofiwqceddfh` int DEFAULT NULL,\n `cboawggdctfnwmdglpczrmzcnkgqoosl` int DEFAULT NULL,\n `lqjnieiskjriudlvonyvbkaursrjbywm` int DEFAULT NULL,\n `uhriyomfhvnsqqyhezjhnixmqzlmyskb` int DEFAULT NULL,\n `rxqirbotrqiqwshxkedkcinbsaxfmrqj` int DEFAULT NULL,\n `icifnagvnkzgveahpejhkidszacncvfb` int DEFAULT NULL,\n `didapzengjqupbgugbujzncnxljlwxzo` int DEFAULT NULL,\n `nfawiinnhyvcrnzarrbkdgehgzrxhire` int DEFAULT NULL,\n `qvbhbgmabwtiemidhaincxzlttrejjtt` int DEFAULT NULL,\n `hfewhzdnyzdzuqbuuqedveskaqxmmute` int DEFAULT NULL,\n `xnzevkofqsxrbgfyuqxhykiputpbphbq` int DEFAULT NULL,\n `rlddvxekutnjzurftogusbhlljoxngjp` int DEFAULT NULL,\n `fmqcxraddbqcwhbikqrnvblsaiteolxj` int DEFAULT NULL,\n `ilhqmaqsygubddmgvdcpxhmwxehhdfnj` int DEFAULT NULL,\n `iixbuhdpgidczvxhrldwtmbnuoktakxk` int DEFAULT NULL,\n `rvaldjitcpvyidufbnjbyfzmjbxsnypk` int DEFAULT NULL,\n `itllowsokszkzmskeaxjxqmlbewaiele` int DEFAULT NULL,\n `dfebmsrahrhdjnbpecpbmgjjvmssczbv` int DEFAULT NULL,\n `ytcoaisxokcokbzedlbiagjcjnbxajeh` int DEFAULT NULL,\n `gveovojdkhzihwkcxgbokbstumxtmoni` int DEFAULT NULL,\n `xpahgexyknxnnlbbropzwxjpmuiohuxi` int DEFAULT NULL,\n `ndmgrdxemjjfhewytkqggpxrghakzkrx` int DEFAULT NULL,\n `htwrnqpsmehngiqrmujjeesceurofebo` int DEFAULT NULL,\n `scwvwtyvohtbzqkmfpfxolayapaieolu` int DEFAULT NULL,\n `esqppflrikaszvzjwkgcpjcarrqpeqgi` int DEFAULT NULL,\n `mnwxcxjjywvmixgneurltvkxdxnjbknj` int DEFAULT NULL,\n `exbftpduhlaxmwefavesslvjsjwvldgl` int DEFAULT NULL,\n `jkdrycupdinmgeysvscyxrxoxmpboeya` int DEFAULT NULL,\n `gmieymsbphwkxquzjavhlgkrhmzkpqob` int DEFAULT NULL,\n `bhuiqpmttiprzarxhyxhuvibkbhmbfzb` int DEFAULT NULL,\n `qatlnkmymzzwxnwzgyypqygujmmdygqr` int DEFAULT NULL,\n `ilgeldzvqbkrjghwccniuobdukesmwoo` int DEFAULT NULL,\n `fywjpcmfhtoobispeepgguoypzxzbtte` int DEFAULT NULL,\n `fhoexwpancsfpqjwxdfucyravnsghort` int DEFAULT NULL,\n `nodpbbwnfjvncdwlybvylrypdckunjmz` int DEFAULT NULL,\n `edmlyqatyapajmmrsjyglcmilftyqvsx` int DEFAULT NULL,\n `pdyrfjhvvmqqabgscrjfaqzpiddwdvws` int DEFAULT NULL,\n `xnbepmgalacdvmavgbqsektdxoljvbsb` int DEFAULT NULL,\n `oxxgkyspogmdlbyxuwbazoeufaqvixpr` int DEFAULT NULL,\n `xuzpfofhlapmzubwdekodzaryawglzjv` int DEFAULT NULL,\n `kxeghpluvyqgqxprutvcabwnwbeowlhc` int DEFAULT NULL,\n `zhkuaacbmzezfuendxlancnnydfxdjhj` int DEFAULT NULL,\n `mhnvmipblylnfkhnjjlibnrjhuuaycgj` int DEFAULT NULL,\n `gdzkrdkjafwigatiarukmfspwqwkuwbp` int DEFAULT NULL,\n `llirchsasqhkcpxrjwydsuxolwdvnhml` int DEFAULT NULL,\n `rirjdrzagqxuzbjvarklukpbahxydiwa` int DEFAULT NULL,\n `pydhstttmlyaqxqhlvsgaqdldydvtulf` int DEFAULT NULL,\n `gtywfqeexifoyozxbvudfiwbyksjkmom` int DEFAULT NULL,\n `kkplqtijiaiwzfigxcrdpudgmvmrctgg` int DEFAULT NULL,\n `noukthyaknibwtfljnnyzojqgxvwexzg` int DEFAULT NULL,\n `lknyujxtazlripqctcofwofcxbwszlqp` int DEFAULT NULL,\n `ddwcbcnwclwyqbrqrzbqbdugzskglvqv` int DEFAULT NULL,\n `jbvvooplzzwlcnooxdhkzgkrborwonga` int DEFAULT NULL,\n `gtutnymuquorhzuzdplpiansffukbtkb` int DEFAULT NULL,\n `dreiezdllqhsxntphlpponghsgrjvsgc` int DEFAULT NULL,\n `cpcztxotyvxpaudkostomctozpcdwqgf` int DEFAULT NULL,\n `woxkmvzghtfmgydqxbqejmpsxsgkglhe` int DEFAULT NULL,\n `iuqjnjmycgmbhkuxccgttdzaaloyaxgx` int DEFAULT NULL,\n `rqnnkkkqtzybaxtzpmgharqgfnlwzipi` int DEFAULT NULL,\n PRIMARY KEY (`rgfwkirientofqggujieqzgezsrwlilq`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"nmbgkiphylqvhfzedfvrjrurcnseuvvw\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["rgfwkirientofqggujieqzgezsrwlilq"],"columns":[{"name":"rgfwkirientofqggujieqzgezsrwlilq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"xacymhcdjoegnoziflbeiryulkwpwzeo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wgqxdkaymqissjcmjneyxkpodcwfjefu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sgbvxtfdfjffhkitkahniudsxstswoku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pfwfddoroxoqnmpmfrtychhoegcoxbth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bebfrgjvaecollntyuyjmbxxqjpwbmpl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbxertnhzjxtrxhghuayfwieshypstwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkusqtmkeoolxxpnzvnfvymkgxnbtizy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpnqatcrxglwvjthjpywlyknydpfdplu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qkkbzgxyexazmabhbcxraynyrpwlvvqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"syxchuovsyvvkcemwuhecxikoffbvwdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmxhttrepdxgyrdsydfhmwfwhjbnzike","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlhtkeewfelpvuppmjpiloxqsxiwjxuo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"keuddoaitxjrcvwsafokxathndedktcv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhsnkfnltwmsvjvtpknfjhmmnxhfsuyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvelwyujwxnopnwishmqgewsflcmounm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kefoqpobmvlngragpnwxuqypxahuykiq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nokcjtfpweixjhcghkneizqukbybctkv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbijoubcuxuyirahgrtbggdiecglvzth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owajjufmnfhiaxznkhvdnwkqcaiwsrng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"keigylursfeaepsiznmgkihwdgpynfmq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gktxsxcpizstsihsxehcvyvjayoancxe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnxjwjxtmalzioyjoujnzsdkjmexuxsh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fytzknlypvzqxitcwkhbgvtpzkmksgzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"galmobqrlnkidxfmxixyvbzzajdowtwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"danqadxuxirvwkpdsqraoivayakwxncc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjkoqfgixxpitosehjkfaagkkxplvqem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjzrshwgngsuzqadtjhvfvifysglghxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mxzxtnmuyrxjwjhcjmrrfjrjwfpbjhwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yyezipyzwualyoxuavojeohoxetzwvyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"huwmqrfuiaeszmyhvbfxrtdocanrxval","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjgwcavopcmsusjkfjfheibboabbrnfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jypbqmzyfanmrfnjhriczresffzsfukk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sokaxswwmsveuoeknvotdxcujyvpfxyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvkoyktybsrdzdldsgaojwtqhwhcnvac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkxcsmoelhecudqvngofruoskesnycla","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"usgjretgdfslxsoxqztlgkzlwmagjbzy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ifezodzreabnsqlzowhbhmsdmzqdijzm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"holzxwmecswlhrygivgmdesyaypcxqls","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cinunqbkhppkrfnvqrarzijblypryrql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xuqjdjbywifbathjebuzpmdtwrcnkqqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zswsumnkfpjdcqmlbiwmyofiwqceddfh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cboawggdctfnwmdglpczrmzcnkgqoosl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqjnieiskjriudlvonyvbkaursrjbywm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhriyomfhvnsqqyhezjhnixmqzlmyskb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxqirbotrqiqwshxkedkcinbsaxfmrqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icifnagvnkzgveahpejhkidszacncvfb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"didapzengjqupbgugbujzncnxljlwxzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfawiinnhyvcrnzarrbkdgehgzrxhire","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvbhbgmabwtiemidhaincxzlttrejjtt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfewhzdnyzdzuqbuuqedveskaqxmmute","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnzevkofqsxrbgfyuqxhykiputpbphbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlddvxekutnjzurftogusbhlljoxngjp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmqcxraddbqcwhbikqrnvblsaiteolxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ilhqmaqsygubddmgvdcpxhmwxehhdfnj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iixbuhdpgidczvxhrldwtmbnuoktakxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rvaldjitcpvyidufbnjbyfzmjbxsnypk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itllowsokszkzmskeaxjxqmlbewaiele","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dfebmsrahrhdjnbpecpbmgjjvmssczbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytcoaisxokcokbzedlbiagjcjnbxajeh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gveovojdkhzihwkcxgbokbstumxtmoni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xpahgexyknxnnlbbropzwxjpmuiohuxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ndmgrdxemjjfhewytkqggpxrghakzkrx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"htwrnqpsmehngiqrmujjeesceurofebo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"scwvwtyvohtbzqkmfpfxolayapaieolu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"esqppflrikaszvzjwkgcpjcarrqpeqgi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnwxcxjjywvmixgneurltvkxdxnjbknj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exbftpduhlaxmwefavesslvjsjwvldgl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jkdrycupdinmgeysvscyxrxoxmpboeya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmieymsbphwkxquzjavhlgkrhmzkpqob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bhuiqpmttiprzarxhyxhuvibkbhmbfzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qatlnkmymzzwxnwzgyypqygujmmdygqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ilgeldzvqbkrjghwccniuobdukesmwoo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fywjpcmfhtoobispeepgguoypzxzbtte","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhoexwpancsfpqjwxdfucyravnsghort","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nodpbbwnfjvncdwlybvylrypdckunjmz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edmlyqatyapajmmrsjyglcmilftyqvsx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdyrfjhvvmqqabgscrjfaqzpiddwdvws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnbepmgalacdvmavgbqsektdxoljvbsb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oxxgkyspogmdlbyxuwbazoeufaqvixpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xuzpfofhlapmzubwdekodzaryawglzjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxeghpluvyqgqxprutvcabwnwbeowlhc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhkuaacbmzezfuendxlancnnydfxdjhj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhnvmipblylnfkhnjjlibnrjhuuaycgj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdzkrdkjafwigatiarukmfspwqwkuwbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llirchsasqhkcpxrjwydsuxolwdvnhml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rirjdrzagqxuzbjvarklukpbahxydiwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pydhstttmlyaqxqhlvsgaqdldydvtulf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtywfqeexifoyozxbvudfiwbyksjkmom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kkplqtijiaiwzfigxcrdpudgmvmrctgg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"noukthyaknibwtfljnnyzojqgxvwexzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lknyujxtazlripqctcofwofcxbwszlqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ddwcbcnwclwyqbrqrzbqbdugzskglvqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jbvvooplzzwlcnooxdhkzgkrborwonga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtutnymuquorhzuzdplpiansffukbtkb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dreiezdllqhsxntphlpponghsgrjvsgc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cpcztxotyvxpaudkostomctozpcdwqgf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"woxkmvzghtfmgydqxbqejmpsxsgkglhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iuqjnjmycgmbhkuxccgttdzaaloyaxgx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqnnkkkqtzybaxtzpmgharqgfnlwzipi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669775,"databaseName":"models_schema","ddl":"CREATE TABLE `nsbiwnxsqajlnasfuoofgvhmvbabaxfp` (\n `snmhjgihhkqxiaozyigyozjamdaokusk` int NOT NULL,\n `axaxsncgcrqvotzbdymtkkgvtiajqbqg` int DEFAULT NULL,\n `zztpckwvrortexevagqdxhoohosftwcs` int DEFAULT NULL,\n `ahiqmqsssvlfjmptksqnnpwvvnlfoxbc` int DEFAULT NULL,\n `hydywixwcnafzutlgbqapflspyrxdcrv` int DEFAULT NULL,\n `tfupxfveeadrmbggobjpgrngqffmnvaz` int DEFAULT NULL,\n `ilavkqffmfnoidalujsetjvikzmeomer` int DEFAULT NULL,\n `qwobkkjsuaanzpstyqcsvcnwoqsletov` int DEFAULT NULL,\n `jwgrmkspgujofobqtecgcglpynzhqsfw` int DEFAULT NULL,\n `ijttbzjrzdjecoatqksbiukwlvvohvja` int DEFAULT NULL,\n `pbyoaujqyntzyuuiwhwklajbshvvivak` int DEFAULT NULL,\n `kfzfnunndrkzazokigwlrapsyhzfgoqq` int DEFAULT NULL,\n `rnjoevghkyrzqigkozwsrdliyqwczvtc` int DEFAULT NULL,\n `dzfkwnxmqumeumnebjflwzhunduamabo` int DEFAULT NULL,\n `lgnwfjveugqdsmqahwoltpclhofxzhwu` int DEFAULT NULL,\n `fynrjocarqbioxnrxmxyyzfyiroerslh` int DEFAULT NULL,\n `ajlqrstbvjdmbjtmfghysknaksdljgwa` int DEFAULT NULL,\n `xitmaqpmpehpgzcvhexcockqbakgwilg` int DEFAULT NULL,\n `rhhmhuvetpmbpmadbenpszyqpzxhamas` int DEFAULT NULL,\n `uspmlipfoeauvdmzvfqsgpyakkozgkwr` int DEFAULT NULL,\n `abkgobdweoysenekcafjldqdpfmwkzue` int DEFAULT NULL,\n `xjyyichijymasoctjwoevitzwdkjqnke` int DEFAULT NULL,\n `unbwdcwyeibmpzmnjjossilspcdrbtin` int DEFAULT NULL,\n `hqvtispqbizogpmcfpaqajkuemdctuaj` int DEFAULT NULL,\n `mgwgpppdppadtiowdkroxjjhkxbiepps` int DEFAULT NULL,\n `louwgbplldajmchiwmjbfjpkgtcuczfk` int DEFAULT NULL,\n `jctismfgoqxvuvonahblmwibjgdpctxr` int DEFAULT NULL,\n `nddhygzwitevollcmhljbdhwsdvpbltg` int DEFAULT NULL,\n `cqvdgitaaathpjqpekxdduvqsdoqekih` int DEFAULT NULL,\n `hpwbluniqeenkvaklzerycfkinptqkuk` int DEFAULT NULL,\n `ykwyvqwxvihdfdbiwzvzstpqruiyabvw` int DEFAULT NULL,\n `hezeljtrionirnidhkqazqrwjccknomd` int DEFAULT NULL,\n `bjownjzwfryumlghspxxacburftltpfr` int DEFAULT NULL,\n `jsxeegqzdddvhvstqmhpebpajecvpljo` int DEFAULT NULL,\n `eibdqowwisyxbzozjsetfvboeyvhjpcn` int DEFAULT NULL,\n `qqcgqjihrzeamlwmgcbijifkgemdguvr` int DEFAULT NULL,\n `jfbmidbedutufellsmlxamjrncpwnowd` int DEFAULT NULL,\n `ozoluklyrqcrtgzoxbyworutwvznsdza` int DEFAULT NULL,\n `gsuqlwkhfmunpkezzevxueatjmmpygdq` int DEFAULT NULL,\n `goubcrwjekjhwnuokssujvntpmqqbldy` int DEFAULT NULL,\n `dzrmltmgkyynjohlbduhdgcoqyquqarp` int DEFAULT NULL,\n `vkbrfmhaodotqsiqkzycpbrbslyzmrcf` int DEFAULT NULL,\n `kjdixcevyrdxgokapzkaijkfynbkpslt` int DEFAULT NULL,\n `qfmeotsmtupxitzmptazlmrvmriddojf` int DEFAULT NULL,\n `ryqjwsqnjtggpcreuaaykvusaejobyak` int DEFAULT NULL,\n `muwuxatxmxrxcsmicjwtvhnwjfdwxbxo` int DEFAULT NULL,\n `fgxgilmyowlurzvdroclgqbakazzetda` int DEFAULT NULL,\n `kknozmfkdlftoolftdncykafchbfdldl` int DEFAULT NULL,\n `fjwsbihepcyzvxhvbvcdzpsudcsgitdz` int DEFAULT NULL,\n `tlecmpmnqthqkolfkjwntwviicjeadhu` int DEFAULT NULL,\n `lyaqfjbiwrkaonjwlsbqdqxhsyuzxogu` int DEFAULT NULL,\n `xqtfavtqvaomynzsrdaldzazwdobwbnq` int DEFAULT NULL,\n `eooanccxurvvkslcovgdbruxvmqwrjjo` int DEFAULT NULL,\n `awfuycxuvffpyoxacejfdqrmpyoahmij` int DEFAULT NULL,\n `rcbjpfsjtdopcizprypqcewwxhjbfioc` int DEFAULT NULL,\n `dczcqbevhupjvbulrrabmoedcocqpiqh` int DEFAULT NULL,\n `eaiifahtloelyaxquuxggikqbiqxqsor` int DEFAULT NULL,\n `kyiffxdsjeojvohjdmebvfyozrncakeg` int DEFAULT NULL,\n `uusciaxhbhveclyhbepfkbrwzfsaahss` int DEFAULT NULL,\n `juekzwhyxawyrlloiaifzwwgsuquslik` int DEFAULT NULL,\n `fcfoiipyymdvmfgjuhkkzfnadmrrmmuy` int DEFAULT NULL,\n `cfrjlcorwsueqmacwtxemvfouosamehp` int DEFAULT NULL,\n `tybmwrjfqdgayrxwagnijotyiydoxjyf` int DEFAULT NULL,\n `hejyqqoubsrkipihplmqwjzoiwcmetfs` int DEFAULT NULL,\n `omfgrnsopkcwthnkjdywyvwzscgbgdse` int DEFAULT NULL,\n `oruwhxdjovhosbffrfpwoxzdzhyhneco` int DEFAULT NULL,\n `kplbsxopxlpjxtqbudjpucxcqxazcypm` int DEFAULT NULL,\n `zqaswkmyebbtniwdkipfwgwjwjduwtvs` int DEFAULT NULL,\n `kslywwvtakpscdztusccptbblamggfcd` int DEFAULT NULL,\n `ahgjuznhmcjiyjdvefkdxjaujwafbjuo` int DEFAULT NULL,\n `mmrzqzlmqeqxychmaylzwmfrjjfkatnc` int DEFAULT NULL,\n `xdrvvcukikefqjsbpajdpueqvrtmaxwc` int DEFAULT NULL,\n `rvxfqllvbxwxkxwvronghagphjhylwzb` int DEFAULT NULL,\n `cccndkyndciwcabhmzjlayytzkqylcno` int DEFAULT NULL,\n `aeivqqzbqqnorurxvbyxfeeejgjhmogr` int DEFAULT NULL,\n `bujciudodihsebdinyspcmkzubgwsoiw` int DEFAULT NULL,\n `ggoxdyauxvecvsfgcsfvwtcliadxofrj` int DEFAULT NULL,\n `czvvujmdybduxmmxnhimuhynlyteqwmr` int DEFAULT NULL,\n `lmkncfjqpowoytggwbhpkwudpabcumyy` int DEFAULT NULL,\n `efvmdirdubqvsslieqmjjsiyewfplbow` int DEFAULT NULL,\n `ejhmfznickmewhgfsvvqmyfrqggujubt` int DEFAULT NULL,\n `dfezavnswrbghbftifbatwosnlfwbvfb` int DEFAULT NULL,\n `csujgktyegdhzmuwjpnviewjqtwmlypw` int DEFAULT NULL,\n `btjgydhcuqatrhleqyjihvjdldtjzmxq` int DEFAULT NULL,\n `wsrlxakrqdgvfbqulnugkahfdhxzxagl` int DEFAULT NULL,\n `ttpygqvbkpuygatuhvkfbboaedldtcfv` int DEFAULT NULL,\n `tjyavhbzptjmkrmulnqaggebtnldpngj` int DEFAULT NULL,\n `jqpkrnaulzmbulnirblgvbtpgungpobn` int DEFAULT NULL,\n `tyakdidzivrkrgmmtnszvehjvpyqtpvf` int DEFAULT NULL,\n `lvlknmiuyxjnrozdoopicjlhzutckusl` int DEFAULT NULL,\n `bpuvyddbyzxhsadifryaedrrhxcklocm` int DEFAULT NULL,\n `jaktrwvgckxuudvgnukcudpupbkozzpv` int DEFAULT NULL,\n `tfjpiibxgbooygdmsyxykquujdgiukis` int DEFAULT NULL,\n `nqbokickcbpdsfrweemzkzytynjjnhzm` int DEFAULT NULL,\n `zyjidxqkjdysujpkhhhizktwfxukdehb` int DEFAULT NULL,\n `rhmpkxtybyvlyeonwvwfdsdmbjicjiqy` int DEFAULT NULL,\n `bvjhflgzeurkkjiyoqxmvyvhpbzmzwzj` int DEFAULT NULL,\n `syglxaovsnfjobafdzvsjujollgfrokj` int DEFAULT NULL,\n `xsrqcxtmdxqbryjbuapqyfxgpjuxmsgl` int DEFAULT NULL,\n `zvvntvldmuecgnbqilfkkodxkkvbwzcc` int DEFAULT NULL,\n PRIMARY KEY (`snmhjgihhkqxiaozyigyozjamdaokusk`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"nsbiwnxsqajlnasfuoofgvhmvbabaxfp\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["snmhjgihhkqxiaozyigyozjamdaokusk"],"columns":[{"name":"snmhjgihhkqxiaozyigyozjamdaokusk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"axaxsncgcrqvotzbdymtkkgvtiajqbqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zztpckwvrortexevagqdxhoohosftwcs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ahiqmqsssvlfjmptksqnnpwvvnlfoxbc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hydywixwcnafzutlgbqapflspyrxdcrv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tfupxfveeadrmbggobjpgrngqffmnvaz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ilavkqffmfnoidalujsetjvikzmeomer","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwobkkjsuaanzpstyqcsvcnwoqsletov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwgrmkspgujofobqtecgcglpynzhqsfw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijttbzjrzdjecoatqksbiukwlvvohvja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbyoaujqyntzyuuiwhwklajbshvvivak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfzfnunndrkzazokigwlrapsyhzfgoqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnjoevghkyrzqigkozwsrdliyqwczvtc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dzfkwnxmqumeumnebjflwzhunduamabo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgnwfjveugqdsmqahwoltpclhofxzhwu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fynrjocarqbioxnrxmxyyzfyiroerslh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajlqrstbvjdmbjtmfghysknaksdljgwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xitmaqpmpehpgzcvhexcockqbakgwilg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhhmhuvetpmbpmadbenpszyqpzxhamas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uspmlipfoeauvdmzvfqsgpyakkozgkwr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"abkgobdweoysenekcafjldqdpfmwkzue","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjyyichijymasoctjwoevitzwdkjqnke","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unbwdcwyeibmpzmnjjossilspcdrbtin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqvtispqbizogpmcfpaqajkuemdctuaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mgwgpppdppadtiowdkroxjjhkxbiepps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"louwgbplldajmchiwmjbfjpkgtcuczfk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jctismfgoqxvuvonahblmwibjgdpctxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nddhygzwitevollcmhljbdhwsdvpbltg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqvdgitaaathpjqpekxdduvqsdoqekih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hpwbluniqeenkvaklzerycfkinptqkuk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykwyvqwxvihdfdbiwzvzstpqruiyabvw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hezeljtrionirnidhkqazqrwjccknomd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjownjzwfryumlghspxxacburftltpfr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jsxeegqzdddvhvstqmhpebpajecvpljo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eibdqowwisyxbzozjsetfvboeyvhjpcn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqcgqjihrzeamlwmgcbijifkgemdguvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jfbmidbedutufellsmlxamjrncpwnowd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ozoluklyrqcrtgzoxbyworutwvznsdza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gsuqlwkhfmunpkezzevxueatjmmpygdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"goubcrwjekjhwnuokssujvntpmqqbldy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dzrmltmgkyynjohlbduhdgcoqyquqarp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkbrfmhaodotqsiqkzycpbrbslyzmrcf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjdixcevyrdxgokapzkaijkfynbkpslt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfmeotsmtupxitzmptazlmrvmriddojf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ryqjwsqnjtggpcreuaaykvusaejobyak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"muwuxatxmxrxcsmicjwtvhnwjfdwxbxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fgxgilmyowlurzvdroclgqbakazzetda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kknozmfkdlftoolftdncykafchbfdldl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjwsbihepcyzvxhvbvcdzpsudcsgitdz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlecmpmnqthqkolfkjwntwviicjeadhu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lyaqfjbiwrkaonjwlsbqdqxhsyuzxogu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqtfavtqvaomynzsrdaldzazwdobwbnq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eooanccxurvvkslcovgdbruxvmqwrjjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awfuycxuvffpyoxacejfdqrmpyoahmij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcbjpfsjtdopcizprypqcewwxhjbfioc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dczcqbevhupjvbulrrabmoedcocqpiqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eaiifahtloelyaxquuxggikqbiqxqsor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kyiffxdsjeojvohjdmebvfyozrncakeg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uusciaxhbhveclyhbepfkbrwzfsaahss","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"juekzwhyxawyrlloiaifzwwgsuquslik","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcfoiipyymdvmfgjuhkkzfnadmrrmmuy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfrjlcorwsueqmacwtxemvfouosamehp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tybmwrjfqdgayrxwagnijotyiydoxjyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hejyqqoubsrkipihplmqwjzoiwcmetfs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omfgrnsopkcwthnkjdywyvwzscgbgdse","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oruwhxdjovhosbffrfpwoxzdzhyhneco","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kplbsxopxlpjxtqbudjpucxcqxazcypm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqaswkmyebbtniwdkipfwgwjwjduwtvs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kslywwvtakpscdztusccptbblamggfcd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ahgjuznhmcjiyjdvefkdxjaujwafbjuo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmrzqzlmqeqxychmaylzwmfrjjfkatnc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdrvvcukikefqjsbpajdpueqvrtmaxwc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rvxfqllvbxwxkxwvronghagphjhylwzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cccndkyndciwcabhmzjlayytzkqylcno","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aeivqqzbqqnorurxvbyxfeeejgjhmogr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bujciudodihsebdinyspcmkzubgwsoiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggoxdyauxvecvsfgcsfvwtcliadxofrj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"czvvujmdybduxmmxnhimuhynlyteqwmr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmkncfjqpowoytggwbhpkwudpabcumyy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"efvmdirdubqvsslieqmjjsiyewfplbow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejhmfznickmewhgfsvvqmyfrqggujubt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dfezavnswrbghbftifbatwosnlfwbvfb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"csujgktyegdhzmuwjpnviewjqtwmlypw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"btjgydhcuqatrhleqyjihvjdldtjzmxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wsrlxakrqdgvfbqulnugkahfdhxzxagl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ttpygqvbkpuygatuhvkfbboaedldtcfv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjyavhbzptjmkrmulnqaggebtnldpngj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jqpkrnaulzmbulnirblgvbtpgungpobn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tyakdidzivrkrgmmtnszvehjvpyqtpvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvlknmiuyxjnrozdoopicjlhzutckusl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bpuvyddbyzxhsadifryaedrrhxcklocm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jaktrwvgckxuudvgnukcudpupbkozzpv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tfjpiibxgbooygdmsyxykquujdgiukis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqbokickcbpdsfrweemzkzytynjjnhzm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zyjidxqkjdysujpkhhhizktwfxukdehb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhmpkxtybyvlyeonwvwfdsdmbjicjiqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvjhflgzeurkkjiyoqxmvyvhpbzmzwzj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"syglxaovsnfjobafdzvsjujollgfrokj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsrqcxtmdxqbryjbuapqyfxgpjuxmsgl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvvntvldmuecgnbqilfkkodxkkvbwzcc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669806,"databaseName":"models_schema","ddl":"CREATE TABLE `ntdsamdzxoluyqsidfutsijfjlwpulzz` (\n `dtpfwumwgexswomaynmjzenakmzoxfdn` int NOT NULL,\n `xfctvyrzfhqyffxqnjyqmjbsluexmkar` int DEFAULT NULL,\n `rntimauabkagzsbsvnahisqpvbitstih` int DEFAULT NULL,\n `ilqvsfpqylrrfnslojlyjofgwjqkbwiu` int DEFAULT NULL,\n `aryjvgokmwrxytpgjdeqvpnwjvcuwbgr` int DEFAULT NULL,\n `gxphsedvsjdejrwtwyrkfzdpjrwinsrj` int DEFAULT NULL,\n `xohqbbzwcubeabpkextlrgdgqjgashtx` int DEFAULT NULL,\n `bxrmccbxmvtvbdwtjoxogrimaljpdcuc` int DEFAULT NULL,\n `kvddkynwjnsmdruhjkxnusjhmeyktlgr` int DEFAULT NULL,\n `asritxnynrhddkreuirsztuvjcpgtdvv` int DEFAULT NULL,\n `aqkszbybllvkiemzvxeujkygmfzhfngr` int DEFAULT NULL,\n `puaxdumumiumjuazigvxlruznqifnlds` int DEFAULT NULL,\n `vakrmwejfainumfqjhipgdpecicchiyo` int DEFAULT NULL,\n `aptxzzzeijxvrzgzpsmsrauqdunxbxvq` int DEFAULT NULL,\n `ijrrvzczqhzvbswjwndxksfdlzstjyia` int DEFAULT NULL,\n `bhmmjevajfhbahqrxoqvqbglisbucspo` int DEFAULT NULL,\n `xakccscajvyyudgqzvsqrdpjkdcehloj` int DEFAULT NULL,\n `lxgfxczvzixyzvtwfknbhwqmxydbiklj` int DEFAULT NULL,\n `yrovtkgowkwacmspuqjvnmdzgjthamdz` int DEFAULT NULL,\n `vmemqvqsmdnrmojjjzswxwvoojiuermf` int DEFAULT NULL,\n `qxskwpldyayhmcwkimmnehiyzjdaxdvn` int DEFAULT NULL,\n `wsaysscpkmhpxjkdztldbgkhfzfbgcez` int DEFAULT NULL,\n `wjwwdxxyerpuldznemdkgqywlxscftbc` int DEFAULT NULL,\n `qqmqqgqoupoxvycnuogbipdeybftxqgz` int DEFAULT NULL,\n `pmnirpracnzbtlfwmklolyzgvlisoevd` int DEFAULT NULL,\n `eqrymiioairwrshsqyfcfbinasdmtvyc` int DEFAULT NULL,\n `anlezyaxpkwabssaftqeuocypaxlwjwh` int DEFAULT NULL,\n `curkisshgwyetrmylxvqbpvlysrftsch` int DEFAULT NULL,\n `trvxkecolaekkbcooewkjyynfypsynci` int DEFAULT NULL,\n `tgcvhcizqfpgspkoczxwpjawmrikbfmu` int DEFAULT NULL,\n `rrkgirnpfqvmmrrwmemdmeaaxwmfitiw` int DEFAULT NULL,\n `hkddcsnslhimahhrselmpwpfvlhsnafk` int DEFAULT NULL,\n `amjwtukevkhaoppojwqbzhlkfrsxopfz` int DEFAULT NULL,\n `tbxixgzfvygojijxwaxrrutuzwbmvtsq` int DEFAULT NULL,\n `auhxxtwkgymzcswokfxvdtlptlxcanxc` int DEFAULT NULL,\n `lgmuldqhhptvdwkezryyvqickywkkifs` int DEFAULT NULL,\n `lrqytvjeurlgcjoezapjetmggcpjwjai` int DEFAULT NULL,\n `phtwmrfvwxrhndwybwvnvgogbfmkusjw` int DEFAULT NULL,\n `vwdpwcffmdqfrsfywclbnpvscxnemefs` int DEFAULT NULL,\n `vlhvaujlqlfqkyxryvdzlknfvgdsuuai` int DEFAULT NULL,\n `annrryymefensmrttkqhbgiamaniepps` int DEFAULT NULL,\n `lqzmnvgrqyllibujzcqcoomyarosltko` int DEFAULT NULL,\n `ykzgnuamqdhpcymsdiyqqqdnyyuucwbc` int DEFAULT NULL,\n `nvjjqlrcansimgshxepagqusqdisoytl` int DEFAULT NULL,\n `hdczgslqxeveyjrhmwcmwfwwuxwojsxf` int DEFAULT NULL,\n `rcoabydnbmniuwngnaddhrgrsgrddmqk` int DEFAULT NULL,\n `ierkvdbyynqohfbacmpuaswowowrnntw` int DEFAULT NULL,\n `iexwtycfmymezncbanptuhxcvtbdfdzs` int DEFAULT NULL,\n `pxgqzpoosxoymezgnrqmukhwixmgdqdg` int DEFAULT NULL,\n `bnbddljainngiiuqkaxarpxnkfnsfrws` int DEFAULT NULL,\n `sfdggeylpyptyvydoccwfwcdltunwtkq` int DEFAULT NULL,\n `girhfmepguyqrukhmhkerxcneirnitvh` int DEFAULT NULL,\n `wjobwibafjhkbdqlacmhualsyurnhpsp` int DEFAULT NULL,\n `dsqqgmzfsidlbxlktlqygdcomafhdgff` int DEFAULT NULL,\n `evcyryfkkkcqjgsrhnjepwjgbcnrjopg` int DEFAULT NULL,\n `ubvpcrobtvxjvlikrvakgkgkcpuzzzxw` int DEFAULT NULL,\n `jclmxvbndrcdxjlpzzvvtzdsuesfwint` int DEFAULT NULL,\n `lgfyvzsdcjjlwhpvitlmctvsiikzpfmg` int DEFAULT NULL,\n `iujrkshaebhetdnonsioiiimvrlcwjpw` int DEFAULT NULL,\n `bbukvlrsqjmxaaqudnfqsctsbsxkinvc` int DEFAULT NULL,\n `woejhhrkokoejhaqvgozjbznckhbgumr` int DEFAULT NULL,\n `dgkrxmthdxhayxchaqdugjaqvabjulza` int DEFAULT NULL,\n `cmcyftrafthsshugswfrcsjcmzclsaxj` int DEFAULT NULL,\n `opjtfhienghzqughjdzwaehqpgbctfzr` int DEFAULT NULL,\n `nckmuofqhwdxbmgiqfvdfbixhwfikszu` int DEFAULT NULL,\n `qjvudnosdkxcbuczvbzthidpzluqouyd` int DEFAULT NULL,\n `lrxyzjezbzotizkejfpmhnupwhjagkpl` int DEFAULT NULL,\n `bhxnlychsjifztjfxgjmfybxgnkkbaea` int DEFAULT NULL,\n `vsxmxluojykblewvjzjtmxgsprpcwexw` int DEFAULT NULL,\n `mzsvyhitxforlywjzavcnwbhqoqqsugx` int DEFAULT NULL,\n `xxsitxqjxvjikrnqwwdfclqxxtkfdaqg` int DEFAULT NULL,\n `dkrxkgwsoknxaygcdzpccdcyastzdosk` int DEFAULT NULL,\n `fflnowrntbnmhvaqueqkkezmmxkvzktf` int DEFAULT NULL,\n `ieugebyewpvktnuncatbhjvnopnigflb` int DEFAULT NULL,\n `eosoenvrgpoozieowpcxfrybqdewjxma` int DEFAULT NULL,\n `wcyuwfehghocbcmeostlhphnkisbeafq` int DEFAULT NULL,\n `ikuhlrbffzbrcbqsxkicvarlyforefsr` int DEFAULT NULL,\n `droaysiysozzzmafahxjvxtezloljlhd` int DEFAULT NULL,\n `bisnorlyyywrbuncyboxdkhfboskgzsa` int DEFAULT NULL,\n `gnoaukqoaljxrdjadmdmzqlgkjdfoybd` int DEFAULT NULL,\n `ebklpcxvnlajpiuekiigkvrnwafvqzbl` int DEFAULT NULL,\n `jqovsonwbljczoenmgvhmyhohsmwzhjd` int DEFAULT NULL,\n `fuuqqmjcpdxeniqhwvexkjyvweburjsk` int DEFAULT NULL,\n `dwncjfbbwiovhgqnbisksejbigmpzqzv` int DEFAULT NULL,\n `kfxrdvjjpzqjeylpudlvyjswdfgimsbt` int DEFAULT NULL,\n `ljtfrclwtbtyyapfdjvrzvocqwaiolsa` int DEFAULT NULL,\n `dtwmepikdhwzppubjvkspxdafodcxdjg` int DEFAULT NULL,\n `flipldmbcdktqnijrbffzvedncedjiev` int DEFAULT NULL,\n `cgiiamkgxyjvqaeynbqlmupoyjacyycq` int DEFAULT NULL,\n `uicjthollfjaattjnylqbuwqbjamigww` int DEFAULT NULL,\n `pqbblaabenopumlrfxpbfuekuildrshf` int DEFAULT NULL,\n `omtriwwzvzechciufxnzplmvmycffvex` int DEFAULT NULL,\n `lrsmiqqqcimhzxzrtbqboudnzyxsbien` int DEFAULT NULL,\n `oegxhibycuwvvwmbtwdtbsjjmrwicmam` int DEFAULT NULL,\n `vpovkkyjlyxbxspqlmflyonsfjujxqea` int DEFAULT NULL,\n `pbpuyuqfkptwnlrxhyzrqrnsotrfiytb` int DEFAULT NULL,\n `fcrqcerosqdhfvtlzhdlrqpejdpototn` int DEFAULT NULL,\n `kyuohaqotwxorxyukaiarkrmfxekbbbl` int DEFAULT NULL,\n `hovncavregqeonuzfquqffvkhhfwdvsn` int DEFAULT NULL,\n `jsftvhyjgluhneayxkffzswnphafeqef` int DEFAULT NULL,\n PRIMARY KEY (`dtpfwumwgexswomaynmjzenakmzoxfdn`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"ntdsamdzxoluyqsidfutsijfjlwpulzz\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["dtpfwumwgexswomaynmjzenakmzoxfdn"],"columns":[{"name":"dtpfwumwgexswomaynmjzenakmzoxfdn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"xfctvyrzfhqyffxqnjyqmjbsluexmkar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rntimauabkagzsbsvnahisqpvbitstih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ilqvsfpqylrrfnslojlyjofgwjqkbwiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aryjvgokmwrxytpgjdeqvpnwjvcuwbgr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gxphsedvsjdejrwtwyrkfzdpjrwinsrj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xohqbbzwcubeabpkextlrgdgqjgashtx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bxrmccbxmvtvbdwtjoxogrimaljpdcuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvddkynwjnsmdruhjkxnusjhmeyktlgr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"asritxnynrhddkreuirsztuvjcpgtdvv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqkszbybllvkiemzvxeujkygmfzhfngr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"puaxdumumiumjuazigvxlruznqifnlds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vakrmwejfainumfqjhipgdpecicchiyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aptxzzzeijxvrzgzpsmsrauqdunxbxvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijrrvzczqhzvbswjwndxksfdlzstjyia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bhmmjevajfhbahqrxoqvqbglisbucspo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xakccscajvyyudgqzvsqrdpjkdcehloj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxgfxczvzixyzvtwfknbhwqmxydbiklj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yrovtkgowkwacmspuqjvnmdzgjthamdz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vmemqvqsmdnrmojjjzswxwvoojiuermf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxskwpldyayhmcwkimmnehiyzjdaxdvn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wsaysscpkmhpxjkdztldbgkhfzfbgcez","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjwwdxxyerpuldznemdkgqywlxscftbc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqmqqgqoupoxvycnuogbipdeybftxqgz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmnirpracnzbtlfwmklolyzgvlisoevd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqrymiioairwrshsqyfcfbinasdmtvyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"anlezyaxpkwabssaftqeuocypaxlwjwh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"curkisshgwyetrmylxvqbpvlysrftsch","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"trvxkecolaekkbcooewkjyynfypsynci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tgcvhcizqfpgspkoczxwpjawmrikbfmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrkgirnpfqvmmrrwmemdmeaaxwmfitiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkddcsnslhimahhrselmpwpfvlhsnafk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"amjwtukevkhaoppojwqbzhlkfrsxopfz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbxixgzfvygojijxwaxrrutuzwbmvtsq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"auhxxtwkgymzcswokfxvdtlptlxcanxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgmuldqhhptvdwkezryyvqickywkkifs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lrqytvjeurlgcjoezapjetmggcpjwjai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phtwmrfvwxrhndwybwvnvgogbfmkusjw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vwdpwcffmdqfrsfywclbnpvscxnemefs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vlhvaujlqlfqkyxryvdzlknfvgdsuuai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"annrryymefensmrttkqhbgiamaniepps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqzmnvgrqyllibujzcqcoomyarosltko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykzgnuamqdhpcymsdiyqqqdnyyuucwbc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvjjqlrcansimgshxepagqusqdisoytl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdczgslqxeveyjrhmwcmwfwwuxwojsxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcoabydnbmniuwngnaddhrgrsgrddmqk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ierkvdbyynqohfbacmpuaswowowrnntw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iexwtycfmymezncbanptuhxcvtbdfdzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxgqzpoosxoymezgnrqmukhwixmgdqdg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnbddljainngiiuqkaxarpxnkfnsfrws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfdggeylpyptyvydoccwfwcdltunwtkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"girhfmepguyqrukhmhkerxcneirnitvh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjobwibafjhkbdqlacmhualsyurnhpsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dsqqgmzfsidlbxlktlqygdcomafhdgff","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evcyryfkkkcqjgsrhnjepwjgbcnrjopg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubvpcrobtvxjvlikrvakgkgkcpuzzzxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jclmxvbndrcdxjlpzzvvtzdsuesfwint","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgfyvzsdcjjlwhpvitlmctvsiikzpfmg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iujrkshaebhetdnonsioiiimvrlcwjpw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbukvlrsqjmxaaqudnfqsctsbsxkinvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"woejhhrkokoejhaqvgozjbznckhbgumr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgkrxmthdxhayxchaqdugjaqvabjulza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmcyftrafthsshugswfrcsjcmzclsaxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opjtfhienghzqughjdzwaehqpgbctfzr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nckmuofqhwdxbmgiqfvdfbixhwfikszu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjvudnosdkxcbuczvbzthidpzluqouyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lrxyzjezbzotizkejfpmhnupwhjagkpl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bhxnlychsjifztjfxgjmfybxgnkkbaea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsxmxluojykblewvjzjtmxgsprpcwexw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzsvyhitxforlywjzavcnwbhqoqqsugx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxsitxqjxvjikrnqwwdfclqxxtkfdaqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkrxkgwsoknxaygcdzpccdcyastzdosk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fflnowrntbnmhvaqueqkkezmmxkvzktf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ieugebyewpvktnuncatbhjvnopnigflb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eosoenvrgpoozieowpcxfrybqdewjxma","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcyuwfehghocbcmeostlhphnkisbeafq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikuhlrbffzbrcbqsxkicvarlyforefsr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"droaysiysozzzmafahxjvxtezloljlhd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bisnorlyyywrbuncyboxdkhfboskgzsa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnoaukqoaljxrdjadmdmzqlgkjdfoybd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebklpcxvnlajpiuekiigkvrnwafvqzbl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jqovsonwbljczoenmgvhmyhohsmwzhjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fuuqqmjcpdxeniqhwvexkjyvweburjsk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwncjfbbwiovhgqnbisksejbigmpzqzv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfxrdvjjpzqjeylpudlvyjswdfgimsbt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljtfrclwtbtyyapfdjvrzvocqwaiolsa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtwmepikdhwzppubjvkspxdafodcxdjg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flipldmbcdktqnijrbffzvedncedjiev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgiiamkgxyjvqaeynbqlmupoyjacyycq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uicjthollfjaattjnylqbuwqbjamigww","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqbblaabenopumlrfxpbfuekuildrshf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omtriwwzvzechciufxnzplmvmycffvex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lrsmiqqqcimhzxzrtbqboudnzyxsbien","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oegxhibycuwvvwmbtwdtbsjjmrwicmam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpovkkyjlyxbxspqlmflyonsfjujxqea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbpuyuqfkptwnlrxhyzrqrnsotrfiytb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcrqcerosqdhfvtlzhdlrqpejdpototn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kyuohaqotwxorxyukaiarkrmfxekbbbl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hovncavregqeonuzfquqffvkhhfwdvsn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jsftvhyjgluhneayxkffzswnphafeqef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669837,"databaseName":"models_schema","ddl":"CREATE TABLE `nxwatrwouueiyynkxlmdmddfodlkdsgt` (\n `mcytxuzbuzxbcycobevnagzmcpdlqpjf` int NOT NULL,\n `hzruefbumsfjxdtvhtrwkljaevbqqtxn` int DEFAULT NULL,\n `yzaiocmvsrbdwqhiskqmuheeyhdylbvx` int DEFAULT NULL,\n `glsxumgzeevbqcnztvnikcrtzfunbhxt` int DEFAULT NULL,\n `hubaikhvrgnxvptwvajcdcofmohfakkr` int DEFAULT NULL,\n `pnvvzzywnstcdzlouyreszxyknxfhqne` int DEFAULT NULL,\n `vjbgjnayyinosluywgbcokyggnutacao` int DEFAULT NULL,\n `wqdagvdlmulfpqhfjyzsflqxfxcmbbnh` int DEFAULT NULL,\n `tjwslfigbhvqdgdnxhtksxbqukynhtpp` int DEFAULT NULL,\n `tdvvwxokqxrzlrmouldpcmyziorltmjv` int DEFAULT NULL,\n `xgnuhzhxzppcsexilxmxmhrokkegkfut` int DEFAULT NULL,\n `nmuhdgtazydtcmohlffkjxtjjkjundss` int DEFAULT NULL,\n `uatwuiggxzeicwfzdscfyiqqywyvpkch` int DEFAULT NULL,\n `ixpauamixsfzapxbqplcohsfwzaullpg` int DEFAULT NULL,\n `sjqjaucyswzlkooiwpzoangbmknsnpht` int DEFAULT NULL,\n `cjjrvckttyswjnezwghsrrtogcjxbhjf` int DEFAULT NULL,\n `rzpqaujqvxyjnmsahrnmbkipqfrinrqv` int DEFAULT NULL,\n `xkxrzgrtxirstnjzuvrmkqsyihaggoxe` int DEFAULT NULL,\n `stpnnuggshnfrdzhmmanigvuwficnqvy` int DEFAULT NULL,\n `yajkehdwlmislmwgpmpwsixhdbrazjdk` int DEFAULT NULL,\n `uvalpmgcwtqpjgykdynolodfhufanhej` int DEFAULT NULL,\n `cnncmfqfbizwlfpghffscmmcvlbrqfts` int DEFAULT NULL,\n `luntuinpjkmgxpdetbbiukmbpsbhgvrq` int DEFAULT NULL,\n `hdibvoedxatknzsllmumzwdlhmijrneh` int DEFAULT NULL,\n `mowfjflvjqbatopqgjjdgsgbtazjauoi` int DEFAULT NULL,\n `xetqsuifvtbckhpcdkmuzzgoozscevso` int DEFAULT NULL,\n `vuvbxrsilaqotzltxlsrwfuivzvaanrr` int DEFAULT NULL,\n `kdtrhgosjwpiqiclqsaixbokkkpvwkjr` int DEFAULT NULL,\n `etpbioedzyuykpytzqttdgxlzmbbtvpu` int DEFAULT NULL,\n `yewfxqwylwmlyghcdafqiypyfageniko` int DEFAULT NULL,\n `oakzdctiizwlbmshvkuigkipilvbwydu` int DEFAULT NULL,\n `vbdbutxoyxftexkuzdimgznynctroojg` int DEFAULT NULL,\n `ivstodmurkyvwxfkhhaioewcivaehfun` int DEFAULT NULL,\n `hotrmehlcpristfytqzmunsbwrdtovgb` int DEFAULT NULL,\n `nrsncamchopfpinzibirirmvbszvkmzb` int DEFAULT NULL,\n `seemvygavpuzancxdljyxvitswujqdxe` int DEFAULT NULL,\n `grcafmnjeoodgnfqfddrhhvrmuwatuiv` int DEFAULT NULL,\n `chagkdxfiuruqdkgcokzdxmpsbcykmrb` int DEFAULT NULL,\n `qgyyipndgkzhjwugihbydiojmjpygqfm` int DEFAULT NULL,\n `gdhbbfhcpeeeplbezftdtgypvkufmbbr` int DEFAULT NULL,\n `eyvxhqbmitcfaeunkmfxtniykmzjfuvg` int DEFAULT NULL,\n `jwlkryidulexyzuoijbxfomhrrrwkkpq` int DEFAULT NULL,\n `iynlkcemklousywaztxhfwkhmldwzpkl` int DEFAULT NULL,\n `kcdsdnmyisxrtalhcdcukeicwvnoxwqw` int DEFAULT NULL,\n `dpsocnymcyvjfhpjbqpxjgsaoquwoxwc` int DEFAULT NULL,\n `evxwtcwbdpmdhdrhkjutbtbsfhlmrtec` int DEFAULT NULL,\n `fiekqpgbbmptuhdzeaqemgcrggcbztbj` int DEFAULT NULL,\n `omecjllaamtjquzwsgmlhtvrjtemiqzu` int DEFAULT NULL,\n `avwthvpvoamsablvzjgotushcwgiekrm` int DEFAULT NULL,\n `ouhgnckdmarckjyokoqsczgjfddvbaan` int DEFAULT NULL,\n `zriwryphrehhnmbljswuncjhdujjsxlo` int DEFAULT NULL,\n `mdfllhslokxkixfpvcpfyzgzisdqgkga` int DEFAULT NULL,\n `jmurocikmabsgwhrktltltnfupoernsp` int DEFAULT NULL,\n `pkizcnwvverpovrstunkbubopmsnenhi` int DEFAULT NULL,\n `ynexkumpjhfqycmgntxyhvlzzcvxcile` int DEFAULT NULL,\n `ioecqmmvhhskfnvgfzfqwwzzwnksiacu` int DEFAULT NULL,\n `ovlxukuyrctknixnxztolbsrbxzpfnfz` int DEFAULT NULL,\n `veavkrcfrqcwgrtjbgwidfnnrydrtomi` int DEFAULT NULL,\n `jvhikpaehwhfzuvaapsvuvrgrtyccuuz` int DEFAULT NULL,\n `zyppjmxkiwqcaiisxspodqemnjvrylov` int DEFAULT NULL,\n `qlhksyfyzbwxxaygdcmeeewkogzvwbgu` int DEFAULT NULL,\n `bcuedprqwuvjhkbysuhzsbcfztquistn` int DEFAULT NULL,\n `geyzanyrlusbuczwtcerkyeggeqfetwk` int DEFAULT NULL,\n `lstzitipqmujxjddfvgrxjosjnyctbgy` int DEFAULT NULL,\n `qgbmefgvwqanfqntfcjjujabmfivvrpp` int DEFAULT NULL,\n `gfxwpsmcstcaszgxdysxgxxhiqlrlhgm` int DEFAULT NULL,\n `abgabfzaggpppbilixjcpxomncyksoex` int DEFAULT NULL,\n `orwkfxayuywolrpuvqzqnzunqiyjdrko` int DEFAULT NULL,\n `jnjawlzfohbxojiirtdzsunzuvqsiddi` int DEFAULT NULL,\n `qqfjkzjrctbvkuappxkhibrnnktqfhph` int DEFAULT NULL,\n `byrqdnrkugavzhxxolkcaxnvvkiseivz` int DEFAULT NULL,\n `zylgcfmmyyylrzdtabprgiicxwrccewe` int DEFAULT NULL,\n `tdedjsedalvfympnimlbaehepikfrtvn` int DEFAULT NULL,\n `ndvxalmiucvzekxvjnsyjcfuqkljlerk` int DEFAULT NULL,\n `twuegskdhavirbwpbrjkbfqhleiaoqpy` int DEFAULT NULL,\n `idrrdqgayidxcxsqnnitbmzqkscuwrpd` int DEFAULT NULL,\n `wuacozbsgmytdvjexioobaqlgqtqtwxj` int DEFAULT NULL,\n `fxlrgryczinzvnzqwwbgpbzumurbckro` int DEFAULT NULL,\n `nnpgwgxdtbaflzpnqwmrvjmrrbgvjwyh` int DEFAULT NULL,\n `yokgvbrpikkhdgwxigogvwacedndkzhn` int DEFAULT NULL,\n `gnhmuynojorxkzklvidobtspifiyjagi` int DEFAULT NULL,\n `uosjdjnurzafzvzavxtjlfboghceifcg` int DEFAULT NULL,\n `idbglkoogsaqfzdzcerbnuhrytmftyqv` int DEFAULT NULL,\n `pwywaiskldshwovdvehyrwmqbwurasne` int DEFAULT NULL,\n `wxaixbswwqdwuxokislxcdbqxbzrlvhb` int DEFAULT NULL,\n `owsjgbxnojblziwdloqjosldqewcmoac` int DEFAULT NULL,\n `bdmoqkvrmfnkfhrgeksapkrghvyyvdgv` int DEFAULT NULL,\n `hgivsdkqzekjydfzkszjgyrurvvcmxue` int DEFAULT NULL,\n `stohgjfyhmkitaxlbxnnvmxuzdmrejur` int DEFAULT NULL,\n `iqzqqbmfnqnqztftugqdgvzatrnxpbeg` int DEFAULT NULL,\n `wjysjxrbzyqeufnebnycongxhbchqmmr` int DEFAULT NULL,\n `ggbtbmankqcsavbhesxdptunridhzyrx` int DEFAULT NULL,\n `ooztgjymoinjibdwqlndjruisuncvrwx` int DEFAULT NULL,\n `fsjeaeyphjqcizmrnvjswlmgvopfurqq` int DEFAULT NULL,\n `vmjtcegruqniksmlwabxpbumebouepuw` int DEFAULT NULL,\n `nngjzltrlruddgamymsjgiaqunorlyfp` int DEFAULT NULL,\n `kfwkhbdiyhilibsnfeauzfohzsqkyzjd` int DEFAULT NULL,\n `qkxsjuvlvythkicqaruwnwygtijwrmvu` int DEFAULT NULL,\n `subqsijyysgfnofdnklfxdppjrhtwjjs` int DEFAULT NULL,\n `ilnvxzeaynobhqpyblxkxdocarkbfkdq` int DEFAULT NULL,\n PRIMARY KEY (`mcytxuzbuzxbcycobevnagzmcpdlqpjf`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"nxwatrwouueiyynkxlmdmddfodlkdsgt\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["mcytxuzbuzxbcycobevnagzmcpdlqpjf"],"columns":[{"name":"mcytxuzbuzxbcycobevnagzmcpdlqpjf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"hzruefbumsfjxdtvhtrwkljaevbqqtxn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzaiocmvsrbdwqhiskqmuheeyhdylbvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"glsxumgzeevbqcnztvnikcrtzfunbhxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hubaikhvrgnxvptwvajcdcofmohfakkr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnvvzzywnstcdzlouyreszxyknxfhqne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjbgjnayyinosluywgbcokyggnutacao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqdagvdlmulfpqhfjyzsflqxfxcmbbnh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjwslfigbhvqdgdnxhtksxbqukynhtpp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tdvvwxokqxrzlrmouldpcmyziorltmjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xgnuhzhxzppcsexilxmxmhrokkegkfut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmuhdgtazydtcmohlffkjxtjjkjundss","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uatwuiggxzeicwfzdscfyiqqywyvpkch","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixpauamixsfzapxbqplcohsfwzaullpg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjqjaucyswzlkooiwpzoangbmknsnpht","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cjjrvckttyswjnezwghsrrtogcjxbhjf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzpqaujqvxyjnmsahrnmbkipqfrinrqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkxrzgrtxirstnjzuvrmkqsyihaggoxe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"stpnnuggshnfrdzhmmanigvuwficnqvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yajkehdwlmislmwgpmpwsixhdbrazjdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvalpmgcwtqpjgykdynolodfhufanhej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnncmfqfbizwlfpghffscmmcvlbrqfts","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"luntuinpjkmgxpdetbbiukmbpsbhgvrq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdibvoedxatknzsllmumzwdlhmijrneh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mowfjflvjqbatopqgjjdgsgbtazjauoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xetqsuifvtbckhpcdkmuzzgoozscevso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vuvbxrsilaqotzltxlsrwfuivzvaanrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kdtrhgosjwpiqiclqsaixbokkkpvwkjr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"etpbioedzyuykpytzqttdgxlzmbbtvpu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yewfxqwylwmlyghcdafqiypyfageniko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oakzdctiizwlbmshvkuigkipilvbwydu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbdbutxoyxftexkuzdimgznynctroojg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivstodmurkyvwxfkhhaioewcivaehfun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hotrmehlcpristfytqzmunsbwrdtovgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nrsncamchopfpinzibirirmvbszvkmzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"seemvygavpuzancxdljyxvitswujqdxe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grcafmnjeoodgnfqfddrhhvrmuwatuiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"chagkdxfiuruqdkgcokzdxmpsbcykmrb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qgyyipndgkzhjwugihbydiojmjpygqfm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdhbbfhcpeeeplbezftdtgypvkufmbbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eyvxhqbmitcfaeunkmfxtniykmzjfuvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwlkryidulexyzuoijbxfomhrrrwkkpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iynlkcemklousywaztxhfwkhmldwzpkl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kcdsdnmyisxrtalhcdcukeicwvnoxwqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpsocnymcyvjfhpjbqpxjgsaoquwoxwc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evxwtcwbdpmdhdrhkjutbtbsfhlmrtec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fiekqpgbbmptuhdzeaqemgcrggcbztbj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omecjllaamtjquzwsgmlhtvrjtemiqzu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avwthvpvoamsablvzjgotushcwgiekrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ouhgnckdmarckjyokoqsczgjfddvbaan","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zriwryphrehhnmbljswuncjhdujjsxlo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mdfllhslokxkixfpvcpfyzgzisdqgkga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmurocikmabsgwhrktltltnfupoernsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkizcnwvverpovrstunkbubopmsnenhi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynexkumpjhfqycmgntxyhvlzzcvxcile","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ioecqmmvhhskfnvgfzfqwwzzwnksiacu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovlxukuyrctknixnxztolbsrbxzpfnfz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"veavkrcfrqcwgrtjbgwidfnnrydrtomi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvhikpaehwhfzuvaapsvuvrgrtyccuuz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zyppjmxkiwqcaiisxspodqemnjvrylov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qlhksyfyzbwxxaygdcmeeewkogzvwbgu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bcuedprqwuvjhkbysuhzsbcfztquistn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"geyzanyrlusbuczwtcerkyeggeqfetwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lstzitipqmujxjddfvgrxjosjnyctbgy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qgbmefgvwqanfqntfcjjujabmfivvrpp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfxwpsmcstcaszgxdysxgxxhiqlrlhgm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"abgabfzaggpppbilixjcpxomncyksoex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orwkfxayuywolrpuvqzqnzunqiyjdrko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jnjawlzfohbxojiirtdzsunzuvqsiddi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqfjkzjrctbvkuappxkhibrnnktqfhph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"byrqdnrkugavzhxxolkcaxnvvkiseivz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zylgcfmmyyylrzdtabprgiicxwrccewe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tdedjsedalvfympnimlbaehepikfrtvn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ndvxalmiucvzekxvjnsyjcfuqkljlerk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twuegskdhavirbwpbrjkbfqhleiaoqpy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idrrdqgayidxcxsqnnitbmzqkscuwrpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wuacozbsgmytdvjexioobaqlgqtqtwxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxlrgryczinzvnzqwwbgpbzumurbckro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nnpgwgxdtbaflzpnqwmrvjmrrbgvjwyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yokgvbrpikkhdgwxigogvwacedndkzhn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnhmuynojorxkzklvidobtspifiyjagi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uosjdjnurzafzvzavxtjlfboghceifcg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idbglkoogsaqfzdzcerbnuhrytmftyqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwywaiskldshwovdvehyrwmqbwurasne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxaixbswwqdwuxokislxcdbqxbzrlvhb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owsjgbxnojblziwdloqjosldqewcmoac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bdmoqkvrmfnkfhrgeksapkrghvyyvdgv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hgivsdkqzekjydfzkszjgyrurvvcmxue","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"stohgjfyhmkitaxlbxnnvmxuzdmrejur","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqzqqbmfnqnqztftugqdgvzatrnxpbeg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjysjxrbzyqeufnebnycongxhbchqmmr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggbtbmankqcsavbhesxdptunridhzyrx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ooztgjymoinjibdwqlndjruisuncvrwx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fsjeaeyphjqcizmrnvjswlmgvopfurqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vmjtcegruqniksmlwabxpbumebouepuw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nngjzltrlruddgamymsjgiaqunorlyfp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfwkhbdiyhilibsnfeauzfohzsqkyzjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qkxsjuvlvythkicqaruwnwygtijwrmvu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"subqsijyysgfnofdnklfxdppjrhtwjjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ilnvxzeaynobhqpyblxkxdocarkbfkdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669867,"databaseName":"models_schema","ddl":"CREATE TABLE `nyhwscsvzxplglrwnsgvsfidffshzfly` (\n `llxaxyicxjerzlfurausvewmmcxwtzsu` int NOT NULL,\n `kovcnjsiuasyefkpuzeviinfshdlqdtf` int DEFAULT NULL,\n `bqnbkecithsfhlcamnowwskvmechicat` int DEFAULT NULL,\n `iksetltlzzvoiaifjmwxivxhiwxaqbic` int DEFAULT NULL,\n `tnofctijzewodjewwjkagngshtlolpuh` int DEFAULT NULL,\n `hjhqsjylslinhkqufdxbrhieguexoxsl` int DEFAULT NULL,\n `vukfbyqbbkgqdccnieuowsbsfovfsijx` int DEFAULT NULL,\n `kpnysgwtgcbfozpxsanxcrupoisaepxr` int DEFAULT NULL,\n `ncvfzzytgccepifegeylyhbumyrhpahn` int DEFAULT NULL,\n `znspfofvychkkhchulosckoecqrdarof` int DEFAULT NULL,\n `pxazdfabpuaczpvoeeuddyzikqghwbtr` int DEFAULT NULL,\n `lzgkeppedkesmgndjedabuiggeovrkpb` int DEFAULT NULL,\n `tnipitshgmfjxdaqerppirviujhtaqrg` int DEFAULT NULL,\n `lfooqzajdybosutqbwstsmtscpvttraf` int DEFAULT NULL,\n `dxxsyttbowiyjeyjhnkqiuednbxgzdro` int DEFAULT NULL,\n `xdualsrscaspjecrevhwmtlnvuxttclc` int DEFAULT NULL,\n `wzrbxsdrzjphjgxpazikzexzvbopvbyy` int DEFAULT NULL,\n `coxukloovgqikydmuegaotxlbhcqnvia` int DEFAULT NULL,\n `fpcoqbetegqjzmmccszikmtvsnlaquri` int DEFAULT NULL,\n `luwxakonecsimoykswvyqsizdetnmyig` int DEFAULT NULL,\n `lzyaeallbqwbkigrmprasalvomwjpplu` int DEFAULT NULL,\n `uvbbnpokpfzbbnrigjsezvynykytxeaa` int DEFAULT NULL,\n `tzxsdsyloyxryceefjdjrjysbjnzwfqa` int DEFAULT NULL,\n `xnyuguwaifmyudbiuamhpsnhrkprgiso` int DEFAULT NULL,\n `kvdyumbgfngflxrfckkjwdesqjhrfetw` int DEFAULT NULL,\n `siqzbfbvvvbidyyjgbgefiqjbchdevso` int DEFAULT NULL,\n `cprrqbcwrrfntbuvvwxmplhrkuhngdml` int DEFAULT NULL,\n `mkxcvihblocneoxfjyerizwhmxbexsnb` int DEFAULT NULL,\n `wlakvdrindoblhqmjtvwmfjmrydpzsmp` int DEFAULT NULL,\n `urchksmwueapnbdkupzxavoqljsnqzwo` int DEFAULT NULL,\n `aqwrrxgqsdltfswvajjhrozfszndubsl` int DEFAULT NULL,\n `bnsroqsijzrcmuhvivczctpjzjflrrex` int DEFAULT NULL,\n `ofqoaqaoaddcgkiqmanlszckcykfijtp` int DEFAULT NULL,\n `vmealzsofyoahbcvcyesgsyravoydvpg` int DEFAULT NULL,\n `rnljznsjfgsenjdthowqpeiqhasikkky` int DEFAULT NULL,\n `bmctpaikfcrekbbxxidsjuykhmueliya` int DEFAULT NULL,\n `lpfjqtatrpwhhzupwxkpsbqdbxovinch` int DEFAULT NULL,\n `smbwddbwjcjrubszhfgjzvsjptfgmbxy` int DEFAULT NULL,\n `ejblmetjxilbmgruhizjjhebysubuumo` int DEFAULT NULL,\n `tniighngghzimcrhrqedzgdabcoxpkxx` int DEFAULT NULL,\n `nbfajgeeefruesugxwgdetmkakplisbe` int DEFAULT NULL,\n `ilifwyqqqpybcnycbmsqzpwmyeycyfwi` int DEFAULT NULL,\n `iguotwrkguplvheeefkroketmvicpnwf` int DEFAULT NULL,\n `urtsgciqrtwwlwuclzoqrngaixrylqyt` int DEFAULT NULL,\n `ezyidnehynbxoktobabpkabjzqotaazn` int DEFAULT NULL,\n `hjfaozkgutkfrupaokfkdmbjwjuhxsxo` int DEFAULT NULL,\n `gcuyrbmwticghkvbqggkxrrkljygrfpj` int DEFAULT NULL,\n `ubuljmagnukchxpioowwwkxbvlxnfhun` int DEFAULT NULL,\n `wudmefcwvrrcnwvqwdwbgccauuppgont` int DEFAULT NULL,\n `wzzbivhqwfcpwzkgxbpujhpboumxrgis` int DEFAULT NULL,\n `fqruguvkfwqsfkezqhwbqtswtgfcyptn` int DEFAULT NULL,\n `rtrxrorntxyjaxtfmbrpastpjzlwgejo` int DEFAULT NULL,\n `naqnsnextgecpunrjmkjvvsssjilqezr` int DEFAULT NULL,\n `qzkxhpcclpupdvmgqvugyuvjbhhrvupb` int DEFAULT NULL,\n `oblmdkczirnsusqvyscnrdwhobyjxwia` int DEFAULT NULL,\n `gcvhviablmybrrsaodxsspidglhswbia` int DEFAULT NULL,\n `sevwwicsqnqkbgfjpvtkakpmdipwmqkw` int DEFAULT NULL,\n `axtaucsozacsmuxlbhsixhasnmejtddg` int DEFAULT NULL,\n `clucyogttaegyybdtnulfyldmgpovuuy` int DEFAULT NULL,\n `mfpqeihcpgygqyacpoekakdipgpbeoat` int DEFAULT NULL,\n `hvajytxerskxrxrdemwjdpqhomzgjfbj` int DEFAULT NULL,\n `wbwiandztrtsezzlcnqnprjfqanisyfr` int DEFAULT NULL,\n `ccxberpoimufcdzlrvqfxobfwjpigkcd` int DEFAULT NULL,\n `rbqmxjtyzxchujxnkzkwlksxzdaepcwv` int DEFAULT NULL,\n `fbmtlwafnlejwsvjjaxelxxvxffsftfe` int DEFAULT NULL,\n `lahklhrptgcmesyqudktehqbzlnezemh` int DEFAULT NULL,\n `awgeiiogumuriyxjsurbabugpqnbwrsr` int DEFAULT NULL,\n `pbotnnknmvwzpdjbvoemeupcagdjkafc` int DEFAULT NULL,\n `auhxqpprhbdcwwzelpeacvbzcgmwzypc` int DEFAULT NULL,\n `pkihmcbbohvsphisfmjouzwapybdtkij` int DEFAULT NULL,\n `hbrpwbukqfazgsnbucthgjpiwjvqyget` int DEFAULT NULL,\n `hyslxahhkvtqpgmvaoyaeycfpqdxgocg` int DEFAULT NULL,\n `jlngczzlabwiqbeucnycvmbiofanrwzq` int DEFAULT NULL,\n `jdgjtodviuymkkdgqalwhsysfkxoebts` int DEFAULT NULL,\n `nbjvsawxpdvaqkkhsnkwhrrpipvoqiiq` int DEFAULT NULL,\n `suhqguuggkwijvumjsncsvzcbfgyahwx` int DEFAULT NULL,\n `iwhywrlftgkzyzgpiatrfygfknyieaoi` int DEFAULT NULL,\n `zbfuurgitccrbgddvxbtcpbozdkmdnqo` int DEFAULT NULL,\n `wddfcjqymaglalyakdnbnacaeroonmpk` int DEFAULT NULL,\n `rugcxrvmrrojbuzyvrekgrftfugdipin` int DEFAULT NULL,\n `biyqrrgqyvydtqozbtldsapdihhooafj` int DEFAULT NULL,\n `xkbwereetijrtizvkdnytttsendgmyuc` int DEFAULT NULL,\n `tojomehsosgaejypinfsmykvnhomrssw` int DEFAULT NULL,\n `uunzgolgvfocchptjatxslmbyqouknmz` int DEFAULT NULL,\n `hguononhdcweawbtwogrtpjpvsbaokrl` int DEFAULT NULL,\n `efqmrzhxmhetqzgrzpuhygpwdyievqzf` int DEFAULT NULL,\n `owlgzdggacziskbjkcaorcbxscgvlkis` int DEFAULT NULL,\n `vpfwizdbczxispllxtgnbwsgwkgvzced` int DEFAULT NULL,\n `jhpodrfwgjzqlkhrganfgpwnhsvjzarj` int DEFAULT NULL,\n `hpwpxjoxkbtfcyjnczvruidawoiwdwjz` int DEFAULT NULL,\n `mocgkuvtgpqkktebneljarawajvtdrbk` int DEFAULT NULL,\n `hytbtbhfaxqkbjlwunjgmqlghaqkseku` int DEFAULT NULL,\n `iwrtoctztrqugfnwawhwvavyefynxenm` int DEFAULT NULL,\n `xssitqjguhxisxrolzoeltwjixerutli` int DEFAULT NULL,\n `earezyksfafkivzevwwxtzravbenebnt` int DEFAULT NULL,\n `vtytyejbuijjpccgakabvssszbahjbzq` int DEFAULT NULL,\n `wseftzfwlraucmrqmsewdmcmqwphmbfr` int DEFAULT NULL,\n `nacuekibqxxxjxazlnorvyiohreglbaj` int DEFAULT NULL,\n `kpzotskfmjallyuioyphyszqpmfcdbhu` int DEFAULT NULL,\n `gqsgtpihkpdswovneojnckycgbvijbtm` int DEFAULT NULL,\n PRIMARY KEY (`llxaxyicxjerzlfurausvewmmcxwtzsu`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"nyhwscsvzxplglrwnsgvsfidffshzfly\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["llxaxyicxjerzlfurausvewmmcxwtzsu"],"columns":[{"name":"llxaxyicxjerzlfurausvewmmcxwtzsu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"kovcnjsiuasyefkpuzeviinfshdlqdtf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqnbkecithsfhlcamnowwskvmechicat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iksetltlzzvoiaifjmwxivxhiwxaqbic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnofctijzewodjewwjkagngshtlolpuh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjhqsjylslinhkqufdxbrhieguexoxsl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vukfbyqbbkgqdccnieuowsbsfovfsijx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kpnysgwtgcbfozpxsanxcrupoisaepxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ncvfzzytgccepifegeylyhbumyrhpahn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znspfofvychkkhchulosckoecqrdarof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxazdfabpuaczpvoeeuddyzikqghwbtr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lzgkeppedkesmgndjedabuiggeovrkpb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnipitshgmfjxdaqerppirviujhtaqrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfooqzajdybosutqbwstsmtscpvttraf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxxsyttbowiyjeyjhnkqiuednbxgzdro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdualsrscaspjecrevhwmtlnvuxttclc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzrbxsdrzjphjgxpazikzexzvbopvbyy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"coxukloovgqikydmuegaotxlbhcqnvia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpcoqbetegqjzmmccszikmtvsnlaquri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"luwxakonecsimoykswvyqsizdetnmyig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lzyaeallbqwbkigrmprasalvomwjpplu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvbbnpokpfzbbnrigjsezvynykytxeaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tzxsdsyloyxryceefjdjrjysbjnzwfqa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnyuguwaifmyudbiuamhpsnhrkprgiso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvdyumbgfngflxrfckkjwdesqjhrfetw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"siqzbfbvvvbidyyjgbgefiqjbchdevso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cprrqbcwrrfntbuvvwxmplhrkuhngdml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkxcvihblocneoxfjyerizwhmxbexsnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wlakvdrindoblhqmjtvwmfjmrydpzsmp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urchksmwueapnbdkupzxavoqljsnqzwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqwrrxgqsdltfswvajjhrozfszndubsl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnsroqsijzrcmuhvivczctpjzjflrrex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofqoaqaoaddcgkiqmanlszckcykfijtp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vmealzsofyoahbcvcyesgsyravoydvpg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnljznsjfgsenjdthowqpeiqhasikkky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bmctpaikfcrekbbxxidsjuykhmueliya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lpfjqtatrpwhhzupwxkpsbqdbxovinch","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smbwddbwjcjrubszhfgjzvsjptfgmbxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejblmetjxilbmgruhizjjhebysubuumo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tniighngghzimcrhrqedzgdabcoxpkxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbfajgeeefruesugxwgdetmkakplisbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ilifwyqqqpybcnycbmsqzpwmyeycyfwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iguotwrkguplvheeefkroketmvicpnwf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urtsgciqrtwwlwuclzoqrngaixrylqyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezyidnehynbxoktobabpkabjzqotaazn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjfaozkgutkfrupaokfkdmbjwjuhxsxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gcuyrbmwticghkvbqggkxrrkljygrfpj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubuljmagnukchxpioowwwkxbvlxnfhun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wudmefcwvrrcnwvqwdwbgccauuppgont","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzzbivhqwfcpwzkgxbpujhpboumxrgis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqruguvkfwqsfkezqhwbqtswtgfcyptn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rtrxrorntxyjaxtfmbrpastpjzlwgejo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"naqnsnextgecpunrjmkjvvsssjilqezr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qzkxhpcclpupdvmgqvugyuvjbhhrvupb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oblmdkczirnsusqvyscnrdwhobyjxwia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gcvhviablmybrrsaodxsspidglhswbia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sevwwicsqnqkbgfjpvtkakpmdipwmqkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axtaucsozacsmuxlbhsixhasnmejtddg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"clucyogttaegyybdtnulfyldmgpovuuy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mfpqeihcpgygqyacpoekakdipgpbeoat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hvajytxerskxrxrdemwjdpqhomzgjfbj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbwiandztrtsezzlcnqnprjfqanisyfr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ccxberpoimufcdzlrvqfxobfwjpigkcd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbqmxjtyzxchujxnkzkwlksxzdaepcwv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbmtlwafnlejwsvjjaxelxxvxffsftfe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lahklhrptgcmesyqudktehqbzlnezemh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awgeiiogumuriyxjsurbabugpqnbwrsr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbotnnknmvwzpdjbvoemeupcagdjkafc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"auhxqpprhbdcwwzelpeacvbzcgmwzypc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkihmcbbohvsphisfmjouzwapybdtkij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbrpwbukqfazgsnbucthgjpiwjvqyget","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hyslxahhkvtqpgmvaoyaeycfpqdxgocg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlngczzlabwiqbeucnycvmbiofanrwzq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdgjtodviuymkkdgqalwhsysfkxoebts","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbjvsawxpdvaqkkhsnkwhrrpipvoqiiq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"suhqguuggkwijvumjsncsvzcbfgyahwx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwhywrlftgkzyzgpiatrfygfknyieaoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbfuurgitccrbgddvxbtcpbozdkmdnqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wddfcjqymaglalyakdnbnacaeroonmpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rugcxrvmrrojbuzyvrekgrftfugdipin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"biyqrrgqyvydtqozbtldsapdihhooafj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkbwereetijrtizvkdnytttsendgmyuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tojomehsosgaejypinfsmykvnhomrssw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uunzgolgvfocchptjatxslmbyqouknmz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hguononhdcweawbtwogrtpjpvsbaokrl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"efqmrzhxmhetqzgrzpuhygpwdyievqzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owlgzdggacziskbjkcaorcbxscgvlkis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpfwizdbczxispllxtgnbwsgwkgvzced","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jhpodrfwgjzqlkhrganfgpwnhsvjzarj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hpwpxjoxkbtfcyjnczvruidawoiwdwjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mocgkuvtgpqkktebneljarawajvtdrbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hytbtbhfaxqkbjlwunjgmqlghaqkseku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwrtoctztrqugfnwawhwvavyefynxenm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xssitqjguhxisxrolzoeltwjixerutli","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"earezyksfafkivzevwwxtzravbenebnt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtytyejbuijjpccgakabvssszbahjbzq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wseftzfwlraucmrqmsewdmcmqwphmbfr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nacuekibqxxxjxazlnorvyiohreglbaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kpzotskfmjallyuioyphyszqpmfcdbhu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqsgtpihkpdswovneojnckycgbvijbtm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669901,"databaseName":"models_schema","ddl":"CREATE TABLE `nyrgogpbmkyjitqgmdttnyaxvmfppyld` (\n `foxepsvxtajfkwrgcmxrbimowcgpgwsm` int NOT NULL,\n `peyybeodhvpuyrtgozbwfoyeojuinsuc` int DEFAULT NULL,\n `kdstddnexziadkgykgpturuseyoutigy` int DEFAULT NULL,\n `wvqwnmuryypegjyxbzqgtbxteqjtkjex` int DEFAULT NULL,\n `tudqskpewnpwpxdivgfayatoqnkskhgk` int DEFAULT NULL,\n `ljkesgapzhitijtirlreecrgmojeomsc` int DEFAULT NULL,\n `hkeyxmriyaxekxvyrzitwjtxjobckjkr` int DEFAULT NULL,\n `xgcaueifksyqiwzjqbfvnrxskbfvwihw` int DEFAULT NULL,\n `ahqhucvzazebhbpfsxdwzcqpylxbhajx` int DEFAULT NULL,\n `nhzmlaumzboajqnipyvbebuashtpveui` int DEFAULT NULL,\n `pvavkngssuvkukexiedmmivyinkwgyse` int DEFAULT NULL,\n `evmhkixoeekfgjojmfjgqzjuxxiwimdm` int DEFAULT NULL,\n `ajhhgvotwqljcxenpzwoziuwcedtcjml` int DEFAULT NULL,\n `ousnrlzmsxzqvxehzmxzmxumahhdfjdm` int DEFAULT NULL,\n `rjmqmvuqdccrzgliyoujdrqaocfauwww` int DEFAULT NULL,\n `rwpodptofjblthkqqrhamcbrhhlhmuln` int DEFAULT NULL,\n `oemmxheoifpahjmdvnkvfqxhpwvgxnlz` int DEFAULT NULL,\n `ausegpnopdcwdrpszukbfwxelmicuzgy` int DEFAULT NULL,\n `tifdzcxfptdnytiutlshppkfanniedtl` int DEFAULT NULL,\n `wvybboihpzvpotpftoefdvehvxlcjroa` int DEFAULT NULL,\n `zjhgrgplnaflgtxojszgzppqxmaatcdu` int DEFAULT NULL,\n `kansruxyacrcumzcdzadstyiepudywil` int DEFAULT NULL,\n `ykkpfgwjdjqdpuqjmcmxbryvajblqamc` int DEFAULT NULL,\n `bklyygxjzzryqnfzkywiiytwtnvcstlf` int DEFAULT NULL,\n `prgkglvrmcgsujdzvspzwqknfgdksuha` int DEFAULT NULL,\n `kxyuligzfwhdfhtdkaiuyafrtvfxnqav` int DEFAULT NULL,\n `pmbrzfkdozidfsgctofjhcstjpqpmwuf` int DEFAULT NULL,\n `xelquouudbwhmfjfqqbkkbqzqfqbybha` int DEFAULT NULL,\n `ryyskrmdzmmcexvhszdrkvzhygrtntfh` int DEFAULT NULL,\n `qscizwrdcqkrrdyaatcvzrpfkaferzsa` int DEFAULT NULL,\n `bgcztbcxcsupkzrpeywwdcknrczhskxx` int DEFAULT NULL,\n `zhkfbkcotuoyklohnreuangfuaheyfoe` int DEFAULT NULL,\n `cobpienhsyhxvrvxrjtrrszmvjahnuip` int DEFAULT NULL,\n `ykdhgeghytfbbwggdrjznenjldapmbwj` int DEFAULT NULL,\n `rikoxvwvytdxkrazaqvdwoeijlhiwzmg` int DEFAULT NULL,\n `dqsrbtqslpsvsmwxryczbvsexshsyezx` int DEFAULT NULL,\n `yyzlpdjqbhputxeodfegthkoshlybouh` int DEFAULT NULL,\n `rjexadpynjcdzncdjfnbeyqjjndlndwp` int DEFAULT NULL,\n `bqwxdhavwschkskuzewjkpspwzdtenuq` int DEFAULT NULL,\n `honiamnaexcaygkyrglkrjcgrzjlhwhh` int DEFAULT NULL,\n `offtznutwgwoydbcvolnzhnndoymuxqe` int DEFAULT NULL,\n `bqqogcrxjvzdmdxedjmadszkniybofxv` int DEFAULT NULL,\n `pdxgfpikafltlourvpirscygznbaqssq` int DEFAULT NULL,\n `fnaxbrlijngizcaeyxgbhchruowspmso` int DEFAULT NULL,\n `zmtqrtzszvgwhjdmnpkipoaqexockbmd` int DEFAULT NULL,\n `rxfcxajnigzxagoofagbrqqxwyejkmzj` int DEFAULT NULL,\n `gesebrbjrhhmyoadphyzaocknqaluooc` int DEFAULT NULL,\n `mzachgfywvbiflbexduzhjaojrnkpoix` int DEFAULT NULL,\n `doltzuwoyduqwojdqcrynuhxfirfwvkc` int DEFAULT NULL,\n `acaookgldzddaartuofhpqwpbiobyznu` int DEFAULT NULL,\n `hecwnhvxvrjjrzhnjswdinvspuxlcnzv` int DEFAULT NULL,\n `rzbzlverctrvevudxalusyjeqbdlkzfl` int DEFAULT NULL,\n `ksfgqrcokcdoieyoyodbypltitrnsnct` int DEFAULT NULL,\n `eoxnexhsqeycpeseypiuhzzadsxwvgfs` int DEFAULT NULL,\n `mqopupgqbijvksvhopqjdiqjazdhvooa` int DEFAULT NULL,\n `euqxoxrgciobadjemtoyjdovrcpxuvpj` int DEFAULT NULL,\n `lxjmmwqjyfumgurscanxsioisqsnpsvh` int DEFAULT NULL,\n `geqlqzmnxqmwvqibfozetrgiuvexhync` int DEFAULT NULL,\n `ntvchzxtrgrmbopeysntlindpufcnxau` int DEFAULT NULL,\n `xjlumbctvgnfbpcwozefcdvwkgtyxlox` int DEFAULT NULL,\n `eyynuxgyzzqjgeriydbxumgfnrlxngey` int DEFAULT NULL,\n `hhqklyjdpxiyluougsotimxymvblgwbk` int DEFAULT NULL,\n `rwwbvrmwurdgspltglgxvrryftwswuti` int DEFAULT NULL,\n `qardftkaunobzmhwnojkxzerwfzmyrmt` int DEFAULT NULL,\n `rxthdlfnlgbcmnilmwvrsjelqnigijkw` int DEFAULT NULL,\n `jicckblczdzzzapihcfxoacleufgniqm` int DEFAULT NULL,\n `sejpzvmcyawyuqzmzlpekxhbitckrcip` int DEFAULT NULL,\n `qlvzdnmsmkcxhakrgyboygkmzqmldbwb` int DEFAULT NULL,\n `ptjwtmybpbkjrapwgpkpzttefplrafog` int DEFAULT NULL,\n `zgpiziygxccdfvhtegcxijojaalritpy` int DEFAULT NULL,\n `cwdvavuhwzrwdvwwmoccbcuqjfrrlyak` int DEFAULT NULL,\n `zhjbjlzbjusfwubjjnbbfxqenqptzinx` int DEFAULT NULL,\n `rbroipropllbnghltbphwheoshufkhxv` int DEFAULT NULL,\n `whwcijtzlsiisihwuzyuhiqxybiobudj` int DEFAULT NULL,\n `rtlbzwnwrpoopsatksnimqiqjashwwyw` int DEFAULT NULL,\n `kwuqonkbhofpglamqddgfjdianmaqfdy` int DEFAULT NULL,\n `cibpcmxolrvcyiibfoldytpootwtfjbo` int DEFAULT NULL,\n `hccdrmyguplpkcnatwgjyaeprclfmcwt` int DEFAULT NULL,\n `jgxudbidnzdkuctubbzbrpcbnvqeolol` int DEFAULT NULL,\n `khvfrjcbmdamqoowvdslqkqkfvatghil` int DEFAULT NULL,\n `ewnkjqxxgxysopzcrhzjtjcsuoyyybyf` int DEFAULT NULL,\n `wtewosikdrnxmsemlyzudotxvfgoeipq` int DEFAULT NULL,\n `qbvsydvnetucaponcypirpjowibdpyjo` int DEFAULT NULL,\n `uomgnhpockxnlclowusahhtjsuxsvkzj` int DEFAULT NULL,\n `ubvdyrzqdhxjzxbncwgkhahfgentppae` int DEFAULT NULL,\n `qjmfkdehubjkvkwycqvbknnmzleexhmp` int DEFAULT NULL,\n `kcjpxqaswvuawzjqntyqgkbxpbfljzai` int DEFAULT NULL,\n `eocqiogfdrlufkrcnysmwwxvscaoxfto` int DEFAULT NULL,\n `wlldzmgavdjwcafzkwyskypbliizjgzs` int DEFAULT NULL,\n `ssdkqidhtuuoeqpnxrjwxdjheipohsxx` int DEFAULT NULL,\n `jcuvprnfcudsnsonmaysknpdfgsdlvay` int DEFAULT NULL,\n `prahkhmlgwfedjkmvgkvepadrftedftf` int DEFAULT NULL,\n `xiyytddfrmrwmcpocnwhmrklxbcsntze` int DEFAULT NULL,\n `yjvdbahskcqujcfmmkgsnhaeycovalzk` int DEFAULT NULL,\n `vqqspjzuuugnlwoaciegcxyynfkozyfw` int DEFAULT NULL,\n `btftkuorodusrkcziwkhasskfwnnirvd` int DEFAULT NULL,\n `wqnfpgzxjwggsuvbhidgkwqpccrbfpkb` int DEFAULT NULL,\n `cxksauwpurexwwdaihlxnsyvqobmlcvq` int DEFAULT NULL,\n `fbkccmlffxggquftcckgzpobfomacjjh` int DEFAULT NULL,\n `jqeksfdxtmtsrvhgeqdyyzexeevsciwr` int DEFAULT NULL,\n PRIMARY KEY (`foxepsvxtajfkwrgcmxrbimowcgpgwsm`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"nyrgogpbmkyjitqgmdttnyaxvmfppyld\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["foxepsvxtajfkwrgcmxrbimowcgpgwsm"],"columns":[{"name":"foxepsvxtajfkwrgcmxrbimowcgpgwsm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"peyybeodhvpuyrtgozbwfoyeojuinsuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kdstddnexziadkgykgpturuseyoutigy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wvqwnmuryypegjyxbzqgtbxteqjtkjex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tudqskpewnpwpxdivgfayatoqnkskhgk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljkesgapzhitijtirlreecrgmojeomsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkeyxmriyaxekxvyrzitwjtxjobckjkr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xgcaueifksyqiwzjqbfvnrxskbfvwihw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ahqhucvzazebhbpfsxdwzcqpylxbhajx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhzmlaumzboajqnipyvbebuashtpveui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pvavkngssuvkukexiedmmivyinkwgyse","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evmhkixoeekfgjojmfjgqzjuxxiwimdm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajhhgvotwqljcxenpzwoziuwcedtcjml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ousnrlzmsxzqvxehzmxzmxumahhdfjdm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjmqmvuqdccrzgliyoujdrqaocfauwww","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rwpodptofjblthkqqrhamcbrhhlhmuln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oemmxheoifpahjmdvnkvfqxhpwvgxnlz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ausegpnopdcwdrpszukbfwxelmicuzgy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tifdzcxfptdnytiutlshppkfanniedtl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wvybboihpzvpotpftoefdvehvxlcjroa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjhgrgplnaflgtxojszgzppqxmaatcdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kansruxyacrcumzcdzadstyiepudywil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykkpfgwjdjqdpuqjmcmxbryvajblqamc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bklyygxjzzryqnfzkywiiytwtnvcstlf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prgkglvrmcgsujdzvspzwqknfgdksuha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxyuligzfwhdfhtdkaiuyafrtvfxnqav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmbrzfkdozidfsgctofjhcstjpqpmwuf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xelquouudbwhmfjfqqbkkbqzqfqbybha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ryyskrmdzmmcexvhszdrkvzhygrtntfh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qscizwrdcqkrrdyaatcvzrpfkaferzsa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bgcztbcxcsupkzrpeywwdcknrczhskxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhkfbkcotuoyklohnreuangfuaheyfoe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cobpienhsyhxvrvxrjtrrszmvjahnuip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykdhgeghytfbbwggdrjznenjldapmbwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rikoxvwvytdxkrazaqvdwoeijlhiwzmg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqsrbtqslpsvsmwxryczbvsexshsyezx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yyzlpdjqbhputxeodfegthkoshlybouh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjexadpynjcdzncdjfnbeyqjjndlndwp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqwxdhavwschkskuzewjkpspwzdtenuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"honiamnaexcaygkyrglkrjcgrzjlhwhh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"offtznutwgwoydbcvolnzhnndoymuxqe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqqogcrxjvzdmdxedjmadszkniybofxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdxgfpikafltlourvpirscygznbaqssq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnaxbrlijngizcaeyxgbhchruowspmso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmtqrtzszvgwhjdmnpkipoaqexockbmd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxfcxajnigzxagoofagbrqqxwyejkmzj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gesebrbjrhhmyoadphyzaocknqaluooc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzachgfywvbiflbexduzhjaojrnkpoix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"doltzuwoyduqwojdqcrynuhxfirfwvkc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"acaookgldzddaartuofhpqwpbiobyznu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hecwnhvxvrjjrzhnjswdinvspuxlcnzv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzbzlverctrvevudxalusyjeqbdlkzfl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ksfgqrcokcdoieyoyodbypltitrnsnct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eoxnexhsqeycpeseypiuhzzadsxwvgfs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqopupgqbijvksvhopqjdiqjazdhvooa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"euqxoxrgciobadjemtoyjdovrcpxuvpj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxjmmwqjyfumgurscanxsioisqsnpsvh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"geqlqzmnxqmwvqibfozetrgiuvexhync","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntvchzxtrgrmbopeysntlindpufcnxau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjlumbctvgnfbpcwozefcdvwkgtyxlox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eyynuxgyzzqjgeriydbxumgfnrlxngey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhqklyjdpxiyluougsotimxymvblgwbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rwwbvrmwurdgspltglgxvrryftwswuti","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qardftkaunobzmhwnojkxzerwfzmyrmt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxthdlfnlgbcmnilmwvrsjelqnigijkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jicckblczdzzzapihcfxoacleufgniqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sejpzvmcyawyuqzmzlpekxhbitckrcip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qlvzdnmsmkcxhakrgyboygkmzqmldbwb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ptjwtmybpbkjrapwgpkpzttefplrafog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zgpiziygxccdfvhtegcxijojaalritpy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwdvavuhwzrwdvwwmoccbcuqjfrrlyak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhjbjlzbjusfwubjjnbbfxqenqptzinx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbroipropllbnghltbphwheoshufkhxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"whwcijtzlsiisihwuzyuhiqxybiobudj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rtlbzwnwrpoopsatksnimqiqjashwwyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwuqonkbhofpglamqddgfjdianmaqfdy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cibpcmxolrvcyiibfoldytpootwtfjbo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hccdrmyguplpkcnatwgjyaeprclfmcwt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgxudbidnzdkuctubbzbrpcbnvqeolol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"khvfrjcbmdamqoowvdslqkqkfvatghil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ewnkjqxxgxysopzcrhzjtjcsuoyyybyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wtewosikdrnxmsemlyzudotxvfgoeipq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qbvsydvnetucaponcypirpjowibdpyjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uomgnhpockxnlclowusahhtjsuxsvkzj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubvdyrzqdhxjzxbncwgkhahfgentppae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjmfkdehubjkvkwycqvbknnmzleexhmp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kcjpxqaswvuawzjqntyqgkbxpbfljzai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eocqiogfdrlufkrcnysmwwxvscaoxfto","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wlldzmgavdjwcafzkwyskypbliizjgzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ssdkqidhtuuoeqpnxrjwxdjheipohsxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jcuvprnfcudsnsonmaysknpdfgsdlvay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prahkhmlgwfedjkmvgkvepadrftedftf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xiyytddfrmrwmcpocnwhmrklxbcsntze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjvdbahskcqujcfmmkgsnhaeycovalzk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqqspjzuuugnlwoaciegcxyynfkozyfw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"btftkuorodusrkcziwkhasskfwnnirvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqnfpgzxjwggsuvbhidgkwqpccrbfpkb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cxksauwpurexwwdaihlxnsyvqobmlcvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbkccmlffxggquftcckgzpobfomacjjh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jqeksfdxtmtsrvhgeqdyyzexeevsciwr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669932,"databaseName":"models_schema","ddl":"CREATE TABLE `okabqmjgjiaxwjjcnmwstkkozaoeqiiu` (\n `igrfyzcacewzwicoxkrgotwzcqvhklai` int NOT NULL,\n `hadgmpesnwwkdfhpofcbrqjaohrkupib` int DEFAULT NULL,\n `sggvakyxhmnmsixjqyejcjqkgkwmfqxb` int DEFAULT NULL,\n `jgqwxebapwvyteelrezduckahrrstlek` int DEFAULT NULL,\n `crknxfgciajabtqjywzfejvdspbudzjd` int DEFAULT NULL,\n `fsmweyvegnntvcwkrgmjxlttuusavyoi` int DEFAULT NULL,\n `fxutncihnltwbaqxccufhmpxqtcomttf` int DEFAULT NULL,\n `vpqdfmgiapceiikvpvcdhjkxejtfenws` int DEFAULT NULL,\n `wygzinvzwripfssqkmlrosevwcslfwap` int DEFAULT NULL,\n `aobmbemtzudakrqohpoeiqsrnnuhpwtl` int DEFAULT NULL,\n `jmmrqlmgghtafodwgxxmqslhqrbkugeb` int DEFAULT NULL,\n `mrwhovwrbjdrvzvjdtklyuebsobosxcy` int DEFAULT NULL,\n `suvrgmyxadgkooissvkoaeslipcpnqcm` int DEFAULT NULL,\n `bmywoixxytavknmbsjynfhlazqwtanvl` int DEFAULT NULL,\n `fnaedujcfoykyxcmgskalyrjbpzterja` int DEFAULT NULL,\n `kstujjrmfbfzkhvkfbguqygwnkwpegwo` int DEFAULT NULL,\n `flmyngfiiqonrhjgzamrsutuzppqbfec` int DEFAULT NULL,\n `kiiqpjsolhyleeeyuyjwthxsnpwzejwa` int DEFAULT NULL,\n `owvxfhabrmgbgyembuolcbmaxbrfhtgs` int DEFAULT NULL,\n `cfmxklhgiykvlkkvbxmtnkonxqkacfpq` int DEFAULT NULL,\n `srppcsizklypvyxqtlkekdaosqxydkjm` int DEFAULT NULL,\n `qkigejiyihiuihalonozkpynwyoohnfg` int DEFAULT NULL,\n `nkfqjrrfcmqjfxvipvxjdsexnpbvncjl` int DEFAULT NULL,\n `jlcpzxhvhzhjjgjvaxsixiurttgcczdq` int DEFAULT NULL,\n `ypagfqonjvvgzvybjsaqwyjbpstpkmwc` int DEFAULT NULL,\n `psqztqusqkptxggpemwbozmsyrikbvgk` int DEFAULT NULL,\n `wcgcejtneuolvbaddhbdybbhvuktcpby` int DEFAULT NULL,\n `jmeivrrbdhbzdpqacqbnimgzxrarerdq` int DEFAULT NULL,\n `qiskthvcepteqabvmtkgvhsuxokwhrbt` int DEFAULT NULL,\n `zcbvudrkasnqahyaintbnyznfztudlac` int DEFAULT NULL,\n `uubbwznjbtwcjpgqgmcvhfeaczdyjyda` int DEFAULT NULL,\n `zjlzonwcaljudiehgozwvebljvdzwkdl` int DEFAULT NULL,\n `tcijurkhzzeunxfzthmoqrmckeuhbezw` int DEFAULT NULL,\n `datlrmqjlmhfuifejtmmiyolauaaeiiw` int DEFAULT NULL,\n `ontphmlztaggdklqmxztpbwitiokiuiy` int DEFAULT NULL,\n `jyryuxopgniuvxnyggietmwcnyslyfjs` int DEFAULT NULL,\n `oqcrhbdbqjqbrnciaorzbrdwnmoojzzv` int DEFAULT NULL,\n `vxwjxfflvnlbbfnnacdyatnfhrrztqyv` int DEFAULT NULL,\n `qwlniemwnyrvqbzrcygwtrtzufiteuuq` int DEFAULT NULL,\n `lorttgctiirdyuzcgxsharbvyibzvtvp` int DEFAULT NULL,\n `cjvnnltrocssptyfsjarbkqyegvnuqgo` int DEFAULT NULL,\n `bdkpemptvcxpswvtvufastlriwdwcfhi` int DEFAULT NULL,\n `lkyndulplmmonpnlewxhwchssflbkgbm` int DEFAULT NULL,\n `azjxxzvpcffqqchrormydwjziwdfxzzv` int DEFAULT NULL,\n `zhfluyrpsclloyskjsxeepvktesrkkbg` int DEFAULT NULL,\n `nemdsevpucjfwqlzgqxhqspuuneeacmz` int DEFAULT NULL,\n `ztvrktjyofxqczrpokplotjseqphalmk` int DEFAULT NULL,\n `kvfkrwvfgbdyyjcngkpvttddvzwnxskf` int DEFAULT NULL,\n `dkpdyxbjzllevodmppgevmknnoeytmsz` int DEFAULT NULL,\n `daptbwlrxtqedgiajmqsagqgmeapugbg` int DEFAULT NULL,\n `ucbvvhhsfkonjudamsjgbgyalfjrfwnb` int DEFAULT NULL,\n `qpxsijovqodpqueiyfpemayktigfsuih` int DEFAULT NULL,\n `ismwrbjxxhbzoungypwwogfgqektunky` int DEFAULT NULL,\n `jydfxbczsdqpfooylmtnxkiyuyzvyfbe` int DEFAULT NULL,\n `kbrvddeiixunygqvmvudmwhjwshbheyt` int DEFAULT NULL,\n `hnfxguzlprfdzlpeqyaqukhaffeykrmj` int DEFAULT NULL,\n `gdbhmhwnhdfvtekquwccjdeuniygypwb` int DEFAULT NULL,\n `xufblcihoanjdjevvcapyjhkqjdnaxvo` int DEFAULT NULL,\n `jjpqmufarylouqgtnxqoafwzlbfuzmxh` int DEFAULT NULL,\n `jbxyjbzurbfjhijhbjpcowucijgojmol` int DEFAULT NULL,\n `bkenwipgxrvojbkcucckemhhljvbqvpn` int DEFAULT NULL,\n `ckqotttuielbgnpmdbtybcxmtsxkhnsw` int DEFAULT NULL,\n `hbtozzyqqoglqkqoflqprgwnfxdfhrwp` int DEFAULT NULL,\n `ftsssvfrwuxrxgvhhancczhvveozfwlo` int DEFAULT NULL,\n `apogleonfblvfevbcerjlllzsofazzeb` int DEFAULT NULL,\n `jsexgbywztjpofizpbdfteojpnsfggps` int DEFAULT NULL,\n `mwvgfzxdjpekffcfqpswflcqujbruxda` int DEFAULT NULL,\n `ktxkrwxppocdlxtxgltgpcpeugekcucn` int DEFAULT NULL,\n `gnwoumkvygmconrrnrpsmtojjsiyxmys` int DEFAULT NULL,\n `hhshipdinpgjjepfjluzyzndrgzhpavg` int DEFAULT NULL,\n `thdjvjsezoflycofbpywsgnmjjnvvqoi` int DEFAULT NULL,\n `dgsgimodnbrthxkwnczdsqknodoftdwb` int DEFAULT NULL,\n `ejnupjelhqmikubxsggzezhjganqqejk` int DEFAULT NULL,\n `pahicfhpnwprmcptqwaszdbxrqvfzfpc` int DEFAULT NULL,\n `qidclcanxpmmsahfubetqsjclsugljvb` int DEFAULT NULL,\n `tjzftosqnejwljwtqbwbpbkirsexzjsl` int DEFAULT NULL,\n `hhxwrxfjcgsiicctksqygdzvnsmkjnql` int DEFAULT NULL,\n `dnysnukcyykgrqtezweatrbmmgdengkp` int DEFAULT NULL,\n `ifdnhygtkoiyycpttkkktcvehzdklmqp` int DEFAULT NULL,\n `trlzegjhzqmnwxkdxfwkubdeoarhabuh` int DEFAULT NULL,\n `kolmkrkduapmlfhyicydjkkpmbttuipx` int DEFAULT NULL,\n `lihfsxmzjqvxztsxohzsoceatztqgfft` int DEFAULT NULL,\n `rzzbhpdxwshwnvndvmucjiczsjptpdol` int DEFAULT NULL,\n `ybqroluqjtbfnimmqicfrlbvsfpvqdmi` int DEFAULT NULL,\n `diipcxacjwujdjgrvmpyypfzhgalyebc` int DEFAULT NULL,\n `mdsfvzvbxbmziocgtpcgrwbsagollnap` int DEFAULT NULL,\n `thbsxqkvmimaewajhrarmftzchqrqvkm` int DEFAULT NULL,\n `scvcoldzalvgnkhssnyijqtqbrcyakkt` int DEFAULT NULL,\n `lgxniwzmkepxqapficzzmpaepowknedf` int DEFAULT NULL,\n `rdeuzvtwvjrxmghgkngyaefwqrcnmfnb` int DEFAULT NULL,\n `rjagtetivccazblauzikjayuzntzajwf` int DEFAULT NULL,\n `hmwnaeduyyxitfbyhpguleyokrtlvljt` int DEFAULT NULL,\n `gkiecxeglrpygawmnbnkdzbehfvvhvhw` int DEFAULT NULL,\n `cnnlryrpcmnwsayczdoxtasnkrpcocnd` int DEFAULT NULL,\n `tbttnmyoclrrkbxfyxnepjnhjzszpvvr` int DEFAULT NULL,\n `refkxavejptegmahfaeehpqhxfqxncqi` int DEFAULT NULL,\n `kccgswpmjaslhbzjqrmobbybeuckygts` int DEFAULT NULL,\n `lxwuwfovvdzpmrmszwjlpcunswredbxk` int DEFAULT NULL,\n `gzanlzddjmymageaptlsrrumjrdrygkk` int DEFAULT NULL,\n `rstqvfcegzurlxfovyvlvdvmnjjunapa` int DEFAULT NULL,\n PRIMARY KEY (`igrfyzcacewzwicoxkrgotwzcqvhklai`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"okabqmjgjiaxwjjcnmwstkkozaoeqiiu\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["igrfyzcacewzwicoxkrgotwzcqvhklai"],"columns":[{"name":"igrfyzcacewzwicoxkrgotwzcqvhklai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"hadgmpesnwwkdfhpofcbrqjaohrkupib","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sggvakyxhmnmsixjqyejcjqkgkwmfqxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgqwxebapwvyteelrezduckahrrstlek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"crknxfgciajabtqjywzfejvdspbudzjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fsmweyvegnntvcwkrgmjxlttuusavyoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxutncihnltwbaqxccufhmpxqtcomttf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpqdfmgiapceiikvpvcdhjkxejtfenws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wygzinvzwripfssqkmlrosevwcslfwap","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aobmbemtzudakrqohpoeiqsrnnuhpwtl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmmrqlmgghtafodwgxxmqslhqrbkugeb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrwhovwrbjdrvzvjdtklyuebsobosxcy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"suvrgmyxadgkooissvkoaeslipcpnqcm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bmywoixxytavknmbsjynfhlazqwtanvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnaedujcfoykyxcmgskalyrjbpzterja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kstujjrmfbfzkhvkfbguqygwnkwpegwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flmyngfiiqonrhjgzamrsutuzppqbfec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kiiqpjsolhyleeeyuyjwthxsnpwzejwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owvxfhabrmgbgyembuolcbmaxbrfhtgs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfmxklhgiykvlkkvbxmtnkonxqkacfpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"srppcsizklypvyxqtlkekdaosqxydkjm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qkigejiyihiuihalonozkpynwyoohnfg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nkfqjrrfcmqjfxvipvxjdsexnpbvncjl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlcpzxhvhzhjjgjvaxsixiurttgcczdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypagfqonjvvgzvybjsaqwyjbpstpkmwc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"psqztqusqkptxggpemwbozmsyrikbvgk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcgcejtneuolvbaddhbdybbhvuktcpby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmeivrrbdhbzdpqacqbnimgzxrarerdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qiskthvcepteqabvmtkgvhsuxokwhrbt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zcbvudrkasnqahyaintbnyznfztudlac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uubbwznjbtwcjpgqgmcvhfeaczdyjyda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjlzonwcaljudiehgozwvebljvdzwkdl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tcijurkhzzeunxfzthmoqrmckeuhbezw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"datlrmqjlmhfuifejtmmiyolauaaeiiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ontphmlztaggdklqmxztpbwitiokiuiy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jyryuxopgniuvxnyggietmwcnyslyfjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqcrhbdbqjqbrnciaorzbrdwnmoojzzv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxwjxfflvnlbbfnnacdyatnfhrrztqyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwlniemwnyrvqbzrcygwtrtzufiteuuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lorttgctiirdyuzcgxsharbvyibzvtvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cjvnnltrocssptyfsjarbkqyegvnuqgo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bdkpemptvcxpswvtvufastlriwdwcfhi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lkyndulplmmonpnlewxhwchssflbkgbm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"azjxxzvpcffqqchrormydwjziwdfxzzv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhfluyrpsclloyskjsxeepvktesrkkbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nemdsevpucjfwqlzgqxhqspuuneeacmz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ztvrktjyofxqczrpokplotjseqphalmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvfkrwvfgbdyyjcngkpvttddvzwnxskf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkpdyxbjzllevodmppgevmknnoeytmsz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"daptbwlrxtqedgiajmqsagqgmeapugbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ucbvvhhsfkonjudamsjgbgyalfjrfwnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qpxsijovqodpqueiyfpemayktigfsuih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ismwrbjxxhbzoungypwwogfgqektunky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jydfxbczsdqpfooylmtnxkiyuyzvyfbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kbrvddeiixunygqvmvudmwhjwshbheyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hnfxguzlprfdzlpeqyaqukhaffeykrmj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdbhmhwnhdfvtekquwccjdeuniygypwb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xufblcihoanjdjevvcapyjhkqjdnaxvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjpqmufarylouqgtnxqoafwzlbfuzmxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jbxyjbzurbfjhijhbjpcowucijgojmol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkenwipgxrvojbkcucckemhhljvbqvpn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ckqotttuielbgnpmdbtybcxmtsxkhnsw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbtozzyqqoglqkqoflqprgwnfxdfhrwp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftsssvfrwuxrxgvhhancczhvveozfwlo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"apogleonfblvfevbcerjlllzsofazzeb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jsexgbywztjpofizpbdfteojpnsfggps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwvgfzxdjpekffcfqpswflcqujbruxda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ktxkrwxppocdlxtxgltgpcpeugekcucn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnwoumkvygmconrrnrpsmtojjsiyxmys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhshipdinpgjjepfjluzyzndrgzhpavg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thdjvjsezoflycofbpywsgnmjjnvvqoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgsgimodnbrthxkwnczdsqknodoftdwb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejnupjelhqmikubxsggzezhjganqqejk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pahicfhpnwprmcptqwaszdbxrqvfzfpc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qidclcanxpmmsahfubetqsjclsugljvb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjzftosqnejwljwtqbwbpbkirsexzjsl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhxwrxfjcgsiicctksqygdzvnsmkjnql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dnysnukcyykgrqtezweatrbmmgdengkp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ifdnhygtkoiyycpttkkktcvehzdklmqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"trlzegjhzqmnwxkdxfwkubdeoarhabuh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kolmkrkduapmlfhyicydjkkpmbttuipx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lihfsxmzjqvxztsxohzsoceatztqgfft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzzbhpdxwshwnvndvmucjiczsjptpdol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ybqroluqjtbfnimmqicfrlbvsfpvqdmi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"diipcxacjwujdjgrvmpyypfzhgalyebc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mdsfvzvbxbmziocgtpcgrwbsagollnap","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thbsxqkvmimaewajhrarmftzchqrqvkm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"scvcoldzalvgnkhssnyijqtqbrcyakkt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgxniwzmkepxqapficzzmpaepowknedf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdeuzvtwvjrxmghgkngyaefwqrcnmfnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjagtetivccazblauzikjayuzntzajwf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmwnaeduyyxitfbyhpguleyokrtlvljt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkiecxeglrpygawmnbnkdzbehfvvhvhw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnnlryrpcmnwsayczdoxtasnkrpcocnd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbttnmyoclrrkbxfyxnepjnhjzszpvvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"refkxavejptegmahfaeehpqhxfqxncqi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kccgswpmjaslhbzjqrmobbybeuckygts","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxwuwfovvdzpmrmszwjlpcunswredbxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzanlzddjmymageaptlsrrumjrdrygkk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rstqvfcegzurlxfovyvlvdvmnjjunapa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669963,"databaseName":"models_schema","ddl":"CREATE TABLE `opxnblpgxrgsptkxokfztqjhkvdodwud` (\n `bhrlddnxfhupdkzwsfailxrxncpmocpr` int NOT NULL,\n `uspqbssyegpgvqglwbqmgzkupyxceysm` int DEFAULT NULL,\n `xaziscziuxrwvmjcbynvnlnebinnerjx` int DEFAULT NULL,\n `ibqbapyrmpdqytdoasxjggccejasvyig` int DEFAULT NULL,\n `tgjgknsdwdwcayppolejmewrvwzdtygh` int DEFAULT NULL,\n `zzgjtezcgzotkdrrkbzfjmyddaliysbu` int DEFAULT NULL,\n `kazgkasoyacjzkehmycfffaacsoqszgl` int DEFAULT NULL,\n `zbmzibktclyhbiapirdpcejwojihezxl` int DEFAULT NULL,\n `gxufqvemdiuurigjpwculxorwhdpxmwk` int DEFAULT NULL,\n `zqrnwdysrhnspcnvphdthblrabdeipzk` int DEFAULT NULL,\n `uzuuoxnrmqkuojmnasuymswmlcscnjak` int DEFAULT NULL,\n `dmvmqseajbxthjjxdrxwyyhvsoyqpmop` int DEFAULT NULL,\n `ykvtgrfrjszeqqqpktuumwldemmebxle` int DEFAULT NULL,\n `kolbftzdgdiiitvqaihhdtmwtwftejru` int DEFAULT NULL,\n `kuvdjoplgekgqdahdauuvbuxrvtvypjv` int DEFAULT NULL,\n `wptpbbyftloqxzfryjqljwqcejktpuar` int DEFAULT NULL,\n `dzgeuwqzamcbszntwgydeulemeupgmut` int DEFAULT NULL,\n `ouqnxwoclwhwovmabopbpcbdkzrqpnzi` int DEFAULT NULL,\n `zbyomsagdntupopjwknayqrhhxxdmoqy` int DEFAULT NULL,\n `qojlqupvmzkvddumgwuwhmdpevjykjvn` int DEFAULT NULL,\n `thdltsmfxjloohkjixpjgtmnyccdxkhj` int DEFAULT NULL,\n `yzketgjxgwagzrzjzkkgbvonvvcpyvuf` int DEFAULT NULL,\n `wdcqjkdqaejffgelvtcuwhukbwkskawf` int DEFAULT NULL,\n `rnrglaqssbuabnjzearcvoemencqooit` int DEFAULT NULL,\n `fyntwgipruerarvkwzxscspasfxpmidn` int DEFAULT NULL,\n `lwayozkmdpcsbwbqgtjvxqnrzrttwtbm` int DEFAULT NULL,\n `vceiivrrrarkaoxpfmacjlwiphyikxco` int DEFAULT NULL,\n `lrraypypprqdjtaiqeuzhdpduipsmtyi` int DEFAULT NULL,\n `xuhkrucmwrstyqcqrmtobujtoagmrvdk` int DEFAULT NULL,\n `bcfgjdyzxbufhfaswxtuaympwbfrwppn` int DEFAULT NULL,\n `puflzzrkonsiooglxzifiujsczondgyk` int DEFAULT NULL,\n `eslurqtgrlhjtjpvsknbuwrzkrzqbgqe` int DEFAULT NULL,\n `ysbjxmyltzlxsjbamaweegxfkxcresfc` int DEFAULT NULL,\n `cznutspyddkcymgcvnzmakkrmfamoiom` int DEFAULT NULL,\n `peiusvtvzjebbixkupaxwmitugdwuefg` int DEFAULT NULL,\n `bywiwisliflhtbondwqmtdfibnplgpcx` int DEFAULT NULL,\n `gzdotqcgxiqeeqexirrtjlryoaxzdjxf` int DEFAULT NULL,\n `mlvqjgiamapwloxmtzxfmcmuditxnqxt` int DEFAULT NULL,\n `pqnmtmwbkhguqgzytnwpgpwcdiutjjrh` int DEFAULT NULL,\n `ryfoqexlymhwqhliufpyknchxusntwxh` int DEFAULT NULL,\n `psrtbhcsssdafvltdptuxhysdlypjkun` int DEFAULT NULL,\n `ssawacippyjqpnczputubfcrcsnfiwmn` int DEFAULT NULL,\n `ffcemvqexajzpmkwnuwgblgtspqxquxv` int DEFAULT NULL,\n `shawtqptpxskkcmkshnfgyjekeowafle` int DEFAULT NULL,\n `vmvsjurqmfzlxuxlevbkcybslbdlyycw` int DEFAULT NULL,\n `nmeyifcidzhryxzjzfexdlzlgwvcccdv` int DEFAULT NULL,\n `awmwvhmtfrphmlydwarimhixaynibnzp` int DEFAULT NULL,\n `gkwjyejwsxuucwylecuegnbnmzrzmivo` int DEFAULT NULL,\n `bnmkortziznoophnhdutvmxpimuqpief` int DEFAULT NULL,\n `strrlimdqpwdgjmtxsqstdpmcvazfogv` int DEFAULT NULL,\n `dwwhvbxcswwavihukhjxntbowcsexsmn` int DEFAULT NULL,\n `ilgwrydpjfdvmbprjprobzenyfppgutn` int DEFAULT NULL,\n `rzbrgvswwbtwhgchgrgwkilxkgnetgcw` int DEFAULT NULL,\n `rujyjfgafjujijxeabrgebotpwshnowu` int DEFAULT NULL,\n `stxrxdwptibmtjlgebgusrqejwmxeova` int DEFAULT NULL,\n `ssqtzmuvtxnzyhsnqdjeczjzzgbmusvh` int DEFAULT NULL,\n `zcchxfnckzbwghteflhmcjytdsuannjo` int DEFAULT NULL,\n `yrgkzrxjcwhwuklnhamihvwbprxqmamx` int DEFAULT NULL,\n `avhqgivljvafsdyclaadxdxgdifjbgse` int DEFAULT NULL,\n `wxaprfkjrokhrzfgjixkgkdgbbaakacr` int DEFAULT NULL,\n `oyhkfsueyhewdksfybbtmfyvbwmhgowf` int DEFAULT NULL,\n `azpminavraaldspdsdbjjehahovtyzyw` int DEFAULT NULL,\n `ujjwzqmjebslvtyqflexhmmrnyuszsqx` int DEFAULT NULL,\n `hxlbkxttucyrypyteuhlkzvecbylmbqu` int DEFAULT NULL,\n `jwzbydeqkadcvndcrmotztlgxuizbcuf` int DEFAULT NULL,\n `caaecurwlrtlfhkusqvsvgphryjgycsv` int DEFAULT NULL,\n `rgirzpztfxfgcwpbzxgjeacmvymbsxtj` int DEFAULT NULL,\n `suohwobbkwruxhukmnyqdumfwplmikkd` int DEFAULT NULL,\n `ufheocmqrvdevytplwrozjszaewqzkgk` int DEFAULT NULL,\n `zbuacjzripxubghxhdzdkxhfbtqgaasi` int DEFAULT NULL,\n `cbbesrcxrhqihroalcarhveatfbpgdex` int DEFAULT NULL,\n `hgccmucystqluvzrwbbtysqemkymlpqj` int DEFAULT NULL,\n `rfstwltzlvwxqbbgryhpzwxvgtofzdnf` int DEFAULT NULL,\n `oqqkmkxfxlgipffcsxtllfenoluyndry` int DEFAULT NULL,\n `sqmwlygnlqxznofykhutlftfdwnfdeoi` int DEFAULT NULL,\n `mlkqqpxzctjundqteyqsvsyngvfzwhrw` int DEFAULT NULL,\n `pnemdqaaksatewqvkarwrqvdkqexwcpg` int DEFAULT NULL,\n `zmorxysawcwkppyvfmeagrmpprtgzkwf` int DEFAULT NULL,\n `oqvgvacqvptzicwoocrxtijxklmdmvoi` int DEFAULT NULL,\n `pgmakjtuvbzhoxbchxibuqkllgvwmzqv` int DEFAULT NULL,\n `vmqnjwtjccpqtnlnmghmmlhqaimftzea` int DEFAULT NULL,\n `ponmdhlcsjbvzrgsoqvceshuepyfifez` int DEFAULT NULL,\n `xtrnvjtseknvfvxkezfypbzsmwstxqbb` int DEFAULT NULL,\n `wkpctuzcryyqclkydvqsxlnysummslqj` int DEFAULT NULL,\n `ydgencbzhtixmfuqngphnunqbwyjrnqb` int DEFAULT NULL,\n `xserwgajrmozehmpbfdbemyylwgiytay` int DEFAULT NULL,\n `fvysqzzsdjnuvjdjwnjtgghfuqoezoxt` int DEFAULT NULL,\n `nbnsjctixzmyzinpyfxaprqzetvsmxrh` int DEFAULT NULL,\n `hsgmxzlumzxxjrgdhsemvndsedieuxyj` int DEFAULT NULL,\n `uyrofrtfdhzfjcunyojlgechimgfwvui` int DEFAULT NULL,\n `calizkwamrqhsfozzqoxuhqffdqowoiz` int DEFAULT NULL,\n `xinmmxuadfwpqecyrxbqylcxugqsqacd` int DEFAULT NULL,\n `wqvxjgajjlqqogaajoxskuerqubquicg` int DEFAULT NULL,\n `glgsfdigksmfhljmlmziycwublvjdxsa` int DEFAULT NULL,\n `dexvrvzbchnnobovwtsydwcsbgjtsszy` int DEFAULT NULL,\n `lslbuptprxnofphpymezaoxzfvuzjycr` int DEFAULT NULL,\n `mqdwqdluvdfdbyylfgkazskkwrlzgwvz` int DEFAULT NULL,\n `jmvwrzrsltsfppjttwvcnskdjuamquzm` int DEFAULT NULL,\n `hyzbwrgxmylmkhfqkkhublawjqncqqol` int DEFAULT NULL,\n `agavvorkcxicpchhfufiiefjpfeeftvq` int DEFAULT NULL,\n PRIMARY KEY (`bhrlddnxfhupdkzwsfailxrxncpmocpr`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"opxnblpgxrgsptkxokfztqjhkvdodwud\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["bhrlddnxfhupdkzwsfailxrxncpmocpr"],"columns":[{"name":"bhrlddnxfhupdkzwsfailxrxncpmocpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"uspqbssyegpgvqglwbqmgzkupyxceysm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xaziscziuxrwvmjcbynvnlnebinnerjx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibqbapyrmpdqytdoasxjggccejasvyig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tgjgknsdwdwcayppolejmewrvwzdtygh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzgjtezcgzotkdrrkbzfjmyddaliysbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kazgkasoyacjzkehmycfffaacsoqszgl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbmzibktclyhbiapirdpcejwojihezxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gxufqvemdiuurigjpwculxorwhdpxmwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqrnwdysrhnspcnvphdthblrabdeipzk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzuuoxnrmqkuojmnasuymswmlcscnjak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dmvmqseajbxthjjxdrxwyyhvsoyqpmop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykvtgrfrjszeqqqpktuumwldemmebxle","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kolbftzdgdiiitvqaihhdtmwtwftejru","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kuvdjoplgekgqdahdauuvbuxrvtvypjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wptpbbyftloqxzfryjqljwqcejktpuar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dzgeuwqzamcbszntwgydeulemeupgmut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ouqnxwoclwhwovmabopbpcbdkzrqpnzi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbyomsagdntupopjwknayqrhhxxdmoqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qojlqupvmzkvddumgwuwhmdpevjykjvn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thdltsmfxjloohkjixpjgtmnyccdxkhj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzketgjxgwagzrzjzkkgbvonvvcpyvuf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wdcqjkdqaejffgelvtcuwhukbwkskawf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnrglaqssbuabnjzearcvoemencqooit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fyntwgipruerarvkwzxscspasfxpmidn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwayozkmdpcsbwbqgtjvxqnrzrttwtbm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vceiivrrrarkaoxpfmacjlwiphyikxco","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lrraypypprqdjtaiqeuzhdpduipsmtyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xuhkrucmwrstyqcqrmtobujtoagmrvdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bcfgjdyzxbufhfaswxtuaympwbfrwppn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"puflzzrkonsiooglxzifiujsczondgyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eslurqtgrlhjtjpvsknbuwrzkrzqbgqe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ysbjxmyltzlxsjbamaweegxfkxcresfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cznutspyddkcymgcvnzmakkrmfamoiom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"peiusvtvzjebbixkupaxwmitugdwuefg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bywiwisliflhtbondwqmtdfibnplgpcx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzdotqcgxiqeeqexirrtjlryoaxzdjxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mlvqjgiamapwloxmtzxfmcmuditxnqxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqnmtmwbkhguqgzytnwpgpwcdiutjjrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ryfoqexlymhwqhliufpyknchxusntwxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"psrtbhcsssdafvltdptuxhysdlypjkun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ssawacippyjqpnczputubfcrcsnfiwmn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffcemvqexajzpmkwnuwgblgtspqxquxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shawtqptpxskkcmkshnfgyjekeowafle","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vmvsjurqmfzlxuxlevbkcybslbdlyycw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmeyifcidzhryxzjzfexdlzlgwvcccdv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awmwvhmtfrphmlydwarimhixaynibnzp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkwjyejwsxuucwylecuegnbnmzrzmivo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnmkortziznoophnhdutvmxpimuqpief","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"strrlimdqpwdgjmtxsqstdpmcvazfogv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwwhvbxcswwavihukhjxntbowcsexsmn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ilgwrydpjfdvmbprjprobzenyfppgutn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzbrgvswwbtwhgchgrgwkilxkgnetgcw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rujyjfgafjujijxeabrgebotpwshnowu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"stxrxdwptibmtjlgebgusrqejwmxeova","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ssqtzmuvtxnzyhsnqdjeczjzzgbmusvh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zcchxfnckzbwghteflhmcjytdsuannjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yrgkzrxjcwhwuklnhamihvwbprxqmamx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avhqgivljvafsdyclaadxdxgdifjbgse","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxaprfkjrokhrzfgjixkgkdgbbaakacr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oyhkfsueyhewdksfybbtmfyvbwmhgowf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"azpminavraaldspdsdbjjehahovtyzyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujjwzqmjebslvtyqflexhmmrnyuszsqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hxlbkxttucyrypyteuhlkzvecbylmbqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwzbydeqkadcvndcrmotztlgxuizbcuf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"caaecurwlrtlfhkusqvsvgphryjgycsv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgirzpztfxfgcwpbzxgjeacmvymbsxtj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"suohwobbkwruxhukmnyqdumfwplmikkd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ufheocmqrvdevytplwrozjszaewqzkgk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbuacjzripxubghxhdzdkxhfbtqgaasi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbbesrcxrhqihroalcarhveatfbpgdex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hgccmucystqluvzrwbbtysqemkymlpqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfstwltzlvwxqbbgryhpzwxvgtofzdnf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqqkmkxfxlgipffcsxtllfenoluyndry","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sqmwlygnlqxznofykhutlftfdwnfdeoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mlkqqpxzctjundqteyqsvsyngvfzwhrw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnemdqaaksatewqvkarwrqvdkqexwcpg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmorxysawcwkppyvfmeagrmpprtgzkwf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqvgvacqvptzicwoocrxtijxklmdmvoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgmakjtuvbzhoxbchxibuqkllgvwmzqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vmqnjwtjccpqtnlnmghmmlhqaimftzea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ponmdhlcsjbvzrgsoqvceshuepyfifez","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xtrnvjtseknvfvxkezfypbzsmwstxqbb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wkpctuzcryyqclkydvqsxlnysummslqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydgencbzhtixmfuqngphnunqbwyjrnqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xserwgajrmozehmpbfdbemyylwgiytay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fvysqzzsdjnuvjdjwnjtgghfuqoezoxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbnsjctixzmyzinpyfxaprqzetvsmxrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hsgmxzlumzxxjrgdhsemvndsedieuxyj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uyrofrtfdhzfjcunyojlgechimgfwvui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"calizkwamrqhsfozzqoxuhqffdqowoiz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xinmmxuadfwpqecyrxbqylcxugqsqacd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqvxjgajjlqqogaajoxskuerqubquicg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"glgsfdigksmfhljmlmziycwublvjdxsa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dexvrvzbchnnobovwtsydwcsbgjtsszy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lslbuptprxnofphpymezaoxzfvuzjycr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqdwqdluvdfdbyylfgkazskkwrlzgwvz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmvwrzrsltsfppjttwvcnskdjuamquzm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hyzbwrgxmylmkhfqkkhublawjqncqqol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agavvorkcxicpchhfufiiefjpfeeftvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842669,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842669993,"databaseName":"models_schema","ddl":"CREATE TABLE `orpveknrbipxbinvykmnqwjwotxsjuoq` (\n `gcmgmciozrplfiqyxqatbbggttrepcga` int NOT NULL,\n `mtzzfbcaldbicvzjzikafalikolmlghe` int DEFAULT NULL,\n `zwbkmjeuqzmtsqnuhtgyjjtriojhwcqq` int DEFAULT NULL,\n `yqhgirplplxjxtwqgqykhbhrxrlbhxoq` int DEFAULT NULL,\n `suhvcpkwiltgdtlocgttvyoatwuksqpm` int DEFAULT NULL,\n `envjfiwylnyejnaslyzfivpftvbobjih` int DEFAULT NULL,\n `cecazghruejvccuvotgjrsrhjoepvetn` int DEFAULT NULL,\n `pamksvzyciihvowqjelmvlkpqiolpahu` int DEFAULT NULL,\n `gsicbqqdbvabtoswrhvldyqeimikrcfn` int DEFAULT NULL,\n `embhisjjsahkhxdpwbvmdvbqdsjkuhcu` int DEFAULT NULL,\n `svtvutauklmhjpoqukqzijawfoyiovog` int DEFAULT NULL,\n `evypmmsfywgaepjxjwqjsjkbvzhtgykh` int DEFAULT NULL,\n `ucqdwjmwstajgonulgplpeirgoygtade` int DEFAULT NULL,\n `qzffnxcmuahnmizazdrwjfkmfyhgbykc` int DEFAULT NULL,\n `sfddaqyxqmxnstfyyxlegfdogdtoixxo` int DEFAULT NULL,\n `knloopvpplfeyabpuwrvzhxgepxcdoro` int DEFAULT NULL,\n `kwetensrumghzjbjitmqkberhhuzvknv` int DEFAULT NULL,\n `hceiaebeevjukuxnvkohznzgvqzemkxi` int DEFAULT NULL,\n `dcxqmshgfnkchsvnftexdfmpqgaespnp` int DEFAULT NULL,\n `vmfmulhaydvowhcptrycvbweqweqhjwy` int DEFAULT NULL,\n `afgymqgolbqytiaccxibeelidbqkcexg` int DEFAULT NULL,\n `ysqwucdyjixqduwldjhgyuxptbaksjxe` int DEFAULT NULL,\n `nzksmitukolhbtrhzmonyubvatnqrqky` int DEFAULT NULL,\n `ermbufdevmydvobilwargfmbhkbbypzw` int DEFAULT NULL,\n `xkoybgnrwzwnzynfhglvoqjixxohfwoe` int DEFAULT NULL,\n `lmhylpysewjzjomjwbzhwrxinfvddsgm` int DEFAULT NULL,\n `xkvngyqvywwtijbjugyegpvnzvzgvqds` int DEFAULT NULL,\n `zttaenjidejumcecbobvfsbjbwnviele` int DEFAULT NULL,\n `ezqphpkqfohajziadpdwetcwdztpgywg` int DEFAULT NULL,\n `feneyfoxeuxtofoznyqlmuzzolahuvjg` int DEFAULT NULL,\n `tlbmawfdepggofczjnmzavtrnedakvig` int DEFAULT NULL,\n `oxelelejdgzdbeaddmjjcsqrhixbmldk` int DEFAULT NULL,\n `vpkkhkfhujddybspxuatdazpeadyopwg` int DEFAULT NULL,\n `jolliecfytykdrkurrquzdmwykaoibgb` int DEFAULT NULL,\n `npwowrermnzchabrdrjxkafbsojmeujg` int DEFAULT NULL,\n `elkxeevwkpypcnjugyvrsqypnlgnihqt` int DEFAULT NULL,\n `sajzdeqbqhmhgddosleelcczzhqzfuch` int DEFAULT NULL,\n `hoqshmsvrpsokqkjxtjucsnpbhylrxqq` int DEFAULT NULL,\n `qhjehledosrrbzgpohtrdgirfichxgvx` int DEFAULT NULL,\n `ztnscixscngxjqmjfmucyltyarectfpc` int DEFAULT NULL,\n `lwgcayklxrwzjupkbingacpjgeoyngwq` int DEFAULT NULL,\n `ccasgklkmlmizxnhqpaaqwiojhocwknx` int DEFAULT NULL,\n `eghqzxeudivpueuevymchxoqgijijtuw` int DEFAULT NULL,\n `yairwvjngtzxrvmkbtyynqgrxcxkcaib` int DEFAULT NULL,\n `gctusyntpzumtefivxqvwdpurkuyetbq` int DEFAULT NULL,\n `hkozexdrscxvqsgbnvvipjwvfjelafdm` int DEFAULT NULL,\n `urinpazraxaedsjkgxuxyyebtwhspnkr` int DEFAULT NULL,\n `ajjstmjysvtzywntxmkwhquxhmtbsztz` int DEFAULT NULL,\n `uhhcetryogyptiihkyjznouodqzkbexs` int DEFAULT NULL,\n `nvmrsbfpyevohkufcqbjfmzrtszxaeaf` int DEFAULT NULL,\n `xymljwpfgrajmsgnatbuylhbpshajvad` int DEFAULT NULL,\n `mdxckuqssspphwwrjykcbjilkijlqmrq` int DEFAULT NULL,\n `aanixoeptvqujtoeakgztsggrnemkjdq` int DEFAULT NULL,\n `jrypddktdwfctffkimiickseoblfbfkf` int DEFAULT NULL,\n `cmcyjytkcqqvikwlvophzflpsiqnvwob` int DEFAULT NULL,\n `hjspcnnvkdnydfnhmmeofceekqdqkefv` int DEFAULT NULL,\n `mrusotcbkythoykqkvinpvjbpjazjcoa` int DEFAULT NULL,\n `apaeemsqtkrcfmkgrydorfvejhjtepme` int DEFAULT NULL,\n `mfonesmydjzzauthdahrxtinybzaxwht` int DEFAULT NULL,\n `sayeseogblqvuwxlswljmjcphxmjbvnr` int DEFAULT NULL,\n `qcdzcdzjhqdeyktjsxdibdzydpnfhynb` int DEFAULT NULL,\n `ylvaorodbtrzhwgymoxbuskrwzdmgulo` int DEFAULT NULL,\n `xxnjjlwwjdwuiggcqxlqlcthxaqtumzh` int DEFAULT NULL,\n `sqhireptqdkylmobmisxaxixtriwrsss` int DEFAULT NULL,\n `abivhomhzinhxvurhczcaydzzadvfhza` int DEFAULT NULL,\n `pxkctkligjxfuyrzyifcctanroqyutsh` int DEFAULT NULL,\n `uvupcymspjvfthkzcjpcgabiyzcpxxnc` int DEFAULT NULL,\n `hndnexbiuntjxxlkeztdewsakdjsclkj` int DEFAULT NULL,\n `ykwgelcrycorgopmouaownlojwwtxtlm` int DEFAULT NULL,\n `hdwxrunfepsvphwmzukkbskvipgxipaq` int DEFAULT NULL,\n `vbjrmkukgwtmuqagqbcbzmzckcngvfdl` int DEFAULT NULL,\n `shahjfcwxvlsqnbvmlblgbrvqhkhgqmo` int DEFAULT NULL,\n `yqvipnavauyiqsfzvvcarifklcnqaiaz` int DEFAULT NULL,\n `wnhuemnawlsybupptdlvckcwazzgdpka` int DEFAULT NULL,\n `brvaqsthyjbalqlnapufanrinwxsqzic` int DEFAULT NULL,\n `yiiopiooonbvznulceaqphxrulivbjlr` int DEFAULT NULL,\n `cqcnxcbgrxdjkbqjldvgnwjglrvtnwqx` int DEFAULT NULL,\n `thaistmhxfzqstzdwbbpmejizgvfssem` int DEFAULT NULL,\n `vimxbcmixttggjllkcwvxmmmcewoqwtc` int DEFAULT NULL,\n `qnujslyztulsawqdzrailuiujubjnmrs` int DEFAULT NULL,\n `cnjiahwdwxtqdkpsrfniazwfsxkigapb` int DEFAULT NULL,\n `cbeemnqlysihykbwrodytoijozsujjlk` int DEFAULT NULL,\n `taopokmsrgvjemhfkwdppkmxvlczyldo` int DEFAULT NULL,\n `iievlwjfgcjcwojuwbdkmeqaiwxisbyc` int DEFAULT NULL,\n `bihaacmqzlfihlrgzfutvplxaektatkt` int DEFAULT NULL,\n `tpyejkeoxmfllmogmajnujjktwnjkwkj` int DEFAULT NULL,\n `lemfstnubajpgxsnwzjjrsouqjwphhit` int DEFAULT NULL,\n `zbsgkednghogxyhmbycmhoeubqvzyjns` int DEFAULT NULL,\n `nwalajeeiuwvpilsnlxccxwgvwjatkjs` int DEFAULT NULL,\n `hagpfnqyqoarowcpznibksrvfmsdobcv` int DEFAULT NULL,\n `mgwjklyeljnwatiabsxwxhphyldcprbm` int DEFAULT NULL,\n `ixxeruewhdyqrefwpnzljohywczcocxu` int DEFAULT NULL,\n `cgdhnweunsmdyjtngoebkksnhqfgrihy` int DEFAULT NULL,\n `dovfzhpzjwmhxyltywapbjoggadowvxi` int DEFAULT NULL,\n `pnuczwguhrgefhpurbnqljmgklvhbbhz` int DEFAULT NULL,\n `aarcasxjyuykmwdjrlrqczrbdcilqvcw` int DEFAULT NULL,\n `wdqotoeonnmkqffnodoyvegmaewsvtfq` int DEFAULT NULL,\n `pdrjnnhzgwetkdivjzzlvqxunsafhrav` int DEFAULT NULL,\n `banzahuotkzrurrrjmffvijcmmfglckf` int DEFAULT NULL,\n `aejagisfxbkdmkxwcwfyyieokoaydvvq` int DEFAULT NULL,\n PRIMARY KEY (`gcmgmciozrplfiqyxqatbbggttrepcga`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"orpveknrbipxbinvykmnqwjwotxsjuoq\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["gcmgmciozrplfiqyxqatbbggttrepcga"],"columns":[{"name":"gcmgmciozrplfiqyxqatbbggttrepcga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"mtzzfbcaldbicvzjzikafalikolmlghe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zwbkmjeuqzmtsqnuhtgyjjtriojhwcqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqhgirplplxjxtwqgqykhbhrxrlbhxoq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"suhvcpkwiltgdtlocgttvyoatwuksqpm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"envjfiwylnyejnaslyzfivpftvbobjih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cecazghruejvccuvotgjrsrhjoepvetn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pamksvzyciihvowqjelmvlkpqiolpahu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gsicbqqdbvabtoswrhvldyqeimikrcfn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"embhisjjsahkhxdpwbvmdvbqdsjkuhcu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"svtvutauklmhjpoqukqzijawfoyiovog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evypmmsfywgaepjxjwqjsjkbvzhtgykh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ucqdwjmwstajgonulgplpeirgoygtade","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qzffnxcmuahnmizazdrwjfkmfyhgbykc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfddaqyxqmxnstfyyxlegfdogdtoixxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knloopvpplfeyabpuwrvzhxgepxcdoro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwetensrumghzjbjitmqkberhhuzvknv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hceiaebeevjukuxnvkohznzgvqzemkxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcxqmshgfnkchsvnftexdfmpqgaespnp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vmfmulhaydvowhcptrycvbweqweqhjwy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afgymqgolbqytiaccxibeelidbqkcexg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ysqwucdyjixqduwldjhgyuxptbaksjxe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzksmitukolhbtrhzmonyubvatnqrqky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ermbufdevmydvobilwargfmbhkbbypzw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkoybgnrwzwnzynfhglvoqjixxohfwoe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmhylpysewjzjomjwbzhwrxinfvddsgm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkvngyqvywwtijbjugyegpvnzvzgvqds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zttaenjidejumcecbobvfsbjbwnviele","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezqphpkqfohajziadpdwetcwdztpgywg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"feneyfoxeuxtofoznyqlmuzzolahuvjg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlbmawfdepggofczjnmzavtrnedakvig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oxelelejdgzdbeaddmjjcsqrhixbmldk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpkkhkfhujddybspxuatdazpeadyopwg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jolliecfytykdrkurrquzdmwykaoibgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"npwowrermnzchabrdrjxkafbsojmeujg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"elkxeevwkpypcnjugyvrsqypnlgnihqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sajzdeqbqhmhgddosleelcczzhqzfuch","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hoqshmsvrpsokqkjxtjucsnpbhylrxqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhjehledosrrbzgpohtrdgirfichxgvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ztnscixscngxjqmjfmucyltyarectfpc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwgcayklxrwzjupkbingacpjgeoyngwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ccasgklkmlmizxnhqpaaqwiojhocwknx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eghqzxeudivpueuevymchxoqgijijtuw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yairwvjngtzxrvmkbtyynqgrxcxkcaib","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gctusyntpzumtefivxqvwdpurkuyetbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkozexdrscxvqsgbnvvipjwvfjelafdm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urinpazraxaedsjkgxuxyyebtwhspnkr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajjstmjysvtzywntxmkwhquxhmtbsztz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhhcetryogyptiihkyjznouodqzkbexs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvmrsbfpyevohkufcqbjfmzrtszxaeaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xymljwpfgrajmsgnatbuylhbpshajvad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mdxckuqssspphwwrjykcbjilkijlqmrq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aanixoeptvqujtoeakgztsggrnemkjdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jrypddktdwfctffkimiickseoblfbfkf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmcyjytkcqqvikwlvophzflpsiqnvwob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjspcnnvkdnydfnhmmeofceekqdqkefv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrusotcbkythoykqkvinpvjbpjazjcoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"apaeemsqtkrcfmkgrydorfvejhjtepme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mfonesmydjzzauthdahrxtinybzaxwht","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sayeseogblqvuwxlswljmjcphxmjbvnr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qcdzcdzjhqdeyktjsxdibdzydpnfhynb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ylvaorodbtrzhwgymoxbuskrwzdmgulo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxnjjlwwjdwuiggcqxlqlcthxaqtumzh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sqhireptqdkylmobmisxaxixtriwrsss","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"abivhomhzinhxvurhczcaydzzadvfhza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxkctkligjxfuyrzyifcctanroqyutsh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvupcymspjvfthkzcjpcgabiyzcpxxnc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hndnexbiuntjxxlkeztdewsakdjsclkj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykwgelcrycorgopmouaownlojwwtxtlm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdwxrunfepsvphwmzukkbskvipgxipaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbjrmkukgwtmuqagqbcbzmzckcngvfdl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shahjfcwxvlsqnbvmlblgbrvqhkhgqmo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqvipnavauyiqsfzvvcarifklcnqaiaz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnhuemnawlsybupptdlvckcwazzgdpka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"brvaqsthyjbalqlnapufanrinwxsqzic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yiiopiooonbvznulceaqphxrulivbjlr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqcnxcbgrxdjkbqjldvgnwjglrvtnwqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thaistmhxfzqstzdwbbpmejizgvfssem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vimxbcmixttggjllkcwvxmmmcewoqwtc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qnujslyztulsawqdzrailuiujubjnmrs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnjiahwdwxtqdkpsrfniazwfsxkigapb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbeemnqlysihykbwrodytoijozsujjlk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"taopokmsrgvjemhfkwdppkmxvlczyldo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iievlwjfgcjcwojuwbdkmeqaiwxisbyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bihaacmqzlfihlrgzfutvplxaektatkt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpyejkeoxmfllmogmajnujjktwnjkwkj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lemfstnubajpgxsnwzjjrsouqjwphhit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbsgkednghogxyhmbycmhoeubqvzyjns","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nwalajeeiuwvpilsnlxccxwgvwjatkjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hagpfnqyqoarowcpznibksrvfmsdobcv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mgwjklyeljnwatiabsxwxhphyldcprbm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixxeruewhdyqrefwpnzljohywczcocxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgdhnweunsmdyjtngoebkksnhqfgrihy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dovfzhpzjwmhxyltywapbjoggadowvxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnuczwguhrgefhpurbnqljmgklvhbbhz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aarcasxjyuykmwdjrlrqczrbdcilqvcw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wdqotoeonnmkqffnodoyvegmaewsvtfq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdrjnnhzgwetkdivjzzlvqxunsafhrav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"banzahuotkzrurrrjmffvijcmmfglckf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aejagisfxbkdmkxwcwfyyieokoaydvvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670025,"databaseName":"models_schema","ddl":"CREATE TABLE `otmhuzxdzfbyzubxhxxqqnfslkmomovx` (\n `cwcuujmmwoqnqoqatvthswqslbxapagf` int NOT NULL,\n `rfctjaglbbmucilrhohzwlosmoutmvhb` int DEFAULT NULL,\n `ifautkhnbytvbtvotsbkfjudxjnbmwci` int DEFAULT NULL,\n `icpejdtlwwjkxidlnbngftlcksjdrxny` int DEFAULT NULL,\n `cqjbfxlkgtwhlbibnudmqqujzoocowdw` int DEFAULT NULL,\n `tcnwrfmnwjfrejheolnojhdrrvqeeoei` int DEFAULT NULL,\n `aourlkkbgnphwwtvfirklxewuwxjkgge` int DEFAULT NULL,\n `wyjzpjkryqqffsnykekacqfggdqfpern` int DEFAULT NULL,\n `kqtvrbcsoleclxoxcqtsckgdunfzgqku` int DEFAULT NULL,\n `faijydwaxpgxwuwopdjqfihjyoesmwck` int DEFAULT NULL,\n `zggaktezddubnabhspavymnaynvaanko` int DEFAULT NULL,\n `hrwzgudobbidrxrtlhpjxypvenqivsah` int DEFAULT NULL,\n `tsepocdgecedorntefknyccyynqxadvk` int DEFAULT NULL,\n `utvxoosrivakwxplyycjgvbdlrkxiaqo` int DEFAULT NULL,\n `itqphpgmgjigaxrkelehylprxheopdcs` int DEFAULT NULL,\n `ggketmmdpoozcqbdbwipivqunosbhpxl` int DEFAULT NULL,\n `oslbhrntpqhxpxosxvakveohbrroiowi` int DEFAULT NULL,\n `gevyadaaeqvqykdhrdocxwtralejsbvf` int DEFAULT NULL,\n `gvrhxkifasuwmykiibncerfsekcgkwtv` int DEFAULT NULL,\n `vttuwcorwgygnopxphhkpovlhzrwuxxx` int DEFAULT NULL,\n `cxjskzsaejaibbhsisrtvnubfwljfhih` int DEFAULT NULL,\n `evinoknzduvryplamhcrnxbdmxoicztu` int DEFAULT NULL,\n `quiagncmrfinblpryyiwtijssisxqxfy` int DEFAULT NULL,\n `rrpgdzacwwuaqhtpyoerjzcxqwsctdoh` int DEFAULT NULL,\n `rrzmluqanhcqqkfivsyaeraeubijsghv` int DEFAULT NULL,\n `yiqmttmfasxkffzullfrsiaoaxbtljnc` int DEFAULT NULL,\n `nvtkfbkdtbukjuvwajeenqqtaoypcwfe` int DEFAULT NULL,\n `fsccgrvvxskozkzwheonufuenelsuyjt` int DEFAULT NULL,\n `efyxssnpfsgdbldjyijzclaguqtfzqeh` int DEFAULT NULL,\n `ifucyeohsxrvjeiuibmtplmtrcyoxnce` int DEFAULT NULL,\n `zrjydmtqvyfggqtlabqdmljwwubiuzrw` int DEFAULT NULL,\n `ehurpxcutbuwbeggbyjfkqxcysomzght` int DEFAULT NULL,\n `noznbgsxsswhzugfnltlifbcalvuonlt` int DEFAULT NULL,\n `rchgdypjmqsaohvbiaukvyknvunqndvr` int DEFAULT NULL,\n `rcabsjmyoujfvlllrknmablujpidykzn` int DEFAULT NULL,\n `duwaecnybpdyofxfmqhbkozjtskecufx` int DEFAULT NULL,\n `cjrlrqvdtimrmmplfkwrfmkxaxhrvoyr` int DEFAULT NULL,\n `lukoxlvuxsuhvxsuyzcexehlhkmoipzs` int DEFAULT NULL,\n `yxfgkinnxppcrlnykulrehifxfbgqbio` int DEFAULT NULL,\n `ylokesrlnopvosmpradnusvwpfdpbdop` int DEFAULT NULL,\n `hfaqtlofhijomybqawounkfnulmmceeo` int DEFAULT NULL,\n `qymienpbpbcvspvddpjbmekqzwtjvaoy` int DEFAULT NULL,\n `bcmdcydytgaqzzahfpifhczkpghizjnb` int DEFAULT NULL,\n `jgabcwzllqfwcnlrsnnmlkkbjfxcdzak` int DEFAULT NULL,\n `mwmdmrbvgpoygvweghhzzycrztqxntme` int DEFAULT NULL,\n `qssmggqudxvczhejgxetthbpyojqkdxy` int DEFAULT NULL,\n `gcwkfostrwkijuzvcgcpwvivtdldbrhq` int DEFAULT NULL,\n `suzugnzuicvbkfpvzpimvnehbejkkazd` int DEFAULT NULL,\n `onsnlmvtmyeumfstfhxravcibtozsqmt` int DEFAULT NULL,\n `gnruzissolrslfbrosqurvqaqbeiahtx` int DEFAULT NULL,\n `mpqacdkdkwahsxaejxblsslaenzulbtn` int DEFAULT NULL,\n `bqbzxmsrqevuxpugslbhsbdgpjlhhlpm` int DEFAULT NULL,\n `uyxgsgjncehybfpzienacvlyrutllgkl` int DEFAULT NULL,\n `gyxeakpbipsiqcaebqadmqnqhupjvoip` int DEFAULT NULL,\n `semoylzqjrfciloehijxvwzoplsgtudi` int DEFAULT NULL,\n `qijdnwckfxdvvyjreoibtvnirjbnpkrx` int DEFAULT NULL,\n `zwnyngnyhmhxttqgonjnrbhkfjcoxpkq` int DEFAULT NULL,\n `etktalllsuwuzeacwvptaszbjtcsqqox` int DEFAULT NULL,\n `tuoxyfxxozqxyajtayjrmvfvlwdqiewe` int DEFAULT NULL,\n `rbbchrptmzyprqrbfctnburlufbquqxr` int DEFAULT NULL,\n `ynufjmyieyjucbptfvxlfvvjdrueqshd` int DEFAULT NULL,\n `pmdrlfgxvafikoqkexdqxkkkshrekvoi` int DEFAULT NULL,\n `jutfhaleshphlkwlhxcggevxcbyqhfku` int DEFAULT NULL,\n `grnjfzzsayqkgipqqzeawdynkslykljg` int DEFAULT NULL,\n `plmirucnhqfbwnllarasayncnanfajud` int DEFAULT NULL,\n `fckfwzfhalmhjhvufuzonvwdxqkpkuny` int DEFAULT NULL,\n `ulguptdoyumgibhzewpojbrnwwegvrga` int DEFAULT NULL,\n `zfnegrwllpbmyzjdczucfmvadyowttij` int DEFAULT NULL,\n `upjdyepjcricghkyxbavqoawpfcbhewr` int DEFAULT NULL,\n `kjqrcbpsdspehtjgwdebyhkkeajbkqrr` int DEFAULT NULL,\n `ymkcmgzxkbnwedfrwbtpmlubzpklraqn` int DEFAULT NULL,\n `ogxdjjnkphayiipippqundlahoajdalk` int DEFAULT NULL,\n `hngoohrvlxlbbwaarxkiwjmypaugfbks` int DEFAULT NULL,\n `upspxlhetfhejfhnhxmazkevfmcawspk` int DEFAULT NULL,\n `guzzrdvjgkceimoecypfmaflalihixdm` int DEFAULT NULL,\n `tylgvoqiwuifihyrlisevoqipdarsrst` int DEFAULT NULL,\n `dfcyhlwnbuuzferjvmohocdifnxrmkww` int DEFAULT NULL,\n `jvqwfhaucczckpmhlydynvrqzqgjjngg` int DEFAULT NULL,\n `mwumersnxdurumuxqudckwmjlrbejkxd` int DEFAULT NULL,\n `zxxnqxikucovxojbhqqobdjtvnkzoucl` int DEFAULT NULL,\n `wnapymoodpxtwxemgjkaepyncbhkhxos` int DEFAULT NULL,\n `msaosrulzptvysabhqajwyxzgrygtevd` int DEFAULT NULL,\n `dimrtojpxoncdtnppdtaiuefgepldsqg` int DEFAULT NULL,\n `svnwmehfwtgcsxasvbbxhpjzratuwyov` int DEFAULT NULL,\n `nkefihksziigbqmkfciqkmnrdopqgotf` int DEFAULT NULL,\n `zowmxafjnbcbgxnjqkarbxjconavzasq` int DEFAULT NULL,\n `uajotvqidngwqyscdtmiqjzxqgttvqpo` int DEFAULT NULL,\n `evaebftfyzaboemoeswtvlriyzhfihaa` int DEFAULT NULL,\n `soqkwfncgivrmfbauewlicujnzcyxcku` int DEFAULT NULL,\n `uevfwsvudsvlgxivjsqjctyiqmlrrske` int DEFAULT NULL,\n `impytlmelbgagdgvivuwflvpwjtqhuta` int DEFAULT NULL,\n `wswormgwjacarumwzzbdntwxhihjlbve` int DEFAULT NULL,\n `ercismgecmtrvamjsklhwybykxsguwby` int DEFAULT NULL,\n `ujokouppyibrotefunfkkmabdpybvvio` int DEFAULT NULL,\n `fwmnnmkpllvdlhtusmrliinilegmkiuh` int DEFAULT NULL,\n `uhsucrzdnxhjnsyfvqppnlogixjlhozl` int DEFAULT NULL,\n `hkvcmttkoejaoqgzlbdaeixfhjwegcud` int DEFAULT NULL,\n `kzpagdqsxrezcaxdjprqjtfdndzxtcgb` int DEFAULT NULL,\n `lvjrycalxexkgagjmhvcnpvaywvznpch` int DEFAULT NULL,\n `nulytykvyztqftesiyjwamzuuxfwjbfc` int DEFAULT NULL,\n PRIMARY KEY (`cwcuujmmwoqnqoqatvthswqslbxapagf`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"otmhuzxdzfbyzubxhxxqqnfslkmomovx\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["cwcuujmmwoqnqoqatvthswqslbxapagf"],"columns":[{"name":"cwcuujmmwoqnqoqatvthswqslbxapagf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"rfctjaglbbmucilrhohzwlosmoutmvhb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ifautkhnbytvbtvotsbkfjudxjnbmwci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icpejdtlwwjkxidlnbngftlcksjdrxny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqjbfxlkgtwhlbibnudmqqujzoocowdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tcnwrfmnwjfrejheolnojhdrrvqeeoei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aourlkkbgnphwwtvfirklxewuwxjkgge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wyjzpjkryqqffsnykekacqfggdqfpern","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kqtvrbcsoleclxoxcqtsckgdunfzgqku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"faijydwaxpgxwuwopdjqfihjyoesmwck","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zggaktezddubnabhspavymnaynvaanko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hrwzgudobbidrxrtlhpjxypvenqivsah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tsepocdgecedorntefknyccyynqxadvk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utvxoosrivakwxplyycjgvbdlrkxiaqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itqphpgmgjigaxrkelehylprxheopdcs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggketmmdpoozcqbdbwipivqunosbhpxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oslbhrntpqhxpxosxvakveohbrroiowi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gevyadaaeqvqykdhrdocxwtralejsbvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gvrhxkifasuwmykiibncerfsekcgkwtv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vttuwcorwgygnopxphhkpovlhzrwuxxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cxjskzsaejaibbhsisrtvnubfwljfhih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evinoknzduvryplamhcrnxbdmxoicztu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"quiagncmrfinblpryyiwtijssisxqxfy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrpgdzacwwuaqhtpyoerjzcxqwsctdoh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrzmluqanhcqqkfivsyaeraeubijsghv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yiqmttmfasxkffzullfrsiaoaxbtljnc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvtkfbkdtbukjuvwajeenqqtaoypcwfe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fsccgrvvxskozkzwheonufuenelsuyjt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"efyxssnpfsgdbldjyijzclaguqtfzqeh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ifucyeohsxrvjeiuibmtplmtrcyoxnce","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zrjydmtqvyfggqtlabqdmljwwubiuzrw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehurpxcutbuwbeggbyjfkqxcysomzght","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"noznbgsxsswhzugfnltlifbcalvuonlt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rchgdypjmqsaohvbiaukvyknvunqndvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcabsjmyoujfvlllrknmablujpidykzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"duwaecnybpdyofxfmqhbkozjtskecufx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cjrlrqvdtimrmmplfkwrfmkxaxhrvoyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lukoxlvuxsuhvxsuyzcexehlhkmoipzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxfgkinnxppcrlnykulrehifxfbgqbio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ylokesrlnopvosmpradnusvwpfdpbdop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfaqtlofhijomybqawounkfnulmmceeo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qymienpbpbcvspvddpjbmekqzwtjvaoy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bcmdcydytgaqzzahfpifhczkpghizjnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgabcwzllqfwcnlrsnnmlkkbjfxcdzak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwmdmrbvgpoygvweghhzzycrztqxntme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qssmggqudxvczhejgxetthbpyojqkdxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gcwkfostrwkijuzvcgcpwvivtdldbrhq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"suzugnzuicvbkfpvzpimvnehbejkkazd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"onsnlmvtmyeumfstfhxravcibtozsqmt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnruzissolrslfbrosqurvqaqbeiahtx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpqacdkdkwahsxaejxblsslaenzulbtn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqbzxmsrqevuxpugslbhsbdgpjlhhlpm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uyxgsgjncehybfpzienacvlyrutllgkl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gyxeakpbipsiqcaebqadmqnqhupjvoip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"semoylzqjrfciloehijxvwzoplsgtudi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qijdnwckfxdvvyjreoibtvnirjbnpkrx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zwnyngnyhmhxttqgonjnrbhkfjcoxpkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"etktalllsuwuzeacwvptaszbjtcsqqox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tuoxyfxxozqxyajtayjrmvfvlwdqiewe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbbchrptmzyprqrbfctnburlufbquqxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynufjmyieyjucbptfvxlfvvjdrueqshd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmdrlfgxvafikoqkexdqxkkkshrekvoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jutfhaleshphlkwlhxcggevxcbyqhfku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grnjfzzsayqkgipqqzeawdynkslykljg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"plmirucnhqfbwnllarasayncnanfajud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fckfwzfhalmhjhvufuzonvwdxqkpkuny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ulguptdoyumgibhzewpojbrnwwegvrga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zfnegrwllpbmyzjdczucfmvadyowttij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upjdyepjcricghkyxbavqoawpfcbhewr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjqrcbpsdspehtjgwdebyhkkeajbkqrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ymkcmgzxkbnwedfrwbtpmlubzpklraqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ogxdjjnkphayiipippqundlahoajdalk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hngoohrvlxlbbwaarxkiwjmypaugfbks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upspxlhetfhejfhnhxmazkevfmcawspk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"guzzrdvjgkceimoecypfmaflalihixdm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tylgvoqiwuifihyrlisevoqipdarsrst","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dfcyhlwnbuuzferjvmohocdifnxrmkww","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvqwfhaucczckpmhlydynvrqzqgjjngg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwumersnxdurumuxqudckwmjlrbejkxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxxnqxikucovxojbhqqobdjtvnkzoucl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnapymoodpxtwxemgjkaepyncbhkhxos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"msaosrulzptvysabhqajwyxzgrygtevd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dimrtojpxoncdtnppdtaiuefgepldsqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"svnwmehfwtgcsxasvbbxhpjzratuwyov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nkefihksziigbqmkfciqkmnrdopqgotf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zowmxafjnbcbgxnjqkarbxjconavzasq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uajotvqidngwqyscdtmiqjzxqgttvqpo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evaebftfyzaboemoeswtvlriyzhfihaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"soqkwfncgivrmfbauewlicujnzcyxcku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uevfwsvudsvlgxivjsqjctyiqmlrrske","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"impytlmelbgagdgvivuwflvpwjtqhuta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wswormgwjacarumwzzbdntwxhihjlbve","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ercismgecmtrvamjsklhwybykxsguwby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujokouppyibrotefunfkkmabdpybvvio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwmnnmkpllvdlhtusmrliinilegmkiuh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhsucrzdnxhjnsyfvqppnlogixjlhozl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkvcmttkoejaoqgzlbdaeixfhjwegcud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzpagdqsxrezcaxdjprqjtfdndzxtcgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvjrycalxexkgagjmhvcnpvaywvznpch","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nulytykvyztqftesiyjwamzuuxfwjbfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670057,"databaseName":"models_schema","ddl":"CREATE TABLE `ownvozuqbdsuwedyuvzwnksqhgkngezx` (\n `bwqfpmcxcgwvxpbsjomhuwzgkyogzort` int NOT NULL,\n `shmvblakkvmeldkaywprtvuyigdozlvr` int DEFAULT NULL,\n `rdtjgiejvxoeiuxeltwudprvtgwttyak` int DEFAULT NULL,\n `fhspumspssfsrnledhuffpaiiabexvol` int DEFAULT NULL,\n `gukgamqrklzzsfctsahomxcupvmztsbl` int DEFAULT NULL,\n `gwktkujjdiovhnupxdgkholiashcyxcw` int DEFAULT NULL,\n `txtzdhmrhyhaozcqjrpucgcuzosmfjny` int DEFAULT NULL,\n `zuremwbdftlcpyfmcnsrlpctljvevijh` int DEFAULT NULL,\n `ydmhqfvppzgrmcqazbdvkdmfnbimoouo` int DEFAULT NULL,\n `obxcjnxtenoaxndaecuezkmklecbiipk` int DEFAULT NULL,\n `hywesunrbjkfqruqwkrdnsybzccdpnxb` int DEFAULT NULL,\n `snuxcommxbdfjdxztcztcpzpgnquehrk` int DEFAULT NULL,\n `bqffwruhfnenyeramtrzkmpkitdgweca` int DEFAULT NULL,\n `suzfcfhtccypxewmbgiodhawxehaqhhe` int DEFAULT NULL,\n `qgdrzqyjjltvqzfatwsxijkrmcncogpm` int DEFAULT NULL,\n `vewfvrpksanylaiccrkrtqdwnhbalfly` int DEFAULT NULL,\n `ntektahxbmpzublgfxvqnyrzfzcqgfuw` int DEFAULT NULL,\n `gboartvagjyejhjlpeptgoscrfjglvks` int DEFAULT NULL,\n `yttntxwxbjumkzbrhhkcvjlnkspgepzh` int DEFAULT NULL,\n `fielhgyialzusjbaqopbjwdpkzuvaysm` int DEFAULT NULL,\n `umxbcrfftxxxoyypklkmilfugkdzmxha` int DEFAULT NULL,\n `lvbrfkjzhkqgcxpmgweajyhtmjcbygyb` int DEFAULT NULL,\n `avxjaefzwouknlpdrlxcynzmbxuvpkmw` int DEFAULT NULL,\n `njgwpvvfkbwopgnfxdqcwdoqjxjuvjay` int DEFAULT NULL,\n `qrknawtwmdgkzkgiyxzkxnbtiprtpxhn` int DEFAULT NULL,\n `qglmzwlwvgfgpihrgxblheymcpbwayat` int DEFAULT NULL,\n `vymdnnxbipeqyfwbaxzoupmypjiaeldh` int DEFAULT NULL,\n `djgtedxtgxqgdbbmoghazmyglkwggacx` int DEFAULT NULL,\n `qvzkvfnnjrlenfgxkfjfgidscnnjijvq` int DEFAULT NULL,\n `yyeyovoodjpjebdivprjahgwykvgnswn` int DEFAULT NULL,\n `karhxjgoaxbobbxeujnzefkrtbhldlkw` int DEFAULT NULL,\n `xlffdvahqjhydawofuwxnpgaowyooywo` int DEFAULT NULL,\n `qttldgpjgnzoiwgsnixpvzaevdpgzrte` int DEFAULT NULL,\n `fyfskcwisvjenxbnltszckkvlutqsfvw` int DEFAULT NULL,\n `jnzruqjudiuepectgqkssiihneuizzzf` int DEFAULT NULL,\n `ybbqppsxpwylmuugocasrfhqodzhzcxj` int DEFAULT NULL,\n `djhcokdzalxwsgmpetlsofbzyjelvlyp` int DEFAULT NULL,\n `fcjndpcdncxmeukeyvugmexxirrdwhnq` int DEFAULT NULL,\n `oksvanssmtlktreaqtcjielnkqejdfqd` int DEFAULT NULL,\n `kotozohopfkbjdiwodpowyohucssrxzw` int DEFAULT NULL,\n `mrvirwjnbkrvapuxlmxgwnwlxeacatox` int DEFAULT NULL,\n `fqgjankclyeauzzzvnmdndhxzzcfejbv` int DEFAULT NULL,\n `qbsgztpdhrqjnzdvqckvfbyesczsczhl` int DEFAULT NULL,\n `dxrfvdxxigdliphyajzufakoxcpztbwq` int DEFAULT NULL,\n `nvoobzoiqivrbhimkqfrcogybvqlvmwe` int DEFAULT NULL,\n `deqqzwygzqtbrsxayxkhcrcyvlxnxjem` int DEFAULT NULL,\n `dsenyhepulorgiedlbdzkgfgyynlxuwi` int DEFAULT NULL,\n `yqtykkzemfktgzpebuehrwvdpolzmgxw` int DEFAULT NULL,\n `kblzysboybyjcyyroehuaoldbkatijzg` int DEFAULT NULL,\n `xjsvohpxhgeaofijnmztpxklwkkukmwe` int DEFAULT NULL,\n `kixludaluodndisrpqsaccpysuvsxzqx` int DEFAULT NULL,\n `vrrurfpylefagxupaqlxaehbgikqsikb` int DEFAULT NULL,\n `trkxzxdfjwxnjeaquaavgxnlvrcxwkse` int DEFAULT NULL,\n `eiylbogroidlgnxkfcmlxpslswpdqjtd` int DEFAULT NULL,\n `xotvekpfhrdvsbrwsvtbvojmunsbxztu` int DEFAULT NULL,\n `zpifiagefnibbrxbzdgdyrstrcnutlmm` int DEFAULT NULL,\n `yjanchttqsawoivinfdsyoxeaqhbqehh` int DEFAULT NULL,\n `teqnwaralbjkzbygpsvkjgicmmbaxbvd` int DEFAULT NULL,\n `zzopcfeddsakhyutaqxmstjddtqrgnsh` int DEFAULT NULL,\n `rieuwxvladbivhherijjokefqaccysrs` int DEFAULT NULL,\n `rdhccyaulgunfszxtvfulmzqxjosbzne` int DEFAULT NULL,\n `iblisasiofguuspvztvwezfdsmcmnhoq` int DEFAULT NULL,\n `uougerovjonypxhsxpkfaqvqcuupzfxw` int DEFAULT NULL,\n `gmrtbzwnfggpgsvyvkuveztdoymnmhni` int DEFAULT NULL,\n `vuirkafbjbssqgvplctprwncuqeiulgi` int DEFAULT NULL,\n `sjhfqxkkdlsjfuaoishmxbqlfcbawkri` int DEFAULT NULL,\n `lxjzqxzefiqxvodcwpdlidnelgeqexca` int DEFAULT NULL,\n `fpltvaqhykpitzagvhwyxbzqdfempdob` int DEFAULT NULL,\n `xrbzhdwlvkkcfomlwictbwogvxgwdonc` int DEFAULT NULL,\n `wnukjsbwjeereicoxomejajgxgpwgcjt` int DEFAULT NULL,\n `teqqkxhjcnipwyfkbkmiczcpkchetmsu` int DEFAULT NULL,\n `fdjwkkfqmmgpprjgqrvtgyduwkexzvdh` int DEFAULT NULL,\n `vjiixrizntdrtaskegyifqyorlgpzjij` int DEFAULT NULL,\n `safivwhwikndhhyrsngmourgwddhbyip` int DEFAULT NULL,\n `ysknfyjutgrbssmhxmmyeetvafgksnbl` int DEFAULT NULL,\n `qeasxwxpovaupcnithuuoqfcncirqupx` int DEFAULT NULL,\n `ogenhkonfovrvqmlulorrsrmcmnciomp` int DEFAULT NULL,\n `gdavlhzsdpekjrnazpopjbybatjfsiig` int DEFAULT NULL,\n `cgukytiyxbdcksouaqpzobzqiqkaoaqv` int DEFAULT NULL,\n `xpcihyawlmucwkjngoxneynjwqivdckh` int DEFAULT NULL,\n `bdzwtcakkxsrivcbxofjypbqlpmhfuel` int DEFAULT NULL,\n `dynjyndutduejpsyewqugqfnwbhwvepv` int DEFAULT NULL,\n `pajyplbalkbfovyjozkvmgulqgbxymvm` int DEFAULT NULL,\n `gaxrddskoghmvmmgipvlvitasygycfdb` int DEFAULT NULL,\n `tdynqctblgdefhmyqjzloubwfdemflkj` int DEFAULT NULL,\n `suyffdytmarmhqfgnistyjkklvavkmel` int DEFAULT NULL,\n `ubegupbjinldxbhjynvwsstzyrbhaucn` int DEFAULT NULL,\n `pehwpmfzkedbditgtdmaxkqnphyvywwb` int DEFAULT NULL,\n `aaegiaqfkakkwcyefbxtpesunsenddom` int DEFAULT NULL,\n `hwfmebtrnwxnxfjhehsrrmmawccwwrnv` int DEFAULT NULL,\n `zztvznuushvsqsovzxwndqafqqrizrcq` int DEFAULT NULL,\n `wchaptrghyajrydasukcmxgnrfolestg` int DEFAULT NULL,\n `uxucdcbjbonyntqqnihzurklagjpwqrn` int DEFAULT NULL,\n `acdaalghpbknwahsjopwfrrqkyilfryv` int DEFAULT NULL,\n `kktqglfjqircgymzmqjmzmccsoeawbaw` int DEFAULT NULL,\n `fgjcmjvrflvaturwsrnqcsinucgbzbxj` int DEFAULT NULL,\n `xaqxsrvhcxbpzchmppuzwujsmgzijcoj` int DEFAULT NULL,\n `iokameedjvqkwndovpfahaikjoorcflk` int DEFAULT NULL,\n `kdzrtyfxgwzqulbyrlppvczfbbpxgkil` int DEFAULT NULL,\n `sxarvaakkhlirdyxebuiuixsgvblbbtw` int DEFAULT NULL,\n PRIMARY KEY (`bwqfpmcxcgwvxpbsjomhuwzgkyogzort`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"ownvozuqbdsuwedyuvzwnksqhgkngezx\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["bwqfpmcxcgwvxpbsjomhuwzgkyogzort"],"columns":[{"name":"bwqfpmcxcgwvxpbsjomhuwzgkyogzort","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"shmvblakkvmeldkaywprtvuyigdozlvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdtjgiejvxoeiuxeltwudprvtgwttyak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhspumspssfsrnledhuffpaiiabexvol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gukgamqrklzzsfctsahomxcupvmztsbl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gwktkujjdiovhnupxdgkholiashcyxcw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txtzdhmrhyhaozcqjrpucgcuzosmfjny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zuremwbdftlcpyfmcnsrlpctljvevijh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydmhqfvppzgrmcqazbdvkdmfnbimoouo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obxcjnxtenoaxndaecuezkmklecbiipk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hywesunrbjkfqruqwkrdnsybzccdpnxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"snuxcommxbdfjdxztcztcpzpgnquehrk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqffwruhfnenyeramtrzkmpkitdgweca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"suzfcfhtccypxewmbgiodhawxehaqhhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qgdrzqyjjltvqzfatwsxijkrmcncogpm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vewfvrpksanylaiccrkrtqdwnhbalfly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntektahxbmpzublgfxvqnyrzfzcqgfuw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gboartvagjyejhjlpeptgoscrfjglvks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yttntxwxbjumkzbrhhkcvjlnkspgepzh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fielhgyialzusjbaqopbjwdpkzuvaysm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umxbcrfftxxxoyypklkmilfugkdzmxha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvbrfkjzhkqgcxpmgweajyhtmjcbygyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avxjaefzwouknlpdrlxcynzmbxuvpkmw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njgwpvvfkbwopgnfxdqcwdoqjxjuvjay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qrknawtwmdgkzkgiyxzkxnbtiprtpxhn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qglmzwlwvgfgpihrgxblheymcpbwayat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vymdnnxbipeqyfwbaxzoupmypjiaeldh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"djgtedxtgxqgdbbmoghazmyglkwggacx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvzkvfnnjrlenfgxkfjfgidscnnjijvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yyeyovoodjpjebdivprjahgwykvgnswn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"karhxjgoaxbobbxeujnzefkrtbhldlkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xlffdvahqjhydawofuwxnpgaowyooywo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qttldgpjgnzoiwgsnixpvzaevdpgzrte","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fyfskcwisvjenxbnltszckkvlutqsfvw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jnzruqjudiuepectgqkssiihneuizzzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ybbqppsxpwylmuugocasrfhqodzhzcxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"djhcokdzalxwsgmpetlsofbzyjelvlyp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcjndpcdncxmeukeyvugmexxirrdwhnq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oksvanssmtlktreaqtcjielnkqejdfqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kotozohopfkbjdiwodpowyohucssrxzw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrvirwjnbkrvapuxlmxgwnwlxeacatox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqgjankclyeauzzzvnmdndhxzzcfejbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qbsgztpdhrqjnzdvqckvfbyesczsczhl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxrfvdxxigdliphyajzufakoxcpztbwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvoobzoiqivrbhimkqfrcogybvqlvmwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"deqqzwygzqtbrsxayxkhcrcyvlxnxjem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dsenyhepulorgiedlbdzkgfgyynlxuwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqtykkzemfktgzpebuehrwvdpolzmgxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kblzysboybyjcyyroehuaoldbkatijzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjsvohpxhgeaofijnmztpxklwkkukmwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kixludaluodndisrpqsaccpysuvsxzqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vrrurfpylefagxupaqlxaehbgikqsikb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"trkxzxdfjwxnjeaquaavgxnlvrcxwkse","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eiylbogroidlgnxkfcmlxpslswpdqjtd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xotvekpfhrdvsbrwsvtbvojmunsbxztu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zpifiagefnibbrxbzdgdyrstrcnutlmm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjanchttqsawoivinfdsyoxeaqhbqehh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"teqnwaralbjkzbygpsvkjgicmmbaxbvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzopcfeddsakhyutaqxmstjddtqrgnsh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rieuwxvladbivhherijjokefqaccysrs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdhccyaulgunfszxtvfulmzqxjosbzne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iblisasiofguuspvztvwezfdsmcmnhoq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uougerovjonypxhsxpkfaqvqcuupzfxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmrtbzwnfggpgsvyvkuveztdoymnmhni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vuirkafbjbssqgvplctprwncuqeiulgi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjhfqxkkdlsjfuaoishmxbqlfcbawkri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxjzqxzefiqxvodcwpdlidnelgeqexca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpltvaqhykpitzagvhwyxbzqdfempdob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xrbzhdwlvkkcfomlwictbwogvxgwdonc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnukjsbwjeereicoxomejajgxgpwgcjt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"teqqkxhjcnipwyfkbkmiczcpkchetmsu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fdjwkkfqmmgpprjgqrvtgyduwkexzvdh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjiixrizntdrtaskegyifqyorlgpzjij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"safivwhwikndhhyrsngmourgwddhbyip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ysknfyjutgrbssmhxmmyeetvafgksnbl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qeasxwxpovaupcnithuuoqfcncirqupx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ogenhkonfovrvqmlulorrsrmcmnciomp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdavlhzsdpekjrnazpopjbybatjfsiig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgukytiyxbdcksouaqpzobzqiqkaoaqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xpcihyawlmucwkjngoxneynjwqivdckh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bdzwtcakkxsrivcbxofjypbqlpmhfuel","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dynjyndutduejpsyewqugqfnwbhwvepv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pajyplbalkbfovyjozkvmgulqgbxymvm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gaxrddskoghmvmmgipvlvitasygycfdb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tdynqctblgdefhmyqjzloubwfdemflkj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"suyffdytmarmhqfgnistyjkklvavkmel","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubegupbjinldxbhjynvwsstzyrbhaucn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pehwpmfzkedbditgtdmaxkqnphyvywwb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aaegiaqfkakkwcyefbxtpesunsenddom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwfmebtrnwxnxfjhehsrrmmawccwwrnv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zztvznuushvsqsovzxwndqafqqrizrcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wchaptrghyajrydasukcmxgnrfolestg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxucdcbjbonyntqqnihzurklagjpwqrn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"acdaalghpbknwahsjopwfrrqkyilfryv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kktqglfjqircgymzmqjmzmccsoeawbaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fgjcmjvrflvaturwsrnqcsinucgbzbxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xaqxsrvhcxbpzchmppuzwujsmgzijcoj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iokameedjvqkwndovpfahaikjoorcflk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kdzrtyfxgwzqulbyrlppvczfbbpxgkil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sxarvaakkhlirdyxebuiuixsgvblbbtw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670089,"databaseName":"models_schema","ddl":"CREATE TABLE `pefrclzfkqemnrdgutlyvuoyvtzxmtuv` (\n `xrxldpbalpglkelrdbnyvwdttxdwhyss` int NOT NULL,\n `wpoyoeliyabsxidxzgacxlqkxuyyxspq` int DEFAULT NULL,\n `krynnzduasxotqcivvpwyidgkghzbuzz` int DEFAULT NULL,\n `bskkpbdjuygnoxoqdobxauoispoerage` int DEFAULT NULL,\n `jrfyveurpvtedqxqigixocpjvojmlqkl` int DEFAULT NULL,\n `gxniksjvgxjaryobvzxbrcjiikggtbnx` int DEFAULT NULL,\n `pqupwdpbyktuheucrykmsidjngmwnpie` int DEFAULT NULL,\n `mydevxuwuokesojkqdhrwqmybbgsuung` int DEFAULT NULL,\n `uqrtcorguuglilzcresxmlgqcyxjvecf` int DEFAULT NULL,\n `vrpkaonakogmiivnisumsqllqiufwvkt` int DEFAULT NULL,\n `ampcpmqpkpdmdjoncowjebugdcnowjjw` int DEFAULT NULL,\n `xoypyhgclfuvzzikcsgrjdhjaitqosjs` int DEFAULT NULL,\n `ijotavhqfxflvnlwvkrdicssxefaejmd` int DEFAULT NULL,\n `jkbpyyqydvkvnctjxajnbtyfgxunwyeq` int DEFAULT NULL,\n `itqzcpxewzfvlhsjwtfudozeihagfkgu` int DEFAULT NULL,\n `prrurgdilrmihuzzkqdwbuyqpweuxale` int DEFAULT NULL,\n `qoiiuqrvkdlurqjzsveycrdfztzunmju` int DEFAULT NULL,\n `ranmzwlteffjbvyugqkslbnkbbmhflmx` int DEFAULT NULL,\n `kvbbuqeyhcwjtolixlnnsnpuomgcvuay` int DEFAULT NULL,\n `wwzsomhsyhhacnelfdojalvzurjgrrqf` int DEFAULT NULL,\n `agjzbhcqvhjwjkpohmmhpqilaigwtnrn` int DEFAULT NULL,\n `xxeihwwixxvuaomqtohydjmpdxqyzubn` int DEFAULT NULL,\n `vsxsospjccxvxhjqofgqweytaevodbag` int DEFAULT NULL,\n `kxvmfkwiaaedasicdvsfqsrvpanbfkpc` int DEFAULT NULL,\n `snacbyezytvkomrqrezyscgcbjjtjrai` int DEFAULT NULL,\n `ebwyycockueqsbdiazdgvprlwoqponlk` int DEFAULT NULL,\n `tcknvddzbgarzvbmtuqvyeajxlhqlfof` int DEFAULT NULL,\n `fnmgrsyppxhsaotljocqtzqgeemujlhm` int DEFAULT NULL,\n `mxnnsgzrwnvklmpfjppubewxfdyfkgav` int DEFAULT NULL,\n `eequyduirppfmhhqvdnjcftrnlnqhmbd` int DEFAULT NULL,\n `reivggopeswcghjzbojwcrqndbxqmemp` int DEFAULT NULL,\n `dapzrkzulexgrbhwouivtioojlwlxtsh` int DEFAULT NULL,\n `eghtstanjbwyssrndmezmtphdxmpquob` int DEFAULT NULL,\n `edwekyyzuegljygjnoamdfkhuscasnnh` int DEFAULT NULL,\n `nyfwmknxllfbxtbusxnusylsigaahfrw` int DEFAULT NULL,\n `obetekrcpqjmypsnbmalvzlyvogdmffr` int DEFAULT NULL,\n `edydumecicasusfqyjjkmxevqyyyoscz` int DEFAULT NULL,\n `dcekrynjdrshokapeqtcjetujgefyyhb` int DEFAULT NULL,\n `qebhxswxunqwipavbcaqvghblgabhydf` int DEFAULT NULL,\n `oautvpcjliidxtdyaymjtjlenuwaytah` int DEFAULT NULL,\n `uwnsupkgpkpvguopbfywjjhaayspwiqy` int DEFAULT NULL,\n `zxvxqkldxupyintcovfnvdpkdxcniqre` int DEFAULT NULL,\n `jdjsqqdaknvozmbmrrnugzfhbfxdcbnh` int DEFAULT NULL,\n `pxxwsxcxslkmrroodhywjtzamrbzcqka` int DEFAULT NULL,\n `nttsadjtazubybvcuwxcjfovwwgidmak` int DEFAULT NULL,\n `vwymfkysyemouoyopgppyilheshaipsi` int DEFAULT NULL,\n `ymoxfyhrjkhanqylvfbesanvazlxwsaw` int DEFAULT NULL,\n `bsajzzymfdxijnjoxrvynwfgeqkvvbre` int DEFAULT NULL,\n `cffmsuxufvrsueksbbaxdnswirhdtwux` int DEFAULT NULL,\n `vywgdkuiopktiloailannxnxquufqlxg` int DEFAULT NULL,\n `lhudffojotfzdtfkzszvqucllovnkpih` int DEFAULT NULL,\n `nrmhsixmkelwaauygafxdxapauelovdz` int DEFAULT NULL,\n `vdvxqtbyeqogibaaiaijkzfgzjykbfbg` int DEFAULT NULL,\n `htuwpgcdayqchbiqkfcckynncibnhuxx` int DEFAULT NULL,\n `xuppihrgbttxhxktskrpninigwdhciuw` int DEFAULT NULL,\n `utyhhfdovavmbjytqhwopmmgddqmcbuc` int DEFAULT NULL,\n `sjzgyakwtcfhxszjciiyhsffmbwbbpah` int DEFAULT NULL,\n `jgnvfgfxmrpvntdbqdqpavfbefoylcnj` int DEFAULT NULL,\n `wzyvbxdsdnfbiputgurfthtcisfxvocm` int DEFAULT NULL,\n `ujqjlslzrbfwujlsbzlsvzgtgelqvzic` int DEFAULT NULL,\n `lplkisomdnwztlvxqntwiytqoblblztj` int DEFAULT NULL,\n `becmuriwcnrbydcckujgnscwxzdcwged` int DEFAULT NULL,\n `comruwfaujqvntmhflhygvysjjgzveqv` int DEFAULT NULL,\n `uqobcmhboapfeyydwyhsxbudgutceeqn` int DEFAULT NULL,\n `ouxzrsasqksseoxicrjktirjhxyrxdel` int DEFAULT NULL,\n `oehewwhrkgaaskxjvpaiuwknoxlpkaml` int DEFAULT NULL,\n `ylkbldajiyyfdyrbyqmyfkkznclyefhq` int DEFAULT NULL,\n `vmmjzsuyjpgowvnhhsogcwtfspxnnbxu` int DEFAULT NULL,\n `qrdrqtsoiarcrhzgbhpxsnqgpsrbevat` int DEFAULT NULL,\n `gaajyanlqrpfkwlelizwzfcwslkxfapp` int DEFAULT NULL,\n `hbxbkodfwbinhgqdxvkucrnqrvheriej` int DEFAULT NULL,\n `pqkzlwiovkqdaezkpnjpoblspcjvvuop` int DEFAULT NULL,\n `imxszofkawydrwqogyfsibnrwvutyeyg` int DEFAULT NULL,\n `xsklhbvzsatdzimbeptpcylvjxafmwwz` int DEFAULT NULL,\n `ckpmbewbchwnyjgllbednqmvvcpqpwfz` int DEFAULT NULL,\n `nkhepnbcynvarotphluojtxztsjrysmi` int DEFAULT NULL,\n `gwsyecglamiarwtmefwsdngkvoxzmear` int DEFAULT NULL,\n `gdxuoprgoplkvkplqwtrwvndwqeiwbua` int DEFAULT NULL,\n `jvftnxkisadjmbpdiidiazwsuuatejcr` int DEFAULT NULL,\n `zcwpvvgxikfkhswvtoxmvkchblmvglun` int DEFAULT NULL,\n `ftkbqjjfbhhlckpaflemslajgdjxwipn` int DEFAULT NULL,\n `xqqzhdkbmepmoopoqlzgjvzvjpoxcrhb` int DEFAULT NULL,\n `ldzfktrrxvfkxqqgzwgqddqpsliligjl` int DEFAULT NULL,\n `sksjhssrzemvmuhcpkmjgyhuwowoidro` int DEFAULT NULL,\n `tnffjcomwdanyenasyseomlqhkhceqnn` int DEFAULT NULL,\n `svbktnapqmefkvhatxmabjyvclnnocma` int DEFAULT NULL,\n `asqlnwjodsifosdenxpzinvwsczlxzro` int DEFAULT NULL,\n `zmzmyhyohldwhjnvaaklmxgjwonmlhyy` int DEFAULT NULL,\n `unjjlaygzkveiddficfbvqczchlqfjwf` int DEFAULT NULL,\n `pnkvfrbahgoyvrbmfzweyfxqaypwndlu` int DEFAULT NULL,\n `dbwztldcbulpqaineaeflpilixwkcciy` int DEFAULT NULL,\n `cwqdkfyzicnydbmcrjrdfwaaqngtkzvf` int DEFAULT NULL,\n `znpaawcfhyegmticwtboftzpsujjpxxw` int DEFAULT NULL,\n `nlxhhoouahskhzdrdlpkyytvyqqocssj` int DEFAULT NULL,\n `tpsfpbovpophrbkkyumobdfjssytekil` int DEFAULT NULL,\n `mvbinjfrdwtexelttsttcqrrehvmcucw` int DEFAULT NULL,\n `cagppuzsiifhvdklodqcczvwekitlehw` int DEFAULT NULL,\n `iupertoltyspuscmazjtakczhwcavdcd` int DEFAULT NULL,\n `dcmfxoxpjshvncadbfknmfsxdtumbmhv` int DEFAULT NULL,\n `tavvpqriqrzeaqwgcjmiaomjulqwwsby` int DEFAULT NULL,\n PRIMARY KEY (`xrxldpbalpglkelrdbnyvwdttxdwhyss`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"pefrclzfkqemnrdgutlyvuoyvtzxmtuv\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["xrxldpbalpglkelrdbnyvwdttxdwhyss"],"columns":[{"name":"xrxldpbalpglkelrdbnyvwdttxdwhyss","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"wpoyoeliyabsxidxzgacxlqkxuyyxspq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"krynnzduasxotqcivvpwyidgkghzbuzz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bskkpbdjuygnoxoqdobxauoispoerage","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jrfyveurpvtedqxqigixocpjvojmlqkl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gxniksjvgxjaryobvzxbrcjiikggtbnx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqupwdpbyktuheucrykmsidjngmwnpie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mydevxuwuokesojkqdhrwqmybbgsuung","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqrtcorguuglilzcresxmlgqcyxjvecf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vrpkaonakogmiivnisumsqllqiufwvkt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ampcpmqpkpdmdjoncowjebugdcnowjjw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xoypyhgclfuvzzikcsgrjdhjaitqosjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijotavhqfxflvnlwvkrdicssxefaejmd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jkbpyyqydvkvnctjxajnbtyfgxunwyeq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itqzcpxewzfvlhsjwtfudozeihagfkgu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prrurgdilrmihuzzkqdwbuyqpweuxale","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qoiiuqrvkdlurqjzsveycrdfztzunmju","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ranmzwlteffjbvyugqkslbnkbbmhflmx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvbbuqeyhcwjtolixlnnsnpuomgcvuay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwzsomhsyhhacnelfdojalvzurjgrrqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agjzbhcqvhjwjkpohmmhpqilaigwtnrn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxeihwwixxvuaomqtohydjmpdxqyzubn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsxsospjccxvxhjqofgqweytaevodbag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxvmfkwiaaedasicdvsfqsrvpanbfkpc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"snacbyezytvkomrqrezyscgcbjjtjrai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebwyycockueqsbdiazdgvprlwoqponlk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tcknvddzbgarzvbmtuqvyeajxlhqlfof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnmgrsyppxhsaotljocqtzqgeemujlhm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mxnnsgzrwnvklmpfjppubewxfdyfkgav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eequyduirppfmhhqvdnjcftrnlnqhmbd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"reivggopeswcghjzbojwcrqndbxqmemp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dapzrkzulexgrbhwouivtioojlwlxtsh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eghtstanjbwyssrndmezmtphdxmpquob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edwekyyzuegljygjnoamdfkhuscasnnh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nyfwmknxllfbxtbusxnusylsigaahfrw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obetekrcpqjmypsnbmalvzlyvogdmffr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edydumecicasusfqyjjkmxevqyyyoscz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcekrynjdrshokapeqtcjetujgefyyhb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qebhxswxunqwipavbcaqvghblgabhydf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oautvpcjliidxtdyaymjtjlenuwaytah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uwnsupkgpkpvguopbfywjjhaayspwiqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxvxqkldxupyintcovfnvdpkdxcniqre","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdjsqqdaknvozmbmrrnugzfhbfxdcbnh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxxwsxcxslkmrroodhywjtzamrbzcqka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nttsadjtazubybvcuwxcjfovwwgidmak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vwymfkysyemouoyopgppyilheshaipsi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ymoxfyhrjkhanqylvfbesanvazlxwsaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bsajzzymfdxijnjoxrvynwfgeqkvvbre","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cffmsuxufvrsueksbbaxdnswirhdtwux","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vywgdkuiopktiloailannxnxquufqlxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhudffojotfzdtfkzszvqucllovnkpih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nrmhsixmkelwaauygafxdxapauelovdz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdvxqtbyeqogibaaiaijkzfgzjykbfbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"htuwpgcdayqchbiqkfcckynncibnhuxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xuppihrgbttxhxktskrpninigwdhciuw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utyhhfdovavmbjytqhwopmmgddqmcbuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjzgyakwtcfhxszjciiyhsffmbwbbpah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgnvfgfxmrpvntdbqdqpavfbefoylcnj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzyvbxdsdnfbiputgurfthtcisfxvocm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujqjlslzrbfwujlsbzlsvzgtgelqvzic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lplkisomdnwztlvxqntwiytqoblblztj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"becmuriwcnrbydcckujgnscwxzdcwged","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"comruwfaujqvntmhflhygvysjjgzveqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqobcmhboapfeyydwyhsxbudgutceeqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ouxzrsasqksseoxicrjktirjhxyrxdel","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oehewwhrkgaaskxjvpaiuwknoxlpkaml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ylkbldajiyyfdyrbyqmyfkkznclyefhq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vmmjzsuyjpgowvnhhsogcwtfspxnnbxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qrdrqtsoiarcrhzgbhpxsnqgpsrbevat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gaajyanlqrpfkwlelizwzfcwslkxfapp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbxbkodfwbinhgqdxvkucrnqrvheriej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqkzlwiovkqdaezkpnjpoblspcjvvuop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"imxszofkawydrwqogyfsibnrwvutyeyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsklhbvzsatdzimbeptpcylvjxafmwwz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ckpmbewbchwnyjgllbednqmvvcpqpwfz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nkhepnbcynvarotphluojtxztsjrysmi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gwsyecglamiarwtmefwsdngkvoxzmear","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdxuoprgoplkvkplqwtrwvndwqeiwbua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvftnxkisadjmbpdiidiazwsuuatejcr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zcwpvvgxikfkhswvtoxmvkchblmvglun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftkbqjjfbhhlckpaflemslajgdjxwipn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqqzhdkbmepmoopoqlzgjvzvjpoxcrhb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ldzfktrrxvfkxqqgzwgqddqpsliligjl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sksjhssrzemvmuhcpkmjgyhuwowoidro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnffjcomwdanyenasyseomlqhkhceqnn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"svbktnapqmefkvhatxmabjyvclnnocma","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"asqlnwjodsifosdenxpzinvwsczlxzro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmzmyhyohldwhjnvaaklmxgjwonmlhyy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unjjlaygzkveiddficfbvqczchlqfjwf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnkvfrbahgoyvrbmfzweyfxqaypwndlu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbwztldcbulpqaineaeflpilixwkcciy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwqdkfyzicnydbmcrjrdfwaaqngtkzvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znpaawcfhyegmticwtboftzpsujjpxxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nlxhhoouahskhzdrdlpkyytvyqqocssj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpsfpbovpophrbkkyumobdfjssytekil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvbinjfrdwtexelttsttcqrrehvmcucw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cagppuzsiifhvdklodqcczvwekitlehw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iupertoltyspuscmazjtakczhwcavdcd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcmfxoxpjshvncadbfknmfsxdtumbmhv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tavvpqriqrzeaqwgcjmiaomjulqwwsby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670120,"databaseName":"models_schema","ddl":"CREATE TABLE `pfhgocfvrcmabgqdldeflyidqlcdhbmz` (\n `xdovsxfkvhqivpjctcauwzmymelzwmnm` int NOT NULL,\n `apdburzkadpaimxoeianexpkaegdsivs` int DEFAULT NULL,\n `rhkklvjetjktaynotqpzigwkprgbjcns` int DEFAULT NULL,\n `lirjrphmuerbvhogbmfycoufcjmntxcl` int DEFAULT NULL,\n `hhahptkfskyyoenulgawyomjwamozndt` int DEFAULT NULL,\n `xvmontuzjpjyvxanjryapwnkdkitzrwu` int DEFAULT NULL,\n `crdzsytvrntypfwybgeirfoepmlikjsb` int DEFAULT NULL,\n `zpmqzuknjuzknupiioammhnqaznycspq` int DEFAULT NULL,\n `zcyjjswnbwyfvjowplhicoorbjanrnko` int DEFAULT NULL,\n `dbghpgnzmdcjfxevhdougjecncqtnfsp` int DEFAULT NULL,\n `sdsrrdbrczpgxaousrwakvwltnlpkesv` int DEFAULT NULL,\n `ohouiejplpcyxdticaqpbwreeadnrfqy` int DEFAULT NULL,\n `mjadsyodjhxmlojbvwgwgecymixblljg` int DEFAULT NULL,\n `knkyeaslgingnhqtzaphkhdzwwkbrdyq` int DEFAULT NULL,\n `tsnmuypkeanlxvncztwnauenixwhzgtc` int DEFAULT NULL,\n `zpqfnjtwtazmaeygjvcdymrxhqwuowus` int DEFAULT NULL,\n `ntyactqxuhgycjjdrlqzyewejjibqjqb` int DEFAULT NULL,\n `pdkbdxeqnwhxvnbhwolahmdvlupclfeb` int DEFAULT NULL,\n `wininhlwqbekmlhsvrceuhggqfqvhxac` int DEFAULT NULL,\n `geflwqcoexwmotpyqypfhblqfvwqyuva` int DEFAULT NULL,\n `nbfkpbdxxhvjefgkpwfwskbuwqokewfw` int DEFAULT NULL,\n `pxcvztqbhhtjyiwhmtnjtvueomssniqv` int DEFAULT NULL,\n `aqtiuebauosgdrfwkxqdrcrfvjzyjqpo` int DEFAULT NULL,\n `pjejjhbqpxiwzssmszurvurfykmanqmo` int DEFAULT NULL,\n `owkxyqnbslqzolwtjdlflbjvgqbvitjm` int DEFAULT NULL,\n `pjsweuhqwhrvgpqfsxwzfcvuefzgewve` int DEFAULT NULL,\n `xenqjeznvzmnqtllsfxfktywwgcavxgl` int DEFAULT NULL,\n `cutrplpliulajfqdjuqgzuuwkvlzdquw` int DEFAULT NULL,\n `rmipfavzetpvcqgmfuviocivjqcdewai` int DEFAULT NULL,\n `rmoonprgbjjavstqrgkpwevwzlvmodzd` int DEFAULT NULL,\n `kxntotymifktkmonfscxzexgsezrwdnl` int DEFAULT NULL,\n `xvdxkpreylzxqpgslxwbltcqszmlyrbt` int DEFAULT NULL,\n `xvjnsvqzlafapzpgiysecugetwmhrsrq` int DEFAULT NULL,\n `qdtwymifesegcwhwwjrzoazodyisyjhd` int DEFAULT NULL,\n `acpyhngrtwzsfdhitzxefoeofxcumtsc` int DEFAULT NULL,\n `elaqrqllkchjynhdbtempyzbfwroroqb` int DEFAULT NULL,\n `xkrjuwstrmgvieqzsmpjfzjtnjznteob` int DEFAULT NULL,\n `nhlmjcbwkcwzpjtjsizviuydglpuuqfi` int DEFAULT NULL,\n `yfjjcseyuinieghotfdhxplzyhgillxv` int DEFAULT NULL,\n `vdrvmyijgnkgtdhhzxgezrmmrkhrdxxj` int DEFAULT NULL,\n `qgwruagffyawdcugbltoqokeaxpxdxmw` int DEFAULT NULL,\n `uvklcaqdqlnowvnllenpyehpmwkwyqde` int DEFAULT NULL,\n `jnsihvwpuqfaodkitmoenozencbldpmu` int DEFAULT NULL,\n `tcacfvgksmbaxkzpyyanwyjjoreuuwrd` int DEFAULT NULL,\n `jkfkmmiyjraomowfvdterbmjlywjalqu` int DEFAULT NULL,\n `cbvoxhtyqmwhqxryyyhizxwdfthzghfc` int DEFAULT NULL,\n `ormemckvfsbcoqdedhaerxfglcatixag` int DEFAULT NULL,\n `fvlemqoieiczqxxqubbdzozqthpeptdp` int DEFAULT NULL,\n `rryjqtlurckuycgzacrheimoufdfledy` int DEFAULT NULL,\n `lldpydpfryrjwjozengjndxworkzywzo` int DEFAULT NULL,\n `xlchumflxdwatwapoksqqepsflgghlea` int DEFAULT NULL,\n `cugltgbqkpagssgldmixgmmkglyraluq` int DEFAULT NULL,\n `iccnbkswnyuyhnijgadopufpppfwsrvx` int DEFAULT NULL,\n `tqxgxingrojobhzerbkyefinsekkxwxg` int DEFAULT NULL,\n `uhgvtdzdxcprrtdljkooklszulthphvi` int DEFAULT NULL,\n `duucxpxwqqpefxrvfusnybxxbpwnbglm` int DEFAULT NULL,\n `cbmihdxqfjzwtwusitbrurwfaoroxcai` int DEFAULT NULL,\n `aiuhnrinawmqnuvgrnuctscpahnjnahb` int DEFAULT NULL,\n `exaoipabyxalhbwqplequaiveralxdcr` int DEFAULT NULL,\n `ntoqzaqilrpefvtlnuerwanssjxzjees` int DEFAULT NULL,\n `hosntopcsfldlpjibokghoxnlxxjycbs` int DEFAULT NULL,\n `egmngqscbmgomalazodoalwgtmapvtek` int DEFAULT NULL,\n `spltbwgtgfwzzhslugzqlajgnijgpsmf` int DEFAULT NULL,\n `yaolvtamyosijsctqxlkbypcojunvuyc` int DEFAULT NULL,\n `kxhskmyiiysfzarycadeshfnzjtzjllo` int DEFAULT NULL,\n `jukyryllpbnaconmaasbyxlnlisavauw` int DEFAULT NULL,\n `erjwtxqghdhobekiapdsamqxqljwsmvi` int DEFAULT NULL,\n `iiyizrvjxoaflwkfhbcgzdhthyuoopyu` int DEFAULT NULL,\n `ufhmdpdwnxekeuvqvqgxhcyspqfdthwg` int DEFAULT NULL,\n `gnhjcryymhgvzvtythhlktvfhuibemcp` int DEFAULT NULL,\n `ocrdfiguhquvhjpfkbjvwlqrekoxeoei` int DEFAULT NULL,\n `pxyccjrfkqqwdvlypttrypeqigsvotvp` int DEFAULT NULL,\n `gjpqygfmgcpuzhupseygoohbbhyazapk` int DEFAULT NULL,\n `lyanypnlmrsjgwoawmrxgbpftxvenmig` int DEFAULT NULL,\n `ympnrlctgcxjztwwhojbkhanxjhdozbp` int DEFAULT NULL,\n `meefsbxkozquzvchhoeitvnmabvcfsar` int DEFAULT NULL,\n `vnmvlqmextrlhfxxxrwofjcmpljptfbv` int DEFAULT NULL,\n `yefbkkzvxwhjxwykovhvmhfcumjmmsac` int DEFAULT NULL,\n `cktidfqqjaskfxtqfmtqcoiqccwofavm` int DEFAULT NULL,\n `rxyrvtkacwhgmwowkpumuehxmuukoipu` int DEFAULT NULL,\n `erqniuclimtrqgifuqffsjlbtabflkxc` int DEFAULT NULL,\n `fpqpteotbbmkbxgnfdimypovfwjvmgno` int DEFAULT NULL,\n `cbjvftowoawyvppfexsgmltioefbwmkr` int DEFAULT NULL,\n `afmyczqlhjzwrvrzcrfthcyzseytiflp` int DEFAULT NULL,\n `gnmxfcvgfaudeguimzsecjrnhfhkokbr` int DEFAULT NULL,\n `deqqeozhweuyoykzdqxdgkzsnnliiphl` int DEFAULT NULL,\n `qtalefvvaeggvwpqmtflhvczhfblpzyg` int DEFAULT NULL,\n `cavvokrbpheuxhmkomkcphuqssdynwti` int DEFAULT NULL,\n `lshlwdljyzldcfqhvivfbynmdnakyanw` int DEFAULT NULL,\n `bfltgnsnhjbofwosgtiwouaheaisfdur` int DEFAULT NULL,\n `ocqdgtseaokuejeldjbyulmthyfuraob` int DEFAULT NULL,\n `aijesrdebfimvfkrscrezkzstbvmonjl` int DEFAULT NULL,\n `nfgvwigjonygmtxyobwhubmdsazlyyjj` int DEFAULT NULL,\n `iqfndvbnphqsnzcxlzfswqptdbebjrxg` int DEFAULT NULL,\n `wykbtoaxxiayucyicubkljuuvbumosnb` int DEFAULT NULL,\n `xbqteiadmouazlokshbmvbrpfkdbueqj` int DEFAULT NULL,\n `kweqbqiwfsfnfimtfvdxsukauifpfemk` int DEFAULT NULL,\n `xbrepilumnagpcgvxghpchjxmoggqofl` int DEFAULT NULL,\n `fxmmwqyvnbxxubllwdbhzdokhrhjqayh` int DEFAULT NULL,\n `orwaalnrzwbjnudksertmliuxjyjvjaj` int DEFAULT NULL,\n PRIMARY KEY (`xdovsxfkvhqivpjctcauwzmymelzwmnm`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"pfhgocfvrcmabgqdldeflyidqlcdhbmz\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["xdovsxfkvhqivpjctcauwzmymelzwmnm"],"columns":[{"name":"xdovsxfkvhqivpjctcauwzmymelzwmnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"apdburzkadpaimxoeianexpkaegdsivs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhkklvjetjktaynotqpzigwkprgbjcns","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lirjrphmuerbvhogbmfycoufcjmntxcl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhahptkfskyyoenulgawyomjwamozndt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvmontuzjpjyvxanjryapwnkdkitzrwu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"crdzsytvrntypfwybgeirfoepmlikjsb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zpmqzuknjuzknupiioammhnqaznycspq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zcyjjswnbwyfvjowplhicoorbjanrnko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbghpgnzmdcjfxevhdougjecncqtnfsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdsrrdbrczpgxaousrwakvwltnlpkesv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohouiejplpcyxdticaqpbwreeadnrfqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjadsyodjhxmlojbvwgwgecymixblljg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knkyeaslgingnhqtzaphkhdzwwkbrdyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tsnmuypkeanlxvncztwnauenixwhzgtc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zpqfnjtwtazmaeygjvcdymrxhqwuowus","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntyactqxuhgycjjdrlqzyewejjibqjqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdkbdxeqnwhxvnbhwolahmdvlupclfeb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wininhlwqbekmlhsvrceuhggqfqvhxac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"geflwqcoexwmotpyqypfhblqfvwqyuva","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbfkpbdxxhvjefgkpwfwskbuwqokewfw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxcvztqbhhtjyiwhmtnjtvueomssniqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqtiuebauosgdrfwkxqdrcrfvjzyjqpo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjejjhbqpxiwzssmszurvurfykmanqmo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owkxyqnbslqzolwtjdlflbjvgqbvitjm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjsweuhqwhrvgpqfsxwzfcvuefzgewve","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xenqjeznvzmnqtllsfxfktywwgcavxgl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cutrplpliulajfqdjuqgzuuwkvlzdquw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rmipfavzetpvcqgmfuviocivjqcdewai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rmoonprgbjjavstqrgkpwevwzlvmodzd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxntotymifktkmonfscxzexgsezrwdnl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvdxkpreylzxqpgslxwbltcqszmlyrbt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvjnsvqzlafapzpgiysecugetwmhrsrq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdtwymifesegcwhwwjrzoazodyisyjhd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"acpyhngrtwzsfdhitzxefoeofxcumtsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"elaqrqllkchjynhdbtempyzbfwroroqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkrjuwstrmgvieqzsmpjfzjtnjznteob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhlmjcbwkcwzpjtjsizviuydglpuuqfi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfjjcseyuinieghotfdhxplzyhgillxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdrvmyijgnkgtdhhzxgezrmmrkhrdxxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qgwruagffyawdcugbltoqokeaxpxdxmw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvklcaqdqlnowvnllenpyehpmwkwyqde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jnsihvwpuqfaodkitmoenozencbldpmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tcacfvgksmbaxkzpyyanwyjjoreuuwrd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jkfkmmiyjraomowfvdterbmjlywjalqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbvoxhtyqmwhqxryyyhizxwdfthzghfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ormemckvfsbcoqdedhaerxfglcatixag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fvlemqoieiczqxxqubbdzozqthpeptdp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rryjqtlurckuycgzacrheimoufdfledy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lldpydpfryrjwjozengjndxworkzywzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xlchumflxdwatwapoksqqepsflgghlea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cugltgbqkpagssgldmixgmmkglyraluq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iccnbkswnyuyhnijgadopufpppfwsrvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqxgxingrojobhzerbkyefinsekkxwxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhgvtdzdxcprrtdljkooklszulthphvi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"duucxpxwqqpefxrvfusnybxxbpwnbglm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbmihdxqfjzwtwusitbrurwfaoroxcai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aiuhnrinawmqnuvgrnuctscpahnjnahb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exaoipabyxalhbwqplequaiveralxdcr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntoqzaqilrpefvtlnuerwanssjxzjees","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hosntopcsfldlpjibokghoxnlxxjycbs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"egmngqscbmgomalazodoalwgtmapvtek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"spltbwgtgfwzzhslugzqlajgnijgpsmf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yaolvtamyosijsctqxlkbypcojunvuyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxhskmyiiysfzarycadeshfnzjtzjllo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jukyryllpbnaconmaasbyxlnlisavauw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"erjwtxqghdhobekiapdsamqxqljwsmvi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iiyizrvjxoaflwkfhbcgzdhthyuoopyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ufhmdpdwnxekeuvqvqgxhcyspqfdthwg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnhjcryymhgvzvtythhlktvfhuibemcp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocrdfiguhquvhjpfkbjvwlqrekoxeoei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxyccjrfkqqwdvlypttrypeqigsvotvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjpqygfmgcpuzhupseygoohbbhyazapk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lyanypnlmrsjgwoawmrxgbpftxvenmig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ympnrlctgcxjztwwhojbkhanxjhdozbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"meefsbxkozquzvchhoeitvnmabvcfsar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vnmvlqmextrlhfxxxrwofjcmpljptfbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yefbkkzvxwhjxwykovhvmhfcumjmmsac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cktidfqqjaskfxtqfmtqcoiqccwofavm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxyrvtkacwhgmwowkpumuehxmuukoipu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"erqniuclimtrqgifuqffsjlbtabflkxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpqpteotbbmkbxgnfdimypovfwjvmgno","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbjvftowoawyvppfexsgmltioefbwmkr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afmyczqlhjzwrvrzcrfthcyzseytiflp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnmxfcvgfaudeguimzsecjrnhfhkokbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"deqqeozhweuyoykzdqxdgkzsnnliiphl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtalefvvaeggvwpqmtflhvczhfblpzyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cavvokrbpheuxhmkomkcphuqssdynwti","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lshlwdljyzldcfqhvivfbynmdnakyanw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bfltgnsnhjbofwosgtiwouaheaisfdur","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocqdgtseaokuejeldjbyulmthyfuraob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aijesrdebfimvfkrscrezkzstbvmonjl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfgvwigjonygmtxyobwhubmdsazlyyjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqfndvbnphqsnzcxlzfswqptdbebjrxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wykbtoaxxiayucyicubkljuuvbumosnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbqteiadmouazlokshbmvbrpfkdbueqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kweqbqiwfsfnfimtfvdxsukauifpfemk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbrepilumnagpcgvxghpchjxmoggqofl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxmmwqyvnbxxubllwdbhzdokhrhjqayh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orwaalnrzwbjnudksertmliuxjyjvjaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670154,"databaseName":"models_schema","ddl":"CREATE TABLE `pfqjiwqnmbfnwysrzbqigotyuehiiwaz` (\n `blpojeiwfwymwzcrqfszfpngkgcmltkf` int NOT NULL,\n `solnpencsdgfzobjnhboktlgnfvezbiz` int DEFAULT NULL,\n `jgmijnhcjijypeidxrllcajodgasivpf` int DEFAULT NULL,\n `ojxnrwvuhebjhawpawewlzeybyrflvhq` int DEFAULT NULL,\n `vzeppnvsavbgghkerbxdyqgswnmokrgi` int DEFAULT NULL,\n `ytcxkciejxvgoobsbcgclcmbmwecpdqv` int DEFAULT NULL,\n `bsgnssdalntqnnjxzinzzepnktcrrken` int DEFAULT NULL,\n `wfehhybdozqaxsslzhxdlxddrorbozoc` int DEFAULT NULL,\n `hcpbrabehjuunwsptauoetwdhtemvuau` int DEFAULT NULL,\n `tnyoldcwzfsqliudmeqcqpotqhvtwiwn` int DEFAULT NULL,\n `xawmzjhghorlcykftzycutdscwgvgnpc` int DEFAULT NULL,\n `hhnjegpkfqypqpbrvhlsjvagtnrhlakk` int DEFAULT NULL,\n `xnouuuidrfapwxckrirwpqkcnlofvkgo` int DEFAULT NULL,\n `iparxfllblrapgyuvnhtlxwdkmsfcbir` int DEFAULT NULL,\n `mjghxkfijkohnxpvwqbfinsxkfwqefbm` int DEFAULT NULL,\n `bxjwhuypovfczfmwafgpeedwlmxfmwrg` int DEFAULT NULL,\n `lgahqwtrfnkmoxmhflmhinpdxqsqmcnx` int DEFAULT NULL,\n `tqruzbwbmxseuholvitezegnbvyztwfw` int DEFAULT NULL,\n `txgtvxnpgvrzmgxdpddacrvspanwuvnw` int DEFAULT NULL,\n `zhgfbiydtlujprffexkcpwifkhdvnguh` int DEFAULT NULL,\n `fuaiyrtwdhurlrownzmwfcricwmhjvop` int DEFAULT NULL,\n `rniswhptsdvuhxrumkpnyhyoyqkoponr` int DEFAULT NULL,\n `dtayttdipllmssbwdedueiqiahwydbzl` int DEFAULT NULL,\n `sallsdpfvfiargpfhetobamjbxhgahqg` int DEFAULT NULL,\n `ylusscobexbykxlrtfiurcvgattbuezr` int DEFAULT NULL,\n `trkjtwigusczoiouutyvruhluknjpuli` int DEFAULT NULL,\n `oqdjyzfucheuvcnhmhuutmtkhtpzcvmb` int DEFAULT NULL,\n `nuwtgdwgrfzpajyxniisyaoabsejynnh` int DEFAULT NULL,\n `ymsofunpmppnqbarjryywspcutnizhfw` int DEFAULT NULL,\n `kxhgnkwxfmkuswmfloeivxmhrgcgqaby` int DEFAULT NULL,\n `ofwnsobjneunifyjjsiuyboapaakccif` int DEFAULT NULL,\n `dtxnbkipmgdumdxyqzekrjojhmtloufk` int DEFAULT NULL,\n `uyufaivtnjfijiqzauwzwgxqheposyxs` int DEFAULT NULL,\n `ijztayhpbzzzowngxhalhzckncofdfun` int DEFAULT NULL,\n `kvbiueabteyfbbmvmvveaaqhodkvpnod` int DEFAULT NULL,\n `bqwbovapjkquonlwpsrykbumhbpzufhu` int DEFAULT NULL,\n `itturaydmvveuybihzfljovhfeondnoj` int DEFAULT NULL,\n `muldbwunjsnscubqvmqqmdufcxmwrsun` int DEFAULT NULL,\n `smatspsvfewkkvmjyakrdiifdzamjzez` int DEFAULT NULL,\n `hxyvfrxcjynccpkkyyulzzrbrqoexltm` int DEFAULT NULL,\n `huwensejwstzsmshqalaqgnyiptziwwl` int DEFAULT NULL,\n `tyxuxrauhdboipwsbbtslbqovdaueybe` int DEFAULT NULL,\n `rcsncsukshqmogdpgidlsijnjlhpjlim` int DEFAULT NULL,\n `vqdzspzffosldmdtwngjekxokluvqrjo` int DEFAULT NULL,\n `phljbenmcpmqxgvvdodccwwpogynnnoh` int DEFAULT NULL,\n `oofcaxfjkpemrwipihylydafbdnfoyuo` int DEFAULT NULL,\n `lwpqiklbgaezpdvyuceekhgllybjwmnn` int DEFAULT NULL,\n `cvztrgqvbpfzqadzrpoaufqcxbmfsmtg` int DEFAULT NULL,\n `xllavcqoawtixlawnljojxjdnercxwma` int DEFAULT NULL,\n `gqgkppzdpkgdkjtufzbnmhmbpixhtgin` int DEFAULT NULL,\n `jlrrcswujcwnrfsetxfisnularseamab` int DEFAULT NULL,\n `skviegnvpshtmaukuvambbyfxvdjkqrt` int DEFAULT NULL,\n `gkjxypvccaidforyztxiavgvjhopxolb` int DEFAULT NULL,\n `sqaxppfsipxysbjakwavhkudbcdyudat` int DEFAULT NULL,\n `vtzttaitzdzlvjaudivnzprmnuyaqfnj` int DEFAULT NULL,\n `edhqdurdsuxndugibbynjfctsuxuutof` int DEFAULT NULL,\n `laplivsarfmafiejemzliptxtjqxakcq` int DEFAULT NULL,\n `vpmdnakmgyresqpetyzplkbvffvbarxf` int DEFAULT NULL,\n `uqvwqmgiiqfjwkroxdyhrpzvsdtsmkvb` int DEFAULT NULL,\n `oxyseiqadnnegqwmeynilxfwturhzsno` int DEFAULT NULL,\n `pdzowqnxvosqzjpdpklbimkppfhunnbl` int DEFAULT NULL,\n `kflzxoporlcbonhqtjonfpqlrtoulmlq` int DEFAULT NULL,\n `xmkccsndpmrvnqdmvjzwxkknfbvrlmic` int DEFAULT NULL,\n `ekskyxhdrxyfipsxrmljcyhjxmhrcfjc` int DEFAULT NULL,\n `btqlshbdjahcumwefactdgfilkoupowr` int DEFAULT NULL,\n `fbpfivdnzlrhixvdvvkqlqdguralcist` int DEFAULT NULL,\n `jpfvweukzyjbgsrgfhbjlsoyzypacecb` int DEFAULT NULL,\n `jnutjuuatjlwbtgqgxybnbfuhwlggqly` int DEFAULT NULL,\n `zllomzeynmpihkpfaoclachanclekjnh` int DEFAULT NULL,\n `tzzhkhqqjhhxccdcdhijqptjbjynphcz` int DEFAULT NULL,\n `utkdpmuxvtsoapgdbgaevwarbeosoaqy` int DEFAULT NULL,\n `khqihxkoftqrklrhkawoicvedfylrqcd` int DEFAULT NULL,\n `euphkmznfucbdvfjqmmmlwsiifxngvzh` int DEFAULT NULL,\n `lptxjzwcvvvxzrokbzdifstypvowqbyf` int DEFAULT NULL,\n `feahmltxcwxgkibdjicrkqknbszadcvm` int DEFAULT NULL,\n `knfltjykdbgqyiiatcwhihspukshamei` int DEFAULT NULL,\n `anesgcgjggetdvnffacknwoniexoowxv` int DEFAULT NULL,\n `trdxmnytxaeikoprvxenizfwfvfzlaoe` int DEFAULT NULL,\n `qhsdvccqtlywdchjtegdxqiedtedadtl` int DEFAULT NULL,\n `iqyxnpeeysnrszrgiagwzabefmdibaid` int DEFAULT NULL,\n `rfsaatbhjvvpbgycllwcixgeviqkzpai` int DEFAULT NULL,\n `omydzbhjzimzplbfzmcepzdtqxqsyqow` int DEFAULT NULL,\n `fixmxubeteqglcizzovgkxsyasrkdgns` int DEFAULT NULL,\n `diiesxdlvkvbhfuhkpcjjhhtxqyrspcs` int DEFAULT NULL,\n `qylztegkrsmsxohfyowcmioapqrsptot` int DEFAULT NULL,\n `ehduzgotpyxqcutzkcerlozbgkuuzlgy` int DEFAULT NULL,\n `xrtlqbkrpxopqjfczgfkegfxcjnfpcpi` int DEFAULT NULL,\n `kcexwygaioddcejgguuobmyleoinwxgo` int DEFAULT NULL,\n `gvvwlwhrsdedfxezcalevxcbowgcnblv` int DEFAULT NULL,\n `mzairmlkgpozhsueivjxrgbfctfjvkbg` int DEFAULT NULL,\n `vcyvemrqnfvyiifonkaledstfldaghci` int DEFAULT NULL,\n `llsqrfreryfngockgyekhnzwetrmdume` int DEFAULT NULL,\n `iedsrxgwmajeafczjftymvywcnzxqtal` int DEFAULT NULL,\n `nyxucehtwahpshzpcjiojqpmleuahvfc` int DEFAULT NULL,\n `xwblxqfmznfczympdtflpsusyterrmhn` int DEFAULT NULL,\n `ynivunbjqyeyfnojmyqnpezyhluuteeg` int DEFAULT NULL,\n `ooaxevucibnafhrovpvexckhevrdeaql` int DEFAULT NULL,\n `abdoqtpvvdqokikxxgkhnwscfppwmwdu` int DEFAULT NULL,\n `okdmqfkclagkgluoqoyvyagzocecbsle` int DEFAULT NULL,\n `celxhansaudrpkmzjktzlupxxhxllfww` int DEFAULT NULL,\n PRIMARY KEY (`blpojeiwfwymwzcrqfszfpngkgcmltkf`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"pfqjiwqnmbfnwysrzbqigotyuehiiwaz\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["blpojeiwfwymwzcrqfszfpngkgcmltkf"],"columns":[{"name":"blpojeiwfwymwzcrqfszfpngkgcmltkf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"solnpencsdgfzobjnhboktlgnfvezbiz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgmijnhcjijypeidxrllcajodgasivpf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojxnrwvuhebjhawpawewlzeybyrflvhq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vzeppnvsavbgghkerbxdyqgswnmokrgi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytcxkciejxvgoobsbcgclcmbmwecpdqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bsgnssdalntqnnjxzinzzepnktcrrken","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfehhybdozqaxsslzhxdlxddrorbozoc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hcpbrabehjuunwsptauoetwdhtemvuau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnyoldcwzfsqliudmeqcqpotqhvtwiwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xawmzjhghorlcykftzycutdscwgvgnpc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhnjegpkfqypqpbrvhlsjvagtnrhlakk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnouuuidrfapwxckrirwpqkcnlofvkgo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iparxfllblrapgyuvnhtlxwdkmsfcbir","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjghxkfijkohnxpvwqbfinsxkfwqefbm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bxjwhuypovfczfmwafgpeedwlmxfmwrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgahqwtrfnkmoxmhflmhinpdxqsqmcnx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqruzbwbmxseuholvitezegnbvyztwfw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txgtvxnpgvrzmgxdpddacrvspanwuvnw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhgfbiydtlujprffexkcpwifkhdvnguh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fuaiyrtwdhurlrownzmwfcricwmhjvop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rniswhptsdvuhxrumkpnyhyoyqkoponr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtayttdipllmssbwdedueiqiahwydbzl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sallsdpfvfiargpfhetobamjbxhgahqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ylusscobexbykxlrtfiurcvgattbuezr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"trkjtwigusczoiouutyvruhluknjpuli","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqdjyzfucheuvcnhmhuutmtkhtpzcvmb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nuwtgdwgrfzpajyxniisyaoabsejynnh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ymsofunpmppnqbarjryywspcutnizhfw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxhgnkwxfmkuswmfloeivxmhrgcgqaby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofwnsobjneunifyjjsiuyboapaakccif","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtxnbkipmgdumdxyqzekrjojhmtloufk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uyufaivtnjfijiqzauwzwgxqheposyxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijztayhpbzzzowngxhalhzckncofdfun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvbiueabteyfbbmvmvveaaqhodkvpnod","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqwbovapjkquonlwpsrykbumhbpzufhu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itturaydmvveuybihzfljovhfeondnoj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"muldbwunjsnscubqvmqqmdufcxmwrsun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smatspsvfewkkvmjyakrdiifdzamjzez","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hxyvfrxcjynccpkkyyulzzrbrqoexltm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"huwensejwstzsmshqalaqgnyiptziwwl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tyxuxrauhdboipwsbbtslbqovdaueybe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcsncsukshqmogdpgidlsijnjlhpjlim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqdzspzffosldmdtwngjekxokluvqrjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phljbenmcpmqxgvvdodccwwpogynnnoh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oofcaxfjkpemrwipihylydafbdnfoyuo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwpqiklbgaezpdvyuceekhgllybjwmnn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvztrgqvbpfzqadzrpoaufqcxbmfsmtg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xllavcqoawtixlawnljojxjdnercxwma","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqgkppzdpkgdkjtufzbnmhmbpixhtgin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlrrcswujcwnrfsetxfisnularseamab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skviegnvpshtmaukuvambbyfxvdjkqrt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkjxypvccaidforyztxiavgvjhopxolb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sqaxppfsipxysbjakwavhkudbcdyudat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtzttaitzdzlvjaudivnzprmnuyaqfnj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edhqdurdsuxndugibbynjfctsuxuutof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"laplivsarfmafiejemzliptxtjqxakcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpmdnakmgyresqpetyzplkbvffvbarxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqvwqmgiiqfjwkroxdyhrpzvsdtsmkvb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oxyseiqadnnegqwmeynilxfwturhzsno","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdzowqnxvosqzjpdpklbimkppfhunnbl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kflzxoporlcbonhqtjonfpqlrtoulmlq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xmkccsndpmrvnqdmvjzwxkknfbvrlmic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekskyxhdrxyfipsxrmljcyhjxmhrcfjc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"btqlshbdjahcumwefactdgfilkoupowr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbpfivdnzlrhixvdvvkqlqdguralcist","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jpfvweukzyjbgsrgfhbjlsoyzypacecb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jnutjuuatjlwbtgqgxybnbfuhwlggqly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zllomzeynmpihkpfaoclachanclekjnh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tzzhkhqqjhhxccdcdhijqptjbjynphcz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utkdpmuxvtsoapgdbgaevwarbeosoaqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"khqihxkoftqrklrhkawoicvedfylrqcd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"euphkmznfucbdvfjqmmmlwsiifxngvzh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lptxjzwcvvvxzrokbzdifstypvowqbyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"feahmltxcwxgkibdjicrkqknbszadcvm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knfltjykdbgqyiiatcwhihspukshamei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"anesgcgjggetdvnffacknwoniexoowxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"trdxmnytxaeikoprvxenizfwfvfzlaoe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhsdvccqtlywdchjtegdxqiedtedadtl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqyxnpeeysnrszrgiagwzabefmdibaid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfsaatbhjvvpbgycllwcixgeviqkzpai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omydzbhjzimzplbfzmcepzdtqxqsyqow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fixmxubeteqglcizzovgkxsyasrkdgns","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"diiesxdlvkvbhfuhkpcjjhhtxqyrspcs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qylztegkrsmsxohfyowcmioapqrsptot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehduzgotpyxqcutzkcerlozbgkuuzlgy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xrtlqbkrpxopqjfczgfkegfxcjnfpcpi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kcexwygaioddcejgguuobmyleoinwxgo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gvvwlwhrsdedfxezcalevxcbowgcnblv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzairmlkgpozhsueivjxrgbfctfjvkbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vcyvemrqnfvyiifonkaledstfldaghci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llsqrfreryfngockgyekhnzwetrmdume","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iedsrxgwmajeafczjftymvywcnzxqtal","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nyxucehtwahpshzpcjiojqpmleuahvfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xwblxqfmznfczympdtflpsusyterrmhn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynivunbjqyeyfnojmyqnpezyhluuteeg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ooaxevucibnafhrovpvexckhevrdeaql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"abdoqtpvvdqokikxxgkhnwscfppwmwdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"okdmqfkclagkgluoqoyvyagzocecbsle","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"celxhansaudrpkmzjktzlupxxhxllfww","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670184,"databaseName":"models_schema","ddl":"CREATE TABLE `pghwpbsubektqcppdifryknztxnmsvhf` (\n `fjhjqdkhjkdlfwvawbkzxsjbtzcmgyvc` int NOT NULL,\n `pbuyhacjbmahoemjhqffgdcmeqpnznos` int DEFAULT NULL,\n `hvetxolhftuzyqiujcjzfgwkxurktrza` int DEFAULT NULL,\n `pcxhfofjkfthzgscnkjnfpydgpnzvmfu` int DEFAULT NULL,\n `kjbmzdvwjemgbvmaggzafhfbxavykndp` int DEFAULT NULL,\n `mbjworkjyrndfgqqjccyjibfthoxbxwy` int DEFAULT NULL,\n `qxyenolayckbhionuckibhisymmbjfwk` int DEFAULT NULL,\n `gnnmlgboynpgijnbbymtdccwnuvsmplp` int DEFAULT NULL,\n `nkbgevvbmzbveydukdhyfddtrbvbjlft` int DEFAULT NULL,\n `bpcarrxflqzuwhimhewrszjrpsqqsggm` int DEFAULT NULL,\n `jiqmgazujpxriywcrciqwmdhtzakwkcc` int DEFAULT NULL,\n `pqwnwxiliuuziatlcznbgokffdzjpevv` int DEFAULT NULL,\n `xlyaizfwnlaluibeogwdphmlktgwnnop` int DEFAULT NULL,\n `eidnwzsxvfjhjfypcienlxsdfnhapmhm` int DEFAULT NULL,\n `jgbpdnwyvpjyhqrnckhvjoavabiyypri` int DEFAULT NULL,\n `lftpspqgnuqehyoobcddlkkynddmvtfk` int DEFAULT NULL,\n `mboyyxmrbvhdxshpsjyllttrmjugvimb` int DEFAULT NULL,\n `mqgoerhwjyzdmccvqkgukbszxabnqlfh` int DEFAULT NULL,\n `njlpnynqmifakcxumjufichekbqcjujg` int DEFAULT NULL,\n `jakuxsfcagkugcrnoirxrtpvjizmgiaf` int DEFAULT NULL,\n `rthleyhliramkvurxovwhrlrzarxsuoy` int DEFAULT NULL,\n `punrtvuexqkgraywfkfdvlhhafqgutcx` int DEFAULT NULL,\n `ybynfalogttclgmnhmtzhfsoqupxhcol` int DEFAULT NULL,\n `jwoysusnuvujajerzgancludkgtjsfho` int DEFAULT NULL,\n `mmykdjrbxjpsmfynoqdgqgmptjaqsyvz` int DEFAULT NULL,\n `vtamywbqdpdsewziodmxhjpqnqlaofgx` int DEFAULT NULL,\n `sauafvdzfsppeycosvberwglinhmdudn` int DEFAULT NULL,\n `whycxmbfhlaknuoyxknearojeykfhxvq` int DEFAULT NULL,\n `nmorwipxdawqhcppinitfngxflpyowyu` int DEFAULT NULL,\n `qsbmwcfsmtcpbplreeqbdodyzhdwurbv` int DEFAULT NULL,\n `dhimijxdqyshsfrjyqhkdkgexbfloamg` int DEFAULT NULL,\n `gucfvwjsjzhxhzmecdontmjupilzfshr` int DEFAULT NULL,\n `txaipuxpiuqjoumnanctgcjcradiqbgm` int DEFAULT NULL,\n `ptogkzevrkvpncpjvvzbzegkiporhlmp` int DEFAULT NULL,\n `wjrksgepsfboyxinesjsqohlqpvlpaji` int DEFAULT NULL,\n `vierjwfwpklbimvxfciksupkkwtlxstk` int DEFAULT NULL,\n `prwwjzhgaeedxgheswgnqzbjxnmilqsl` int DEFAULT NULL,\n `lcrcbfauvdbxenrgyjayxplffipycjsc` int DEFAULT NULL,\n `mftcpsdlppxrocbezydnjcgkudvmtsou` int DEFAULT NULL,\n `uffzlrrpcpvprppnxkoaiinxtghxgykj` int DEFAULT NULL,\n `pwbeafyzutxkjjvigthlmjfivbswrejj` int DEFAULT NULL,\n `gtayzmobewgbeybkztnznrkdrnxuwhoh` int DEFAULT NULL,\n `xnlwuqxhjrkabhrnxqbjrpvahezmhahx` int DEFAULT NULL,\n `kxtrpavkjxgplstksonxspjymqqxdxky` int DEFAULT NULL,\n `yowjuoyqzxjudfzuvmznzthcrbcbrjjd` int DEFAULT NULL,\n `jhaqqboxrojmwkuxqzzgqwbcqbukzupz` int DEFAULT NULL,\n `ljibwkdgaurdyjibralnlzeqfmldffff` int DEFAULT NULL,\n `xugetljnhvrkfthouzggmhklcsyqqgap` int DEFAULT NULL,\n `ynbsubptywyvlospwfgjlqibcebmxena` int DEFAULT NULL,\n `qlfszfcecqfblezflnelrytadlxdwkye` int DEFAULT NULL,\n `oqgcmmkjwblldumcilflskzmotmrwoxu` int DEFAULT NULL,\n `khivwetoxxdmaoktxrvvnaxczknyrpbc` int DEFAULT NULL,\n `xqpvvwmwgprwtqltuyjhpvklzorlblkg` int DEFAULT NULL,\n `uocpoovtubhjguphohtepzzyhlmiczbd` int DEFAULT NULL,\n `oeevlxbpnckwbnxptzsdumbacleuwuzg` int DEFAULT NULL,\n `darvqpelrpdpdqulidmtlxkqcovtsxkq` int DEFAULT NULL,\n `figlhuzqslrqccivrbufcfpixmlkabwu` int DEFAULT NULL,\n `qyrrmtwywxwugkvinccddklcjolpcuxi` int DEFAULT NULL,\n `kpgcrzshjvmqmdtjdiurlikpogtzroat` int DEFAULT NULL,\n `ktmbtpltnvqhmdvrficxfvalvuamdifo` int DEFAULT NULL,\n `lyrnxzounqqyqxajsdxafbvhdwywmqmp` int DEFAULT NULL,\n `uyvjszukvsomtsqkdoasoppanocefaxo` int DEFAULT NULL,\n `nhxxscmyaqjfmozxyoyapregsydmmazy` int DEFAULT NULL,\n `zzxlbmqiprjgrbutqxpzbxazixixtodr` int DEFAULT NULL,\n `jhapvgrllzdqdjxvrzakyarcugndjogr` int DEFAULT NULL,\n `cxddlkrxxteenawuuwoqhwqydcpiwwse` int DEFAULT NULL,\n `acmgrdsqvliexvsodkkgvsevcewpmqpw` int DEFAULT NULL,\n `jmiamzhodvxyfyoptzsduwrsffcgsthc` int DEFAULT NULL,\n `xvkfbdtpmhwbmnzmzoileartnzgplpyh` int DEFAULT NULL,\n `gglpwmrxrhfonpxgpaqzqbuffxibowlt` int DEFAULT NULL,\n `xysdhcvfvcbbeukdfbeizyahozbpobds` int DEFAULT NULL,\n `rftdfjussifynramgtwcrtrmamknurjs` int DEFAULT NULL,\n `shggbdlenhfzovojlzzfuniwndlygojf` int DEFAULT NULL,\n `nvoczigqbgacdbtvntnaqvblhseeeqdq` int DEFAULT NULL,\n `xgibjdhdnobyoessykhsnsmrtetambuq` int DEFAULT NULL,\n `svlywalpwdodswvilqjuhoyyfrbtcwzr` int DEFAULT NULL,\n `cqwcsqrnounlwgohxtxemqnjugvtxzot` int DEFAULT NULL,\n `wpjglhzqajebndksjnikstjoquikptub` int DEFAULT NULL,\n `statwzqsbpjumfngifxqcuwnwhromopo` int DEFAULT NULL,\n `ecfzhfjfjlyyaxaxljmqjzfkqzoclzmc` int DEFAULT NULL,\n `eqeuxbnvfcelwpfnnszzfsxmiimquerw` int DEFAULT NULL,\n `bamamiknqgbuhmzlwnqfysapaowehmno` int DEFAULT NULL,\n `osrjjfgqqxxkbxonmaevabndjhcbgqos` int DEFAULT NULL,\n `pnoetjkiaelsauotqicktvinqrpoqwkq` int DEFAULT NULL,\n `dyrxscqebcuzeacgxkvtrdmfyttcvfgw` int DEFAULT NULL,\n `miidwrqptylzjyowibpghocrmapxlhhw` int DEFAULT NULL,\n `betwounxwabinbczdedxubqmefgbjlgo` int DEFAULT NULL,\n `mlotzwfqukczhdrmitpyvowihhzbhlmj` int DEFAULT NULL,\n `gqmzxihgynmjlkttdsbdxgnecfphjslp` int DEFAULT NULL,\n `vcpxytcadzmbtvqlcihylwocpzhqimku` int DEFAULT NULL,\n `otxsmxobozxfgxxbbbejhuzookzrsjjo` int DEFAULT NULL,\n `lenwulpscxzehlkmfnyhcjixwddqcndb` int DEFAULT NULL,\n `wyronnhjjpntgobkopyeiyazwaspegnl` int DEFAULT NULL,\n `yxrkdalesjzytpaohabmsfarbbakrmou` int DEFAULT NULL,\n `wjllnudkjlednxqjmafyjnmnxtfkcgwl` int DEFAULT NULL,\n `yqvykcwbhdgzwmraqowtmfjtzbivpbsc` int DEFAULT NULL,\n `bhegdlprfruubjtrsngfemyaxujmlbti` int DEFAULT NULL,\n `hrfclimanioxzllxtykmvlwnateejoay` int DEFAULT NULL,\n `gbheiursizbmyrvzdvzfvsimfuxzsres` int DEFAULT NULL,\n `uuuxdcyjsmjcaxzuvsegtebamsykukyx` int DEFAULT NULL,\n PRIMARY KEY (`fjhjqdkhjkdlfwvawbkzxsjbtzcmgyvc`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"pghwpbsubektqcppdifryknztxnmsvhf\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["fjhjqdkhjkdlfwvawbkzxsjbtzcmgyvc"],"columns":[{"name":"fjhjqdkhjkdlfwvawbkzxsjbtzcmgyvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"pbuyhacjbmahoemjhqffgdcmeqpnznos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hvetxolhftuzyqiujcjzfgwkxurktrza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pcxhfofjkfthzgscnkjnfpydgpnzvmfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjbmzdvwjemgbvmaggzafhfbxavykndp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbjworkjyrndfgqqjccyjibfthoxbxwy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxyenolayckbhionuckibhisymmbjfwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnnmlgboynpgijnbbymtdccwnuvsmplp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nkbgevvbmzbveydukdhyfddtrbvbjlft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bpcarrxflqzuwhimhewrszjrpsqqsggm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jiqmgazujpxriywcrciqwmdhtzakwkcc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqwnwxiliuuziatlcznbgokffdzjpevv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xlyaizfwnlaluibeogwdphmlktgwnnop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eidnwzsxvfjhjfypcienlxsdfnhapmhm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgbpdnwyvpjyhqrnckhvjoavabiyypri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lftpspqgnuqehyoobcddlkkynddmvtfk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mboyyxmrbvhdxshpsjyllttrmjugvimb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqgoerhwjyzdmccvqkgukbszxabnqlfh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njlpnynqmifakcxumjufichekbqcjujg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jakuxsfcagkugcrnoirxrtpvjizmgiaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rthleyhliramkvurxovwhrlrzarxsuoy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"punrtvuexqkgraywfkfdvlhhafqgutcx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ybynfalogttclgmnhmtzhfsoqupxhcol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwoysusnuvujajerzgancludkgtjsfho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmykdjrbxjpsmfynoqdgqgmptjaqsyvz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtamywbqdpdsewziodmxhjpqnqlaofgx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sauafvdzfsppeycosvberwglinhmdudn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"whycxmbfhlaknuoyxknearojeykfhxvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmorwipxdawqhcppinitfngxflpyowyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qsbmwcfsmtcpbplreeqbdodyzhdwurbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhimijxdqyshsfrjyqhkdkgexbfloamg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gucfvwjsjzhxhzmecdontmjupilzfshr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txaipuxpiuqjoumnanctgcjcradiqbgm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ptogkzevrkvpncpjvvzbzegkiporhlmp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjrksgepsfboyxinesjsqohlqpvlpaji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vierjwfwpklbimvxfciksupkkwtlxstk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prwwjzhgaeedxgheswgnqzbjxnmilqsl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lcrcbfauvdbxenrgyjayxplffipycjsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mftcpsdlppxrocbezydnjcgkudvmtsou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uffzlrrpcpvprppnxkoaiinxtghxgykj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwbeafyzutxkjjvigthlmjfivbswrejj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtayzmobewgbeybkztnznrkdrnxuwhoh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnlwuqxhjrkabhrnxqbjrpvahezmhahx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxtrpavkjxgplstksonxspjymqqxdxky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yowjuoyqzxjudfzuvmznzthcrbcbrjjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jhaqqboxrojmwkuxqzzgqwbcqbukzupz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljibwkdgaurdyjibralnlzeqfmldffff","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xugetljnhvrkfthouzggmhklcsyqqgap","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynbsubptywyvlospwfgjlqibcebmxena","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qlfszfcecqfblezflnelrytadlxdwkye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqgcmmkjwblldumcilflskzmotmrwoxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"khivwetoxxdmaoktxrvvnaxczknyrpbc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqpvvwmwgprwtqltuyjhpvklzorlblkg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uocpoovtubhjguphohtepzzyhlmiczbd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oeevlxbpnckwbnxptzsdumbacleuwuzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"darvqpelrpdpdqulidmtlxkqcovtsxkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"figlhuzqslrqccivrbufcfpixmlkabwu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qyrrmtwywxwugkvinccddklcjolpcuxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kpgcrzshjvmqmdtjdiurlikpogtzroat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ktmbtpltnvqhmdvrficxfvalvuamdifo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lyrnxzounqqyqxajsdxafbvhdwywmqmp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uyvjszukvsomtsqkdoasoppanocefaxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhxxscmyaqjfmozxyoyapregsydmmazy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzxlbmqiprjgrbutqxpzbxazixixtodr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jhapvgrllzdqdjxvrzakyarcugndjogr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cxddlkrxxteenawuuwoqhwqydcpiwwse","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"acmgrdsqvliexvsodkkgvsevcewpmqpw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmiamzhodvxyfyoptzsduwrsffcgsthc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvkfbdtpmhwbmnzmzoileartnzgplpyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gglpwmrxrhfonpxgpaqzqbuffxibowlt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xysdhcvfvcbbeukdfbeizyahozbpobds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rftdfjussifynramgtwcrtrmamknurjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shggbdlenhfzovojlzzfuniwndlygojf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvoczigqbgacdbtvntnaqvblhseeeqdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xgibjdhdnobyoessykhsnsmrtetambuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"svlywalpwdodswvilqjuhoyyfrbtcwzr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqwcsqrnounlwgohxtxemqnjugvtxzot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wpjglhzqajebndksjnikstjoquikptub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"statwzqsbpjumfngifxqcuwnwhromopo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecfzhfjfjlyyaxaxljmqjzfkqzoclzmc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqeuxbnvfcelwpfnnszzfsxmiimquerw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bamamiknqgbuhmzlwnqfysapaowehmno","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"osrjjfgqqxxkbxonmaevabndjhcbgqos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnoetjkiaelsauotqicktvinqrpoqwkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dyrxscqebcuzeacgxkvtrdmfyttcvfgw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"miidwrqptylzjyowibpghocrmapxlhhw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"betwounxwabinbczdedxubqmefgbjlgo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mlotzwfqukczhdrmitpyvowihhzbhlmj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqmzxihgynmjlkttdsbdxgnecfphjslp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vcpxytcadzmbtvqlcihylwocpzhqimku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otxsmxobozxfgxxbbbejhuzookzrsjjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lenwulpscxzehlkmfnyhcjixwddqcndb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wyronnhjjpntgobkopyeiyazwaspegnl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxrkdalesjzytpaohabmsfarbbakrmou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjllnudkjlednxqjmafyjnmnxtfkcgwl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqvykcwbhdgzwmraqowtmfjtzbivpbsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bhegdlprfruubjtrsngfemyaxujmlbti","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hrfclimanioxzllxtykmvlwnateejoay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gbheiursizbmyrvzdvzfvsimfuxzsres","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uuuxdcyjsmjcaxzuvsegtebamsykukyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670215,"databaseName":"models_schema","ddl":"CREATE TABLE `phfoifsjghtcrrrmlirrscflzgkfcilb` (\n `wamjleiidbltggzivpebuwdltwjyosbh` int NOT NULL,\n `ascypoddefikhbynipytigerugovkzhx` int DEFAULT NULL,\n `sxhbkotfmlmjedpdyxfycsziklnxdjqw` int DEFAULT NULL,\n `norezjxmngalzczpryzvwqauaieehhyc` int DEFAULT NULL,\n `llchxogddmnoprzjcdtgugqsxryerquw` int DEFAULT NULL,\n `gkyrpbzgkghfixqvighutfyjypbpgcpa` int DEFAULT NULL,\n `crvliwfrkbakhniopcrrikqurqxfakeu` int DEFAULT NULL,\n `hnyzegacyrscplcetgsjlfevnlokrsnu` int DEFAULT NULL,\n `xntaabuflozghtzizbphrqepxhwxixhq` int DEFAULT NULL,\n `mcqhuxhlbczrchoacwilejqwzgueqvmk` int DEFAULT NULL,\n `lfszupqeeflfwmlhjikwdyikywrfflkw` int DEFAULT NULL,\n `yndipojbdhhiapoosjwfzxtmskcfnzly` int DEFAULT NULL,\n `qtdrolcfbbveylzodjtpuwfrvimbuuhy` int DEFAULT NULL,\n `regnbizcurhsiaytkqsrfzvappzhkyck` int DEFAULT NULL,\n `vanagyoqbkxlnjvnvdqtclsasilrmsdh` int DEFAULT NULL,\n `rlwverxhndydmosnetqzrbykmzdibqpk` int DEFAULT NULL,\n `lveviwzrdlyymwtwebhhinewvtsbgwyw` int DEFAULT NULL,\n `zfuwjmkhviyiygjgxcdasgnoexvqqgcz` int DEFAULT NULL,\n `veorouldvdhrhvqjmlrkutbogxfdcpuc` int DEFAULT NULL,\n `ugolygcfsfthjhaqodehupxddpxkieof` int DEFAULT NULL,\n `dddzqbtwzxibvsitooyctntqeromfmvy` int DEFAULT NULL,\n `upuwxyozyjegoowgzwhktnumwpzznuqv` int DEFAULT NULL,\n `fhdmhrezutrpffofcbwfnsnjfgwzttvd` int DEFAULT NULL,\n `kibiqnjrgkqgpncmtshojrcubbdbwgrr` int DEFAULT NULL,\n `molpsyphluwfjmvymtxnfrmbqiifykls` int DEFAULT NULL,\n `myyighemhzqqlavnwgzxlrvzityqseun` int DEFAULT NULL,\n `donprqgeppmprurukohybmgbkzrzvizv` int DEFAULT NULL,\n `ipcbqkbbdwxmwzfceusfpvquffocncxe` int DEFAULT NULL,\n `pprdsvnliaoxktgbqkttrfflndcukluu` int DEFAULT NULL,\n `zlblqevgoahuwuphykexevjuboylceyd` int DEFAULT NULL,\n `zqjocjmokusyogqgvkkfezludxuoarfx` int DEFAULT NULL,\n `irtcmxbsusuxxbtqtfiimsvyrgyjkaca` int DEFAULT NULL,\n `mogllhsuzctyulyayjxarvakctnfxqzs` int DEFAULT NULL,\n `djboydzqwiuhzwyzuuzwkwogbumxayhr` int DEFAULT NULL,\n `zgjywmabqnzkrrhumluttdtrtcadutwj` int DEFAULT NULL,\n `slwdplnjppfsxmuaofblbibaygtotnro` int DEFAULT NULL,\n `humcffwsgbzzamlnlbzvpldkpfisjvgh` int DEFAULT NULL,\n `ejwurgqtqczbqixxzjayzxenxuiiegdh` int DEFAULT NULL,\n `usyapabjcftobyasfyrfhxqzdrkmklot` int DEFAULT NULL,\n `shtrwfjufixdmupwyqzhieykygyiijug` int DEFAULT NULL,\n `mjssykrsuvkkwjaxymqoercdpvjjecex` int DEFAULT NULL,\n `kcsufeyhduesopxcbjujelxahonduapx` int DEFAULT NULL,\n `hlhsmbifnrdzcwoakvjubdtkcitjtxad` int DEFAULT NULL,\n `eeyyfkehfnxwhctvgguykrrfweibhzpe` int DEFAULT NULL,\n `mhgzqxyekofnwcvdaxfdraynlweotfbv` int DEFAULT NULL,\n `blsnwwsjbalaockgpzhwypjuiirxceou` int DEFAULT NULL,\n `gkqaftsdfxvvdxprldaabheihzcznguj` int DEFAULT NULL,\n `qmdjzgfzdgaykhrfmzvoumrueigmyddu` int DEFAULT NULL,\n `lalqrccyluhztdvvzhanabxjrpvdzbjw` int DEFAULT NULL,\n `fnwidakzaxahghyuyyihqhwwzknxfkwm` int DEFAULT NULL,\n `lerniecytztdidtjctedyaekmoblfhai` int DEFAULT NULL,\n `ocrzthaeitaguijwzptzzcpyxxjvzdys` int DEFAULT NULL,\n `romwvaydjtoodpxkozrtkwxehgymifxl` int DEFAULT NULL,\n `vjjqgkhrnjbkyeupabhnqzenputsrqow` int DEFAULT NULL,\n `bqdpdzovqvplovffotgyaukqtvmrfvuf` int DEFAULT NULL,\n `lqabvptkfdybkbavqdwelawqzxawuwwz` int DEFAULT NULL,\n `affcbgzsgcxwqcqxlasxudffijtzzekn` int DEFAULT NULL,\n `ouefzepojgbygjwqpwtdapolpopaxbdu` int DEFAULT NULL,\n `lwbryqjdbtaaxdyiuxlbkigcnlwtsnpa` int DEFAULT NULL,\n `pmrfphjtcfrpaopqwyguoyssscbpemdn` int DEFAULT NULL,\n `mwwpxvdyzeeqyaxjjmavvefzycsqmeoq` int DEFAULT NULL,\n `uegkbvdlaliqwqzgmnevgviytpfbznsp` int DEFAULT NULL,\n `jnykobflexzcyazyrbnzstwlmautqviv` int DEFAULT NULL,\n `mtaolgcjsdkxsvynwrkmpeedawzoqgfn` int DEFAULT NULL,\n `jpzkeusrrdbkzdgxyjvdpgxyjhqmsyil` int DEFAULT NULL,\n `cgadgvabztidmavqkxbffftawhbwnxcv` int DEFAULT NULL,\n `qodscwwjigyxdghorcsapfkedryattea` int DEFAULT NULL,\n `louxsddyievmpysjqgucxsnwkbsmquvz` int DEFAULT NULL,\n `onkmlhbgnvaqebabumuodevrotywacdl` int DEFAULT NULL,\n `emphauidatdghovpscnbkjyiydlgobae` int DEFAULT NULL,\n `yvwyiiezpcvttlqtiyompqkiciireasr` int DEFAULT NULL,\n `opehjyrdeexmpvxzqgapbtluzpdlejlr` int DEFAULT NULL,\n `lrspsbcqphrcngiynswtzpiytijoldrg` int DEFAULT NULL,\n `ftieafnyjmqanjgmuzeqeartddbpypfg` int DEFAULT NULL,\n `husjnvskafnjqhnsbpxrgxbqmvksmagp` int DEFAULT NULL,\n `stnitgggbhwshlfjqqqvfmqkulexlwic` int DEFAULT NULL,\n `janovkygfrdnqtrbjhdxozvlojqlqrzm` int DEFAULT NULL,\n `yltlferhheedueiuaplzeztqiumqllvh` int DEFAULT NULL,\n `yzvxftjucbzmfwjkscffnxfyblnalnnd` int DEFAULT NULL,\n `urtwynpecbitijvenbroqsojnzmhgpqv` int DEFAULT NULL,\n `gdttknzokcecoeawctneuuyafdoqikyg` int DEFAULT NULL,\n `bbmnsqcbkotqhsampfythuhyvlzcfjwl` int DEFAULT NULL,\n `fxqibbxqvdsyysptqqdswvbxasfbwpwu` int DEFAULT NULL,\n `muzxeidzqrsoxtvfsjzpzljunfnktqwj` int DEFAULT NULL,\n `ntjrroolzdarehtazubqnkyxjyrokbau` int DEFAULT NULL,\n `xnmqqkyxrwmgiyfqsuiyxujrxmxvddwb` int DEFAULT NULL,\n `mfixfzpifpdjyqzdixtqdkcazoodbrhz` int DEFAULT NULL,\n `fykxayhnzasfupmdyjkfwldtwqapraxv` int DEFAULT NULL,\n `wywlziogkdthqvopxjydwjcdcejkaryp` int DEFAULT NULL,\n `gdtobvxcstblsvdsdgsgzecmzbyxxnxe` int DEFAULT NULL,\n `kziqmvdcxxkxyxofjucvsuysgbvonmeg` int DEFAULT NULL,\n `rdzvrziynojerkcfhcpnfolumdgtodzf` int DEFAULT NULL,\n `pojzvhoixqiilmsrfpnhxalvgqaiagaq` int DEFAULT NULL,\n `iwpwhixwtxqroxtcsoraolcyjmnapowq` int DEFAULT NULL,\n `hqlzvcyjxroptzzqvjdijsdsgwvpnkin` int DEFAULT NULL,\n `zktnnnqhzclcprphldrxuvlvsqtllwmt` int DEFAULT NULL,\n `ummsgpiieevqygfrkhspjobtmukpkkxr` int DEFAULT NULL,\n `jolbguyugxkitsjhaqgqlsjuwtvuzvda` int DEFAULT NULL,\n `dpymwbdokmcpghhdbphwasuntxleulxz` int DEFAULT NULL,\n `gvtsxyhqygyupwyyvzsatdakohxzzwdw` int DEFAULT NULL,\n PRIMARY KEY (`wamjleiidbltggzivpebuwdltwjyosbh`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"phfoifsjghtcrrrmlirrscflzgkfcilb\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["wamjleiidbltggzivpebuwdltwjyosbh"],"columns":[{"name":"wamjleiidbltggzivpebuwdltwjyosbh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"ascypoddefikhbynipytigerugovkzhx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sxhbkotfmlmjedpdyxfycsziklnxdjqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"norezjxmngalzczpryzvwqauaieehhyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llchxogddmnoprzjcdtgugqsxryerquw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkyrpbzgkghfixqvighutfyjypbpgcpa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"crvliwfrkbakhniopcrrikqurqxfakeu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hnyzegacyrscplcetgsjlfevnlokrsnu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xntaabuflozghtzizbphrqepxhwxixhq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcqhuxhlbczrchoacwilejqwzgueqvmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfszupqeeflfwmlhjikwdyikywrfflkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yndipojbdhhiapoosjwfzxtmskcfnzly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtdrolcfbbveylzodjtpuwfrvimbuuhy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"regnbizcurhsiaytkqsrfzvappzhkyck","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vanagyoqbkxlnjvnvdqtclsasilrmsdh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlwverxhndydmosnetqzrbykmzdibqpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lveviwzrdlyymwtwebhhinewvtsbgwyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zfuwjmkhviyiygjgxcdasgnoexvqqgcz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"veorouldvdhrhvqjmlrkutbogxfdcpuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugolygcfsfthjhaqodehupxddpxkieof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dddzqbtwzxibvsitooyctntqeromfmvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upuwxyozyjegoowgzwhktnumwpzznuqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhdmhrezutrpffofcbwfnsnjfgwzttvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kibiqnjrgkqgpncmtshojrcubbdbwgrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"molpsyphluwfjmvymtxnfrmbqiifykls","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"myyighemhzqqlavnwgzxlrvzityqseun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"donprqgeppmprurukohybmgbkzrzvizv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ipcbqkbbdwxmwzfceusfpvquffocncxe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pprdsvnliaoxktgbqkttrfflndcukluu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zlblqevgoahuwuphykexevjuboylceyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqjocjmokusyogqgvkkfezludxuoarfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"irtcmxbsusuxxbtqtfiimsvyrgyjkaca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mogllhsuzctyulyayjxarvakctnfxqzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"djboydzqwiuhzwyzuuzwkwogbumxayhr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zgjywmabqnzkrrhumluttdtrtcadutwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"slwdplnjppfsxmuaofblbibaygtotnro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"humcffwsgbzzamlnlbzvpldkpfisjvgh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejwurgqtqczbqixxzjayzxenxuiiegdh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"usyapabjcftobyasfyrfhxqzdrkmklot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shtrwfjufixdmupwyqzhieykygyiijug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjssykrsuvkkwjaxymqoercdpvjjecex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kcsufeyhduesopxcbjujelxahonduapx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlhsmbifnrdzcwoakvjubdtkcitjtxad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eeyyfkehfnxwhctvgguykrrfweibhzpe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhgzqxyekofnwcvdaxfdraynlweotfbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blsnwwsjbalaockgpzhwypjuiirxceou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkqaftsdfxvvdxprldaabheihzcznguj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmdjzgfzdgaykhrfmzvoumrueigmyddu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lalqrccyluhztdvvzhanabxjrpvdzbjw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnwidakzaxahghyuyyihqhwwzknxfkwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lerniecytztdidtjctedyaekmoblfhai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocrzthaeitaguijwzptzzcpyxxjvzdys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"romwvaydjtoodpxkozrtkwxehgymifxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjjqgkhrnjbkyeupabhnqzenputsrqow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqdpdzovqvplovffotgyaukqtvmrfvuf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqabvptkfdybkbavqdwelawqzxawuwwz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"affcbgzsgcxwqcqxlasxudffijtzzekn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ouefzepojgbygjwqpwtdapolpopaxbdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwbryqjdbtaaxdyiuxlbkigcnlwtsnpa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmrfphjtcfrpaopqwyguoyssscbpemdn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwwpxvdyzeeqyaxjjmavvefzycsqmeoq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uegkbvdlaliqwqzgmnevgviytpfbznsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jnykobflexzcyazyrbnzstwlmautqviv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtaolgcjsdkxsvynwrkmpeedawzoqgfn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jpzkeusrrdbkzdgxyjvdpgxyjhqmsyil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgadgvabztidmavqkxbffftawhbwnxcv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qodscwwjigyxdghorcsapfkedryattea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"louxsddyievmpysjqgucxsnwkbsmquvz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"onkmlhbgnvaqebabumuodevrotywacdl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"emphauidatdghovpscnbkjyiydlgobae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yvwyiiezpcvttlqtiyompqkiciireasr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opehjyrdeexmpvxzqgapbtluzpdlejlr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lrspsbcqphrcngiynswtzpiytijoldrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftieafnyjmqanjgmuzeqeartddbpypfg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"husjnvskafnjqhnsbpxrgxbqmvksmagp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"stnitgggbhwshlfjqqqvfmqkulexlwic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"janovkygfrdnqtrbjhdxozvlojqlqrzm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yltlferhheedueiuaplzeztqiumqllvh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzvxftjucbzmfwjkscffnxfyblnalnnd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urtwynpecbitijvenbroqsojnzmhgpqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdttknzokcecoeawctneuuyafdoqikyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbmnsqcbkotqhsampfythuhyvlzcfjwl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxqibbxqvdsyysptqqdswvbxasfbwpwu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"muzxeidzqrsoxtvfsjzpzljunfnktqwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntjrroolzdarehtazubqnkyxjyrokbau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnmqqkyxrwmgiyfqsuiyxujrxmxvddwb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mfixfzpifpdjyqzdixtqdkcazoodbrhz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fykxayhnzasfupmdyjkfwldtwqapraxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wywlziogkdthqvopxjydwjcdcejkaryp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdtobvxcstblsvdsdgsgzecmzbyxxnxe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kziqmvdcxxkxyxofjucvsuysgbvonmeg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdzvrziynojerkcfhcpnfolumdgtodzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pojzvhoixqiilmsrfpnhxalvgqaiagaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwpwhixwtxqroxtcsoraolcyjmnapowq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqlzvcyjxroptzzqvjdijsdsgwvpnkin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zktnnnqhzclcprphldrxuvlvsqtllwmt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ummsgpiieevqygfrkhspjobtmukpkkxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jolbguyugxkitsjhaqgqlsjuwtvuzvda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpymwbdokmcpghhdbphwasuntxleulxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gvtsxyhqygyupwyyvzsatdakohxzzwdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670245,"databaseName":"models_schema","ddl":"CREATE TABLE `pmufyqauiycsugklnqmjlwtntfykevoj` (\n `ftwyponodkggfdecemiwsujjrwyqadcx` int NOT NULL,\n `pheqausdsdvlsnnapxhkzulyodmkaeda` int DEFAULT NULL,\n `ujqcwgapnnldeewojaxedqhiuixnhoah` int DEFAULT NULL,\n `rhshyagqmmfwpsyljcwnbsflgwpxdczt` int DEFAULT NULL,\n `whsanbdgwtnonmcvgluaembxjpyocrcc` int DEFAULT NULL,\n `zgwawzgssjvuohdocrubuyjbmjmympym` int DEFAULT NULL,\n `yfhmwpnronzqztxybofxtscsklelgajo` int DEFAULT NULL,\n `yeequcsdagnbwlrnapqxfpfbttfjdtyv` int DEFAULT NULL,\n `xyzvodhpwebcrsgzrpbziobtonfkyakh` int DEFAULT NULL,\n `bdjsjgjuwgvfoaeofbyhwhlshjckloft` int DEFAULT NULL,\n `ajcmeiellsikjarxcotjgcoaigbkgvid` int DEFAULT NULL,\n `lqbzjwiymtscgzqyxuasabxzjpfmuicx` int DEFAULT NULL,\n `ypcrikflgeclhzcsklczdcnrhuauwvec` int DEFAULT NULL,\n `muvulkcglqvsipoejcnodngyxkbmjlce` int DEFAULT NULL,\n `qyjxdxniesrwzrmhsuqzkzrzomnbycyb` int DEFAULT NULL,\n `ojmygfitgzkgtjipckvccqtsloaugqgk` int DEFAULT NULL,\n `gjhsejpanwigdfxdfgbigybaajidwbif` int DEFAULT NULL,\n `qczvljmljpzcgzbruyhuozlbmnnlixnz` int DEFAULT NULL,\n `anffidjrohwdfcrnajtyjxzhvuqyeuho` int DEFAULT NULL,\n `wbfeqzblewzwzaisezxkkmmiftgppspt` int DEFAULT NULL,\n `wdzrbthdpffwoncidfmlhywulmtyzgdw` int DEFAULT NULL,\n `qqhgcnobpazhzmqlgtpzaduurowovgoy` int DEFAULT NULL,\n `ahlcnmdnbjnopaqplaoonrgfbutepdnt` int DEFAULT NULL,\n `pphbjwzniogzsixueydjkeolzqqlmpky` int DEFAULT NULL,\n `ugwghdnpwrcewmtchjkmptfxqhfcgjgz` int DEFAULT NULL,\n `ibddldkkuznnutrgugpuokismeecggbi` int DEFAULT NULL,\n `qjpwrkdvsksvxvytwvwivkxxreprqxzh` int DEFAULT NULL,\n `jxphoftzpbqlmjdwnvaynzhwhpxwcpxf` int DEFAULT NULL,\n `gpycycrlarlqclmhgrkeouiygvuvdtfa` int DEFAULT NULL,\n `ndkvajziftqnhgdhqkkrjnvnohcatary` int DEFAULT NULL,\n `pdipimebgmfeoiusqojflwurhenltpys` int DEFAULT NULL,\n `alchottmczhiffombzgrjucwnzjbvrtk` int DEFAULT NULL,\n `wgqdwmxydgdvjbwenlylvmbkdkctoybk` int DEFAULT NULL,\n `qyqttmrxuxwondnmivzpjuwqtxutdpqx` int DEFAULT NULL,\n `xiqdubfyegqrnhxayohsnnohnoukdcnp` int DEFAULT NULL,\n `encxwmppkzgfecgzclnfksixfawhjsmf` int DEFAULT NULL,\n `fmkzphxxykoqoomhrbakndgtprlbetrr` int DEFAULT NULL,\n `wjyvyxrvxzbqmgzzpadsqfdqcjgvbugt` int DEFAULT NULL,\n `oaplkzpuzbiovseecqrkrhllhuyzxlhv` int DEFAULT NULL,\n `zdeahizpwcjutoeyjdqrrrmjbxjglwda` int DEFAULT NULL,\n `gkmmcszbawmxdiwcogbqopqrpcvepszt` int DEFAULT NULL,\n `hlobqujftnmtjphstsxigjjoqipjhouo` int DEFAULT NULL,\n `ilxsegsujphfzwietpdydqtuphwcmfbf` int DEFAULT NULL,\n `feojhhhitdjmmwxvlsvibjedkbgugfoy` int DEFAULT NULL,\n `rlzijxilggyaoywevebnhndbhljmtikn` int DEFAULT NULL,\n `evlzlhxncqwaaxftjigynrhdwhosxsvp` int DEFAULT NULL,\n `zbvkhxiavxptjoxzwmzjlwqcfnausqzg` int DEFAULT NULL,\n `axjlpwlzqxuvwtygflnneclvycyktyez` int DEFAULT NULL,\n `kipgokykungvjjoezshhlosekwmwzcew` int DEFAULT NULL,\n `kajrjhhqvgwamvpviidnepnzpkiriacq` int DEFAULT NULL,\n `xiszqhtvmaibcgiiijjuojeofkodtgvi` int DEFAULT NULL,\n `axacbscoalvtudijoyvuqbzemqxhrjwx` int DEFAULT NULL,\n `tdxltpnnzfubtsomjmmjicmnpkcihdky` int DEFAULT NULL,\n `ssdxyifqwqnzsedustkgphylaotqdvzs` int DEFAULT NULL,\n `jufccssffgzrmpuafoljqcktuktwzvbx` int DEFAULT NULL,\n `tvqaefeczhqfjlepicpuvytmoauttesh` int DEFAULT NULL,\n `extmdmeaoduwpqvoiecystozqtdomsma` int DEFAULT NULL,\n `eiemgegtdjiidypkpvdbpubbinapqxoi` int DEFAULT NULL,\n `yelvpcdksztczgkaanomncmkydwlbsqa` int DEFAULT NULL,\n `bghqilbxucyjtkcbnbapqwvwuugfshki` int DEFAULT NULL,\n `wzybdkrgnimsqesivvhmrlifnmtcohrd` int DEFAULT NULL,\n `msrvkyihezyolbtrhkcibwopoikirqpm` int DEFAULT NULL,\n `nbgysndqubssajndohbfiqagoiaevonw` int DEFAULT NULL,\n `azaquxnpqwugryzfvpyudntbduzjipib` int DEFAULT NULL,\n `orchaepefaajvqmagbvkmtukvzockbga` int DEFAULT NULL,\n `eldwxgfnhvbvxvkhcqegzviinwzjdyfg` int DEFAULT NULL,\n `mjmjwrguncvxoyirvplfwzidgkbwftxt` int DEFAULT NULL,\n `zbyfvqdeeankfsbgptuflggtauypydkg` int DEFAULT NULL,\n `wcwensthwgneccawzrcxasaezxbmccto` int DEFAULT NULL,\n `pensjftvwwqvrvxrcysputdcfwvjdfww` int DEFAULT NULL,\n `cbwtbmkxxooztinhqbqslvjxspzdyepm` int DEFAULT NULL,\n `eootcovvmuhzdjcteynzijifcqaearic` int DEFAULT NULL,\n `nkoxpefcsbgwhpfzvhbtrrxqstlxbxbb` int DEFAULT NULL,\n `fxuucqaxrcqfakpgsdrpnkftmdlvxljc` int DEFAULT NULL,\n `kvwtapmuxveuxtjeudsuajkfyjwajdil` int DEFAULT NULL,\n `llclcyhhcesxzpzaqxzbeqhrbtbyavkf` int DEFAULT NULL,\n `tcjwmdpojqzlwrhefsxmettfautdxwuc` int DEFAULT NULL,\n `mcaxdandqztzdamjrkrcjsuzijacbtwx` int DEFAULT NULL,\n `cczokabyjsnkfvrhcutaksbpssslnzvi` int DEFAULT NULL,\n `izpbmmmhrqcszypyyrtgemwcdjxkcihq` int DEFAULT NULL,\n `rayekxmnhsoblfrknxewknndqbhygejg` int DEFAULT NULL,\n `czgrehnbivmwkzamiilbklptevkwhihy` int DEFAULT NULL,\n `kwhadiahumacyssxcxyrmmhmhxrhsvee` int DEFAULT NULL,\n `suyzowrvwwioszzdripkvkpxpkbdyxae` int DEFAULT NULL,\n `jwvastosbdreruwkldcscwxzcihvedab` int DEFAULT NULL,\n `bwolgeljgbqcroocenkbmeeenvmhgxfr` int DEFAULT NULL,\n `nkixkzqhoxaaqkogislzqfdswemcldio` int DEFAULT NULL,\n `fhmivndtwpyfvfumjhujdngqkjzotich` int DEFAULT NULL,\n `mhkfajymukazbysihgtucnibczyvfckb` int DEFAULT NULL,\n `jvlqirpvjddakkqxezxffublesjguvgq` int DEFAULT NULL,\n `jlqndsfneenljlwsytcdkhxqtchvlnxh` int DEFAULT NULL,\n `crrntawjzgafdhjoinzwwoqvoabmxeny` int DEFAULT NULL,\n `aeawhkbcjsojgdxosdhpxbyckyjwzcbl` int DEFAULT NULL,\n `rezxzmlycpbfepeqkzbjfpgzimqsfoii` int DEFAULT NULL,\n `zrgnnqnldskwrfzywkotbhupqpxexgrz` int DEFAULT NULL,\n `tcaagudhjrbkznffmybvceawqljzpima` int DEFAULT NULL,\n `hzbouynoaunlymxlmjocbdxpgtguaiol` int DEFAULT NULL,\n `mgracabbaonxmaploaaajodjjmvxqkfx` int DEFAULT NULL,\n `xfdaatbvaytnrqapgsbdanltogrrbktd` int DEFAULT NULL,\n `gyztacuurxmtknqcstjhqyqiypbsdopt` int DEFAULT NULL,\n PRIMARY KEY (`ftwyponodkggfdecemiwsujjrwyqadcx`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"pmufyqauiycsugklnqmjlwtntfykevoj\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["ftwyponodkggfdecemiwsujjrwyqadcx"],"columns":[{"name":"ftwyponodkggfdecemiwsujjrwyqadcx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"pheqausdsdvlsnnapxhkzulyodmkaeda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujqcwgapnnldeewojaxedqhiuixnhoah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhshyagqmmfwpsyljcwnbsflgwpxdczt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"whsanbdgwtnonmcvgluaembxjpyocrcc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zgwawzgssjvuohdocrubuyjbmjmympym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfhmwpnronzqztxybofxtscsklelgajo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yeequcsdagnbwlrnapqxfpfbttfjdtyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyzvodhpwebcrsgzrpbziobtonfkyakh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bdjsjgjuwgvfoaeofbyhwhlshjckloft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajcmeiellsikjarxcotjgcoaigbkgvid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqbzjwiymtscgzqyxuasabxzjpfmuicx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypcrikflgeclhzcsklczdcnrhuauwvec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"muvulkcglqvsipoejcnodngyxkbmjlce","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qyjxdxniesrwzrmhsuqzkzrzomnbycyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojmygfitgzkgtjipckvccqtsloaugqgk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjhsejpanwigdfxdfgbigybaajidwbif","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qczvljmljpzcgzbruyhuozlbmnnlixnz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"anffidjrohwdfcrnajtyjxzhvuqyeuho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbfeqzblewzwzaisezxkkmmiftgppspt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wdzrbthdpffwoncidfmlhywulmtyzgdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqhgcnobpazhzmqlgtpzaduurowovgoy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ahlcnmdnbjnopaqplaoonrgfbutepdnt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pphbjwzniogzsixueydjkeolzqqlmpky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugwghdnpwrcewmtchjkmptfxqhfcgjgz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibddldkkuznnutrgugpuokismeecggbi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjpwrkdvsksvxvytwvwivkxxreprqxzh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jxphoftzpbqlmjdwnvaynzhwhpxwcpxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gpycycrlarlqclmhgrkeouiygvuvdtfa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ndkvajziftqnhgdhqkkrjnvnohcatary","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdipimebgmfeoiusqojflwurhenltpys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"alchottmczhiffombzgrjucwnzjbvrtk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wgqdwmxydgdvjbwenlylvmbkdkctoybk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qyqttmrxuxwondnmivzpjuwqtxutdpqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xiqdubfyegqrnhxayohsnnohnoukdcnp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"encxwmppkzgfecgzclnfksixfawhjsmf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmkzphxxykoqoomhrbakndgtprlbetrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjyvyxrvxzbqmgzzpadsqfdqcjgvbugt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oaplkzpuzbiovseecqrkrhllhuyzxlhv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdeahizpwcjutoeyjdqrrrmjbxjglwda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkmmcszbawmxdiwcogbqopqrpcvepszt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlobqujftnmtjphstsxigjjoqipjhouo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ilxsegsujphfzwietpdydqtuphwcmfbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"feojhhhitdjmmwxvlsvibjedkbgugfoy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlzijxilggyaoywevebnhndbhljmtikn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evlzlhxncqwaaxftjigynrhdwhosxsvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbvkhxiavxptjoxzwmzjlwqcfnausqzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axjlpwlzqxuvwtygflnneclvycyktyez","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kipgokykungvjjoezshhlosekwmwzcew","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kajrjhhqvgwamvpviidnepnzpkiriacq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xiszqhtvmaibcgiiijjuojeofkodtgvi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axacbscoalvtudijoyvuqbzemqxhrjwx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tdxltpnnzfubtsomjmmjicmnpkcihdky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ssdxyifqwqnzsedustkgphylaotqdvzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jufccssffgzrmpuafoljqcktuktwzvbx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvqaefeczhqfjlepicpuvytmoauttesh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"extmdmeaoduwpqvoiecystozqtdomsma","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eiemgegtdjiidypkpvdbpubbinapqxoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yelvpcdksztczgkaanomncmkydwlbsqa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bghqilbxucyjtkcbnbapqwvwuugfshki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzybdkrgnimsqesivvhmrlifnmtcohrd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"msrvkyihezyolbtrhkcibwopoikirqpm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbgysndqubssajndohbfiqagoiaevonw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"azaquxnpqwugryzfvpyudntbduzjipib","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orchaepefaajvqmagbvkmtukvzockbga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eldwxgfnhvbvxvkhcqegzviinwzjdyfg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjmjwrguncvxoyirvplfwzidgkbwftxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbyfvqdeeankfsbgptuflggtauypydkg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcwensthwgneccawzrcxasaezxbmccto","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pensjftvwwqvrvxrcysputdcfwvjdfww","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbwtbmkxxooztinhqbqslvjxspzdyepm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eootcovvmuhzdjcteynzijifcqaearic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nkoxpefcsbgwhpfzvhbtrrxqstlxbxbb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxuucqaxrcqfakpgsdrpnkftmdlvxljc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvwtapmuxveuxtjeudsuajkfyjwajdil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llclcyhhcesxzpzaqxzbeqhrbtbyavkf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tcjwmdpojqzlwrhefsxmettfautdxwuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcaxdandqztzdamjrkrcjsuzijacbtwx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cczokabyjsnkfvrhcutaksbpssslnzvi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"izpbmmmhrqcszypyyrtgemwcdjxkcihq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rayekxmnhsoblfrknxewknndqbhygejg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"czgrehnbivmwkzamiilbklptevkwhihy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwhadiahumacyssxcxyrmmhmhxrhsvee","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"suyzowrvwwioszzdripkvkpxpkbdyxae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwvastosbdreruwkldcscwxzcihvedab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bwolgeljgbqcroocenkbmeeenvmhgxfr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nkixkzqhoxaaqkogislzqfdswemcldio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhmivndtwpyfvfumjhujdngqkjzotich","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhkfajymukazbysihgtucnibczyvfckb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvlqirpvjddakkqxezxffublesjguvgq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlqndsfneenljlwsytcdkhxqtchvlnxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"crrntawjzgafdhjoinzwwoqvoabmxeny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aeawhkbcjsojgdxosdhpxbyckyjwzcbl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rezxzmlycpbfepeqkzbjfpgzimqsfoii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zrgnnqnldskwrfzywkotbhupqpxexgrz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tcaagudhjrbkznffmybvceawqljzpima","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hzbouynoaunlymxlmjocbdxpgtguaiol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mgracabbaonxmaploaaajodjjmvxqkfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xfdaatbvaytnrqapgsbdanltogrrbktd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gyztacuurxmtknqcstjhqyqiypbsdopt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670277,"databaseName":"models_schema","ddl":"CREATE TABLE `ptxoeakypxcinxgiwxnegyucbfpderrz` (\n `gqpeikpphltvtgvvxoqeqkaofjfalwoq` int NOT NULL,\n `mabtbcdnbafwxoexkquoppknrvqipgqb` int DEFAULT NULL,\n `dsgeazdmkcvmykhlkxsfjzgeyplbyzpz` int DEFAULT NULL,\n `seswbqhxofjenovwosokwhzdttwfdacq` int DEFAULT NULL,\n `lshrotucstdedpzwpksazqvdkxzlclea` int DEFAULT NULL,\n `kyqbzbcrwbllvsbrjudseueuqrlloaaw` int DEFAULT NULL,\n `uznztszsqnhrpvzksifquwrkzojklgfx` int DEFAULT NULL,\n `dcaocnqsplyxzwckcalkdbfiuzyzkikb` int DEFAULT NULL,\n `qhyazxhifjfvuwubqumrmpjptxshkesl` int DEFAULT NULL,\n `qsmquirewjodkcmzqywfnhavxnjvbayh` int DEFAULT NULL,\n `vyrjikuaynacieswsmpwpburaxierewo` int DEFAULT NULL,\n `fsuvhrdqxwwzmiwappvxsrhkegjchajd` int DEFAULT NULL,\n `ojcsddldbtnfalgtjsadxkqftpanumfa` int DEFAULT NULL,\n `yovhxncvulteorchjetjinsralckhqzk` int DEFAULT NULL,\n `npxgevbyygtwwdmvpnicrwncfuhkooia` int DEFAULT NULL,\n `fxyhwifncfcgynlzermyplfsldumcuyb` int DEFAULT NULL,\n `javxzinfispwjdhzagvgwvneiugyfrbr` int DEFAULT NULL,\n `wadvuswyvwcxwiuyfheuclpkdynnfqvk` int DEFAULT NULL,\n `dqxsycfprhzxlvxpswucvfkusjhlmrkh` int DEFAULT NULL,\n `myghmhbyfngzryizcawwhoivilkvcrjc` int DEFAULT NULL,\n `epmhjipcskxznoykemytgptejytuzvqk` int DEFAULT NULL,\n `mhbpsdqbvvltlevjhjgcpwrigpopngdb` int DEFAULT NULL,\n `mnbkbennacnolctczvhwvpmmuorfmfvp` int DEFAULT NULL,\n `iztkxmrtkuijjdscmgzsqfpqtlftxxlg` int DEFAULT NULL,\n `gbzlqswmsfltgfymqiquwcxmnjemtrlz` int DEFAULT NULL,\n `lpywhyuqxzgegfqahyhypjakdhinffqm` int DEFAULT NULL,\n `mmriuhbchjzudompvawviwgfbfzsjcor` int DEFAULT NULL,\n `cetglgupnbxwwmhmkqfwamnbnukrzvrk` int DEFAULT NULL,\n `dplqcyujgcxtkklnanqmmsjpagvbrybf` int DEFAULT NULL,\n `ktlklwvezorsiuymrryuooplpqcbvfti` int DEFAULT NULL,\n `cvnfxoffbuuxxlyypkkipubnoczupkqo` int DEFAULT NULL,\n `ezpnraixduayjpgdkpdlmfniceihvgob` int DEFAULT NULL,\n `gmgajktawnvcaiinuqqoblpdlyijjpzw` int DEFAULT NULL,\n `ghtybfwsitqziiemhwxjqxlzjugntwbf` int DEFAULT NULL,\n `ofyqncgvfzffdrwjpmwrmoaqjduovqtv` int DEFAULT NULL,\n `ywftdvkplgrddclydfzblhybdkgzjrzd` int DEFAULT NULL,\n `alxqaucecefpfnpwvwhxxdjrbmocizoz` int DEFAULT NULL,\n `ipwvlkglaluhffwfycqdckpahbbnyitx` int DEFAULT NULL,\n `agbvhecyyloflxzmmonwwfrzjsfefxqn` int DEFAULT NULL,\n `vatcurfaubrpzeumkedgqaduzxdmecea` int DEFAULT NULL,\n `dwmneiwzivqajftfafzqyuetodqolzyq` int DEFAULT NULL,\n `ukdbcztgffoeuvkzwbjjbhvdfyghzaod` int DEFAULT NULL,\n `zqluyinygzfpabwbkelyorpztnaapmvf` int DEFAULT NULL,\n `tqkdshjcgtbopxpjjuziqumxhynbcvku` int DEFAULT NULL,\n `bfzoiauprwmwuzhlvlfowohugmuvkltk` int DEFAULT NULL,\n `fmsmnfdfqfkiifiwikajchvvchuwxrbk` int DEFAULT NULL,\n `mzjgvnghotossmpqqsmnsqtrixaxtxwf` int DEFAULT NULL,\n `liycphoxdemjeqlsnlwmeueqdxgfpycq` int DEFAULT NULL,\n `rpjyfwvinhghdwbdazmanqebztrgcgmi` int DEFAULT NULL,\n `mvzdrdmqomqqtxnzwlemuttbysxodaek` int DEFAULT NULL,\n `smaccnswkqvfncnybneshlicwdvmhrei` int DEFAULT NULL,\n `mbhfgwgcydobyfnmylrgjyttyebzcqfs` int DEFAULT NULL,\n `scvpscfgbnearoyscsfdrybekzhwyoly` int DEFAULT NULL,\n `gqbqpceppownjeillkkecaeaxktrlwav` int DEFAULT NULL,\n `pwgbittzoywvljzvioaucdbsfhxtanvk` int DEFAULT NULL,\n `ypitfubipgmmqpygwelksqcfxsnipjlr` int DEFAULT NULL,\n `tvnhvqmpsygvgtjgnlbjfhufkfmisscn` int DEFAULT NULL,\n `szvgdeyslvgpvqeixkjubslobgeuqttu` int DEFAULT NULL,\n `yakuqjidfdlpukqlfkejworfgjiqpytp` int DEFAULT NULL,\n `rurtcsgmhsdsnizydvhpvpfrgdqleraq` int DEFAULT NULL,\n `fzeqpsuyjcfsbcuxexgdlxopybpedufq` int DEFAULT NULL,\n `vhbvspqjeoubluvucsrfxwjmwsnrbxvf` int DEFAULT NULL,\n `ctzfatfmrxivqigouyrkijtaeddhyfqg` int DEFAULT NULL,\n `xzaypyvwrpyrhzhbhtqoesodztdtvggi` int DEFAULT NULL,\n `tadzkyltqapjgsbhyqrpqthkltrltcze` int DEFAULT NULL,\n `ozhobhihgrlhogpipszqbbwbcndihhuy` int DEFAULT NULL,\n `xqaogifeqiygfwusvbhnaayuxapbspki` int DEFAULT NULL,\n `hqevrtxwhqvoopuflrgolyvvtztdmghr` int DEFAULT NULL,\n `urzljffgaectnuwejunyxrjshhzyauuu` int DEFAULT NULL,\n `gwyjrzrudommvplakvgpsainmcgjjiom` int DEFAULT NULL,\n `nwoardiaxnftzaqvhqdreruguxackaps` int DEFAULT NULL,\n `zxeyxyxizccfuyfpcgibuykoxmxegvuc` int DEFAULT NULL,\n `gerpdgnwyntuliybjiqszfziporjpcvq` int DEFAULT NULL,\n `cqkcrloirknrvtfmiodcqwrpxgcknfjd` int DEFAULT NULL,\n `ofxocsspjdbyyubhohctvrlpqjbekaif` int DEFAULT NULL,\n `guzqhueniesfiuipbhcwhnxjazuwklok` int DEFAULT NULL,\n `ecdgpufluzikjdvvetdrnspypkwffqmy` int DEFAULT NULL,\n `qjaepwuynxagjscmbkgwzszzlmqixeit` int DEFAULT NULL,\n `aunkkbibruqohsfjkznxltpdfqkmituq` int DEFAULT NULL,\n `exmgkewjicdlnpoahpmbimmbpqcvmofg` int DEFAULT NULL,\n `ucutskzuhprhrrxjcjekokqkuiadofzo` int DEFAULT NULL,\n `ovevmglsdrxrchodnzfervwnnwxosanc` int DEFAULT NULL,\n `hucerpagcaegwsmjqgxxzzavnbivyica` int DEFAULT NULL,\n `rdziifaividucdujstowvgvrlupkenpr` int DEFAULT NULL,\n `kwlcaskgsvhngppeexydemnspreftdgi` int DEFAULT NULL,\n `uclmrlqgukajwoewibklozhyykhrkqun` int DEFAULT NULL,\n `wxzounndpavcdhqdplbffdnesbqeyhhu` int DEFAULT NULL,\n `cjxqvlohquqdkkasyraxzkjugscuipui` int DEFAULT NULL,\n `wvzgamtdrhcgxaqcwqtcgdmvytrkrphw` int DEFAULT NULL,\n `wksbjvxyjukfkurxpofkkxbuxroeafag` int DEFAULT NULL,\n `xvgcltlkphbdrxwkpqbvwyoptwpjavup` int DEFAULT NULL,\n `fqvusiwibequlvaqljvvmbdhpidbeojl` int DEFAULT NULL,\n `yckehepjelgydltbmgibfzfrvwtzcpos` int DEFAULT NULL,\n `tkebdeeplfueuuxlwpkenkyavhyicegi` int DEFAULT NULL,\n `wtgwqdettjvtvpdechqvvoytgwzztrth` int DEFAULT NULL,\n `gnormckgfkdzjuxzjztyryswvuhbupdk` int DEFAULT NULL,\n `uqvaasavdbrhklmromcfahtkattznoff` int DEFAULT NULL,\n `sjyecqoedzvdebtbyizzrxbhkzoveexo` int DEFAULT NULL,\n `pribyuqsrzpnengaejcgfudwucdoqajr` int DEFAULT NULL,\n `rwndwqpzncnbddkwsufhfkyckbrlzhee` int DEFAULT NULL,\n PRIMARY KEY (`gqpeikpphltvtgvvxoqeqkaofjfalwoq`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"ptxoeakypxcinxgiwxnegyucbfpderrz\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["gqpeikpphltvtgvvxoqeqkaofjfalwoq"],"columns":[{"name":"gqpeikpphltvtgvvxoqeqkaofjfalwoq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"mabtbcdnbafwxoexkquoppknrvqipgqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dsgeazdmkcvmykhlkxsfjzgeyplbyzpz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"seswbqhxofjenovwosokwhzdttwfdacq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lshrotucstdedpzwpksazqvdkxzlclea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kyqbzbcrwbllvsbrjudseueuqrlloaaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uznztszsqnhrpvzksifquwrkzojklgfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcaocnqsplyxzwckcalkdbfiuzyzkikb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhyazxhifjfvuwubqumrmpjptxshkesl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qsmquirewjodkcmzqywfnhavxnjvbayh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vyrjikuaynacieswsmpwpburaxierewo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fsuvhrdqxwwzmiwappvxsrhkegjchajd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojcsddldbtnfalgtjsadxkqftpanumfa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yovhxncvulteorchjetjinsralckhqzk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"npxgevbyygtwwdmvpnicrwncfuhkooia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxyhwifncfcgynlzermyplfsldumcuyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"javxzinfispwjdhzagvgwvneiugyfrbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wadvuswyvwcxwiuyfheuclpkdynnfqvk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqxsycfprhzxlvxpswucvfkusjhlmrkh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"myghmhbyfngzryizcawwhoivilkvcrjc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"epmhjipcskxznoykemytgptejytuzvqk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhbpsdqbvvltlevjhjgcpwrigpopngdb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnbkbennacnolctczvhwvpmmuorfmfvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iztkxmrtkuijjdscmgzsqfpqtlftxxlg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gbzlqswmsfltgfymqiquwcxmnjemtrlz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lpywhyuqxzgegfqahyhypjakdhinffqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmriuhbchjzudompvawviwgfbfzsjcor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cetglgupnbxwwmhmkqfwamnbnukrzvrk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dplqcyujgcxtkklnanqmmsjpagvbrybf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ktlklwvezorsiuymrryuooplpqcbvfti","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvnfxoffbuuxxlyypkkipubnoczupkqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezpnraixduayjpgdkpdlmfniceihvgob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmgajktawnvcaiinuqqoblpdlyijjpzw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghtybfwsitqziiemhwxjqxlzjugntwbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofyqncgvfzffdrwjpmwrmoaqjduovqtv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywftdvkplgrddclydfzblhybdkgzjrzd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"alxqaucecefpfnpwvwhxxdjrbmocizoz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ipwvlkglaluhffwfycqdckpahbbnyitx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agbvhecyyloflxzmmonwwfrzjsfefxqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vatcurfaubrpzeumkedgqaduzxdmecea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwmneiwzivqajftfafzqyuetodqolzyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ukdbcztgffoeuvkzwbjjbhvdfyghzaod","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqluyinygzfpabwbkelyorpztnaapmvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqkdshjcgtbopxpjjuziqumxhynbcvku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bfzoiauprwmwuzhlvlfowohugmuvkltk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmsmnfdfqfkiifiwikajchvvchuwxrbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzjgvnghotossmpqqsmnsqtrixaxtxwf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"liycphoxdemjeqlsnlwmeueqdxgfpycq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpjyfwvinhghdwbdazmanqebztrgcgmi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvzdrdmqomqqtxnzwlemuttbysxodaek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smaccnswkqvfncnybneshlicwdvmhrei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbhfgwgcydobyfnmylrgjyttyebzcqfs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"scvpscfgbnearoyscsfdrybekzhwyoly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqbqpceppownjeillkkecaeaxktrlwav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwgbittzoywvljzvioaucdbsfhxtanvk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypitfubipgmmqpygwelksqcfxsnipjlr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvnhvqmpsygvgtjgnlbjfhufkfmisscn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"szvgdeyslvgpvqeixkjubslobgeuqttu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yakuqjidfdlpukqlfkejworfgjiqpytp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rurtcsgmhsdsnizydvhpvpfrgdqleraq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzeqpsuyjcfsbcuxexgdlxopybpedufq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhbvspqjeoubluvucsrfxwjmwsnrbxvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctzfatfmrxivqigouyrkijtaeddhyfqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xzaypyvwrpyrhzhbhtqoesodztdtvggi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tadzkyltqapjgsbhyqrpqthkltrltcze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ozhobhihgrlhogpipszqbbwbcndihhuy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqaogifeqiygfwusvbhnaayuxapbspki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqevrtxwhqvoopuflrgolyvvtztdmghr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urzljffgaectnuwejunyxrjshhzyauuu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gwyjrzrudommvplakvgpsainmcgjjiom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nwoardiaxnftzaqvhqdreruguxackaps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxeyxyxizccfuyfpcgibuykoxmxegvuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gerpdgnwyntuliybjiqszfziporjpcvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqkcrloirknrvtfmiodcqwrpxgcknfjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofxocsspjdbyyubhohctvrlpqjbekaif","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"guzqhueniesfiuipbhcwhnxjazuwklok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecdgpufluzikjdvvetdrnspypkwffqmy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjaepwuynxagjscmbkgwzszzlmqixeit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aunkkbibruqohsfjkznxltpdfqkmituq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exmgkewjicdlnpoahpmbimmbpqcvmofg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ucutskzuhprhrrxjcjekokqkuiadofzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovevmglsdrxrchodnzfervwnnwxosanc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hucerpagcaegwsmjqgxxzzavnbivyica","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdziifaividucdujstowvgvrlupkenpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwlcaskgsvhngppeexydemnspreftdgi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uclmrlqgukajwoewibklozhyykhrkqun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxzounndpavcdhqdplbffdnesbqeyhhu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cjxqvlohquqdkkasyraxzkjugscuipui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wvzgamtdrhcgxaqcwqtcgdmvytrkrphw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wksbjvxyjukfkurxpofkkxbuxroeafag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvgcltlkphbdrxwkpqbvwyoptwpjavup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqvusiwibequlvaqljvvmbdhpidbeojl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yckehepjelgydltbmgibfzfrvwtzcpos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkebdeeplfueuuxlwpkenkyavhyicegi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wtgwqdettjvtvpdechqvvoytgwzztrth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnormckgfkdzjuxzjztyryswvuhbupdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqvaasavdbrhklmromcfahtkattznoff","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjyecqoedzvdebtbyizzrxbhkzoveexo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pribyuqsrzpnengaejcgfudwucdoqajr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rwndwqpzncnbddkwsufhfkyckbrlzhee","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670308,"databaseName":"models_schema","ddl":"CREATE TABLE `qfgnabrfurvwokonupfzqzkpbgrlevbv` (\n `szqnajfjbzjstieajitgdxtikamrynjc` int NOT NULL,\n `heyeftwmmgwarrfqnllbnogfcbklxvpk` int DEFAULT NULL,\n `gxdxiiorupxoufuzsuqheysmdknglnzj` int DEFAULT NULL,\n `zjduolahmqcdppayqzrbnwskkuavocym` int DEFAULT NULL,\n `ctfnsmcnescbtmqrtsfymjlrjmnymaww` int DEFAULT NULL,\n `mwiyzovylotcrcsbicdjhstcjpxhwdsq` int DEFAULT NULL,\n `uboayjixhiwdlmjamfbbotqiktqapghq` int DEFAULT NULL,\n `dddkhsnysccnmmvllrsurwwribuxrzlc` int DEFAULT NULL,\n `jnxxldwhpiejhsdafntzjdlurppmygmz` int DEFAULT NULL,\n `naiwypsntdvvtfgfelpomckwyiuxuwvb` int DEFAULT NULL,\n `ebfyltgxihtlpamkhyzbblaqbguhxaiv` int DEFAULT NULL,\n `dnxefezelyzisopxksljzgskimkujvwz` int DEFAULT NULL,\n `ugyypnmijlvnjkmbeqejstlinweupofu` int DEFAULT NULL,\n `tpyurfdupucbbygxwzjluntwrrlwzfgn` int DEFAULT NULL,\n `ljqaxxxslwkjdzbpkwqutiqcsxswtcch` int DEFAULT NULL,\n `pixlvgfhqkuscvvxczswwocvmjlyxami` int DEFAULT NULL,\n `agbdsfdtuwenpnnxbfyvoieefnrnsloi` int DEFAULT NULL,\n `ujecfuozqomvnlurkpdqtclwoofhupgf` int DEFAULT NULL,\n `ixfqclnytjnexpsyrsyjeqrtaywkdbjw` int DEFAULT NULL,\n `xvalhshdlfdxeknttmfhywojujrvqdgc` int DEFAULT NULL,\n `nitvjlhsteescwywafruwwdtbedtebnu` int DEFAULT NULL,\n `mcjxrmyhjlzrxrkijkgphyhjwaysdfaq` int DEFAULT NULL,\n `gxkqmlcpymkwgghoqtdccgmweanxwknl` int DEFAULT NULL,\n `qtvsrcvdwcczkquftcepzbgdvqcqejph` int DEFAULT NULL,\n `fwhfmlvibudoyiikqtbrbhcptuumpetf` int DEFAULT NULL,\n `uizanslaazhnqpkxxoknirsoihhacnbd` int DEFAULT NULL,\n `obqcfqbbrdsygkzudvxohlydwdvlsdxv` int DEFAULT NULL,\n `xirqgwevuvuetaaihaxxatkaxeogifhx` int DEFAULT NULL,\n `psqttqduoeurfwslvlaxxnmzpllwymya` int DEFAULT NULL,\n `neearwskahyneuufxgirapmiomzhumee` int DEFAULT NULL,\n `nolubjvkbormtiknevbcqhfhjzmfzawq` int DEFAULT NULL,\n `lqdmdvtlvchyimubvzgrkezshmrqvdct` int DEFAULT NULL,\n `rfjhysjsjwmjkecnivyypvryfqokjrcg` int DEFAULT NULL,\n `upxdjlrcvprbiuwemeubvutgdpurtvxs` int DEFAULT NULL,\n `owqqwrnloaverqrxvayqezkdkuedulad` int DEFAULT NULL,\n `qanwlfpjmrbtkxocjrkpkaoxhygmuvry` int DEFAULT NULL,\n `tkanhtnevkopnpnfsexecqtnhgawrxzt` int DEFAULT NULL,\n `avajxjooktpbooobavpfdxsyzkddxhru` int DEFAULT NULL,\n `nrjtfjvorthnjftpowekmhdnwbdmiojf` int DEFAULT NULL,\n `ezzmwlrnbrnlvdvzkktfnxkxgpsbzjbk` int DEFAULT NULL,\n `uzcrwqmgcowmftdmwjgarxigfqqxqsyc` int DEFAULT NULL,\n `buvdcxybalklrfeqqdyqnrjibodzvgqo` int DEFAULT NULL,\n `iycuffuhdnwbgwwmtgbwvfoderzqxcie` int DEFAULT NULL,\n `fdaffuztzolnvyaxabunhgswgxewhycq` int DEFAULT NULL,\n `uailsvhpxyfrmoqspeytndywfsdyoeon` int DEFAULT NULL,\n `hzyjgfpekmwxsyesabydmpgkjqfalzei` int DEFAULT NULL,\n `ityrqaotjctxhbmanhcwrqaejdyzwtqk` int DEFAULT NULL,\n `yfucenjrxuxeroeineoknxaygjprjtdc` int DEFAULT NULL,\n `kdgecmmjpwplvcaarjpllkzbqkqmfnpv` int DEFAULT NULL,\n `rwkwmqjmcxzpkertzqbefocmspazezxh` int DEFAULT NULL,\n `cjmjlbnreqibghmarnjhkoxhdsprfcnw` int DEFAULT NULL,\n `jkfseztexccxwphsvfercsgzbmemhviq` int DEFAULT NULL,\n `myvofbukajtizqsbnhgrcistlcftbsvh` int DEFAULT NULL,\n `pwgrrmuplvwkvdlshobgijtfwznevdsz` int DEFAULT NULL,\n `gzekmuhqgairoymcarndmkiveeexuvyd` int DEFAULT NULL,\n `sorwdyrivpwqpaxwxnriaemgbymchjmz` int DEFAULT NULL,\n `devyrtddjoiscgondjcrpgqfqjwbgwpa` int DEFAULT NULL,\n `kmnrimaombtxpdoifbkcbdjmwobjvula` int DEFAULT NULL,\n `mlegvfaidfnsrcwlfhkxwuoldzneykxn` int DEFAULT NULL,\n `yspkybifhkolpzouipjoaqrunghkhvam` int DEFAULT NULL,\n `fmsyczppymfgkgpyvfgcieypwmnsbifv` int DEFAULT NULL,\n `vdenodhxxewifjrjdkhbvtugvfbjamam` int DEFAULT NULL,\n `qvcklrtpnticwpuknthzqhybamvkmekm` int DEFAULT NULL,\n `shwgexxxpzliikfwhmzvhwjwckbircra` int DEFAULT NULL,\n `rbzfqebuqtedygfnfkelrpeszpydkqxh` int DEFAULT NULL,\n `fmzmbmofwbtqkdxniqoqhagwwxceeogd` int DEFAULT NULL,\n `zxyasejgzjhnojianhisaatoinzgpmww` int DEFAULT NULL,\n `izyawzpzfcjqlctbkxjxiedeuymuiduu` int DEFAULT NULL,\n `itmvoupbqyvfesqlehkpqjwaljhqrbef` int DEFAULT NULL,\n `twsdzqqkcvirtwnfztoucyxkcdxzgbyz` int DEFAULT NULL,\n `swhpmqblehhtqrhxksuibnxhuxabggei` int DEFAULT NULL,\n `srefyjchycxzwcpzshfkcrqzjxpqgxoi` int DEFAULT NULL,\n `wocakbgiiwibxjhhqhfvsprsjyepveuw` int DEFAULT NULL,\n `aybvsgqbbxyzkkpwlfzvarhvgtaehdgx` int DEFAULT NULL,\n `zllqepxufjuppmytovncysptyacrzqqb` int DEFAULT NULL,\n `zbtwpbhjxpjsjpjrvmcvupoopwluuqnh` int DEFAULT NULL,\n `yftrxscrowgzjnwjbtdrwzdvkhbngrqc` int DEFAULT NULL,\n `ddykzicbdiqviscxnuxbclkyoyvfpxaq` int DEFAULT NULL,\n `jcifkotqykrgdykmhudykgzprqdukbrm` int DEFAULT NULL,\n `rsusraoicqqwdqpsrppjnwwntalbnxfh` int DEFAULT NULL,\n `aepetxppimmipzssjaznhseauauhyjxa` int DEFAULT NULL,\n `otbzudrbszclpiaazdeqplhpbecxllsc` int DEFAULT NULL,\n `fngofjqddjptgramimxbyzrqxmwmfodh` int DEFAULT NULL,\n `yhqvzvkbmtybyxjccywzbdmxadvrkboa` int DEFAULT NULL,\n `ywjcaibndimywaqjqrprzvopendcvvhv` int DEFAULT NULL,\n `lhkroeygpcuyznwvjzpjoqebaotvrjpy` int DEFAULT NULL,\n `oqxkuavglpaxcjdxrclsqtkfzqyerhlw` int DEFAULT NULL,\n `rnwwccelyryhshanyjkchhmmtvchsubo` int DEFAULT NULL,\n `chwjnkycrxbdnbzfpqjvmqbcfslolvly` int DEFAULT NULL,\n `wxnruidikocapkzuywlgcrkhhnqanwbd` int DEFAULT NULL,\n `xutltavwfpdpjmnquyzuimheibsdmklm` int DEFAULT NULL,\n `ttpwulysesnaxucpxarwmfpzfznnzcrt` int DEFAULT NULL,\n `oxvtwpqxthjkeqtjbltrziafuxswxsij` int DEFAULT NULL,\n `ebigmuwmwyjcgahfqygldmscbyotvack` int DEFAULT NULL,\n `itogwxhqsesoofgclaexekwrqxegljjp` int DEFAULT NULL,\n `nhnytylawialxewjwdquwylyodbdihal` int DEFAULT NULL,\n `gjqbaneihavubiegepzmnfuzwaouotmj` int DEFAULT NULL,\n `hdbrnbcluaareecdgguklajkimkcwglb` int DEFAULT NULL,\n `trnnmgfkzidmkefikguezylfouxbocek` int DEFAULT NULL,\n `etffjuemctxbcvgqfaetvynkhrzgafpp` int DEFAULT NULL,\n PRIMARY KEY (`szqnajfjbzjstieajitgdxtikamrynjc`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"qfgnabrfurvwokonupfzqzkpbgrlevbv\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["szqnajfjbzjstieajitgdxtikamrynjc"],"columns":[{"name":"szqnajfjbzjstieajitgdxtikamrynjc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"heyeftwmmgwarrfqnllbnogfcbklxvpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gxdxiiorupxoufuzsuqheysmdknglnzj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjduolahmqcdppayqzrbnwskkuavocym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctfnsmcnescbtmqrtsfymjlrjmnymaww","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwiyzovylotcrcsbicdjhstcjpxhwdsq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uboayjixhiwdlmjamfbbotqiktqapghq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dddkhsnysccnmmvllrsurwwribuxrzlc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jnxxldwhpiejhsdafntzjdlurppmygmz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"naiwypsntdvvtfgfelpomckwyiuxuwvb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebfyltgxihtlpamkhyzbblaqbguhxaiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dnxefezelyzisopxksljzgskimkujvwz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugyypnmijlvnjkmbeqejstlinweupofu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpyurfdupucbbygxwzjluntwrrlwzfgn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljqaxxxslwkjdzbpkwqutiqcsxswtcch","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pixlvgfhqkuscvvxczswwocvmjlyxami","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agbdsfdtuwenpnnxbfyvoieefnrnsloi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujecfuozqomvnlurkpdqtclwoofhupgf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixfqclnytjnexpsyrsyjeqrtaywkdbjw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvalhshdlfdxeknttmfhywojujrvqdgc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nitvjlhsteescwywafruwwdtbedtebnu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcjxrmyhjlzrxrkijkgphyhjwaysdfaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gxkqmlcpymkwgghoqtdccgmweanxwknl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtvsrcvdwcczkquftcepzbgdvqcqejph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwhfmlvibudoyiikqtbrbhcptuumpetf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uizanslaazhnqpkxxoknirsoihhacnbd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obqcfqbbrdsygkzudvxohlydwdvlsdxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xirqgwevuvuetaaihaxxatkaxeogifhx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"psqttqduoeurfwslvlaxxnmzpllwymya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"neearwskahyneuufxgirapmiomzhumee","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nolubjvkbormtiknevbcqhfhjzmfzawq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqdmdvtlvchyimubvzgrkezshmrqvdct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfjhysjsjwmjkecnivyypvryfqokjrcg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upxdjlrcvprbiuwemeubvutgdpurtvxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owqqwrnloaverqrxvayqezkdkuedulad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qanwlfpjmrbtkxocjrkpkaoxhygmuvry","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkanhtnevkopnpnfsexecqtnhgawrxzt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avajxjooktpbooobavpfdxsyzkddxhru","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nrjtfjvorthnjftpowekmhdnwbdmiojf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezzmwlrnbrnlvdvzkktfnxkxgpsbzjbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzcrwqmgcowmftdmwjgarxigfqqxqsyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"buvdcxybalklrfeqqdyqnrjibodzvgqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iycuffuhdnwbgwwmtgbwvfoderzqxcie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fdaffuztzolnvyaxabunhgswgxewhycq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uailsvhpxyfrmoqspeytndywfsdyoeon","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hzyjgfpekmwxsyesabydmpgkjqfalzei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ityrqaotjctxhbmanhcwrqaejdyzwtqk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfucenjrxuxeroeineoknxaygjprjtdc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kdgecmmjpwplvcaarjpllkzbqkqmfnpv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rwkwmqjmcxzpkertzqbefocmspazezxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cjmjlbnreqibghmarnjhkoxhdsprfcnw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jkfseztexccxwphsvfercsgzbmemhviq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"myvofbukajtizqsbnhgrcistlcftbsvh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwgrrmuplvwkvdlshobgijtfwznevdsz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzekmuhqgairoymcarndmkiveeexuvyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sorwdyrivpwqpaxwxnriaemgbymchjmz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"devyrtddjoiscgondjcrpgqfqjwbgwpa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kmnrimaombtxpdoifbkcbdjmwobjvula","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mlegvfaidfnsrcwlfhkxwuoldzneykxn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yspkybifhkolpzouipjoaqrunghkhvam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmsyczppymfgkgpyvfgcieypwmnsbifv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdenodhxxewifjrjdkhbvtugvfbjamam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvcklrtpnticwpuknthzqhybamvkmekm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shwgexxxpzliikfwhmzvhwjwckbircra","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbzfqebuqtedygfnfkelrpeszpydkqxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmzmbmofwbtqkdxniqoqhagwwxceeogd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxyasejgzjhnojianhisaatoinzgpmww","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"izyawzpzfcjqlctbkxjxiedeuymuiduu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itmvoupbqyvfesqlehkpqjwaljhqrbef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twsdzqqkcvirtwnfztoucyxkcdxzgbyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swhpmqblehhtqrhxksuibnxhuxabggei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"srefyjchycxzwcpzshfkcrqzjxpqgxoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wocakbgiiwibxjhhqhfvsprsjyepveuw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aybvsgqbbxyzkkpwlfzvarhvgtaehdgx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zllqepxufjuppmytovncysptyacrzqqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbtwpbhjxpjsjpjrvmcvupoopwluuqnh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yftrxscrowgzjnwjbtdrwzdvkhbngrqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ddykzicbdiqviscxnuxbclkyoyvfpxaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jcifkotqykrgdykmhudykgzprqdukbrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rsusraoicqqwdqpsrppjnwwntalbnxfh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aepetxppimmipzssjaznhseauauhyjxa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otbzudrbszclpiaazdeqplhpbecxllsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fngofjqddjptgramimxbyzrqxmwmfodh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhqvzvkbmtybyxjccywzbdmxadvrkboa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywjcaibndimywaqjqrprzvopendcvvhv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhkroeygpcuyznwvjzpjoqebaotvrjpy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqxkuavglpaxcjdxrclsqtkfzqyerhlw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnwwccelyryhshanyjkchhmmtvchsubo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"chwjnkycrxbdnbzfpqjvmqbcfslolvly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxnruidikocapkzuywlgcrkhhnqanwbd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xutltavwfpdpjmnquyzuimheibsdmklm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ttpwulysesnaxucpxarwmfpzfznnzcrt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oxvtwpqxthjkeqtjbltrziafuxswxsij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebigmuwmwyjcgahfqygldmscbyotvack","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itogwxhqsesoofgclaexekwrqxegljjp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhnytylawialxewjwdquwylyodbdihal","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjqbaneihavubiegepzmnfuzwaouotmj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdbrnbcluaareecdgguklajkimkcwglb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"trnnmgfkzidmkefikguezylfouxbocek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"etffjuemctxbcvgqfaetvynkhrzgafpp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670341,"databaseName":"models_schema","ddl":"CREATE TABLE `qggnhwqlqjkouhxetdqfuaqozrqqpcle` (\n `nkcdnzebndbyasbnqisxnzspkzhxcesi` int NOT NULL,\n `uiqvevbkevxhawiatnzdpgvljwkgfvhw` int DEFAULT NULL,\n `lfolqnupwcpuubjuqlstcwglnbnawaxg` int DEFAULT NULL,\n `ixousxuvwwhzeexbmnombpwlbboqrcqd` int DEFAULT NULL,\n `lxkregdopjbnovnroytxwbabvctwqcfr` int DEFAULT NULL,\n `abtjljodxeplfeqvvfoinyitbrxqkcsb` int DEFAULT NULL,\n `obhebsguysmhkmlsgoourtsnurqxdmxh` int DEFAULT NULL,\n `irfszabggjuewxzlzfwdudfpfpxbzibu` int DEFAULT NULL,\n `wszaaftmpcvcpmngyusrvmeqjlpshzxy` int DEFAULT NULL,\n `epoilfwakmeoonpctduimdwijciyrbdb` int DEFAULT NULL,\n `zmkoepmobefcdjbpzsmjpdliccgewhig` int DEFAULT NULL,\n `cetcncmwxswktdzbglynztogqafnzdvy` int DEFAULT NULL,\n `ylgwfcznilknwzbtobeizbqrqrctaddr` int DEFAULT NULL,\n `aykiskamzhergximgmxegrqrsoybqgmk` int DEFAULT NULL,\n `qrpzrthvxaxhhhuypmhojxaetxzsijwy` int DEFAULT NULL,\n `ggkxkjprhcpilfhlljaypmhvqmorjlko` int DEFAULT NULL,\n `ikirhvzvvvopqqdytfrrqpdmklhstifa` int DEFAULT NULL,\n `xskizbkmxlggnctpsytsljskfvgcfbuw` int DEFAULT NULL,\n `qlxczkazlglsbkbjoagshaixilszydyl` int DEFAULT NULL,\n `nukjxihcrirmecmxtfqlyvczstpcmfvu` int DEFAULT NULL,\n `huvlnpcqhcbmnflsxaajunoxarcjslcy` int DEFAULT NULL,\n `dvayewcekknoinozvdxcpeqbocmksptq` int DEFAULT NULL,\n `oiiofggandtuklquudlamyoqltwumvbi` int DEFAULT NULL,\n `nelvjweumtuwzzkgxvuzrhehnprzvvhz` int DEFAULT NULL,\n `bmbyvmdlachdixkztesejudtebwbfbyl` int DEFAULT NULL,\n `vbtbcclrawgaikzootmrqbsiyheysuyf` int DEFAULT NULL,\n `xtczabvpiaimsuboractoebikduwinuh` int DEFAULT NULL,\n `gcjlrkwzlwetdqijeiczedujfwpqxdiy` int DEFAULT NULL,\n `vbsgrpwzbvbmqqyrsrkgdplihsvafbrc` int DEFAULT NULL,\n `mstwwgwjjouwavnwocwafamjumbfltwi` int DEFAULT NULL,\n `cijlkywpwykgfffvssczjtpgegoanzfn` int DEFAULT NULL,\n `yihmdywayzsgohjmlltvdfswgjlmqfqh` int DEFAULT NULL,\n `lmwmnouiixdrkorwwqbmvksnuofwqcdo` int DEFAULT NULL,\n `svawbupglkqtffxembfprblcpofkrolf` int DEFAULT NULL,\n `uprcmkndwmjkgcbxmvqnuyupnvuawcjj` int DEFAULT NULL,\n `tlwsknvkkobulcutjndhrfhixgzfbnah` int DEFAULT NULL,\n `lupydelgfjayulzgeqlzjexbircyujkl` int DEFAULT NULL,\n `utrrgbxxhujgugarltjnqbxnmlolrwqd` int DEFAULT NULL,\n `rjzodgzdyxsterqvjpuahsvzhndjtxey` int DEFAULT NULL,\n `yelrkusonrmxbccfaxfaqhtorcrnkcvj` int DEFAULT NULL,\n `yevzolduciyvkamrhfowrykgdfaiweyt` int DEFAULT NULL,\n `gzyypkxaookkvhcilqbcqtvwjtqkkprk` int DEFAULT NULL,\n `zqxksejmjybvfplpdtmltxneltdoyvwl` int DEFAULT NULL,\n `ohpbyvodzenmqaqdimwrabpwumkmhvwq` int DEFAULT NULL,\n `davhhkvnsdzsihudjbruzmjwwkerdbto` int DEFAULT NULL,\n `yarnzbveuxskhvkkggljznqlkvqckelv` int DEFAULT NULL,\n `suxpxqrjgzhirbjvnfszekgrarsrpcur` int DEFAULT NULL,\n `wuphileuwpvvcxtlvmvcoejqskgubyja` int DEFAULT NULL,\n `qbvhcrzrkeccwaqiwehtvuodemwotqpu` int DEFAULT NULL,\n `egdftxtfalkcarturyyiejuctrarjupk` int DEFAULT NULL,\n `aicvrbojrxirtvjqsemiiedegtimdwqs` int DEFAULT NULL,\n `nmjfvxymjhxehbzimpfikgvsifdidoed` int DEFAULT NULL,\n `xjeromaahfboqdncnqwknixptrqicdtl` int DEFAULT NULL,\n `idvrszjmywftltvkjdnlqhyctctdweiy` int DEFAULT NULL,\n `ypjeodahlydllahedlpllrtunlrgqxjp` int DEFAULT NULL,\n `gllzhjbmxfcxhlgytpqzdizyclytgsln` int DEFAULT NULL,\n `jkuflveiryyqtazleonenaukglzfkpzw` int DEFAULT NULL,\n `pikrucouyavuvbmdbvqiurqaemceymqu` int DEFAULT NULL,\n `tzcnvwbtyskqgnstvedjqdlbqbaiunwo` int DEFAULT NULL,\n `vbqslxyxcfjxafrbglmfufyicmwlirnj` int DEFAULT NULL,\n `jbzlsgqabyejgbllmsrxzejkofitlmhc` int DEFAULT NULL,\n `yurkhpfjvhcgccgwylbpmfarrfqxxdmj` int DEFAULT NULL,\n `ivistauytgzmeujqsblvqcpjihgwmsan` int DEFAULT NULL,\n `rsuehzibsivwlheslhkcwkyozgbphmuj` int DEFAULT NULL,\n `xgssmybjifisrhlowoucwsvtdnyqefyc` int DEFAULT NULL,\n `xpjtvjodhqpnkhlffmuczflnqujwadiz` int DEFAULT NULL,\n `gwsuhpdwxajmjcanxrckgnoxxosmzwaa` int DEFAULT NULL,\n `jmmxjoksxsrvzmfhrhvupvmtxxyxszso` int DEFAULT NULL,\n `jarqghggclqboyalnnruftmklwuirieo` int DEFAULT NULL,\n `dinswaklxckhrhakzywdpjvvuhrthczp` int DEFAULT NULL,\n `lxdfykrsgegvbruvprtqpvhwchxnbnpr` int DEFAULT NULL,\n `dlfojduslkceqqblytyhbydvshdaniel` int DEFAULT NULL,\n `fprtqhcjqjzzwdyjkospgquifabzcoel` int DEFAULT NULL,\n `wuoikrmaevhprueufhopnpuxutuzagqf` int DEFAULT NULL,\n `nfjyjwqcglkzsoiarxemxfbqktlyhkwo` int DEFAULT NULL,\n `xzrfqmblyasnsrecrwulzwgqnlsaroiu` int DEFAULT NULL,\n `etcgzwhdamnbackeddckpkavltmomxgt` int DEFAULT NULL,\n `dgksddyqpcjehficbtpiaidncaaskghp` int DEFAULT NULL,\n `slznubfggwlxubtiujahxfzrnkrtlgis` int DEFAULT NULL,\n `cmshzkbdchdblmapvrbuvpnswygmovdm` int DEFAULT NULL,\n `haxwjvqikqztdhsiotnlsncwcsbvksnk` int DEFAULT NULL,\n `cbxprqlxcuhquoupshkbiecnnwmugcsy` int DEFAULT NULL,\n `uyxoxnjkwkgilwjbuhsrhdgfpmlwsnmg` int DEFAULT NULL,\n `pduwcmylgtlucibgnjpceoagninxvfdz` int DEFAULT NULL,\n `pjzicckogruocbiwtetkeijbzpbbfffd` int DEFAULT NULL,\n `ojqwptaytirwjewplloefvktmkctnqqz` int DEFAULT NULL,\n `jroskzdaqpwibtkevxhgzbxwpdrknygu` int DEFAULT NULL,\n `hbiuqlkzkciaxmfzjnbmbzikdpqujoed` int DEFAULT NULL,\n `vdqvikmrgglyyolzeipwytyorbslaoar` int DEFAULT NULL,\n `rttyuhefsswckqdumagfszvlhukudcsn` int DEFAULT NULL,\n `fpvtajekozvzemhuovejqmoyplumamhs` int DEFAULT NULL,\n `rnbgrllwnwokxjbupbvhsrsiprofzulu` int DEFAULT NULL,\n `gnliktpkawtulizyueayfsjcraahhztc` int DEFAULT NULL,\n `qsgjnzmntkhauayqqczrstysfjprllur` int DEFAULT NULL,\n `thgutnwjebdjlmxfiwchknyxyczwjxvx` int DEFAULT NULL,\n `wzdhalhoiocynmpvkdzreyckelyvtbjo` int DEFAULT NULL,\n `wnppirwdkpppssdcprrocxdbksdkwwue` int DEFAULT NULL,\n `veorkdvquezzdazrrfgadnndzalhoyhq` int DEFAULT NULL,\n `ezenpeoysiypqjulongzaclzkxuikdpz` int DEFAULT NULL,\n `ibrrpcedlkaqxfmcgxjxafvifxvwbfdx` int DEFAULT NULL,\n PRIMARY KEY (`nkcdnzebndbyasbnqisxnzspkzhxcesi`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"qggnhwqlqjkouhxetdqfuaqozrqqpcle\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["nkcdnzebndbyasbnqisxnzspkzhxcesi"],"columns":[{"name":"nkcdnzebndbyasbnqisxnzspkzhxcesi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"uiqvevbkevxhawiatnzdpgvljwkgfvhw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfolqnupwcpuubjuqlstcwglnbnawaxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixousxuvwwhzeexbmnombpwlbboqrcqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxkregdopjbnovnroytxwbabvctwqcfr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"abtjljodxeplfeqvvfoinyitbrxqkcsb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obhebsguysmhkmlsgoourtsnurqxdmxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"irfszabggjuewxzlzfwdudfpfpxbzibu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wszaaftmpcvcpmngyusrvmeqjlpshzxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"epoilfwakmeoonpctduimdwijciyrbdb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmkoepmobefcdjbpzsmjpdliccgewhig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cetcncmwxswktdzbglynztogqafnzdvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ylgwfcznilknwzbtobeizbqrqrctaddr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aykiskamzhergximgmxegrqrsoybqgmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qrpzrthvxaxhhhuypmhojxaetxzsijwy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggkxkjprhcpilfhlljaypmhvqmorjlko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikirhvzvvvopqqdytfrrqpdmklhstifa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xskizbkmxlggnctpsytsljskfvgcfbuw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qlxczkazlglsbkbjoagshaixilszydyl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nukjxihcrirmecmxtfqlyvczstpcmfvu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"huvlnpcqhcbmnflsxaajunoxarcjslcy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvayewcekknoinozvdxcpeqbocmksptq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oiiofggandtuklquudlamyoqltwumvbi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nelvjweumtuwzzkgxvuzrhehnprzvvhz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bmbyvmdlachdixkztesejudtebwbfbyl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbtbcclrawgaikzootmrqbsiyheysuyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xtczabvpiaimsuboractoebikduwinuh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gcjlrkwzlwetdqijeiczedujfwpqxdiy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbsgrpwzbvbmqqyrsrkgdplihsvafbrc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mstwwgwjjouwavnwocwafamjumbfltwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cijlkywpwykgfffvssczjtpgegoanzfn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yihmdywayzsgohjmlltvdfswgjlmqfqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmwmnouiixdrkorwwqbmvksnuofwqcdo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"svawbupglkqtffxembfprblcpofkrolf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uprcmkndwmjkgcbxmvqnuyupnvuawcjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlwsknvkkobulcutjndhrfhixgzfbnah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lupydelgfjayulzgeqlzjexbircyujkl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utrrgbxxhujgugarltjnqbxnmlolrwqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjzodgzdyxsterqvjpuahsvzhndjtxey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yelrkusonrmxbccfaxfaqhtorcrnkcvj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yevzolduciyvkamrhfowrykgdfaiweyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzyypkxaookkvhcilqbcqtvwjtqkkprk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqxksejmjybvfplpdtmltxneltdoyvwl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohpbyvodzenmqaqdimwrabpwumkmhvwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"davhhkvnsdzsihudjbruzmjwwkerdbto","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yarnzbveuxskhvkkggljznqlkvqckelv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"suxpxqrjgzhirbjvnfszekgrarsrpcur","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wuphileuwpvvcxtlvmvcoejqskgubyja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qbvhcrzrkeccwaqiwehtvuodemwotqpu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"egdftxtfalkcarturyyiejuctrarjupk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aicvrbojrxirtvjqsemiiedegtimdwqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmjfvxymjhxehbzimpfikgvsifdidoed","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjeromaahfboqdncnqwknixptrqicdtl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idvrszjmywftltvkjdnlqhyctctdweiy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypjeodahlydllahedlpllrtunlrgqxjp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gllzhjbmxfcxhlgytpqzdizyclytgsln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jkuflveiryyqtazleonenaukglzfkpzw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pikrucouyavuvbmdbvqiurqaemceymqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tzcnvwbtyskqgnstvedjqdlbqbaiunwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbqslxyxcfjxafrbglmfufyicmwlirnj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jbzlsgqabyejgbllmsrxzejkofitlmhc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yurkhpfjvhcgccgwylbpmfarrfqxxdmj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivistauytgzmeujqsblvqcpjihgwmsan","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rsuehzibsivwlheslhkcwkyozgbphmuj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xgssmybjifisrhlowoucwsvtdnyqefyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xpjtvjodhqpnkhlffmuczflnqujwadiz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gwsuhpdwxajmjcanxrckgnoxxosmzwaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmmxjoksxsrvzmfhrhvupvmtxxyxszso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jarqghggclqboyalnnruftmklwuirieo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dinswaklxckhrhakzywdpjvvuhrthczp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxdfykrsgegvbruvprtqpvhwchxnbnpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dlfojduslkceqqblytyhbydvshdaniel","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fprtqhcjqjzzwdyjkospgquifabzcoel","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wuoikrmaevhprueufhopnpuxutuzagqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfjyjwqcglkzsoiarxemxfbqktlyhkwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xzrfqmblyasnsrecrwulzwgqnlsaroiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"etcgzwhdamnbackeddckpkavltmomxgt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgksddyqpcjehficbtpiaidncaaskghp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"slznubfggwlxubtiujahxfzrnkrtlgis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmshzkbdchdblmapvrbuvpnswygmovdm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"haxwjvqikqztdhsiotnlsncwcsbvksnk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbxprqlxcuhquoupshkbiecnnwmugcsy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uyxoxnjkwkgilwjbuhsrhdgfpmlwsnmg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pduwcmylgtlucibgnjpceoagninxvfdz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjzicckogruocbiwtetkeijbzpbbfffd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojqwptaytirwjewplloefvktmkctnqqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jroskzdaqpwibtkevxhgzbxwpdrknygu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbiuqlkzkciaxmfzjnbmbzikdpqujoed","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdqvikmrgglyyolzeipwytyorbslaoar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rttyuhefsswckqdumagfszvlhukudcsn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpvtajekozvzemhuovejqmoyplumamhs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnbgrllwnwokxjbupbvhsrsiprofzulu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnliktpkawtulizyueayfsjcraahhztc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qsgjnzmntkhauayqqczrstysfjprllur","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thgutnwjebdjlmxfiwchknyxyczwjxvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzdhalhoiocynmpvkdzreyckelyvtbjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnppirwdkpppssdcprrocxdbksdkwwue","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"veorkdvquezzdazrrfgadnndzalhoyhq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezenpeoysiypqjulongzaclzkxuikdpz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibrrpcedlkaqxfmcgxjxafvifxvwbfdx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670371,"databaseName":"models_schema","ddl":"CREATE TABLE `qiwtlstwkkhmomafokasfiebppralewy` (\n `yxvugbpvfcahhbyhpxslejdwpjyxlgiy` int NOT NULL,\n `bkcyzzdzxnclmdvhntgdvqhxbtybbqgg` int DEFAULT NULL,\n `qyhesvuwjpnkrumnoucafsjwkuqpwkaj` int DEFAULT NULL,\n `vjtflfqscnuholiiswrncgdarnvadyxu` int DEFAULT NULL,\n `vpcihjidcoatmjfartkzoaywfkqibewi` int DEFAULT NULL,\n `pinqqyfbnigravmzzobzvsdfrtjywqsz` int DEFAULT NULL,\n `ksqahcuuwzpteddvvhyyzhekikvwkkxj` int DEFAULT NULL,\n `qhateemsktxoolydsqxxwthsuiblkhed` int DEFAULT NULL,\n `vyvtodeppeoehiemplmlozsfnnehxjqn` int DEFAULT NULL,\n `nlszyliqpxnzqtpsddhircjwcmlcuvug` int DEFAULT NULL,\n `mgvfvvrlhexsamanhgrgzqencihmefrf` int DEFAULT NULL,\n `fyqujucnefbayvbjulsafogitgezmfql` int DEFAULT NULL,\n `prplhytewrftldzkkihvhawgxolhywbu` int DEFAULT NULL,\n `nzvjddgeijpvbiniqjiffquqanmkzwti` int DEFAULT NULL,\n `ikwbcrioidcypsqsutnndedvtnzgtddg` int DEFAULT NULL,\n `caldtqtohwqqpvqlfpgeeiayxofvbtyi` int DEFAULT NULL,\n `bjqsdzhbdeyyusqozyjfrfwakfifqlrc` int DEFAULT NULL,\n `vklxcxabzsjxtzqisgvulxbzjnvkrpqk` int DEFAULT NULL,\n `zfhnxywqhbtdwhbqbdgspjnxebfsgdhp` int DEFAULT NULL,\n `lfrhvkfqzbhcinaqicjhoakmkmlfkhtz` int DEFAULT NULL,\n `sbvoqfuvjgszralsnxcwprqdtnoenmds` int DEFAULT NULL,\n `xcojaptyrorasdqymaydcnwwxgfsjrub` int DEFAULT NULL,\n `devlhxaffnbtrytzuctnnalfvolyeunw` int DEFAULT NULL,\n `siidjcuerviprkookhbohmzvfqifclht` int DEFAULT NULL,\n `wqhjzgaurxroemeoziabfchvwhmbpneb` int DEFAULT NULL,\n `woyesxopefmzpnzgeuypsnhlicmqmpgt` int DEFAULT NULL,\n `paxnbpipgqvtvwifgyptfobrtfyzcqyg` int DEFAULT NULL,\n `hvgjtsmacdleuffwnjvufdtbzpxqbvbl` int DEFAULT NULL,\n `mdefkizrflljemehwznzjqbcfxdxqjvt` int DEFAULT NULL,\n `rvdonezmrquhlgkfiwfhgszoupfluewm` int DEFAULT NULL,\n `hkssyztpndsvlvxxrbtkvcnncufytvjz` int DEFAULT NULL,\n `nraswgkjgdfyifrqqluiakrfxylabxph` int DEFAULT NULL,\n `ftzcqcuyimkaxarvucqxciedlvjrfyru` int DEFAULT NULL,\n `nckyyiduzfkvovfysmnakryerewnjerv` int DEFAULT NULL,\n `ulaiezkygefdgnqalodxftljukllpnhk` int DEFAULT NULL,\n `mbjqosdubbssldhfaksxxmedpefuxagv` int DEFAULT NULL,\n `knoaqvlefvxpjnwndxavlqbqlqibnjmd` int DEFAULT NULL,\n `xlaevicupefyaoaomerkjvmfocfoqpnr` int DEFAULT NULL,\n `ajucufetnobczqhujhaajwpakayaixxy` int DEFAULT NULL,\n `egqflfryduwihuwckbetnspzxcpapvnk` int DEFAULT NULL,\n `zynsjzhjnmgxlpkchkekcwktdrfpeboq` int DEFAULT NULL,\n `pttndmzcwwwgrsytbvamknmgemnklkmu` int DEFAULT NULL,\n `lsmeoncyqezhoqqrxmjhusyfyoadqowc` int DEFAULT NULL,\n `aunqkeqwttgcbrlecbcscbgitffncpfj` int DEFAULT NULL,\n `ckuercoiupvnyqjqriublggcowpqaomg` int DEFAULT NULL,\n `lqgtxpyqourfkregzmsglfauqsoeamdz` int DEFAULT NULL,\n `circdqnyugnjmwqlyjdjicmspmrgxuhx` int DEFAULT NULL,\n `ygwtdpelgkcfgfjqxcelobcxmywsmwjd` int DEFAULT NULL,\n `exixtouoacwjbpdqzwgvmsutuovnhlxx` int DEFAULT NULL,\n `ekepjjkvrkpbviyimxyjmndozxksmeql` int DEFAULT NULL,\n `elcxzwkhwwplnpqkipgmxzrrbeltlhsq` int DEFAULT NULL,\n `ntzavspzblkfaknsfogidiqapczskoqz` int DEFAULT NULL,\n `ftzoqnimxlkygfgdjgibulcjndtiblpb` int DEFAULT NULL,\n `mrexywcasxdoslhwlluapdzzgjffhrbk` int DEFAULT NULL,\n `idzihmvuttvrykaxcrmmcgeddudwbylh` int DEFAULT NULL,\n `uemqhegsftwtpnvttrxtxbigsofbhlnd` int DEFAULT NULL,\n `mefmloqvgzqqhqritfgfnbbkajrdzfeg` int DEFAULT NULL,\n `ivvhakhsuxtlrgjjhnnxunoihpxfowqj` int DEFAULT NULL,\n `hckswjfttwlyxlkomlbaaztxnzyxjomr` int DEFAULT NULL,\n `lldaczvnphtynqkqpnpiwgttzmvykqye` int DEFAULT NULL,\n `jzuezwkckervulenvwsyjmcgcypmndex` int DEFAULT NULL,\n `pbxjmslaomnpadhwtyhqyoijmpvowifp` int DEFAULT NULL,\n `kkaupvfyyrratblttcqrvecsdkudzsem` int DEFAULT NULL,\n `ydqtgbqmscmflexqbschomqnhimpzdao` int DEFAULT NULL,\n `qtppncsnbixjubgzoavmabsrsvhowxeq` int DEFAULT NULL,\n `cmtjkeknybcjjitwuzqqebbtbmbiioaq` int DEFAULT NULL,\n `rllvhymghaxhslzcnsfsfudtpumcmnky` int DEFAULT NULL,\n `tzqanbjwhebxcshhbayocappfznssvvn` int DEFAULT NULL,\n `azgqdbpdufftpflxgebeellwsqbyessg` int DEFAULT NULL,\n `iqwzzngazmmhshkhvlyocrryddsmfblc` int DEFAULT NULL,\n `fqzzyqvxwtqndhyzzjazsdnoqyfzggrn` int DEFAULT NULL,\n `evfkfwjxxixihpmcfyyggpxaljnxboiw` int DEFAULT NULL,\n `awpvwarjzfcnimtfhzmmreppulkxhxvl` int DEFAULT NULL,\n `tsdvwsibrstzhxixrsfnciqqbtyffudx` int DEFAULT NULL,\n `recadzjrzxerssrnasoddxiyizaawfjj` int DEFAULT NULL,\n `ircuxesztqaevwkhqwuhkmblrikwjhdt` int DEFAULT NULL,\n `thrsemicfckatygnjdguzxoyprkyaynx` int DEFAULT NULL,\n `mmcuqfnhhqevzhlbjrniahaszqmqqayf` int DEFAULT NULL,\n `ytnfwngkfgggkuqhhuhcqyqsvceojzni` int DEFAULT NULL,\n `rycmaltlpyxekwvxhgoyfroqlvggkluu` int DEFAULT NULL,\n `uqioidfabqphcjgulbakqslpodcirblu` int DEFAULT NULL,\n `yptbtmbqbndlvedichnhogixzwhtjite` int DEFAULT NULL,\n `mcvawsiofukegaofxnmyywryedbybdtb` int DEFAULT NULL,\n `mytfxylxlzuvggbrwtovtpcmynupiaeu` int DEFAULT NULL,\n `drbearwfzuesoghnkehidzknamrpchig` int DEFAULT NULL,\n `opfifntwvrnsvzhvkajsxrxszazzfijo` int DEFAULT NULL,\n `tulgqppmetnrjndjidvfrvuyecrfomhu` int DEFAULT NULL,\n `dfmgjwzojfkerwgbotsosiwguxbzzbny` int DEFAULT NULL,\n `hratqkoagrjiejqjusrciryfqcwiepzr` int DEFAULT NULL,\n `yobewiigcjfbcgjxcbmpuvrsuezxgyjv` int DEFAULT NULL,\n `skbnncyxxvpiigxmpqoszatijebfyrba` int DEFAULT NULL,\n `rdybjemulridtvacrhgrruhwwvmzawzs` int DEFAULT NULL,\n `hgruddmswzwboijnztjgtqjjcthwazoi` int DEFAULT NULL,\n `ybnbxfzqjhhnygzejacfbvltxtvsmjif` int DEFAULT NULL,\n `aweumgbnomwphpfrwotzidodznkqbmen` int DEFAULT NULL,\n `mhtjdvhwrleccielimgbsxdpxebytpvl` int DEFAULT NULL,\n `kvobvcxmhkdrryutewwjudsmbwjncmds` int DEFAULT NULL,\n `rgwhbfywkouyxnntscovvmdhtlcrsdnn` int DEFAULT NULL,\n `nhioryslhbwwdmeaalcqcdodvppxlhzv` int DEFAULT NULL,\n `tyeoayuxhkifxhxccaiphhyzuogaquay` int DEFAULT NULL,\n PRIMARY KEY (`yxvugbpvfcahhbyhpxslejdwpjyxlgiy`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"qiwtlstwkkhmomafokasfiebppralewy\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["yxvugbpvfcahhbyhpxslejdwpjyxlgiy"],"columns":[{"name":"yxvugbpvfcahhbyhpxslejdwpjyxlgiy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"bkcyzzdzxnclmdvhntgdvqhxbtybbqgg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qyhesvuwjpnkrumnoucafsjwkuqpwkaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjtflfqscnuholiiswrncgdarnvadyxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpcihjidcoatmjfartkzoaywfkqibewi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pinqqyfbnigravmzzobzvsdfrtjywqsz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ksqahcuuwzpteddvvhyyzhekikvwkkxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhateemsktxoolydsqxxwthsuiblkhed","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vyvtodeppeoehiemplmlozsfnnehxjqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nlszyliqpxnzqtpsddhircjwcmlcuvug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mgvfvvrlhexsamanhgrgzqencihmefrf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fyqujucnefbayvbjulsafogitgezmfql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prplhytewrftldzkkihvhawgxolhywbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzvjddgeijpvbiniqjiffquqanmkzwti","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikwbcrioidcypsqsutnndedvtnzgtddg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"caldtqtohwqqpvqlfpgeeiayxofvbtyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjqsdzhbdeyyusqozyjfrfwakfifqlrc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vklxcxabzsjxtzqisgvulxbzjnvkrpqk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zfhnxywqhbtdwhbqbdgspjnxebfsgdhp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfrhvkfqzbhcinaqicjhoakmkmlfkhtz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbvoqfuvjgszralsnxcwprqdtnoenmds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xcojaptyrorasdqymaydcnwwxgfsjrub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"devlhxaffnbtrytzuctnnalfvolyeunw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"siidjcuerviprkookhbohmzvfqifclht","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqhjzgaurxroemeoziabfchvwhmbpneb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"woyesxopefmzpnzgeuypsnhlicmqmpgt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"paxnbpipgqvtvwifgyptfobrtfyzcqyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hvgjtsmacdleuffwnjvufdtbzpxqbvbl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mdefkizrflljemehwznzjqbcfxdxqjvt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rvdonezmrquhlgkfiwfhgszoupfluewm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkssyztpndsvlvxxrbtkvcnncufytvjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nraswgkjgdfyifrqqluiakrfxylabxph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftzcqcuyimkaxarvucqxciedlvjrfyru","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nckyyiduzfkvovfysmnakryerewnjerv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ulaiezkygefdgnqalodxftljukllpnhk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbjqosdubbssldhfaksxxmedpefuxagv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knoaqvlefvxpjnwndxavlqbqlqibnjmd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xlaevicupefyaoaomerkjvmfocfoqpnr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajucufetnobczqhujhaajwpakayaixxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"egqflfryduwihuwckbetnspzxcpapvnk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zynsjzhjnmgxlpkchkekcwktdrfpeboq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pttndmzcwwwgrsytbvamknmgemnklkmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lsmeoncyqezhoqqrxmjhusyfyoadqowc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aunqkeqwttgcbrlecbcscbgitffncpfj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ckuercoiupvnyqjqriublggcowpqaomg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqgtxpyqourfkregzmsglfauqsoeamdz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"circdqnyugnjmwqlyjdjicmspmrgxuhx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ygwtdpelgkcfgfjqxcelobcxmywsmwjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exixtouoacwjbpdqzwgvmsutuovnhlxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekepjjkvrkpbviyimxyjmndozxksmeql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"elcxzwkhwwplnpqkipgmxzrrbeltlhsq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntzavspzblkfaknsfogidiqapczskoqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftzoqnimxlkygfgdjgibulcjndtiblpb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrexywcasxdoslhwlluapdzzgjffhrbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idzihmvuttvrykaxcrmmcgeddudwbylh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uemqhegsftwtpnvttrxtxbigsofbhlnd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mefmloqvgzqqhqritfgfnbbkajrdzfeg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivvhakhsuxtlrgjjhnnxunoihpxfowqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hckswjfttwlyxlkomlbaaztxnzyxjomr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lldaczvnphtynqkqpnpiwgttzmvykqye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jzuezwkckervulenvwsyjmcgcypmndex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbxjmslaomnpadhwtyhqyoijmpvowifp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kkaupvfyyrratblttcqrvecsdkudzsem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydqtgbqmscmflexqbschomqnhimpzdao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtppncsnbixjubgzoavmabsrsvhowxeq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmtjkeknybcjjitwuzqqebbtbmbiioaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rllvhymghaxhslzcnsfsfudtpumcmnky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tzqanbjwhebxcshhbayocappfznssvvn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"azgqdbpdufftpflxgebeellwsqbyessg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqwzzngazmmhshkhvlyocrryddsmfblc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqzzyqvxwtqndhyzzjazsdnoqyfzggrn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evfkfwjxxixihpmcfyyggpxaljnxboiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awpvwarjzfcnimtfhzmmreppulkxhxvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tsdvwsibrstzhxixrsfnciqqbtyffudx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"recadzjrzxerssrnasoddxiyizaawfjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ircuxesztqaevwkhqwuhkmblrikwjhdt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thrsemicfckatygnjdguzxoyprkyaynx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmcuqfnhhqevzhlbjrniahaszqmqqayf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytnfwngkfgggkuqhhuhcqyqsvceojzni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rycmaltlpyxekwvxhgoyfroqlvggkluu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqioidfabqphcjgulbakqslpodcirblu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yptbtmbqbndlvedichnhogixzwhtjite","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcvawsiofukegaofxnmyywryedbybdtb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mytfxylxlzuvggbrwtovtpcmynupiaeu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drbearwfzuesoghnkehidzknamrpchig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opfifntwvrnsvzhvkajsxrxszazzfijo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tulgqppmetnrjndjidvfrvuyecrfomhu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dfmgjwzojfkerwgbotsosiwguxbzzbny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hratqkoagrjiejqjusrciryfqcwiepzr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yobewiigcjfbcgjxcbmpuvrsuezxgyjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skbnncyxxvpiigxmpqoszatijebfyrba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdybjemulridtvacrhgrruhwwvmzawzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hgruddmswzwboijnztjgtqjjcthwazoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ybnbxfzqjhhnygzejacfbvltxtvsmjif","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aweumgbnomwphpfrwotzidodznkqbmen","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhtjdvhwrleccielimgbsxdpxebytpvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvobvcxmhkdrryutewwjudsmbwjncmds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgwhbfywkouyxnntscovvmdhtlcrsdnn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhioryslhbwwdmeaalcqcdodvppxlhzv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tyeoayuxhkifxhxccaiphhyzuogaquay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670409,"databaseName":"models_schema","ddl":"CREATE TABLE `qlasmsrgsfuikzxkdrpxtdwwbaalkjde` (\n `rzjqvrsqykxqogmcrsmmiohhqfbvoqzw` int NOT NULL,\n `cexovlnrujxonpcnvjllgnhvvxjpjlaf` int DEFAULT NULL,\n `bmwppftkebbzldqpxuntiomszzlvurvv` int DEFAULT NULL,\n `vakaxyntwecenlbsubkjfzwzulygomaq` int DEFAULT NULL,\n `rzagxcpyulnqllykzsruvqijbzscaowk` int DEFAULT NULL,\n `jqpvmoniaiqyztsunblwxvjhgwqjtigj` int DEFAULT NULL,\n `otnvqqnrojogfopasajiggwwotzwrdhz` int DEFAULT NULL,\n `wgwudjnekktkrcjdjmhemfndcuotcarb` int DEFAULT NULL,\n `nxadkltmlhewwrallpcktqvrciewrycl` int DEFAULT NULL,\n `lcjiovnpsajpodtxxinuxpxkrubxqbqb` int DEFAULT NULL,\n `mppkucrgnmoaxizkxkazpujiufkwgzcl` int DEFAULT NULL,\n `rycyvradwnjploazvxautvwfhcorfssu` int DEFAULT NULL,\n `uhxgivziqqqrsukzjqmzsyrpxsimpvrc` int DEFAULT NULL,\n `uggqjjkcgrsgiloivtxspalebiqmkffz` int DEFAULT NULL,\n `ybyeswrrmzoxtkscigtuetwpbqeusrwf` int DEFAULT NULL,\n `dzscfbbbrhcfnhjrtxgqguaedaadcpgn` int DEFAULT NULL,\n `qozexvggtvmklcithxjnlhwjvvxvaoxp` int DEFAULT NULL,\n `hirusxsjmcdfmvcnbmaabkhafxnexzqu` int DEFAULT NULL,\n `temoqmohqaqnwwnypqukrhjhvxhrdvge` int DEFAULT NULL,\n `dppdlfozpeksnighhgsufwlzezragkzm` int DEFAULT NULL,\n `imhbrwicleuymozsavmfjulqyygdrvti` int DEFAULT NULL,\n `okpzvvnxhrijncwrxspmjerjiaxwvbyw` int DEFAULT NULL,\n `zxcrzuyjquiwwfmdqbamhhociuleadbi` int DEFAULT NULL,\n `nqvgbijyxsqiausafhhxipnrvmmakuhe` int DEFAULT NULL,\n `rqrmefuvprvgwsazhiejafbanharjwcr` int DEFAULT NULL,\n `btsecavjscyatrxsdoaxtkifiithgvor` int DEFAULT NULL,\n `drkmsgvkoekifjnckcyuabyqdbmootob` int DEFAULT NULL,\n `lytlnmxakhgjgnwnozamhehpmylowfcb` int DEFAULT NULL,\n `kcsqmfdynofuopmlhjyaesmzvhzmmrrk` int DEFAULT NULL,\n `cccwemvethmxjqvpntqmyjjfwwlvxqje` int DEFAULT NULL,\n `iuqpatafsmhhhpkuzkkcvyopprlvazog` int DEFAULT NULL,\n `mnrqodiczxrtxzgawosvcprvhmhsaehm` int DEFAULT NULL,\n `mfycpxmvytynymxcaxrcopanhxkyjdro` int DEFAULT NULL,\n `qwugodyjvjjkwxqjqjldqyutnokhusbn` int DEFAULT NULL,\n `lfmjnfyyvzblastmoxlpbgwevofhabbn` int DEFAULT NULL,\n `pigymattjgtlygnjjlpduvlnnoeaoumc` int DEFAULT NULL,\n `ywtizdutpxywhkrzbzbtqutqvctpduxm` int DEFAULT NULL,\n `tazkukiayyxieknzwqqmqasmqdjtzfwa` int DEFAULT NULL,\n `qweeokdjqftfrlboqwrgnvsrwacwjrjt` int DEFAULT NULL,\n `rrtoejorporxvrnhqcwohiyloaypeotg` int DEFAULT NULL,\n `ovtmssqhkdhxvxqkfjrfaaawvqxktglx` int DEFAULT NULL,\n `kncxzethwxgtwwkkagdpyiiwyfduyvid` int DEFAULT NULL,\n `phopaxzaqsienarlivegptfjqfmlloft` int DEFAULT NULL,\n `flovarvwwejiihvfodijmvcmrgstnssb` int DEFAULT NULL,\n `bilipvblfipvdedjuutzspceytwxsgal` int DEFAULT NULL,\n `dxjqkeqdvrwanayqbilhunqpugaoqjtx` int DEFAULT NULL,\n `ykveajfwciieebqgfmgarvxfihcztxam` int DEFAULT NULL,\n `xxdfjgztqkowoqtbepjckvmfihbjygep` int DEFAULT NULL,\n `vzmkwkpbmgeeremkhpfjwrhnbhpkxjpx` int DEFAULT NULL,\n `onkvaycibqnbbfbovdeqldiqytpowceg` int DEFAULT NULL,\n `ktzowvssoeecpxjuythbcxxthqcxszjk` int DEFAULT NULL,\n `qldhcuivtgmcjwxuudfigukiblfyggro` int DEFAULT NULL,\n `ghfiqcabbzlprtgfxprvalrmaisnauor` int DEFAULT NULL,\n `ffweqnkzpwrgfqowpcrpoxbxpvkjgwxr` int DEFAULT NULL,\n `rcnylgjmoutxotfjlvlbewmfgnagwxry` int DEFAULT NULL,\n `qllobsuywtcfkcdrwkqwswjnhmbjxcca` int DEFAULT NULL,\n `exvlpigctmzgqclszieokwluxpdnxfhl` int DEFAULT NULL,\n `niynzrungwlroysntapkhducxssagejx` int DEFAULT NULL,\n `jworytmvrocxqwcnpygrgnicxqhkwufs` int DEFAULT NULL,\n `faykdktyimahpdqkciycwjzgnmtvevbc` int DEFAULT NULL,\n `xkhocfsdgfmhqwycikserxqrdekuyynd` int DEFAULT NULL,\n `kfvuymwedmmucrhovvgwhlwwoevckebp` int DEFAULT NULL,\n `xuznyfozmjbdwmstzlrencjhrmjshfut` int DEFAULT NULL,\n `yexrkwqnomekluaphtbcfwhreghqwoyd` int DEFAULT NULL,\n `pjftdpmhumbaaltacszvxbugsbcoxcln` int DEFAULT NULL,\n `oqqzbvjvilxsxyuftwnjnapmiwfpxvjz` int DEFAULT NULL,\n `jacgqnqgvvtstkqvcvoqpqyficcoodfe` int DEFAULT NULL,\n `dvwuzlvdiqtfdvkvhxqxvuynayzizsta` int DEFAULT NULL,\n `wtkzadooqrlpmiyfjmcrmkusygioyawu` int DEFAULT NULL,\n `iqmqqnzawvfzuxhltzcaqxltsouxrwsk` int DEFAULT NULL,\n `npsxyojhflihigdfnexgrknuaqxapewd` int DEFAULT NULL,\n `ffqfljcldaywfdbbveqvhkaefogffdmi` int DEFAULT NULL,\n `jlmokwkfxaozxmmmvzcjcppdgbqtctmt` int DEFAULT NULL,\n `dhiulaawghxjvdbzytemzbucehartuyh` int DEFAULT NULL,\n `dngzfwkdpxialupkbtgcuyxomsninrvo` int DEFAULT NULL,\n `pjjusyfethuxzamnjiblpmonfqhyjqty` int DEFAULT NULL,\n `jpyvizgcqyfuushzpbcbjfftzsrxibqh` int DEFAULT NULL,\n `yusggpjcbhfcyujnpkuwlfwwkpaqihsm` int DEFAULT NULL,\n `hbvchbhembuqykxhgqzxjwrdjjgnxwmz` int DEFAULT NULL,\n `jksjofaskfgmmyykojifqlvxdnishhkf` int DEFAULT NULL,\n `zoubrvfbewxpgfdswexbavbsxreoolme` int DEFAULT NULL,\n `rwakjecdrmfkgvwwbflpfrvbytdobmgb` int DEFAULT NULL,\n `tjdkbxdwzqmfvzzzuwbhlsihsjplkifd` int DEFAULT NULL,\n `iktbiqwslgafzcpuyigspexhzqcqolil` int DEFAULT NULL,\n `ovoqqhrlojcakzflzybeagtqakughcvd` int DEFAULT NULL,\n `deiixxbwyyigyouemdirrasithqbishx` int DEFAULT NULL,\n `gdipprzjhebcocfgzsnenzrfynfaxeku` int DEFAULT NULL,\n `bihmzururrbxxfcsibouvxjtidafkdwc` int DEFAULT NULL,\n `bzvsdzekxvwirqowfcwgiagoyqgylxca` int DEFAULT NULL,\n `wpihavkslpmqplmuuvajuxylysxfpuhj` int DEFAULT NULL,\n `jnotzawcaeatofghamjiskhtynjzwytq` int DEFAULT NULL,\n `culnwghvepuzvoexsxrxybkvopbvlneh` int DEFAULT NULL,\n `xsrhnzdctecgcjjlrxscukoxwdbevebf` int DEFAULT NULL,\n `yihwcsxgabejqpektpridizhbegocqij` int DEFAULT NULL,\n `hadqvtlglynngsdxmlyxwrabwqlgeadp` int DEFAULT NULL,\n `iyfpndydkodelkcimwhhiedokohrfskw` int DEFAULT NULL,\n `kpuczqckdqvitzqicxoalyjgytzfqmzb` int DEFAULT NULL,\n `ievqlwhhyyrclciethyhpldhuyfsnahh` int DEFAULT NULL,\n `llocbfkfzfsizsjszmzgtfoyxhirgdbe` int DEFAULT NULL,\n `vxwmpcyixajvszkpikyedsigllzqgral` int DEFAULT NULL,\n PRIMARY KEY (`rzjqvrsqykxqogmcrsmmiohhqfbvoqzw`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"qlasmsrgsfuikzxkdrpxtdwwbaalkjde\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["rzjqvrsqykxqogmcrsmmiohhqfbvoqzw"],"columns":[{"name":"rzjqvrsqykxqogmcrsmmiohhqfbvoqzw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"cexovlnrujxonpcnvjllgnhvvxjpjlaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bmwppftkebbzldqpxuntiomszzlvurvv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vakaxyntwecenlbsubkjfzwzulygomaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzagxcpyulnqllykzsruvqijbzscaowk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jqpvmoniaiqyztsunblwxvjhgwqjtigj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otnvqqnrojogfopasajiggwwotzwrdhz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wgwudjnekktkrcjdjmhemfndcuotcarb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxadkltmlhewwrallpcktqvrciewrycl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lcjiovnpsajpodtxxinuxpxkrubxqbqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mppkucrgnmoaxizkxkazpujiufkwgzcl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rycyvradwnjploazvxautvwfhcorfssu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhxgivziqqqrsukzjqmzsyrpxsimpvrc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uggqjjkcgrsgiloivtxspalebiqmkffz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ybyeswrrmzoxtkscigtuetwpbqeusrwf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dzscfbbbrhcfnhjrtxgqguaedaadcpgn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qozexvggtvmklcithxjnlhwjvvxvaoxp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hirusxsjmcdfmvcnbmaabkhafxnexzqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"temoqmohqaqnwwnypqukrhjhvxhrdvge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dppdlfozpeksnighhgsufwlzezragkzm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"imhbrwicleuymozsavmfjulqyygdrvti","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"okpzvvnxhrijncwrxspmjerjiaxwvbyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxcrzuyjquiwwfmdqbamhhociuleadbi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqvgbijyxsqiausafhhxipnrvmmakuhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqrmefuvprvgwsazhiejafbanharjwcr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"btsecavjscyatrxsdoaxtkifiithgvor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drkmsgvkoekifjnckcyuabyqdbmootob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lytlnmxakhgjgnwnozamhehpmylowfcb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kcsqmfdynofuopmlhjyaesmzvhzmmrrk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cccwemvethmxjqvpntqmyjjfwwlvxqje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iuqpatafsmhhhpkuzkkcvyopprlvazog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnrqodiczxrtxzgawosvcprvhmhsaehm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mfycpxmvytynymxcaxrcopanhxkyjdro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwugodyjvjjkwxqjqjldqyutnokhusbn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfmjnfyyvzblastmoxlpbgwevofhabbn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pigymattjgtlygnjjlpduvlnnoeaoumc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywtizdutpxywhkrzbzbtqutqvctpduxm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tazkukiayyxieknzwqqmqasmqdjtzfwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qweeokdjqftfrlboqwrgnvsrwacwjrjt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrtoejorporxvrnhqcwohiyloaypeotg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovtmssqhkdhxvxqkfjrfaaawvqxktglx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kncxzethwxgtwwkkagdpyiiwyfduyvid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phopaxzaqsienarlivegptfjqfmlloft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flovarvwwejiihvfodijmvcmrgstnssb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bilipvblfipvdedjuutzspceytwxsgal","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxjqkeqdvrwanayqbilhunqpugaoqjtx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykveajfwciieebqgfmgarvxfihcztxam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxdfjgztqkowoqtbepjckvmfihbjygep","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vzmkwkpbmgeeremkhpfjwrhnbhpkxjpx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"onkvaycibqnbbfbovdeqldiqytpowceg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ktzowvssoeecpxjuythbcxxthqcxszjk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qldhcuivtgmcjwxuudfigukiblfyggro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghfiqcabbzlprtgfxprvalrmaisnauor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffweqnkzpwrgfqowpcrpoxbxpvkjgwxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcnylgjmoutxotfjlvlbewmfgnagwxry","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qllobsuywtcfkcdrwkqwswjnhmbjxcca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exvlpigctmzgqclszieokwluxpdnxfhl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"niynzrungwlroysntapkhducxssagejx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jworytmvrocxqwcnpygrgnicxqhkwufs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"faykdktyimahpdqkciycwjzgnmtvevbc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkhocfsdgfmhqwycikserxqrdekuyynd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfvuymwedmmucrhovvgwhlwwoevckebp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xuznyfozmjbdwmstzlrencjhrmjshfut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yexrkwqnomekluaphtbcfwhreghqwoyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjftdpmhumbaaltacszvxbugsbcoxcln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqqzbvjvilxsxyuftwnjnapmiwfpxvjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jacgqnqgvvtstkqvcvoqpqyficcoodfe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvwuzlvdiqtfdvkvhxqxvuynayzizsta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wtkzadooqrlpmiyfjmcrmkusygioyawu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqmqqnzawvfzuxhltzcaqxltsouxrwsk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"npsxyojhflihigdfnexgrknuaqxapewd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffqfljcldaywfdbbveqvhkaefogffdmi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlmokwkfxaozxmmmvzcjcppdgbqtctmt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhiulaawghxjvdbzytemzbucehartuyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dngzfwkdpxialupkbtgcuyxomsninrvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjjusyfethuxzamnjiblpmonfqhyjqty","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jpyvizgcqyfuushzpbcbjfftzsrxibqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yusggpjcbhfcyujnpkuwlfwwkpaqihsm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbvchbhembuqykxhgqzxjwrdjjgnxwmz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jksjofaskfgmmyykojifqlvxdnishhkf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zoubrvfbewxpgfdswexbavbsxreoolme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rwakjecdrmfkgvwwbflpfrvbytdobmgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjdkbxdwzqmfvzzzuwbhlsihsjplkifd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iktbiqwslgafzcpuyigspexhzqcqolil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovoqqhrlojcakzflzybeagtqakughcvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"deiixxbwyyigyouemdirrasithqbishx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdipprzjhebcocfgzsnenzrfynfaxeku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bihmzururrbxxfcsibouvxjtidafkdwc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bzvsdzekxvwirqowfcwgiagoyqgylxca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wpihavkslpmqplmuuvajuxylysxfpuhj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jnotzawcaeatofghamjiskhtynjzwytq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"culnwghvepuzvoexsxrxybkvopbvlneh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsrhnzdctecgcjjlrxscukoxwdbevebf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yihwcsxgabejqpektpridizhbegocqij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hadqvtlglynngsdxmlyxwrabwqlgeadp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iyfpndydkodelkcimwhhiedokohrfskw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kpuczqckdqvitzqicxoalyjgytzfqmzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ievqlwhhyyrclciethyhpldhuyfsnahh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llocbfkfzfsizsjszmzgtfoyxhirgdbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxwmpcyixajvszkpikyedsigllzqgral","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670449,"databaseName":"models_schema","ddl":"CREATE TABLE `qmflonomnffllkxweddtjcrusntdyhwl` (\n `gvhsjfytckpbekvlsanodapxvqklvbag` int NOT NULL,\n `zhdpwqivfelmwqkengzrfionmzkyphbg` int DEFAULT NULL,\n `xlymkdssyhnlukkhgptxztqjczxdwnty` int DEFAULT NULL,\n `rfqcncgewoknzgldsmplfmivhycvgrhi` int DEFAULT NULL,\n `rorcdcsbcjsetxagvxxkaioiosgtmkov` int DEFAULT NULL,\n `okceyfmiwwavdlygovczkrcyavsvpkyu` int DEFAULT NULL,\n `ctnrnwfwyuoupuslmqrsevffxakulgtb` int DEFAULT NULL,\n `udfzdjxflrupvpkjazsdkfvggfgvgbxq` int DEFAULT NULL,\n `usbdsjstzxsgocltajkjgdphrqkylqpu` int DEFAULT NULL,\n `ycdyiqfxcduriwnjkzyhpbcshsojsrqe` int DEFAULT NULL,\n `lhxmgfyiglyzviursfyugslvvcxrmvzl` int DEFAULT NULL,\n `xoildhxonzqxmjwckodsehxnkpotdxin` int DEFAULT NULL,\n `qifvrbuktxfpcvzocrljdpjimzdraukw` int DEFAULT NULL,\n `vkvjueopwbwcavgixxwjbifghnnfydeo` int DEFAULT NULL,\n `xovysmilebebrlalcwvzjwlcjsediirz` int DEFAULT NULL,\n `bahixgfsyekhmrqvmrfpfcviucsnblhh` int DEFAULT NULL,\n `staebhhwktrhekdctuicavhdjlxeeldf` int DEFAULT NULL,\n `yaaxhdtpxcvehnyzmajotsmgyyqunwmk` int DEFAULT NULL,\n `snedfurmsbfqxseizjcrdekjadcewwll` int DEFAULT NULL,\n `zclduvlyzlbootsrixzrubjnuclsxyxh` int DEFAULT NULL,\n `troezfywonkwffymwhqqptymnkvuemud` int DEFAULT NULL,\n `myzdbugagvflufzyvuooeifofhlpyrta` int DEFAULT NULL,\n `qugqajnlzlzkiomgmmucpgczbmuwswii` int DEFAULT NULL,\n `mdgxntnwxvwiunofcjvgknosxqqvrahr` int DEFAULT NULL,\n `pyghgvvoamzazbbmhbwdejagbccmtvak` int DEFAULT NULL,\n `coqdtufpyigimiblqqulmoacpzffurss` int DEFAULT NULL,\n `hpwcoxclscyucwcqgwleyjvgkzrgbnej` int DEFAULT NULL,\n `dbhjgunlyrdtdopsqmjgamccjafjedru` int DEFAULT NULL,\n `ocvinqcrbijlhsokacwddlsukloulcym` int DEFAULT NULL,\n `sbraasuojkuwagcalnimrkbudlnulbii` int DEFAULT NULL,\n `ctowjcrkysljjzxgoiquvtqefoznhakn` int DEFAULT NULL,\n `ligpmgjqjsaghxdyivumlimgainnnmub` int DEFAULT NULL,\n `rdoobxtfzyqdtvezhpqnncqwjolcrwtf` int DEFAULT NULL,\n `rqlbjimbeokpnjntlkhmssqfvscvcphc` int DEFAULT NULL,\n `aqldphqaougmpuiustfjljduwbknrpoy` int DEFAULT NULL,\n `mwjfvtvcpiqyaniwzhvkmyxspfphwopa` int DEFAULT NULL,\n `tpzaxgdhgdfftuzbiniskoiapggaijdk` int DEFAULT NULL,\n `qrsghawocakkmwetwaryxzovpowextrg` int DEFAULT NULL,\n `qdiymiwwizuwespitolckadqybimyrkv` int DEFAULT NULL,\n `znaavefarhaiimxjrtwjyjfosxsknxam` int DEFAULT NULL,\n `pnnxrgemkfdusqnwdbowbqfmnhcvduxy` int DEFAULT NULL,\n `ramjaquhhyglbdrbezqjcyxpxpuzcrsr` int DEFAULT NULL,\n `mvvktnwddcbzfpevyavwbhtxmddtyxyc` int DEFAULT NULL,\n `sxuustojyutznlfupbxlxdrhjochzaaw` int DEFAULT NULL,\n `omdbzqybtkcewyfvhvtzqjidalwqeqhm` int DEFAULT NULL,\n `ntwfvrrbczxtzszflfqkhkurppjdrdla` int DEFAULT NULL,\n `nzcpsftmohalzwjkhzzwfkczygyknqvn` int DEFAULT NULL,\n `igfnarpijsfyasjtwokkwssbmjrdkpye` int DEFAULT NULL,\n `pudlrzirmcelacygzcdepczxddgogcuz` int DEFAULT NULL,\n `yxjladgditxnuygimpwxrdzmqnybkxmw` int DEFAULT NULL,\n `fufwcwqzqndqtunleffcrlmhzjpphlix` int DEFAULT NULL,\n `kmlbnpkpjzsgxpfujdvamcxrjtdhgiya` int DEFAULT NULL,\n `lmvysjokktxmmlaoffrgqtwkbaqpbgxm` int DEFAULT NULL,\n `znjdzifwedlxvewivvexbcbanvtaikgl` int DEFAULT NULL,\n `harhaopfgmxmzpkwjjrdplmkeqethrux` int DEFAULT NULL,\n `kahluygjebwqxhjlafjmphjglngmnzba` int DEFAULT NULL,\n `raumihulckqsdzsmlhksvmsenuuxmmeg` int DEFAULT NULL,\n `xjdprmfvglbwiaevnpmubvjvuilvlcef` int DEFAULT NULL,\n `uyqnulrcpwtpiyyulitdwrzohfagrbxg` int DEFAULT NULL,\n `oputqsaxybvtbtjuepvqgimsaczupkdx` int DEFAULT NULL,\n `qohqtraepzxagkovqwtcxlifuuxjwzxk` int DEFAULT NULL,\n `xqxvidrwgainwytazhhxuottcbvschuw` int DEFAULT NULL,\n `tqrvjhhcungkywagmewzhmatajbuylqd` int DEFAULT NULL,\n `sfmxxxjrwfsepfwqqozpzvvoodjindvu` int DEFAULT NULL,\n `eppxqqxrfclowpoltcvdnasgfuhcbcmu` int DEFAULT NULL,\n `ttttgtqaosfzxboxytjvrpqxigcupvum` int DEFAULT NULL,\n `dgtwtybvhbctbilvjebyutrpksaabbir` int DEFAULT NULL,\n `gklflfhtmoxntcaleqwhcnakwbkfpnxk` int DEFAULT NULL,\n `dyjbhfquxwfyjjirhqnzjeueglqhembk` int DEFAULT NULL,\n `cdbflhpeugodmdpheubxnkwtdrkiblsc` int DEFAULT NULL,\n `gskejrgtoiiauttkpujlklloozyweigp` int DEFAULT NULL,\n `ewwholnnbrtkrwzvffzrgrrxpcmwqcmk` int DEFAULT NULL,\n `zidejwxqvfshxsndirshjnpwmvxsnyva` int DEFAULT NULL,\n `jnbbqaejsigirfbifmkbebnliytzzjby` int DEFAULT NULL,\n `vnygsmmneejzxkzvpmhmyccgbflsnyuj` int DEFAULT NULL,\n `sqlugftkbfnuulhajvgbqyznnaocfaeq` int DEFAULT NULL,\n `mzikzgjtjygwqidbcsrgapsbddqfffnk` int DEFAULT NULL,\n `izmoosqzltxfjnujakcnbiuhfxvcpofd` int DEFAULT NULL,\n `pnriymfwlxidauutctimfskpycjbnppw` int DEFAULT NULL,\n `nggbpdmqhnukdbaahvyqekrbaumscnjl` int DEFAULT NULL,\n `twkhskcjjmscfzprggvohdxonclmutrl` int DEFAULT NULL,\n `pamvejlgqfzrpjrtbqwmlxelyqmdyrdr` int DEFAULT NULL,\n `dqubsbtmnoeztkhucnuslgwrefoylsrg` int DEFAULT NULL,\n `fdleqiepttlqvssosheqtqhubiinztxd` int DEFAULT NULL,\n `ynpvhlzwosxjlsiotodbsgtsdtwahcro` int DEFAULT NULL,\n `vkujqcfpmbikgezmtvnhbwhcmgqcmmuv` int DEFAULT NULL,\n `jfncfddoilvdkamqkinnooatunyimgod` int DEFAULT NULL,\n `amjtluqceocsjtopwrhcljgjzjxskgoh` int DEFAULT NULL,\n `omvdhohjzxuucmkomklnesmxpazrquuj` int DEFAULT NULL,\n `abhqjrmvskxkiacbbwpgthjxdlpcckay` int DEFAULT NULL,\n `caxjtgfuixtuwivruxmlzhheiobxzwhq` int DEFAULT NULL,\n `nqfnwqiwwmffhwnwbuorxuccdrtvnxpn` int DEFAULT NULL,\n `anyzslgsupsgxfeilipwiyzauopwlkub` int DEFAULT NULL,\n `kdlbbrbflurvykldlunvfhxpifknigce` int DEFAULT NULL,\n `jgbmgybppvrcxhrttrbthdlvnvjnpwlh` int DEFAULT NULL,\n `xybagyoizyxdrxsfnpklevtcakjftnnj` int DEFAULT NULL,\n `eycybflwzyfekpnrlclkiabgbqwjanhe` int DEFAULT NULL,\n `fnwdyjypqctlirzczsqricimxbmrghbx` int DEFAULT NULL,\n `xbsthdhzpiatvbckrcjexnaxqtuncthf` int DEFAULT NULL,\n `wfooqlhojujgpxokumikyjvljnsculia` int DEFAULT NULL,\n PRIMARY KEY (`gvhsjfytckpbekvlsanodapxvqklvbag`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"qmflonomnffllkxweddtjcrusntdyhwl\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["gvhsjfytckpbekvlsanodapxvqklvbag"],"columns":[{"name":"gvhsjfytckpbekvlsanodapxvqklvbag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"zhdpwqivfelmwqkengzrfionmzkyphbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xlymkdssyhnlukkhgptxztqjczxdwnty","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfqcncgewoknzgldsmplfmivhycvgrhi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rorcdcsbcjsetxagvxxkaioiosgtmkov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"okceyfmiwwavdlygovczkrcyavsvpkyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctnrnwfwyuoupuslmqrsevffxakulgtb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udfzdjxflrupvpkjazsdkfvggfgvgbxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"usbdsjstzxsgocltajkjgdphrqkylqpu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ycdyiqfxcduriwnjkzyhpbcshsojsrqe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhxmgfyiglyzviursfyugslvvcxrmvzl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xoildhxonzqxmjwckodsehxnkpotdxin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qifvrbuktxfpcvzocrljdpjimzdraukw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkvjueopwbwcavgixxwjbifghnnfydeo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xovysmilebebrlalcwvzjwlcjsediirz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bahixgfsyekhmrqvmrfpfcviucsnblhh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"staebhhwktrhekdctuicavhdjlxeeldf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yaaxhdtpxcvehnyzmajotsmgyyqunwmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"snedfurmsbfqxseizjcrdekjadcewwll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zclduvlyzlbootsrixzrubjnuclsxyxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"troezfywonkwffymwhqqptymnkvuemud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"myzdbugagvflufzyvuooeifofhlpyrta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qugqajnlzlzkiomgmmucpgczbmuwswii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mdgxntnwxvwiunofcjvgknosxqqvrahr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pyghgvvoamzazbbmhbwdejagbccmtvak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"coqdtufpyigimiblqqulmoacpzffurss","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hpwcoxclscyucwcqgwleyjvgkzrgbnej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbhjgunlyrdtdopsqmjgamccjafjedru","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocvinqcrbijlhsokacwddlsukloulcym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbraasuojkuwagcalnimrkbudlnulbii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctowjcrkysljjzxgoiquvtqefoznhakn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ligpmgjqjsaghxdyivumlimgainnnmub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdoobxtfzyqdtvezhpqnncqwjolcrwtf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqlbjimbeokpnjntlkhmssqfvscvcphc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqldphqaougmpuiustfjljduwbknrpoy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwjfvtvcpiqyaniwzhvkmyxspfphwopa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpzaxgdhgdfftuzbiniskoiapggaijdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qrsghawocakkmwetwaryxzovpowextrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdiymiwwizuwespitolckadqybimyrkv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znaavefarhaiimxjrtwjyjfosxsknxam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnnxrgemkfdusqnwdbowbqfmnhcvduxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ramjaquhhyglbdrbezqjcyxpxpuzcrsr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvvktnwddcbzfpevyavwbhtxmddtyxyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sxuustojyutznlfupbxlxdrhjochzaaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omdbzqybtkcewyfvhvtzqjidalwqeqhm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntwfvrrbczxtzszflfqkhkurppjdrdla","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzcpsftmohalzwjkhzzwfkczygyknqvn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igfnarpijsfyasjtwokkwssbmjrdkpye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pudlrzirmcelacygzcdepczxddgogcuz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxjladgditxnuygimpwxrdzmqnybkxmw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fufwcwqzqndqtunleffcrlmhzjpphlix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kmlbnpkpjzsgxpfujdvamcxrjtdhgiya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmvysjokktxmmlaoffrgqtwkbaqpbgxm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znjdzifwedlxvewivvexbcbanvtaikgl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"harhaopfgmxmzpkwjjrdplmkeqethrux","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kahluygjebwqxhjlafjmphjglngmnzba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"raumihulckqsdzsmlhksvmsenuuxmmeg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjdprmfvglbwiaevnpmubvjvuilvlcef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uyqnulrcpwtpiyyulitdwrzohfagrbxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oputqsaxybvtbtjuepvqgimsaczupkdx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qohqtraepzxagkovqwtcxlifuuxjwzxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqxvidrwgainwytazhhxuottcbvschuw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqrvjhhcungkywagmewzhmatajbuylqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfmxxxjrwfsepfwqqozpzvvoodjindvu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eppxqqxrfclowpoltcvdnasgfuhcbcmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ttttgtqaosfzxboxytjvrpqxigcupvum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgtwtybvhbctbilvjebyutrpksaabbir","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gklflfhtmoxntcaleqwhcnakwbkfpnxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dyjbhfquxwfyjjirhqnzjeueglqhembk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cdbflhpeugodmdpheubxnkwtdrkiblsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gskejrgtoiiauttkpujlklloozyweigp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ewwholnnbrtkrwzvffzrgrrxpcmwqcmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zidejwxqvfshxsndirshjnpwmvxsnyva","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jnbbqaejsigirfbifmkbebnliytzzjby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vnygsmmneejzxkzvpmhmyccgbflsnyuj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sqlugftkbfnuulhajvgbqyznnaocfaeq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzikzgjtjygwqidbcsrgapsbddqfffnk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"izmoosqzltxfjnujakcnbiuhfxvcpofd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnriymfwlxidauutctimfskpycjbnppw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nggbpdmqhnukdbaahvyqekrbaumscnjl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twkhskcjjmscfzprggvohdxonclmutrl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pamvejlgqfzrpjrtbqwmlxelyqmdyrdr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqubsbtmnoeztkhucnuslgwrefoylsrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fdleqiepttlqvssosheqtqhubiinztxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynpvhlzwosxjlsiotodbsgtsdtwahcro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkujqcfpmbikgezmtvnhbwhcmgqcmmuv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jfncfddoilvdkamqkinnooatunyimgod","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"amjtluqceocsjtopwrhcljgjzjxskgoh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omvdhohjzxuucmkomklnesmxpazrquuj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"abhqjrmvskxkiacbbwpgthjxdlpcckay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"caxjtgfuixtuwivruxmlzhheiobxzwhq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqfnwqiwwmffhwnwbuorxuccdrtvnxpn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"anyzslgsupsgxfeilipwiyzauopwlkub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kdlbbrbflurvykldlunvfhxpifknigce","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgbmgybppvrcxhrttrbthdlvnvjnpwlh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xybagyoizyxdrxsfnpklevtcakjftnnj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eycybflwzyfekpnrlclkiabgbqwjanhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnwdyjypqctlirzczsqricimxbmrghbx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbsthdhzpiatvbckrcjexnaxqtuncthf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfooqlhojujgpxokumikyjvljnsculia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670490,"databaseName":"models_schema","ddl":"CREATE TABLE `qmzbocxykzmpczrsllqbenafxqafrzhk` (\n `obyqbmmxzgdksptheqzrnsepjsmjkuub` int NOT NULL,\n `ncacbnyyiemmynnibruuxegttbdymhdk` int DEFAULT NULL,\n `fyuktvqvvbuzwmehoefhqcgmmojhkgyq` int DEFAULT NULL,\n `olgvycoblxdslohxfgvdlwucbqdlrypw` int DEFAULT NULL,\n `bgujrruzrqopnsekezgjhaiyduxtvnvd` int DEFAULT NULL,\n `ostvvwbeljybdhkmcytxllfudkrkxsxc` int DEFAULT NULL,\n `kqmetnxgevvhikpkuxfjvlnmizbcrhxc` int DEFAULT NULL,\n `eefltqqabwhlhjikuzuhmeezknqoskpt` int DEFAULT NULL,\n `eoqnjnxygkicyoodixpmvlxlrmvplpvj` int DEFAULT NULL,\n `ocojkuotdjpdzjdetoecyydshmqricwa` int DEFAULT NULL,\n `awyhvoextbevbcotohrktuxkeqjfnnjp` int DEFAULT NULL,\n `yshyxtsjiempzgoowvoxfxyiwfbvtoom` int DEFAULT NULL,\n `huokdkplrsrzjusdkhjlnsxbrycjlhro` int DEFAULT NULL,\n `egbtqnhputymhjdpamaxowxhygueomdl` int DEFAULT NULL,\n `sursgloqbwyujrwuljglpqkuucndxabi` int DEFAULT NULL,\n `cbtxlkfeawrujgfbowtjuuszbyqbheow` int DEFAULT NULL,\n `mwsijojsqzevyhzelrbcdnkxbcvbsahv` int DEFAULT NULL,\n `leidxwbxtbinnpnawbpkaqxyciqrnosa` int DEFAULT NULL,\n `flepqnmendtwfuptyixmpagtnlzigjgk` int DEFAULT NULL,\n `patchrcxupdiunungdvvogktpbvpirxl` int DEFAULT NULL,\n `ipimwtvbmyruhmwmmlmeheveywtasodj` int DEFAULT NULL,\n `fpbavgavmbpqdzmjtlhwxsswlpvcfzoa` int DEFAULT NULL,\n `sacdhttzscsdzelnmoeixslvuitdngjg` int DEFAULT NULL,\n `cguyfrsmoaquulkpmdquhmbdkfqxiuec` int DEFAULT NULL,\n `agobencxqzmnyhttaktbiykqvwnokepf` int DEFAULT NULL,\n `fujzpqadgqtkxknufqkeuodetokduhtn` int DEFAULT NULL,\n `ftoqkxeqnzxcrkncezitglvwqlguyhgb` int DEFAULT NULL,\n `etchdyqwdjacousrzqpqumzrpzmkqmwc` int DEFAULT NULL,\n `kjmwqrslldgikukxuxsuyhxaybxeifkd` int DEFAULT NULL,\n `nfxsfbxapjdjcgmmgofowkanpmbjothd` int DEFAULT NULL,\n `lhzlrmvuqbdkayjipnienvtjykewcfmc` int DEFAULT NULL,\n `bcictigmnlsusucgwhwzqmnrlyqotsyd` int DEFAULT NULL,\n `gsonciasmsuvteaqmcskvypsxqmxazje` int DEFAULT NULL,\n `mpwwxyvbkwrodlrpxkexdpujakhtmavh` int DEFAULT NULL,\n `xnccjtrqqsaaszzsuoowophveemmlghj` int DEFAULT NULL,\n `dergasstbafilasldwqqzydhcpmrhfsn` int DEFAULT NULL,\n `mktsvbkevxbrtrkoarwdqabvhzioisoz` int DEFAULT NULL,\n `sieuyltogplgumgbeqaqyhtmpiuptsku` int DEFAULT NULL,\n `foeaqddzgglteguuxetbhaqhwbzqypxw` int DEFAULT NULL,\n `ddmdijemytwjfjywkrdikbnumnkuudzf` int DEFAULT NULL,\n `ooxlgntsydjthjctnmstkojlxlbvgoyh` int DEFAULT NULL,\n `rxzfmfwhmzdkihgacwvcmugqurqcauyt` int DEFAULT NULL,\n `qgukdgoseelhccpglwrlxpuljzslotwe` int DEFAULT NULL,\n `vhebubsnyxidydxhcaiyrybvpeqjszxn` int DEFAULT NULL,\n `pyyhioqcrsdptdwuigicgrhqxdajsugr` int DEFAULT NULL,\n `fghonhkvmsowalutwwxwwmihjzkencdh` int DEFAULT NULL,\n `ydozwpdxhasfedzjyxuuqnbsmispoqdk` int DEFAULT NULL,\n `homkhoudgbccjacdvmjbhznipsbehrco` int DEFAULT NULL,\n `vzujadjghbxkuvczsjjkbtksmxnchqri` int DEFAULT NULL,\n `rioxwczrdhxarjraxheqrovacsjkvlfz` int DEFAULT NULL,\n `jnmbdufjhlxzgbiackgfgilbuuzewljd` int DEFAULT NULL,\n `ikbyiipainwbuekrtrxbxbnxvawsgany` int DEFAULT NULL,\n `drboqpgryvjxepqarqvktudgpuzuivxk` int DEFAULT NULL,\n `hqmrgnjuruemkhucvvftyqyqjtqkezcn` int DEFAULT NULL,\n `zushqvfkxjiczfuhfxcougnznziafsfv` int DEFAULT NULL,\n `ajiukktmqxhttkdakcfltbzkfuxsynlv` int DEFAULT NULL,\n `utqgvijpxqxfvsdmbryltshfujjfjfys` int DEFAULT NULL,\n `mmpyhtwipxskgkkemjowssgdzfdgghrm` int DEFAULT NULL,\n `zdqsqztlikbfvadxjchneseggoyjeqiv` int DEFAULT NULL,\n `idajvtupdcosioigmenpjrmjsbnwhbzk` int DEFAULT NULL,\n `veihtwertufswlkeklcdxwrsbpkldkcv` int DEFAULT NULL,\n `cgeeoflihbvyorazmbqladmclipfvwjs` int DEFAULT NULL,\n `ogupwlqlqcanbrqzrvbzwvaxxdisqimj` int DEFAULT NULL,\n `eglaotawposlksstsnxpmgweyyvwtzkz` int DEFAULT NULL,\n `vclbqcwpxnixnitdlhthrodkevwwnibb` int DEFAULT NULL,\n `wgdxxfdeiqsfuwxsbngxhaosfuztbylt` int DEFAULT NULL,\n `vgdsbdqxtudbswnnledisvrouthpttcu` int DEFAULT NULL,\n `znhxfnfqobfxxcpeledntpajwxxxjnyx` int DEFAULT NULL,\n `ryjqbmqalznusflzmbbtueauwbtyefmh` int DEFAULT NULL,\n `iyclsurwuxmqzbfciczsbpsbsdlfqhzb` int DEFAULT NULL,\n `pkhktqqnhxndlcbafepyvojjiubmnxdy` int DEFAULT NULL,\n `pcrxltoxskgefztirpymszsrvowplfkv` int DEFAULT NULL,\n `pepifaxnokxsiqjhhgiyowixkxzfkken` int DEFAULT NULL,\n `tijnugswkakdvnbvwhglxtiavbmafhbi` int DEFAULT NULL,\n `yjjkaswelqeyjgnxyboiztxgowtguivr` int DEFAULT NULL,\n `nfvyyhisvhgzwqemlvgxnbmpxtqfyckq` int DEFAULT NULL,\n `qjqgiydrxlxrqvysivpmmqdllpygfipv` int DEFAULT NULL,\n `cisajuyknaslysjzgppoeuohpslyfmhn` int DEFAULT NULL,\n `ojoryykmdljtbvhfytkfxazakaehkxlk` int DEFAULT NULL,\n `ijoewqoyfiecsczrlnonfnalemngoloh` int DEFAULT NULL,\n `htkijcubtrsgbaxbrktiprtjpvbsyoza` int DEFAULT NULL,\n `ziovhdbpjjjvsjcpjltyyvdixgbjjmiy` int DEFAULT NULL,\n `povmkkabmdzstcikdqunoicumysplpgw` int DEFAULT NULL,\n `qxtwmyzfetfuplhrzuyvopwiccaqvcdu` int DEFAULT NULL,\n `xnqclguebrwijuhyrrsqhahdsqrledtb` int DEFAULT NULL,\n `qwolxpktbfwitlmlwdssmmyhhksfdosw` int DEFAULT NULL,\n `astcqyheutjlnncgxgwxektougnxbupc` int DEFAULT NULL,\n `oabmqssxywlbmzdbrjkgabyvnzgqqmeu` int DEFAULT NULL,\n `ngvjyxgmblphgehykzcjzlusgfaligdq` int DEFAULT NULL,\n `vsxgmmqhyodagzdtjivxmpwgrelknfrx` int DEFAULT NULL,\n `cmofmugxnvnjbvcbwlrntitfhkrxhsjy` int DEFAULT NULL,\n `ggxjzlbcnmwnculcnhcverhvjbqfhfph` int DEFAULT NULL,\n `jvfdwmhcfqpbhhcauaxtmwqlqqeineda` int DEFAULT NULL,\n `bpbesjyvsidsmtcotstjyalaxsbqiftx` int DEFAULT NULL,\n `ilboqidtgqunbnfaitwlmzkmmkdtmkib` int DEFAULT NULL,\n `wwxobkewqnytaibspsaelrvjbmyffhny` int DEFAULT NULL,\n `uzsgrpaymwvsqfhmttrbluadtzaxzcxc` int DEFAULT NULL,\n `hugipnslwyuuijldvktvymgfwtlgfsxl` int DEFAULT NULL,\n `jfjgebxuoayyhvwclqmbsipgzexmylgr` int DEFAULT NULL,\n `jvcwxdoahorlgkhzizefsdkhtcwrncct` int DEFAULT NULL,\n PRIMARY KEY (`obyqbmmxzgdksptheqzrnsepjsmjkuub`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"qmzbocxykzmpczrsllqbenafxqafrzhk\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["obyqbmmxzgdksptheqzrnsepjsmjkuub"],"columns":[{"name":"obyqbmmxzgdksptheqzrnsepjsmjkuub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"ncacbnyyiemmynnibruuxegttbdymhdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fyuktvqvvbuzwmehoefhqcgmmojhkgyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"olgvycoblxdslohxfgvdlwucbqdlrypw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bgujrruzrqopnsekezgjhaiyduxtvnvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ostvvwbeljybdhkmcytxllfudkrkxsxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kqmetnxgevvhikpkuxfjvlnmizbcrhxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eefltqqabwhlhjikuzuhmeezknqoskpt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eoqnjnxygkicyoodixpmvlxlrmvplpvj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocojkuotdjpdzjdetoecyydshmqricwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awyhvoextbevbcotohrktuxkeqjfnnjp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yshyxtsjiempzgoowvoxfxyiwfbvtoom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"huokdkplrsrzjusdkhjlnsxbrycjlhro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"egbtqnhputymhjdpamaxowxhygueomdl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sursgloqbwyujrwuljglpqkuucndxabi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbtxlkfeawrujgfbowtjuuszbyqbheow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwsijojsqzevyhzelrbcdnkxbcvbsahv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"leidxwbxtbinnpnawbpkaqxyciqrnosa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flepqnmendtwfuptyixmpagtnlzigjgk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"patchrcxupdiunungdvvogktpbvpirxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ipimwtvbmyruhmwmmlmeheveywtasodj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpbavgavmbpqdzmjtlhwxsswlpvcfzoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sacdhttzscsdzelnmoeixslvuitdngjg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cguyfrsmoaquulkpmdquhmbdkfqxiuec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agobencxqzmnyhttaktbiykqvwnokepf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fujzpqadgqtkxknufqkeuodetokduhtn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftoqkxeqnzxcrkncezitglvwqlguyhgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"etchdyqwdjacousrzqpqumzrpzmkqmwc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjmwqrslldgikukxuxsuyhxaybxeifkd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfxsfbxapjdjcgmmgofowkanpmbjothd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhzlrmvuqbdkayjipnienvtjykewcfmc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bcictigmnlsusucgwhwzqmnrlyqotsyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gsonciasmsuvteaqmcskvypsxqmxazje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpwwxyvbkwrodlrpxkexdpujakhtmavh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnccjtrqqsaaszzsuoowophveemmlghj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dergasstbafilasldwqqzydhcpmrhfsn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mktsvbkevxbrtrkoarwdqabvhzioisoz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sieuyltogplgumgbeqaqyhtmpiuptsku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"foeaqddzgglteguuxetbhaqhwbzqypxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ddmdijemytwjfjywkrdikbnumnkuudzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ooxlgntsydjthjctnmstkojlxlbvgoyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxzfmfwhmzdkihgacwvcmugqurqcauyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qgukdgoseelhccpglwrlxpuljzslotwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhebubsnyxidydxhcaiyrybvpeqjszxn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pyyhioqcrsdptdwuigicgrhqxdajsugr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fghonhkvmsowalutwwxwwmihjzkencdh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydozwpdxhasfedzjyxuuqnbsmispoqdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"homkhoudgbccjacdvmjbhznipsbehrco","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vzujadjghbxkuvczsjjkbtksmxnchqri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rioxwczrdhxarjraxheqrovacsjkvlfz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jnmbdufjhlxzgbiackgfgilbuuzewljd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikbyiipainwbuekrtrxbxbnxvawsgany","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drboqpgryvjxepqarqvktudgpuzuivxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqmrgnjuruemkhucvvftyqyqjtqkezcn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zushqvfkxjiczfuhfxcougnznziafsfv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajiukktmqxhttkdakcfltbzkfuxsynlv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utqgvijpxqxfvsdmbryltshfujjfjfys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmpyhtwipxskgkkemjowssgdzfdgghrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdqsqztlikbfvadxjchneseggoyjeqiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idajvtupdcosioigmenpjrmjsbnwhbzk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"veihtwertufswlkeklcdxwrsbpkldkcv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgeeoflihbvyorazmbqladmclipfvwjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ogupwlqlqcanbrqzrvbzwvaxxdisqimj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eglaotawposlksstsnxpmgweyyvwtzkz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vclbqcwpxnixnitdlhthrodkevwwnibb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wgdxxfdeiqsfuwxsbngxhaosfuztbylt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgdsbdqxtudbswnnledisvrouthpttcu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znhxfnfqobfxxcpeledntpajwxxxjnyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ryjqbmqalznusflzmbbtueauwbtyefmh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iyclsurwuxmqzbfciczsbpsbsdlfqhzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkhktqqnhxndlcbafepyvojjiubmnxdy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pcrxltoxskgefztirpymszsrvowplfkv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pepifaxnokxsiqjhhgiyowixkxzfkken","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tijnugswkakdvnbvwhglxtiavbmafhbi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjjkaswelqeyjgnxyboiztxgowtguivr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfvyyhisvhgzwqemlvgxnbmpxtqfyckq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjqgiydrxlxrqvysivpmmqdllpygfipv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cisajuyknaslysjzgppoeuohpslyfmhn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojoryykmdljtbvhfytkfxazakaehkxlk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijoewqoyfiecsczrlnonfnalemngoloh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"htkijcubtrsgbaxbrktiprtjpvbsyoza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ziovhdbpjjjvsjcpjltyyvdixgbjjmiy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"povmkkabmdzstcikdqunoicumysplpgw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxtwmyzfetfuplhrzuyvopwiccaqvcdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnqclguebrwijuhyrrsqhahdsqrledtb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwolxpktbfwitlmlwdssmmyhhksfdosw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"astcqyheutjlnncgxgwxektougnxbupc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oabmqssxywlbmzdbrjkgabyvnzgqqmeu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ngvjyxgmblphgehykzcjzlusgfaligdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsxgmmqhyodagzdtjivxmpwgrelknfrx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmofmugxnvnjbvcbwlrntitfhkrxhsjy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggxjzlbcnmwnculcnhcverhvjbqfhfph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvfdwmhcfqpbhhcauaxtmwqlqqeineda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bpbesjyvsidsmtcotstjyalaxsbqiftx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ilboqidtgqunbnfaitwlmzkmmkdtmkib","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwxobkewqnytaibspsaelrvjbmyffhny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzsgrpaymwvsqfhmttrbluadtzaxzcxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hugipnslwyuuijldvktvymgfwtlgfsxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jfjgebxuoayyhvwclqmbsipgzexmylgr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvcwxdoahorlgkhzizefsdkhtcwrncct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670537,"databaseName":"models_schema","ddl":"CREATE TABLE `qnopovgcxspwoeghyuonqnbbnrvjvhow` (\n `jcbvrsbibngtprlgapbmtewsfdpdcfcr` int NOT NULL,\n `ynpkavqwkbrrrenafquwfdwmjaappmje` int DEFAULT NULL,\n `sekgumcvevflgitqqzaedaqanrywvjqh` int DEFAULT NULL,\n `ewjzeztxxtelknryfrnbaoeavxkmwwiu` int DEFAULT NULL,\n `qfrflzwnheqrerbimjvruqgxzhaifcaf` int DEFAULT NULL,\n `zqowksacrqkatpwvlhbgacxkwcdisses` int DEFAULT NULL,\n `htteuzrntgnmicgongnvelrywmobyghu` int DEFAULT NULL,\n `bjhvmlhylbpxpccrsheapvgfeidhjidb` int DEFAULT NULL,\n `ntigqaidleibqoqfveafkjqmwecjepwv` int DEFAULT NULL,\n `cwnradvozubssuugzhgqaibddzhrucgh` int DEFAULT NULL,\n `skbcdixwxoeaxrblkkvrvsalccazmepd` int DEFAULT NULL,\n `zubdhkedzqyoqmvkpvqvxqzvejyooutd` int DEFAULT NULL,\n `gchuvrhvoywchivmortbhsplkaoannxl` int DEFAULT NULL,\n `lixzrwmgyefrcwmztinfqiqadhcqxnjq` int DEFAULT NULL,\n `xvwzlrrpkqihnloysyhcqpnpxbhvpvff` int DEFAULT NULL,\n `kfiubzpaflmdacunkhxxlpznssnrhjao` int DEFAULT NULL,\n `rrzumzulvvnykzoahlexlnywitaoiiqk` int DEFAULT NULL,\n `vzpgjycipcofexoeqfpapvorsxnhsxfq` int DEFAULT NULL,\n `mluwatuanuqsqkzryjajjcivxeuczgde` int DEFAULT NULL,\n `qbjjxoonhreslwsvhlmfllsfnndbrnqx` int DEFAULT NULL,\n `dfscocaypulnxxxspcmwoijyugidwtqw` int DEFAULT NULL,\n `hethjafkaczcazwwqqfhlcfafeutouth` int DEFAULT NULL,\n `xscvmidngfhssnfsuaozhyyzmeqtjyoi` int DEFAULT NULL,\n `ciituryojdsyoeyijjmzvhyvafyermil` int DEFAULT NULL,\n `rfagfhdwdollwsjimedyootugujhxcbc` int DEFAULT NULL,\n `ruqbhulocekfkruntnhgkuwnhvsbgiji` int DEFAULT NULL,\n `pqfyveqzrqstejosbjasvrqlguzfgkhr` int DEFAULT NULL,\n `cmzhyrhvwpkaxduzqrlfdeuolawraogm` int DEFAULT NULL,\n `txnfcvyrkkjneibhivtzheljyunnklue` int DEFAULT NULL,\n `itfbxsshishdippafmraoswteruoancb` int DEFAULT NULL,\n `sbzgkonlpyfzyplinexelorjtaxnpcdt` int DEFAULT NULL,\n `pzmpoywrhyfuawevmorzcflwjgagxcjv` int DEFAULT NULL,\n `grlsbqsfoefuqyrxqcbrxptulcpeqhvf` int DEFAULT NULL,\n `dplvhkntxrpwxemonkiwepepeuvqihov` int DEFAULT NULL,\n `ctahsfnvnqvlwwduqusmtdkxsgacecze` int DEFAULT NULL,\n `thwvtwrogwvsfzhrplnssdfnlweahzvp` int DEFAULT NULL,\n `dhanuqjvmztquvowfoodssadposqkvdf` int DEFAULT NULL,\n `fcdbaysuxtwtrxskauxpjlgfzafuhhpn` int DEFAULT NULL,\n `oirezeljqvrthnvykwwskbgliynotcrp` int DEFAULT NULL,\n `qxwhhzfzlynppyspjdllxlyrrvepbejh` int DEFAULT NULL,\n `guptxdxwuhzkhewxxhzqdgqdllwbfrwe` int DEFAULT NULL,\n `bzevpjrlzisgslqytqwcpemnuuikltlv` int DEFAULT NULL,\n `memqrxaralqvxyuldtuklulshysormtn` int DEFAULT NULL,\n `axjmzfmopudgbluyccsnzfexfejpggbi` int DEFAULT NULL,\n `syuwogdtmnjizwoulgxmbnhqqbhqncer` int DEFAULT NULL,\n `bqsvievqmfyfevorhtnyohvmpscqzdqa` int DEFAULT NULL,\n `ihqztszhcmjdqkvsrmuqgeqoxksazdsl` int DEFAULT NULL,\n `egbrjqnwtksfkrkyzedccjmrabtmrtdd` int DEFAULT NULL,\n `gvrwahrjnjvswysmcsvhygptlfrawtnc` int DEFAULT NULL,\n `pjklhegdmcgmmzjqtpcvqkqilwigxtqc` int DEFAULT NULL,\n `wwhtxbfftxzcbhlajgdijgnfmexebszh` int DEFAULT NULL,\n `gkwdghhgrbtnwxpxpcoqysanvrmjdags` int DEFAULT NULL,\n `iexbvbqpffqmhaifjrqafzmsfybxnjqo` int DEFAULT NULL,\n `ixzrvfdbwehishxotadoxyeiaxptmhgb` int DEFAULT NULL,\n `wjgmpounvymajgyqnblawdijszqgkycp` int DEFAULT NULL,\n `rurdmmtewsakjnqkaneitsrfdrgsjmek` int DEFAULT NULL,\n `gugpabfiykgsxuxxsdlgcwjnijzmbphb` int DEFAULT NULL,\n `vhxygurrsnbjhoxugtpmgjxoikllecqv` int DEFAULT NULL,\n `lfhlseeihskquuathuuzkyepqrvgacwd` int DEFAULT NULL,\n `mjfbpfemowztsgppcjjgocapcvxddtgn` int DEFAULT NULL,\n `dbjvidemtladrkxqjwmoxmhhkybglvza` int DEFAULT NULL,\n `yfzbbqvxqoxvpfqspryidcedlwaoytyh` int DEFAULT NULL,\n `ozooofvwyiiqqmeedsqhdnbqvjpcrmie` int DEFAULT NULL,\n `hrphkzspuygxrkahcoprmfsstrtllyzv` int DEFAULT NULL,\n `txqddmsmethyjaynuzghcgopuoajonxy` int DEFAULT NULL,\n `zhfmmzzuupaxnmjesavvnbduzaifpmwt` int DEFAULT NULL,\n `crpvvvdevhfdrsesqkqeguchsohmjizh` int DEFAULT NULL,\n `mlfukyvinrbthkugvmgubwqhwmuucnth` int DEFAULT NULL,\n `rnqkabuxzpbxsrcxpfwicgjznpsxpipq` int DEFAULT NULL,\n `zktmjhheemajchqjnjehtxiwtnewdfkl` int DEFAULT NULL,\n `wdkzvqqjcbkyueonqwrucchmxayzfvak` int DEFAULT NULL,\n `emmccyzzyrppkkmezaecuvzvwereniun` int DEFAULT NULL,\n `wqqhtycyqacleeuddikdyewazvsqucol` int DEFAULT NULL,\n `nrbtvjbphmzqblngiwwtlfouicqvevdq` int DEFAULT NULL,\n `uelnxhdbduwtzwmnqvdwztcttyhhbejy` int DEFAULT NULL,\n `lanhgfznyavfzvpzaldbwtgwflxfrmhg` int DEFAULT NULL,\n `egyfyiaufxedglgbncskfviqlamqyfkd` int DEFAULT NULL,\n `eleptcdxiukpdevpufwraectfzstgxdm` int DEFAULT NULL,\n `rlnynqniolaildbatmyozmxdnssievks` int DEFAULT NULL,\n `bdunakasjwjadosxzdamhdqlifdikayn` int DEFAULT NULL,\n `mfsrfvwcfccfxykbshwmmtwicsraxmae` int DEFAULT NULL,\n `sowvouuxopfipjvfuvjnaaetiwcqkytd` int DEFAULT NULL,\n `xsintefyuqicrxbihxxgomffdmoqgvuv` int DEFAULT NULL,\n `qhomvmmasxmzwwuuopehxfdlgitilkis` int DEFAULT NULL,\n `exwysgyyjmebifiwsftuaiyrahqewfqh` int DEFAULT NULL,\n `vpmeqkagsnsfcuqopkhpjwbrjqblmbiv` int DEFAULT NULL,\n `khbalapphcxrfceukvlbtrwdgonfdtaw` int DEFAULT NULL,\n `qihcnlbkbclcsdptpwgzgyqlaojoiiko` int DEFAULT NULL,\n `gfqxngkqkisoyxujiugsdglnyhoygbiq` int DEFAULT NULL,\n `mtbmkczsliztgyuyvfrqbnhtblaloofb` int DEFAULT NULL,\n `kqexuptcfijmpgdxagbaxgaegwidhsmo` int DEFAULT NULL,\n `ayaezreycioihcbodxiwiecvybtpyubs` int DEFAULT NULL,\n `qeoxmchcplztnlaeqaqjipmkwfviefki` int DEFAULT NULL,\n `ymxuwsfqecqvltsprdyloxhtlreljafn` int DEFAULT NULL,\n `zuysmjsmbvmzihuybfkorxqbjbnowdhs` int DEFAULT NULL,\n `njxrlwenjxccngpodxercnqjanhbeayo` int DEFAULT NULL,\n `bsryphwscwxbxxosibrzeliyikdnukzk` int DEFAULT NULL,\n `qbladjwzvoqngisrzwfqgteecvlunton` int DEFAULT NULL,\n `qwcjiefxclorcvjlxyvtkgoswkpygecf` int DEFAULT NULL,\n `byokkpadsqvaajvejpvzntgsyyrmkxow` int DEFAULT NULL,\n PRIMARY KEY (`jcbvrsbibngtprlgapbmtewsfdpdcfcr`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"qnopovgcxspwoeghyuonqnbbnrvjvhow\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["jcbvrsbibngtprlgapbmtewsfdpdcfcr"],"columns":[{"name":"jcbvrsbibngtprlgapbmtewsfdpdcfcr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"ynpkavqwkbrrrenafquwfdwmjaappmje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sekgumcvevflgitqqzaedaqanrywvjqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ewjzeztxxtelknryfrnbaoeavxkmwwiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfrflzwnheqrerbimjvruqgxzhaifcaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqowksacrqkatpwvlhbgacxkwcdisses","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"htteuzrntgnmicgongnvelrywmobyghu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjhvmlhylbpxpccrsheapvgfeidhjidb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntigqaidleibqoqfveafkjqmwecjepwv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwnradvozubssuugzhgqaibddzhrucgh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skbcdixwxoeaxrblkkvrvsalccazmepd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zubdhkedzqyoqmvkpvqvxqzvejyooutd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gchuvrhvoywchivmortbhsplkaoannxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lixzrwmgyefrcwmztinfqiqadhcqxnjq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvwzlrrpkqihnloysyhcqpnpxbhvpvff","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfiubzpaflmdacunkhxxlpznssnrhjao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrzumzulvvnykzoahlexlnywitaoiiqk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vzpgjycipcofexoeqfpapvorsxnhsxfq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mluwatuanuqsqkzryjajjcivxeuczgde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qbjjxoonhreslwsvhlmfllsfnndbrnqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dfscocaypulnxxxspcmwoijyugidwtqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hethjafkaczcazwwqqfhlcfafeutouth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xscvmidngfhssnfsuaozhyyzmeqtjyoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ciituryojdsyoeyijjmzvhyvafyermil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfagfhdwdollwsjimedyootugujhxcbc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ruqbhulocekfkruntnhgkuwnhvsbgiji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqfyveqzrqstejosbjasvrqlguzfgkhr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmzhyrhvwpkaxduzqrlfdeuolawraogm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txnfcvyrkkjneibhivtzheljyunnklue","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itfbxsshishdippafmraoswteruoancb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbzgkonlpyfzyplinexelorjtaxnpcdt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pzmpoywrhyfuawevmorzcflwjgagxcjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grlsbqsfoefuqyrxqcbrxptulcpeqhvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dplvhkntxrpwxemonkiwepepeuvqihov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctahsfnvnqvlwwduqusmtdkxsgacecze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thwvtwrogwvsfzhrplnssdfnlweahzvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhanuqjvmztquvowfoodssadposqkvdf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcdbaysuxtwtrxskauxpjlgfzafuhhpn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oirezeljqvrthnvykwwskbgliynotcrp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxwhhzfzlynppyspjdllxlyrrvepbejh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"guptxdxwuhzkhewxxhzqdgqdllwbfrwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bzevpjrlzisgslqytqwcpemnuuikltlv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"memqrxaralqvxyuldtuklulshysormtn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axjmzfmopudgbluyccsnzfexfejpggbi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"syuwogdtmnjizwoulgxmbnhqqbhqncer","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqsvievqmfyfevorhtnyohvmpscqzdqa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ihqztszhcmjdqkvsrmuqgeqoxksazdsl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"egbrjqnwtksfkrkyzedccjmrabtmrtdd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gvrwahrjnjvswysmcsvhygptlfrawtnc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjklhegdmcgmmzjqtpcvqkqilwigxtqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwhtxbfftxzcbhlajgdijgnfmexebszh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkwdghhgrbtnwxpxpcoqysanvrmjdags","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iexbvbqpffqmhaifjrqafzmsfybxnjqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixzrvfdbwehishxotadoxyeiaxptmhgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjgmpounvymajgyqnblawdijszqgkycp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rurdmmtewsakjnqkaneitsrfdrgsjmek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gugpabfiykgsxuxxsdlgcwjnijzmbphb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhxygurrsnbjhoxugtpmgjxoikllecqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfhlseeihskquuathuuzkyepqrvgacwd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjfbpfemowztsgppcjjgocapcvxddtgn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbjvidemtladrkxqjwmoxmhhkybglvza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfzbbqvxqoxvpfqspryidcedlwaoytyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ozooofvwyiiqqmeedsqhdnbqvjpcrmie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hrphkzspuygxrkahcoprmfsstrtllyzv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txqddmsmethyjaynuzghcgopuoajonxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhfmmzzuupaxnmjesavvnbduzaifpmwt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"crpvvvdevhfdrsesqkqeguchsohmjizh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mlfukyvinrbthkugvmgubwqhwmuucnth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnqkabuxzpbxsrcxpfwicgjznpsxpipq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zktmjhheemajchqjnjehtxiwtnewdfkl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wdkzvqqjcbkyueonqwrucchmxayzfvak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"emmccyzzyrppkkmezaecuvzvwereniun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqqhtycyqacleeuddikdyewazvsqucol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nrbtvjbphmzqblngiwwtlfouicqvevdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uelnxhdbduwtzwmnqvdwztcttyhhbejy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lanhgfznyavfzvpzaldbwtgwflxfrmhg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"egyfyiaufxedglgbncskfviqlamqyfkd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eleptcdxiukpdevpufwraectfzstgxdm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlnynqniolaildbatmyozmxdnssievks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bdunakasjwjadosxzdamhdqlifdikayn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mfsrfvwcfccfxykbshwmmtwicsraxmae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sowvouuxopfipjvfuvjnaaetiwcqkytd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsintefyuqicrxbihxxgomffdmoqgvuv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhomvmmasxmzwwuuopehxfdlgitilkis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exwysgyyjmebifiwsftuaiyrahqewfqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpmeqkagsnsfcuqopkhpjwbrjqblmbiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"khbalapphcxrfceukvlbtrwdgonfdtaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qihcnlbkbclcsdptpwgzgyqlaojoiiko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfqxngkqkisoyxujiugsdglnyhoygbiq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtbmkczsliztgyuyvfrqbnhtblaloofb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kqexuptcfijmpgdxagbaxgaegwidhsmo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ayaezreycioihcbodxiwiecvybtpyubs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qeoxmchcplztnlaeqaqjipmkwfviefki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ymxuwsfqecqvltsprdyloxhtlreljafn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zuysmjsmbvmzihuybfkorxqbjbnowdhs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njxrlwenjxccngpodxercnqjanhbeayo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bsryphwscwxbxxosibrzeliyikdnukzk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qbladjwzvoqngisrzwfqgteecvlunton","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwcjiefxclorcvjlxyvtkgoswkpygecf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"byokkpadsqvaajvejpvzntgsyyrmkxow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670579,"databaseName":"models_schema","ddl":"CREATE TABLE `qsirphfmlpnkopaqiayapzezhyeudrzs` (\n `aqjfiytufyxdwmtirlkezrcrrhmeafcg` int NOT NULL,\n `lusoqpohibanqhaysfqjpymckzqziapg` int DEFAULT NULL,\n `vstvbooumksgqojwvzkjdelbdgiumuus` int DEFAULT NULL,\n `wgzxsecowtvuerwvdrsheunoahrsvdld` int DEFAULT NULL,\n `nozpogduskuldqhhfnpkpnowxtmxcbxk` int DEFAULT NULL,\n `oyeutcnbcbjbosemepdjuyqnihidsvim` int DEFAULT NULL,\n `fsahtemevmcnrwzvpbqtjncteoebbdpa` int DEFAULT NULL,\n `hfcwzcmkqayhwqmetjioehuocjqiizsf` int DEFAULT NULL,\n `lysddankqamybwscqncduruxfhzwmzjy` int DEFAULT NULL,\n `rzsyyijzbmxkztspcthtpmxrthxmtycy` int DEFAULT NULL,\n `cuidakxtxstxxxwgbgxcturzwxoyggbx` int DEFAULT NULL,\n `gffnlgfkutfnztrcipqoivjcsxiedgsw` int DEFAULT NULL,\n `bdilqopofxnsrugyniyzuwcstrnufcxq` int DEFAULT NULL,\n `cdvcgrbehjvoirdetucrnotwpiprlgjv` int DEFAULT NULL,\n `msufdizowdxxegifdigmukahiuxydvry` int DEFAULT NULL,\n `smalpidlmfavjzvnjxoobhbaexhzzzyx` int DEFAULT NULL,\n `etsxnomwgkyeohmrkrxuvqkgimzvroup` int DEFAULT NULL,\n `ljvyoqdtjzlorpwsgpplvpipqwdftyoy` int DEFAULT NULL,\n `qsvzyskcibjrqkeatkwbwurlgyaclumv` int DEFAULT NULL,\n `ajilolgkvzfxdzrjysywggvzfdlqtjle` int DEFAULT NULL,\n `qrxygfsdoevfndpeeikwgillbgoygjnv` int DEFAULT NULL,\n `ybmhacaqhyprwrqsqjwyysiydmxxsadc` int DEFAULT NULL,\n `fjrdeijlxynrqxbeoivioilvfuqsmwls` int DEFAULT NULL,\n `cmrpokbskiczofdzfcwoinsbekpawknx` int DEFAULT NULL,\n `igbmvdrkcbzyjvkrlemwbqeqrwdbtvxj` int DEFAULT NULL,\n `cqxihtkdxesmpeqigumxfociqjixyhwg` int DEFAULT NULL,\n `wbiuvdemtuozfzdaqwkfkkdctdpziykg` int DEFAULT NULL,\n `jjhmixcnbqeeslktgmdxyjywxyrkjzys` int DEFAULT NULL,\n `huxegwkeqwuzvyavhwysbnqzqdfhxvnm` int DEFAULT NULL,\n `uuxitqnhafihbiiokiaptdjuqrtdeyzn` int DEFAULT NULL,\n `kytgbydxhzwzithgngjhxtfbcdvgtozv` int DEFAULT NULL,\n `rpidfcqmzjdnyptwmazjnjsezjfmvcwo` int DEFAULT NULL,\n `hqyohdkktiodpoeslcjixemgaivnweqt` int DEFAULT NULL,\n `oxlhpwutuawffbcrnrxzcpdhyhrtkfsc` int DEFAULT NULL,\n `lzuouqnrxujtkgtjxfjvoirlpewbioza` int DEFAULT NULL,\n `zidboiaqgflzxgzcxzapjvvtqcknjgwh` int DEFAULT NULL,\n `gnqkywwmboqypehozgrfazdhkrggjhsf` int DEFAULT NULL,\n `duljujgqptfvhpshwgmthnzcifnlkccb` int DEFAULT NULL,\n `curcgqhdztfqwcbfpajdwdylvcmfukof` int DEFAULT NULL,\n `jfenivacwzajbpfymqyzgrqntecmwlad` int DEFAULT NULL,\n `zckuyeexmdjaoezojqqniphlcytgvqay` int DEFAULT NULL,\n `yhfrlwncwqtcabigwojwdtlpaomeswcz` int DEFAULT NULL,\n `uxxjcverznhdpdhmdhdixtxgvdzzquzc` int DEFAULT NULL,\n `zhsuytflhrakgobqbbfcjepxsdalymmn` int DEFAULT NULL,\n `fcdrrmupwsishtunirtnllefdozpjadq` int DEFAULT NULL,\n `tljwzwwagqbqigqomggccuntwmlejxno` int DEFAULT NULL,\n `psmgoqbptlnmzhxnkosbubckitinkklm` int DEFAULT NULL,\n `thzxqukszgjkfjjrzetxfbnpowwhsarn` int DEFAULT NULL,\n `ryqxcuqmpbyerwarmvuwlpdsngsnchdl` int DEFAULT NULL,\n `ssibvplvweelrcjatiwivtjrujkhlxat` int DEFAULT NULL,\n `uhjpnfwnhwcdtazusswkwwxtceswudpn` int DEFAULT NULL,\n `eeesfrookzpnxhguxyxsmqnoeutfgeqc` int DEFAULT NULL,\n `uiaolbxtvoggfsmtfqvwgtgdyooepfnh` int DEFAULT NULL,\n `zghrndjtdmjeejpyqqjliuhexhbabfwi` int DEFAULT NULL,\n `mdgyipaszpcyxmpmqbbcbdwxtlazupbu` int DEFAULT NULL,\n `bnfyfyhstamohkkzxozuxsvaguiridgs` int DEFAULT NULL,\n `aqfkoxkwimoicxqbuwjnmvqsvorqyitm` int DEFAULT NULL,\n `lvvbfzhaufqrllcflwcqkoqwkwalbyie` int DEFAULT NULL,\n `xsxgzizzfkemwddfpmkeqzselgsxmnzc` int DEFAULT NULL,\n `ygpzhsxrjaisyorbnkospsifohqgfrwz` int DEFAULT NULL,\n `wrbvjlriueqheuyddkvvzmxipckngvas` int DEFAULT NULL,\n `sdjcsykxyeystidoatzhngdlbcoitqcv` int DEFAULT NULL,\n `rqmsvqcfxeezqucmaqpddjxhvcrjhgof` int DEFAULT NULL,\n `sfzzkvmxojxbnbnpghjedryhhhbhqjpr` int DEFAULT NULL,\n `mfboevuaddafseoenxabsfvojyruyaqe` int DEFAULT NULL,\n `ggnmtgvbrmdxcjbihbefrsvzcaitrlld` int DEFAULT NULL,\n `iqxjzqiadcosylozmhjrcjlhzdopffps` int DEFAULT NULL,\n `dkgbgocgxslldfzcqvhfvogemveuypfo` int DEFAULT NULL,\n `wulgnssgmixeclgxznmalppgduxqtbxb` int DEFAULT NULL,\n `otlfzuhmjjmshyftuxejcsgfvuttvjns` int DEFAULT NULL,\n `zhdawvunyxhrhpbyztpzllkroeeakzuy` int DEFAULT NULL,\n `mvoyhjeaquxfhwcjikaadhjpvpgmmzgs` int DEFAULT NULL,\n `cilrokxeyfsgorwldblvptqxcrtevhqg` int DEFAULT NULL,\n `nchkcvqvoxkbiewznhhgesszxpnofnat` int DEFAULT NULL,\n `mpozdhfphcqmfmuzqanzmmpbbnvxnkek` int DEFAULT NULL,\n `srlsmqocftkkzakzqojdgngueixnavyq` int DEFAULT NULL,\n `ikytbyvqcnzueduaqmuqwenqclngyzml` int DEFAULT NULL,\n `nyfoaehzghigomufhncunpasgbxmsoaj` int DEFAULT NULL,\n `mkukuloelkqvpinzkneicrkmduqoypdi` int DEFAULT NULL,\n `kcidaryggjhzloxkvfvjufzivhekgwkg` int DEFAULT NULL,\n `ooypobabtifgvedoawdqpjwpytwvsvep` int DEFAULT NULL,\n `xvcyhgddnqxyhhbyhvwzbsxahqfzpkfo` int DEFAULT NULL,\n `oyvkcouunkkgxywfcbeuxfgpjqkeeohj` int DEFAULT NULL,\n `zhiemakenhuifafbeeklwkrpaqirkzxu` int DEFAULT NULL,\n `dkgsskyekiyaqisoqsjwojxhjrijgqlr` int DEFAULT NULL,\n `hodnhyvgmmyeuwlknegvmlqnwuejmmcz` int DEFAULT NULL,\n `nwwiitnkrjzlyaswlrguusllyhvwhkxw` int DEFAULT NULL,\n `edswqsesiqrgqeevvxgbszdnmxsgolyt` int DEFAULT NULL,\n `ffdqfercversermasaiaymduovwmnnnk` int DEFAULT NULL,\n `zhrafqlbyutbexpsdhkfhbxarqxtqptq` int DEFAULT NULL,\n `qyofsfxtkhqwebvllsxhuapgglrggwpy` int DEFAULT NULL,\n `turwoloirtzuplwismtyzbptxhzirwbi` int DEFAULT NULL,\n `txllijsqiednfmcjltjtybjbpvgesyum` int DEFAULT NULL,\n `gcoekmxnpidhywujupsbtdgosjabxjqp` int DEFAULT NULL,\n `dbtupfzqxxhdeeqoiscfsmohhiiluqiy` int DEFAULT NULL,\n `jvbnbjyxsnhmkjmbsxpmdynqudummtxk` int DEFAULT NULL,\n `gyhfkuzyaftfyyovtahkrxixjwyslfpt` int DEFAULT NULL,\n `kwdudyovzqocqrlmwnlrzeotuavplqwa` int DEFAULT NULL,\n `ynyzmfcyfxmdeelkamrahmqwgaqwxgkg` int DEFAULT NULL,\n `xrsslkgiupbqjplpmqnkssrptdawdbqi` int DEFAULT NULL,\n PRIMARY KEY (`aqjfiytufyxdwmtirlkezrcrrhmeafcg`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"qsirphfmlpnkopaqiayapzezhyeudrzs\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["aqjfiytufyxdwmtirlkezrcrrhmeafcg"],"columns":[{"name":"aqjfiytufyxdwmtirlkezrcrrhmeafcg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"lusoqpohibanqhaysfqjpymckzqziapg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vstvbooumksgqojwvzkjdelbdgiumuus","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wgzxsecowtvuerwvdrsheunoahrsvdld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nozpogduskuldqhhfnpkpnowxtmxcbxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oyeutcnbcbjbosemepdjuyqnihidsvim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fsahtemevmcnrwzvpbqtjncteoebbdpa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfcwzcmkqayhwqmetjioehuocjqiizsf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lysddankqamybwscqncduruxfhzwmzjy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzsyyijzbmxkztspcthtpmxrthxmtycy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cuidakxtxstxxxwgbgxcturzwxoyggbx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gffnlgfkutfnztrcipqoivjcsxiedgsw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bdilqopofxnsrugyniyzuwcstrnufcxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cdvcgrbehjvoirdetucrnotwpiprlgjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"msufdizowdxxegifdigmukahiuxydvry","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smalpidlmfavjzvnjxoobhbaexhzzzyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"etsxnomwgkyeohmrkrxuvqkgimzvroup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljvyoqdtjzlorpwsgpplvpipqwdftyoy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qsvzyskcibjrqkeatkwbwurlgyaclumv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajilolgkvzfxdzrjysywggvzfdlqtjle","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qrxygfsdoevfndpeeikwgillbgoygjnv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ybmhacaqhyprwrqsqjwyysiydmxxsadc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjrdeijlxynrqxbeoivioilvfuqsmwls","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmrpokbskiczofdzfcwoinsbekpawknx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igbmvdrkcbzyjvkrlemwbqeqrwdbtvxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqxihtkdxesmpeqigumxfociqjixyhwg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbiuvdemtuozfzdaqwkfkkdctdpziykg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjhmixcnbqeeslktgmdxyjywxyrkjzys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"huxegwkeqwuzvyavhwysbnqzqdfhxvnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uuxitqnhafihbiiokiaptdjuqrtdeyzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kytgbydxhzwzithgngjhxtfbcdvgtozv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpidfcqmzjdnyptwmazjnjsezjfmvcwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqyohdkktiodpoeslcjixemgaivnweqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oxlhpwutuawffbcrnrxzcpdhyhrtkfsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lzuouqnrxujtkgtjxfjvoirlpewbioza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zidboiaqgflzxgzcxzapjvvtqcknjgwh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnqkywwmboqypehozgrfazdhkrggjhsf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"duljujgqptfvhpshwgmthnzcifnlkccb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"curcgqhdztfqwcbfpajdwdylvcmfukof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jfenivacwzajbpfymqyzgrqntecmwlad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zckuyeexmdjaoezojqqniphlcytgvqay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhfrlwncwqtcabigwojwdtlpaomeswcz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxxjcverznhdpdhmdhdixtxgvdzzquzc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhsuytflhrakgobqbbfcjepxsdalymmn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcdrrmupwsishtunirtnllefdozpjadq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tljwzwwagqbqigqomggccuntwmlejxno","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"psmgoqbptlnmzhxnkosbubckitinkklm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thzxqukszgjkfjjrzetxfbnpowwhsarn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ryqxcuqmpbyerwarmvuwlpdsngsnchdl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ssibvplvweelrcjatiwivtjrujkhlxat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhjpnfwnhwcdtazusswkwwxtceswudpn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eeesfrookzpnxhguxyxsmqnoeutfgeqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uiaolbxtvoggfsmtfqvwgtgdyooepfnh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zghrndjtdmjeejpyqqjliuhexhbabfwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mdgyipaszpcyxmpmqbbcbdwxtlazupbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnfyfyhstamohkkzxozuxsvaguiridgs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqfkoxkwimoicxqbuwjnmvqsvorqyitm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvvbfzhaufqrllcflwcqkoqwkwalbyie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsxgzizzfkemwddfpmkeqzselgsxmnzc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ygpzhsxrjaisyorbnkospsifohqgfrwz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wrbvjlriueqheuyddkvvzmxipckngvas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdjcsykxyeystidoatzhngdlbcoitqcv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqmsvqcfxeezqucmaqpddjxhvcrjhgof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfzzkvmxojxbnbnpghjedryhhhbhqjpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mfboevuaddafseoenxabsfvojyruyaqe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggnmtgvbrmdxcjbihbefrsvzcaitrlld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqxjzqiadcosylozmhjrcjlhzdopffps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkgbgocgxslldfzcqvhfvogemveuypfo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wulgnssgmixeclgxznmalppgduxqtbxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otlfzuhmjjmshyftuxejcsgfvuttvjns","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhdawvunyxhrhpbyztpzllkroeeakzuy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvoyhjeaquxfhwcjikaadhjpvpgmmzgs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cilrokxeyfsgorwldblvptqxcrtevhqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nchkcvqvoxkbiewznhhgesszxpnofnat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpozdhfphcqmfmuzqanzmmpbbnvxnkek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"srlsmqocftkkzakzqojdgngueixnavyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikytbyvqcnzueduaqmuqwenqclngyzml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nyfoaehzghigomufhncunpasgbxmsoaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkukuloelkqvpinzkneicrkmduqoypdi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kcidaryggjhzloxkvfvjufzivhekgwkg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ooypobabtifgvedoawdqpjwpytwvsvep","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvcyhgddnqxyhhbyhvwzbsxahqfzpkfo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oyvkcouunkkgxywfcbeuxfgpjqkeeohj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhiemakenhuifafbeeklwkrpaqirkzxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkgsskyekiyaqisoqsjwojxhjrijgqlr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hodnhyvgmmyeuwlknegvmlqnwuejmmcz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nwwiitnkrjzlyaswlrguusllyhvwhkxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edswqsesiqrgqeevvxgbszdnmxsgolyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffdqfercversermasaiaymduovwmnnnk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhrafqlbyutbexpsdhkfhbxarqxtqptq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qyofsfxtkhqwebvllsxhuapgglrggwpy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"turwoloirtzuplwismtyzbptxhzirwbi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txllijsqiednfmcjltjtybjbpvgesyum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gcoekmxnpidhywujupsbtdgosjabxjqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbtupfzqxxhdeeqoiscfsmohhiiluqiy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvbnbjyxsnhmkjmbsxpmdynqudummtxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gyhfkuzyaftfyyovtahkrxixjwyslfpt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwdudyovzqocqrlmwnlrzeotuavplqwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynyzmfcyfxmdeelkamrahmqwgaqwxgkg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xrsslkgiupbqjplpmqnkssrptdawdbqi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670611,"databaseName":"models_schema","ddl":"CREATE TABLE `qxqwzbxrbfsmpxxlxepnlllymnkkslug` (\n `zvgzhakrlszpnvtaclruscugtppigqvj` int NOT NULL,\n `kykzduauydohutqoxzqhqwhpkfmtjfsn` int DEFAULT NULL,\n `rdtehmquycxywsdvppsmycygohagvzzp` int DEFAULT NULL,\n `gwtcoygtzkihvvymmyaiawczloahrcsj` int DEFAULT NULL,\n `cugeeisfvvxuhsidxtyevvzzbjzosjwg` int DEFAULT NULL,\n `xwihfckflxywxslxarmqacyusrwoebxe` int DEFAULT NULL,\n `cxlwyahjmebtaztnsetenatiicmfcvav` int DEFAULT NULL,\n `dbyhipvoxyoptgmwdkdpnnuccatoseoq` int DEFAULT NULL,\n `issigopleabhkqavvbbvdwfqwvipnzey` int DEFAULT NULL,\n `bzikuvfoiiumsbdedlftmhbelbubbdne` int DEFAULT NULL,\n `zqtyhvvbyldxyhwoxmbsbmlkumorsizi` int DEFAULT NULL,\n `phqfwgjrvbzhwdzofkgesuzerlrnyhpe` int DEFAULT NULL,\n `nsuqnhvadrnsmmkanzhmxsqigngkrlbf` int DEFAULT NULL,\n `ozqvehdrqhmujscfxbhhziuhlozrsntq` int DEFAULT NULL,\n `xomkgdoyyxrmysobqffakazpogmfjfum` int DEFAULT NULL,\n `suoqkymsoqpdiibfflfwvdnszobkdrcx` int DEFAULT NULL,\n `txijipjdnzjvadvwwtpvcurvywbaffyr` int DEFAULT NULL,\n `dcpnmbfpzeltivvyfqrukyevkennbcaw` int DEFAULT NULL,\n `kzdhmxnzwrqtgjapivthnhhxavnyuzrm` int DEFAULT NULL,\n `xlnlxwwljfonqdvhvdyktrgwljhatqko` int DEFAULT NULL,\n `olpihiqftxldlarwjtpyrnhgcnqrdiqg` int DEFAULT NULL,\n `iczqxvmmodaftixwgbpleajmhtfhgbox` int DEFAULT NULL,\n `giyfivkeyekqklceoaouemycritcjooh` int DEFAULT NULL,\n `qqsieyyhsmaaxqoervcfglevqikxadff` int DEFAULT NULL,\n `bavwfvyfwofpalrlbwaginndntzwtuyu` int DEFAULT NULL,\n `qrtfjjsslbepcxggeylrxmgwnoxcccdy` int DEFAULT NULL,\n `ufhdjrnyeoahtrugqabkewjrsbrhfkyl` int DEFAULT NULL,\n `awmgcdgevzmsntkautbsiwwvskkpaivh` int DEFAULT NULL,\n `gctdiexwzdwcpnzwusfjixljvwzrwdhf` int DEFAULT NULL,\n `odbpvvdaqtktzbmdhxanefkqhspknvfw` int DEFAULT NULL,\n `hsslgunttgutmxvochufbkzaeetvojyb` int DEFAULT NULL,\n `mfsoiccmvbgjhqoofwnxjanhnajqdivs` int DEFAULT NULL,\n `hevzqpjotsvnbxpajzhydhmmitotkxuc` int DEFAULT NULL,\n `sozkyntnywffgeoxtdgxbjsvppirqvoc` int DEFAULT NULL,\n `iipxxeeapxlqydljferckffxofhhonzx` int DEFAULT NULL,\n `jzbsrdnnubeduoheijjbkivqfzcxqonu` int DEFAULT NULL,\n `uaygyjkqyspamygqifitylrqzjhdhuej` int DEFAULT NULL,\n `zqvjfrbebbegcznrsardblodocblzpza` int DEFAULT NULL,\n `sedspqpcofragwazaolpsxaiwaiecvxd` int DEFAULT NULL,\n `mcwriwlyfqvllrqwjxqlkbpuplvcaaos` int DEFAULT NULL,\n `wyirpdsweyoyvaduygycldnkyjfucuik` int DEFAULT NULL,\n `pqlmowwklgmxphhaziroduxgskkokmyn` int DEFAULT NULL,\n `cotowgobzuzhmkgoydqoztscngwhdiqf` int DEFAULT NULL,\n `afccoskdksfpasrmfmshojzbrvyhnrtx` int DEFAULT NULL,\n `zejiqfdztvawmxcujpllopbwmpmwwbqp` int DEFAULT NULL,\n `mkekdkujoeicidpupbospxvqpmyiorzc` int DEFAULT NULL,\n `toxufazbtxhmrqntojfwolztyradtdmn` int DEFAULT NULL,\n `gevfpoezhxcueaenvfottygeacgctcae` int DEFAULT NULL,\n `aatetrttgtzjaxsoivbocnmnyftqojnr` int DEFAULT NULL,\n `mpxuhlhymrrlgngogldmgboxezcbfzey` int DEFAULT NULL,\n `cakgjfvakgizizvzirzihjzchvcqmgsn` int DEFAULT NULL,\n `tfkovyvyntfyesmehehoacvpreqbzlju` int DEFAULT NULL,\n `xtusyostdqktkwtwwvcllwyyvkzwfqow` int DEFAULT NULL,\n `fgezgyahemkdflkmsfmdkykgtcjkwyet` int DEFAULT NULL,\n `aqwtjkquincvnywiteuzotfhvbpeziwy` int DEFAULT NULL,\n `jthiuofhsmqhdxfyedohlmlsibzdaxmu` int DEFAULT NULL,\n `bctzwbkqoynihiqwhctgahodozdbsmxu` int DEFAULT NULL,\n `zxrsmleqlobpqfxlqjjrkjmvoiifmkpa` int DEFAULT NULL,\n `djqeozokgbpxpzbwxyfgksissblemqqv` int DEFAULT NULL,\n `grvieqqtbmxlsihquqskcizgchhztyxn` int DEFAULT NULL,\n `aurgreqkwmbewhiyefokyeynzhnuuqsc` int DEFAULT NULL,\n `shuioijgngcudqbolcgsxlkaxyqrsdhl` int DEFAULT NULL,\n `tayzhnnykeevkpmluumxizaminjinhri` int DEFAULT NULL,\n `bqantebfsnilvgxfakrezhdtvrkfcuoa` int DEFAULT NULL,\n `bwgpwwllbgvhcbyeffrtsuzsmdsthdoo` int DEFAULT NULL,\n `qimtvmtcuvszjobasrknrewqdklmohsi` int DEFAULT NULL,\n `fjhzdzjphbgqpvkoboawmfzrkrucvsyj` int DEFAULT NULL,\n `fuutkfjdpszuqavacqisqkzpibzicjmk` int DEFAULT NULL,\n `vgmkjstdeqncizldgsjbwqlmltqsfxab` int DEFAULT NULL,\n `oegguoigtssltevadblvxksbimidlvcd` int DEFAULT NULL,\n `siqckzbksmjdwdbjjhnwgsysxazpkleo` int DEFAULT NULL,\n `qskdntldmzunilamnnukvtetrqrxsthl` int DEFAULT NULL,\n `dsmsarqzplhjgyqprlwkkezbgximyazi` int DEFAULT NULL,\n `dvqlfdoxghhtcxenfleiojahlqwvhlib` int DEFAULT NULL,\n `pxqujoeefwhqozmhhkmbgqpsdmzqoetj` int DEFAULT NULL,\n `igcojukulkxnalifueyfodjammimmmjm` int DEFAULT NULL,\n `pswgiurhhefhettujgifcfzmdbxafgod` int DEFAULT NULL,\n `cmmcsqkquskrcwyxscagkzqwbeokcizn` int DEFAULT NULL,\n `bvgxssvmlcgmuospyqkezlwpfqevmhwz` int DEFAULT NULL,\n `jovmytvbepqprwxloaqrmotgqidbxvsp` int DEFAULT NULL,\n `fixtzmhngotonnrwfssiejyjaagffnzr` int DEFAULT NULL,\n `jgvepwwsblipkpasoqamftrnaejjnbpf` int DEFAULT NULL,\n `wsoaumtopikyjvnfsytetyfkwxtdfatn` int DEFAULT NULL,\n `foolgpmugpwscsglvgqwdgdqebmifnsw` int DEFAULT NULL,\n `cwayhxfvuyyuhupmcuejhbbyjeccoyml` int DEFAULT NULL,\n `beorqyxvqkibitnznctbttsefhehyfhw` int DEFAULT NULL,\n `ftlcfegogrbdtfbzhoyllzqgzwrqmaqb` int DEFAULT NULL,\n `fuxxrlyklrackdjehihxredzkmuizdsc` int DEFAULT NULL,\n `qffbcjmmaaklasxwxxqxludsqdvxdfdp` int DEFAULT NULL,\n `itszssgosucgiowxjawxrvphapjjufgz` int DEFAULT NULL,\n `hcsphrgqzjtlfjmkeaqcrfuyqhmjwbmn` int DEFAULT NULL,\n `kqetevnhkzecsjooleouceinosnakmiw` int DEFAULT NULL,\n `xchwuoyttlseqbwesdpvxgrexwnpwzyd` int DEFAULT NULL,\n `tjpgzzepdulgstdlsxmerseimodkdyyd` int DEFAULT NULL,\n `beasfeeiyigoyaqffrzuvpumtrwefmhr` int DEFAULT NULL,\n `lxgzdwvbscacofamyuvafxwfmukhiosy` int DEFAULT NULL,\n `haqciatctpxpimzablnbwpxvrglgeplz` int DEFAULT NULL,\n `gbggljiaoajzswbckhrahvjktsdsuyxv` int DEFAULT NULL,\n `mgeinlbpzhziapfpssvcobtnvcpntquy` int DEFAULT NULL,\n `bqomfdihqvzlxiczzqhforlxzdbtrlym` int DEFAULT NULL,\n PRIMARY KEY (`zvgzhakrlszpnvtaclruscugtppigqvj`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"qxqwzbxrbfsmpxxlxepnlllymnkkslug\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["zvgzhakrlszpnvtaclruscugtppigqvj"],"columns":[{"name":"zvgzhakrlszpnvtaclruscugtppigqvj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"kykzduauydohutqoxzqhqwhpkfmtjfsn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdtehmquycxywsdvppsmycygohagvzzp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gwtcoygtzkihvvymmyaiawczloahrcsj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cugeeisfvvxuhsidxtyevvzzbjzosjwg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xwihfckflxywxslxarmqacyusrwoebxe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cxlwyahjmebtaztnsetenatiicmfcvav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbyhipvoxyoptgmwdkdpnnuccatoseoq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"issigopleabhkqavvbbvdwfqwvipnzey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bzikuvfoiiumsbdedlftmhbelbubbdne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqtyhvvbyldxyhwoxmbsbmlkumorsizi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phqfwgjrvbzhwdzofkgesuzerlrnyhpe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nsuqnhvadrnsmmkanzhmxsqigngkrlbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ozqvehdrqhmujscfxbhhziuhlozrsntq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xomkgdoyyxrmysobqffakazpogmfjfum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"suoqkymsoqpdiibfflfwvdnszobkdrcx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txijipjdnzjvadvwwtpvcurvywbaffyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcpnmbfpzeltivvyfqrukyevkennbcaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzdhmxnzwrqtgjapivthnhhxavnyuzrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xlnlxwwljfonqdvhvdyktrgwljhatqko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"olpihiqftxldlarwjtpyrnhgcnqrdiqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iczqxvmmodaftixwgbpleajmhtfhgbox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"giyfivkeyekqklceoaouemycritcjooh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqsieyyhsmaaxqoervcfglevqikxadff","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bavwfvyfwofpalrlbwaginndntzwtuyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qrtfjjsslbepcxggeylrxmgwnoxcccdy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ufhdjrnyeoahtrugqabkewjrsbrhfkyl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awmgcdgevzmsntkautbsiwwvskkpaivh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gctdiexwzdwcpnzwusfjixljvwzrwdhf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"odbpvvdaqtktzbmdhxanefkqhspknvfw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hsslgunttgutmxvochufbkzaeetvojyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mfsoiccmvbgjhqoofwnxjanhnajqdivs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hevzqpjotsvnbxpajzhydhmmitotkxuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sozkyntnywffgeoxtdgxbjsvppirqvoc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iipxxeeapxlqydljferckffxofhhonzx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jzbsrdnnubeduoheijjbkivqfzcxqonu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uaygyjkqyspamygqifitylrqzjhdhuej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqvjfrbebbegcznrsardblodocblzpza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sedspqpcofragwazaolpsxaiwaiecvxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcwriwlyfqvllrqwjxqlkbpuplvcaaos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wyirpdsweyoyvaduygycldnkyjfucuik","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqlmowwklgmxphhaziroduxgskkokmyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cotowgobzuzhmkgoydqoztscngwhdiqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afccoskdksfpasrmfmshojzbrvyhnrtx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zejiqfdztvawmxcujpllopbwmpmwwbqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkekdkujoeicidpupbospxvqpmyiorzc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"toxufazbtxhmrqntojfwolztyradtdmn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gevfpoezhxcueaenvfottygeacgctcae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aatetrttgtzjaxsoivbocnmnyftqojnr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpxuhlhymrrlgngogldmgboxezcbfzey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cakgjfvakgizizvzirzihjzchvcqmgsn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tfkovyvyntfyesmehehoacvpreqbzlju","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xtusyostdqktkwtwwvcllwyyvkzwfqow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fgezgyahemkdflkmsfmdkykgtcjkwyet","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqwtjkquincvnywiteuzotfhvbpeziwy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jthiuofhsmqhdxfyedohlmlsibzdaxmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bctzwbkqoynihiqwhctgahodozdbsmxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxrsmleqlobpqfxlqjjrkjmvoiifmkpa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"djqeozokgbpxpzbwxyfgksissblemqqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grvieqqtbmxlsihquqskcizgchhztyxn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aurgreqkwmbewhiyefokyeynzhnuuqsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shuioijgngcudqbolcgsxlkaxyqrsdhl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tayzhnnykeevkpmluumxizaminjinhri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqantebfsnilvgxfakrezhdtvrkfcuoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bwgpwwllbgvhcbyeffrtsuzsmdsthdoo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qimtvmtcuvszjobasrknrewqdklmohsi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjhzdzjphbgqpvkoboawmfzrkrucvsyj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fuutkfjdpszuqavacqisqkzpibzicjmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgmkjstdeqncizldgsjbwqlmltqsfxab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oegguoigtssltevadblvxksbimidlvcd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"siqckzbksmjdwdbjjhnwgsysxazpkleo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qskdntldmzunilamnnukvtetrqrxsthl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dsmsarqzplhjgyqprlwkkezbgximyazi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvqlfdoxghhtcxenfleiojahlqwvhlib","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxqujoeefwhqozmhhkmbgqpsdmzqoetj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igcojukulkxnalifueyfodjammimmmjm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pswgiurhhefhettujgifcfzmdbxafgod","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmmcsqkquskrcwyxscagkzqwbeokcizn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvgxssvmlcgmuospyqkezlwpfqevmhwz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jovmytvbepqprwxloaqrmotgqidbxvsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fixtzmhngotonnrwfssiejyjaagffnzr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgvepwwsblipkpasoqamftrnaejjnbpf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wsoaumtopikyjvnfsytetyfkwxtdfatn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"foolgpmugpwscsglvgqwdgdqebmifnsw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwayhxfvuyyuhupmcuejhbbyjeccoyml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"beorqyxvqkibitnznctbttsefhehyfhw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftlcfegogrbdtfbzhoyllzqgzwrqmaqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fuxxrlyklrackdjehihxredzkmuizdsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qffbcjmmaaklasxwxxqxludsqdvxdfdp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itszssgosucgiowxjawxrvphapjjufgz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hcsphrgqzjtlfjmkeaqcrfuyqhmjwbmn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kqetevnhkzecsjooleouceinosnakmiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xchwuoyttlseqbwesdpvxgrexwnpwzyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjpgzzepdulgstdlsxmerseimodkdyyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"beasfeeiyigoyaqffrzuvpumtrwefmhr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxgzdwvbscacofamyuvafxwfmukhiosy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"haqciatctpxpimzablnbwpxvrglgeplz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gbggljiaoajzswbckhrahvjktsdsuyxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mgeinlbpzhziapfpssvcobtnvcpntquy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqomfdihqvzlxiczzqhforlxzdbtrlym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670642,"databaseName":"models_schema","ddl":"CREATE TABLE `qyylbziunhtqyqeloiskfjizpimemone` (\n `louhygmaxxouzjfuphtnmtjistwvnwyq` int NOT NULL,\n `uiiheihgpclahftojbzrwlmjhabbxwdj` int DEFAULT NULL,\n `xolzclewdpfyzeybyzrwktowsqybamuk` int DEFAULT NULL,\n `nqehknvdnttwydkhhvhoirbyihoyixmm` int DEFAULT NULL,\n `bwrywrmsdyjrpragcpbaohgkijcypftq` int DEFAULT NULL,\n `jwbdvjdcitbduvmknzouvfzpfbunbaty` int DEFAULT NULL,\n `pxwodsherperfbwumwirubqiqkoieozg` int DEFAULT NULL,\n `mtdkmanixyhsonqfbgbbvdjfewkwfgac` int DEFAULT NULL,\n `qhxjjowmsxoysbxkobnxubzeksrorehn` int DEFAULT NULL,\n `sdwogdooqxrwgicsgewrcdrsgdufynqn` int DEFAULT NULL,\n `pteilgotqkvtsbccypafuwyyqskwlade` int DEFAULT NULL,\n `ttcpirpjqculrpwhjjusuvqynmcvudjp` int DEFAULT NULL,\n `ntmqrvxambjjvqflholzcurehynphyzn` int DEFAULT NULL,\n `leletpciqfgpzhlbkzytmhavkxdpbzxs` int DEFAULT NULL,\n `oywnptbicxwpmedbiurwnhtzpglguext` int DEFAULT NULL,\n `qknyeryugkmvicnrxygqxpytxbtummkp` int DEFAULT NULL,\n `doayevikkmovqcqpmeittwhrnrenvjyz` int DEFAULT NULL,\n `kqurivlaevlnjlauptcxgbaeooktywuo` int DEFAULT NULL,\n `kyjuwstjembywywpvuussyxxjzwapxax` int DEFAULT NULL,\n `kdcnvaxvlqjbwlahggrfgppvvrnsudrs` int DEFAULT NULL,\n `dzsbzjfpnccinrgesjcqwibbghmqfuui` int DEFAULT NULL,\n `knzomuyffvmpiafptsoxebrhgmrgjlvf` int DEFAULT NULL,\n `xuxmaftrvuosktoutfkkbvdljeehmsqh` int DEFAULT NULL,\n `sduvgsfgmcnwtkqiiuokrstyzvkrvctx` int DEFAULT NULL,\n `crrsslpqvzavspuyemymlnjuevsoebln` int DEFAULT NULL,\n `yajredckvxxntomdeqkzrlwkkalvkaes` int DEFAULT NULL,\n `phnzjjqqmduoupwwatjcnawsjfgqkjsd` int DEFAULT NULL,\n `rlrmklqntpuaulwnlbqhsacazpwgzqvt` int DEFAULT NULL,\n `msliukhqpeazkypiaftldrekxbbaniua` int DEFAULT NULL,\n `gthtdwojsrqahrwjfusmppebmonszlqb` int DEFAULT NULL,\n `ccntrddlferbnxlqgpllnsbstjwgaegs` int DEFAULT NULL,\n `dxqokylvsryhkodytkwdmxxddcclpprb` int DEFAULT NULL,\n `svwpgybixfajgsfbjwfgmwphxhjjduzf` int DEFAULT NULL,\n `dacerpxwslknssyovfuyvkdvuurhxzcn` int DEFAULT NULL,\n `duiufswyqlvuleqvxqgyamclrrqpernu` int DEFAULT NULL,\n `ivwuhokryesfakcqpgztyhjrlnytsysc` int DEFAULT NULL,\n `otcydnecopzjcmlqwbyzhteboewdfzes` int DEFAULT NULL,\n `lzyawhqphangpdgepstybtegincdszev` int DEFAULT NULL,\n `piqfuhqgojjuohstbcrwfvbhjxntqpys` int DEFAULT NULL,\n `ehlqjyycjaanfcjskmgfzwxpgophndfk` int DEFAULT NULL,\n `pnhbbdqqyexrqoyglxqegshpogkrgbcf` int DEFAULT NULL,\n `oooyjzulkatvtzybpyhkhdavjtcyqgfp` int DEFAULT NULL,\n `yisbfflprdzhficmhjbvkgzvtcnzmzjq` int DEFAULT NULL,\n `khuodhhcqmcgdhiwbugtybzymtteylbc` int DEFAULT NULL,\n `ivkmyemgynobknowhlugtadhfyfesynm` int DEFAULT NULL,\n `yxrswdbzivaqfrayrsuytozzuevcfwoq` int DEFAULT NULL,\n `huplnfmedeffkngobiuatybhapiuixhf` int DEFAULT NULL,\n `rvrfxzsieasftpngggbvpnetwqdadhig` int DEFAULT NULL,\n `ptebwfmgvxsgatgttmlifbhsfzgooshn` int DEFAULT NULL,\n `zsjpslpnasgruqieyfathmdpzqbphibr` int DEFAULT NULL,\n `wjcsipzxhhgfgtzffhrxbmreyxwghuwp` int DEFAULT NULL,\n `qogxpgwvbgwzwpheoyaailmtxhqtqmsq` int DEFAULT NULL,\n `hjwayajsrlkylxhvegfksgvbheditpoi` int DEFAULT NULL,\n `lsfgrqwwnbxxnagsijfvhtgymkkuwbok` int DEFAULT NULL,\n `rkfelnsedrvlbeegfrtupaxadfucmdfi` int DEFAULT NULL,\n `gfbhyftlvpxztlyvknedukctiwxtglch` int DEFAULT NULL,\n `axqicisyreaosnbcegmywtqgyfzemzmg` int DEFAULT NULL,\n `cjrkbcipdcshkqijhkkynjzxpsftvket` int DEFAULT NULL,\n `umqlkcmhadlfqsygijsviymlrkmdrgud` int DEFAULT NULL,\n `nkzunorxmmxjgcmxanrohhuygksiuyrg` int DEFAULT NULL,\n `kyddtfnchetnslrjcdptwvshenunbaax` int DEFAULT NULL,\n `vnhlfxeunnjbiwijjktrlepzzvejjpee` int DEFAULT NULL,\n `majueajriiwdxvldtymbdlsfivdbxjqk` int DEFAULT NULL,\n `qwuoidixaguiksetusztuyyvjqafbsro` int DEFAULT NULL,\n `ltommpnhocilsrheknaudfzekhtmihoj` int DEFAULT NULL,\n `ckarolrsguzspdupmqfhboetsrtvpmpc` int DEFAULT NULL,\n `pfjaysphqmypgonoypedfmicgpxsxycj` int DEFAULT NULL,\n `auqujfbjacvavibplndwkmktobulhuil` int DEFAULT NULL,\n `nkvpgaplbrhdsujdmwmbsepduzrfswku` int DEFAULT NULL,\n `pajvhbpfngaoilnvluphuqivglqueutk` int DEFAULT NULL,\n `mwmxwjiswziyqnxgcuauhbvyhqrrcnjf` int DEFAULT NULL,\n `nfzkdhtbdwrgmhftagvwaanfuhzzrpsg` int DEFAULT NULL,\n `ynohzlnfafnwrnawwhkcgozfjpqwqeit` int DEFAULT NULL,\n `ngogqkxiwgjmlqccqsmmvfvdcqjftbkq` int DEFAULT NULL,\n `kdyjarjxnylefdhvsvispcllppujdlwn` int DEFAULT NULL,\n `qbofsiwfvkqdlboaqguaylpstykkckxe` int DEFAULT NULL,\n `fdvhsfinxwdzhpkoatdafwaholudkwop` int DEFAULT NULL,\n `jxqmprpvkketbexvcawnxppvpoecptkb` int DEFAULT NULL,\n `jbwyumdmjrtkdltzwtnmizlvvplazlyb` int DEFAULT NULL,\n `yoorsvgtiduyclvxqakukvlhimvpkzcw` int DEFAULT NULL,\n `tsuunqpltrdvobfnbubxqaqqsucvwdxj` int DEFAULT NULL,\n `bhxkdoidwkbqnrxhimmdqbcmrnzwrwrb` int DEFAULT NULL,\n `iypyeqqferlvdwsmeyicbjshbylweoxo` int DEFAULT NULL,\n `jvtkttgxbzejmlfeawxiaygouvsharrt` int DEFAULT NULL,\n `ouaixnhlujdirbwhekqgolmlmcgkccaq` int DEFAULT NULL,\n `sgapioghgiqnnzlsuojdqpphabsynwbg` int DEFAULT NULL,\n `ynljoysismutkkkebvscljqdjokgenrd` int DEFAULT NULL,\n `mvahtlheggxvigltkgfwfbedfdbbroll` int DEFAULT NULL,\n `lfvqgvugpkdvqomfasymzpinypqqtvrz` int DEFAULT NULL,\n `foeotozqofpkawseatvmaqcungedcgvp` int DEFAULT NULL,\n `xycxmcpsayemdnlzryhxgngyrrsjrnqx` int DEFAULT NULL,\n `gginumdtmkwgqxelzhjrqkuejajsbtln` int DEFAULT NULL,\n `bjieumrfluekabjvtmwrxkgmxmergtwn` int DEFAULT NULL,\n `knmwkxxfnzfdwrxzzksbqlzezhoqndph` int DEFAULT NULL,\n `nbckdrfccjxlozboufpftieztsppxzsq` int DEFAULT NULL,\n `hytmoxmifxmnglbknbqreeavrkwptgxq` int DEFAULT NULL,\n `nyncgxfwmnlqffiphwbrxhkktmymlxfa` int DEFAULT NULL,\n `ibfmqtbgelqxymuyiyorqoohvizpdbna` int DEFAULT NULL,\n `fhbbsqkavpbcfyahoyhdovspnhwudhds` int DEFAULT NULL,\n `tcgdcavuqctiyslyzsqwknskxptrrdax` int DEFAULT NULL,\n PRIMARY KEY (`louhygmaxxouzjfuphtnmtjistwvnwyq`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"qyylbziunhtqyqeloiskfjizpimemone\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["louhygmaxxouzjfuphtnmtjistwvnwyq"],"columns":[{"name":"louhygmaxxouzjfuphtnmtjistwvnwyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"uiiheihgpclahftojbzrwlmjhabbxwdj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xolzclewdpfyzeybyzrwktowsqybamuk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqehknvdnttwydkhhvhoirbyihoyixmm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bwrywrmsdyjrpragcpbaohgkijcypftq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwbdvjdcitbduvmknzouvfzpfbunbaty","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxwodsherperfbwumwirubqiqkoieozg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtdkmanixyhsonqfbgbbvdjfewkwfgac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhxjjowmsxoysbxkobnxubzeksrorehn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdwogdooqxrwgicsgewrcdrsgdufynqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pteilgotqkvtsbccypafuwyyqskwlade","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ttcpirpjqculrpwhjjusuvqynmcvudjp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntmqrvxambjjvqflholzcurehynphyzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"leletpciqfgpzhlbkzytmhavkxdpbzxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oywnptbicxwpmedbiurwnhtzpglguext","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qknyeryugkmvicnrxygqxpytxbtummkp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"doayevikkmovqcqpmeittwhrnrenvjyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kqurivlaevlnjlauptcxgbaeooktywuo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kyjuwstjembywywpvuussyxxjzwapxax","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kdcnvaxvlqjbwlahggrfgppvvrnsudrs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dzsbzjfpnccinrgesjcqwibbghmqfuui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knzomuyffvmpiafptsoxebrhgmrgjlvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xuxmaftrvuosktoutfkkbvdljeehmsqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sduvgsfgmcnwtkqiiuokrstyzvkrvctx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"crrsslpqvzavspuyemymlnjuevsoebln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yajredckvxxntomdeqkzrlwkkalvkaes","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phnzjjqqmduoupwwatjcnawsjfgqkjsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlrmklqntpuaulwnlbqhsacazpwgzqvt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"msliukhqpeazkypiaftldrekxbbaniua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gthtdwojsrqahrwjfusmppebmonszlqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ccntrddlferbnxlqgpllnsbstjwgaegs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxqokylvsryhkodytkwdmxxddcclpprb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"svwpgybixfajgsfbjwfgmwphxhjjduzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dacerpxwslknssyovfuyvkdvuurhxzcn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"duiufswyqlvuleqvxqgyamclrrqpernu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivwuhokryesfakcqpgztyhjrlnytsysc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otcydnecopzjcmlqwbyzhteboewdfzes","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lzyawhqphangpdgepstybtegincdszev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"piqfuhqgojjuohstbcrwfvbhjxntqpys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehlqjyycjaanfcjskmgfzwxpgophndfk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnhbbdqqyexrqoyglxqegshpogkrgbcf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oooyjzulkatvtzybpyhkhdavjtcyqgfp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yisbfflprdzhficmhjbvkgzvtcnzmzjq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"khuodhhcqmcgdhiwbugtybzymtteylbc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivkmyemgynobknowhlugtadhfyfesynm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxrswdbzivaqfrayrsuytozzuevcfwoq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"huplnfmedeffkngobiuatybhapiuixhf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rvrfxzsieasftpngggbvpnetwqdadhig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ptebwfmgvxsgatgttmlifbhsfzgooshn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zsjpslpnasgruqieyfathmdpzqbphibr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjcsipzxhhgfgtzffhrxbmreyxwghuwp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qogxpgwvbgwzwpheoyaailmtxhqtqmsq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjwayajsrlkylxhvegfksgvbheditpoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lsfgrqwwnbxxnagsijfvhtgymkkuwbok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkfelnsedrvlbeegfrtupaxadfucmdfi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfbhyftlvpxztlyvknedukctiwxtglch","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axqicisyreaosnbcegmywtqgyfzemzmg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cjrkbcipdcshkqijhkkynjzxpsftvket","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umqlkcmhadlfqsygijsviymlrkmdrgud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nkzunorxmmxjgcmxanrohhuygksiuyrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kyddtfnchetnslrjcdptwvshenunbaax","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vnhlfxeunnjbiwijjktrlepzzvejjpee","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"majueajriiwdxvldtymbdlsfivdbxjqk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwuoidixaguiksetusztuyyvjqafbsro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ltommpnhocilsrheknaudfzekhtmihoj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ckarolrsguzspdupmqfhboetsrtvpmpc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pfjaysphqmypgonoypedfmicgpxsxycj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"auqujfbjacvavibplndwkmktobulhuil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nkvpgaplbrhdsujdmwmbsepduzrfswku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pajvhbpfngaoilnvluphuqivglqueutk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwmxwjiswziyqnxgcuauhbvyhqrrcnjf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfzkdhtbdwrgmhftagvwaanfuhzzrpsg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynohzlnfafnwrnawwhkcgozfjpqwqeit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ngogqkxiwgjmlqccqsmmvfvdcqjftbkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kdyjarjxnylefdhvsvispcllppujdlwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qbofsiwfvkqdlboaqguaylpstykkckxe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fdvhsfinxwdzhpkoatdafwaholudkwop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jxqmprpvkketbexvcawnxppvpoecptkb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jbwyumdmjrtkdltzwtnmizlvvplazlyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yoorsvgtiduyclvxqakukvlhimvpkzcw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tsuunqpltrdvobfnbubxqaqqsucvwdxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bhxkdoidwkbqnrxhimmdqbcmrnzwrwrb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iypyeqqferlvdwsmeyicbjshbylweoxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvtkttgxbzejmlfeawxiaygouvsharrt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ouaixnhlujdirbwhekqgolmlmcgkccaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sgapioghgiqnnzlsuojdqpphabsynwbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynljoysismutkkkebvscljqdjokgenrd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvahtlheggxvigltkgfwfbedfdbbroll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfvqgvugpkdvqomfasymzpinypqqtvrz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"foeotozqofpkawseatvmaqcungedcgvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xycxmcpsayemdnlzryhxgngyrrsjrnqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gginumdtmkwgqxelzhjrqkuejajsbtln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjieumrfluekabjvtmwrxkgmxmergtwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knmwkxxfnzfdwrxzzksbqlzezhoqndph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbckdrfccjxlozboufpftieztsppxzsq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hytmoxmifxmnglbknbqreeavrkwptgxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nyncgxfwmnlqffiphwbrxhkktmymlxfa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibfmqtbgelqxymuyiyorqoohvizpdbna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhbbsqkavpbcfyahoyhdovspnhwudhds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tcgdcavuqctiyslyzsqwknskxptrrdax","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670672,"databaseName":"models_schema","ddl":"CREATE TABLE `rdcfwajpujmymsqszcnekivknqxdoqil` (\n `aqvpvqqneggxofjqrspisgguzvhvbzrt` int NOT NULL,\n `rgyqgazfklklfogtrqyruwdfdlzzcegi` int DEFAULT NULL,\n `nqddtfqggyykdgzvilxijekbyvqqchis` int DEFAULT NULL,\n `iyghyqgalnjmttllzcmythgmdgggicgt` int DEFAULT NULL,\n `uvqfjysbaffzuubsupezhccqqvdjrmjn` int DEFAULT NULL,\n `pzonlmgdvsryfdhenttgtstnwgktrykd` int DEFAULT NULL,\n `dupeujtpihnkydmjqpmzynfnxuinlvcy` int DEFAULT NULL,\n `wqzhqttdxbbojyzweilqmvfuvbdjfpwi` int DEFAULT NULL,\n `krsbngaerrfvogglkxolmrrzlznrbagb` int DEFAULT NULL,\n `qsudbjnihsvlsmktkjsxqgmxoulhnsto` int DEFAULT NULL,\n `mugposrkwvpakczqhnvnohvqefhauhwx` int DEFAULT NULL,\n `ftcilfsakxwcxpmtlvrvfafetvhwklly` int DEFAULT NULL,\n `gazqrfdchkbkghkyjgqzvqhtaffvcywc` int DEFAULT NULL,\n `umuwjyatknqnilbvdaiunhmdhjsmdpkr` int DEFAULT NULL,\n `qqfmuqlxfvrhtxooeixujaifigqpuggb` int DEFAULT NULL,\n `chajsiygnaqumqzuycvygncwnynmpjyu` int DEFAULT NULL,\n `deyozguiuoyctqkpvtmixqxlmxkkxhqm` int DEFAULT NULL,\n `lrflszbatymxunomowxrwplxfhzhgkbr` int DEFAULT NULL,\n `bkabtgqytqinvghyqrezmtttogeqewbi` int DEFAULT NULL,\n `khzefnvnjmrqzfsjcgmwpcntgohrmuqd` int DEFAULT NULL,\n `ujlgfofrqjbsrmfrebtycyfaqmkcqcig` int DEFAULT NULL,\n `cscvrrgirncqbvqyfjuaoarryexldhxj` int DEFAULT NULL,\n `cfqawepcspzzhzpgrdotdighruuuhoqx` int DEFAULT NULL,\n `nnxzqwwoyssuqwcwfxeuzlbvtywpsvgk` int DEFAULT NULL,\n `zusnboikzqrzlzwvbmelbgxwfzeocytm` int DEFAULT NULL,\n `eodlhgkpuintldnmbvyqsazpdcdvsssc` int DEFAULT NULL,\n `guejtvayyipdncqapgcjknxhhfhevscn` int DEFAULT NULL,\n `jmvbqxufpsmdelcqplybzachkrknqkrh` int DEFAULT NULL,\n `jzycbtpjtulbmjjdcertviqdkyjhplaw` int DEFAULT NULL,\n `onhfcqmncslwtvtvfhivglrachielbyc` int DEFAULT NULL,\n `sfrypfcabugpdihzejwmsnxdyhsbkdsp` int DEFAULT NULL,\n `gxpndviavqfudwlppwuoilkuodckoiui` int DEFAULT NULL,\n `cfkbudcgzdeevclobryvtdgciiszsrag` int DEFAULT NULL,\n `ngfvukuotrpbgbqkrjnmdossroqadiuf` int DEFAULT NULL,\n `ptofqrjgvwgihntenructrvgbwjafxxy` int DEFAULT NULL,\n `lmenwexdfxdqaffybfxkkjfmevaxwfia` int DEFAULT NULL,\n `zotxxqavxbqsmfdxxfftcxqhuebggkqi` int DEFAULT NULL,\n `yselqlpivbguyneocwhdnwncwxkqjzxm` int DEFAULT NULL,\n `ldvwvsbsnvlgesfbhzcorfpftnddazpk` int DEFAULT NULL,\n `qkdtxuigbgpqjlslskqtwahucqiduuvs` int DEFAULT NULL,\n `ukwohaeeocyfycdxsdmynkwcnkeclroz` int DEFAULT NULL,\n `oylhvdzfjncwdntnhlygrllghajzwhxd` int DEFAULT NULL,\n `ejgesinazqsmkziqsxwzpgnphhpobxbl` int DEFAULT NULL,\n `jaikhnkiazaeiloxsilsgulxcccmcwkk` int DEFAULT NULL,\n `mkgkyirnpgidfyqezngbiqprukdeeuxh` int DEFAULT NULL,\n `govdjksjhknwoplxwcmzldmevgybqzki` int DEFAULT NULL,\n `qergymeebwrmvoqqkwjqxuxfowyfaqlu` int DEFAULT NULL,\n `bkojpcnsswvjofrtuxezwtyhjjxcbrwo` int DEFAULT NULL,\n `faebwsfxbyqjvqakkgvpvymiqeepdhyd` int DEFAULT NULL,\n `odypbpvhleumusvamehjywdqhuzmhvgv` int DEFAULT NULL,\n `gpaivdfwnvswavwjscgililnwtgukwjj` int DEFAULT NULL,\n `rpaxxmnzjrdlsjywwkozevdwybemtodd` int DEFAULT NULL,\n `dauvcaccdnvjkufrzdykmxziwpxosxhh` int DEFAULT NULL,\n `yzzyndctepkfrpmaskcvyrkicxulhnru` int DEFAULT NULL,\n `bbsdoapdyqwcladmkzqpttywygfnvthj` int DEFAULT NULL,\n `vyhkdcxlysnxdgvquqtmtbjioiyktijs` int DEFAULT NULL,\n `hjjvsyuouacbvstfvmnrclqbawukzequ` int DEFAULT NULL,\n `nirokglukqdyscagofhfsoxmvbdushvh` int DEFAULT NULL,\n `xjamtfhyjtvkogitaqplqcpqliyffoek` int DEFAULT NULL,\n `uiigfzvepvhfafoawuqleluoiaceplni` int DEFAULT NULL,\n `ofkkjsznwfanhtzeytqtlalaclsektej` int DEFAULT NULL,\n `hhvppcvwwxwasikpuxlvztngtmwsyjdo` int DEFAULT NULL,\n `fshwxkfhsnfaudweihunkgaelmopnygu` int DEFAULT NULL,\n `njlzzprwqiztdnwoecccmvlsgscarvli` int DEFAULT NULL,\n `lummretmxbfpxgfzaqzvkhiqqbscdhgj` int DEFAULT NULL,\n `ytlfybbsgfcfkukrzsjkjqkdtiemlrkx` int DEFAULT NULL,\n `egogmunyuliqcoodenoqnmbpvneluupx` int DEFAULT NULL,\n `thghlixpsbhwfjpwkowcuwzuiyeqdyui` int DEFAULT NULL,\n `efhblvkuhpudnwtxqfcozciogzzjfqje` int DEFAULT NULL,\n `vzbxbqwprvlsvifsypwdgujvgjdfseoi` int DEFAULT NULL,\n `cawdljvueghintwbfyksynquqarnszvu` int DEFAULT NULL,\n `sjvzgfnbtpapvpdhsupqwgfbjixesksj` int DEFAULT NULL,\n `tygqxjlorekzvknikuypboqqugahvqyu` int DEFAULT NULL,\n `notwrdgeweswvewxyfbtdttathemkgft` int DEFAULT NULL,\n `mtusxrhgtmytexmypwqzcueeovpwibla` int DEFAULT NULL,\n `sirxmogrqrtqjmxrlbedmhzyhrbpumsf` int DEFAULT NULL,\n `kixdhivtzkkjsdqruikhucyxehakfcpt` int DEFAULT NULL,\n `isdukbwdatgjcngxqmdkctgkrimqpbik` int DEFAULT NULL,\n `shqmhwllhnetxrmlqjrwczrbuuodscqc` int DEFAULT NULL,\n `vqkomnzmaszrviaxbfvccnlyjtznehgp` int DEFAULT NULL,\n `mnqnuyuytleontqcfgylrmswsyofjjtd` int DEFAULT NULL,\n `ldarpeilgytpwirxybzscmrsrggwlmlg` int DEFAULT NULL,\n `mjqozzblwugyzvwximjgrdhomcghvhjt` int DEFAULT NULL,\n `yqsrahhyttzxbixrfvpvtekoweazokgs` int DEFAULT NULL,\n `yhtirqldtidcbbmytmnveioivoihypcq` int DEFAULT NULL,\n `aeftysthpaixmrjefqlrsqpgjkxdqzmp` int DEFAULT NULL,\n `sazhchoxdbgjntpjjkugpjkucnfnxfdo` int DEFAULT NULL,\n `mamhppcpuulsyhgfsxqipogofyucuylu` int DEFAULT NULL,\n `uspqeemioqpdlblcgmazetuvldnoggxx` int DEFAULT NULL,\n `dbnylszjapfpgfifgyirrqjdcjlnpcgz` int DEFAULT NULL,\n `pifntpnouozanvcpxljjockrycpzzaml` int DEFAULT NULL,\n `ldoohrakwsidahuxuqnhigymnonzvaig` int DEFAULT NULL,\n `qlcfrbxkgcztrcytshogeezvmmdwrhas` int DEFAULT NULL,\n `pgumwjxpnnvdotxncqsyueyofaqipdll` int DEFAULT NULL,\n `vudzjbicpgturbnckylixhktqcmmeqiu` int DEFAULT NULL,\n `vtpywsqihyiqgtdkaczsgmtdgjxulkdm` int DEFAULT NULL,\n `dgvwoxrqufnkazglyofroidsamnxzvta` int DEFAULT NULL,\n `cbahbbgccmnarcwnsrppycctsccxxden` int DEFAULT NULL,\n `ogabiiqlbazzlhwjxnynhvfwapfcatus` int DEFAULT NULL,\n `wkyoinkdwfziqokhtsgocwokpjivvymj` int DEFAULT NULL,\n PRIMARY KEY (`aqvpvqqneggxofjqrspisgguzvhvbzrt`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"rdcfwajpujmymsqszcnekivknqxdoqil\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["aqvpvqqneggxofjqrspisgguzvhvbzrt"],"columns":[{"name":"aqvpvqqneggxofjqrspisgguzvhvbzrt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"rgyqgazfklklfogtrqyruwdfdlzzcegi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqddtfqggyykdgzvilxijekbyvqqchis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iyghyqgalnjmttllzcmythgmdgggicgt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvqfjysbaffzuubsupezhccqqvdjrmjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pzonlmgdvsryfdhenttgtstnwgktrykd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dupeujtpihnkydmjqpmzynfnxuinlvcy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqzhqttdxbbojyzweilqmvfuvbdjfpwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"krsbngaerrfvogglkxolmrrzlznrbagb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qsudbjnihsvlsmktkjsxqgmxoulhnsto","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mugposrkwvpakczqhnvnohvqefhauhwx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftcilfsakxwcxpmtlvrvfafetvhwklly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gazqrfdchkbkghkyjgqzvqhtaffvcywc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umuwjyatknqnilbvdaiunhmdhjsmdpkr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqfmuqlxfvrhtxooeixujaifigqpuggb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"chajsiygnaqumqzuycvygncwnynmpjyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"deyozguiuoyctqkpvtmixqxlmxkkxhqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lrflszbatymxunomowxrwplxfhzhgkbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkabtgqytqinvghyqrezmtttogeqewbi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"khzefnvnjmrqzfsjcgmwpcntgohrmuqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujlgfofrqjbsrmfrebtycyfaqmkcqcig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cscvrrgirncqbvqyfjuaoarryexldhxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfqawepcspzzhzpgrdotdighruuuhoqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nnxzqwwoyssuqwcwfxeuzlbvtywpsvgk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zusnboikzqrzlzwvbmelbgxwfzeocytm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eodlhgkpuintldnmbvyqsazpdcdvsssc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"guejtvayyipdncqapgcjknxhhfhevscn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmvbqxufpsmdelcqplybzachkrknqkrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jzycbtpjtulbmjjdcertviqdkyjhplaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"onhfcqmncslwtvtvfhivglrachielbyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfrypfcabugpdihzejwmsnxdyhsbkdsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gxpndviavqfudwlppwuoilkuodckoiui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfkbudcgzdeevclobryvtdgciiszsrag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ngfvukuotrpbgbqkrjnmdossroqadiuf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ptofqrjgvwgihntenructrvgbwjafxxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmenwexdfxdqaffybfxkkjfmevaxwfia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zotxxqavxbqsmfdxxfftcxqhuebggkqi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yselqlpivbguyneocwhdnwncwxkqjzxm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ldvwvsbsnvlgesfbhzcorfpftnddazpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qkdtxuigbgpqjlslskqtwahucqiduuvs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ukwohaeeocyfycdxsdmynkwcnkeclroz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oylhvdzfjncwdntnhlygrllghajzwhxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejgesinazqsmkziqsxwzpgnphhpobxbl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jaikhnkiazaeiloxsilsgulxcccmcwkk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkgkyirnpgidfyqezngbiqprukdeeuxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"govdjksjhknwoplxwcmzldmevgybqzki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qergymeebwrmvoqqkwjqxuxfowyfaqlu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkojpcnsswvjofrtuxezwtyhjjxcbrwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"faebwsfxbyqjvqakkgvpvymiqeepdhyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"odypbpvhleumusvamehjywdqhuzmhvgv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gpaivdfwnvswavwjscgililnwtgukwjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpaxxmnzjrdlsjywwkozevdwybemtodd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dauvcaccdnvjkufrzdykmxziwpxosxhh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzzyndctepkfrpmaskcvyrkicxulhnru","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbsdoapdyqwcladmkzqpttywygfnvthj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vyhkdcxlysnxdgvquqtmtbjioiyktijs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjjvsyuouacbvstfvmnrclqbawukzequ","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nirokglukqdyscagofhfsoxmvbdushvh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjamtfhyjtvkogitaqplqcpqliyffoek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uiigfzvepvhfafoawuqleluoiaceplni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofkkjsznwfanhtzeytqtlalaclsektej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhvppcvwwxwasikpuxlvztngtmwsyjdo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fshwxkfhsnfaudweihunkgaelmopnygu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njlzzprwqiztdnwoecccmvlsgscarvli","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lummretmxbfpxgfzaqzvkhiqqbscdhgj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytlfybbsgfcfkukrzsjkjqkdtiemlrkx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"egogmunyuliqcoodenoqnmbpvneluupx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thghlixpsbhwfjpwkowcuwzuiyeqdyui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"efhblvkuhpudnwtxqfcozciogzzjfqje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vzbxbqwprvlsvifsypwdgujvgjdfseoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cawdljvueghintwbfyksynquqarnszvu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjvzgfnbtpapvpdhsupqwgfbjixesksj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tygqxjlorekzvknikuypboqqugahvqyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"notwrdgeweswvewxyfbtdttathemkgft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtusxrhgtmytexmypwqzcueeovpwibla","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sirxmogrqrtqjmxrlbedmhzyhrbpumsf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kixdhivtzkkjsdqruikhucyxehakfcpt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"isdukbwdatgjcngxqmdkctgkrimqpbik","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shqmhwllhnetxrmlqjrwczrbuuodscqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqkomnzmaszrviaxbfvccnlyjtznehgp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnqnuyuytleontqcfgylrmswsyofjjtd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ldarpeilgytpwirxybzscmrsrggwlmlg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjqozzblwugyzvwximjgrdhomcghvhjt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqsrahhyttzxbixrfvpvtekoweazokgs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhtirqldtidcbbmytmnveioivoihypcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aeftysthpaixmrjefqlrsqpgjkxdqzmp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sazhchoxdbgjntpjjkugpjkucnfnxfdo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mamhppcpuulsyhgfsxqipogofyucuylu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uspqeemioqpdlblcgmazetuvldnoggxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbnylszjapfpgfifgyirrqjdcjlnpcgz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pifntpnouozanvcpxljjockrycpzzaml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ldoohrakwsidahuxuqnhigymnonzvaig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qlcfrbxkgcztrcytshogeezvmmdwrhas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgumwjxpnnvdotxncqsyueyofaqipdll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vudzjbicpgturbnckylixhktqcmmeqiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtpywsqihyiqgtdkaczsgmtdgjxulkdm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgvwoxrqufnkazglyofroidsamnxzvta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbahbbgccmnarcwnsrppycctsccxxden","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ogabiiqlbazzlhwjxnynhvfwapfcatus","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wkyoinkdwfziqokhtsgocwokpjivvymj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670704,"databaseName":"models_schema","ddl":"CREATE TABLE `rgjeprxzblxygbhnumnnjlryntqzuony` (\n `vcqwhzuiczusgfbfcizkxxhxvhpwlspc` int NOT NULL,\n `ghglyohfzwyrizmsfgvzbuxzuihhzdag` int DEFAULT NULL,\n `yzvkdpowdpksgqxwdhdmrbqcaqqhmnzy` int DEFAULT NULL,\n `nygrcfsyoplhlsfnmlzmevlbmircdbkd` int DEFAULT NULL,\n `tvxpkilrfyppvmcrakzbmhjxxoiuosiv` int DEFAULT NULL,\n `mzjwbvspdzstzpesjjxrvqwjfszxhivw` int DEFAULT NULL,\n `uodxgciheramqxeziwrpyvfhdwoxbbao` int DEFAULT NULL,\n `zavryoixzlfituqlfsbnjqwffjyadxpk` int DEFAULT NULL,\n `pukgcqrxhqbcchaovgrpymqfdpwhrqje` int DEFAULT NULL,\n `dextbehrfcuieqgkcktyobccsvocrrjx` int DEFAULT NULL,\n `cxnqreoookiogolbxgracrtcireagxca` int DEFAULT NULL,\n `uqdcvnwxykmzuevgvxapskbsafjzrrpv` int DEFAULT NULL,\n `hyrungnhmjzceqroxwiaezsbbwrtvxeq` int DEFAULT NULL,\n `zxcgkpfauxpghobqaumghvxejxsixxzv` int DEFAULT NULL,\n `etwwazumljohombqsztodudllmderpby` int DEFAULT NULL,\n `wnijrnlemoaptewradzovwpbvmldhqei` int DEFAULT NULL,\n `tljinwiccoejiabmbuwioorqrlohjcps` int DEFAULT NULL,\n `gcphefmwdotkilbqvmfmunatuydzgrch` int DEFAULT NULL,\n `bzssxiqjaexfufgaghiwvrteatzbtlyl` int DEFAULT NULL,\n `nzvmvxcbfpnvvqvhmowcsmhqqrybjoao` int DEFAULT NULL,\n `mzkrhkjnvptqplzykaqwwvftumyjlrgy` int DEFAULT NULL,\n `quoxzqihwkkpowldvdpnzdfpdgobnlpk` int DEFAULT NULL,\n `yprfzsunojkmtzhxilibbgcickgajuyh` int DEFAULT NULL,\n `hfyjkbreilyczdvrqyreyevxyqnsmbbr` int DEFAULT NULL,\n `fxmkxenhjfaesktpcykqeqkbkcmnurke` int DEFAULT NULL,\n `bvumrgjsqetkzxjypqsidbxouohlflpr` int DEFAULT NULL,\n `jpsdlqnqeazlmcqrvwifbeoeztomecvy` int DEFAULT NULL,\n `hyxfwreypfzrdrxjwmmjfoojvaibcbms` int DEFAULT NULL,\n `athekmatwollqsmgdhnrcukifkofpnxx` int DEFAULT NULL,\n `hiunbfwtkfpmkmwwnbxcwpvkqvmlvsll` int DEFAULT NULL,\n `grohgesznywvooozfpsozyllotzsfsoa` int DEFAULT NULL,\n `lwzkpihgpdotjoyjphqnxvijfesydlfk` int DEFAULT NULL,\n `hdomkaujeypxysnkzntamuawbgciddxb` int DEFAULT NULL,\n `jwbuxklbeyptoletjlsvnhredzscfhsk` int DEFAULT NULL,\n `lctcgsgnimlhpaeqmejxrythbwsvdyam` int DEFAULT NULL,\n `rxtmmychnmskzlhbqzvvoyyvtehwqcfx` int DEFAULT NULL,\n `ghnnlcpjbewevrznskwexcrlnijayprv` int DEFAULT NULL,\n `xebfomunclewemmqubrwtyqlbhwpobsa` int DEFAULT NULL,\n `vibuybputjgrezbivcsyjeexryaogkqm` int DEFAULT NULL,\n `qqobkyhoaauuxtybyntelgkzjekkkdji` int DEFAULT NULL,\n `iyvhotrfmpmskogetdcontcnphvclcoi` int DEFAULT NULL,\n `csmhkplzenkzaptfptlveqwynlscgutn` int DEFAULT NULL,\n `qvxjemblwmensebpfykapkfcoanshmea` int DEFAULT NULL,\n `vjsrrdswnqfzpixyyrugmzkayntwlyhq` int DEFAULT NULL,\n `mduqagolopxzneslzstblzusacwaurlt` int DEFAULT NULL,\n `aoogiajvlbcoprvwlvdqabsbwmmxnnai` int DEFAULT NULL,\n `epkzowtxplwgxnxowpmoxevgjarnmaep` int DEFAULT NULL,\n `nxpddwzfmcjcxundbkdlahilacqqdlcm` int DEFAULT NULL,\n `wqddhxggakhxnuxbnosoqvddzlexzgcv` int DEFAULT NULL,\n `gffxtylpdfojuzezhkafixlrtlbskuoa` int DEFAULT NULL,\n `bcijuqwcxpddipaxfoekxkdmlmqcfgef` int DEFAULT NULL,\n `apssfhmmyhbkqczfrdrfoxgnrlfmxtmd` int DEFAULT NULL,\n `qeogfywbjhdwvidbispbxndhfrnrdmwd` int DEFAULT NULL,\n `mwvaxxkjwodpfheiephxhxryptcpikbw` int DEFAULT NULL,\n `fetifvonwothikelhhxuphlfgfxzxzyo` int DEFAULT NULL,\n `mtwyqjpmkvhbkhhiisffhixyhjbwxajt` int DEFAULT NULL,\n `nwekiuzuajfskbvbvcqcaytqaqppvchx` int DEFAULT NULL,\n `ftyplrtcjbowipiyazixlevvdvnnwvxr` int DEFAULT NULL,\n `cnprfjaprchfdfbkaxofqcddwxmmfnpy` int DEFAULT NULL,\n `tmbwpdfjteyuknqdypnqerqjucjhetsr` int DEFAULT NULL,\n `opgvxssuicocbtqnbzxgdhyvydnbxddo` int DEFAULT NULL,\n `plmkleqqkmiwaobfmrgizomwcwgjwqnr` int DEFAULT NULL,\n `hydbuvjhqspojtnxgzveticjtntmckws` int DEFAULT NULL,\n `uzmvwhnwksofavmfdfeaxlrsbrzgostc` int DEFAULT NULL,\n `hudiffutipfmvypmupissebfugsayvvl` int DEFAULT NULL,\n `ovtrzoonchiplgxrlgchuvyxhtiklokl` int DEFAULT NULL,\n `wwlkqllwdakrykuvuomoeuqmqylquagf` int DEFAULT NULL,\n `olsudpkiwdcmxtebbwosueryrezaslwo` int DEFAULT NULL,\n `ybxkpernpqxppgoirhticqamdfqsqdbi` int DEFAULT NULL,\n `nrayyffrcluzjlmpwgstyrwggsxeubbb` int DEFAULT NULL,\n `ghaswugnbijybetjdtxoejxxyryhjgbw` int DEFAULT NULL,\n `seeewtdnroqbyhqdiefpxzbosnrhbgmi` int DEFAULT NULL,\n `ptsthfqmuwwaxojgfbyaubbgiaqtwfxw` int DEFAULT NULL,\n `mukhikntbpjitxnsgvfinbaepyupihfu` int DEFAULT NULL,\n `jdmtkmzhgihrxzchkeemehxwdhdvcbwu` int DEFAULT NULL,\n `kgejmgiukaadjxylklyejtinwfhbmydo` int DEFAULT NULL,\n `npfkusvojwdgomzelydvjqxkebxgxlds` int DEFAULT NULL,\n `okiygniwcdtaxivqpfabqenvynsyrhod` int DEFAULT NULL,\n `pdfnpfnmganduiyfscdkwgfzymggsphz` int DEFAULT NULL,\n `qwmtnkdqgfghdzqscncebfidrywntuih` int DEFAULT NULL,\n `rijjyihdieydzioiguoyufmfrgwbrgil` int DEFAULT NULL,\n `zxrahxkwlapnwrrkwqmkwmcxgidudhau` int DEFAULT NULL,\n `mqhnygzsbmxkcsptlngdmqhqlluazeaa` int DEFAULT NULL,\n `sxzovqbvvvkislofeloohpdwhttixvme` int DEFAULT NULL,\n `yscfinxiawvbrkqkqtgjwsriomozskxe` int DEFAULT NULL,\n `cwydixfotsvljqhtesaxkdpevkjgdjgg` int DEFAULT NULL,\n `krwiwfhhszbequtrrccowhsbkqvrxrfb` int DEFAULT NULL,\n `qzbkjfuxyqetvofuqfgnglfshgxedwxl` int DEFAULT NULL,\n `neragabtsembuerjyqxnwcfzsmhpwius` int DEFAULT NULL,\n `orgmxgvcomqchoowvnvzoibwwydmddrn` int DEFAULT NULL,\n `ijteqvcmzitdimiwpwbkiganvaknpyyz` int DEFAULT NULL,\n `wppczijhfwsulhhtdvaovmslymhxhyhq` int DEFAULT NULL,\n `jjmoipfajxpizwbdgvjarcjcsocrslms` int DEFAULT NULL,\n `drmjubwyqumzfxfehnbvqflwdsjixsdh` int DEFAULT NULL,\n `fqcwhybqqlosfmdeynopcwyrjyrxipea` int DEFAULT NULL,\n `rnjxtprgllfkifwvxbzhmbbpncnazbcr` int DEFAULT NULL,\n `vspdccsulyqedasmnqimvnupuulkrayz` int DEFAULT NULL,\n `zzqqkkvknfpntilqnhehvtvpkntmzqag` int DEFAULT NULL,\n `wprxglegvybnpaecrsgmiubgfinefrwh` int DEFAULT NULL,\n `dqgzomyraftwkpdgldsbnnzyfugykyhw` int DEFAULT NULL,\n PRIMARY KEY (`vcqwhzuiczusgfbfcizkxxhxvhpwlspc`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"rgjeprxzblxygbhnumnnjlryntqzuony\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["vcqwhzuiczusgfbfcizkxxhxvhpwlspc"],"columns":[{"name":"vcqwhzuiczusgfbfcizkxxhxvhpwlspc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"ghglyohfzwyrizmsfgvzbuxzuihhzdag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzvkdpowdpksgqxwdhdmrbqcaqqhmnzy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nygrcfsyoplhlsfnmlzmevlbmircdbkd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvxpkilrfyppvmcrakzbmhjxxoiuosiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzjwbvspdzstzpesjjxrvqwjfszxhivw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uodxgciheramqxeziwrpyvfhdwoxbbao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zavryoixzlfituqlfsbnjqwffjyadxpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pukgcqrxhqbcchaovgrpymqfdpwhrqje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dextbehrfcuieqgkcktyobccsvocrrjx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cxnqreoookiogolbxgracrtcireagxca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqdcvnwxykmzuevgvxapskbsafjzrrpv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hyrungnhmjzceqroxwiaezsbbwrtvxeq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxcgkpfauxpghobqaumghvxejxsixxzv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"etwwazumljohombqsztodudllmderpby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnijrnlemoaptewradzovwpbvmldhqei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tljinwiccoejiabmbuwioorqrlohjcps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gcphefmwdotkilbqvmfmunatuydzgrch","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bzssxiqjaexfufgaghiwvrteatzbtlyl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzvmvxcbfpnvvqvhmowcsmhqqrybjoao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzkrhkjnvptqplzykaqwwvftumyjlrgy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"quoxzqihwkkpowldvdpnzdfpdgobnlpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yprfzsunojkmtzhxilibbgcickgajuyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfyjkbreilyczdvrqyreyevxyqnsmbbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxmkxenhjfaesktpcykqeqkbkcmnurke","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvumrgjsqetkzxjypqsidbxouohlflpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jpsdlqnqeazlmcqrvwifbeoeztomecvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hyxfwreypfzrdrxjwmmjfoojvaibcbms","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"athekmatwollqsmgdhnrcukifkofpnxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hiunbfwtkfpmkmwwnbxcwpvkqvmlvsll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grohgesznywvooozfpsozyllotzsfsoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwzkpihgpdotjoyjphqnxvijfesydlfk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdomkaujeypxysnkzntamuawbgciddxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwbuxklbeyptoletjlsvnhredzscfhsk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lctcgsgnimlhpaeqmejxrythbwsvdyam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxtmmychnmskzlhbqzvvoyyvtehwqcfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghnnlcpjbewevrznskwexcrlnijayprv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xebfomunclewemmqubrwtyqlbhwpobsa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vibuybputjgrezbivcsyjeexryaogkqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqobkyhoaauuxtybyntelgkzjekkkdji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iyvhotrfmpmskogetdcontcnphvclcoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"csmhkplzenkzaptfptlveqwynlscgutn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvxjemblwmensebpfykapkfcoanshmea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjsrrdswnqfzpixyyrugmzkayntwlyhq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mduqagolopxzneslzstblzusacwaurlt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aoogiajvlbcoprvwlvdqabsbwmmxnnai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"epkzowtxplwgxnxowpmoxevgjarnmaep","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxpddwzfmcjcxundbkdlahilacqqdlcm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqddhxggakhxnuxbnosoqvddzlexzgcv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gffxtylpdfojuzezhkafixlrtlbskuoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bcijuqwcxpddipaxfoekxkdmlmqcfgef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"apssfhmmyhbkqczfrdrfoxgnrlfmxtmd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qeogfywbjhdwvidbispbxndhfrnrdmwd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwvaxxkjwodpfheiephxhxryptcpikbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fetifvonwothikelhhxuphlfgfxzxzyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtwyqjpmkvhbkhhiisffhixyhjbwxajt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nwekiuzuajfskbvbvcqcaytqaqppvchx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftyplrtcjbowipiyazixlevvdvnnwvxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnprfjaprchfdfbkaxofqcddwxmmfnpy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmbwpdfjteyuknqdypnqerqjucjhetsr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opgvxssuicocbtqnbzxgdhyvydnbxddo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"plmkleqqkmiwaobfmrgizomwcwgjwqnr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hydbuvjhqspojtnxgzveticjtntmckws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzmvwhnwksofavmfdfeaxlrsbrzgostc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hudiffutipfmvypmupissebfugsayvvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovtrzoonchiplgxrlgchuvyxhtiklokl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwlkqllwdakrykuvuomoeuqmqylquagf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"olsudpkiwdcmxtebbwosueryrezaslwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ybxkpernpqxppgoirhticqamdfqsqdbi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nrayyffrcluzjlmpwgstyrwggsxeubbb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghaswugnbijybetjdtxoejxxyryhjgbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"seeewtdnroqbyhqdiefpxzbosnrhbgmi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ptsthfqmuwwaxojgfbyaubbgiaqtwfxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mukhikntbpjitxnsgvfinbaepyupihfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdmtkmzhgihrxzchkeemehxwdhdvcbwu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kgejmgiukaadjxylklyejtinwfhbmydo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"npfkusvojwdgomzelydvjqxkebxgxlds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"okiygniwcdtaxivqpfabqenvynsyrhod","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdfnpfnmganduiyfscdkwgfzymggsphz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwmtnkdqgfghdzqscncebfidrywntuih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rijjyihdieydzioiguoyufmfrgwbrgil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxrahxkwlapnwrrkwqmkwmcxgidudhau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqhnygzsbmxkcsptlngdmqhqlluazeaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sxzovqbvvvkislofeloohpdwhttixvme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yscfinxiawvbrkqkqtgjwsriomozskxe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwydixfotsvljqhtesaxkdpevkjgdjgg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"krwiwfhhszbequtrrccowhsbkqvrxrfb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qzbkjfuxyqetvofuqfgnglfshgxedwxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"neragabtsembuerjyqxnwcfzsmhpwius","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orgmxgvcomqchoowvnvzoibwwydmddrn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijteqvcmzitdimiwpwbkiganvaknpyyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wppczijhfwsulhhtdvaovmslymhxhyhq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjmoipfajxpizwbdgvjarcjcsocrslms","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drmjubwyqumzfxfehnbvqflwdsjixsdh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqcwhybqqlosfmdeynopcwyrjyrxipea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnjxtprgllfkifwvxbzhmbbpncnazbcr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vspdccsulyqedasmnqimvnupuulkrayz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzqqkkvknfpntilqnhehvtvpkntmzqag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wprxglegvybnpaecrsgmiubgfinefrwh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqgzomyraftwkpdgldsbnnzyfugykyhw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670734,"databaseName":"models_schema","ddl":"CREATE TABLE `rjjpcxwartpnkawkhzhlboqncbbgzzgx` (\n `hjizdaquosxzmzbjgslgwcrnleintnsq` int NOT NULL,\n `xcenpsvsmpbciosaohftvdfjsfqynypt` int DEFAULT NULL,\n `apmsgsaavmxcfryomwwumtsbiofzvyyo` int DEFAULT NULL,\n `yyfarkmcsyuihmiqwxenuhqoqtymtcmy` int DEFAULT NULL,\n `bnlvhpugjpeufmlvgcltzwwsakvhbxni` int DEFAULT NULL,\n `srowhvkxmoxkslloihoosrvnvqecozhw` int DEFAULT NULL,\n `qftpuhmlpznthzhehcqknlzpxlqvsqgh` int DEFAULT NULL,\n `ytkarogfifqvjlkzuvdjttrrdvtkkmpx` int DEFAULT NULL,\n `asopwampvbbncsqhllsrpqvenrumdyao` int DEFAULT NULL,\n `dnylnmajwcobhavarmjikvdvwnioneea` int DEFAULT NULL,\n `zuuyskkjgvlqvzqmoxohmmurkjcapmgm` int DEFAULT NULL,\n `ufavybhylugwxieenzybhvxtxkiwstym` int DEFAULT NULL,\n `dozzbfkxdaojlfhnwrukfgvjxzhbronn` int DEFAULT NULL,\n `ficrcittgrqlzqtpsdemchdcnlkogjzp` int DEFAULT NULL,\n `gksydyxalkrcbmqjpsrqinszhrdzgssb` int DEFAULT NULL,\n `zbkbcijbsvrotkmcqigxznbvsmrsffbb` int DEFAULT NULL,\n `qggtyjjwkpgmplfuyermabgbttknzrtg` int DEFAULT NULL,\n `xcjczlbgmgibqpauqkjjwisfkcvnqjvc` int DEFAULT NULL,\n `bksakkykiiqsqobhmvlmuuiomskzxklk` int DEFAULT NULL,\n `rlvmfqotqhlzcrkscbcynkcymnxvwhot` int DEFAULT NULL,\n `gkvruxpvlipcpvpvrrtqysijjvdtthpm` int DEFAULT NULL,\n `xeojxevdsjfxzkhogdwmtwhfqbviyqos` int DEFAULT NULL,\n `urxizobzyqhhafzviyhjmdccdjcjqvwh` int DEFAULT NULL,\n `xxdyhewojajujmzzfuzfxbovcxynoyoz` int DEFAULT NULL,\n `ncykivqgabfckeajshbiumxjiskzbbgu` int DEFAULT NULL,\n `vpuvckzkrqjubbqdhgrugmqlivtwcvbr` int DEFAULT NULL,\n `xbotwsarpqlhrhpsdcbpbyhjwdawqfbm` int DEFAULT NULL,\n `fzgjdgdkcfajrepxxgcvenaulsukohbg` int DEFAULT NULL,\n `jdyizqnroghmacjugvjmqdowcwyktiqv` int DEFAULT NULL,\n `hldzeqctkdpajiakvqvxnysnvmmmfgnt` int DEFAULT NULL,\n `boiwjphbmcglamtvyiiqfdwypysafzfh` int DEFAULT NULL,\n `vwzuecmampepmkssqpdomdybfnnjomwf` int DEFAULT NULL,\n `qukulczchzushljnaxzleiqwasibxcft` int DEFAULT NULL,\n `etofhgdimsutvteuedyeefhbfolrrwty` int DEFAULT NULL,\n `fkwyqacvihuvcpbqkervtmkxisbbdbse` int DEFAULT NULL,\n `htefmoaydvmqavlmlkxivaftzkqfoclj` int DEFAULT NULL,\n `gwvwigfjofdasalmwnrwcqzvmxmzoktt` int DEFAULT NULL,\n `gmvlbptqtuehouohnzzzesvgeubpqilz` int DEFAULT NULL,\n `emzuvarsmqcojbndxhnpmfchufoueabs` int DEFAULT NULL,\n `gkuaoopfemauatkujvbwthfyxaoacwth` int DEFAULT NULL,\n `icteaggvtdgxdrllgggphwivggoisyjn` int DEFAULT NULL,\n `aucuprruglxjlixjxgjrbkeheykmerrs` int DEFAULT NULL,\n `avutuzxjkxgwqhuonkcwlhjxfoajaugq` int DEFAULT NULL,\n `rakrlzxuwvrihcmclwimnimpsfnspazj` int DEFAULT NULL,\n `srisaoisxylixvagsitrjgesnpfofflt` int DEFAULT NULL,\n `botflczddeswtzfqcqvgmccgyzkfbpcl` int DEFAULT NULL,\n `rfdhfnmpldnijlkxdyoahfefzveyllib` int DEFAULT NULL,\n `nfgyqmzhvkymaobytlqolhbdsdfdtbkm` int DEFAULT NULL,\n `xdfadrgskhhjucbyiwlwvtuvyvadwpqr` int DEFAULT NULL,\n `scoiwhjrbeenvuvehzigrhgugaykimhz` int DEFAULT NULL,\n `ajzcjwzaczdebwpiowwxwiimcqauzhsy` int DEFAULT NULL,\n `mibnpppjfdkgolmrbcbrkmqspdjvmgmf` int DEFAULT NULL,\n `ujrvocmdtywdgblwgqjrzasifbwtjolm` int DEFAULT NULL,\n `dbvqvcbkcigpfnktlriizuiqettimpke` int DEFAULT NULL,\n `zgrnbpiscpvyfgnfgmhhhvfqrxjpfwpf` int DEFAULT NULL,\n `wvdlirmpyopdettczunjsjlhlzbnixer` int DEFAULT NULL,\n `mpwjckyjylvwmonarlnwqoysnkzbtzab` int DEFAULT NULL,\n `ajwvgjhntjibtxjaheyedihlgdpjjhaz` int DEFAULT NULL,\n `gludyixmghgsbdyvolezdenalhmuenoy` int DEFAULT NULL,\n `fmauotofyakmbxramsympdtctyyjgdwg` int DEFAULT NULL,\n `daapcomnxvjqkjubqryblwkykkwesbpy` int DEFAULT NULL,\n `bkyuaaxohqpmrudqqrtcqcjqtbfubycq` int DEFAULT NULL,\n `yxlnwbfomecetsxzkkonhgfrjvvmlfjc` int DEFAULT NULL,\n `judfmszzcdrluvbizofyjyccecooglhi` int DEFAULT NULL,\n `owckhkelrkvrksciwlkjjzeoxwfqgobm` int DEFAULT NULL,\n `dfqcysxdfcpueiooxcbnbzrwyuflrudr` int DEFAULT NULL,\n `motdcfsdpxnlnvefheyulmljnzrkhhix` int DEFAULT NULL,\n `opvnwwbofrmedvibvfaybeipqklfqdco` int DEFAULT NULL,\n `hrhrcpwginnwpsukzzgqlsaerlncpxpr` int DEFAULT NULL,\n `zdqchhugstmvlhqxdufyqmmrescqgajg` int DEFAULT NULL,\n `nemexsbagdzzzgyitsmshqwilvdocrxd` int DEFAULT NULL,\n `vaihmmcqybyqwaqofizabolsecpflmyj` int DEFAULT NULL,\n `engigqvargxowlcmcdxrjgimhvkkyghq` int DEFAULT NULL,\n `uontujqiqedggcwmagqwbbuxlxiwtakh` int DEFAULT NULL,\n `ampptdolnicgsqmutttbutbpjtqxseka` int DEFAULT NULL,\n `csmioyhwsbglrfdffxyytreatdhhorfr` int DEFAULT NULL,\n `kppquprsoceigecnfhywvninijlhdpvc` int DEFAULT NULL,\n `qyequjezfmzgyahuhdnneotmykqcdtdw` int DEFAULT NULL,\n `qbtpgqfqhzbksnxshvrooutmssctnpfj` int DEFAULT NULL,\n `vckljscrmztuufporrsdxfpezetajdqx` int DEFAULT NULL,\n `huarsntmcfocphkrucvohlwvnrulrpze` int DEFAULT NULL,\n `mrwgyqxcqbkwpydoylrannscixlkkhna` int DEFAULT NULL,\n `eyzbhotgfckguaypzdnwekqosfesyvnf` int DEFAULT NULL,\n `ibfweaihpqwzhvfxbwehdntgxcjsrxat` int DEFAULT NULL,\n `fnhfnnjfnsnkomzgcqwbofwvminbhihe` int DEFAULT NULL,\n `dtnproeqkbajfghfyjnpyuscceexmqux` int DEFAULT NULL,\n `jaakzolwxrormdbmqmvizganklzewurn` int DEFAULT NULL,\n `nogbwasptiyhovdghgvkijawumqbqloo` int DEFAULT NULL,\n `jzewaldzrqzefvqvnoqtmsacyezxbdux` int DEFAULT NULL,\n `qsnepmvzbuqptkdqnrnmbvdehcdkxwum` int DEFAULT NULL,\n `rhzunlngjasuekmfqridqjydtbprusrc` int DEFAULT NULL,\n `zqqrrfosxuvtydcrbgqfqhafmsmifoiq` int DEFAULT NULL,\n `xtdcsbnljgbubtaajgtdydifyierpmbj` int DEFAULT NULL,\n `kolhdgnpatilvavrjbdeumjqnukfbfpd` int DEFAULT NULL,\n `lswckwtwwbmhusyrmmglszuoggzpkodu` int DEFAULT NULL,\n `mhulijnywvlikxgxyoforcvosoxymhib` int DEFAULT NULL,\n `ydsddmxfruiwwrwrvdecwsdtakszgosp` int DEFAULT NULL,\n `zaiqcwnszuygeznhqyityvgmmtuvqevk` int DEFAULT NULL,\n `pwtdzfmwihkakmuhilmfnnoktdmkmekc` int DEFAULT NULL,\n `qeowxhkxlfsmnkmwsvrsgeyhydmvrlts` int DEFAULT NULL,\n PRIMARY KEY (`hjizdaquosxzmzbjgslgwcrnleintnsq`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"rjjpcxwartpnkawkhzhlboqncbbgzzgx\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["hjizdaquosxzmzbjgslgwcrnleintnsq"],"columns":[{"name":"hjizdaquosxzmzbjgslgwcrnleintnsq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"xcenpsvsmpbciosaohftvdfjsfqynypt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"apmsgsaavmxcfryomwwumtsbiofzvyyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yyfarkmcsyuihmiqwxenuhqoqtymtcmy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnlvhpugjpeufmlvgcltzwwsakvhbxni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"srowhvkxmoxkslloihoosrvnvqecozhw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qftpuhmlpznthzhehcqknlzpxlqvsqgh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytkarogfifqvjlkzuvdjttrrdvtkkmpx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"asopwampvbbncsqhllsrpqvenrumdyao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dnylnmajwcobhavarmjikvdvwnioneea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zuuyskkjgvlqvzqmoxohmmurkjcapmgm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ufavybhylugwxieenzybhvxtxkiwstym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dozzbfkxdaojlfhnwrukfgvjxzhbronn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ficrcittgrqlzqtpsdemchdcnlkogjzp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gksydyxalkrcbmqjpsrqinszhrdzgssb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbkbcijbsvrotkmcqigxznbvsmrsffbb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qggtyjjwkpgmplfuyermabgbttknzrtg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xcjczlbgmgibqpauqkjjwisfkcvnqjvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bksakkykiiqsqobhmvlmuuiomskzxklk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlvmfqotqhlzcrkscbcynkcymnxvwhot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkvruxpvlipcpvpvrrtqysijjvdtthpm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xeojxevdsjfxzkhogdwmtwhfqbviyqos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urxizobzyqhhafzviyhjmdccdjcjqvwh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxdyhewojajujmzzfuzfxbovcxynoyoz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ncykivqgabfckeajshbiumxjiskzbbgu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpuvckzkrqjubbqdhgrugmqlivtwcvbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbotwsarpqlhrhpsdcbpbyhjwdawqfbm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzgjdgdkcfajrepxxgcvenaulsukohbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdyizqnroghmacjugvjmqdowcwyktiqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hldzeqctkdpajiakvqvxnysnvmmmfgnt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"boiwjphbmcglamtvyiiqfdwypysafzfh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vwzuecmampepmkssqpdomdybfnnjomwf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qukulczchzushljnaxzleiqwasibxcft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"etofhgdimsutvteuedyeefhbfolrrwty","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fkwyqacvihuvcpbqkervtmkxisbbdbse","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"htefmoaydvmqavlmlkxivaftzkqfoclj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gwvwigfjofdasalmwnrwcqzvmxmzoktt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmvlbptqtuehouohnzzzesvgeubpqilz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"emzuvarsmqcojbndxhnpmfchufoueabs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkuaoopfemauatkujvbwthfyxaoacwth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icteaggvtdgxdrllgggphwivggoisyjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aucuprruglxjlixjxgjrbkeheykmerrs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avutuzxjkxgwqhuonkcwlhjxfoajaugq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rakrlzxuwvrihcmclwimnimpsfnspazj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"srisaoisxylixvagsitrjgesnpfofflt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"botflczddeswtzfqcqvgmccgyzkfbpcl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfdhfnmpldnijlkxdyoahfefzveyllib","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfgyqmzhvkymaobytlqolhbdsdfdtbkm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdfadrgskhhjucbyiwlwvtuvyvadwpqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"scoiwhjrbeenvuvehzigrhgugaykimhz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajzcjwzaczdebwpiowwxwiimcqauzhsy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mibnpppjfdkgolmrbcbrkmqspdjvmgmf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujrvocmdtywdgblwgqjrzasifbwtjolm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbvqvcbkcigpfnktlriizuiqettimpke","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zgrnbpiscpvyfgnfgmhhhvfqrxjpfwpf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wvdlirmpyopdettczunjsjlhlzbnixer","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpwjckyjylvwmonarlnwqoysnkzbtzab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajwvgjhntjibtxjaheyedihlgdpjjhaz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gludyixmghgsbdyvolezdenalhmuenoy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmauotofyakmbxramsympdtctyyjgdwg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"daapcomnxvjqkjubqryblwkykkwesbpy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkyuaaxohqpmrudqqrtcqcjqtbfubycq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxlnwbfomecetsxzkkonhgfrjvvmlfjc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"judfmszzcdrluvbizofyjyccecooglhi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owckhkelrkvrksciwlkjjzeoxwfqgobm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dfqcysxdfcpueiooxcbnbzrwyuflrudr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"motdcfsdpxnlnvefheyulmljnzrkhhix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opvnwwbofrmedvibvfaybeipqklfqdco","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hrhrcpwginnwpsukzzgqlsaerlncpxpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdqchhugstmvlhqxdufyqmmrescqgajg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nemexsbagdzzzgyitsmshqwilvdocrxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vaihmmcqybyqwaqofizabolsecpflmyj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"engigqvargxowlcmcdxrjgimhvkkyghq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uontujqiqedggcwmagqwbbuxlxiwtakh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ampptdolnicgsqmutttbutbpjtqxseka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"csmioyhwsbglrfdffxyytreatdhhorfr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kppquprsoceigecnfhywvninijlhdpvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qyequjezfmzgyahuhdnneotmykqcdtdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qbtpgqfqhzbksnxshvrooutmssctnpfj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vckljscrmztuufporrsdxfpezetajdqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"huarsntmcfocphkrucvohlwvnrulrpze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrwgyqxcqbkwpydoylrannscixlkkhna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eyzbhotgfckguaypzdnwekqosfesyvnf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibfweaihpqwzhvfxbwehdntgxcjsrxat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnhfnnjfnsnkomzgcqwbofwvminbhihe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtnproeqkbajfghfyjnpyuscceexmqux","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jaakzolwxrormdbmqmvizganklzewurn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nogbwasptiyhovdghgvkijawumqbqloo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jzewaldzrqzefvqvnoqtmsacyezxbdux","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qsnepmvzbuqptkdqnrnmbvdehcdkxwum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhzunlngjasuekmfqridqjydtbprusrc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqqrrfosxuvtydcrbgqfqhafmsmifoiq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xtdcsbnljgbubtaajgtdydifyierpmbj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kolhdgnpatilvavrjbdeumjqnukfbfpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lswckwtwwbmhusyrmmglszuoggzpkodu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhulijnywvlikxgxyoforcvosoxymhib","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydsddmxfruiwwrwrvdecwsdtakszgosp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zaiqcwnszuygeznhqyityvgmmtuvqevk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwtdzfmwihkakmuhilmfnnoktdmkmekc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qeowxhkxlfsmnkmwsvrsgeyhydmvrlts","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670765,"databaseName":"models_schema","ddl":"CREATE TABLE `rklsysjbbggcyaheggpsezportemxlmu` (\n `torizvmmijgolgkoxkawvfdpjutslegi` int NOT NULL,\n `ypqorfecxnpcbqzxieycahvzspjwwrng` int DEFAULT NULL,\n `srojdrjflerwfdzdjkublsbwaukarhps` int DEFAULT NULL,\n `woavvyjkxqfigdmntewbayhkpalhdncj` int DEFAULT NULL,\n `innorkndjnyusfycebppzwhcprebgfzj` int DEFAULT NULL,\n `agzlnjulqpngwihnscprnvxifvmkjtlk` int DEFAULT NULL,\n `msrziujyxpacuhyhibxkvanhcygamvgc` int DEFAULT NULL,\n `jcdutuwenmythhlzadhirhjonsnszexw` int DEFAULT NULL,\n `ndfalcomzvkwfogjgktorzkvqaqoeahn` int DEFAULT NULL,\n `jiowijxjwwrgttklojgvvdgjjoexpols` int DEFAULT NULL,\n `mtlprfmrmuprqfpybsuemysshaiivlsk` int DEFAULT NULL,\n `kaiyxovaibtkbeqvoyrkcdsuytpfuqrz` int DEFAULT NULL,\n `ydclamijmrkkzgyxipstxughmfsxfiih` int DEFAULT NULL,\n `dyoiximxjizhvegvgnyvyntmsyjwxrcx` int DEFAULT NULL,\n `ihclknrtbvfsjoekhavyvbhygycnurvg` int DEFAULT NULL,\n `bbotdqsnipzvzowfkwysdueiltadddlz` int DEFAULT NULL,\n `uylcosidyvznpdodyvjplbdsketnljop` int DEFAULT NULL,\n `kakyptfaqllswimirqnvlckbygfvsezx` int DEFAULT NULL,\n `lxiivzggqypabdrcpdquacwpufvysvzh` int DEFAULT NULL,\n `ifwzkrvdwcomphhohgqnsszcnnpfrqpj` int DEFAULT NULL,\n `vswemhqykaxsgzrllbdihjcrrasztsgw` int DEFAULT NULL,\n `amkallxzfozjtunnjvfbpctrpvxgakyg` int DEFAULT NULL,\n `xjapufzufdudoxeyfpbicjzhmoyzeujd` int DEFAULT NULL,\n `qltpklsxcnmbmcujnysxucbwfnwpbctu` int DEFAULT NULL,\n `guttznruwdehskfyryaksjvabyadupmr` int DEFAULT NULL,\n `ctokmzeprvjcceckkogbjkcshfmtebtz` int DEFAULT NULL,\n `dndmbeyngldygvemoaytwcsawhlrlckr` int DEFAULT NULL,\n `idhyqeqhkubmqalhkmpvdvhcglvuncru` int DEFAULT NULL,\n `uqudtbxththrghhombwfenshbjiyujgp` int DEFAULT NULL,\n `imgyeryckawptacvajsnfrbifxpspubw` int DEFAULT NULL,\n `oupcmvavnxitcmyhgvtordfpavvhfqqw` int DEFAULT NULL,\n `sappwtybodbyvhberecwdkpvugzmijcr` int DEFAULT NULL,\n `itawnurbcbeoioufepfhweyzeiicybgr` int DEFAULT NULL,\n `rfngumwqpbynzxalusmgdcbirhkfstrq` int DEFAULT NULL,\n `aauutdsrmdezrgsotvcebauymlqtcgev` int DEFAULT NULL,\n `haupjqwanzfieezjklfuggghwqezlzud` int DEFAULT NULL,\n `vgprxmivwvmvyuhuvxiinamkgjntpaqm` int DEFAULT NULL,\n `wukgwcnatxxjfiugncpnmeflywerfwmf` int DEFAULT NULL,\n `tbhtxkobdujzonexfypaejvdzoismrms` int DEFAULT NULL,\n `jkzltlcuqhjnmglndsbwcaliugjcnanm` int DEFAULT NULL,\n `bbeiiahpsvbhyufycacqsogdxjynwvkn` int DEFAULT NULL,\n `bckkrfowlxhlthjrqorghjioybtgrpdg` int DEFAULT NULL,\n `fpdqmkrpststtlvyqmtuvzkaocfusequ` int DEFAULT NULL,\n `aalqmjmdbfmxaskixevhcjrclvuqtaww` int DEFAULT NULL,\n `osfqnzhdiyaswjuuxnucluvjpkqkkozy` int DEFAULT NULL,\n `hldsituasrkdzmprvnrjwpazowakepga` int DEFAULT NULL,\n `giuhgihzjwkovkeltruzywsynevgrpdq` int DEFAULT NULL,\n `oddldypqltwmerckajpynbqkdukysgcq` int DEFAULT NULL,\n `hdwavctejxykwiwfjhiffejtacdwiqen` int DEFAULT NULL,\n `rgpmcxtyezprzallihpvvwngwiuxehlx` int DEFAULT NULL,\n `dguuksdnqkyfkrqfcwtahlhqgsgicwpm` int DEFAULT NULL,\n `nzzkflvmqvjujgglvmmjbnjmifdcwidc` int DEFAULT NULL,\n `brfzazdtasfkgaentnqhfladnhjthhps` int DEFAULT NULL,\n `xoeellukluvcdmhmfnuttdawppsrulry` int DEFAULT NULL,\n `rtapqphyhvovthrbqelriybzlpyfslbg` int DEFAULT NULL,\n `rbegishoabumoinageseualncltpapnz` int DEFAULT NULL,\n `ilklvoemmmzrrgofalgbvgoeyozlzjth` int DEFAULT NULL,\n `trjhdsnwhuixsiniscqixzilrgecbbyf` int DEFAULT NULL,\n `aujejzwldcjcawledbvsfojwwwabbluq` int DEFAULT NULL,\n `bnanilpenofkgxecaqbvgshtdmspntmi` int DEFAULT NULL,\n `qcuxesartaqjfzoolwqkxshdwjgtqntv` int DEFAULT NULL,\n `dgziqbijfdklgjkexygbcqrgsunwvkcq` int DEFAULT NULL,\n `sqhucywdhvdfsuvbvegmadheozusapud` int DEFAULT NULL,\n `utjbfvxipvbzkwyogkozbcvoplgbrxzc` int DEFAULT NULL,\n `tdgbhzefcxdrwqwhwwcxdlwwtonaakpp` int DEFAULT NULL,\n `eqlaicfxcdsxkxsgjeifodlgjkzxgryt` int DEFAULT NULL,\n `eaudtpjpztboamltacqbpfehjlszqprz` int DEFAULT NULL,\n `olkbhyhpeplasoqaxkfcvyqlmllgavdh` int DEFAULT NULL,\n `fprevpwrceeyvgmbnvrpercuahznndhz` int DEFAULT NULL,\n `jmamthqjewbbxgfmgkwaqrdfihbitrpv` int DEFAULT NULL,\n `dlwlqymnhrtdipaaogpqaejvysiemyri` int DEFAULT NULL,\n `bwuryqwbgwgqijbtrywdlxgegpretutf` int DEFAULT NULL,\n `yobohhytgsiacljjoremgxassbcfidlt` int DEFAULT NULL,\n `nlzopojutltlhckswqacozoxcnqxphhg` int DEFAULT NULL,\n `krglxouyjmgzgtbxetokqcsoyrhocyid` int DEFAULT NULL,\n `svgvdvraozjeusnuydmnryydhmadihwp` int DEFAULT NULL,\n `siwjwfxeagwjsbaktupijvjjohzrqtgu` int DEFAULT NULL,\n `ylsjkesiyjufztxdtgkdymsfqxpxvpla` int DEFAULT NULL,\n `qzauxetevaqktgipfcpefmkutdpforov` int DEFAULT NULL,\n `wmnmfmlfjywjzdvxfqyetcsccqpxefgx` int DEFAULT NULL,\n `mfshzklkqjiwtccsxmzcnfbsihmuwmrj` int DEFAULT NULL,\n `ubgfnoypwlxxsgjqnvhtlgodkiwboxqc` int DEFAULT NULL,\n `jxlmeafwemuskpwdttiftaixkacfizan` int DEFAULT NULL,\n `obrccwddpatpsbiugzsegibxobntpcoc` int DEFAULT NULL,\n `mgehzmygjaheynzvykykbgstmraykuob` int DEFAULT NULL,\n `udqnaomzjvkobkutdwagjzrwjuwqedmo` int DEFAULT NULL,\n `jialfsremtflyvhnhzwbqzhhnytrlmpr` int DEFAULT NULL,\n `fzsuxjeugezzutfauyftbsfklgbfmwrc` int DEFAULT NULL,\n `kagdlicoiotpvnljqchlnataptdzjxbt` int DEFAULT NULL,\n `zkiwmdocvklzntucmspohrnwvoygxmbr` int DEFAULT NULL,\n `kriidarsaoscjscfyeaexksconpfrojw` int DEFAULT NULL,\n `weqoabiynnhwcrebetzvdbjuenehkqme` int DEFAULT NULL,\n `zxurnendqswsqauydyqflsckpmxhiypk` int DEFAULT NULL,\n `rbhrmwzsvpuxeijymgqhvuxrruipyqqa` int DEFAULT NULL,\n `ejzfbihppowsherppuydttzitnzrvbuq` int DEFAULT NULL,\n `ftirjchlmcbtvqpaimvfxyesmamksccc` int DEFAULT NULL,\n `dtzzyrjctcyycjwftcjxthxiyfqrtwyu` int DEFAULT NULL,\n `qnhwcnfefdrwwlbwlsbsimensellmofr` int DEFAULT NULL,\n `jfzhzvhdkdwkpvkuvtofrolbkmzptobs` int DEFAULT NULL,\n `lmusvbuvbshhvjlcykzpzxmopefemoct` int DEFAULT NULL,\n PRIMARY KEY (`torizvmmijgolgkoxkawvfdpjutslegi`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"rklsysjbbggcyaheggpsezportemxlmu\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["torizvmmijgolgkoxkawvfdpjutslegi"],"columns":[{"name":"torizvmmijgolgkoxkawvfdpjutslegi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"ypqorfecxnpcbqzxieycahvzspjwwrng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"srojdrjflerwfdzdjkublsbwaukarhps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"woavvyjkxqfigdmntewbayhkpalhdncj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"innorkndjnyusfycebppzwhcprebgfzj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agzlnjulqpngwihnscprnvxifvmkjtlk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"msrziujyxpacuhyhibxkvanhcygamvgc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jcdutuwenmythhlzadhirhjonsnszexw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ndfalcomzvkwfogjgktorzkvqaqoeahn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jiowijxjwwrgttklojgvvdgjjoexpols","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtlprfmrmuprqfpybsuemysshaiivlsk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kaiyxovaibtkbeqvoyrkcdsuytpfuqrz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydclamijmrkkzgyxipstxughmfsxfiih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dyoiximxjizhvegvgnyvyntmsyjwxrcx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ihclknrtbvfsjoekhavyvbhygycnurvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbotdqsnipzvzowfkwysdueiltadddlz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uylcosidyvznpdodyvjplbdsketnljop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kakyptfaqllswimirqnvlckbygfvsezx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxiivzggqypabdrcpdquacwpufvysvzh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ifwzkrvdwcomphhohgqnsszcnnpfrqpj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vswemhqykaxsgzrllbdihjcrrasztsgw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"amkallxzfozjtunnjvfbpctrpvxgakyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjapufzufdudoxeyfpbicjzhmoyzeujd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qltpklsxcnmbmcujnysxucbwfnwpbctu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"guttznruwdehskfyryaksjvabyadupmr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctokmzeprvjcceckkogbjkcshfmtebtz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dndmbeyngldygvemoaytwcsawhlrlckr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idhyqeqhkubmqalhkmpvdvhcglvuncru","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqudtbxththrghhombwfenshbjiyujgp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"imgyeryckawptacvajsnfrbifxpspubw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oupcmvavnxitcmyhgvtordfpavvhfqqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sappwtybodbyvhberecwdkpvugzmijcr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itawnurbcbeoioufepfhweyzeiicybgr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfngumwqpbynzxalusmgdcbirhkfstrq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aauutdsrmdezrgsotvcebauymlqtcgev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"haupjqwanzfieezjklfuggghwqezlzud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgprxmivwvmvyuhuvxiinamkgjntpaqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wukgwcnatxxjfiugncpnmeflywerfwmf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbhtxkobdujzonexfypaejvdzoismrms","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jkzltlcuqhjnmglndsbwcaliugjcnanm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbeiiahpsvbhyufycacqsogdxjynwvkn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bckkrfowlxhlthjrqorghjioybtgrpdg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpdqmkrpststtlvyqmtuvzkaocfusequ","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aalqmjmdbfmxaskixevhcjrclvuqtaww","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"osfqnzhdiyaswjuuxnucluvjpkqkkozy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hldsituasrkdzmprvnrjwpazowakepga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"giuhgihzjwkovkeltruzywsynevgrpdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oddldypqltwmerckajpynbqkdukysgcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdwavctejxykwiwfjhiffejtacdwiqen","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgpmcxtyezprzallihpvvwngwiuxehlx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dguuksdnqkyfkrqfcwtahlhqgsgicwpm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzzkflvmqvjujgglvmmjbnjmifdcwidc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"brfzazdtasfkgaentnqhfladnhjthhps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xoeellukluvcdmhmfnuttdawppsrulry","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rtapqphyhvovthrbqelriybzlpyfslbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbegishoabumoinageseualncltpapnz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ilklvoemmmzrrgofalgbvgoeyozlzjth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"trjhdsnwhuixsiniscqixzilrgecbbyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aujejzwldcjcawledbvsfojwwwabbluq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnanilpenofkgxecaqbvgshtdmspntmi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qcuxesartaqjfzoolwqkxshdwjgtqntv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgziqbijfdklgjkexygbcqrgsunwvkcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sqhucywdhvdfsuvbvegmadheozusapud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utjbfvxipvbzkwyogkozbcvoplgbrxzc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tdgbhzefcxdrwqwhwwcxdlwwtonaakpp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqlaicfxcdsxkxsgjeifodlgjkzxgryt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eaudtpjpztboamltacqbpfehjlszqprz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"olkbhyhpeplasoqaxkfcvyqlmllgavdh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fprevpwrceeyvgmbnvrpercuahznndhz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmamthqjewbbxgfmgkwaqrdfihbitrpv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dlwlqymnhrtdipaaogpqaejvysiemyri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bwuryqwbgwgqijbtrywdlxgegpretutf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yobohhytgsiacljjoremgxassbcfidlt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nlzopojutltlhckswqacozoxcnqxphhg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"krglxouyjmgzgtbxetokqcsoyrhocyid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"svgvdvraozjeusnuydmnryydhmadihwp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"siwjwfxeagwjsbaktupijvjjohzrqtgu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ylsjkesiyjufztxdtgkdymsfqxpxvpla","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qzauxetevaqktgipfcpefmkutdpforov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmnmfmlfjywjzdvxfqyetcsccqpxefgx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mfshzklkqjiwtccsxmzcnfbsihmuwmrj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubgfnoypwlxxsgjqnvhtlgodkiwboxqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jxlmeafwemuskpwdttiftaixkacfizan","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obrccwddpatpsbiugzsegibxobntpcoc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mgehzmygjaheynzvykykbgstmraykuob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udqnaomzjvkobkutdwagjzrwjuwqedmo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jialfsremtflyvhnhzwbqzhhnytrlmpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzsuxjeugezzutfauyftbsfklgbfmwrc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kagdlicoiotpvnljqchlnataptdzjxbt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zkiwmdocvklzntucmspohrnwvoygxmbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kriidarsaoscjscfyeaexksconpfrojw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"weqoabiynnhwcrebetzvdbjuenehkqme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxurnendqswsqauydyqflsckpmxhiypk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbhrmwzsvpuxeijymgqhvuxrruipyqqa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejzfbihppowsherppuydttzitnzrvbuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftirjchlmcbtvqpaimvfxyesmamksccc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtzzyrjctcyycjwftcjxthxiyfqrtwyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qnhwcnfefdrwwlbwlsbsimensellmofr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jfzhzvhdkdwkpvkuvtofrolbkmzptobs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmusvbuvbshhvjlcykzpzxmopefemoct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670795,"databaseName":"models_schema","ddl":"CREATE TABLE `rlpjqdqhwzurijhocbkdpovoiiqctrve` (\n `sjmcbpsrcsuswqxcptvarwcfkiqphyxv` int NOT NULL,\n `edfoszifsfyeznkjzowjwudmcpiwaiaz` int DEFAULT NULL,\n `znaphmhxhkdridihhadohgxugrpbdziq` int DEFAULT NULL,\n `tcffmqcikzaiebjlmmyhsftpzfaveuth` int DEFAULT NULL,\n `eulvfukubzucyxgzyfovjucbhqgxrqxt` int DEFAULT NULL,\n `aahaozognkhsemjtsgzfpzabxtznyqwi` int DEFAULT NULL,\n `xsciyxkqznqaqkonmrfxlhmuomtwbgfj` int DEFAULT NULL,\n `effaiygochrmgeetkyxwiqregrepaguu` int DEFAULT NULL,\n `cuounpmpxfsbbyzhjavsabfqzdbfohhe` int DEFAULT NULL,\n `kwvdwlrejkdxyizfztboggwigktpjxef` int DEFAULT NULL,\n `ohhatdvpziaybeeedukzacgmmigmgmxn` int DEFAULT NULL,\n `mlgumwosjlsdmalftziidoubioawkmvy` int DEFAULT NULL,\n `zrntbilfevzzltbicgzenggwxehgxyhn` int DEFAULT NULL,\n `lssbnffpydpqwohojhqjkwhpfkpmbdup` int DEFAULT NULL,\n `wfhcknmnlysubvhmmjbckoiiazgqxvns` int DEFAULT NULL,\n `ucnnvlwvxgsnwdnttiipgmctvuxkztfs` int DEFAULT NULL,\n `cnpoowwjesbgzwdanwicxrehldfdflas` int DEFAULT NULL,\n `jeycoowquxtmpcutllguhgagjophiyih` int DEFAULT NULL,\n `nzftapaimhaoaxogaqjqxcumeocmdxfl` int DEFAULT NULL,\n `auaajgvlchzscgulztvcmnithenwokjt` int DEFAULT NULL,\n `uzfrnxobdfzexdzzlryxkrkibkkeuwfj` int DEFAULT NULL,\n `viyzlrwnkqeydjzruwqpxggxluhwyxbq` int DEFAULT NULL,\n `wdspkfzlttcihcgbvcgvmfxzjssviiye` int DEFAULT NULL,\n `xnuilmquurqugkykjsucooxnjxubdxkn` int DEFAULT NULL,\n `ihtdrwpeimkqrplcaalpfpiepetjxzuf` int DEFAULT NULL,\n `smhjjxkqhiqsazmupnonpnjifzjgoblb` int DEFAULT NULL,\n `wuydkvzslcbemxqiprvxnijyebyerjym` int DEFAULT NULL,\n `kfujtkwuyjcewptxilizhsyoynqsslck` int DEFAULT NULL,\n `vdjbngwlkdkcxqujauvebbulvuofdhvu` int DEFAULT NULL,\n `xvcapzltldxwdvrsperhhcufpeuoiqcw` int DEFAULT NULL,\n `rgryjqrbkvwryhlyzxqqffpsriweclsv` int DEFAULT NULL,\n `bxphemhmmifogqnobxlnbxgdegkholex` int DEFAULT NULL,\n `yhcrgaxpgcnuxgonjwgvtgnyqlroqthl` int DEFAULT NULL,\n `hjzpvuilwsuvxhgthbkziunxbexcfpii` int DEFAULT NULL,\n `bpgyqriodcyyljottjfblsykdlznfwke` int DEFAULT NULL,\n `qpfbyxuihkdqlpvdpjtgoqjkefcchoxt` int DEFAULT NULL,\n `gjvcifswjndasqskbysnxbhmtwqbtgym` int DEFAULT NULL,\n `jlxhulchvwxqiofpzvfimengorpmuhlc` int DEFAULT NULL,\n `davlmapkuxoxzksnwspecvefrznysvye` int DEFAULT NULL,\n `hbumymbdetilpfaocdercsrtfdolicxj` int DEFAULT NULL,\n `hjpszvlagcbqbmtzbhrpuhszgondktbp` int DEFAULT NULL,\n `rpwnpnnkunyhqpbnwgwupdsfrlwlalgr` int DEFAULT NULL,\n `yzuwztfpdtrnsctqtwzigaoejfiqwebp` int DEFAULT NULL,\n `zjpfgutcrirpfdnfyvedatzireejquyl` int DEFAULT NULL,\n `eahmqkydnsvgekfywfzruqgcwryasbux` int DEFAULT NULL,\n `eguotjobjxgqzkgcwjpgwukvybmbtzfo` int DEFAULT NULL,\n `rtdathkygfhdjshouympwokurnifddvx` int DEFAULT NULL,\n `hvfytcpwjcoakhthdwbbzbnxzbrpawcz` int DEFAULT NULL,\n `riwdbqmesdoylzugqqwlkpkjtsygollo` int DEFAULT NULL,\n `xmchbmohxzlfpmwbbkkhjfvxuwrxtskl` int DEFAULT NULL,\n `njmdfnvtxcxsfmazzuvcseplbrrmhcyg` int DEFAULT NULL,\n `bbfvlgkcvrlzzrormizroeqfflckoxac` int DEFAULT NULL,\n `dbnvnvovekahpjtrjojgyybwbqlscgyb` int DEFAULT NULL,\n `cwdwzjzhhijgcykxxjpsnowgpgabzbwa` int DEFAULT NULL,\n `kjftvdpsaidtukfyhrbnrflzvchucnkb` int DEFAULT NULL,\n `uksiyrgybquickxlxyhkmjfbrjotsqpe` int DEFAULT NULL,\n `jrqpyvypnuihooaetijyzneheqdhzxhu` int DEFAULT NULL,\n `prhjruvdthbgfmlusjlzsctnhsgoanru` int DEFAULT NULL,\n `pjkwkmkergroayfkugrbqriylfzawqga` int DEFAULT NULL,\n `xkpvkmcrvqauvgfttyqeegedqbzuxpoa` int DEFAULT NULL,\n `sfcjmzendlutfvhungyefwafvrazeame` int DEFAULT NULL,\n `enhygatfvkdhpeungcydwtrkwxatgsfd` int DEFAULT NULL,\n `qvdbnorinlqyqakjztgszzvuxtfxmpnv` int DEFAULT NULL,\n `datzuclghhxvcyrlhzxdcihldqwonrew` int DEFAULT NULL,\n `zuxedbcqzyfyqjrnhdcgqmyrtjtejljh` int DEFAULT NULL,\n `xipqxuiovesihnaiuxcjvgfshzdhjalj` int DEFAULT NULL,\n `ovxzpdwtxcykcnhradhaymuwplhlqjvf` int DEFAULT NULL,\n `ypivapwdpmmvylhzsclegkyeexbhimpy` int DEFAULT NULL,\n `qlpulgqsdiufcacsgsigzxtbapaoppaw` int DEFAULT NULL,\n `vlswwjveydizbakdufyzeuitajiollak` int DEFAULT NULL,\n `xibbprryqbcpkovpuajhkhfeagisszbd` int DEFAULT NULL,\n `gqhglnqrsvoawvwggkrsviotxfjdaaaw` int DEFAULT NULL,\n `gnhhdfjkygduobijufgllxmsjlhpqxpn` int DEFAULT NULL,\n `grtieqjimqgrjjhtdoqtavrsbgqtdgbd` int DEFAULT NULL,\n `uveagboutqyseahtdgxcnwsdomwzzznp` int DEFAULT NULL,\n `reodqhezqzhkjibpahbykepzxbsweeqz` int DEFAULT NULL,\n `wurrocugobneielhwgktsxtqnarbdygl` int DEFAULT NULL,\n `xgllkivspzffosgbhjfbsgcmrkydjvet` int DEFAULT NULL,\n `clubthebwmfahwxpftovnqrjmplywyun` int DEFAULT NULL,\n `xccmrksdftjfklpiupaosmodxsckiuyh` int DEFAULT NULL,\n `nyshjpdcdzsswkvnxniottkyshruawwl` int DEFAULT NULL,\n `drxqrcybxtqhaceqqmanclbxmwokqwgr` int DEFAULT NULL,\n `hqumzkrdctkmgmssouxktveujioutuch` int DEFAULT NULL,\n `rnweqeblyatonddwwbhmdtsbtgrqilkm` int DEFAULT NULL,\n `tdabwwyctjpnztsluycjfathfkzongvq` int DEFAULT NULL,\n `mgpqlgpjuvtnjpvmmwygefkdqobqdkjv` int DEFAULT NULL,\n `onnytnbhojgxpxozkpozoyjoolahqjkb` int DEFAULT NULL,\n `ibvzcgmqnbwhqxcyduryoxmjbntggbfx` int DEFAULT NULL,\n `oqcrdidnithmcviddfrwnzhvhtcybofh` int DEFAULT NULL,\n `vsrpabfhtnfolsxydlogvawbrcyuvmkd` int DEFAULT NULL,\n `bifzpukndchovfrzjichbvroyozdqucw` int DEFAULT NULL,\n `gwsdnkmhqizlvphbrxkqncmxfihdlels` int DEFAULT NULL,\n `kmnlnqphcpnjzldhwdktwlxcrylqjech` int DEFAULT NULL,\n `irlttamfnjyobbjvorvksavrohpjnpbp` int DEFAULT NULL,\n `rbbsngdzoswdwyjzefxzcxgalyfijukq` int DEFAULT NULL,\n `vscurpnbahwuvyldsqmexawxmramkxmu` int DEFAULT NULL,\n `xaersnmowuyuqvtrbtzebfsyimkegxfh` int DEFAULT NULL,\n `bouxopaukfsbpdmbuocxnzqssxjrhzvc` int DEFAULT NULL,\n `lsrrjygruuuikmtphiydfwzkzohnkwmh` int DEFAULT NULL,\n `affbzzbfxqlauhfivwbibwhqrwxhgpdp` int DEFAULT NULL,\n PRIMARY KEY (`sjmcbpsrcsuswqxcptvarwcfkiqphyxv`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"rlpjqdqhwzurijhocbkdpovoiiqctrve\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["sjmcbpsrcsuswqxcptvarwcfkiqphyxv"],"columns":[{"name":"sjmcbpsrcsuswqxcptvarwcfkiqphyxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"edfoszifsfyeznkjzowjwudmcpiwaiaz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znaphmhxhkdridihhadohgxugrpbdziq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tcffmqcikzaiebjlmmyhsftpzfaveuth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eulvfukubzucyxgzyfovjucbhqgxrqxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aahaozognkhsemjtsgzfpzabxtznyqwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsciyxkqznqaqkonmrfxlhmuomtwbgfj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"effaiygochrmgeetkyxwiqregrepaguu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cuounpmpxfsbbyzhjavsabfqzdbfohhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwvdwlrejkdxyizfztboggwigktpjxef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohhatdvpziaybeeedukzacgmmigmgmxn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mlgumwosjlsdmalftziidoubioawkmvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zrntbilfevzzltbicgzenggwxehgxyhn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lssbnffpydpqwohojhqjkwhpfkpmbdup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfhcknmnlysubvhmmjbckoiiazgqxvns","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ucnnvlwvxgsnwdnttiipgmctvuxkztfs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnpoowwjesbgzwdanwicxrehldfdflas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jeycoowquxtmpcutllguhgagjophiyih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzftapaimhaoaxogaqjqxcumeocmdxfl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"auaajgvlchzscgulztvcmnithenwokjt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzfrnxobdfzexdzzlryxkrkibkkeuwfj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"viyzlrwnkqeydjzruwqpxggxluhwyxbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wdspkfzlttcihcgbvcgvmfxzjssviiye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnuilmquurqugkykjsucooxnjxubdxkn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ihtdrwpeimkqrplcaalpfpiepetjxzuf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smhjjxkqhiqsazmupnonpnjifzjgoblb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wuydkvzslcbemxqiprvxnijyebyerjym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfujtkwuyjcewptxilizhsyoynqsslck","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdjbngwlkdkcxqujauvebbulvuofdhvu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvcapzltldxwdvrsperhhcufpeuoiqcw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgryjqrbkvwryhlyzxqqffpsriweclsv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bxphemhmmifogqnobxlnbxgdegkholex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhcrgaxpgcnuxgonjwgvtgnyqlroqthl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjzpvuilwsuvxhgthbkziunxbexcfpii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bpgyqriodcyyljottjfblsykdlznfwke","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qpfbyxuihkdqlpvdpjtgoqjkefcchoxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjvcifswjndasqskbysnxbhmtwqbtgym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlxhulchvwxqiofpzvfimengorpmuhlc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"davlmapkuxoxzksnwspecvefrznysvye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbumymbdetilpfaocdercsrtfdolicxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjpszvlagcbqbmtzbhrpuhszgondktbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpwnpnnkunyhqpbnwgwupdsfrlwlalgr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzuwztfpdtrnsctqtwzigaoejfiqwebp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjpfgutcrirpfdnfyvedatzireejquyl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eahmqkydnsvgekfywfzruqgcwryasbux","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eguotjobjxgqzkgcwjpgwukvybmbtzfo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rtdathkygfhdjshouympwokurnifddvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hvfytcpwjcoakhthdwbbzbnxzbrpawcz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"riwdbqmesdoylzugqqwlkpkjtsygollo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xmchbmohxzlfpmwbbkkhjfvxuwrxtskl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njmdfnvtxcxsfmazzuvcseplbrrmhcyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbfvlgkcvrlzzrormizroeqfflckoxac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbnvnvovekahpjtrjojgyybwbqlscgyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwdwzjzhhijgcykxxjpsnowgpgabzbwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjftvdpsaidtukfyhrbnrflzvchucnkb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uksiyrgybquickxlxyhkmjfbrjotsqpe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jrqpyvypnuihooaetijyzneheqdhzxhu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prhjruvdthbgfmlusjlzsctnhsgoanru","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjkwkmkergroayfkugrbqriylfzawqga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkpvkmcrvqauvgfttyqeegedqbzuxpoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfcjmzendlutfvhungyefwafvrazeame","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"enhygatfvkdhpeungcydwtrkwxatgsfd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvdbnorinlqyqakjztgszzvuxtfxmpnv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"datzuclghhxvcyrlhzxdcihldqwonrew","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zuxedbcqzyfyqjrnhdcgqmyrtjtejljh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xipqxuiovesihnaiuxcjvgfshzdhjalj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovxzpdwtxcykcnhradhaymuwplhlqjvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypivapwdpmmvylhzsclegkyeexbhimpy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qlpulgqsdiufcacsgsigzxtbapaoppaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vlswwjveydizbakdufyzeuitajiollak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xibbprryqbcpkovpuajhkhfeagisszbd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqhglnqrsvoawvwggkrsviotxfjdaaaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnhhdfjkygduobijufgllxmsjlhpqxpn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grtieqjimqgrjjhtdoqtavrsbgqtdgbd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uveagboutqyseahtdgxcnwsdomwzzznp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"reodqhezqzhkjibpahbykepzxbsweeqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wurrocugobneielhwgktsxtqnarbdygl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xgllkivspzffosgbhjfbsgcmrkydjvet","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"clubthebwmfahwxpftovnqrjmplywyun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xccmrksdftjfklpiupaosmodxsckiuyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nyshjpdcdzsswkvnxniottkyshruawwl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drxqrcybxtqhaceqqmanclbxmwokqwgr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqumzkrdctkmgmssouxktveujioutuch","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnweqeblyatonddwwbhmdtsbtgrqilkm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tdabwwyctjpnztsluycjfathfkzongvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mgpqlgpjuvtnjpvmmwygefkdqobqdkjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"onnytnbhojgxpxozkpozoyjoolahqjkb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibvzcgmqnbwhqxcyduryoxmjbntggbfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqcrdidnithmcviddfrwnzhvhtcybofh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsrpabfhtnfolsxydlogvawbrcyuvmkd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bifzpukndchovfrzjichbvroyozdqucw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gwsdnkmhqizlvphbrxkqncmxfihdlels","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kmnlnqphcpnjzldhwdktwlxcrylqjech","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"irlttamfnjyobbjvorvksavrohpjnpbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbbsngdzoswdwyjzefxzcxgalyfijukq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vscurpnbahwuvyldsqmexawxmramkxmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xaersnmowuyuqvtrbtzebfsyimkegxfh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bouxopaukfsbpdmbuocxnzqssxjrhzvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lsrrjygruuuikmtphiydfwzkzohnkwmh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"affbzzbfxqlauhfivwbibwhqrwxhgpdp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670827,"databaseName":"models_schema","ddl":"CREATE TABLE `rmacnjxgjbzdfqdleytznzmsuzvkdjrq` (\n `ndvxyfllpuhaeksiqkjbxatcaoyobzpm` int NOT NULL,\n `ivxvtxaoolrwxcxtlqdcwpjjuukrshie` int DEFAULT NULL,\n `bcbmyzjbdtnnpaiqtutnohjysaedzrvw` int DEFAULT NULL,\n `ovktemtdmqoylrfwklaswzontwghxoxx` int DEFAULT NULL,\n `nbxchtycsrlsuqvnicizdynidhjpwgwb` int DEFAULT NULL,\n `uxqvjaxbkcmuaudjhebdplkxazotwqbw` int DEFAULT NULL,\n `uegoiwtvvkubcbgcqvzejjvrxdlsfkkc` int DEFAULT NULL,\n `jrnwfqabzygivdphtupqyzvzelbgyjwk` int DEFAULT NULL,\n `cenvakxhebjkdyykigyhmsunemmzhqmf` int DEFAULT NULL,\n `uwlkxhsufcvazawyibkodyiygbwdyios` int DEFAULT NULL,\n `lnltfvhidtbxgrsjcfljupjephjmjofd` int DEFAULT NULL,\n `wamsmjsqlwlzqxivopbwlplynafppcew` int DEFAULT NULL,\n `lycqnizasltqtyczfpuiythneogtzvwv` int DEFAULT NULL,\n `ndzdketiyujmprpwpulfhikwmznljdts` int DEFAULT NULL,\n `bsxukgfkegeoicnjhihebqqvvkxczjti` int DEFAULT NULL,\n `otmshctgtwldvsbcflbvbyshrdnebpsz` int DEFAULT NULL,\n `ceovmfvmjskbdrrunydjedhafqpqohrj` int DEFAULT NULL,\n `qrsrqfzkhhsmvhdkbhdjqjmrzkhhtfzj` int DEFAULT NULL,\n `shnadyqfsxpaxmkjiystgyurmibhcfwn` int DEFAULT NULL,\n `mubgupmkfwbompwtsrrctcvxwakceaxv` int DEFAULT NULL,\n `xvulrqvevqjfdsiajbfukdfvxeqwsfpi` int DEFAULT NULL,\n `onaekpxpusvmjjfvynmrfyicooxjtbkx` int DEFAULT NULL,\n `chfwfltqvkffpjpucrnretvtmggroxet` int DEFAULT NULL,\n `epsjphpmqnkydyfhiaxbkpsdtanwttkh` int DEFAULT NULL,\n `ommabzcpmbgzerogocukfakyozbtkxzt` int DEFAULT NULL,\n `ujrtexlueiybiouvhvfqujmrkozbkkgu` int DEFAULT NULL,\n `nicingdruekretrfpyrqxjhscuxoxwtv` int DEFAULT NULL,\n `pmqheddntslnxujqqegepxpgykbfmqop` int DEFAULT NULL,\n `dhociiblmyrnhzspmjiupkbucaqekikn` int DEFAULT NULL,\n `vsbvoucsgcomhpaextejuwnxygrxxrrm` int DEFAULT NULL,\n `wcexcmhqfqurjykuzpmnhgbhjqfhnnyd` int DEFAULT NULL,\n `xmqiwsdrygbemigxujxbgxbvxlyxyuhe` int DEFAULT NULL,\n `ljvlqxbrcjovyhqemngbipgakrbxussm` int DEFAULT NULL,\n `yzfopfioelqikrpulqzayjgihktnfzcx` int DEFAULT NULL,\n `yfzexqpigtnrcoikeraqdehvintaergx` int DEFAULT NULL,\n `sxdkpmcigfzhdqotvwlkcctbyyepyssl` int DEFAULT NULL,\n `zdbbwygcpvckkmhvxunqfrjzitzproyd` int DEFAULT NULL,\n `qopmakfswjscgksbzdadapmyxiiipvzf` int DEFAULT NULL,\n `qxpaakxastuqojyknrxowitptzwujazz` int DEFAULT NULL,\n `lcwzfaccegcjgtxxyjoplptvppepflzj` int DEFAULT NULL,\n `pijmlasbkwufjguglhbklzgeiqorxvme` int DEFAULT NULL,\n `otpdvkuuzwzskadasinypryxegyupcxz` int DEFAULT NULL,\n `kbbmkhlilzcnmfacqccmftteehscgvdt` int DEFAULT NULL,\n `tdbqhlveyymmcqisgwtevookvqdcmlqv` int DEFAULT NULL,\n `rioqrtxbjihxjlnfgfirwbzfratpgphk` int DEFAULT NULL,\n `daxbolqdeolrxdkgeqrqxvwjnvthvvzv` int DEFAULT NULL,\n `vritxeejnsuwuwxylpmuyvxnetjhwdns` int DEFAULT NULL,\n `hhttsbywjrjhbxvhltsdolmaqjjlyvwc` int DEFAULT NULL,\n `oydzsapdkxpyvxjujfkzqvsdmkafiwgg` int DEFAULT NULL,\n `wqsqbzntwfhcxtutblaonesymejixjeg` int DEFAULT NULL,\n `jjbitfkxsehppyligvludvvnaxfxqxvc` int DEFAULT NULL,\n `gmfrraainbehqzehesxqgjnqwttshclh` int DEFAULT NULL,\n `ekyrgvpjdbacjaizjmlrtipedkxrtlfv` int DEFAULT NULL,\n `fvbkalvcmgmkakedsdtmfcfhhsbzcpge` int DEFAULT NULL,\n `ofdxwmjkuwkiqvwcixioxofsvjmuevig` int DEFAULT NULL,\n `crrdgdzvwjdvrtrvdwigcqfzewhzyewn` int DEFAULT NULL,\n `cmvzubgfrvkwqpbvlovvoddatlnilpvg` int DEFAULT NULL,\n `vkcmipidhgammwlsrvfsquzjnqmwmfsq` int DEFAULT NULL,\n `rgxurwxorlvilmydtzzazinpmxcrckcs` int DEFAULT NULL,\n `lxwdlokavpucffdcejoxmkioxzkieagr` int DEFAULT NULL,\n `rxhxpltwnkjerocafksxzohulinmwmcl` int DEFAULT NULL,\n `khguqduexfrrqmvzugdaqefgmesyogha` int DEFAULT NULL,\n `zddcrwyfqoexrmcjflhcpwajmiyoxrln` int DEFAULT NULL,\n `gobnawlpjxucexvcvfkgrnytudhvffaz` int DEFAULT NULL,\n `pkcalbvbwyqgkglckzeendbmhwbsopuf` int DEFAULT NULL,\n `rhzkekeejvrgpmeowrwgvzpjkfrqispd` int DEFAULT NULL,\n `fqeigdgkyeigajyadithufaeekbgaspx` int DEFAULT NULL,\n `ckddmayvqpgizyesockkxcbhgndexpja` int DEFAULT NULL,\n `vkyycvlzgepvdljkdvhemnvwsoueljoe` int DEFAULT NULL,\n `blstiknfwfjrpgibwysavlfewpjzxapb` int DEFAULT NULL,\n `foreaffbhkplwiaedyabjwamqcfiftzx` int DEFAULT NULL,\n `grlihoahqlokosywsxwwytpnuagebxvo` int DEFAULT NULL,\n `zfgeelzutipuuyakgvjyjqlzzjuycvdt` int DEFAULT NULL,\n `ejchitnyhtdoauclpzpscadyharoqdaj` int DEFAULT NULL,\n `cglflepbltdwxswhmcbetmjdnbitjkea` int DEFAULT NULL,\n `kzykcygkikxufrustbzlmzmhjfphvtcn` int DEFAULT NULL,\n `ekkelmpkkfexpfsvkudiuupmaxnxdbsc` int DEFAULT NULL,\n `lbkciphwhllfbwfrhidwszvwtmnzlpna` int DEFAULT NULL,\n `libvxnhaxbjbnpdrxtibxwafftshglqr` int DEFAULT NULL,\n `epvqszecbgcryjeoemqdgwbvkkjeheej` int DEFAULT NULL,\n `qfzyrsvpwajsmspbgqkggoosyzkgpvzp` int DEFAULT NULL,\n `ykmxfbtscldobxpnjalcvqhetesrdcie` int DEFAULT NULL,\n `ppvisfaltfcqzrnofztdgakmoqxusbth` int DEFAULT NULL,\n `nwfvoxllbglmaxzikwonqefharvdlljo` int DEFAULT NULL,\n `gijbepwbdalfziokeemktsurkknxjmir` int DEFAULT NULL,\n `pmudohknarpqgehhamibotvuscjnrwrw` int DEFAULT NULL,\n `lokosurbefsarnpncpwnxhyolenontij` int DEFAULT NULL,\n `vrutlqgomlvefurtvqcvkptpkvxanbkt` int DEFAULT NULL,\n `jpswtkcrjsaxzyqpdqgxoewbyfzratua` int DEFAULT NULL,\n `opehrxbeoddfnxkhdejghjiehqtwwprh` int DEFAULT NULL,\n `kxiqlmxngpuddlngscvvyacjmwqdedrm` int DEFAULT NULL,\n `jovovlxlqgveyhlfuzupypktcddqhwek` int DEFAULT NULL,\n `gnxtzsyvxwwabmcffmklpjzoixrmoryt` int DEFAULT NULL,\n `dfcljxhjkinzhceficbattaoikhgwgas` int DEFAULT NULL,\n `cvththnywxfjocqessyoajugoulswzkr` int DEFAULT NULL,\n `bfnqotcankxgfvpbsootntqylckwtjkz` int DEFAULT NULL,\n `nifymrqatgraqymqindczwmbrrnbhhsr` int DEFAULT NULL,\n `zujemnzoccttzeqefhgtbwgaifqqwvhn` int DEFAULT NULL,\n `tgxcuujinowfqhsvtgjjxgputtphxmct` int DEFAULT NULL,\n `xvhihoyawcejguonukvwpudcoqnkflcs` int DEFAULT NULL,\n PRIMARY KEY (`ndvxyfllpuhaeksiqkjbxatcaoyobzpm`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"rmacnjxgjbzdfqdleytznzmsuzvkdjrq\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["ndvxyfllpuhaeksiqkjbxatcaoyobzpm"],"columns":[{"name":"ndvxyfllpuhaeksiqkjbxatcaoyobzpm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"ivxvtxaoolrwxcxtlqdcwpjjuukrshie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bcbmyzjbdtnnpaiqtutnohjysaedzrvw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovktemtdmqoylrfwklaswzontwghxoxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbxchtycsrlsuqvnicizdynidhjpwgwb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxqvjaxbkcmuaudjhebdplkxazotwqbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uegoiwtvvkubcbgcqvzejjvrxdlsfkkc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jrnwfqabzygivdphtupqyzvzelbgyjwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cenvakxhebjkdyykigyhmsunemmzhqmf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uwlkxhsufcvazawyibkodyiygbwdyios","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lnltfvhidtbxgrsjcfljupjephjmjofd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wamsmjsqlwlzqxivopbwlplynafppcew","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lycqnizasltqtyczfpuiythneogtzvwv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ndzdketiyujmprpwpulfhikwmznljdts","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bsxukgfkegeoicnjhihebqqvvkxczjti","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otmshctgtwldvsbcflbvbyshrdnebpsz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ceovmfvmjskbdrrunydjedhafqpqohrj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qrsrqfzkhhsmvhdkbhdjqjmrzkhhtfzj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shnadyqfsxpaxmkjiystgyurmibhcfwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mubgupmkfwbompwtsrrctcvxwakceaxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvulrqvevqjfdsiajbfukdfvxeqwsfpi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"onaekpxpusvmjjfvynmrfyicooxjtbkx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"chfwfltqvkffpjpucrnretvtmggroxet","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"epsjphpmqnkydyfhiaxbkpsdtanwttkh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ommabzcpmbgzerogocukfakyozbtkxzt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujrtexlueiybiouvhvfqujmrkozbkkgu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nicingdruekretrfpyrqxjhscuxoxwtv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmqheddntslnxujqqegepxpgykbfmqop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhociiblmyrnhzspmjiupkbucaqekikn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsbvoucsgcomhpaextejuwnxygrxxrrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcexcmhqfqurjykuzpmnhgbhjqfhnnyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xmqiwsdrygbemigxujxbgxbvxlyxyuhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljvlqxbrcjovyhqemngbipgakrbxussm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzfopfioelqikrpulqzayjgihktnfzcx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfzexqpigtnrcoikeraqdehvintaergx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sxdkpmcigfzhdqotvwlkcctbyyepyssl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdbbwygcpvckkmhvxunqfrjzitzproyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qopmakfswjscgksbzdadapmyxiiipvzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxpaakxastuqojyknrxowitptzwujazz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lcwzfaccegcjgtxxyjoplptvppepflzj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pijmlasbkwufjguglhbklzgeiqorxvme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otpdvkuuzwzskadasinypryxegyupcxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kbbmkhlilzcnmfacqccmftteehscgvdt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tdbqhlveyymmcqisgwtevookvqdcmlqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rioqrtxbjihxjlnfgfirwbzfratpgphk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"daxbolqdeolrxdkgeqrqxvwjnvthvvzv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vritxeejnsuwuwxylpmuyvxnetjhwdns","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhttsbywjrjhbxvhltsdolmaqjjlyvwc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oydzsapdkxpyvxjujfkzqvsdmkafiwgg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqsqbzntwfhcxtutblaonesymejixjeg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjbitfkxsehppyligvludvvnaxfxqxvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmfrraainbehqzehesxqgjnqwttshclh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekyrgvpjdbacjaizjmlrtipedkxrtlfv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fvbkalvcmgmkakedsdtmfcfhhsbzcpge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofdxwmjkuwkiqvwcixioxofsvjmuevig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"crrdgdzvwjdvrtrvdwigcqfzewhzyewn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmvzubgfrvkwqpbvlovvoddatlnilpvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkcmipidhgammwlsrvfsquzjnqmwmfsq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgxurwxorlvilmydtzzazinpmxcrckcs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxwdlokavpucffdcejoxmkioxzkieagr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxhxpltwnkjerocafksxzohulinmwmcl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"khguqduexfrrqmvzugdaqefgmesyogha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zddcrwyfqoexrmcjflhcpwajmiyoxrln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gobnawlpjxucexvcvfkgrnytudhvffaz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkcalbvbwyqgkglckzeendbmhwbsopuf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhzkekeejvrgpmeowrwgvzpjkfrqispd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqeigdgkyeigajyadithufaeekbgaspx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ckddmayvqpgizyesockkxcbhgndexpja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkyycvlzgepvdljkdvhemnvwsoueljoe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blstiknfwfjrpgibwysavlfewpjzxapb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"foreaffbhkplwiaedyabjwamqcfiftzx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grlihoahqlokosywsxwwytpnuagebxvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zfgeelzutipuuyakgvjyjqlzzjuycvdt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejchitnyhtdoauclpzpscadyharoqdaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cglflepbltdwxswhmcbetmjdnbitjkea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzykcygkikxufrustbzlmzmhjfphvtcn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekkelmpkkfexpfsvkudiuupmaxnxdbsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lbkciphwhllfbwfrhidwszvwtmnzlpna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"libvxnhaxbjbnpdrxtibxwafftshglqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"epvqszecbgcryjeoemqdgwbvkkjeheej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfzyrsvpwajsmspbgqkggoosyzkgpvzp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykmxfbtscldobxpnjalcvqhetesrdcie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ppvisfaltfcqzrnofztdgakmoqxusbth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nwfvoxllbglmaxzikwonqefharvdlljo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gijbepwbdalfziokeemktsurkknxjmir","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmudohknarpqgehhamibotvuscjnrwrw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lokosurbefsarnpncpwnxhyolenontij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vrutlqgomlvefurtvqcvkptpkvxanbkt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jpswtkcrjsaxzyqpdqgxoewbyfzratua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opehrxbeoddfnxkhdejghjiehqtwwprh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxiqlmxngpuddlngscvvyacjmwqdedrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jovovlxlqgveyhlfuzupypktcddqhwek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnxtzsyvxwwabmcffmklpjzoixrmoryt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dfcljxhjkinzhceficbattaoikhgwgas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvththnywxfjocqessyoajugoulswzkr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bfnqotcankxgfvpbsootntqylckwtjkz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nifymrqatgraqymqindczwmbrrnbhhsr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zujemnzoccttzeqefhgtbwgaifqqwvhn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tgxcuujinowfqhsvtgjjxgputtphxmct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvhihoyawcejguonukvwpudcoqnkflcs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670857,"databaseName":"models_schema","ddl":"CREATE TABLE `rmcsuzfuprljobatuqxsqkuaffhpdtag` (\n `qkdoamorfeecnspombwpgmtckrrmadjb` int NOT NULL,\n `nrxfyknxorgwagxifhcwyiptrbioffjs` int DEFAULT NULL,\n `fzvtycbqeuzkvlnhzxzieqeyihzfgzgo` int DEFAULT NULL,\n `xexhlhhzzoqoxavnjdficqhammrmwvyl` int DEFAULT NULL,\n `jpthotqmolsvqjhkxnwprsttwlloyzof` int DEFAULT NULL,\n `hegpppgrydbfupsukqxazecolvrfkpqo` int DEFAULT NULL,\n `mpgwljxzazohlifrgobqorkzmphjwmfv` int DEFAULT NULL,\n `qvsotelkaszohgjomfuxbuuruwhddgnv` int DEFAULT NULL,\n `yiayfouidziksjyzaezyczwtltgznwpt` int DEFAULT NULL,\n `kapwdchjvpppucmgpjnfidkdneikpvqg` int DEFAULT NULL,\n `tsbjkzzqxsgdkwvtrlkisasaesbqgcxi` int DEFAULT NULL,\n `roxehwotouhnhvpoenmkzbltxlsvrmdw` int DEFAULT NULL,\n `qclbeaciubyzhqlpsxyaviebvwlqdnxm` int DEFAULT NULL,\n `zejasogulowjyclsevxhdcqirglnuiyg` int DEFAULT NULL,\n `peogpvpzbszwclwfcuercudypdchhhhs` int DEFAULT NULL,\n `acseidaysummsnzhhofhjaknxnklhfae` int DEFAULT NULL,\n `sbzqnrhosrobaiwqbtqsxwqnuawogkck` int DEFAULT NULL,\n `qqzauqpjzblvyogmzdryipdjjxxbxxpq` int DEFAULT NULL,\n `dglyvbqwbdoknpppffbalqllhveogprd` int DEFAULT NULL,\n `sdrzuknhyicweuclsfwnakrkpvlbxhem` int DEFAULT NULL,\n `iinibbuledqxmmwfajewwscrrcmiefem` int DEFAULT NULL,\n `zsuzcsmjqvunngempeejilgmtdryapjm` int DEFAULT NULL,\n `wvafudrxixbtuebbbxzrfbboirrcvdjg` int DEFAULT NULL,\n `ohvjqjcpnsdbhpmhaizjcwkvlzwufzkw` int DEFAULT NULL,\n `dxmcadiqxitwkttzglwjneenxcovrmix` int DEFAULT NULL,\n `klkqdkbpgiuferhnbdcobuejncrrbqle` int DEFAULT NULL,\n `rdlzvwcnqyywcmaaoxzyodgtiuvbyvdq` int DEFAULT NULL,\n `uuprizodcchrqlrxvrigfnjcvwfcqxfj` int DEFAULT NULL,\n `yqwifvqxyicnmgjpvbhtsrsmurqqetxp` int DEFAULT NULL,\n `tinkzyetbgquptxocfthpvfikhtqhzof` int DEFAULT NULL,\n `aatugeswcgbnvnkvpxuovphqppnwmyjt` int DEFAULT NULL,\n `zidfzilbkvsmqemkhwhcxnujygntebtp` int DEFAULT NULL,\n `fnxmwnhndifuubdvyknfxauupzjovddp` int DEFAULT NULL,\n `vjpehlixluvlhbymwcuokxnfrqbuvfur` int DEFAULT NULL,\n `ykmeyscnxhlvwputurzanpayxphmrhah` int DEFAULT NULL,\n `wlixpjjtjallhtcyzyxpwcfyuwzmqtnw` int DEFAULT NULL,\n `czbvzugmfpzmgwhysequwvfjnutmkpeh` int DEFAULT NULL,\n `ajjpqqxcwbxntjfznmwpwhcosnfmplxd` int DEFAULT NULL,\n `khmswicphcbdinyjivwvzyvtzekxchet` int DEFAULT NULL,\n `yzqjwaydepnstznautxjokctyvxydvhb` int DEFAULT NULL,\n `cssqioyivjrwbkdkqtpfdsnqqqletciv` int DEFAULT NULL,\n `dwcnevykjtopdknjxqnmptysusrmznaq` int DEFAULT NULL,\n `eulfrwmzojokvoucmiaullbjzeqxguyb` int DEFAULT NULL,\n `agbqswixigclraugqeuofdwvwrilyusl` int DEFAULT NULL,\n `trwijplsfpodkcrnxcppqgmgclrvealc` int DEFAULT NULL,\n `bnmadyorcliavnjcphenlawwgbmoqiuc` int DEFAULT NULL,\n `fmkysllohgikhoylswqqioyazxfrapwu` int DEFAULT NULL,\n `vjbegiewoqcrwgqtxaedghereoekbthb` int DEFAULT NULL,\n `rfiyrxujmuxxuwkhizwhioxljesdtdcw` int DEFAULT NULL,\n `yzfsjkgtbodoeshrtnmzdpehttijuxfe` int DEFAULT NULL,\n `kplhidvyeliwppgijjsxjkcqtmloaobc` int DEFAULT NULL,\n `lhhocoatqkjuzladyhzfvmyzecqowuab` int DEFAULT NULL,\n `kwjniqcsiptagjfzmwwlhqmxxcfcxqqn` int DEFAULT NULL,\n `eqzztrfnksrapfyfeqybadzwjbfpktcr` int DEFAULT NULL,\n `faebhcoeloouxgxnmdqcqwgkdjjnwytc` int DEFAULT NULL,\n `dmzulxyefbriywyixesknjhstgsbhdqc` int DEFAULT NULL,\n `enbopkaxdxemudxfsszisjkroiywlbru` int DEFAULT NULL,\n `rifsbceuqsxqdmyhsqdzssczsvuacrwl` int DEFAULT NULL,\n `rmfncsngnnlcuxtfqlnkwthygnvkcxns` int DEFAULT NULL,\n `kpzapcolymuhnvkuqurtiklddrployvb` int DEFAULT NULL,\n `itdhyrkpgbyxpycvlwmpgbetqcycevdi` int DEFAULT NULL,\n `asldagfoztipqxkufceelpkiuqwsrddw` int DEFAULT NULL,\n `awqfxoznowhqmymcsufcwrjvlahdnlcv` int DEFAULT NULL,\n `fcsdcdwdvfcwqxmncgfmivfmhtmtwfou` int DEFAULT NULL,\n `vjhcauuvjfbjaxszlxceewksohlqthkk` int DEFAULT NULL,\n `arefkafsycmwlhxtxevhjwflhinohebg` int DEFAULT NULL,\n `cvcoqbccktyjsrxbvkpztntpdcylzzmm` int DEFAULT NULL,\n `fkczvwzmqhkjunfkaltncldnvqwmoxhl` int DEFAULT NULL,\n `tzrywhnhmkvlkgorwfznrguuqtlfusbv` int DEFAULT NULL,\n `mdqmujjpjefdrujpxypsnjofavhjkblo` int DEFAULT NULL,\n `veazpvkbjuegeuycmhkwpdgcnsromdqs` int DEFAULT NULL,\n `typxjwvmennvwagtivcwrjzrctqgwnig` int DEFAULT NULL,\n `qlotimkjojuakgriphcexgiwsnbaxpzj` int DEFAULT NULL,\n `uaaebgwrwxsthbvmokgojqjfpglqiehw` int DEFAULT NULL,\n `gklkercfjjqndwvtgtnjaavhagsukmim` int DEFAULT NULL,\n `qapgsmreblvcpndwpqdscpilmuiukvua` int DEFAULT NULL,\n `nxmpfmbumqozqgmtufdhschzorqlccjx` int DEFAULT NULL,\n `qgkhriyntjjlwgwqjocdkfedmlryodxg` int DEFAULT NULL,\n `aodyzlxtylsxappavwpyqvuyqpjmcohm` int DEFAULT NULL,\n `ygfvzwcvqdoweiwihcjjwblnlnbijmpv` int DEFAULT NULL,\n `sexoazxzmlhfshqsepxzjxmggakmvyto` int DEFAULT NULL,\n `tioxdwhnpkvktxzzjnzcugwfuydrtigc` int DEFAULT NULL,\n `ustpvmtplqexwawcppgalwyhqvaibbhe` int DEFAULT NULL,\n `twblnctlnfunertpdubomgaauwsmowru` int DEFAULT NULL,\n `hjkdxbzxdwzuacweszauvyobtzjbiefh` int DEFAULT NULL,\n `xnghxhbctlqpmdgtaltbfaypmbwmlcdj` int DEFAULT NULL,\n `hdlkmxdqlipvjuwsplntjgywyeevwezb` int DEFAULT NULL,\n `dqwfdlfcdmwxqgpzufpzpvliuuegkplj` int DEFAULT NULL,\n `jzngxedhoxmzfzayeamtvumwepvonbxn` int DEFAULT NULL,\n `kzmnonpfipddnobyoxpottubevfljksi` int DEFAULT NULL,\n `afviottmgyrbopyqnqzruduqqucivoeq` int DEFAULT NULL,\n `dkjnaeobrojkbkqetsllqquqyknkzspm` int DEFAULT NULL,\n `atzxvbacaiteoymfpskttrnzevibwnlm` int DEFAULT NULL,\n `tcwpsrigfnvyabgbokbderzspzbzluvl` int DEFAULT NULL,\n `wezybxikzpvtacszbmsvpgzyzmidfdok` int DEFAULT NULL,\n `fxcseqroisslpnjrpexcgwtjlkquhibi` int DEFAULT NULL,\n `uvygsiretwvybfdfesaztnzgjcsofqca` int DEFAULT NULL,\n `qzkoftdchnuozbyjsymnkwfoobbecdjx` int DEFAULT NULL,\n `miwagmcoryeghkzytotaqprkpuvoihtx` int DEFAULT NULL,\n `ymvakhppqmcrynmudgepgfyffzqfqwjm` int DEFAULT NULL,\n PRIMARY KEY (`qkdoamorfeecnspombwpgmtckrrmadjb`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"rmcsuzfuprljobatuqxsqkuaffhpdtag\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["qkdoamorfeecnspombwpgmtckrrmadjb"],"columns":[{"name":"qkdoamorfeecnspombwpgmtckrrmadjb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"nrxfyknxorgwagxifhcwyiptrbioffjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzvtycbqeuzkvlnhzxzieqeyihzfgzgo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xexhlhhzzoqoxavnjdficqhammrmwvyl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jpthotqmolsvqjhkxnwprsttwlloyzof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hegpppgrydbfupsukqxazecolvrfkpqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpgwljxzazohlifrgobqorkzmphjwmfv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvsotelkaszohgjomfuxbuuruwhddgnv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yiayfouidziksjyzaezyczwtltgznwpt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kapwdchjvpppucmgpjnfidkdneikpvqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tsbjkzzqxsgdkwvtrlkisasaesbqgcxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"roxehwotouhnhvpoenmkzbltxlsvrmdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qclbeaciubyzhqlpsxyaviebvwlqdnxm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zejasogulowjyclsevxhdcqirglnuiyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"peogpvpzbszwclwfcuercudypdchhhhs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"acseidaysummsnzhhofhjaknxnklhfae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbzqnrhosrobaiwqbtqsxwqnuawogkck","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqzauqpjzblvyogmzdryipdjjxxbxxpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dglyvbqwbdoknpppffbalqllhveogprd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdrzuknhyicweuclsfwnakrkpvlbxhem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iinibbuledqxmmwfajewwscrrcmiefem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zsuzcsmjqvunngempeejilgmtdryapjm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wvafudrxixbtuebbbxzrfbboirrcvdjg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohvjqjcpnsdbhpmhaizjcwkvlzwufzkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxmcadiqxitwkttzglwjneenxcovrmix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"klkqdkbpgiuferhnbdcobuejncrrbqle","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdlzvwcnqyywcmaaoxzyodgtiuvbyvdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uuprizodcchrqlrxvrigfnjcvwfcqxfj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqwifvqxyicnmgjpvbhtsrsmurqqetxp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tinkzyetbgquptxocfthpvfikhtqhzof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aatugeswcgbnvnkvpxuovphqppnwmyjt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zidfzilbkvsmqemkhwhcxnujygntebtp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnxmwnhndifuubdvyknfxauupzjovddp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjpehlixluvlhbymwcuokxnfrqbuvfur","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykmeyscnxhlvwputurzanpayxphmrhah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wlixpjjtjallhtcyzyxpwcfyuwzmqtnw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"czbvzugmfpzmgwhysequwvfjnutmkpeh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajjpqqxcwbxntjfznmwpwhcosnfmplxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"khmswicphcbdinyjivwvzyvtzekxchet","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzqjwaydepnstznautxjokctyvxydvhb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cssqioyivjrwbkdkqtpfdsnqqqletciv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwcnevykjtopdknjxqnmptysusrmznaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eulfrwmzojokvoucmiaullbjzeqxguyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agbqswixigclraugqeuofdwvwrilyusl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"trwijplsfpodkcrnxcppqgmgclrvealc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnmadyorcliavnjcphenlawwgbmoqiuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmkysllohgikhoylswqqioyazxfrapwu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjbegiewoqcrwgqtxaedghereoekbthb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfiyrxujmuxxuwkhizwhioxljesdtdcw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzfsjkgtbodoeshrtnmzdpehttijuxfe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kplhidvyeliwppgijjsxjkcqtmloaobc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhhocoatqkjuzladyhzfvmyzecqowuab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwjniqcsiptagjfzmwwlhqmxxcfcxqqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqzztrfnksrapfyfeqybadzwjbfpktcr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"faebhcoeloouxgxnmdqcqwgkdjjnwytc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dmzulxyefbriywyixesknjhstgsbhdqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"enbopkaxdxemudxfsszisjkroiywlbru","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rifsbceuqsxqdmyhsqdzssczsvuacrwl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rmfncsngnnlcuxtfqlnkwthygnvkcxns","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kpzapcolymuhnvkuqurtiklddrployvb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itdhyrkpgbyxpycvlwmpgbetqcycevdi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"asldagfoztipqxkufceelpkiuqwsrddw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awqfxoznowhqmymcsufcwrjvlahdnlcv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcsdcdwdvfcwqxmncgfmivfmhtmtwfou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjhcauuvjfbjaxszlxceewksohlqthkk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"arefkafsycmwlhxtxevhjwflhinohebg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvcoqbccktyjsrxbvkpztntpdcylzzmm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fkczvwzmqhkjunfkaltncldnvqwmoxhl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tzrywhnhmkvlkgorwfznrguuqtlfusbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mdqmujjpjefdrujpxypsnjofavhjkblo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"veazpvkbjuegeuycmhkwpdgcnsromdqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"typxjwvmennvwagtivcwrjzrctqgwnig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qlotimkjojuakgriphcexgiwsnbaxpzj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uaaebgwrwxsthbvmokgojqjfpglqiehw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gklkercfjjqndwvtgtnjaavhagsukmim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qapgsmreblvcpndwpqdscpilmuiukvua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxmpfmbumqozqgmtufdhschzorqlccjx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qgkhriyntjjlwgwqjocdkfedmlryodxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aodyzlxtylsxappavwpyqvuyqpjmcohm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ygfvzwcvqdoweiwihcjjwblnlnbijmpv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sexoazxzmlhfshqsepxzjxmggakmvyto","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tioxdwhnpkvktxzzjnzcugwfuydrtigc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ustpvmtplqexwawcppgalwyhqvaibbhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twblnctlnfunertpdubomgaauwsmowru","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjkdxbzxdwzuacweszauvyobtzjbiefh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnghxhbctlqpmdgtaltbfaypmbwmlcdj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdlkmxdqlipvjuwsplntjgywyeevwezb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqwfdlfcdmwxqgpzufpzpvliuuegkplj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jzngxedhoxmzfzayeamtvumwepvonbxn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzmnonpfipddnobyoxpottubevfljksi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afviottmgyrbopyqnqzruduqqucivoeq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkjnaeobrojkbkqetsllqquqyknkzspm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atzxvbacaiteoymfpskttrnzevibwnlm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tcwpsrigfnvyabgbokbderzspzbzluvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wezybxikzpvtacszbmsvpgzyzmidfdok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxcseqroisslpnjrpexcgwtjlkquhibi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvygsiretwvybfdfesaztnzgjcsofqca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qzkoftdchnuozbyjsymnkwfoobbecdjx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"miwagmcoryeghkzytotaqprkpuvoihtx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ymvakhppqmcrynmudgepgfyffzqfqwjm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670888,"databaseName":"models_schema","ddl":"CREATE TABLE `rmdvstrvymqpjlchedshuysqvdwtaegw` (\n `svwhgelzcoayoptrtahsogllofvxeuij` int NOT NULL,\n `afexvttcuznoxmwzggxzberzsarnnjft` int DEFAULT NULL,\n `loonvhiwldnmmhlizyupryyfptdyrofs` int DEFAULT NULL,\n `afxxudnmfwaqsdmighklloeubevzrlmz` int DEFAULT NULL,\n `wuntfhkxhjpbckusklionseixsudjdds` int DEFAULT NULL,\n `wbcbgencnfeipljcsqmdequcbmaeaajp` int DEFAULT NULL,\n `pqbbmomdrrcgjuhpikjfirndsyuqbkxo` int DEFAULT NULL,\n `xyodtzvmdugvlijvktyhafggyfupabiw` int DEFAULT NULL,\n `kihbqlzntyzxigyqlacqlklcmkoswyni` int DEFAULT NULL,\n `rjrdyaynqdiecagaetdvftizoxqtxoxh` int DEFAULT NULL,\n `kkdtflotjplgznygatuqtiemoplrlljr` int DEFAULT NULL,\n `pbqmpbwwcmiucgdtarqsrjvownwugxaf` int DEFAULT NULL,\n `iwfgbnvmfukwyouklgbkulubufiaujkq` int DEFAULT NULL,\n `wxpytxcgsuhgiaqngxobolrrjfljkpgf` int DEFAULT NULL,\n `erwlrwxasjokqjegepmnyftozxgobumj` int DEFAULT NULL,\n `npsadfummbvgyzxjwoftdjhvzqkdvbwi` int DEFAULT NULL,\n `pkfnqxtpphlrkvykozytotrkbrmrfakp` int DEFAULT NULL,\n `dnnpqvucjwjtjxpvqbxsbuuwtcmahyne` int DEFAULT NULL,\n `miwvunzwxcucgfbrebxskihyqtrdxkmn` int DEFAULT NULL,\n `qdeyejmelpzpqlcowtazmmzsmveuyicv` int DEFAULT NULL,\n `oegedazyrictcjoohnojilpjhsxowvgh` int DEFAULT NULL,\n `ctjceopzssspkukzlslqdlxgzvazjehe` int DEFAULT NULL,\n `prrqjydkdmtgtyyfxtamnbcwfjoewcxi` int DEFAULT NULL,\n `idofysclqhjxbyanfcadnvbfehjhsaak` int DEFAULT NULL,\n `tlppswwpipbonbjzelsqymkfycypttci` int DEFAULT NULL,\n `txrrpcokorxpvvqfzykmzujztqigfjfa` int DEFAULT NULL,\n `moadswwxcwngmkgzsjkcpsmbnqwkvhxb` int DEFAULT NULL,\n `qqxfywbgbtsujjkwasqyagscmdzkncxi` int DEFAULT NULL,\n `vcjzbtjdylohcojjustvsqmqkpdcbamx` int DEFAULT NULL,\n `uypjwyilslewypowmxjnyjhmnxtgaceb` int DEFAULT NULL,\n `wgsuvemwvltfhirnrbudaezosmnmmklj` int DEFAULT NULL,\n `hxjucmkjiwoywrrwsqmkupwedaybbhag` int DEFAULT NULL,\n `vgrjmuaacokgxuuldqodwnaozbiaqjti` int DEFAULT NULL,\n `xntskwxbttzhitepgoyzkzimvvlugiuc` int DEFAULT NULL,\n `appoyoihwisaopnidgwxzgkovroivsrg` int DEFAULT NULL,\n `eiklwjvbsflairjtdjmtrkuwhhrxjppn` int DEFAULT NULL,\n `dbvocitastmjmjrzwtmhyienvswujejd` int DEFAULT NULL,\n `njkgcjkqsdpznghuccmwaefxcybifczp` int DEFAULT NULL,\n `wbjndhjwyyfxeobvvjdkhiweznultiol` int DEFAULT NULL,\n `ergxptznckupevrwenvcccxxsadqxylb` int DEFAULT NULL,\n `veoszqdgdmwicyxjbxlpsicneobqjuhm` int DEFAULT NULL,\n `ujijqyzmxxviurqtbwwsvrbqhzswymqu` int DEFAULT NULL,\n `fmzwhouogoklswhptrwnxtnvljcqmlpn` int DEFAULT NULL,\n `otkoxaziwwldmdxkxohpaajtynwytexb` int DEFAULT NULL,\n `jsgaxooznuzznkylzyrighlycfapvogk` int DEFAULT NULL,\n `jmpbxvhdasgwqtgpqagztigtwiozoohz` int DEFAULT NULL,\n `ubnafofrchintmesyftzbcdgfyzhxebg` int DEFAULT NULL,\n `uqsgxayliiccwzlwtivzgtigzzyakwtt` int DEFAULT NULL,\n `fjwkdomzmutfmheoqxieztrgshlvpdql` int DEFAULT NULL,\n `ugktjrtlwbhrmjkoypcorxasmvbfisrh` int DEFAULT NULL,\n `jkzvyxgzdcqsazypzfwazylknxawfqus` int DEFAULT NULL,\n `uccurfzzazmbdqgurqtcrusyvuwjztyp` int DEFAULT NULL,\n `wpzocvyliggylpvqbvvryzhbllnggdyf` int DEFAULT NULL,\n `fntvyuufhonapldhhlobnztkfuuewxvh` int DEFAULT NULL,\n `bgvzfuothckpfpntxzlpolxwyjbqmndy` int DEFAULT NULL,\n `kdxlrgbhtdtpvbozfhoqspbdfnpenpgj` int DEFAULT NULL,\n `bmpwwpmkxatejhyzfplkekqmuruewhni` int DEFAULT NULL,\n `itbeplqjxtecoinuvklhnszkszcsmkha` int DEFAULT NULL,\n `kcefliketbhlxdujxpqltquagdydjnak` int DEFAULT NULL,\n `jextpluemmixbcxvqsbzqiivbukbtjan` int DEFAULT NULL,\n `dwaigxpncsdbpjhsylfopnyptatmpssu` int DEFAULT NULL,\n `ypsjylglozyeubitcoygbuxensmpmvpd` int DEFAULT NULL,\n `ikzwqgtzokjzvybvcyashdzlcxhwqruk` int DEFAULT NULL,\n `ycjierlibryxbtgxfpuxoyeqfghqhqpr` int DEFAULT NULL,\n `wyxbpsuiishkwbatehscllleulnmztyl` int DEFAULT NULL,\n `kzouurztrqiyrdvvzwpcgpnwsoqhuugi` int DEFAULT NULL,\n `korklsdcwogtembrzanknagrapavwdlh` int DEFAULT NULL,\n `biufiuxrjsgbizgykftwrmeollmzfsdi` int DEFAULT NULL,\n `rlgydzdwcfyqglmxaqwnihzvxafszutj` int DEFAULT NULL,\n `ktjzjjabipwuyuvhrirwpjvshsnxlztk` int DEFAULT NULL,\n `mknzbmsmpmkpclqyciepczmriqdcgmrt` int DEFAULT NULL,\n `ebtwjunjkjwowacufgsvlgsgyuvzjlsp` int DEFAULT NULL,\n `izmxuheczgshvyegelcetnknfnrjshia` int DEFAULT NULL,\n `cizfqjcgaripbhwljalxmqrprgjqyket` int DEFAULT NULL,\n `atkxjqndituxgkhfhhjimzmjfkfdcroo` int DEFAULT NULL,\n `ijarsifhopqfbvffedluvcgvybvxtgbb` int DEFAULT NULL,\n `swlrhmheddjdnugxhfntvupdizzkqcsd` int DEFAULT NULL,\n `wgpehvpszewaaybwdjnhuomcfyzftczv` int DEFAULT NULL,\n `vhkwhrnwsmxnwdntywkiymjsrxrywana` int DEFAULT NULL,\n `cpraroakdgnewpezvjbmtvdcpyokyqyp` int DEFAULT NULL,\n `kwhnrdxockezygsutdjmfdjecesaooor` int DEFAULT NULL,\n `rqkserkxxiutoovbvytlntnxcaxcibbj` int DEFAULT NULL,\n `ntdctkkbhyukmbucuklignkhwsnexlcj` int DEFAULT NULL,\n `husblpksqtxxqmioozugszsunxlhjfwb` int DEFAULT NULL,\n `dvwnehesnvyhqlnntzuznirognudhzby` int DEFAULT NULL,\n `jgfipfspxxfnoymcgvyegbtzhclazvdh` int DEFAULT NULL,\n `flnhqzmetmkijkelvkdybwjjqsejikic` int DEFAULT NULL,\n `nxuypbgugpgqjpzllrithbtbbfghmamn` int DEFAULT NULL,\n `vokpvyciklgfxybzfkhkwwblofwmyguf` int DEFAULT NULL,\n `omjquvtmnywfhcyaymqxbxdbzjspimrs` int DEFAULT NULL,\n `vifeqihdottfrnkmdwjapdatxkyzpyzi` int DEFAULT NULL,\n `alcpmpehcamlmloeoajgtuxyglylrpma` int DEFAULT NULL,\n `cjuixutempdlijdvoyunmsvnlyqsnvqw` int DEFAULT NULL,\n `oseftmlejdnlchubwuwrsdjqamhcjsrd` int DEFAULT NULL,\n `jaqvrnlhnpwwpugdoxyktizaylzrdmed` int DEFAULT NULL,\n `glmrwjqaptmraalijnddpsyedmpttudt` int DEFAULT NULL,\n `ahyyudeqoyldmjunwmqbtpyvegzyrprr` int DEFAULT NULL,\n `ytvstnvuiounkqaysreypdryxmeylpvo` int DEFAULT NULL,\n `rbxiunlkbqmfxdungcdhzuvrgxjhrfdd` int DEFAULT NULL,\n `czmcisthphfwwrxioghafpgemfirtdii` int DEFAULT NULL,\n PRIMARY KEY (`svwhgelzcoayoptrtahsogllofvxeuij`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"rmdvstrvymqpjlchedshuysqvdwtaegw\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["svwhgelzcoayoptrtahsogllofvxeuij"],"columns":[{"name":"svwhgelzcoayoptrtahsogllofvxeuij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"afexvttcuznoxmwzggxzberzsarnnjft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"loonvhiwldnmmhlizyupryyfptdyrofs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afxxudnmfwaqsdmighklloeubevzrlmz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wuntfhkxhjpbckusklionseixsudjdds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbcbgencnfeipljcsqmdequcbmaeaajp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqbbmomdrrcgjuhpikjfirndsyuqbkxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyodtzvmdugvlijvktyhafggyfupabiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kihbqlzntyzxigyqlacqlklcmkoswyni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjrdyaynqdiecagaetdvftizoxqtxoxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kkdtflotjplgznygatuqtiemoplrlljr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbqmpbwwcmiucgdtarqsrjvownwugxaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwfgbnvmfukwyouklgbkulubufiaujkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxpytxcgsuhgiaqngxobolrrjfljkpgf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"erwlrwxasjokqjegepmnyftozxgobumj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"npsadfummbvgyzxjwoftdjhvzqkdvbwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkfnqxtpphlrkvykozytotrkbrmrfakp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dnnpqvucjwjtjxpvqbxsbuuwtcmahyne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"miwvunzwxcucgfbrebxskihyqtrdxkmn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdeyejmelpzpqlcowtazmmzsmveuyicv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oegedazyrictcjoohnojilpjhsxowvgh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctjceopzssspkukzlslqdlxgzvazjehe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prrqjydkdmtgtyyfxtamnbcwfjoewcxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idofysclqhjxbyanfcadnvbfehjhsaak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlppswwpipbonbjzelsqymkfycypttci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txrrpcokorxpvvqfzykmzujztqigfjfa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"moadswwxcwngmkgzsjkcpsmbnqwkvhxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqxfywbgbtsujjkwasqyagscmdzkncxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vcjzbtjdylohcojjustvsqmqkpdcbamx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uypjwyilslewypowmxjnyjhmnxtgaceb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wgsuvemwvltfhirnrbudaezosmnmmklj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hxjucmkjiwoywrrwsqmkupwedaybbhag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgrjmuaacokgxuuldqodwnaozbiaqjti","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xntskwxbttzhitepgoyzkzimvvlugiuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"appoyoihwisaopnidgwxzgkovroivsrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eiklwjvbsflairjtdjmtrkuwhhrxjppn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbvocitastmjmjrzwtmhyienvswujejd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njkgcjkqsdpznghuccmwaefxcybifczp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbjndhjwyyfxeobvvjdkhiweznultiol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ergxptznckupevrwenvcccxxsadqxylb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"veoszqdgdmwicyxjbxlpsicneobqjuhm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujijqyzmxxviurqtbwwsvrbqhzswymqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmzwhouogoklswhptrwnxtnvljcqmlpn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otkoxaziwwldmdxkxohpaajtynwytexb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jsgaxooznuzznkylzyrighlycfapvogk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmpbxvhdasgwqtgpqagztigtwiozoohz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubnafofrchintmesyftzbcdgfyzhxebg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqsgxayliiccwzlwtivzgtigzzyakwtt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjwkdomzmutfmheoqxieztrgshlvpdql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugktjrtlwbhrmjkoypcorxasmvbfisrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jkzvyxgzdcqsazypzfwazylknxawfqus","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uccurfzzazmbdqgurqtcrusyvuwjztyp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wpzocvyliggylpvqbvvryzhbllnggdyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fntvyuufhonapldhhlobnztkfuuewxvh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bgvzfuothckpfpntxzlpolxwyjbqmndy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kdxlrgbhtdtpvbozfhoqspbdfnpenpgj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bmpwwpmkxatejhyzfplkekqmuruewhni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itbeplqjxtecoinuvklhnszkszcsmkha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kcefliketbhlxdujxpqltquagdydjnak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jextpluemmixbcxvqsbzqiivbukbtjan","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwaigxpncsdbpjhsylfopnyptatmpssu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypsjylglozyeubitcoygbuxensmpmvpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikzwqgtzokjzvybvcyashdzlcxhwqruk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ycjierlibryxbtgxfpuxoyeqfghqhqpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wyxbpsuiishkwbatehscllleulnmztyl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzouurztrqiyrdvvzwpcgpnwsoqhuugi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"korklsdcwogtembrzanknagrapavwdlh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"biufiuxrjsgbizgykftwrmeollmzfsdi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlgydzdwcfyqglmxaqwnihzvxafszutj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ktjzjjabipwuyuvhrirwpjvshsnxlztk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mknzbmsmpmkpclqyciepczmriqdcgmrt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebtwjunjkjwowacufgsvlgsgyuvzjlsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"izmxuheczgshvyegelcetnknfnrjshia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cizfqjcgaripbhwljalxmqrprgjqyket","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atkxjqndituxgkhfhhjimzmjfkfdcroo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijarsifhopqfbvffedluvcgvybvxtgbb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swlrhmheddjdnugxhfntvupdizzkqcsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wgpehvpszewaaybwdjnhuomcfyzftczv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhkwhrnwsmxnwdntywkiymjsrxrywana","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cpraroakdgnewpezvjbmtvdcpyokyqyp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwhnrdxockezygsutdjmfdjecesaooor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqkserkxxiutoovbvytlntnxcaxcibbj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntdctkkbhyukmbucuklignkhwsnexlcj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"husblpksqtxxqmioozugszsunxlhjfwb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvwnehesnvyhqlnntzuznirognudhzby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgfipfspxxfnoymcgvyegbtzhclazvdh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flnhqzmetmkijkelvkdybwjjqsejikic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxuypbgugpgqjpzllrithbtbbfghmamn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vokpvyciklgfxybzfkhkwwblofwmyguf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omjquvtmnywfhcyaymqxbxdbzjspimrs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vifeqihdottfrnkmdwjapdatxkyzpyzi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"alcpmpehcamlmloeoajgtuxyglylrpma","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cjuixutempdlijdvoyunmsvnlyqsnvqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oseftmlejdnlchubwuwrsdjqamhcjsrd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jaqvrnlhnpwwpugdoxyktizaylzrdmed","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"glmrwjqaptmraalijnddpsyedmpttudt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ahyyudeqoyldmjunwmqbtpyvegzyrprr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytvstnvuiounkqaysreypdryxmeylpvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbxiunlkbqmfxdungcdhzuvrgxjhrfdd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"czmcisthphfwwrxioghafpgemfirtdii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670922,"databaseName":"models_schema","ddl":"CREATE TABLE `rrxmvbjbfyljiregbwvggjujgpkwekjf` (\n `kekqazutbfqfylsnvtflgteoyctgscji` int NOT NULL,\n `mserffeokdbnkxeaalirexaydtlbhoyw` int DEFAULT NULL,\n `dguwlmlftdorxmgfnknqnhqqyazquywe` int DEFAULT NULL,\n `xzmeuxgfcvogeghztimenqrsmcaktcor` int DEFAULT NULL,\n `snwngrqvynxtbiunzbgskvoostibnfka` int DEFAULT NULL,\n `ajjbcaywlovbgslrlljyixtkoczsstpo` int DEFAULT NULL,\n `nlvprsgsxbrejcfebhwoibdcfvgcfuhs` int DEFAULT NULL,\n `mcjyevfgqrkxmgpzhwiymjwzfnonhxhs` int DEFAULT NULL,\n `chinxexsupnmkcwmlvkdlnfobkundzhi` int DEFAULT NULL,\n `xwjfmwlokuuezboeiprmjvqleidljjox` int DEFAULT NULL,\n `haxnoqhxhrqnmdidqztvobnhaeadbrft` int DEFAULT NULL,\n `evkxahnxazsrljjompyjznuxjojjjnam` int DEFAULT NULL,\n `jgoqjxnfcrjigkjzdtzeeybrjkdfbhvp` int DEFAULT NULL,\n `yvrylopztfqmyzltezaxgpneurlaawtk` int DEFAULT NULL,\n `gpdtjhsobqoojvxwmchrzbbxvzplbudc` int DEFAULT NULL,\n `jmoigciodnihbuohxveethsebxkvkexd` int DEFAULT NULL,\n `ifxqiryzlryadpnstbkruvtiwlagubaw` int DEFAULT NULL,\n `qqjdgyfwwjpgxbdessessmqmtnheidwj` int DEFAULT NULL,\n `hocmrecwaueghznnbexelwrdcmtxvdiv` int DEFAULT NULL,\n `posocyikqmyozeltlzskeedyzddqnktm` int DEFAULT NULL,\n `nmobhprmvynkcqrfywcrmgipbjuxnghw` int DEFAULT NULL,\n `ngcjmqkabezkmboeuxjmoxslwdrcylos` int DEFAULT NULL,\n `iopkylvytzcbivqgkfkbktziucbmxnzx` int DEFAULT NULL,\n `gnxpyoeemoafbuqzpdfefajepkmyxnhk` int DEFAULT NULL,\n `atnadqtwqjesqimlerljxwwahoreazwn` int DEFAULT NULL,\n `pykpwivrsibucbvbokswqaydwqaogpic` int DEFAULT NULL,\n `dijnakdiepwvuohqgomxhlmpgdpihfqj` int DEFAULT NULL,\n `kseddcmaledtvcqocmbcfwjpozhvdomy` int DEFAULT NULL,\n `rzxhsuetdgzznjvbvkbpjmclsvittnyo` int DEFAULT NULL,\n `mdrgzfbljrdcpxaiiyremygxwkecukfe` int DEFAULT NULL,\n `rptpnvdqnrzblanvbwcaaigqcelkmblu` int DEFAULT NULL,\n `zfrvgysexscraoqfdqgfxppnknhhgxzk` int DEFAULT NULL,\n `cmdfqvjsmbuusxkfdztbwftmrwybgwbq` int DEFAULT NULL,\n `xdwxxujylrojwoglflvhtijoxugcmqda` int DEFAULT NULL,\n `diohifpautfbnqdqsbukbijldyklzokt` int DEFAULT NULL,\n `grkitjaxzhcdxgiewulrrupmgysmhozd` int DEFAULT NULL,\n `buzzpexmtrzjtzpocvjmqsoescjgfprb` int DEFAULT NULL,\n `xtqrxgludvytftpfwisdazuupzrpjwqm` int DEFAULT NULL,\n `yfcwrgnkhtkgpiwbbviwduocqhiwbdnz` int DEFAULT NULL,\n `nowmgxnargnotrgikfvyqbeoealqryqo` int DEFAULT NULL,\n `wqvlpqgcczdkmspakjgcjmxwbcyafelo` int DEFAULT NULL,\n `jdwdqthzgswmrouspcudeuewrbhxbxkc` int DEFAULT NULL,\n `xwakcpunljpjqteueehaoimkmnzpbxrd` int DEFAULT NULL,\n `kaywifzgrpvufspipbvzxzoeuuwvgcez` int DEFAULT NULL,\n `rzymjukukvdjkjwcmokqjgrxxdfhmnzh` int DEFAULT NULL,\n `kuhtdudhhnemeyqwneqcxyhnsmrrflbh` int DEFAULT NULL,\n `rzqkqtcmluqxhozmsosjyrrnzxolegwk` int DEFAULT NULL,\n `ayegrdocoermaufnvjqjqatcehtoaqbr` int DEFAULT NULL,\n `ljwvaqozwlvaxgjulpukqguqnjzeikcb` int DEFAULT NULL,\n `zadlauatjsgqwyflelimmrhxtuqemeqt` int DEFAULT NULL,\n `zoxpceleidoconnlktkjfktzvsrwyjyz` int DEFAULT NULL,\n `assmiiasqatuvxshicohbzpnkmbpifzu` int DEFAULT NULL,\n `gwvmbrpovisgrcvrvmlngjndfugcpuxz` int DEFAULT NULL,\n `clxknwsxjweclqbbvdeaoqzewiqclvxb` int DEFAULT NULL,\n `fiiyfewkfciqwjzdhpnfgppafbenjlxc` int DEFAULT NULL,\n `dyakhmbtdfgjihhrqsmkgbyayynlleoq` int DEFAULT NULL,\n `hkyisacypnxazthaapfkpsxymvwdjvlt` int DEFAULT NULL,\n `wcouzwzaokoiptbxjcuwoyznctfwjnjr` int DEFAULT NULL,\n `ccsziuxrvzdgmaldxndhgpqbxkizahhm` int DEFAULT NULL,\n `dqsfnzvhnhsfhbqadauqunvjcvxvadft` int DEFAULT NULL,\n `ujbbvkcehdfuerwlnajswbifvibdjxqs` int DEFAULT NULL,\n `monkswgtfvquzjxdtbpfgedgktxsjpkp` int DEFAULT NULL,\n `zhwguvhtfjaarhcqungehpluarzbgsin` int DEFAULT NULL,\n `fkgbgymjvwkucsgbzleftmxpinwfifzo` int DEFAULT NULL,\n `vkyegfpktdcynfaivefzsygijqawtvht` int DEFAULT NULL,\n `ftsabepzyjjqooaezazlhnzufecpzcbs` int DEFAULT NULL,\n `pmtufzusxzkqthsbesaoqejoqmzxwpcx` int DEFAULT NULL,\n `vuxumovwhnkwyirgnisfsrsfhhhsxjvk` int DEFAULT NULL,\n `jcdajcbbapctakajnexfgqeztmxydspi` int DEFAULT NULL,\n `grcmjyyjgnqzgruxefqeyzhzngtscmvd` int DEFAULT NULL,\n `illjlptcprruoutklsawmygipuzcgglu` int DEFAULT NULL,\n `lfspigcgdslhuxddekinxvfwtvaxmdwd` int DEFAULT NULL,\n `kwozwfancmhmqufklcnbuiiuzbgrhqvu` int DEFAULT NULL,\n `hzwychgbxjuzxslzeeagcwnbqsuovzxe` int DEFAULT NULL,\n `yuivxaldfapnnqpidcmhzqrafftljmac` int DEFAULT NULL,\n `bcfukfvjburgditzlelhjlohuujzchlk` int DEFAULT NULL,\n `dkupuwxapuaxjhwzlctacyyskxummgio` int DEFAULT NULL,\n `ldfchnzjjcpctqrrgdwccktysldmbtre` int DEFAULT NULL,\n `dchdthyeshljodqedgmqvoggogmfyzny` int DEFAULT NULL,\n `hmhvmfiucwhzobcnlfzpkpxkxawppubm` int DEFAULT NULL,\n `hbtzwaqayojqgvehbtrkxednqgfqnlov` int DEFAULT NULL,\n `rfqihbjwqarfkdxrfohbkzlgogmfjhvd` int DEFAULT NULL,\n `aqdydhxazpbappermgtulwqfqrbenpfj` int DEFAULT NULL,\n `hpmfgiohqufcgivxrvummxvbjxxmjkmk` int DEFAULT NULL,\n `bzbrswycssjphlwglaaujjvprhhxdpcs` int DEFAULT NULL,\n `cfbzecgcebsdwmwtfacvrokrehephcxf` int DEFAULT NULL,\n `vndhzcuiginpfibnoqwlvejrhfgdlytc` int DEFAULT NULL,\n `xlmwylikzahoiwxcsonhdntrznkvsfey` int DEFAULT NULL,\n `cdtnigovtjcenbxzqcsrmswhgxalusxh` int DEFAULT NULL,\n `abvmzqaerdjligxkutayzfaheoiyfmki` int DEFAULT NULL,\n `xbldvntnhvlkibentgickgsmdbujztlo` int DEFAULT NULL,\n `meibjzxvyhiotlnsyibbtcpomwcadhwd` int DEFAULT NULL,\n `sdrbpylodhqirtlrzjoekbyqslnbopwe` int DEFAULT NULL,\n `qjfpnhotqkbgsjzcssapyhrwtvfgkzqi` int DEFAULT NULL,\n `rgunerutusaontrvhonxdtjeeifymllo` int DEFAULT NULL,\n `nyfiurenlbnjktzhfhspoelrhpfbeubb` int DEFAULT NULL,\n `nihfjgcugwhlznjoupsgopeprdlzjtei` int DEFAULT NULL,\n `tsevojpesdaogckuoogzplouvigkkvkm` int DEFAULT NULL,\n `dukhyopbvfrsdtoglziaasjvfnbahxba` int DEFAULT NULL,\n `odxbwndgrrwfoqcsbicjmrdbkbhenvhc` int DEFAULT NULL,\n PRIMARY KEY (`kekqazutbfqfylsnvtflgteoyctgscji`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"rrxmvbjbfyljiregbwvggjujgpkwekjf\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["kekqazutbfqfylsnvtflgteoyctgscji"],"columns":[{"name":"kekqazutbfqfylsnvtflgteoyctgscji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"mserffeokdbnkxeaalirexaydtlbhoyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dguwlmlftdorxmgfnknqnhqqyazquywe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xzmeuxgfcvogeghztimenqrsmcaktcor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"snwngrqvynxtbiunzbgskvoostibnfka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajjbcaywlovbgslrlljyixtkoczsstpo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nlvprsgsxbrejcfebhwoibdcfvgcfuhs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcjyevfgqrkxmgpzhwiymjwzfnonhxhs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"chinxexsupnmkcwmlvkdlnfobkundzhi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xwjfmwlokuuezboeiprmjvqleidljjox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"haxnoqhxhrqnmdidqztvobnhaeadbrft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evkxahnxazsrljjompyjznuxjojjjnam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgoqjxnfcrjigkjzdtzeeybrjkdfbhvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yvrylopztfqmyzltezaxgpneurlaawtk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gpdtjhsobqoojvxwmchrzbbxvzplbudc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmoigciodnihbuohxveethsebxkvkexd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ifxqiryzlryadpnstbkruvtiwlagubaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqjdgyfwwjpgxbdessessmqmtnheidwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hocmrecwaueghznnbexelwrdcmtxvdiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"posocyikqmyozeltlzskeedyzddqnktm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmobhprmvynkcqrfywcrmgipbjuxnghw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ngcjmqkabezkmboeuxjmoxslwdrcylos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iopkylvytzcbivqgkfkbktziucbmxnzx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnxpyoeemoafbuqzpdfefajepkmyxnhk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atnadqtwqjesqimlerljxwwahoreazwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pykpwivrsibucbvbokswqaydwqaogpic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dijnakdiepwvuohqgomxhlmpgdpihfqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kseddcmaledtvcqocmbcfwjpozhvdomy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzxhsuetdgzznjvbvkbpjmclsvittnyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mdrgzfbljrdcpxaiiyremygxwkecukfe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rptpnvdqnrzblanvbwcaaigqcelkmblu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zfrvgysexscraoqfdqgfxppnknhhgxzk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmdfqvjsmbuusxkfdztbwftmrwybgwbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdwxxujylrojwoglflvhtijoxugcmqda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"diohifpautfbnqdqsbukbijldyklzokt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grkitjaxzhcdxgiewulrrupmgysmhozd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"buzzpexmtrzjtzpocvjmqsoescjgfprb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xtqrxgludvytftpfwisdazuupzrpjwqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfcwrgnkhtkgpiwbbviwduocqhiwbdnz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nowmgxnargnotrgikfvyqbeoealqryqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqvlpqgcczdkmspakjgcjmxwbcyafelo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdwdqthzgswmrouspcudeuewrbhxbxkc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xwakcpunljpjqteueehaoimkmnzpbxrd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kaywifzgrpvufspipbvzxzoeuuwvgcez","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzymjukukvdjkjwcmokqjgrxxdfhmnzh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kuhtdudhhnemeyqwneqcxyhnsmrrflbh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzqkqtcmluqxhozmsosjyrrnzxolegwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ayegrdocoermaufnvjqjqatcehtoaqbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljwvaqozwlvaxgjulpukqguqnjzeikcb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zadlauatjsgqwyflelimmrhxtuqemeqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zoxpceleidoconnlktkjfktzvsrwyjyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"assmiiasqatuvxshicohbzpnkmbpifzu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gwvmbrpovisgrcvrvmlngjndfugcpuxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"clxknwsxjweclqbbvdeaoqzewiqclvxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fiiyfewkfciqwjzdhpnfgppafbenjlxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dyakhmbtdfgjihhrqsmkgbyayynlleoq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkyisacypnxazthaapfkpsxymvwdjvlt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcouzwzaokoiptbxjcuwoyznctfwjnjr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ccsziuxrvzdgmaldxndhgpqbxkizahhm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqsfnzvhnhsfhbqadauqunvjcvxvadft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujbbvkcehdfuerwlnajswbifvibdjxqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"monkswgtfvquzjxdtbpfgedgktxsjpkp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhwguvhtfjaarhcqungehpluarzbgsin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fkgbgymjvwkucsgbzleftmxpinwfifzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkyegfpktdcynfaivefzsygijqawtvht","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftsabepzyjjqooaezazlhnzufecpzcbs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmtufzusxzkqthsbesaoqejoqmzxwpcx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vuxumovwhnkwyirgnisfsrsfhhhsxjvk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jcdajcbbapctakajnexfgqeztmxydspi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grcmjyyjgnqzgruxefqeyzhzngtscmvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"illjlptcprruoutklsawmygipuzcgglu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfspigcgdslhuxddekinxvfwtvaxmdwd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwozwfancmhmqufklcnbuiiuzbgrhqvu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hzwychgbxjuzxslzeeagcwnbqsuovzxe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yuivxaldfapnnqpidcmhzqrafftljmac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bcfukfvjburgditzlelhjlohuujzchlk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkupuwxapuaxjhwzlctacyyskxummgio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ldfchnzjjcpctqrrgdwccktysldmbtre","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dchdthyeshljodqedgmqvoggogmfyzny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmhvmfiucwhzobcnlfzpkpxkxawppubm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbtzwaqayojqgvehbtrkxednqgfqnlov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfqihbjwqarfkdxrfohbkzlgogmfjhvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqdydhxazpbappermgtulwqfqrbenpfj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hpmfgiohqufcgivxrvummxvbjxxmjkmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bzbrswycssjphlwglaaujjvprhhxdpcs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfbzecgcebsdwmwtfacvrokrehephcxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vndhzcuiginpfibnoqwlvejrhfgdlytc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xlmwylikzahoiwxcsonhdntrznkvsfey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cdtnigovtjcenbxzqcsrmswhgxalusxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"abvmzqaerdjligxkutayzfaheoiyfmki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbldvntnhvlkibentgickgsmdbujztlo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"meibjzxvyhiotlnsyibbtcpomwcadhwd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdrbpylodhqirtlrzjoekbyqslnbopwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjfpnhotqkbgsjzcssapyhrwtvfgkzqi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgunerutusaontrvhonxdtjeeifymllo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nyfiurenlbnjktzhfhspoelrhpfbeubb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nihfjgcugwhlznjoupsgopeprdlzjtei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tsevojpesdaogckuoogzplouvigkkvkm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dukhyopbvfrsdtoglziaasjvfnbahxba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"odxbwndgrrwfoqcsbicjmrdbkbhenvhc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670961,"databaseName":"models_schema","ddl":"CREATE TABLE `rvwqmdxmybrqorpqethfdugrbikeeqen` (\n `mvovwbsmrpescqzmmhgsnzfzpqqqrxda` int NOT NULL,\n `senwxphrgjivdfluldfoqrhrpbrauukl` int DEFAULT NULL,\n `kchtrgxlbitwatjzijijbssasyzjjkaj` int DEFAULT NULL,\n `lgrokjnoxrcqyavovnrbjumsnjliqmel` int DEFAULT NULL,\n `sjffyfhkltrwhydfdqsgotwpumdurpra` int DEFAULT NULL,\n `wngbkvckykiygjmuhreuplgumfmehcrp` int DEFAULT NULL,\n `fmxcmeozhgfdazwimcadqtagunogwoie` int DEFAULT NULL,\n `hbehizqshgapkmjlmoyfiewtmfhgpgks` int DEFAULT NULL,\n `ocicivqobvamthlrxmjcunculnhjtmni` int DEFAULT NULL,\n `xwoqlzxdxyfoytwrgoiduetyrfovlbhq` int DEFAULT NULL,\n `sukrgsqfoecqgipqefjnvbmvqztwdpmr` int DEFAULT NULL,\n `cjloxxdokedjmbaezwtpqadlsyqyogho` int DEFAULT NULL,\n `awwehdfglitllkcxfzpvwvhjyqfseznx` int DEFAULT NULL,\n `lznkvyrnxcxhfgfbbfzdjhgzmldkhntx` int DEFAULT NULL,\n `wepgukvynvkwsnwdxnhpkuekkdfzfzzn` int DEFAULT NULL,\n `kidugtguuytfetfkhnnxxxxljqkshrfd` int DEFAULT NULL,\n `dsupezsyvkuatusotewacohlnqxmemvh` int DEFAULT NULL,\n `leomwokrqpwxhakqkiwgtwpqexdfygeg` int DEFAULT NULL,\n `usekaawbwavhamjengatfuwydbuphfnd` int DEFAULT NULL,\n `fjwvlokeegntkwcibvuskykxuegvxijp` int DEFAULT NULL,\n `lidhwpjjwpmfhpteopdlhlgpztqabdfm` int DEFAULT NULL,\n `xaxvdsbimubqfrspisoikjmebutzmykf` int DEFAULT NULL,\n `pcieworzoznyultulqiwuzdednvhtimr` int DEFAULT NULL,\n `gadnzgqtrhrcnsonoqjjyvhbuwkjkzkb` int DEFAULT NULL,\n `szjghstsulbzzhoepxskepygpiejippz` int DEFAULT NULL,\n `voqhemmjugolaljbskstaelgdpcayyxw` int DEFAULT NULL,\n `dtiznwsovnblpbrbfqaspfwivpbmammm` int DEFAULT NULL,\n `cejgqncsottrwnhgsyokzgyhtehfrfti` int DEFAULT NULL,\n `ehrsatipdmetlgplivfkqhjcyvxdlqsf` int DEFAULT NULL,\n `rgsakuonlqpkwshirjiujmtaoidsrgul` int DEFAULT NULL,\n `fnmjsydhrnglvvflfnhvbhbzyupawlld` int DEFAULT NULL,\n `mkzikzoitkernrwvpyaznxdqqekokcef` int DEFAULT NULL,\n `lfxiimtlefcbjimnshuknkwvvwbytpcz` int DEFAULT NULL,\n `jevpghzfndotzvljmywqafrzrvtoveqe` int DEFAULT NULL,\n `rmcitzwunrichrgjirhogcuexfkjegws` int DEFAULT NULL,\n `ixxdvselscowejtootctgtnbrgsufbfg` int DEFAULT NULL,\n `uymyvgdembuedxinfwvzktevapcpivbx` int DEFAULT NULL,\n `pxlxjcjwijosrlfllcjutwnzezlkblbp` int DEFAULT NULL,\n `iupputgzwheueyozdeurvwffblxxetji` int DEFAULT NULL,\n `bnkvtbofgqsmiyqtaxjeffcdcmbuvmew` int DEFAULT NULL,\n `btvwwzenldpkykiosgawloynpfdbmred` int DEFAULT NULL,\n `rxlnnrvulqrgpalhaorilinrrhufhqnu` int DEFAULT NULL,\n `djpibrcrlqbxrlqhjwnhwvmrakmkngkb` int DEFAULT NULL,\n `oanqyxezqmstycijlpzrxlrezqbsgsyk` int DEFAULT NULL,\n `orxkqpicekehonnjfxiryyrcwddhopnd` int DEFAULT NULL,\n `uwwneldfrbukunlpxsylvfslxnsqgefp` int DEFAULT NULL,\n `ovibuqhchermpwoqxyuubhxbljhzmtya` int DEFAULT NULL,\n `mxjspzyfclfomhdzwqvaehysnltntlat` int DEFAULT NULL,\n `phzwrjnkbcyoqpljfxvdlvphzmuffmum` int DEFAULT NULL,\n `hfxdolayftzwmozksgbjtrsowkkrhlyq` int DEFAULT NULL,\n `azwpxbjfyjstvqjltsvxeukkxfchyrii` int DEFAULT NULL,\n `vgblzrxfkauveglloridpabeeliowvtw` int DEFAULT NULL,\n `jbkajjdyxenelaoewmbkkvulwrqlacyz` int DEFAULT NULL,\n `nahkzghlaqythwukqdfrmpnaukxyfigc` int DEFAULT NULL,\n `ihsblpxrvstceixjdiijnnihezshjjsc` int DEFAULT NULL,\n `nbykfkmilnjepjjscqyiyewpsziwvbgo` int DEFAULT NULL,\n `oaxhcjxfzgwrrczhwvxailczdawuvheq` int DEFAULT NULL,\n `mpqvrfjopbfehsyiswdtzqrrxzyhksig` int DEFAULT NULL,\n `tathmbqlsikoyllrfdjtbppqhulqaobe` int DEFAULT NULL,\n `haopkbxfplewmlqbijdpztbyaxmggyac` int DEFAULT NULL,\n `nxlpcyvmyyoleancunigmydkfxrzidhc` int DEFAULT NULL,\n `cypxqaebvswotymmhoyeqczytmduasye` int DEFAULT NULL,\n `yxbwtizckjdcfapomxfilqnjxkwzaecj` int DEFAULT NULL,\n `clgdrwgzjggawhewjtskjsauvkqzlhib` int DEFAULT NULL,\n `vgeelrmjckvlviqwzuiggxniqoeglgmn` int DEFAULT NULL,\n `nephjlvzrohegoraftnkmbcpagwnwjep` int DEFAULT NULL,\n `dppvecymkqniekdhlimaxegmpwftylmi` int DEFAULT NULL,\n `xkkuloexgchkmnvmzbmvcybjhzehyrlx` int DEFAULT NULL,\n `sauerpesyrshlleiheysvqpctggllexy` int DEFAULT NULL,\n `psokoxsuzgpxkvexyahucholwrzpdmey` int DEFAULT NULL,\n `xyscyajdggaeeisbhiilpkxrnwetmjad` int DEFAULT NULL,\n `scuipqzxigedycswrzzxxiwbuysiucrb` int DEFAULT NULL,\n `eeubiqhwpjpzqbfvwcufnagsibleropl` int DEFAULT NULL,\n `tlagdwktvzpcqyqzthqacujvacpeyesq` int DEFAULT NULL,\n `igpqttjibmcevspmbtjhsyoddjwygqet` int DEFAULT NULL,\n `budmzdawcdmlksjvuqnloqpbeqegssix` int DEFAULT NULL,\n `uqyduqseivzjzhpxlxlomhzsawywtfer` int DEFAULT NULL,\n `revdscmdyfnbxejuxnnqmwhclatxgpeo` int DEFAULT NULL,\n `kpjnadtxkgzfwcytwcntfjeckobemzno` int DEFAULT NULL,\n `vgloxgvxyejsxnadjmdnwzwnlwodbzme` int DEFAULT NULL,\n `rgclokjzqmonuqmvhcngcrqgimhxhcgv` int DEFAULT NULL,\n `vgqvqnbcelmzrqfxenfcbypxcvsbzrrw` int DEFAULT NULL,\n `spxryppgxazrsbrcrhqpwxeloxdbluaq` int DEFAULT NULL,\n `noudcrlpwosgarmodwodzwdgqcrxvlok` int DEFAULT NULL,\n `ooehufjhmvjbbtjzpsurifiuvvlbnvoq` int DEFAULT NULL,\n `luleeiiljahhksnwgkhgshzrnyodhkwz` int DEFAULT NULL,\n `hwycqocctqxmvsyjkdjlrzzmmzmjvykk` int DEFAULT NULL,\n `meqcubfgjrwebaarleklrsyuydxllozw` int DEFAULT NULL,\n `ykhhhjwifbshxwupzexswmsnxixzjlua` int DEFAULT NULL,\n `syrxeuvuuglfuitpgabqnrzronyckway` int DEFAULT NULL,\n `vagdgceglcndrjmpknjrxakpzjfeusbq` int DEFAULT NULL,\n `msrhpapabnxgjumfgdsfiesiddybmrqo` int DEFAULT NULL,\n `ffypyqicltnnslsamfssvbfcqndhmaio` int DEFAULT NULL,\n `beulorvedxjkwvexjwmjtcplqhhcypji` int DEFAULT NULL,\n `tpkypsuxhsscngthgsdkvafbrvkjfxdc` int DEFAULT NULL,\n `lkvlpmdccesbnxfhdupgwctfcfzzehqx` int DEFAULT NULL,\n `diuvnnsrlhruqhxfxabhzywevcjakpje` int DEFAULT NULL,\n `uvddkszksyozavhtpeucdxcfyqybqiyt` int DEFAULT NULL,\n `akalmajkmdptrrupaguavlsuqdymuvxr` int DEFAULT NULL,\n `hlsiwodzlqsennypetxxbtzvakkpmvax` int DEFAULT NULL,\n PRIMARY KEY (`mvovwbsmrpescqzmmhgsnzfzpqqqrxda`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"rvwqmdxmybrqorpqethfdugrbikeeqen\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["mvovwbsmrpescqzmmhgsnzfzpqqqrxda"],"columns":[{"name":"mvovwbsmrpescqzmmhgsnzfzpqqqrxda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"senwxphrgjivdfluldfoqrhrpbrauukl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kchtrgxlbitwatjzijijbssasyzjjkaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgrokjnoxrcqyavovnrbjumsnjliqmel","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjffyfhkltrwhydfdqsgotwpumdurpra","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wngbkvckykiygjmuhreuplgumfmehcrp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmxcmeozhgfdazwimcadqtagunogwoie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbehizqshgapkmjlmoyfiewtmfhgpgks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocicivqobvamthlrxmjcunculnhjtmni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xwoqlzxdxyfoytwrgoiduetyrfovlbhq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sukrgsqfoecqgipqefjnvbmvqztwdpmr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cjloxxdokedjmbaezwtpqadlsyqyogho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awwehdfglitllkcxfzpvwvhjyqfseznx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lznkvyrnxcxhfgfbbfzdjhgzmldkhntx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wepgukvynvkwsnwdxnhpkuekkdfzfzzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kidugtguuytfetfkhnnxxxxljqkshrfd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dsupezsyvkuatusotewacohlnqxmemvh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"leomwokrqpwxhakqkiwgtwpqexdfygeg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"usekaawbwavhamjengatfuwydbuphfnd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjwvlokeegntkwcibvuskykxuegvxijp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lidhwpjjwpmfhpteopdlhlgpztqabdfm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xaxvdsbimubqfrspisoikjmebutzmykf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pcieworzoznyultulqiwuzdednvhtimr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gadnzgqtrhrcnsonoqjjyvhbuwkjkzkb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"szjghstsulbzzhoepxskepygpiejippz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"voqhemmjugolaljbskstaelgdpcayyxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtiznwsovnblpbrbfqaspfwivpbmammm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cejgqncsottrwnhgsyokzgyhtehfrfti","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehrsatipdmetlgplivfkqhjcyvxdlqsf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgsakuonlqpkwshirjiujmtaoidsrgul","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnmjsydhrnglvvflfnhvbhbzyupawlld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkzikzoitkernrwvpyaznxdqqekokcef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfxiimtlefcbjimnshuknkwvvwbytpcz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jevpghzfndotzvljmywqafrzrvtoveqe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rmcitzwunrichrgjirhogcuexfkjegws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixxdvselscowejtootctgtnbrgsufbfg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uymyvgdembuedxinfwvzktevapcpivbx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxlxjcjwijosrlfllcjutwnzezlkblbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iupputgzwheueyozdeurvwffblxxetji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnkvtbofgqsmiyqtaxjeffcdcmbuvmew","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"btvwwzenldpkykiosgawloynpfdbmred","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxlnnrvulqrgpalhaorilinrrhufhqnu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"djpibrcrlqbxrlqhjwnhwvmrakmkngkb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oanqyxezqmstycijlpzrxlrezqbsgsyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orxkqpicekehonnjfxiryyrcwddhopnd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uwwneldfrbukunlpxsylvfslxnsqgefp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovibuqhchermpwoqxyuubhxbljhzmtya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mxjspzyfclfomhdzwqvaehysnltntlat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phzwrjnkbcyoqpljfxvdlvphzmuffmum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfxdolayftzwmozksgbjtrsowkkrhlyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"azwpxbjfyjstvqjltsvxeukkxfchyrii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgblzrxfkauveglloridpabeeliowvtw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jbkajjdyxenelaoewmbkkvulwrqlacyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nahkzghlaqythwukqdfrmpnaukxyfigc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ihsblpxrvstceixjdiijnnihezshjjsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbykfkmilnjepjjscqyiyewpsziwvbgo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oaxhcjxfzgwrrczhwvxailczdawuvheq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpqvrfjopbfehsyiswdtzqrrxzyhksig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tathmbqlsikoyllrfdjtbppqhulqaobe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"haopkbxfplewmlqbijdpztbyaxmggyac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxlpcyvmyyoleancunigmydkfxrzidhc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cypxqaebvswotymmhoyeqczytmduasye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxbwtizckjdcfapomxfilqnjxkwzaecj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"clgdrwgzjggawhewjtskjsauvkqzlhib","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgeelrmjckvlviqwzuiggxniqoeglgmn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nephjlvzrohegoraftnkmbcpagwnwjep","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dppvecymkqniekdhlimaxegmpwftylmi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkkuloexgchkmnvmzbmvcybjhzehyrlx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sauerpesyrshlleiheysvqpctggllexy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"psokoxsuzgpxkvexyahucholwrzpdmey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyscyajdggaeeisbhiilpkxrnwetmjad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"scuipqzxigedycswrzzxxiwbuysiucrb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eeubiqhwpjpzqbfvwcufnagsibleropl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlagdwktvzpcqyqzthqacujvacpeyesq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igpqttjibmcevspmbtjhsyoddjwygqet","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"budmzdawcdmlksjvuqnloqpbeqegssix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqyduqseivzjzhpxlxlomhzsawywtfer","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"revdscmdyfnbxejuxnnqmwhclatxgpeo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kpjnadtxkgzfwcytwcntfjeckobemzno","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgloxgvxyejsxnadjmdnwzwnlwodbzme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgclokjzqmonuqmvhcngcrqgimhxhcgv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgqvqnbcelmzrqfxenfcbypxcvsbzrrw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"spxryppgxazrsbrcrhqpwxeloxdbluaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"noudcrlpwosgarmodwodzwdgqcrxvlok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ooehufjhmvjbbtjzpsurifiuvvlbnvoq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"luleeiiljahhksnwgkhgshzrnyodhkwz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwycqocctqxmvsyjkdjlrzzmmzmjvykk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"meqcubfgjrwebaarleklrsyuydxllozw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykhhhjwifbshxwupzexswmsnxixzjlua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"syrxeuvuuglfuitpgabqnrzronyckway","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vagdgceglcndrjmpknjrxakpzjfeusbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"msrhpapabnxgjumfgdsfiesiddybmrqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffypyqicltnnslsamfssvbfcqndhmaio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"beulorvedxjkwvexjwmjtcplqhhcypji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpkypsuxhsscngthgsdkvafbrvkjfxdc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lkvlpmdccesbnxfhdupgwctfcfzzehqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"diuvnnsrlhruqhxfxabhzywevcjakpje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvddkszksyozavhtpeucdxcfyqybqiyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akalmajkmdptrrupaguavlsuqdymuvxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlsiwodzlqsennypetxxbtzvakkpmvax","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842670,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842670994,"databaseName":"models_schema","ddl":"CREATE TABLE `sddicdunfmgiuvegaxtmieursdrycsld` (\n `lmayayxeczzyswnwokdgtdtezojmhxxh` int NOT NULL,\n `aaiaggipllscvffjwzbyevcbrjgptimx` int DEFAULT NULL,\n `tuwwgithjuimzplkcilocdfoufghdrdg` int DEFAULT NULL,\n `hjqtliiulotixfcjavlyvxswoshthpqd` int DEFAULT NULL,\n `kmulkuxkybimhawsagpgikwuqvhpprmc` int DEFAULT NULL,\n `lxyrjjypgxprdvvencrzsssnburpglkp` int DEFAULT NULL,\n `qlvaumhansxsmeipuzxiaupcbspllqgd` int DEFAULT NULL,\n `rhzxhdektejfovvrhmbxzpflwrirnlxv` int DEFAULT NULL,\n `utzqojnsczfzuuieztatontskccrytio` int DEFAULT NULL,\n `barxdcdfxaathotiheldyimiwbxnxlxa` int DEFAULT NULL,\n `nbbhmmprgxcthdprlduhmdutneczobrp` int DEFAULT NULL,\n `lcdumezscwxqqzrcsxpxniaidduabycy` int DEFAULT NULL,\n `jkgcnhdwsmjndomjfdlmxgovpanshxcz` int DEFAULT NULL,\n `qwakecwcewhmkfqrzorzuoyvtlceprcw` int DEFAULT NULL,\n `bujpeuadbdbkwcbfdxcguwhqjymejlhh` int DEFAULT NULL,\n `fmxjsmsneknkscudhzsqgvylonqfhgvx` int DEFAULT NULL,\n `gijzvnaortyzbitgijtupfjborlresut` int DEFAULT NULL,\n `tfhiwthgytprcibfqiwtcrsyxrksbjrn` int DEFAULT NULL,\n `tqfzpumusmmoucmxmhcnnbgorvqiaymw` int DEFAULT NULL,\n `cqkqcaqdjyvwrngbzmnaxyomudaorsei` int DEFAULT NULL,\n `vsdjcszckhlqaplylbizwqzjqqnpzuad` int DEFAULT NULL,\n `rgnhhlklnfjfvgzaxoolnhjeuqllnqyq` int DEFAULT NULL,\n `daxvlqerwwiuguxwamrtknxivgzjmfex` int DEFAULT NULL,\n `jaahwerurucxzxumamuzfwdghtdsalpz` int DEFAULT NULL,\n `kjfznanuwoxljacuqpbrnddmjbgtjaym` int DEFAULT NULL,\n `barvdpbmnwazsqktwoxsiipnkeaasesz` int DEFAULT NULL,\n `vtvwnotiyrnxgnvkryybcsldffhboxpq` int DEFAULT NULL,\n `uwfbnofnovhnwryvueffvnvmdowlxedw` int DEFAULT NULL,\n `nqcbqkpqtmgfirvaarlxabymespfvlcd` int DEFAULT NULL,\n `hscwkdvatctjvsotbfvevofgylhhetzo` int DEFAULT NULL,\n `zgghklmxyviapwrierhqleoudhmawnfn` int DEFAULT NULL,\n `idmeovotgepjanqjkvlqmudfjdxswamn` int DEFAULT NULL,\n `etzrerwbeytrlnzayocleqhiesfclsmk` int DEFAULT NULL,\n `vvsolhdwfmskaojojwuyydvlckopmnga` int DEFAULT NULL,\n `crbgvzrrmsvtvoxhkzabixygthmtmpjn` int DEFAULT NULL,\n `iwkzkczwteapojhpmyukqqhnbptxdljl` int DEFAULT NULL,\n `yglndmswupsvjfpsxkdrutdeynkxsbln` int DEFAULT NULL,\n `yjwlmvsqsvfkkimyumlfevpjhwcyinwh` int DEFAULT NULL,\n `kxwmhxjcxhfxwfsguaqxuhvpncqtnejt` int DEFAULT NULL,\n `wibscietuqbfpjgdwpnicnytyohvrkrr` int DEFAULT NULL,\n `rzjeztkqotctvcupywauefxpafrpcbxq` int DEFAULT NULL,\n `hirlhaonhrrkfgecbzakdjzvuvbbzopo` int DEFAULT NULL,\n `erncitlkkxudtqdhjthfhhjjmdzzvwof` int DEFAULT NULL,\n `upuiilmlqoobxvrzuvxzvyyzrejosqwm` int DEFAULT NULL,\n `fkcsnqztgklqajjjexxsegxulquyyjet` int DEFAULT NULL,\n `hymbgarexpxmrgflgfkhmatxjztmjufc` int DEFAULT NULL,\n `bmbklowugvislldwcboansaxayrixonc` int DEFAULT NULL,\n `rgrckxzegvdmzzfnyhmswywgdeoaluzc` int DEFAULT NULL,\n `oowyqzcngosotoqyrdotnddpbkmwnbic` int DEFAULT NULL,\n `wsjdcmkaislhfgpvjhjgmpejizldfyit` int DEFAULT NULL,\n `wwoausvlmmvmekvweeyewqrddfdqpihs` int DEFAULT NULL,\n `geuiwapbxecthkwyrbnjblvwzcumgrzf` int DEFAULT NULL,\n `opshdrodlbkdutzfzmkshocqgkbsgwsi` int DEFAULT NULL,\n `taaqnvlxuyktyipuikjltpobiygnovzq` int DEFAULT NULL,\n `dtacxeuoeyydpernuyxgoudmmbzeiimk` int DEFAULT NULL,\n `wioweiwoqugtaosekrlgpjzeoivvrrzy` int DEFAULT NULL,\n `zhvldsaoettruwbameanbxgfzbjjsbbr` int DEFAULT NULL,\n `nsczdunlwgoflxlgawtaagrifwduehhl` int DEFAULT NULL,\n `zxxswtcowvntuiejtojrtxwoekrkgejd` int DEFAULT NULL,\n `nqhkchctrvsawvbfqjgfubqmlkkhbwgj` int DEFAULT NULL,\n `zhcqdfkzusdobccjlxztaeiupiflnccm` int DEFAULT NULL,\n `gzmdygylfanlavwrzixwpvdpabqkfdox` int DEFAULT NULL,\n `qnwlhbpmvbcsihgngnmqrqbxdzojxbay` int DEFAULT NULL,\n `rrlbdnqzvgyzreimeqhhmnkfcnmifibw` int DEFAULT NULL,\n `zkaqdqkwpazwktgafxkchbzwuhytsabf` int DEFAULT NULL,\n `piyvfoneyfmiexbjgcuitjgkrnxhlbck` int DEFAULT NULL,\n `szsbdbaqwfubgdifndfqpszsfwumadmx` int DEFAULT NULL,\n `blizvescwfigelzdujsyrvpgmmtccwnr` int DEFAULT NULL,\n `ajbfefqlxlmixuyffohtmpucpnbvhtyw` int DEFAULT NULL,\n `rpjgnryhevlzyrsycirfokikgprmipme` int DEFAULT NULL,\n `ouseopigfkftwmrmppqosdemnwphnjql` int DEFAULT NULL,\n `hinzrrbgjlmbsskzjauaxchctkgugbys` int DEFAULT NULL,\n `owqlbdpxptwezwwsdsatsbedbjtcxxlu` int DEFAULT NULL,\n `ymqqqmbrdysflopjjxearxxislimfamy` int DEFAULT NULL,\n `dlhxauuevyfxvadkgmzsvejkdamkhlyh` int DEFAULT NULL,\n `dzsxtwlhcbbncxzbiytzwosombmknnke` int DEFAULT NULL,\n `bepavpuqxbpsitpxphatvqpjjconhrcg` int DEFAULT NULL,\n `brlfmyurnvxykmixijscidhzjqtovzxe` int DEFAULT NULL,\n `fajfvszawqcoqenxraytrejprfjzzvsg` int DEFAULT NULL,\n `tpcxfvlyxyscrayftexriktfqujjwzsw` int DEFAULT NULL,\n `ihkbzrfxslwqiwmgcchpwairlhwhlydx` int DEFAULT NULL,\n `seynxgrxgpsgdjyjjrovknnrllzbiski` int DEFAULT NULL,\n `omohmkgmjsvsqdghamrkgnawoxwyofva` int DEFAULT NULL,\n `iuzgvkmlfpuszyxitduqsstusbgwcesg` int DEFAULT NULL,\n `rrgrifymfiqsikvgsuocvcurfjtdgfwx` int DEFAULT NULL,\n `qwmlhkhwjmljjgmtimgcpdjkjejtreeh` int DEFAULT NULL,\n `hehbbvghrviyaqlhuzuofmpslcmygezs` int DEFAULT NULL,\n `nzpsqpcizxxgaxkjfsalgrummvtvoyzm` int DEFAULT NULL,\n `wejeyuvorfjxjtdahyuemwjiljsajxnu` int DEFAULT NULL,\n `jytokbfzvzaukokqjljxhojjrghewohw` int DEFAULT NULL,\n `widuipqknqdhszbncdavfjsdedewsyvs` int DEFAULT NULL,\n `sebtbamrinldmkgtqoftysrsalqyfzka` int DEFAULT NULL,\n `pulsupowtrqleuatxuodtpzkcetfekye` int DEFAULT NULL,\n `ifnzylgvfrchkbnulwdijdwufuvuilii` int DEFAULT NULL,\n `rfyiabobhwujiundkqkpcnnflkelunia` int DEFAULT NULL,\n `ybxzailvvddcmblktovwwrvmjoldcjgu` int DEFAULT NULL,\n `pmdwutycqmclacuukfukcwiqoekchwuv` int DEFAULT NULL,\n `ehvuomldcytwtzfuwsorsxapzfsrvxay` int DEFAULT NULL,\n `mztlwlwkibbhnnesckeslstmbjihdhkc` int DEFAULT NULL,\n `vffrpbisztukffthbiqvjqkwhvlmaamm` int DEFAULT NULL,\n PRIMARY KEY (`lmayayxeczzyswnwokdgtdtezojmhxxh`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"sddicdunfmgiuvegaxtmieursdrycsld\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["lmayayxeczzyswnwokdgtdtezojmhxxh"],"columns":[{"name":"lmayayxeczzyswnwokdgtdtezojmhxxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"aaiaggipllscvffjwzbyevcbrjgptimx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tuwwgithjuimzplkcilocdfoufghdrdg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjqtliiulotixfcjavlyvxswoshthpqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kmulkuxkybimhawsagpgikwuqvhpprmc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxyrjjypgxprdvvencrzsssnburpglkp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qlvaumhansxsmeipuzxiaupcbspllqgd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhzxhdektejfovvrhmbxzpflwrirnlxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utzqojnsczfzuuieztatontskccrytio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"barxdcdfxaathotiheldyimiwbxnxlxa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbbhmmprgxcthdprlduhmdutneczobrp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lcdumezscwxqqzrcsxpxniaidduabycy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jkgcnhdwsmjndomjfdlmxgovpanshxcz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwakecwcewhmkfqrzorzuoyvtlceprcw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bujpeuadbdbkwcbfdxcguwhqjymejlhh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmxjsmsneknkscudhzsqgvylonqfhgvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gijzvnaortyzbitgijtupfjborlresut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tfhiwthgytprcibfqiwtcrsyxrksbjrn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqfzpumusmmoucmxmhcnnbgorvqiaymw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqkqcaqdjyvwrngbzmnaxyomudaorsei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsdjcszckhlqaplylbizwqzjqqnpzuad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgnhhlklnfjfvgzaxoolnhjeuqllnqyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"daxvlqerwwiuguxwamrtknxivgzjmfex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jaahwerurucxzxumamuzfwdghtdsalpz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjfznanuwoxljacuqpbrnddmjbgtjaym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"barvdpbmnwazsqktwoxsiipnkeaasesz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtvwnotiyrnxgnvkryybcsldffhboxpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uwfbnofnovhnwryvueffvnvmdowlxedw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqcbqkpqtmgfirvaarlxabymespfvlcd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hscwkdvatctjvsotbfvevofgylhhetzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zgghklmxyviapwrierhqleoudhmawnfn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idmeovotgepjanqjkvlqmudfjdxswamn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"etzrerwbeytrlnzayocleqhiesfclsmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vvsolhdwfmskaojojwuyydvlckopmnga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"crbgvzrrmsvtvoxhkzabixygthmtmpjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwkzkczwteapojhpmyukqqhnbptxdljl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yglndmswupsvjfpsxkdrutdeynkxsbln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjwlmvsqsvfkkimyumlfevpjhwcyinwh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxwmhxjcxhfxwfsguaqxuhvpncqtnejt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wibscietuqbfpjgdwpnicnytyohvrkrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzjeztkqotctvcupywauefxpafrpcbxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hirlhaonhrrkfgecbzakdjzvuvbbzopo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"erncitlkkxudtqdhjthfhhjjmdzzvwof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upuiilmlqoobxvrzuvxzvyyzrejosqwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fkcsnqztgklqajjjexxsegxulquyyjet","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hymbgarexpxmrgflgfkhmatxjztmjufc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bmbklowugvislldwcboansaxayrixonc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgrckxzegvdmzzfnyhmswywgdeoaluzc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oowyqzcngosotoqyrdotnddpbkmwnbic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wsjdcmkaislhfgpvjhjgmpejizldfyit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwoausvlmmvmekvweeyewqrddfdqpihs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"geuiwapbxecthkwyrbnjblvwzcumgrzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opshdrodlbkdutzfzmkshocqgkbsgwsi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"taaqnvlxuyktyipuikjltpobiygnovzq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtacxeuoeyydpernuyxgoudmmbzeiimk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wioweiwoqugtaosekrlgpjzeoivvrrzy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhvldsaoettruwbameanbxgfzbjjsbbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nsczdunlwgoflxlgawtaagrifwduehhl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxxswtcowvntuiejtojrtxwoekrkgejd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqhkchctrvsawvbfqjgfubqmlkkhbwgj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhcqdfkzusdobccjlxztaeiupiflnccm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzmdygylfanlavwrzixwpvdpabqkfdox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qnwlhbpmvbcsihgngnmqrqbxdzojxbay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrlbdnqzvgyzreimeqhhmnkfcnmifibw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zkaqdqkwpazwktgafxkchbzwuhytsabf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"piyvfoneyfmiexbjgcuitjgkrnxhlbck","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"szsbdbaqwfubgdifndfqpszsfwumadmx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blizvescwfigelzdujsyrvpgmmtccwnr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajbfefqlxlmixuyffohtmpucpnbvhtyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpjgnryhevlzyrsycirfokikgprmipme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ouseopigfkftwmrmppqosdemnwphnjql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hinzrrbgjlmbsskzjauaxchctkgugbys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owqlbdpxptwezwwsdsatsbedbjtcxxlu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ymqqqmbrdysflopjjxearxxislimfamy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dlhxauuevyfxvadkgmzsvejkdamkhlyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dzsxtwlhcbbncxzbiytzwosombmknnke","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bepavpuqxbpsitpxphatvqpjjconhrcg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"brlfmyurnvxykmixijscidhzjqtovzxe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fajfvszawqcoqenxraytrejprfjzzvsg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpcxfvlyxyscrayftexriktfqujjwzsw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ihkbzrfxslwqiwmgcchpwairlhwhlydx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"seynxgrxgpsgdjyjjrovknnrllzbiski","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omohmkgmjsvsqdghamrkgnawoxwyofva","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iuzgvkmlfpuszyxitduqsstusbgwcesg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrgrifymfiqsikvgsuocvcurfjtdgfwx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwmlhkhwjmljjgmtimgcpdjkjejtreeh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hehbbvghrviyaqlhuzuofmpslcmygezs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzpsqpcizxxgaxkjfsalgrummvtvoyzm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wejeyuvorfjxjtdahyuemwjiljsajxnu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jytokbfzvzaukokqjljxhojjrghewohw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"widuipqknqdhszbncdavfjsdedewsyvs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sebtbamrinldmkgtqoftysrsalqyfzka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pulsupowtrqleuatxuodtpzkcetfekye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ifnzylgvfrchkbnulwdijdwufuvuilii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfyiabobhwujiundkqkpcnnflkelunia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ybxzailvvddcmblktovwwrvmjoldcjgu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmdwutycqmclacuukfukcwiqoekchwuv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehvuomldcytwtzfuwsorsxapzfsrvxay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mztlwlwkibbhnnesckeslstmbjihdhkc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vffrpbisztukffthbiqvjqkwhvlmaamm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671025,"databaseName":"models_schema","ddl":"CREATE TABLE `seckcqhiaewieeiomssfzbhcvhkqmjnt` (\n `oovfrslhvjczrfstpedrbajuvdsqgkdi` int NOT NULL,\n `reshbefeivgyzcvipyffiralbgwcniwm` int DEFAULT NULL,\n `ebszyvmoitfudfvbxlxawqnczmmahjuq` int DEFAULT NULL,\n `zunfdaaebgofdhlcouwgpaovwldpyjmy` int DEFAULT NULL,\n `jznifskpbwodtorleieoekyfswqeorzq` int DEFAULT NULL,\n `xdbxoncqrkokwzvrmvypzuckxjujjdxl` int DEFAULT NULL,\n `rftwymplokumlpgeueazjzoemnamfgrm` int DEFAULT NULL,\n `xjiutzupgticqmvppagiylocggfdsxme` int DEFAULT NULL,\n `dldmkqnuegxrztoczievaojahhrumnfj` int DEFAULT NULL,\n `fiqwaioorcfhawnzqqreloluupfemkuf` int DEFAULT NULL,\n `egndsdwksuifsiigkanouzndhjtrhhma` int DEFAULT NULL,\n `czhpjibwtzmudelxcxtqoxbznbeewjsc` int DEFAULT NULL,\n `fwziqetwmgvkdvklphpazxdkkefqemii` int DEFAULT NULL,\n `firaliasykqwxuldjmpterrbqiqcpbzw` int DEFAULT NULL,\n `kkqvwheofxlntkuaawbgktgsgwnibcdu` int DEFAULT NULL,\n `mseypvsmnyxschylbfmkkacpejzprlrv` int DEFAULT NULL,\n `fyhdnkzggfkmoacuweancutzagefyjro` int DEFAULT NULL,\n `zjeuwcafakbzmhxmvlznylazxoorjakk` int DEFAULT NULL,\n `qgfanpbxivodnaythctrcnegweuazame` int DEFAULT NULL,\n `ywzrlugxgjjmrulbuevcdsrjofadfiex` int DEFAULT NULL,\n `edslmvlezfdxtrqkeyukjsjamtwxkppg` int DEFAULT NULL,\n `lamoxrjjrtgyjomvnbaapxuekjlszwzd` int DEFAULT NULL,\n `hwetchxahznkhafcbjwfatcngzbzwbie` int DEFAULT NULL,\n `apeirbtzvejpegmonzbpaguhzmjhqyos` int DEFAULT NULL,\n `prmvtubenqnyfreppqefrwhxwtcclexk` int DEFAULT NULL,\n `jraeqcwjthmexugrzqrfqwpfawokjzgi` int DEFAULT NULL,\n `ysoqpbotjoohyyyfmybjgecuiqyhccrk` int DEFAULT NULL,\n `tqohgcpokmyvjwaamtlwmqeyxeupasnn` int DEFAULT NULL,\n `yhtadsupzwybyxnnnchcgeecsdltljtf` int DEFAULT NULL,\n `jyymrvujabpntzvuvfljwbeyqwvlpytr` int DEFAULT NULL,\n `xqodfnpvyivmcuphshrheaqrdmkonfnx` int DEFAULT NULL,\n `kiisxswtdamaorxysexbspaxgygtnxsi` int DEFAULT NULL,\n `lwtuiquuczyfuanzvoepwgbefutxblyx` int DEFAULT NULL,\n `adbxfdscevgfynnxykfaakzlyxycnsld` int DEFAULT NULL,\n `sjjazejdlejskagggmpmtykvdmanzhiy` int DEFAULT NULL,\n `jzctabzglbwwkfctrkjxnbspyiynmsev` int DEFAULT NULL,\n `rxqsxglceuojxiepucxquwgecweaxzcl` int DEFAULT NULL,\n `lrbgyibcwkcrkfrpyijhveexuupsqvey` int DEFAULT NULL,\n `okqgxftvvvuvbwzmfwvsofurwghndcdt` int DEFAULT NULL,\n `jlfbuhxzauildcvknpjbogpgogskhuza` int DEFAULT NULL,\n `voydsijnclkkqoxyngcuatyrhobunrbk` int DEFAULT NULL,\n `lwepcekkvcazclaoyttpogetaxxhtqjr` int DEFAULT NULL,\n `adeimqwucaijhfsstsjawrtcwyunrcaq` int DEFAULT NULL,\n `ncwtguovmkgykhgpvejfkdjdfiprfzrl` int DEFAULT NULL,\n `iowrgyfzilefanqndrghtcbxeutxvsfz` int DEFAULT NULL,\n `kceetimgfujmvnjyftntdxuzptlgvpwt` int DEFAULT NULL,\n `apqbcgmaovdikcrfkbjjvlvguysunqrb` int DEFAULT NULL,\n `dscrxuapcfmayrkxqpphihcurwrhxfyx` int DEFAULT NULL,\n `cnvywfjakkqwzszbitogydwrplmphgzg` int DEFAULT NULL,\n `lsiyawaoemgkrodnsfymorvnjzqixtkx` int DEFAULT NULL,\n `zflejbarwckjjjloexbwgptkphokyoim` int DEFAULT NULL,\n `qwjasricywoyynciltblrmixouupbebr` int DEFAULT NULL,\n `lyksjpzgsccrrxnjwwutyhzsrzzdydaq` int DEFAULT NULL,\n `pkelrozpzmxnicmaczztofkoyoyxcdxy` int DEFAULT NULL,\n `vnlwvbbpxhxbsrvihnifzaqhiamozjbw` int DEFAULT NULL,\n `vyakuwnpkmpurfodutpbmvvbwinjrqym` int DEFAULT NULL,\n `mbrqjmmgcpeyxkkyqkqgpshaepqxvgxs` int DEFAULT NULL,\n `fmbykqallnllhjykmwcfvfraosfbtfet` int DEFAULT NULL,\n `nizrygnndzzrbptdzuslzrlcuxugfyfj` int DEFAULT NULL,\n `ooikfirshlpztfmdojdmhxocuiblwxnc` int DEFAULT NULL,\n `fgqqanfalttvjdqksdpdshcbmyozidhw` int DEFAULT NULL,\n `jktaffqqcfscnmjxopqtzrqxhdaobotr` int DEFAULT NULL,\n `ivtqpqgkidqrenmpjhyfflxesfivijhv` int DEFAULT NULL,\n `zeqtnswoewglaqqttvwltustqmmndpws` int DEFAULT NULL,\n `gmccilgzwwmyazxotszamfbtilwyawmb` int DEFAULT NULL,\n `iyosxytuemravyvbugnfjkhpuyqfimxe` int DEFAULT NULL,\n `uagzurpydbjbxbzbquqyjisxqivmnypr` int DEFAULT NULL,\n `sooodkifpudvxhnsidoxskjekxmahuzn` int DEFAULT NULL,\n `ipjjejhxiwdkeuhmjkfjankpedeshybo` int DEFAULT NULL,\n `bxmsvfjhdgddbvtkomageyhauhjpvvnt` int DEFAULT NULL,\n `jnjymrlgzsnkyszjxjhhjjfhflooqqls` int DEFAULT NULL,\n `jlmlwsiaitlxzyuateyfahfblbfixhnh` int DEFAULT NULL,\n `eufngpwumpauijoaednmopquxltwrzvr` int DEFAULT NULL,\n `sgsvouisbyrkwhcnljedcituikvuaftr` int DEFAULT NULL,\n `vhxwgipinvfzswltnzoxpnwkmeksmnoy` int DEFAULT NULL,\n `bsaqnszdsczrdjolyvbsvnldansqbhos` int DEFAULT NULL,\n `lwoevtgmyhgpatiosfzuvkbjjxmgtbbe` int DEFAULT NULL,\n `iwxmvcljuotzsivcquixoafjiilatfuf` int DEFAULT NULL,\n `zxnmgqhhmrhigjdawodonodiqyicdgxy` int DEFAULT NULL,\n `xsygedvsvfkpkmqxbboruvhwvmxwyqmx` int DEFAULT NULL,\n `qemuwaykztyuoiuzxkuyegaypgscqlra` int DEFAULT NULL,\n `dwpbbgmnetyiuorougweeraxojbxiklg` int DEFAULT NULL,\n `ebenoqdcjpocuiqvhlagshsfhwnkgigp` int DEFAULT NULL,\n `hxqtmydpwvrnvukwcalzobimlranngvc` int DEFAULT NULL,\n `lkrowiuxvnxslgfbnufxkxjaaequbkau` int DEFAULT NULL,\n `demkpbvcuorxjxwsmkokxcyyuzxfnhxy` int DEFAULT NULL,\n `lduthpalozdsezjzxzofkiimaouxychp` int DEFAULT NULL,\n `iypvkunnybmkzdsawljvploiwsmtporq` int DEFAULT NULL,\n `moizvzxxyhhnkfurwgrgvnfyqopedwjq` int DEFAULT NULL,\n `hnppwoopmnohottbfakukzaigocwcsyk` int DEFAULT NULL,\n `hdrlnywltjnfikprzhljnsdxffocxuhu` int DEFAULT NULL,\n `wllnzxihygqwaxvdaqcbwwoivwdhqadb` int DEFAULT NULL,\n `zzjpngaciqmhtzivrjzyilmafqqqjzxg` int DEFAULT NULL,\n `mwtnonivkyjeqkxbrwlxdbjeravzoyum` int DEFAULT NULL,\n `ntkikdfdqstqpjdrtewifnkwjsozdjja` int DEFAULT NULL,\n `eirxbuldsdcyafbzjektjeijduzfuqwg` int DEFAULT NULL,\n `rjnvnytntywusnqzdoyuytkowmterszt` int DEFAULT NULL,\n `vtocfcabnldqnciowgxsymfdqszpdjqd` int DEFAULT NULL,\n `uufitdfbwwxbyqsjkanhefzltdrybwnh` int DEFAULT NULL,\n `fyiyvnhepxfchknkpqtmkybdmrixrbpw` int DEFAULT NULL,\n PRIMARY KEY (`oovfrslhvjczrfstpedrbajuvdsqgkdi`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"seckcqhiaewieeiomssfzbhcvhkqmjnt\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["oovfrslhvjczrfstpedrbajuvdsqgkdi"],"columns":[{"name":"oovfrslhvjczrfstpedrbajuvdsqgkdi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"reshbefeivgyzcvipyffiralbgwcniwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebszyvmoitfudfvbxlxawqnczmmahjuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zunfdaaebgofdhlcouwgpaovwldpyjmy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jznifskpbwodtorleieoekyfswqeorzq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdbxoncqrkokwzvrmvypzuckxjujjdxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rftwymplokumlpgeueazjzoemnamfgrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjiutzupgticqmvppagiylocggfdsxme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dldmkqnuegxrztoczievaojahhrumnfj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fiqwaioorcfhawnzqqreloluupfemkuf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"egndsdwksuifsiigkanouzndhjtrhhma","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"czhpjibwtzmudelxcxtqoxbznbeewjsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwziqetwmgvkdvklphpazxdkkefqemii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"firaliasykqwxuldjmpterrbqiqcpbzw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kkqvwheofxlntkuaawbgktgsgwnibcdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mseypvsmnyxschylbfmkkacpejzprlrv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fyhdnkzggfkmoacuweancutzagefyjro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjeuwcafakbzmhxmvlznylazxoorjakk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qgfanpbxivodnaythctrcnegweuazame","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywzrlugxgjjmrulbuevcdsrjofadfiex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edslmvlezfdxtrqkeyukjsjamtwxkppg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lamoxrjjrtgyjomvnbaapxuekjlszwzd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwetchxahznkhafcbjwfatcngzbzwbie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"apeirbtzvejpegmonzbpaguhzmjhqyos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prmvtubenqnyfreppqefrwhxwtcclexk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jraeqcwjthmexugrzqrfqwpfawokjzgi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ysoqpbotjoohyyyfmybjgecuiqyhccrk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqohgcpokmyvjwaamtlwmqeyxeupasnn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhtadsupzwybyxnnnchcgeecsdltljtf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jyymrvujabpntzvuvfljwbeyqwvlpytr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqodfnpvyivmcuphshrheaqrdmkonfnx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kiisxswtdamaorxysexbspaxgygtnxsi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwtuiquuczyfuanzvoepwgbefutxblyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"adbxfdscevgfynnxykfaakzlyxycnsld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjjazejdlejskagggmpmtykvdmanzhiy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jzctabzglbwwkfctrkjxnbspyiynmsev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxqsxglceuojxiepucxquwgecweaxzcl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lrbgyibcwkcrkfrpyijhveexuupsqvey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"okqgxftvvvuvbwzmfwvsofurwghndcdt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlfbuhxzauildcvknpjbogpgogskhuza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"voydsijnclkkqoxyngcuatyrhobunrbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwepcekkvcazclaoyttpogetaxxhtqjr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"adeimqwucaijhfsstsjawrtcwyunrcaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ncwtguovmkgykhgpvejfkdjdfiprfzrl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iowrgyfzilefanqndrghtcbxeutxvsfz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kceetimgfujmvnjyftntdxuzptlgvpwt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"apqbcgmaovdikcrfkbjjvlvguysunqrb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dscrxuapcfmayrkxqpphihcurwrhxfyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnvywfjakkqwzszbitogydwrplmphgzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lsiyawaoemgkrodnsfymorvnjzqixtkx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zflejbarwckjjjloexbwgptkphokyoim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwjasricywoyynciltblrmixouupbebr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lyksjpzgsccrrxnjwwutyhzsrzzdydaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkelrozpzmxnicmaczztofkoyoyxcdxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vnlwvbbpxhxbsrvihnifzaqhiamozjbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vyakuwnpkmpurfodutpbmvvbwinjrqym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbrqjmmgcpeyxkkyqkqgpshaepqxvgxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmbykqallnllhjykmwcfvfraosfbtfet","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nizrygnndzzrbptdzuslzrlcuxugfyfj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ooikfirshlpztfmdojdmhxocuiblwxnc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fgqqanfalttvjdqksdpdshcbmyozidhw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jktaffqqcfscnmjxopqtzrqxhdaobotr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivtqpqgkidqrenmpjhyfflxesfivijhv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zeqtnswoewglaqqttvwltustqmmndpws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmccilgzwwmyazxotszamfbtilwyawmb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iyosxytuemravyvbugnfjkhpuyqfimxe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uagzurpydbjbxbzbquqyjisxqivmnypr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sooodkifpudvxhnsidoxskjekxmahuzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ipjjejhxiwdkeuhmjkfjankpedeshybo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bxmsvfjhdgddbvtkomageyhauhjpvvnt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jnjymrlgzsnkyszjxjhhjjfhflooqqls","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlmlwsiaitlxzyuateyfahfblbfixhnh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eufngpwumpauijoaednmopquxltwrzvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sgsvouisbyrkwhcnljedcituikvuaftr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhxwgipinvfzswltnzoxpnwkmeksmnoy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bsaqnszdsczrdjolyvbsvnldansqbhos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwoevtgmyhgpatiosfzuvkbjjxmgtbbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwxmvcljuotzsivcquixoafjiilatfuf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxnmgqhhmrhigjdawodonodiqyicdgxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsygedvsvfkpkmqxbboruvhwvmxwyqmx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qemuwaykztyuoiuzxkuyegaypgscqlra","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwpbbgmnetyiuorougweeraxojbxiklg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebenoqdcjpocuiqvhlagshsfhwnkgigp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hxqtmydpwvrnvukwcalzobimlranngvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lkrowiuxvnxslgfbnufxkxjaaequbkau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"demkpbvcuorxjxwsmkokxcyyuzxfnhxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lduthpalozdsezjzxzofkiimaouxychp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iypvkunnybmkzdsawljvploiwsmtporq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"moizvzxxyhhnkfurwgrgvnfyqopedwjq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hnppwoopmnohottbfakukzaigocwcsyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdrlnywltjnfikprzhljnsdxffocxuhu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wllnzxihygqwaxvdaqcbwwoivwdhqadb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzjpngaciqmhtzivrjzyilmafqqqjzxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwtnonivkyjeqkxbrwlxdbjeravzoyum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntkikdfdqstqpjdrtewifnkwjsozdjja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eirxbuldsdcyafbzjektjeijduzfuqwg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjnvnytntywusnqzdoyuytkowmterszt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtocfcabnldqnciowgxsymfdqszpdjqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uufitdfbwwxbyqsjkanhefzltdrybwnh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fyiyvnhepxfchknkpqtmkybdmrixrbpw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671055,"databaseName":"models_schema","ddl":"CREATE TABLE `siftmoygptajwmczbovtnwqyjdpcmqfw` (\n `uivlpthlrbnmxdbdqavwzrskepgcbegn` int NOT NULL,\n `pcnxdvwzcfhndagfkfcfrrfukhfepiwl` int DEFAULT NULL,\n `bebhbdmqdnnurtvndltiffxrfgsseugv` int DEFAULT NULL,\n `xzsmpglyqcmknuynawizgfmfjpppmcop` int DEFAULT NULL,\n `awxzgdjtozyfyrzdenrjhytehsnaaprf` int DEFAULT NULL,\n `lphrifnpgqniraprpkodbymhvkwtdzus` int DEFAULT NULL,\n `klhbtxuklakedhklnelkrioayhslrkqi` int DEFAULT NULL,\n `qqtuiqkzvjqhwbmkjsevzzoarmjncvge` int DEFAULT NULL,\n `vsuqlohmuduxiomsrscwagjwnxnojoae` int DEFAULT NULL,\n `yaishqjnletvarkzobmcalvkietcrtqw` int DEFAULT NULL,\n `vlfxfzyxbmixictzwqqnknxcbdfathcl` int DEFAULT NULL,\n `fnqcdufrumetgrebuuexgmckcedwbonb` int DEFAULT NULL,\n `jxjogsehugwrmjdjwshcolsadyzegext` int DEFAULT NULL,\n `lwcmiywmhcgthlavvqcawjxkhtoprtek` int DEFAULT NULL,\n `nsnnjfzivfpwzvbvznzpkbrljayqrwxa` int DEFAULT NULL,\n `vsabfhptvohxhhdsfeydekrbwkkvujfb` int DEFAULT NULL,\n `bkxqdticjpufxekgyxzthgvxmrqoewjv` int DEFAULT NULL,\n `utuikxkmsomatzcytqurhaciwdnqdguk` int DEFAULT NULL,\n `acbooodmjaxgargzptfahjsjqmwdnkjv` int DEFAULT NULL,\n `dddawkrdqyqiceytxkpirjilffozyptc` int DEFAULT NULL,\n `jctrsahixmrvjmqshdpkwpdphypjfuwf` int DEFAULT NULL,\n `bowtrhqyoqknlnkpdskqwqsqjeescghy` int DEFAULT NULL,\n `xniblzipvwotuhnbuhocmsrodcgujdfp` int DEFAULT NULL,\n `bjwrwnmlztnfmonhbnwssfytcutwxnfu` int DEFAULT NULL,\n `hzjwgilnouclppluytcrxubksjhtotga` int DEFAULT NULL,\n `akszsudsiuucalbjusmsnodxnqfhnfxe` int DEFAULT NULL,\n `zwenwdggfzfkndtjvwlqwdiipwosbxct` int DEFAULT NULL,\n `brycbjplxfgqyukcafohxqtoqvbogxvc` int DEFAULT NULL,\n `ovpfsnxuwaedsixntjeayazprdjtbkow` int DEFAULT NULL,\n `yjsgklcezzetunxktrpmnnzldpqobhoa` int DEFAULT NULL,\n `lkocdperbqfndzyuizkzfsdjhxmjsmym` int DEFAULT NULL,\n `sdzctiwmjvvaaflcffmdlhqagfevsxut` int DEFAULT NULL,\n `luziatvhjkqthzoqnmgdyxoxenzosyri` int DEFAULT NULL,\n `ixotwjepztatkeotweciftwzvxybagjk` int DEFAULT NULL,\n `srbxobyrizmjmvkyautefmelgnnkmnnl` int DEFAULT NULL,\n `smlkuzecchztgocppjifsaovhwzkjxrq` int DEFAULT NULL,\n `llmudhexjptisghahamrvdkqxnpadjpl` int DEFAULT NULL,\n `pazctxgnmbmdzjkaamfnkidehvbpwgri` int DEFAULT NULL,\n `turoxqiihpexpbxmzumckomynntgxzxu` int DEFAULT NULL,\n `xvmzigyxlugiimguydjdrwtbugrqlfxm` int DEFAULT NULL,\n `khtmjeuynmxagttktjfojjylkvxcmybj` int DEFAULT NULL,\n `spokzloufobjnpsarbburpvguphuymfi` int DEFAULT NULL,\n `loodgtigqjksabaqmacnlkrhxiwqrlvj` int DEFAULT NULL,\n `wlnaeijmrijhbwcbfqbpasfyfhwvjhse` int DEFAULT NULL,\n `etlnbnlxwspwlecsprufrmsajbekwojk` int DEFAULT NULL,\n `mooxyqnrxqmkiaoekolcncwhteboypiw` int DEFAULT NULL,\n `duinbveduipwzbeemlbmdcumqjexmcth` int DEFAULT NULL,\n `qmqnbzhvbyqmauppubxfrscsxssafdwx` int DEFAULT NULL,\n `rgwuxurhswqbjimuttzzwerpxvggonyu` int DEFAULT NULL,\n `sjuhtoskjalwipmmhllibneltdciaqzc` int DEFAULT NULL,\n `objzxllfsoaymmdfbfiwjyiinltnbjjb` int DEFAULT NULL,\n `ooxodausrcfqsxqbtjmjruwspiacuqog` int DEFAULT NULL,\n `mnvquqtfntoyhpmsizaqkitdaaaneqkw` int DEFAULT NULL,\n `vecpmxqsjfabclayihxrrmpbpsceyitf` int DEFAULT NULL,\n `twlfkdszfrufumayamygpdjymezborzj` int DEFAULT NULL,\n `oaiutjhbwwnqtzqsibnltumisvrktwqi` int DEFAULT NULL,\n `xvqolpnxwinlskrehxdbbvvaqmiuuhlv` int DEFAULT NULL,\n `veeaqmqpcuzqsrvjcjqrielglomwqwcp` int DEFAULT NULL,\n `yhguchpvfkfcdctoadmzizzpzqanbjdv` int DEFAULT NULL,\n `wmzbwueibeogkracamqfihepkytisray` int DEFAULT NULL,\n `jqejgootjilphhwwbsbakewmngqxiuox` int DEFAULT NULL,\n `zjfyfneskufhryezteyoffcksocqnptp` int DEFAULT NULL,\n `tltnfrqnfbdiolgbwpntoosbykwodxfk` int DEFAULT NULL,\n `tbjtmyvtmgjbndfpvokmusfwrmiuyeuc` int DEFAULT NULL,\n `blwzxsdbzouqwlmtjqdnpadtbowpbyqf` int DEFAULT NULL,\n `vcmkwugwysqyoghzyglfqkwzzwgtfnwk` int DEFAULT NULL,\n `zyftlcffmxvkuommutleskuwnyaeocvr` int DEFAULT NULL,\n `aoqvsxbrqmdfijvullghknkkolcaayij` int DEFAULT NULL,\n `yywdoznosfigvjfukfzicfknvoebhubk` int DEFAULT NULL,\n `qhoqggdmkctemmdewgazgreclphsardp` int DEFAULT NULL,\n `xxewbkylnzjmfpznlzzkuvwqzzguungs` int DEFAULT NULL,\n `kgyupjyysbxmyezhamewsnuimskfvvld` int DEFAULT NULL,\n `zguzqrugtrimqhtceopmelgcnyikelzr` int DEFAULT NULL,\n `bhcfundvrmmzridjxvvfwushzkvszlrd` int DEFAULT NULL,\n `hxfdxiobbjvitypmdvctkywkqscjtszx` int DEFAULT NULL,\n `vliveyomikfmbrklliynjnyyqqnpryxz` int DEFAULT NULL,\n `yyptopeqqyvddazekejmlhsyuytpiqil` int DEFAULT NULL,\n `aqexcwvitaaapeqbmetylwhrfijuphpp` int DEFAULT NULL,\n `lqvawyktijsnfarccqvapirjuoybsivj` int DEFAULT NULL,\n `pqaagpevannvpadvdjfftaeptbcybckw` int DEFAULT NULL,\n `bjudmaaevjgkihioktdkdefskhrvbwjj` int DEFAULT NULL,\n `nqhefisbbpefzgqfqvmbtprbnrntidft` int DEFAULT NULL,\n `exmoschfydijitautblekeaqubxxzzej` int DEFAULT NULL,\n `ibunvpqsedvwwdbfdnvlbkqfkvrwoczf` int DEFAULT NULL,\n `ebtpfucqajgamzcubxnamkpdtfpfqxgu` int DEFAULT NULL,\n `emdtxqfjiunqphkjchqtwqzxcfpmdccr` int DEFAULT NULL,\n `zedqgllusxnpansexiqxxzxltxtcfvcp` int DEFAULT NULL,\n `atpxfzqjxfxnlyvasaxktcdxjuwqnlep` int DEFAULT NULL,\n `wsqjvpwunmczplvkpqwndkkerydsaebs` int DEFAULT NULL,\n `efxnfkykpdewgcefdmytualqmpmjgjnh` int DEFAULT NULL,\n `xtszmehlcgxltfvjeqhfjuwyjvqgwhgb` int DEFAULT NULL,\n `mqjacllbvdlnxtzehxejekxeythzllqp` int DEFAULT NULL,\n `bcyzotnsyjxvsshxstanaabhhfejpzie` int DEFAULT NULL,\n `tzdnubstzjmrelewpnnojgjzintqvlgv` int DEFAULT NULL,\n `tptytxekbfhohmuyhjxqbhovjtrlbpuf` int DEFAULT NULL,\n `pacsnapnswcabvscmjgzvdxizbcigzct` int DEFAULT NULL,\n `ifbmnkepabdtatmelymecnmfcwxjbghj` int DEFAULT NULL,\n `cmsantggqazlalgpgeqdrnwqqsqxnytc` int DEFAULT NULL,\n `mpsolxgieibbniykdvpwctnpzvpyvimq` int DEFAULT NULL,\n `dgapahalubckmosgygwxnwmpwyreqcbz` int DEFAULT NULL,\n PRIMARY KEY (`uivlpthlrbnmxdbdqavwzrskepgcbegn`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"siftmoygptajwmczbovtnwqyjdpcmqfw\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["uivlpthlrbnmxdbdqavwzrskepgcbegn"],"columns":[{"name":"uivlpthlrbnmxdbdqavwzrskepgcbegn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"pcnxdvwzcfhndagfkfcfrrfukhfepiwl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bebhbdmqdnnurtvndltiffxrfgsseugv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xzsmpglyqcmknuynawizgfmfjpppmcop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awxzgdjtozyfyrzdenrjhytehsnaaprf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lphrifnpgqniraprpkodbymhvkwtdzus","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"klhbtxuklakedhklnelkrioayhslrkqi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqtuiqkzvjqhwbmkjsevzzoarmjncvge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsuqlohmuduxiomsrscwagjwnxnojoae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yaishqjnletvarkzobmcalvkietcrtqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vlfxfzyxbmixictzwqqnknxcbdfathcl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnqcdufrumetgrebuuexgmckcedwbonb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jxjogsehugwrmjdjwshcolsadyzegext","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwcmiywmhcgthlavvqcawjxkhtoprtek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nsnnjfzivfpwzvbvznzpkbrljayqrwxa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsabfhptvohxhhdsfeydekrbwkkvujfb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkxqdticjpufxekgyxzthgvxmrqoewjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utuikxkmsomatzcytqurhaciwdnqdguk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"acbooodmjaxgargzptfahjsjqmwdnkjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dddawkrdqyqiceytxkpirjilffozyptc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jctrsahixmrvjmqshdpkwpdphypjfuwf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bowtrhqyoqknlnkpdskqwqsqjeescghy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xniblzipvwotuhnbuhocmsrodcgujdfp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjwrwnmlztnfmonhbnwssfytcutwxnfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hzjwgilnouclppluytcrxubksjhtotga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akszsudsiuucalbjusmsnodxnqfhnfxe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zwenwdggfzfkndtjvwlqwdiipwosbxct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"brycbjplxfgqyukcafohxqtoqvbogxvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovpfsnxuwaedsixntjeayazprdjtbkow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjsgklcezzetunxktrpmnnzldpqobhoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lkocdperbqfndzyuizkzfsdjhxmjsmym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdzctiwmjvvaaflcffmdlhqagfevsxut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"luziatvhjkqthzoqnmgdyxoxenzosyri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixotwjepztatkeotweciftwzvxybagjk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"srbxobyrizmjmvkyautefmelgnnkmnnl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smlkuzecchztgocppjifsaovhwzkjxrq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llmudhexjptisghahamrvdkqxnpadjpl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pazctxgnmbmdzjkaamfnkidehvbpwgri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"turoxqiihpexpbxmzumckomynntgxzxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvmzigyxlugiimguydjdrwtbugrqlfxm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"khtmjeuynmxagttktjfojjylkvxcmybj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"spokzloufobjnpsarbburpvguphuymfi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"loodgtigqjksabaqmacnlkrhxiwqrlvj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wlnaeijmrijhbwcbfqbpasfyfhwvjhse","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"etlnbnlxwspwlecsprufrmsajbekwojk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mooxyqnrxqmkiaoekolcncwhteboypiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"duinbveduipwzbeemlbmdcumqjexmcth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmqnbzhvbyqmauppubxfrscsxssafdwx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgwuxurhswqbjimuttzzwerpxvggonyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjuhtoskjalwipmmhllibneltdciaqzc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"objzxllfsoaymmdfbfiwjyiinltnbjjb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ooxodausrcfqsxqbtjmjruwspiacuqog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnvquqtfntoyhpmsizaqkitdaaaneqkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vecpmxqsjfabclayihxrrmpbpsceyitf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twlfkdszfrufumayamygpdjymezborzj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oaiutjhbwwnqtzqsibnltumisvrktwqi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvqolpnxwinlskrehxdbbvvaqmiuuhlv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"veeaqmqpcuzqsrvjcjqrielglomwqwcp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhguchpvfkfcdctoadmzizzpzqanbjdv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmzbwueibeogkracamqfihepkytisray","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jqejgootjilphhwwbsbakewmngqxiuox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjfyfneskufhryezteyoffcksocqnptp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tltnfrqnfbdiolgbwpntoosbykwodxfk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbjtmyvtmgjbndfpvokmusfwrmiuyeuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blwzxsdbzouqwlmtjqdnpadtbowpbyqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vcmkwugwysqyoghzyglfqkwzzwgtfnwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zyftlcffmxvkuommutleskuwnyaeocvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aoqvsxbrqmdfijvullghknkkolcaayij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yywdoznosfigvjfukfzicfknvoebhubk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhoqggdmkctemmdewgazgreclphsardp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxewbkylnzjmfpznlzzkuvwqzzguungs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kgyupjyysbxmyezhamewsnuimskfvvld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zguzqrugtrimqhtceopmelgcnyikelzr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bhcfundvrmmzridjxvvfwushzkvszlrd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hxfdxiobbjvitypmdvctkywkqscjtszx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vliveyomikfmbrklliynjnyyqqnpryxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yyptopeqqyvddazekejmlhsyuytpiqil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqexcwvitaaapeqbmetylwhrfijuphpp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqvawyktijsnfarccqvapirjuoybsivj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqaagpevannvpadvdjfftaeptbcybckw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjudmaaevjgkihioktdkdefskhrvbwjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqhefisbbpefzgqfqvmbtprbnrntidft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exmoschfydijitautblekeaqubxxzzej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibunvpqsedvwwdbfdnvlbkqfkvrwoczf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebtpfucqajgamzcubxnamkpdtfpfqxgu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"emdtxqfjiunqphkjchqtwqzxcfpmdccr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zedqgllusxnpansexiqxxzxltxtcfvcp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atpxfzqjxfxnlyvasaxktcdxjuwqnlep","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wsqjvpwunmczplvkpqwndkkerydsaebs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"efxnfkykpdewgcefdmytualqmpmjgjnh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xtszmehlcgxltfvjeqhfjuwyjvqgwhgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqjacllbvdlnxtzehxejekxeythzllqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bcyzotnsyjxvsshxstanaabhhfejpzie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tzdnubstzjmrelewpnnojgjzintqvlgv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tptytxekbfhohmuyhjxqbhovjtrlbpuf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pacsnapnswcabvscmjgzvdxizbcigzct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ifbmnkepabdtatmelymecnmfcwxjbghj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmsantggqazlalgpgeqdrnwqqsqxnytc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpsolxgieibbniykdvpwctnpzvpyvimq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgapahalubckmosgygwxnwmpwyreqcbz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671091,"databaseName":"models_schema","ddl":"CREATE TABLE `sktiezunkkczqbwwviueupxhgmwmasju` (\n `fylbltbxggysfwfmvfljudjzbvdhcmfr` int NOT NULL,\n `lcgffmaubbohukvqcibusapvkfrrupgp` int DEFAULT NULL,\n `phjwofndwdckutpuuamvgkfqesruzulb` int DEFAULT NULL,\n `bnocdpxatrgubdksuxkmaopsdxoicwtc` int DEFAULT NULL,\n `pmgezjtcawmyyvxobmwjjlzghyeayygr` int DEFAULT NULL,\n `mikrnmobpacqvpaxiepcdvehjxwzzbmb` int DEFAULT NULL,\n `ysotadlyefrizrpcgbzddprssccqnpak` int DEFAULT NULL,\n `exgwhwpwqocqxqmjvhnahunwdqbndcno` int DEFAULT NULL,\n `vuebundptwdgrboeuqqpcpdodewpfjru` int DEFAULT NULL,\n `qcztbusdmjjdzhgyyixwxniynwnedgxr` int DEFAULT NULL,\n `kekgthauvdooreydehvddfltaxuyftii` int DEFAULT NULL,\n `ucxgeufqnvalopgzexreqbufgueakcjz` int DEFAULT NULL,\n `fhdtoboxoedtbjsajjfwubiypazsbarv` int DEFAULT NULL,\n `jfklffccobgmrdbknexzlyvyjhlczixf` int DEFAULT NULL,\n `gqbjbxurbxjjurtddbokbyqkfbebgeko` int DEFAULT NULL,\n `neuvzweulgxfvtwvxbzeutjuxarnyxhl` int DEFAULT NULL,\n `rketwuvrsvowgsfoigaoyjxgdkkxjgwm` int DEFAULT NULL,\n `udymuerdvtiibdjcemwtdobggsdvdpig` int DEFAULT NULL,\n `nkvbnriigmovzxbrkjugbgpaylqbflmd` int DEFAULT NULL,\n `nlyeryddldhrizypnkehvesnkmbrekeb` int DEFAULT NULL,\n `qbfofyvursjhibsfxauzcdnxymnzteoc` int DEFAULT NULL,\n `zvsokpcjbprrvsjzhdcjjeuimcwyjqnr` int DEFAULT NULL,\n `hcdyzismdfhdglwiblbalilkfbzjrjpw` int DEFAULT NULL,\n `rfijcleoihyhklafnpmqljvgaeywrhzs` int DEFAULT NULL,\n `dghuxaadxjuktfjrfslmmvuqqgbdfglo` int DEFAULT NULL,\n `pusbrlbdxxxcqeprvidhjzfdbkftwwsd` int DEFAULT NULL,\n `joqzvaaxiisngozidgbcppdhpbjhiuvu` int DEFAULT NULL,\n `ulrjhwyvcbqzlcddziizwuiawumtslar` int DEFAULT NULL,\n `xdoxmiiaqnsnyelwmquhprmclwhtsxot` int DEFAULT NULL,\n `mcwdftsrvzbhmorhyuouvkcivpjqawuk` int DEFAULT NULL,\n `ocdtuiehrwhjnlmshurnbevhuhlxvftj` int DEFAULT NULL,\n `uvyfgcbkkoglpzyvfqtvwbxscotlizgs` int DEFAULT NULL,\n `mwnamdpucakvpyujhdqlvwjcuqvtghuh` int DEFAULT NULL,\n `ugvviqaklrowqmpmskmpracwclxjthsg` int DEFAULT NULL,\n `slgopobdqmrfrazgufwawjksbepaldqw` int DEFAULT NULL,\n `ixhfhnqpjrehosmhskzhgymjzlqkdpda` int DEFAULT NULL,\n `owcpbtyxsishibpmjqmtcxqncaiygatt` int DEFAULT NULL,\n `vuibumfdchglplsmbaalailgqpcyocdg` int DEFAULT NULL,\n `fqmbeqkmtqtaokhkchxrafejoapmelzz` int DEFAULT NULL,\n `nfputvkhmdhjfbkdcwetvwbmyxekvwvg` int DEFAULT NULL,\n `lwjelmbjhxpdueujotxspjcgbemouifh` int DEFAULT NULL,\n `oidwxhrielyvqemslmagaiuxqtcltjag` int DEFAULT NULL,\n `teltbjcyldtdainkfstqbkhbltrlkxvj` int DEFAULT NULL,\n `wsmiqfcxkpcgehoybkwpkbmyrkmpzitu` int DEFAULT NULL,\n `pxjdpbowwpctsjnenyownflivxhuepvu` int DEFAULT NULL,\n `qclkxwuzohtapustcngwupslzxtzrhfy` int DEFAULT NULL,\n `wpwkmpvvcluhqgjrpxrejbtqutklwich` int DEFAULT NULL,\n `evjokkxedahvlzctpvrznxckpblhhtjs` int DEFAULT NULL,\n `ksiiqvajfxvwrprmdtnnxfgrslrgddgw` int DEFAULT NULL,\n `pjtmkfiiliroihmfxaxnwjntvmuoyvwc` int DEFAULT NULL,\n `tqnaeoubyqzynzvlrmputhwhdzhmvtux` int DEFAULT NULL,\n `gjxjrvyrwnnluggyzbvjbshoiyfznzic` int DEFAULT NULL,\n `bzfijkqqceluemqovdhzxoqognuxkhen` int DEFAULT NULL,\n `iwsytlhvezmnsybfprkjgrpirppniyvi` int DEFAULT NULL,\n `xddkyefuocbkpodgxydntwobqbmeiyxx` int DEFAULT NULL,\n `hsirzmuvvnzhotimdlopsggnmlaweptz` int DEFAULT NULL,\n `frpdwacuexzoadiatwwiwqbkqzhdqlrl` int DEFAULT NULL,\n `wlmcgyhhaabbncodpqdyekmdirqxkavm` int DEFAULT NULL,\n `zftufhxhwksyjavribplhcsoqijudhfz` int DEFAULT NULL,\n `mivxmzujyjrocqyiqmftrvfcgkxgqqme` int DEFAULT NULL,\n `faoxqjqjmmwuxprxujletkqdsjifvtwh` int DEFAULT NULL,\n `wxyblfiqucvtkerwekzqgpvnvlcssxuu` int DEFAULT NULL,\n `tmlrhwmbvbjnjfswrrjnevnixtaaargl` int DEFAULT NULL,\n `nmhuqdeyarggifoueexlcfssqfenyaqb` int DEFAULT NULL,\n `yebmohieorlunlggpfbtrknkyaerpdsw` int DEFAULT NULL,\n `ywaramvadjannnsbjrirqzsdhakfavhs` int DEFAULT NULL,\n `paaipijgfvnhatmaxzwfbzchevlpzjfv` int DEFAULT NULL,\n `pszibimzknvkjaysqwxslhlkiynuuaas` int DEFAULT NULL,\n `xngzjvwrglqxtadmnqvqnpjybiipxruo` int DEFAULT NULL,\n `ytinpxwdtbsqlwttdfgjnryahhjfgcjq` int DEFAULT NULL,\n `kfvdfjhwmfqdctahajpurfqwzdpkbrfu` int DEFAULT NULL,\n `thnismrskwccudhkuojeqrcqhhfbrpob` int DEFAULT NULL,\n `cabnavhifvfemomfmlogqwzxgepyssgr` int DEFAULT NULL,\n `cixjojeilpwfrrxeeamnjnwgblcjfplu` int DEFAULT NULL,\n `ilwaslmrouczdszxgvyitpfxrsgyrths` int DEFAULT NULL,\n `tlfjludumzolkhnbrgxdlbyhpbdewtsn` int DEFAULT NULL,\n `vqrtawdqzhzncaryxjdtggfkleqpyygk` int DEFAULT NULL,\n `jcxyashudquzxwrmpaujpdtsmwxhwsuw` int DEFAULT NULL,\n `amwwyalelxuhmdkiohdnlraimcbftnjs` int DEFAULT NULL,\n `mfuujhltyjnfvwfqyeznlkycesuuuxnd` int DEFAULT NULL,\n `rdqcqkskqocgizqjnomwkubeogbfhqws` int DEFAULT NULL,\n `ptzngjyjvwiauowygdumlxhofvwzfqyr` int DEFAULT NULL,\n `evqjvfskoikraosxwjqpoydqnehzurxv` int DEFAULT NULL,\n `ymgpgckqldbznqoolfratyoewfdxgpsj` int DEFAULT NULL,\n `ubikwixkhtpztgkeixsruymlzerdwagh` int DEFAULT NULL,\n `qhfjnzbldpnzelwjmyumjlbypvhospgk` int DEFAULT NULL,\n `lkrbwjjdxctedhtecdkhslrhqpoxsgtw` int DEFAULT NULL,\n `idaqlvxfymfqpgekfsmitlprqmwswnkp` int DEFAULT NULL,\n `yknyhujwkapgqejgtmyjozziqrpbjrgw` int DEFAULT NULL,\n `ynmxlqrspkdxkyiemzlvdaooykcwvctm` int DEFAULT NULL,\n `yihhuniwabsinabbwdwhorxuknseozmm` int DEFAULT NULL,\n `qezrlifuubluazvxjrnwnfcrmclirbeo` int DEFAULT NULL,\n `xszjxrvaqljlkjuntqftiijvpmglihpj` int DEFAULT NULL,\n `iqenbbigkfujgfdxsoqikfajwdfwyrkv` int DEFAULT NULL,\n `ajtcorghubjfmjrqpqpomegjzmebwtyk` int DEFAULT NULL,\n `abhdfvevzlcahlaorpdqyskdcfuprcfp` int DEFAULT NULL,\n `twogxyemvbcbhidywkdbgwjfwrajslwi` int DEFAULT NULL,\n `vobdvdckbqxehrfzakvlypmolssciobk` int DEFAULT NULL,\n `gtgnwtdnbnjgqnopigvexacztxbzkyft` int DEFAULT NULL,\n `qpqhaziyuvhlwbarwpllmgtrcmuigrvg` int DEFAULT NULL,\n PRIMARY KEY (`fylbltbxggysfwfmvfljudjzbvdhcmfr`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"sktiezunkkczqbwwviueupxhgmwmasju\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["fylbltbxggysfwfmvfljudjzbvdhcmfr"],"columns":[{"name":"fylbltbxggysfwfmvfljudjzbvdhcmfr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"lcgffmaubbohukvqcibusapvkfrrupgp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phjwofndwdckutpuuamvgkfqesruzulb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnocdpxatrgubdksuxkmaopsdxoicwtc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmgezjtcawmyyvxobmwjjlzghyeayygr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mikrnmobpacqvpaxiepcdvehjxwzzbmb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ysotadlyefrizrpcgbzddprssccqnpak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exgwhwpwqocqxqmjvhnahunwdqbndcno","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vuebundptwdgrboeuqqpcpdodewpfjru","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qcztbusdmjjdzhgyyixwxniynwnedgxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kekgthauvdooreydehvddfltaxuyftii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ucxgeufqnvalopgzexreqbufgueakcjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhdtoboxoedtbjsajjfwubiypazsbarv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jfklffccobgmrdbknexzlyvyjhlczixf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqbjbxurbxjjurtddbokbyqkfbebgeko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"neuvzweulgxfvtwvxbzeutjuxarnyxhl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rketwuvrsvowgsfoigaoyjxgdkkxjgwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udymuerdvtiibdjcemwtdobggsdvdpig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nkvbnriigmovzxbrkjugbgpaylqbflmd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nlyeryddldhrizypnkehvesnkmbrekeb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qbfofyvursjhibsfxauzcdnxymnzteoc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvsokpcjbprrvsjzhdcjjeuimcwyjqnr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hcdyzismdfhdglwiblbalilkfbzjrjpw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfijcleoihyhklafnpmqljvgaeywrhzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dghuxaadxjuktfjrfslmmvuqqgbdfglo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pusbrlbdxxxcqeprvidhjzfdbkftwwsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"joqzvaaxiisngozidgbcppdhpbjhiuvu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ulrjhwyvcbqzlcddziizwuiawumtslar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdoxmiiaqnsnyelwmquhprmclwhtsxot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcwdftsrvzbhmorhyuouvkcivpjqawuk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocdtuiehrwhjnlmshurnbevhuhlxvftj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvyfgcbkkoglpzyvfqtvwbxscotlizgs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwnamdpucakvpyujhdqlvwjcuqvtghuh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugvviqaklrowqmpmskmpracwclxjthsg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"slgopobdqmrfrazgufwawjksbepaldqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixhfhnqpjrehosmhskzhgymjzlqkdpda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owcpbtyxsishibpmjqmtcxqncaiygatt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vuibumfdchglplsmbaalailgqpcyocdg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqmbeqkmtqtaokhkchxrafejoapmelzz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfputvkhmdhjfbkdcwetvwbmyxekvwvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwjelmbjhxpdueujotxspjcgbemouifh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oidwxhrielyvqemslmagaiuxqtcltjag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"teltbjcyldtdainkfstqbkhbltrlkxvj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wsmiqfcxkpcgehoybkwpkbmyrkmpzitu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxjdpbowwpctsjnenyownflivxhuepvu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qclkxwuzohtapustcngwupslzxtzrhfy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wpwkmpvvcluhqgjrpxrejbtqutklwich","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evjokkxedahvlzctpvrznxckpblhhtjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ksiiqvajfxvwrprmdtnnxfgrslrgddgw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjtmkfiiliroihmfxaxnwjntvmuoyvwc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqnaeoubyqzynzvlrmputhwhdzhmvtux","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjxjrvyrwnnluggyzbvjbshoiyfznzic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bzfijkqqceluemqovdhzxoqognuxkhen","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwsytlhvezmnsybfprkjgrpirppniyvi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xddkyefuocbkpodgxydntwobqbmeiyxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hsirzmuvvnzhotimdlopsggnmlaweptz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"frpdwacuexzoadiatwwiwqbkqzhdqlrl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wlmcgyhhaabbncodpqdyekmdirqxkavm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zftufhxhwksyjavribplhcsoqijudhfz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mivxmzujyjrocqyiqmftrvfcgkxgqqme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"faoxqjqjmmwuxprxujletkqdsjifvtwh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxyblfiqucvtkerwekzqgpvnvlcssxuu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmlrhwmbvbjnjfswrrjnevnixtaaargl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmhuqdeyarggifoueexlcfssqfenyaqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yebmohieorlunlggpfbtrknkyaerpdsw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywaramvadjannnsbjrirqzsdhakfavhs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"paaipijgfvnhatmaxzwfbzchevlpzjfv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pszibimzknvkjaysqwxslhlkiynuuaas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xngzjvwrglqxtadmnqvqnpjybiipxruo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytinpxwdtbsqlwttdfgjnryahhjfgcjq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfvdfjhwmfqdctahajpurfqwzdpkbrfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thnismrskwccudhkuojeqrcqhhfbrpob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cabnavhifvfemomfmlogqwzxgepyssgr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cixjojeilpwfrrxeeamnjnwgblcjfplu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ilwaslmrouczdszxgvyitpfxrsgyrths","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlfjludumzolkhnbrgxdlbyhpbdewtsn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqrtawdqzhzncaryxjdtggfkleqpyygk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jcxyashudquzxwrmpaujpdtsmwxhwsuw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"amwwyalelxuhmdkiohdnlraimcbftnjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mfuujhltyjnfvwfqyeznlkycesuuuxnd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdqcqkskqocgizqjnomwkubeogbfhqws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ptzngjyjvwiauowygdumlxhofvwzfqyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evqjvfskoikraosxwjqpoydqnehzurxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ymgpgckqldbznqoolfratyoewfdxgpsj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubikwixkhtpztgkeixsruymlzerdwagh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhfjnzbldpnzelwjmyumjlbypvhospgk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lkrbwjjdxctedhtecdkhslrhqpoxsgtw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idaqlvxfymfqpgekfsmitlprqmwswnkp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yknyhujwkapgqejgtmyjozziqrpbjrgw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynmxlqrspkdxkyiemzlvdaooykcwvctm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yihhuniwabsinabbwdwhorxuknseozmm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qezrlifuubluazvxjrnwnfcrmclirbeo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xszjxrvaqljlkjuntqftiijvpmglihpj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqenbbigkfujgfdxsoqikfajwdfwyrkv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajtcorghubjfmjrqpqpomegjzmebwtyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"abhdfvevzlcahlaorpdqyskdcfuprcfp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twogxyemvbcbhidywkdbgwjfwrajslwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vobdvdckbqxehrfzakvlypmolssciobk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtgnwtdnbnjgqnopigvexacztxbzkyft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qpqhaziyuvhlwbarwpllmgtrcmuigrvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671121,"databaseName":"models_schema","ddl":"CREATE TABLE `somkexlrchwjsnfjblemmdlxdrlqxiwe` (\n `svkwlinegcmrdoiqetusyhushiojbsyl` int NOT NULL,\n `uhfhxqaealjtnifhlsdogqyeaiylgfbk` int DEFAULT NULL,\n `bhyujozpsmaredfmusxqmtogwsuiecnc` int DEFAULT NULL,\n `qjqsvleioczzbqwbikusnfxnlrqcolcc` int DEFAULT NULL,\n `pcwqufcwqqgkwikfvwbfhgojsahrrzah` int DEFAULT NULL,\n `bevbpkusgxsybxrfmwbcfixiwnvhmudg` int DEFAULT NULL,\n `rvrjdnlkiwzbcbvvkzhyyzizntekpxpk` int DEFAULT NULL,\n `iaxafxposijdgphmklqetuupllcjsjts` int DEFAULT NULL,\n `swxnzahiadmtnpzwnmvboatdpzvdmkgn` int DEFAULT NULL,\n `nlvltqjncsqzdhvclvbswkxqvhgeaogc` int DEFAULT NULL,\n `ebflhdygpanrgeydrfnrddwgsczfpktp` int DEFAULT NULL,\n `jlitkntdjtlfjwzqaqwjfeixalnzidos` int DEFAULT NULL,\n `kydlbzwrnujdrsninmimdeovoyjcdiwi` int DEFAULT NULL,\n `vdmojtbvmifzfbpgpluldcaxrpzxymkt` int DEFAULT NULL,\n `oeqglrmnrpuxtekwvhphvgwnfaawnekt` int DEFAULT NULL,\n `dwewlhmmlmslneuaekgibcymnjmwaknf` int DEFAULT NULL,\n `wusxygqspontqafyunchagiillpkpuui` int DEFAULT NULL,\n `hjolmcblqyioqtcquitlcvurpbrbhiiz` int DEFAULT NULL,\n `ksleqjkbvaljkcmqukaloajditfvhykz` int DEFAULT NULL,\n `kxisincxkbrilsgcjuavesohvhtskwxr` int DEFAULT NULL,\n `elewmajsavjhcjgxkqjsdapalztwngkv` int DEFAULT NULL,\n `vnxrgjirtxcnltckfhjtzqeurkhogdua` int DEFAULT NULL,\n `zhsmhjdrftwjvpgklxcjxhnoqrjxdjug` int DEFAULT NULL,\n `lewrzvlhekouloewsdsabqcpcoztdmwj` int DEFAULT NULL,\n `dnqosmoahaebqywhbivgxzwbtgtdenhr` int DEFAULT NULL,\n `cadfjnpwhskcxgalkcrmoroddnhqkgrc` int DEFAULT NULL,\n `hiqssojocnknefwjyqbhcrcvojuaeufy` int DEFAULT NULL,\n `rtbfofwtcplsrkwuhdvzzamnjawdzhqc` int DEFAULT NULL,\n `ezkktrfnpteirrziadswyzergokvuzbp` int DEFAULT NULL,\n `zckpcavfdsbcvsrttebdwaiemfhpobwf` int DEFAULT NULL,\n `zubdicefuwjukrrqxwsnuwrijfhkfjyc` int DEFAULT NULL,\n `iftifsisxugfsfxapdkbkoderxrshhkm` int DEFAULT NULL,\n `shzwisbhhzzhzkveeuyxjdnppqptepwb` int DEFAULT NULL,\n `aqumbxpznftscjhymbidtqtdypfedzrc` int DEFAULT NULL,\n `jbzkdhtkvfikgkzbphkiwpyayqhgwecu` int DEFAULT NULL,\n `gylgtugvjloyhvjppxbnnciatxdompnt` int DEFAULT NULL,\n `loinqnojvjwclwwhwetxajltjdfzdiky` int DEFAULT NULL,\n `xoedimdxxbsxlllchfwbqvwrfjjtzmmp` int DEFAULT NULL,\n `caghincwbqgnpmiopqdiiqxgbuvyxatm` int DEFAULT NULL,\n `zwhsgxvbqgcjnpekidvbkruzhbmzawqr` int DEFAULT NULL,\n `ohjjwrwmkwtrrdexyuqkvzhidoulndip` int DEFAULT NULL,\n `dlkahwzspowggzvrpphlpmtpijawvhph` int DEFAULT NULL,\n `zdaddugnovvdbywpwffvtyjynhiruznj` int DEFAULT NULL,\n `acdqcnqdknovrfjkkfdetucyzbswhxsl` int DEFAULT NULL,\n `txmkgrcfjvkeymfbdjychvjsbqbjsarc` int DEFAULT NULL,\n `kgbfjcbwhvyzvimgngepscezzhlehjdt` int DEFAULT NULL,\n `wzjklnastduaffaoccvjigtdrmfovmvj` int DEFAULT NULL,\n `boqjppedkaoliyngxundpacmfcfkrtpq` int DEFAULT NULL,\n `wlcpinqiafmttllhdorkqgyljdrpmljc` int DEFAULT NULL,\n `vltmjvmptxzafimatnqlvvpmkfpdhecb` int DEFAULT NULL,\n `dpxxtkoimezvhljtwimdkbvmeritwmql` int DEFAULT NULL,\n `qampsmxxfsmmstxmnggoylzoxhmcrlkj` int DEFAULT NULL,\n `sguuehwmlvngyaepllhznibpurqtanou` int DEFAULT NULL,\n `cuguuywbcnhvnhvuwzgflgklggwzeszp` int DEFAULT NULL,\n `vvnpjkfqzfjeitvgdmrwcwfwtajvtxnb` int DEFAULT NULL,\n `euuycsjfqvtyopymzllpwkxhamljqbat` int DEFAULT NULL,\n `mupgdmjrndsgvtkjtkzgzskdiknqxsku` int DEFAULT NULL,\n `itfjyyrwtkczbgaozxzasfnslalgrddw` int DEFAULT NULL,\n `ndyhlsmilehpcqhezfpheanjfxtlmowo` int DEFAULT NULL,\n `wvukwgxdeubtkfrgwsitvrjzarljyvby` int DEFAULT NULL,\n `edwdsbqupyflztzgyffagafqyyxlciun` int DEFAULT NULL,\n `vmgdeweqaihskwlhwphmvcxfajspfyka` int DEFAULT NULL,\n `dsmazjecvojbvopoazkbjmuiqtfpimtv` int DEFAULT NULL,\n `ymnipqomshxqmnexfpsotmdkvtwumjsa` int DEFAULT NULL,\n `agcnmvchdcennuebuhbghzzpzjbhvhen` int DEFAULT NULL,\n `eumaldmkzftstiywbzpvkcquxxgaabij` int DEFAULT NULL,\n `xyxuppotcafafqxtrhtvfdsjwytqyzvv` int DEFAULT NULL,\n `snfomdtslfidhrtuheuaoadaqgodyogc` int DEFAULT NULL,\n `ahyovczuxhmzqlcgafgwgupgxobpxyvi` int DEFAULT NULL,\n `roxvahcisyqpxrnmgcfaokbzmjvnxuyq` int DEFAULT NULL,\n `gmbscrezhtloofhaxuzyjpzxbntwfuqh` int DEFAULT NULL,\n `oufdmxchbmaxixakbddnvgjuijloeeli` int DEFAULT NULL,\n `nvjtqrakyvdhurwhasuxbkbvhgiukegj` int DEFAULT NULL,\n `qfhmyspndreszjvypskiyptxsoqgejws` int DEFAULT NULL,\n `qzofzqbtjvrftqdwvwbjxysbwwxzbqat` int DEFAULT NULL,\n `ekkmwwnvijbwzgjwglbrqnzcjimmvilv` int DEFAULT NULL,\n `qqyeoshsechlxnvdyquipyptatzdbbpz` int DEFAULT NULL,\n `nplhmgeeezazjapkjnuleiebkfintidj` int DEFAULT NULL,\n `gajbbknkrodasacdtpbevznlvnpnvnim` int DEFAULT NULL,\n `knovbeibgblaacmmulipkgdejhbuydal` int DEFAULT NULL,\n `rlfiqwkqwrqykptdqwkbmaspenxqnaeh` int DEFAULT NULL,\n `uryqzuaoamtkldzzsiwfkebvfagnokac` int DEFAULT NULL,\n `qydljvqqkcougtnywreyvautblctmbkm` int DEFAULT NULL,\n `ketburpphkhrbgqmrxemptmuuvgpwuvp` int DEFAULT NULL,\n `evsjuyieyqdjecvzeewystxfjnmchbye` int DEFAULT NULL,\n `ovnfrtxprzluwmhrcjozjzyjbtxmvddi` int DEFAULT NULL,\n `pvaylcsnalpmutmwbcibucattdxgnbul` int DEFAULT NULL,\n `zyemohaxfcevnfdefwfnnifestddsbgx` int DEFAULT NULL,\n `ukvbilphzwnogtdzgcpgstvsuugadpdw` int DEFAULT NULL,\n `oxwmxjdqmjxvvauwtiihfjsdqtzrhivi` int DEFAULT NULL,\n `yugezltskdbkuxoipziusiqmiemstsgc` int DEFAULT NULL,\n `glwgoivqalthpymfxqlymuxeesdikxan` int DEFAULT NULL,\n `awbvhzdxcxjlbcccgpvsgweazrzzqtst` int DEFAULT NULL,\n `xxsaehgxkeityvgfyxplgadncoawyzwj` int DEFAULT NULL,\n `gsgdtegifffdopaefjjpsycnusfgtphj` int DEFAULT NULL,\n `crgfsudctdfjrtsobbyrohsodlgeglbh` int DEFAULT NULL,\n `lvujzovwavrhpgppzwaehklakbjlhozn` int DEFAULT NULL,\n `ozmlphsmyusyehqaofdinnnyrstjtjld` int DEFAULT NULL,\n `sbkpbzdogoknpmccrtjbeejwxpvmwauf` int DEFAULT NULL,\n `ywycrshgdpprwlmxdufurftllxctruju` int DEFAULT NULL,\n PRIMARY KEY (`svkwlinegcmrdoiqetusyhushiojbsyl`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"somkexlrchwjsnfjblemmdlxdrlqxiwe\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["svkwlinegcmrdoiqetusyhushiojbsyl"],"columns":[{"name":"svkwlinegcmrdoiqetusyhushiojbsyl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"uhfhxqaealjtnifhlsdogqyeaiylgfbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bhyujozpsmaredfmusxqmtogwsuiecnc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjqsvleioczzbqwbikusnfxnlrqcolcc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pcwqufcwqqgkwikfvwbfhgojsahrrzah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bevbpkusgxsybxrfmwbcfixiwnvhmudg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rvrjdnlkiwzbcbvvkzhyyzizntekpxpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iaxafxposijdgphmklqetuupllcjsjts","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swxnzahiadmtnpzwnmvboatdpzvdmkgn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nlvltqjncsqzdhvclvbswkxqvhgeaogc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebflhdygpanrgeydrfnrddwgsczfpktp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlitkntdjtlfjwzqaqwjfeixalnzidos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kydlbzwrnujdrsninmimdeovoyjcdiwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdmojtbvmifzfbpgpluldcaxrpzxymkt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oeqglrmnrpuxtekwvhphvgwnfaawnekt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwewlhmmlmslneuaekgibcymnjmwaknf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wusxygqspontqafyunchagiillpkpuui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjolmcblqyioqtcquitlcvurpbrbhiiz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ksleqjkbvaljkcmqukaloajditfvhykz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxisincxkbrilsgcjuavesohvhtskwxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"elewmajsavjhcjgxkqjsdapalztwngkv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vnxrgjirtxcnltckfhjtzqeurkhogdua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhsmhjdrftwjvpgklxcjxhnoqrjxdjug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lewrzvlhekouloewsdsabqcpcoztdmwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dnqosmoahaebqywhbivgxzwbtgtdenhr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cadfjnpwhskcxgalkcrmoroddnhqkgrc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hiqssojocnknefwjyqbhcrcvojuaeufy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rtbfofwtcplsrkwuhdvzzamnjawdzhqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezkktrfnpteirrziadswyzergokvuzbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zckpcavfdsbcvsrttebdwaiemfhpobwf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zubdicefuwjukrrqxwsnuwrijfhkfjyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iftifsisxugfsfxapdkbkoderxrshhkm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shzwisbhhzzhzkveeuyxjdnppqptepwb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqumbxpznftscjhymbidtqtdypfedzrc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jbzkdhtkvfikgkzbphkiwpyayqhgwecu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gylgtugvjloyhvjppxbnnciatxdompnt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"loinqnojvjwclwwhwetxajltjdfzdiky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xoedimdxxbsxlllchfwbqvwrfjjtzmmp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"caghincwbqgnpmiopqdiiqxgbuvyxatm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zwhsgxvbqgcjnpekidvbkruzhbmzawqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohjjwrwmkwtrrdexyuqkvzhidoulndip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dlkahwzspowggzvrpphlpmtpijawvhph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdaddugnovvdbywpwffvtyjynhiruznj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"acdqcnqdknovrfjkkfdetucyzbswhxsl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txmkgrcfjvkeymfbdjychvjsbqbjsarc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kgbfjcbwhvyzvimgngepscezzhlehjdt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzjklnastduaffaoccvjigtdrmfovmvj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"boqjppedkaoliyngxundpacmfcfkrtpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wlcpinqiafmttllhdorkqgyljdrpmljc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vltmjvmptxzafimatnqlvvpmkfpdhecb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpxxtkoimezvhljtwimdkbvmeritwmql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qampsmxxfsmmstxmnggoylzoxhmcrlkj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sguuehwmlvngyaepllhznibpurqtanou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cuguuywbcnhvnhvuwzgflgklggwzeszp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vvnpjkfqzfjeitvgdmrwcwfwtajvtxnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"euuycsjfqvtyopymzllpwkxhamljqbat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mupgdmjrndsgvtkjtkzgzskdiknqxsku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itfjyyrwtkczbgaozxzasfnslalgrddw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ndyhlsmilehpcqhezfpheanjfxtlmowo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wvukwgxdeubtkfrgwsitvrjzarljyvby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edwdsbqupyflztzgyffagafqyyxlciun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vmgdeweqaihskwlhwphmvcxfajspfyka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dsmazjecvojbvopoazkbjmuiqtfpimtv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ymnipqomshxqmnexfpsotmdkvtwumjsa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agcnmvchdcennuebuhbghzzpzjbhvhen","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eumaldmkzftstiywbzpvkcquxxgaabij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyxuppotcafafqxtrhtvfdsjwytqyzvv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"snfomdtslfidhrtuheuaoadaqgodyogc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ahyovczuxhmzqlcgafgwgupgxobpxyvi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"roxvahcisyqpxrnmgcfaokbzmjvnxuyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmbscrezhtloofhaxuzyjpzxbntwfuqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oufdmxchbmaxixakbddnvgjuijloeeli","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvjtqrakyvdhurwhasuxbkbvhgiukegj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfhmyspndreszjvypskiyptxsoqgejws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qzofzqbtjvrftqdwvwbjxysbwwxzbqat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekkmwwnvijbwzgjwglbrqnzcjimmvilv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqyeoshsechlxnvdyquipyptatzdbbpz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nplhmgeeezazjapkjnuleiebkfintidj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gajbbknkrodasacdtpbevznlvnpnvnim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knovbeibgblaacmmulipkgdejhbuydal","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlfiqwkqwrqykptdqwkbmaspenxqnaeh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uryqzuaoamtkldzzsiwfkebvfagnokac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qydljvqqkcougtnywreyvautblctmbkm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ketburpphkhrbgqmrxemptmuuvgpwuvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evsjuyieyqdjecvzeewystxfjnmchbye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovnfrtxprzluwmhrcjozjzyjbtxmvddi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pvaylcsnalpmutmwbcibucattdxgnbul","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zyemohaxfcevnfdefwfnnifestddsbgx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ukvbilphzwnogtdzgcpgstvsuugadpdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oxwmxjdqmjxvvauwtiihfjsdqtzrhivi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yugezltskdbkuxoipziusiqmiemstsgc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"glwgoivqalthpymfxqlymuxeesdikxan","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awbvhzdxcxjlbcccgpvsgweazrzzqtst","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxsaehgxkeityvgfyxplgadncoawyzwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gsgdtegifffdopaefjjpsycnusfgtphj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"crgfsudctdfjrtsobbyrohsodlgeglbh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvujzovwavrhpgppzwaehklakbjlhozn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ozmlphsmyusyehqaofdinnnyrstjtjld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbkpbzdogoknpmccrtjbeejwxpvmwauf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywycrshgdpprwlmxdufurftllxctruju","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671154,"databaseName":"models_schema","ddl":"CREATE TABLE `sudibszqrvrxrwiazvcqqeovwgppgjth` (\n `hcrsrshzjtkbmfxdrxugrtpxkucumbfz` int NOT NULL,\n `efsxyqxadwyjpnqwiylrqzdsklsuzspb` int DEFAULT NULL,\n `gmiriofvxsaktfvjwnifvkwsgesnfcrl` int DEFAULT NULL,\n `zfbllcpzvkgsaqyezbwzotnabvorcnme` int DEFAULT NULL,\n `fxfhbcufgzgzjujpfdjudoxykrnmkxgx` int DEFAULT NULL,\n `ftmwdfgpktavkrhkutyttikohxzsozit` int DEFAULT NULL,\n `vdgujuvcsehheoklekqwjbbjfbxnictr` int DEFAULT NULL,\n `hqeljwpcgfcrshqixtcoyrxglbjxpxgw` int DEFAULT NULL,\n `bwssdgejzzoforbicstowxijtqytcanx` int DEFAULT NULL,\n `vijprqydtavxkgdwwpatpcwejydjcqtg` int DEFAULT NULL,\n `svashmyqmkreqwuwygasdmvpeatquqtu` int DEFAULT NULL,\n `xbpuowfnzdrtoxyycokezfijagcpmqcz` int DEFAULT NULL,\n `svbkkyyxpvhkunwvbwgkmuodkwfiigrd` int DEFAULT NULL,\n `sstaxafyepaughfunrthxletdbrkijrt` int DEFAULT NULL,\n `yfwfsjpipdqixhneprjivotusvuumond` int DEFAULT NULL,\n `gfxneviwamuozvyifbzjprdsfkjqyemp` int DEFAULT NULL,\n `teocddjovogpyzpzmzajxwtfebxwkuqw` int DEFAULT NULL,\n `jhdjkaihnsrzudweehexpjlpylmoacpb` int DEFAULT NULL,\n `sldxplupuzsxtponvoplobcbdihheovw` int DEFAULT NULL,\n `yvmxcedqctzmhsuoxovzdngqabdtyymo` int DEFAULT NULL,\n `bsnwbxvrzmwrxvhwcwlpkaiijyfznfzs` int DEFAULT NULL,\n `sxgdqwmucwatjnzgsvgcujbidrmxfflb` int DEFAULT NULL,\n `vmumqpmkauyzvglcxnegbnyurqcpxhnp` int DEFAULT NULL,\n `atdgttwwzrgrfyzqgbuzdvlusfoekhvn` int DEFAULT NULL,\n `vzfkqreorvzouuwyxdmldimbauglosrv` int DEFAULT NULL,\n `iveqrwxoohmuwlrxvwafgpmtdadqdhsr` int DEFAULT NULL,\n `wphhyhnxvtpzqsauglofsbaixzukoqls` int DEFAULT NULL,\n `tkglggbzydbydubcpvzhpjnbumzwpmxm` int DEFAULT NULL,\n `jtoigrjcoksjgqvsyibkgomefbvopgso` int DEFAULT NULL,\n `jtfkyiujzgtiyklikkypqrampjodwlsn` int DEFAULT NULL,\n `xyxyzmgfthzqspersjxqvvciukhsopek` int DEFAULT NULL,\n `tawycsegsiwgdnwigwffmfulwgepvbqm` int DEFAULT NULL,\n `ixpqcoksjncsodwqafpkoiccxiixvmav` int DEFAULT NULL,\n `dbfdqgomjutxvwlvdbsrslktogzzyfca` int DEFAULT NULL,\n `njgcuuosavzlnebitmbasyeghziemyxv` int DEFAULT NULL,\n `avsgesxeauvrlgjdepwagyogpegklgyv` int DEFAULT NULL,\n `xyqcvvytuakdhiyubkymutzrxbtetzgg` int DEFAULT NULL,\n `hslcjjtyncmhghuehcrpseqzwacqszah` int DEFAULT NULL,\n `gsittccsdraopgtnnyiiddbanlwomxij` int DEFAULT NULL,\n `tnmeekzetlhbirdapfgfhpzhujvnzlbx` int DEFAULT NULL,\n `lnkwyaetctlniqfwdyiilebdnvbhortg` int DEFAULT NULL,\n `kyrvomujffxcmnujbmhgkxvzspqkopdb` int DEFAULT NULL,\n `bgfxuzlwetqchmwsbttnijcxtpbuqbxq` int DEFAULT NULL,\n `pnqtajaikbayrictgbmysizwhbrhjqit` int DEFAULT NULL,\n `kljaepgktjsblqvaksbffejazwtwjboe` int DEFAULT NULL,\n `kkhbbyvncigmabrrugwccqxupjiwtdzq` int DEFAULT NULL,\n `yyypoghjzqppkijyjwxlxgdjyxcnfcra` int DEFAULT NULL,\n `dmzqxhsyssuixdnqemyzapkqusiqeuhq` int DEFAULT NULL,\n `pqowtblagmkhvsfshfmhvynmukhlvfqg` int DEFAULT NULL,\n `tmjntzmckfdpwvxzummqvequvivocgdn` int DEFAULT NULL,\n `bmyizqpxnsyqfnwkxeigrkaicwkiglpc` int DEFAULT NULL,\n `rdkdqbabhyanowcdndewiwgynqdplumw` int DEFAULT NULL,\n `evoyqffzjkugebutgcxglvqvgelirwuo` int DEFAULT NULL,\n `eixxnpojafsqefzqowesownpattarirl` int DEFAULT NULL,\n `awbhxoanhsslexzbpqesrhpjycgrnbuv` int DEFAULT NULL,\n `ztwdoihaqbhgosgpxewvvlyddoshokab` int DEFAULT NULL,\n `trbzpuiiuokqbtjihbiezpztwusuyuqo` int DEFAULT NULL,\n `kcbusghcixlgvlpkgcmgyqcutojmooeq` int DEFAULT NULL,\n `ubrsmqacajojwhdidjahocnztznsueze` int DEFAULT NULL,\n `okwcpetxpumgxxpnnpxdqucbxqmihiov` int DEFAULT NULL,\n `wvphybgzltdlrcxrtpugvivyghsjfahb` int DEFAULT NULL,\n `rwhkbvdtroqaetouuzzibzqhlsclnnee` int DEFAULT NULL,\n `txciplvnwwtznnypbtibpbhjybejaxni` int DEFAULT NULL,\n `byrbwfacmpvamgrlwsgdoqwvguspwbqx` int DEFAULT NULL,\n `ujjbgadaddjigkqpwvovxlgsrtttusxk` int DEFAULT NULL,\n `aztkqhxfabewrnglyvgkaqncpugfrqte` int DEFAULT NULL,\n `jlqnmojarxdnnlchnrfvzqflifwrntkq` int DEFAULT NULL,\n `pkfrvyxzabjdnqukqfsxtindpmgmthfh` int DEFAULT NULL,\n `kfyrltxrlkxobhajntnzfyoridhaidoq` int DEFAULT NULL,\n `nnvhewypqiunlnpvpowbgflggxapfojg` int DEFAULT NULL,\n `reesdepppyznsibbobkxjrfgyqfeegqv` int DEFAULT NULL,\n `yxwwrmuzqzchkbplhmrzkuhbbofcuhxo` int DEFAULT NULL,\n `toctrlmvvfxieavzmidtvleduvbafgah` int DEFAULT NULL,\n `dgboqtesdvkiygnllapsxlblcpcmpepc` int DEFAULT NULL,\n `hiktysrizdfffffojtjomnttuaaceqpe` int DEFAULT NULL,\n `vnpewvtqnphwfrewmvflvftrwegzxgco` int DEFAULT NULL,\n `atpxyunntgextqfggztwmvrnxirqhqqc` int DEFAULT NULL,\n `wybcfebthswscmxqvrhrdoqfgfogpoqw` int DEFAULT NULL,\n `zebrfdxncxnjkcehvqbmpizyklpmxtql` int DEFAULT NULL,\n `vfiwsweckbqziassvmhzixuokbfaaxsd` int DEFAULT NULL,\n `gkbofjrtbaekxdzsjtvpwjwctdsoxyrs` int DEFAULT NULL,\n `ifomulgbqzavijdblthzeooedkoacfdp` int DEFAULT NULL,\n `ppbhboudiuuaylpldvtczljlfgewxvbf` int DEFAULT NULL,\n `dpmdlbehklbubfgjnenbzfdaouuyrycz` int DEFAULT NULL,\n `zfvfwrqhenqasvuoivhmwroblfwyfclx` int DEFAULT NULL,\n `fbtjptjvaqwcxjhtwruwomdsgbadepoi` int DEFAULT NULL,\n `cfespsxiumthjkojjmrdfzwkpdffwexi` int DEFAULT NULL,\n `kpbxenlszrflvmtuoistdhxsgvlbidde` int DEFAULT NULL,\n `xwuropzusvblvjmpjesssheobgsyifie` int DEFAULT NULL,\n `fxtuazxswgkpxzlvcbkwbwqbzfvxcrrh` int DEFAULT NULL,\n `xmzsnbdnokjzkzzbclpsrftqvhjpvvmx` int DEFAULT NULL,\n `lopapdheilvvmqzihbucslhzycpjtpiz` int DEFAULT NULL,\n `xwysmwqltvjxgndocabwrdbuqirpupow` int DEFAULT NULL,\n `lejznkjsnhwarxajmvybgvqyzomqtjdg` int DEFAULT NULL,\n `pwxmbiuvaboqtxlonjlymetwsrfvugwp` int DEFAULT NULL,\n `osgmyhwmnofokyxwywfkvgeecxrscvau` int DEFAULT NULL,\n `xjghjeeatutdkdspibjutnncudaeahjt` int DEFAULT NULL,\n `fgysbatshtpktrdwgekitnzlmjjodbzo` int DEFAULT NULL,\n `tptpexfncnbkuvyfhvsjogysjgrkcilr` int DEFAULT NULL,\n `dlanxvfwjawoyujmewatcgmgkyvwnylp` int DEFAULT NULL,\n PRIMARY KEY (`hcrsrshzjtkbmfxdrxugrtpxkucumbfz`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"sudibszqrvrxrwiazvcqqeovwgppgjth\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["hcrsrshzjtkbmfxdrxugrtpxkucumbfz"],"columns":[{"name":"hcrsrshzjtkbmfxdrxugrtpxkucumbfz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"efsxyqxadwyjpnqwiylrqzdsklsuzspb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmiriofvxsaktfvjwnifvkwsgesnfcrl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zfbllcpzvkgsaqyezbwzotnabvorcnme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxfhbcufgzgzjujpfdjudoxykrnmkxgx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ftmwdfgpktavkrhkutyttikohxzsozit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdgujuvcsehheoklekqwjbbjfbxnictr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqeljwpcgfcrshqixtcoyrxglbjxpxgw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bwssdgejzzoforbicstowxijtqytcanx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vijprqydtavxkgdwwpatpcwejydjcqtg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"svashmyqmkreqwuwygasdmvpeatquqtu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbpuowfnzdrtoxyycokezfijagcpmqcz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"svbkkyyxpvhkunwvbwgkmuodkwfiigrd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sstaxafyepaughfunrthxletdbrkijrt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfwfsjpipdqixhneprjivotusvuumond","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfxneviwamuozvyifbzjprdsfkjqyemp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"teocddjovogpyzpzmzajxwtfebxwkuqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jhdjkaihnsrzudweehexpjlpylmoacpb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sldxplupuzsxtponvoplobcbdihheovw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yvmxcedqctzmhsuoxovzdngqabdtyymo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bsnwbxvrzmwrxvhwcwlpkaiijyfznfzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sxgdqwmucwatjnzgsvgcujbidrmxfflb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vmumqpmkauyzvglcxnegbnyurqcpxhnp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atdgttwwzrgrfyzqgbuzdvlusfoekhvn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vzfkqreorvzouuwyxdmldimbauglosrv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iveqrwxoohmuwlrxvwafgpmtdadqdhsr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wphhyhnxvtpzqsauglofsbaixzukoqls","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkglggbzydbydubcpvzhpjnbumzwpmxm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jtoigrjcoksjgqvsyibkgomefbvopgso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jtfkyiujzgtiyklikkypqrampjodwlsn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyxyzmgfthzqspersjxqvvciukhsopek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tawycsegsiwgdnwigwffmfulwgepvbqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixpqcoksjncsodwqafpkoiccxiixvmav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbfdqgomjutxvwlvdbsrslktogzzyfca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njgcuuosavzlnebitmbasyeghziemyxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avsgesxeauvrlgjdepwagyogpegklgyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyqcvvytuakdhiyubkymutzrxbtetzgg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hslcjjtyncmhghuehcrpseqzwacqszah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gsittccsdraopgtnnyiiddbanlwomxij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnmeekzetlhbirdapfgfhpzhujvnzlbx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lnkwyaetctlniqfwdyiilebdnvbhortg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kyrvomujffxcmnujbmhgkxvzspqkopdb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bgfxuzlwetqchmwsbttnijcxtpbuqbxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnqtajaikbayrictgbmysizwhbrhjqit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kljaepgktjsblqvaksbffejazwtwjboe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kkhbbyvncigmabrrugwccqxupjiwtdzq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yyypoghjzqppkijyjwxlxgdjyxcnfcra","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dmzqxhsyssuixdnqemyzapkqusiqeuhq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqowtblagmkhvsfshfmhvynmukhlvfqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmjntzmckfdpwvxzummqvequvivocgdn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bmyizqpxnsyqfnwkxeigrkaicwkiglpc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdkdqbabhyanowcdndewiwgynqdplumw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evoyqffzjkugebutgcxglvqvgelirwuo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eixxnpojafsqefzqowesownpattarirl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awbhxoanhsslexzbpqesrhpjycgrnbuv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ztwdoihaqbhgosgpxewvvlyddoshokab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"trbzpuiiuokqbtjihbiezpztwusuyuqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kcbusghcixlgvlpkgcmgyqcutojmooeq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubrsmqacajojwhdidjahocnztznsueze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"okwcpetxpumgxxpnnpxdqucbxqmihiov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wvphybgzltdlrcxrtpugvivyghsjfahb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rwhkbvdtroqaetouuzzibzqhlsclnnee","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txciplvnwwtznnypbtibpbhjybejaxni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"byrbwfacmpvamgrlwsgdoqwvguspwbqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujjbgadaddjigkqpwvovxlgsrtttusxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aztkqhxfabewrnglyvgkaqncpugfrqte","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlqnmojarxdnnlchnrfvzqflifwrntkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkfrvyxzabjdnqukqfsxtindpmgmthfh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfyrltxrlkxobhajntnzfyoridhaidoq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nnvhewypqiunlnpvpowbgflggxapfojg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"reesdepppyznsibbobkxjrfgyqfeegqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxwwrmuzqzchkbplhmrzkuhbbofcuhxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"toctrlmvvfxieavzmidtvleduvbafgah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgboqtesdvkiygnllapsxlblcpcmpepc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hiktysrizdfffffojtjomnttuaaceqpe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vnpewvtqnphwfrewmvflvftrwegzxgco","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atpxyunntgextqfggztwmvrnxirqhqqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wybcfebthswscmxqvrhrdoqfgfogpoqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zebrfdxncxnjkcehvqbmpizyklpmxtql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vfiwsweckbqziassvmhzixuokbfaaxsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkbofjrtbaekxdzsjtvpwjwctdsoxyrs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ifomulgbqzavijdblthzeooedkoacfdp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ppbhboudiuuaylpldvtczljlfgewxvbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpmdlbehklbubfgjnenbzfdaouuyrycz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zfvfwrqhenqasvuoivhmwroblfwyfclx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbtjptjvaqwcxjhtwruwomdsgbadepoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfespsxiumthjkojjmrdfzwkpdffwexi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kpbxenlszrflvmtuoistdhxsgvlbidde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xwuropzusvblvjmpjesssheobgsyifie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxtuazxswgkpxzlvcbkwbwqbzfvxcrrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xmzsnbdnokjzkzzbclpsrftqvhjpvvmx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lopapdheilvvmqzihbucslhzycpjtpiz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xwysmwqltvjxgndocabwrdbuqirpupow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lejznkjsnhwarxajmvybgvqyzomqtjdg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwxmbiuvaboqtxlonjlymetwsrfvugwp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"osgmyhwmnofokyxwywfkvgeecxrscvau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjghjeeatutdkdspibjutnncudaeahjt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fgysbatshtpktrdwgekitnzlmjjodbzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tptpexfncnbkuvyfhvsjogysjgrkcilr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dlanxvfwjawoyujmewatcgmgkyvwnylp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671188,"databaseName":"models_schema","ddl":"CREATE TABLE `suvqorxzmwvjejxhmiiitcxlimjbkmok` (\n `rkvdkhogxztsasbzvenhwqiqpyntpeku` int NOT NULL,\n `pqtdlcheovcwkgolciqgodigisgksqwm` int DEFAULT NULL,\n `cjtumxcjytnjltrvckcvrgitsxeghfxx` int DEFAULT NULL,\n `suuzrfggurmpftteopzpjexttwyyimqw` int DEFAULT NULL,\n `tggrxhkxmmrzotlnrapzturpepgsltzt` int DEFAULT NULL,\n `zwhsckhlcngtfnceayvlnnnwtnrxynyl` int DEFAULT NULL,\n `fwnrtmjyhahvunyilletpuymrauaruak` int DEFAULT NULL,\n `orsifeivjufnedubanlbbfxrdkipcfkt` int DEFAULT NULL,\n `txypmjjdmzeothbeniobnmliwhcrnctr` int DEFAULT NULL,\n `nljwmyvouovkfqmsdrqivgeerpwtlrpj` int DEFAULT NULL,\n `bhljwxidmfjlrihvrizhzjlbrrsbokiw` int DEFAULT NULL,\n `bshydzpbitabpogyierzhsmvsgzsxjum` int DEFAULT NULL,\n `dwsgwxyauqtvxvpnllqcsrgzfeflegct` int DEFAULT NULL,\n `jmjryxnwbmseswgycxlkwjyfqkvatjri` int DEFAULT NULL,\n `jplkfbufopkzuhhkrpiarzlyfttwzjam` int DEFAULT NULL,\n `rijchtcphsctkmjonsjawqminmfthcrj` int DEFAULT NULL,\n `iqbsjvvyewosadgxekdbfamsmderkntw` int DEFAULT NULL,\n `awlxxojwhcdugbjldgtnycxjcogihhbv` int DEFAULT NULL,\n `swwpguvursonddvbdkmdqnlcojjeagnt` int DEFAULT NULL,\n `nbsgkduwvpufjqphlsicvooycjbpsryi` int DEFAULT NULL,\n `nzoqmyoivtxcdrzyhafqhenukxsigiag` int DEFAULT NULL,\n `xyypdnwrldcnygnwsyekpiacfddwrpuu` int DEFAULT NULL,\n `dnhcwdwmehhnvfdqjkiyvvvuvwqmofoy` int DEFAULT NULL,\n `qyqkwrnbyuliickiszwwlhmfiwdeesrz` int DEFAULT NULL,\n `ytpmxbfioefflcmldgpzcjalkbwvlsrd` int DEFAULT NULL,\n `ugnfkqjtbkrdyyfpwznvgkdadibknjtx` int DEFAULT NULL,\n `zpaaagmscgpzjugsetajndknzuvbjszt` int DEFAULT NULL,\n `ifokdqkmoetmldpvoakxisrxtqmvsucq` int DEFAULT NULL,\n `zclmjlmvdpevfecudyzjqdruxinmnibu` int DEFAULT NULL,\n `nxbwauwuvugovxbuxmgnsbrhxwzlgpjs` int DEFAULT NULL,\n `yhcjkuuumaaebfoqhtgfymewsdnhpibe` int DEFAULT NULL,\n `edgqaiexkxmvmmlirbjbhabczmsmximd` int DEFAULT NULL,\n `ztbyfghyepssqqmlkmwewveibnhrlylq` int DEFAULT NULL,\n `fndamouszphbzqamyaivbdgxwchhqtkd` int DEFAULT NULL,\n `yfncydytxpmhxhovbqlqghahaeloxzop` int DEFAULT NULL,\n `vbsoyioxwcstbadyntregehflaxkkkyn` int DEFAULT NULL,\n `soywolnuljgwukixpmqhoumprgslfcaa` int DEFAULT NULL,\n `eellkubscsapntwhuizssbkvypyktksu` int DEFAULT NULL,\n `geuwtqqhmlsassvmrimdbxfpqialpcjn` int DEFAULT NULL,\n `prqmhjtsulszjqfuunsvndtjnsrffpxz` int DEFAULT NULL,\n `kjyrcrtrelhdazxplvhbzkugqipreanh` int DEFAULT NULL,\n `eaparnoqrqanfbboogokmizyljbdgcpo` int DEFAULT NULL,\n `mbqybvpviiimaoiibxyvdtyhaofohmfg` int DEFAULT NULL,\n `evgwqdnlbtctdjlkuxnqbykimaqsalgx` int DEFAULT NULL,\n `dgatiqeqtbjaasixsopgtbcbpiuupkcu` int DEFAULT NULL,\n `fbfmatecjvzfmewbjqcfuysomqscagdt` int DEFAULT NULL,\n `idjzlzqjxdtbzrrfrmivdimxxxssxucf` int DEFAULT NULL,\n `tmrcolqbevmyhyfrekdffngnoqvybnfo` int DEFAULT NULL,\n `mahjfurkvnvexupibuyhkeltvxwnfsnm` int DEFAULT NULL,\n `nurbumbeyqlfujazibiqjjtqvailgisx` int DEFAULT NULL,\n `gqiaxrdcgiicewqqyxvhosrntlkjfyzv` int DEFAULT NULL,\n `ggnfhahblqqhksigjxndyudzkscycusi` int DEFAULT NULL,\n `atlluunnomoqgditlkpohibfisyyxnec` int DEFAULT NULL,\n `iedujpexfbezuswzqhnxeiguzztmrvzo` int DEFAULT NULL,\n `vacwhoqpvxdrbfzooaviezsnqiyrrubs` int DEFAULT NULL,\n `cctyffjmewovreswficqlaxsmrvkdida` int DEFAULT NULL,\n `spszubvrezxyuhqnaxvdiauenazmxhvo` int DEFAULT NULL,\n `ywxuaaevfevtquqimkwohewpvwcighiz` int DEFAULT NULL,\n `ldqyqszqywndrurqnqwnxxtpabvneoxg` int DEFAULT NULL,\n `brttvflqehjqcjqcwsxzlnfiercnhhlj` int DEFAULT NULL,\n `sbboaupvcwkczokkdoszbexelccitgut` int DEFAULT NULL,\n `ayhujutftkiasiyqubpxqrhwpvkdcrzp` int DEFAULT NULL,\n `hpxvbwseqlbcrvmhdjdhdzknangtrxyx` int DEFAULT NULL,\n `okzgidkmkcwpsuhjbampzrordvgavabk` int DEFAULT NULL,\n `gsmwdqfvbavucmugvmopnqrpbnucbiow` int DEFAULT NULL,\n `pvtrbtferfziogggcrbvrapmiboamiiw` int DEFAULT NULL,\n `jtpbocgvzzxnnhynyyqdyhoioxytgadw` int DEFAULT NULL,\n `euczcgpjhcgmcelpzkjkttqtddgmcxqi` int DEFAULT NULL,\n `zxxxtdcpqccxwqqunwlyunyjchayprnp` int DEFAULT NULL,\n `jtozyykliepndbzkmoppmeistkrcjmad` int DEFAULT NULL,\n `ebbxysghmtvbphgpyuldfxznyamlyluc` int DEFAULT NULL,\n `iwmvjloidtuhlfrsnlnkmoxwdgxaqani` int DEFAULT NULL,\n `yjhcswuzwktxwxrffguyzshjljddwzqu` int DEFAULT NULL,\n `iwjxqnbzcqvrmbumfbegtzbbtnnpprfc` int DEFAULT NULL,\n `ogvuflusfhatphgfhlrcmlxudimmjjyo` int DEFAULT NULL,\n `cdqvolvkmhmbygybyvobkdzqnzzzjesr` int DEFAULT NULL,\n `dsinvgajtnmyjvsdapskkpapbnqutmmj` int DEFAULT NULL,\n `aatbqixiilwkrzthlprdgpscxaugfuws` int DEFAULT NULL,\n `rkfvqwtglhwsoclvifbrautwscosicex` int DEFAULT NULL,\n `epoehzroffbzplpuhyociqnapvbdtfxb` int DEFAULT NULL,\n `cbbqzaztstmkhdhhwwginaghqgmmrkpt` int DEFAULT NULL,\n `znguqqrxqukomtigpgaljpdemuiduiyc` int DEFAULT NULL,\n `mqmeblepefjmpqwlinzmiujarbdbbsar` int DEFAULT NULL,\n `vnzqsxmbiemkdzoypoqjsqwiieeoctbo` int DEFAULT NULL,\n `mazpkjcfplikqdubwmscqydyazryexvg` int DEFAULT NULL,\n `ybjvobfkhlqjdoqnwtmmcsryvxilwgbb` int DEFAULT NULL,\n `pprtrpkcritbqztcuqdmgognlvpoekgx` int DEFAULT NULL,\n `rwzklqvehgpujthseeojednbcavcntze` int DEFAULT NULL,\n `oquutovycdolsvlonhwxvxwsbumsichh` int DEFAULT NULL,\n `ecpyvhgjhotglcvefkeyaedhjretdtmi` int DEFAULT NULL,\n `fskntlgyfwuqzsqghsowavnryxhxqtcn` int DEFAULT NULL,\n `oeitpfpizyasxkcfyyrghsnjqzvoellq` int DEFAULT NULL,\n `ikwpvgdbxjupyunvbjqkstgddbvsfgcl` int DEFAULT NULL,\n `kwfysduasdlzwiexnjgpmgwvdmbgbvzm` int DEFAULT NULL,\n `odgssanjnmzvzaaflrrlmnkajopiltep` int DEFAULT NULL,\n `tghrouvjcccagvdxieyzufrcffbmarmu` int DEFAULT NULL,\n `mzrwqauokniqulazysehaximzdkigpzr` int DEFAULT NULL,\n `zepgnuvjxnofnahwweclqbymwuxynmny` int DEFAULT NULL,\n `znogsojxczdrwawrzefdrmdhfsuzzyqz` int DEFAULT NULL,\n `auysxczgnmltfrgcvyqpavmxlcwlnrxp` int DEFAULT NULL,\n PRIMARY KEY (`rkvdkhogxztsasbzvenhwqiqpyntpeku`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"suvqorxzmwvjejxhmiiitcxlimjbkmok\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["rkvdkhogxztsasbzvenhwqiqpyntpeku"],"columns":[{"name":"rkvdkhogxztsasbzvenhwqiqpyntpeku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"pqtdlcheovcwkgolciqgodigisgksqwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cjtumxcjytnjltrvckcvrgitsxeghfxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"suuzrfggurmpftteopzpjexttwyyimqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tggrxhkxmmrzotlnrapzturpepgsltzt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zwhsckhlcngtfnceayvlnnnwtnrxynyl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwnrtmjyhahvunyilletpuymrauaruak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orsifeivjufnedubanlbbfxrdkipcfkt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txypmjjdmzeothbeniobnmliwhcrnctr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nljwmyvouovkfqmsdrqivgeerpwtlrpj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bhljwxidmfjlrihvrizhzjlbrrsbokiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bshydzpbitabpogyierzhsmvsgzsxjum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwsgwxyauqtvxvpnllqcsrgzfeflegct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmjryxnwbmseswgycxlkwjyfqkvatjri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jplkfbufopkzuhhkrpiarzlyfttwzjam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rijchtcphsctkmjonsjawqminmfthcrj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqbsjvvyewosadgxekdbfamsmderkntw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awlxxojwhcdugbjldgtnycxjcogihhbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swwpguvursonddvbdkmdqnlcojjeagnt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbsgkduwvpufjqphlsicvooycjbpsryi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzoqmyoivtxcdrzyhafqhenukxsigiag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyypdnwrldcnygnwsyekpiacfddwrpuu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dnhcwdwmehhnvfdqjkiyvvvuvwqmofoy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qyqkwrnbyuliickiszwwlhmfiwdeesrz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytpmxbfioefflcmldgpzcjalkbwvlsrd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugnfkqjtbkrdyyfpwznvgkdadibknjtx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zpaaagmscgpzjugsetajndknzuvbjszt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ifokdqkmoetmldpvoakxisrxtqmvsucq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zclmjlmvdpevfecudyzjqdruxinmnibu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxbwauwuvugovxbuxmgnsbrhxwzlgpjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhcjkuuumaaebfoqhtgfymewsdnhpibe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edgqaiexkxmvmmlirbjbhabczmsmximd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ztbyfghyepssqqmlkmwewveibnhrlylq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fndamouszphbzqamyaivbdgxwchhqtkd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfncydytxpmhxhovbqlqghahaeloxzop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbsoyioxwcstbadyntregehflaxkkkyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"soywolnuljgwukixpmqhoumprgslfcaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eellkubscsapntwhuizssbkvypyktksu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"geuwtqqhmlsassvmrimdbxfpqialpcjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prqmhjtsulszjqfuunsvndtjnsrffpxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjyrcrtrelhdazxplvhbzkugqipreanh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eaparnoqrqanfbboogokmizyljbdgcpo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbqybvpviiimaoiibxyvdtyhaofohmfg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evgwqdnlbtctdjlkuxnqbykimaqsalgx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgatiqeqtbjaasixsopgtbcbpiuupkcu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbfmatecjvzfmewbjqcfuysomqscagdt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idjzlzqjxdtbzrrfrmivdimxxxssxucf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmrcolqbevmyhyfrekdffngnoqvybnfo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mahjfurkvnvexupibuyhkeltvxwnfsnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nurbumbeyqlfujazibiqjjtqvailgisx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqiaxrdcgiicewqqyxvhosrntlkjfyzv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggnfhahblqqhksigjxndyudzkscycusi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atlluunnomoqgditlkpohibfisyyxnec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iedujpexfbezuswzqhnxeiguzztmrvzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vacwhoqpvxdrbfzooaviezsnqiyrrubs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cctyffjmewovreswficqlaxsmrvkdida","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"spszubvrezxyuhqnaxvdiauenazmxhvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywxuaaevfevtquqimkwohewpvwcighiz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ldqyqszqywndrurqnqwnxxtpabvneoxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"brttvflqehjqcjqcwsxzlnfiercnhhlj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbboaupvcwkczokkdoszbexelccitgut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ayhujutftkiasiyqubpxqrhwpvkdcrzp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hpxvbwseqlbcrvmhdjdhdzknangtrxyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"okzgidkmkcwpsuhjbampzrordvgavabk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gsmwdqfvbavucmugvmopnqrpbnucbiow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pvtrbtferfziogggcrbvrapmiboamiiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jtpbocgvzzxnnhynyyqdyhoioxytgadw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"euczcgpjhcgmcelpzkjkttqtddgmcxqi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxxxtdcpqccxwqqunwlyunyjchayprnp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jtozyykliepndbzkmoppmeistkrcjmad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebbxysghmtvbphgpyuldfxznyamlyluc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwmvjloidtuhlfrsnlnkmoxwdgxaqani","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjhcswuzwktxwxrffguyzshjljddwzqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwjxqnbzcqvrmbumfbegtzbbtnnpprfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ogvuflusfhatphgfhlrcmlxudimmjjyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cdqvolvkmhmbygybyvobkdzqnzzzjesr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dsinvgajtnmyjvsdapskkpapbnqutmmj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aatbqixiilwkrzthlprdgpscxaugfuws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkfvqwtglhwsoclvifbrautwscosicex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"epoehzroffbzplpuhyociqnapvbdtfxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbbqzaztstmkhdhhwwginaghqgmmrkpt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znguqqrxqukomtigpgaljpdemuiduiyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqmeblepefjmpqwlinzmiujarbdbbsar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vnzqsxmbiemkdzoypoqjsqwiieeoctbo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mazpkjcfplikqdubwmscqydyazryexvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ybjvobfkhlqjdoqnwtmmcsryvxilwgbb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pprtrpkcritbqztcuqdmgognlvpoekgx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rwzklqvehgpujthseeojednbcavcntze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oquutovycdolsvlonhwxvxwsbumsichh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecpyvhgjhotglcvefkeyaedhjretdtmi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fskntlgyfwuqzsqghsowavnryxhxqtcn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oeitpfpizyasxkcfyyrghsnjqzvoellq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikwpvgdbxjupyunvbjqkstgddbvsfgcl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwfysduasdlzwiexnjgpmgwvdmbgbvzm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"odgssanjnmzvzaaflrrlmnkajopiltep","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tghrouvjcccagvdxieyzufrcffbmarmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzrwqauokniqulazysehaximzdkigpzr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zepgnuvjxnofnahwweclqbymwuxynmny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znogsojxczdrwawrzefdrmdhfsuzzyqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"auysxczgnmltfrgcvyqpavmxlcwlnrxp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671223,"databaseName":"models_schema","ddl":"CREATE TABLE `swgxwfoajgckubpfskppncstrxbnrpfl` (\n `gihcvacpzfwpnwpnzlxeyeifvictkphz` int NOT NULL,\n `ulbahbqrorobyhaebdiohjwiovcrgzyf` int DEFAULT NULL,\n `cuhotrczeyaltydwlfpzqkjucipwzsok` int DEFAULT NULL,\n `oeczwyqilffqnirjpozghfmxzdexgbai` int DEFAULT NULL,\n `rsnsvkswkwueuqbqglruneterxikboem` int DEFAULT NULL,\n `fzmephxngzydftznfxqmnlvpqoyhdrln` int DEFAULT NULL,\n `gqwqnjfhsfhgdltacyiqwaxpxcwdcabz` int DEFAULT NULL,\n `fkchlgwfgfzifwsyeigwbjiefhieoims` int DEFAULT NULL,\n `gpeusetbwngbzsduoziybipzwbmhvbeq` int DEFAULT NULL,\n `hjlnipmknaxtkwqljfmxydcwekcgfbzp` int DEFAULT NULL,\n `kdmzthncxzomschopqglkiczcgkmhvwi` int DEFAULT NULL,\n `mfyfdtrghlbibrtxpkmptllzlpjlmpri` int DEFAULT NULL,\n `afybxfdtmgwkwuppxarnzneyxmcrwoqr` int DEFAULT NULL,\n `iepfzhqxmlxbrahrjobghfvqwkcmfcfh` int DEFAULT NULL,\n `onzjjlnqxwghcaxyflyvtmltscsujwer` int DEFAULT NULL,\n `voaykofnrpctnzxkawrucgpnddltfdgq` int DEFAULT NULL,\n `jboxmesmqsfjrmeodlzlsftfuxmwiarp` int DEFAULT NULL,\n `zqnhceicwekwwvpbvhhiqyocqogqqfvp` int DEFAULT NULL,\n `rlslkhcmjuqxlnzlulgkbuelpceqygnp` int DEFAULT NULL,\n `dmreephaqvqgkwvoofinzfiawncouwip` int DEFAULT NULL,\n `qhyxpdxcjlmbqvyccrydbgsaiemlsbtt` int DEFAULT NULL,\n `qheigkwtylxljywakzupjvoxvkemnfym` int DEFAULT NULL,\n `okjvilvrxlvygfrwsqypftxgoqtoznvl` int DEFAULT NULL,\n `akuebzgjcgsdpqitzpqmmmtoktuoczid` int DEFAULT NULL,\n `daugbwbicehqmrqxalybywbifyqlzvid` int DEFAULT NULL,\n `sagtjvbhoqvzadjqvaqqrgkmwozqhfof` int DEFAULT NULL,\n `gbgzwzhwtidjygmghwlcgrfyftaagdfh` int DEFAULT NULL,\n `zfwiwsbgobvithlvfstuuwqutuzfgvpc` int DEFAULT NULL,\n `gcctwsuguvqzhktnwknzrodowkkqjcty` int DEFAULT NULL,\n `xvayftdueucvdthlginmsaaeuloylbnh` int DEFAULT NULL,\n `ydqlfissisttlmfniflozyafqvfitfxm` int DEFAULT NULL,\n `gdrrejichncrgceebplwgiqyjvfxqxbs` int DEFAULT NULL,\n `ieybyrxirzuhsbaiaugklphllgzzggad` int DEFAULT NULL,\n `mgqbwosshwaajhapqhcswzzovbufcddx` int DEFAULT NULL,\n `ryhuolfvkrkvgkzernaegegjrhwxwvxj` int DEFAULT NULL,\n `bwikxuxwqjwtqqqerjbeyjkqnzzachsp` int DEFAULT NULL,\n `vghmygeuqdtltqqmavluoeboecytbozo` int DEFAULT NULL,\n `gjtxgwzcddbwmdfbbygyfzzazqukofwx` int DEFAULT NULL,\n `gvvtkcydykevrozkfcbwbunvnrgocxjy` int DEFAULT NULL,\n `yzzpvflfgiglnymplrfnwhomjwbkdmqh` int DEFAULT NULL,\n `vkbuvavalrzanqfmhwparjuufsolrrjc` int DEFAULT NULL,\n `yjbkpegileptcjubcissvsxakeqrhjir` int DEFAULT NULL,\n `yolrayejrboujsmumviemvwiqxrtvxnk` int DEFAULT NULL,\n `yiqimmqhzqchmqmvzgtafkvabqjfzrmc` int DEFAULT NULL,\n `noowmixepsuylhtxkwecexznqtnvxxev` int DEFAULT NULL,\n `lloxjsnawddapmardzcrpifsgmqxmofz` int DEFAULT NULL,\n `ovpconeqovraxkipoqalyqbxsrjcytfq` int DEFAULT NULL,\n `vjdqqoqsjccepeyukfoxilzxfpkaytjg` int DEFAULT NULL,\n `gwtsmvlhibayulfszgelypzpaxxfgoko` int DEFAULT NULL,\n `hmetpjyyfuaicbweskryasjgxkvkawaw` int DEFAULT NULL,\n `cbozotavpqmpojzdeqsuqaiecuhuxkzz` int DEFAULT NULL,\n `scoynecisgalwrwbspmcapjbssdxubft` int DEFAULT NULL,\n `veancbabmtyrgygmltrispvvpnynpbmi` int DEFAULT NULL,\n `hcjjjcgzolvaaxbgjdtpjhrtohrsinpc` int DEFAULT NULL,\n `znbnghgmmqajxgycgieiewzhnlbdpuni` int DEFAULT NULL,\n `wemxlanyywfnjktbfpetsquziiooiluf` int DEFAULT NULL,\n `ixhcjekfonezphbmtfjkjmvogpxjnexu` int DEFAULT NULL,\n `anyktxvialdrvhwqzypjpmisaddxpxvc` int DEFAULT NULL,\n `sththkruwfeklzoqqtytazdnviqigsvz` int DEFAULT NULL,\n `tvdhbhpgdmqhsyadoacyfgqfbuwogfhk` int DEFAULT NULL,\n `cvikcfcwwunxmyurpwvjbrfktpysgbxq` int DEFAULT NULL,\n `ebnfefanqjsdsllashtelriyikxflpwn` int DEFAULT NULL,\n `nowxbbvisxhwjtuplbffghpkzduosrmj` int DEFAULT NULL,\n `hzwcevhqrdcciufmuwnnxeiboikhnmgg` int DEFAULT NULL,\n `fxeikbynysyrpuxaphevxcgubacqvakb` int DEFAULT NULL,\n `qtsqjigwyzzfsjcdckzjwssxzeuuzljn` int DEFAULT NULL,\n `lpnrtztczdvuiriujuzdigsgbgoexxjo` int DEFAULT NULL,\n `fldqpxxlnamzxrtpojkizuxghxgmrvix` int DEFAULT NULL,\n `dcaldeypljvxdrtkgmbybrybqkcigsci` int DEFAULT NULL,\n `kpeoeainurabficnroribqfgusobtylb` int DEFAULT NULL,\n `jtyfdwulqungzbueuvcbfmszimindjcj` int DEFAULT NULL,\n `yjtgtfypywppvbffldeyizxuqfdcmdyx` int DEFAULT NULL,\n `dpapacebgoobmwwshzzblvarpxzqcjgm` int DEFAULT NULL,\n `vtmmmsiveleauvljzsbnrslzmnbhdkcw` int DEFAULT NULL,\n `oyumnadxnecbvklujkirpdochmioqxjf` int DEFAULT NULL,\n `qtyfyfivydmspzoywrdgmcwyjckdeywt` int DEFAULT NULL,\n `fuzdqjuxrfsdfdmslfsszsjeehbyumdv` int DEFAULT NULL,\n `zukupgajckjiatmaukoquqetjjjoqtxh` int DEFAULT NULL,\n `rkuqreaguqrrvxncmyofrxhugahykomx` int DEFAULT NULL,\n `ashvmxwpzwqhiscuifahdbkknwawcsob` int DEFAULT NULL,\n `ggmlymcmimgkczbchlseddfsrvxwkdzb` int DEFAULT NULL,\n `ichdelxbvoqtjrezfenmzmfaybdopqvb` int DEFAULT NULL,\n `bmleyvqawgoguimdahevsrkipstfgxix` int DEFAULT NULL,\n `oanjffciuwuxxrhyospwiitumygicevd` int DEFAULT NULL,\n `fnzuzohgxdmtysdbwcygedtypypzedeu` int DEFAULT NULL,\n `bujydoafhvjsuahtesjwubwmxzlriuln` int DEFAULT NULL,\n `guprxjosageqfsjjltoguxosomwxsgbb` int DEFAULT NULL,\n `uynjklvqfopxbmmoinlfjpgitzmoejek` int DEFAULT NULL,\n `ffjvmhojdvmfmlezotvyylbesodeooik` int DEFAULT NULL,\n `nhmmelbebttbeoeuwnlmdjzlmbwwohvu` int DEFAULT NULL,\n `vxlwdahfdivcrxkvwztyjtxazbhisgxf` int DEFAULT NULL,\n `opykcuqzqgoydktcgjorkerhgnguendm` int DEFAULT NULL,\n `uzvgpuprpqnpytseumlbppgocbgmrwtm` int DEFAULT NULL,\n `zljecqtxktcpffdvfjiusryjupoclmbx` int DEFAULT NULL,\n `xwpoatdpfysnickjjvgbddjfunntazzr` int DEFAULT NULL,\n `tvtabgtqretqndhyxuoxnnratytpwtul` int DEFAULT NULL,\n `smowtnqcrgfqseqhblwxejktjqygfsim` int DEFAULT NULL,\n `herenvefefsavmmsnlswsfmaligxtyry` int DEFAULT NULL,\n `sdcetqpavsmtntcjcfldgqkeggltoirt` int DEFAULT NULL,\n `cezduunyoydfpcuujnyncrwvxniratuj` int DEFAULT NULL,\n PRIMARY KEY (`gihcvacpzfwpnwpnzlxeyeifvictkphz`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"swgxwfoajgckubpfskppncstrxbnrpfl\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["gihcvacpzfwpnwpnzlxeyeifvictkphz"],"columns":[{"name":"gihcvacpzfwpnwpnzlxeyeifvictkphz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"ulbahbqrorobyhaebdiohjwiovcrgzyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cuhotrczeyaltydwlfpzqkjucipwzsok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oeczwyqilffqnirjpozghfmxzdexgbai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rsnsvkswkwueuqbqglruneterxikboem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzmephxngzydftznfxqmnlvpqoyhdrln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqwqnjfhsfhgdltacyiqwaxpxcwdcabz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fkchlgwfgfzifwsyeigwbjiefhieoims","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gpeusetbwngbzsduoziybipzwbmhvbeq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjlnipmknaxtkwqljfmxydcwekcgfbzp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kdmzthncxzomschopqglkiczcgkmhvwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mfyfdtrghlbibrtxpkmptllzlpjlmpri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afybxfdtmgwkwuppxarnzneyxmcrwoqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iepfzhqxmlxbrahrjobghfvqwkcmfcfh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"onzjjlnqxwghcaxyflyvtmltscsujwer","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"voaykofnrpctnzxkawrucgpnddltfdgq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jboxmesmqsfjrmeodlzlsftfuxmwiarp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqnhceicwekwwvpbvhhiqyocqogqqfvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlslkhcmjuqxlnzlulgkbuelpceqygnp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dmreephaqvqgkwvoofinzfiawncouwip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhyxpdxcjlmbqvyccrydbgsaiemlsbtt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qheigkwtylxljywakzupjvoxvkemnfym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"okjvilvrxlvygfrwsqypftxgoqtoznvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akuebzgjcgsdpqitzpqmmmtoktuoczid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"daugbwbicehqmrqxalybywbifyqlzvid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sagtjvbhoqvzadjqvaqqrgkmwozqhfof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gbgzwzhwtidjygmghwlcgrfyftaagdfh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zfwiwsbgobvithlvfstuuwqutuzfgvpc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gcctwsuguvqzhktnwknzrodowkkqjcty","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvayftdueucvdthlginmsaaeuloylbnh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydqlfissisttlmfniflozyafqvfitfxm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdrrejichncrgceebplwgiqyjvfxqxbs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ieybyrxirzuhsbaiaugklphllgzzggad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mgqbwosshwaajhapqhcswzzovbufcddx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ryhuolfvkrkvgkzernaegegjrhwxwvxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bwikxuxwqjwtqqqerjbeyjkqnzzachsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vghmygeuqdtltqqmavluoeboecytbozo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjtxgwzcddbwmdfbbygyfzzazqukofwx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gvvtkcydykevrozkfcbwbunvnrgocxjy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzzpvflfgiglnymplrfnwhomjwbkdmqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkbuvavalrzanqfmhwparjuufsolrrjc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjbkpegileptcjubcissvsxakeqrhjir","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yolrayejrboujsmumviemvwiqxrtvxnk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yiqimmqhzqchmqmvzgtafkvabqjfzrmc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"noowmixepsuylhtxkwecexznqtnvxxev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lloxjsnawddapmardzcrpifsgmqxmofz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovpconeqovraxkipoqalyqbxsrjcytfq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjdqqoqsjccepeyukfoxilzxfpkaytjg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gwtsmvlhibayulfszgelypzpaxxfgoko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmetpjyyfuaicbweskryasjgxkvkawaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbozotavpqmpojzdeqsuqaiecuhuxkzz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"scoynecisgalwrwbspmcapjbssdxubft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"veancbabmtyrgygmltrispvvpnynpbmi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hcjjjcgzolvaaxbgjdtpjhrtohrsinpc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znbnghgmmqajxgycgieiewzhnlbdpuni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wemxlanyywfnjktbfpetsquziiooiluf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixhcjekfonezphbmtfjkjmvogpxjnexu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"anyktxvialdrvhwqzypjpmisaddxpxvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sththkruwfeklzoqqtytazdnviqigsvz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvdhbhpgdmqhsyadoacyfgqfbuwogfhk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvikcfcwwunxmyurpwvjbrfktpysgbxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebnfefanqjsdsllashtelriyikxflpwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nowxbbvisxhwjtuplbffghpkzduosrmj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hzwcevhqrdcciufmuwnnxeiboikhnmgg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxeikbynysyrpuxaphevxcgubacqvakb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtsqjigwyzzfsjcdckzjwssxzeuuzljn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lpnrtztczdvuiriujuzdigsgbgoexxjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fldqpxxlnamzxrtpojkizuxghxgmrvix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcaldeypljvxdrtkgmbybrybqkcigsci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kpeoeainurabficnroribqfgusobtylb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jtyfdwulqungzbueuvcbfmszimindjcj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjtgtfypywppvbffldeyizxuqfdcmdyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpapacebgoobmwwshzzblvarpxzqcjgm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtmmmsiveleauvljzsbnrslzmnbhdkcw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oyumnadxnecbvklujkirpdochmioqxjf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtyfyfivydmspzoywrdgmcwyjckdeywt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fuzdqjuxrfsdfdmslfsszsjeehbyumdv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zukupgajckjiatmaukoquqetjjjoqtxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkuqreaguqrrvxncmyofrxhugahykomx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ashvmxwpzwqhiscuifahdbkknwawcsob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggmlymcmimgkczbchlseddfsrvxwkdzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ichdelxbvoqtjrezfenmzmfaybdopqvb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bmleyvqawgoguimdahevsrkipstfgxix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oanjffciuwuxxrhyospwiitumygicevd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnzuzohgxdmtysdbwcygedtypypzedeu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bujydoafhvjsuahtesjwubwmxzlriuln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"guprxjosageqfsjjltoguxosomwxsgbb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uynjklvqfopxbmmoinlfjpgitzmoejek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffjvmhojdvmfmlezotvyylbesodeooik","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhmmelbebttbeoeuwnlmdjzlmbwwohvu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxlwdahfdivcrxkvwztyjtxazbhisgxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opykcuqzqgoydktcgjorkerhgnguendm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzvgpuprpqnpytseumlbppgocbgmrwtm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zljecqtxktcpffdvfjiusryjupoclmbx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xwpoatdpfysnickjjvgbddjfunntazzr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvtabgtqretqndhyxuoxnnratytpwtul","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smowtnqcrgfqseqhblwxejktjqygfsim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"herenvefefsavmmsnlswsfmaligxtyry","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdcetqpavsmtntcjcfldgqkeggltoirt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cezduunyoydfpcuujnyncrwvxniratuj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671256,"databaseName":"models_schema","ddl":"CREATE TABLE `sxmfnbngjuiquecrlxtfqulfkuqmjfzr` (\n `kzujvppmytdfxtivxjiovnlkyeacxsix` int NOT NULL,\n `tawvvmchpnvxmapdalrmrwsvhypyeeal` int DEFAULT NULL,\n `nxnchjpjrhclfekzrhstfrwbcumfupgv` int DEFAULT NULL,\n `bsmulqfrboxfzkuqaexlinydxxosmrux` int DEFAULT NULL,\n `hffsakpkbjilmurffmacjxuapzdhexap` int DEFAULT NULL,\n `wtpgfecnjedbzqhmiwfxxffdagmselri` int DEFAULT NULL,\n `aibsuzebydsntxtyhphhwtfyhylunihd` int DEFAULT NULL,\n `uhnvozylayxmbyuhqbbzhbkbvlhzotmo` int DEFAULT NULL,\n `tlktnwqayvipyxmfxrhhzsfzjaaurnsf` int DEFAULT NULL,\n `wsbhmdmvjphyetfydvirbrjzlhfpayle` int DEFAULT NULL,\n `sbguwerynxbdonnlquyxljnkcbszmpwe` int DEFAULT NULL,\n `dbwldpswwhbhnrqrghmxyqrjquphebvo` int DEFAULT NULL,\n `jikxluqynwixvgmshksndqwnynookgvz` int DEFAULT NULL,\n `tmyejsaantuplkwjeoysusiaiscuqfjq` int DEFAULT NULL,\n `merjbbeweorryniadkoyxkugklehckpb` int DEFAULT NULL,\n `rioyqmxtouskblmdszgeyjsvpdqytuen` int DEFAULT NULL,\n `vhmhrcroajyooulkaqgwejhojyybusbd` int DEFAULT NULL,\n `evntvomnymggdckgfvqcjtlleqoplowk` int DEFAULT NULL,\n `shduojyvstoohavnzuvdqajfdhwxafmm` int DEFAULT NULL,\n `bqvkpmlcufnofpvmfrffxmoombdcsqpj` int DEFAULT NULL,\n `govbsggcdqfosdpqhcwfgzqzrzyavswe` int DEFAULT NULL,\n `iuyecllwtituygxlutrchlygjyumesmc` int DEFAULT NULL,\n `ongmtcpeipnymvxrhbmwshlhuzaursmk` int DEFAULT NULL,\n `zosnwdadgsmtmcmstepqnsrntfmogkvk` int DEFAULT NULL,\n `ywqpjxbwkqghwpvorcgyqfkkngxbknqt` int DEFAULT NULL,\n `wxxajszmanuqfpxtzhovcbdtzbbormdx` int DEFAULT NULL,\n `pzvhohshlihpmshcktcgwvvphkvcfxfn` int DEFAULT NULL,\n `vnjsmqzqcewuaqtwfgmaqpedfwjqusne` int DEFAULT NULL,\n `vnxfllakvfqzgrbafkyolvtzvyfweuge` int DEFAULT NULL,\n `warqlburlbjdxcowodawvkochoapugak` int DEFAULT NULL,\n `pvgdoudcfgjtirdiksusvctraxzgktnz` int DEFAULT NULL,\n `nvtszvbsdjcicpuzexegwmwirmnuutyk` int DEFAULT NULL,\n `wutxpwqzlymqynvtjxqleihqijvpjjmb` int DEFAULT NULL,\n `yllbtlycrnsrzepgysvbnuuudulbnnha` int DEFAULT NULL,\n `rjrndhivestxfzvpqxprkypyhikcebqe` int DEFAULT NULL,\n `prljvluamvwctfxpqfsjemrqskcsxoss` int DEFAULT NULL,\n `rehwakyqvijnqgbfhtsaicczduwbquyh` int DEFAULT NULL,\n `tthlpnjyybssfleihcdwosilocdpfxwd` int DEFAULT NULL,\n `newjdcnrpvsqughadcarbjqdydkzrdwx` int DEFAULT NULL,\n `lrajuhqkehbauqaagpzhohnpvriutyne` int DEFAULT NULL,\n `swqgmcngdaiucnqmmtfilnbjpdqkyvpu` int DEFAULT NULL,\n `ijydardxguiwdgjjxgqhylxdaptjoowg` int DEFAULT NULL,\n `dxrhqnrdbsealvrzqrchibdtvpcsxzpz` int DEFAULT NULL,\n `eglezbqubnorhbomrlfwwgkmpgaajhqx` int DEFAULT NULL,\n `vlrecbnatisnvovggmlleykvtszpkqyo` int DEFAULT NULL,\n `ghkysrxtefxlfvijqmjkqclkkctiqfob` int DEFAULT NULL,\n `rbgknscolzaupjhqtzurovawhfypdcpq` int DEFAULT NULL,\n `djuiylxxoegbifhqrulkrvtonlcjiolk` int DEFAULT NULL,\n `ldgcczvoksonitjhlzeznnrjhjvxjbmg` int DEFAULT NULL,\n `vnabjprnykboosbtqpgwgyzqgmzacaev` int DEFAULT NULL,\n `zjuicxoeevlujadvrupxsxfuxavoqaxs` int DEFAULT NULL,\n `bfhuecmmxcjlpnvbrvlyvawprnebmtya` int DEFAULT NULL,\n `cmccrunitpooogvyxaxaldtmtvsgrnkd` int DEFAULT NULL,\n `nppbozxywzbyowstlzbnanffccwbkolr` int DEFAULT NULL,\n `zsfiuxaexjleaaqcbjypaowsjhspnwhv` int DEFAULT NULL,\n `wzocybjwwlxyoxurezretdvoaykfjvin` int DEFAULT NULL,\n `cuyhekdfvepqpokxsgqmhcuwuhltnwyo` int DEFAULT NULL,\n `cclvhhcrizsaqksvnvljteocjadbgljx` int DEFAULT NULL,\n `ikrhunipbfeizttivlxfgkiygeykttws` int DEFAULT NULL,\n `qmurrcovisbltkoovpwxkfrgtrosaljj` int DEFAULT NULL,\n `wynooyzmusjvqyamyrliibuqahabrqjz` int DEFAULT NULL,\n `ziczcnhuvqtjbmrbeskkqmmaotlbmrnt` int DEFAULT NULL,\n `zxkdqfrqzdxjrsinvvmpupfemeaoffna` int DEFAULT NULL,\n `xtcspuxxebuvuytzvnruynfmxafclogc` int DEFAULT NULL,\n `gefbxkszgzbmxgrwguxlaobkcpbwcldv` int DEFAULT NULL,\n `onvnnijxeagfxjdtsfltptqvljnyddbb` int DEFAULT NULL,\n `jamhmmulwyoxwzyxhqlvkmfoupqxoltj` int DEFAULT NULL,\n `stwgvmlmlstbdzmqkmtupmrycmwdiaqf` int DEFAULT NULL,\n `yuxerjumimcinklkztigdbygbhyfefzi` int DEFAULT NULL,\n `kkktwctpkbqtutxeaonvqnfiogpcykar` int DEFAULT NULL,\n `apbzbtramohdupzgslecdsvsuohrnsiv` int DEFAULT NULL,\n `fhleojiftsashobkzpmsevvwtieopmzc` int DEFAULT NULL,\n `uguavsogjogvisncehkalveufrscbzlz` int DEFAULT NULL,\n `ehgbrhnvhogayndwskamgmsgcfpkwjdg` int DEFAULT NULL,\n `quqxymugiluefdzlbwhetlfkmnhmfkmp` int DEFAULT NULL,\n `dgpnroeegczwnjznhfjhblnkcaphcilf` int DEFAULT NULL,\n `dafonqjymhpcqhoxsdskjimrtrrjjqll` int DEFAULT NULL,\n `zglnxnlqsizlesxqllrykvnlgbcwkizl` int DEFAULT NULL,\n `mdsdggztlgfjexpchiiifqomijlsptei` int DEFAULT NULL,\n `qvfirvhzlyrncejuuukeuzkxdcqhvrng` int DEFAULT NULL,\n `oxgcspoixmaafqrociibfaeosydkglmz` int DEFAULT NULL,\n `kldneklmlgrvrmamulnmctjhreuhublt` int DEFAULT NULL,\n `wpkoehmwwdgdivmflfxngxsoakjsbubs` int DEFAULT NULL,\n `dolqknaeriqcvxombdrphepctkizvpxe` int DEFAULT NULL,\n `neknltlaifhiyyabhmfpqooppzoxkfuz` int DEFAULT NULL,\n `clxtwifpbndrkuqkgxjcgaolxwzofztl` int DEFAULT NULL,\n `carjimwkunyujbpvpxnrgwqhzreuuhci` int DEFAULT NULL,\n `htedrmxtrrsjgwnwxpxnqdbtmbegtxrb` int DEFAULT NULL,\n `uunfqvmaqzyankqwebnnilstschpodbl` int DEFAULT NULL,\n `mykhoaraqanzkgvdyleyjxkiefpdqksl` int DEFAULT NULL,\n `rfadhudmfpqpxekftbktyaiyreoaorbi` int DEFAULT NULL,\n `hyopngtfrssavjfounzihbybkjwvettw` int DEFAULT NULL,\n `gtimlgcrdtpogoctmxmzogajxxedrlhh` int DEFAULT NULL,\n `jifcxtacmsjitagpisjeeutmykwinfbk` int DEFAULT NULL,\n `dhbqrdqgoscskobfjpnbpoflleyztjhw` int DEFAULT NULL,\n `hkboehitrfvphdbmrjrflsqmccwrnmtb` int DEFAULT NULL,\n `dyxcdrglvbauflogyhrpmnhsrebvcjzw` int DEFAULT NULL,\n `alwjzekbuwjzsshvgsrcohmhcajnowhj` int DEFAULT NULL,\n `svstgbmhqyjnznykghjtjmewhjqgtyag` int DEFAULT NULL,\n `uusdebhpkmmjueybwqgqmjgctritgibj` int DEFAULT NULL,\n PRIMARY KEY (`kzujvppmytdfxtivxjiovnlkyeacxsix`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"sxmfnbngjuiquecrlxtfqulfkuqmjfzr\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["kzujvppmytdfxtivxjiovnlkyeacxsix"],"columns":[{"name":"kzujvppmytdfxtivxjiovnlkyeacxsix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"tawvvmchpnvxmapdalrmrwsvhypyeeal","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxnchjpjrhclfekzrhstfrwbcumfupgv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bsmulqfrboxfzkuqaexlinydxxosmrux","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hffsakpkbjilmurffmacjxuapzdhexap","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wtpgfecnjedbzqhmiwfxxffdagmselri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aibsuzebydsntxtyhphhwtfyhylunihd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhnvozylayxmbyuhqbbzhbkbvlhzotmo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlktnwqayvipyxmfxrhhzsfzjaaurnsf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wsbhmdmvjphyetfydvirbrjzlhfpayle","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbguwerynxbdonnlquyxljnkcbszmpwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbwldpswwhbhnrqrghmxyqrjquphebvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jikxluqynwixvgmshksndqwnynookgvz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmyejsaantuplkwjeoysusiaiscuqfjq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"merjbbeweorryniadkoyxkugklehckpb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rioyqmxtouskblmdszgeyjsvpdqytuen","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhmhrcroajyooulkaqgwejhojyybusbd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evntvomnymggdckgfvqcjtlleqoplowk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shduojyvstoohavnzuvdqajfdhwxafmm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqvkpmlcufnofpvmfrffxmoombdcsqpj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"govbsggcdqfosdpqhcwfgzqzrzyavswe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iuyecllwtituygxlutrchlygjyumesmc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ongmtcpeipnymvxrhbmwshlhuzaursmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zosnwdadgsmtmcmstepqnsrntfmogkvk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywqpjxbwkqghwpvorcgyqfkkngxbknqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxxajszmanuqfpxtzhovcbdtzbbormdx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pzvhohshlihpmshcktcgwvvphkvcfxfn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vnjsmqzqcewuaqtwfgmaqpedfwjqusne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vnxfllakvfqzgrbafkyolvtzvyfweuge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"warqlburlbjdxcowodawvkochoapugak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pvgdoudcfgjtirdiksusvctraxzgktnz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvtszvbsdjcicpuzexegwmwirmnuutyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wutxpwqzlymqynvtjxqleihqijvpjjmb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yllbtlycrnsrzepgysvbnuuudulbnnha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjrndhivestxfzvpqxprkypyhikcebqe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prljvluamvwctfxpqfsjemrqskcsxoss","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rehwakyqvijnqgbfhtsaicczduwbquyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tthlpnjyybssfleihcdwosilocdpfxwd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"newjdcnrpvsqughadcarbjqdydkzrdwx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lrajuhqkehbauqaagpzhohnpvriutyne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swqgmcngdaiucnqmmtfilnbjpdqkyvpu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijydardxguiwdgjjxgqhylxdaptjoowg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxrhqnrdbsealvrzqrchibdtvpcsxzpz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eglezbqubnorhbomrlfwwgkmpgaajhqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vlrecbnatisnvovggmlleykvtszpkqyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghkysrxtefxlfvijqmjkqclkkctiqfob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbgknscolzaupjhqtzurovawhfypdcpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"djuiylxxoegbifhqrulkrvtonlcjiolk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ldgcczvoksonitjhlzeznnrjhjvxjbmg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vnabjprnykboosbtqpgwgyzqgmzacaev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjuicxoeevlujadvrupxsxfuxavoqaxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bfhuecmmxcjlpnvbrvlyvawprnebmtya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmccrunitpooogvyxaxaldtmtvsgrnkd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nppbozxywzbyowstlzbnanffccwbkolr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zsfiuxaexjleaaqcbjypaowsjhspnwhv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzocybjwwlxyoxurezretdvoaykfjvin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cuyhekdfvepqpokxsgqmhcuwuhltnwyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cclvhhcrizsaqksvnvljteocjadbgljx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikrhunipbfeizttivlxfgkiygeykttws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmurrcovisbltkoovpwxkfrgtrosaljj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wynooyzmusjvqyamyrliibuqahabrqjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ziczcnhuvqtjbmrbeskkqmmaotlbmrnt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxkdqfrqzdxjrsinvvmpupfemeaoffna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xtcspuxxebuvuytzvnruynfmxafclogc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gefbxkszgzbmxgrwguxlaobkcpbwcldv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"onvnnijxeagfxjdtsfltptqvljnyddbb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jamhmmulwyoxwzyxhqlvkmfoupqxoltj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"stwgvmlmlstbdzmqkmtupmrycmwdiaqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yuxerjumimcinklkztigdbygbhyfefzi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kkktwctpkbqtutxeaonvqnfiogpcykar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"apbzbtramohdupzgslecdsvsuohrnsiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhleojiftsashobkzpmsevvwtieopmzc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uguavsogjogvisncehkalveufrscbzlz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehgbrhnvhogayndwskamgmsgcfpkwjdg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"quqxymugiluefdzlbwhetlfkmnhmfkmp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgpnroeegczwnjznhfjhblnkcaphcilf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dafonqjymhpcqhoxsdskjimrtrrjjqll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zglnxnlqsizlesxqllrykvnlgbcwkizl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mdsdggztlgfjexpchiiifqomijlsptei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvfirvhzlyrncejuuukeuzkxdcqhvrng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oxgcspoixmaafqrociibfaeosydkglmz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kldneklmlgrvrmamulnmctjhreuhublt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wpkoehmwwdgdivmflfxngxsoakjsbubs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dolqknaeriqcvxombdrphepctkizvpxe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"neknltlaifhiyyabhmfpqooppzoxkfuz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"clxtwifpbndrkuqkgxjcgaolxwzofztl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"carjimwkunyujbpvpxnrgwqhzreuuhci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"htedrmxtrrsjgwnwxpxnqdbtmbegtxrb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uunfqvmaqzyankqwebnnilstschpodbl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mykhoaraqanzkgvdyleyjxkiefpdqksl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfadhudmfpqpxekftbktyaiyreoaorbi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hyopngtfrssavjfounzihbybkjwvettw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtimlgcrdtpogoctmxmzogajxxedrlhh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jifcxtacmsjitagpisjeeutmykwinfbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhbqrdqgoscskobfjpnbpoflleyztjhw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkboehitrfvphdbmrjrflsqmccwrnmtb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dyxcdrglvbauflogyhrpmnhsrebvcjzw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"alwjzekbuwjzsshvgsrcohmhcajnowhj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"svstgbmhqyjnznykghjtjmewhjqgtyag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uusdebhpkmmjueybwqgqmjgctritgibj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671288,"databaseName":"models_schema","ddl":"CREATE TABLE `szptihpdgatfskwdlqlvratsglyrqnga` (\n `vnywgdcnwgjzalxesopdcvxycjgffzmb` int NOT NULL,\n `ctqsbctwjvspqjmxnyqxpcdiponllvbm` int DEFAULT NULL,\n `agrynwntfwqypoxufzxalfgvytcajesm` int DEFAULT NULL,\n `wggwliqxofzfexcslvswsflntubjorcm` int DEFAULT NULL,\n `rwxgtpygrclalrnsisfxhnzijfhoxrma` int DEFAULT NULL,\n `mbaqrdqrpbkreoqoggrnymnpclxfveja` int DEFAULT NULL,\n `itxdjpmcoeonfgbbxcwoxnzvuteiptvl` int DEFAULT NULL,\n `zuiosnffzlgbkyaqzsjnfiswgmyocjsa` int DEFAULT NULL,\n `rcwtpucqqixxeccmqpeolqyetdvnbxrb` int DEFAULT NULL,\n `xbhmmtgahqpxhyzuqqudvkvtoruynpco` int DEFAULT NULL,\n `xxzwkxxumnigggeajijxhnamdwstazhk` int DEFAULT NULL,\n `ygcjynrrrvjuptzhcdtbovyiiumcjhdz` int DEFAULT NULL,\n `cykqkiiktubhwijteqxkowzhpapvjzxr` int DEFAULT NULL,\n `yvvaesysdduydrmbssajlybxcaxzzuww` int DEFAULT NULL,\n `rjlappukwzgsyxnorxqnrpglwuhirgjo` int DEFAULT NULL,\n `xfvdfuknhvwlfkpuqfkhaldyawahxyfz` int DEFAULT NULL,\n `vztdligjeoiqolccdvbsnfkwcmmyuatw` int DEFAULT NULL,\n `paxpcdoaxnvqzgsdtorfhvefhxotlmpk` int DEFAULT NULL,\n `jxkoqxmgrfabnmzuadxlizucneigyyks` int DEFAULT NULL,\n `obrkeqnzvrxanhueynblxnhdbpooillo` int DEFAULT NULL,\n `kypcivlngcozvazbaxmvnyafbnqwnemn` int DEFAULT NULL,\n `znpeztjxsdqpckpqchdxmwjwjbyvokfy` int DEFAULT NULL,\n `jgyfhxlwzqcpcycfbkhlkdwkartnflxy` int DEFAULT NULL,\n `tlgzmbihwbxehfolwmyrbtckhlnmerne` int DEFAULT NULL,\n `dfwpykczczoniwhukltkkhxbaoxxfdoa` int DEFAULT NULL,\n `qflueemzbryzycnkgggutgpdfmhkohox` int DEFAULT NULL,\n `dxfguplhsqfhcryftleedmavaqwnxvuj` int DEFAULT NULL,\n `uarwdwhwpatomhtpomcbehxjzatrzequ` int DEFAULT NULL,\n `tshpjbzcnicpgiaxfdlafczyuoixueii` int DEFAULT NULL,\n `cvciivqpepbmpiuwvhhgvqfslhnimqyf` int DEFAULT NULL,\n `eaczhxzryckpifwhlgjyfszdrainwqhf` int DEFAULT NULL,\n `gmhxympzmnwebpaafqqrqggcrajwxcwh` int DEFAULT NULL,\n `lcdeiyromtadvmozrlobhfmfmynismuu` int DEFAULT NULL,\n `hftyveldhkteutzvttvwgswtkdvspbfk` int DEFAULT NULL,\n `nldmwetuqrzrmdonhbwisabupzsoppnt` int DEFAULT NULL,\n `glsquyszdkkffwisblcbatayllinuqjg` int DEFAULT NULL,\n `nsjetfrugyuecmcscwmtzbbgdiidxwlo` int DEFAULT NULL,\n `dogvhsmdnnvpbfsauobjklkwlwkvpany` int DEFAULT NULL,\n `ztpihxzeopcqzbvuoxhaijgvtxliqnpd` int DEFAULT NULL,\n `sfkzilogamtlmntcloyjrderadttztdl` int DEFAULT NULL,\n `jvytowpectlddbdhkkkygzroviwbrdst` int DEFAULT NULL,\n `ynkypztbjqfyyltssxxvzfhgadlroqej` int DEFAULT NULL,\n `wfamjedsofbkdsmpxiznlerhybbgdrlx` int DEFAULT NULL,\n `cvvdjcaegilgnjyzugzyeszuoazfwqnk` int DEFAULT NULL,\n `tcppppssglqldtyfuuamcgquojuvydks` int DEFAULT NULL,\n `dkgsfpbqonpxktalytewlfugblomxcon` int DEFAULT NULL,\n `uzkfutoylumhjztbhufnzyiacerhvnvu` int DEFAULT NULL,\n `ekuujqsbvedhiqtnfqzavxefgbcazsrn` int DEFAULT NULL,\n `zppstwwqctqzebjjiqlutltlnaprarez` int DEFAULT NULL,\n `utertmlfniglfbakcinbivueuzknklxs` int DEFAULT NULL,\n `tlhpwfsgcprregbqqpynyouepfyekolm` int DEFAULT NULL,\n `llwnzgmfhmntscwrprzljxqflfhjelfc` int DEFAULT NULL,\n `hutoahlqaiboddijiotmaciezniuzoki` int DEFAULT NULL,\n `pceahsyqqlewryzwfmjfvojeohpukufu` int DEFAULT NULL,\n `claargdjuunjtxbwikgzyvcbpvljokcc` int DEFAULT NULL,\n `boitwmjmrjdabapvemvaforvgsgatlnk` int DEFAULT NULL,\n `skcroxmeyufwjdudiccrneuzslmpxlft` int DEFAULT NULL,\n `xyeqkvokzrvedniwxbovckelqozsqtlk` int DEFAULT NULL,\n `mnmkisxdxpjrjucbumvgzvjcdghzesfs` int DEFAULT NULL,\n `jgbknxdeawclnbrqjvhpmnplthpybbus` int DEFAULT NULL,\n `akvlpwbekxrxwuxixwpqprpkwigngoks` int DEFAULT NULL,\n `orscjathlumywcxlskjhhulbiajphnvi` int DEFAULT NULL,\n `fqvjrbsqghkiygfokurhesygomotlklu` int DEFAULT NULL,\n `szipudkpbpkvxdxgefklqtjjlzxsjyht` int DEFAULT NULL,\n `xyvkioeomkydznixyucalejiwhtyyomw` int DEFAULT NULL,\n `rhtvxeqblmsfisiejdvybwmxuatqfqvg` int DEFAULT NULL,\n `yirmojayuflzcpmgdacrbrxemllehncp` int DEFAULT NULL,\n `rpktgduyylkccezojcplnapyzqfxwhbp` int DEFAULT NULL,\n `jbqjpnfznrnymacjkhtaiybzcwucwaqv` int DEFAULT NULL,\n `ubtdndzmqtxxmqvpgdrbdiihhtadgfbc` int DEFAULT NULL,\n `uwnfmyiqtzmtkyizgutkbpillkjwobej` int DEFAULT NULL,\n `qvkalimzvlsomzhminnyrilqsuooflpq` int DEFAULT NULL,\n `lbxreskfqnxtxrsvrvjcvkxpdozxwxqo` int DEFAULT NULL,\n `cxbfwaotcngveroahzbtbedpollxtrsy` int DEFAULT NULL,\n `hcbwxymmtjlpkxplxftxexfvwhstwrdu` int DEFAULT NULL,\n `dvlscltkehtgymgpvwtdrzblkiryhjip` int DEFAULT NULL,\n `ldtsncvpxglajtakhqeykqrvieatntie` int DEFAULT NULL,\n `lbbhqnqdxcvbzqmpnytyfkqzbyhtgucj` int DEFAULT NULL,\n `mrgrlhfzckawaxvuhwrsluwrwgzepfdp` int DEFAULT NULL,\n `qyryzjzkjsgshskawuyednwissimepcz` int DEFAULT NULL,\n `nbctvsbdlrnlnzbezgrpxvwtvpewlquw` int DEFAULT NULL,\n `nypvrmfbksqiduzfnspuyxacoorzzdia` int DEFAULT NULL,\n `jxrhkcomjyizcdwpsbnscbfcafrkboys` int DEFAULT NULL,\n `akfweskogssenujwfotaipwhhmpcjuda` int DEFAULT NULL,\n `bozvotlaxiwcvfsjgodofzhjtxspprki` int DEFAULT NULL,\n `zbefkipeiztpwvzpmpwkwcjbfyjirqsd` int DEFAULT NULL,\n `bggmvgdpsoshcdkcumuoklmeazxgnoxq` int DEFAULT NULL,\n `eoykipuyolxildggchayqdphmgsygarv` int DEFAULT NULL,\n `pjeuwieeyqvlloofdcrzjcczcznllpnf` int DEFAULT NULL,\n `eqkbxtcjyftsctucnlecxniobichapkm` int DEFAULT NULL,\n `taexulnrrwqvkmnsitpcanwvifnokmoe` int DEFAULT NULL,\n `qsvikoulwdmbibbxvyeevbjhshcyghei` int DEFAULT NULL,\n `agfhmuveaezggjgeizuiycqozelimekq` int DEFAULT NULL,\n `huaojdvrchmvzibuugjvtypnhygybine` int DEFAULT NULL,\n `frcdirxtkysmzyatmcflusybtaheufse` int DEFAULT NULL,\n `iahzijmigvesaerqbfpolbxucrhdyvyw` int DEFAULT NULL,\n `omnhufvuutabyhkhpawiavsdqkjjzdby` int DEFAULT NULL,\n `xzhdofjqhmdnpsitoogxgwfcszoqzygq` int DEFAULT NULL,\n `gzngzozmtfdtpmdbdzseqqcpfgfivegu` int DEFAULT NULL,\n `touwrqkjhgnkicustkpfchrojceovufp` int DEFAULT NULL,\n PRIMARY KEY (`vnywgdcnwgjzalxesopdcvxycjgffzmb`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"szptihpdgatfskwdlqlvratsglyrqnga\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["vnywgdcnwgjzalxesopdcvxycjgffzmb"],"columns":[{"name":"vnywgdcnwgjzalxesopdcvxycjgffzmb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"ctqsbctwjvspqjmxnyqxpcdiponllvbm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agrynwntfwqypoxufzxalfgvytcajesm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wggwliqxofzfexcslvswsflntubjorcm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rwxgtpygrclalrnsisfxhnzijfhoxrma","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbaqrdqrpbkreoqoggrnymnpclxfveja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itxdjpmcoeonfgbbxcwoxnzvuteiptvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zuiosnffzlgbkyaqzsjnfiswgmyocjsa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcwtpucqqixxeccmqpeolqyetdvnbxrb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbhmmtgahqpxhyzuqqudvkvtoruynpco","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxzwkxxumnigggeajijxhnamdwstazhk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ygcjynrrrvjuptzhcdtbovyiiumcjhdz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cykqkiiktubhwijteqxkowzhpapvjzxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yvvaesysdduydrmbssajlybxcaxzzuww","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjlappukwzgsyxnorxqnrpglwuhirgjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xfvdfuknhvwlfkpuqfkhaldyawahxyfz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vztdligjeoiqolccdvbsnfkwcmmyuatw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"paxpcdoaxnvqzgsdtorfhvefhxotlmpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jxkoqxmgrfabnmzuadxlizucneigyyks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obrkeqnzvrxanhueynblxnhdbpooillo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kypcivlngcozvazbaxmvnyafbnqwnemn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znpeztjxsdqpckpqchdxmwjwjbyvokfy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgyfhxlwzqcpcycfbkhlkdwkartnflxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlgzmbihwbxehfolwmyrbtckhlnmerne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dfwpykczczoniwhukltkkhxbaoxxfdoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qflueemzbryzycnkgggutgpdfmhkohox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxfguplhsqfhcryftleedmavaqwnxvuj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uarwdwhwpatomhtpomcbehxjzatrzequ","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tshpjbzcnicpgiaxfdlafczyuoixueii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvciivqpepbmpiuwvhhgvqfslhnimqyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eaczhxzryckpifwhlgjyfszdrainwqhf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmhxympzmnwebpaafqqrqggcrajwxcwh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lcdeiyromtadvmozrlobhfmfmynismuu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hftyveldhkteutzvttvwgswtkdvspbfk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nldmwetuqrzrmdonhbwisabupzsoppnt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"glsquyszdkkffwisblcbatayllinuqjg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nsjetfrugyuecmcscwmtzbbgdiidxwlo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dogvhsmdnnvpbfsauobjklkwlwkvpany","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ztpihxzeopcqzbvuoxhaijgvtxliqnpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfkzilogamtlmntcloyjrderadttztdl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvytowpectlddbdhkkkygzroviwbrdst","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynkypztbjqfyyltssxxvzfhgadlroqej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfamjedsofbkdsmpxiznlerhybbgdrlx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvvdjcaegilgnjyzugzyeszuoazfwqnk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tcppppssglqldtyfuuamcgquojuvydks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkgsfpbqonpxktalytewlfugblomxcon","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzkfutoylumhjztbhufnzyiacerhvnvu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekuujqsbvedhiqtnfqzavxefgbcazsrn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zppstwwqctqzebjjiqlutltlnaprarez","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utertmlfniglfbakcinbivueuzknklxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlhpwfsgcprregbqqpynyouepfyekolm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llwnzgmfhmntscwrprzljxqflfhjelfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hutoahlqaiboddijiotmaciezniuzoki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pceahsyqqlewryzwfmjfvojeohpukufu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"claargdjuunjtxbwikgzyvcbpvljokcc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"boitwmjmrjdabapvemvaforvgsgatlnk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skcroxmeyufwjdudiccrneuzslmpxlft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyeqkvokzrvedniwxbovckelqozsqtlk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnmkisxdxpjrjucbumvgzvjcdghzesfs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgbknxdeawclnbrqjvhpmnplthpybbus","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akvlpwbekxrxwuxixwpqprpkwigngoks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orscjathlumywcxlskjhhulbiajphnvi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqvjrbsqghkiygfokurhesygomotlklu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"szipudkpbpkvxdxgefklqtjjlzxsjyht","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyvkioeomkydznixyucalejiwhtyyomw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhtvxeqblmsfisiejdvybwmxuatqfqvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yirmojayuflzcpmgdacrbrxemllehncp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpktgduyylkccezojcplnapyzqfxwhbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jbqjpnfznrnymacjkhtaiybzcwucwaqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubtdndzmqtxxmqvpgdrbdiihhtadgfbc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uwnfmyiqtzmtkyizgutkbpillkjwobej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvkalimzvlsomzhminnyrilqsuooflpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lbxreskfqnxtxrsvrvjcvkxpdozxwxqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cxbfwaotcngveroahzbtbedpollxtrsy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hcbwxymmtjlpkxplxftxexfvwhstwrdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvlscltkehtgymgpvwtdrzblkiryhjip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ldtsncvpxglajtakhqeykqrvieatntie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lbbhqnqdxcvbzqmpnytyfkqzbyhtgucj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrgrlhfzckawaxvuhwrsluwrwgzepfdp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qyryzjzkjsgshskawuyednwissimepcz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbctvsbdlrnlnzbezgrpxvwtvpewlquw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nypvrmfbksqiduzfnspuyxacoorzzdia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jxrhkcomjyizcdwpsbnscbfcafrkboys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akfweskogssenujwfotaipwhhmpcjuda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bozvotlaxiwcvfsjgodofzhjtxspprki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbefkipeiztpwvzpmpwkwcjbfyjirqsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bggmvgdpsoshcdkcumuoklmeazxgnoxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eoykipuyolxildggchayqdphmgsygarv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjeuwieeyqvlloofdcrzjcczcznllpnf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqkbxtcjyftsctucnlecxniobichapkm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"taexulnrrwqvkmnsitpcanwvifnokmoe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qsvikoulwdmbibbxvyeevbjhshcyghei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agfhmuveaezggjgeizuiycqozelimekq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"huaojdvrchmvzibuugjvtypnhygybine","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"frcdirxtkysmzyatmcflusybtaheufse","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iahzijmigvesaerqbfpolbxucrhdyvyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omnhufvuutabyhkhpawiavsdqkjjzdby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xzhdofjqhmdnpsitoogxgwfcszoqzygq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzngzozmtfdtpmdbdzseqqcpfgfivegu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"touwrqkjhgnkicustkpfchrojceovufp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671320,"databaseName":"models_schema","ddl":"CREATE TABLE `tcrradlvorgzjcciygegyfvojodcfdhl` (\n `urambtgjgdcahfjjvowsvgwrwinrshxb` int NOT NULL,\n `fzsniozazdwmmnwtflffiupounbqdjnu` int DEFAULT NULL,\n `wgswzxduxcxxfibirhthoedklalbvgdy` int DEFAULT NULL,\n `oczgubostlndwtpuohrpvnfqknhlbhon` int DEFAULT NULL,\n `uhiisaoyxllwooqogpqbvyqtxlhzsjea` int DEFAULT NULL,\n `osikjddrmbsuyjserzpsbyluopcbkzlp` int DEFAULT NULL,\n `qakupjbftjzuphfalaerjjgemaqgxzly` int DEFAULT NULL,\n `wzoevrprrnutxtikqiefrerydpijnwbn` int DEFAULT NULL,\n `kwgenzcylmzzykylgpjauyzyihgmgmay` int DEFAULT NULL,\n `fysdqtrnxdwawrfailmfbjgcdndargcs` int DEFAULT NULL,\n `jpbzhabjjcyfftrckkviugewhasxknhm` int DEFAULT NULL,\n `spfqbvzjcnyqwvikcwydoxxqfjmjahxg` int DEFAULT NULL,\n `dlhxlnpjueuhvtwmjwkwdkvtxmhxgfwe` int DEFAULT NULL,\n `prywkdddumcmfsdtijfdzjsbvmllecnb` int DEFAULT NULL,\n `kosclooiximyyuiikjcueojjxkzyftha` int DEFAULT NULL,\n `opxkndadjsdzrfdvzzpakesrlegiccyt` int DEFAULT NULL,\n `tywjvzgbljwobenszanbvecznsrtjasn` int DEFAULT NULL,\n `rtzorswcilxerqamhsoyjhtfzvutjfap` int DEFAULT NULL,\n `pjcrevjhrknnxldnlnzymfocldaegvwi` int DEFAULT NULL,\n `ddzeonjaaavwmywndywcxawewomkzyyy` int DEFAULT NULL,\n `jmnmonlltgpwhtuzmlucecbskmhotxay` int DEFAULT NULL,\n `tpzqvsrnbljirmcbhpmuwrbwbnlczwga` int DEFAULT NULL,\n `nrkqddgqidlhwpgrnejrwdthuxpnqnst` int DEFAULT NULL,\n `qgluxjhlfqiobktnwctazarvpwzggwrs` int DEFAULT NULL,\n `upvkjurjcvffklmxxykylmvvjscrpfsd` int DEFAULT NULL,\n `ruijznarjeuortvcjmvrzijexvbkbiks` int DEFAULT NULL,\n `zzrdxsyrdkbyrgewryjthfnzptmpmvzr` int DEFAULT NULL,\n `wefwicuzggtjijpddrkwfebiwtqatoyb` int DEFAULT NULL,\n `folfobqirankyihgicbpayknzbxzpmet` int DEFAULT NULL,\n `yzludzfenlgoeuopjqhnjlufhskwmmks` int DEFAULT NULL,\n `taewkyhavbhxiejezphlixtrlgnogppv` int DEFAULT NULL,\n `uzjdfbxpomdgzxtjiigcyiyyubwwtnfb` int DEFAULT NULL,\n `jhakcmsbuxeqqbjlzcezppkcqrkwjwzl` int DEFAULT NULL,\n `ykesojosllycsybhgeannyjihicgrpdy` int DEFAULT NULL,\n `ysitsdexeamqeexyhkaxmktxognotkcb` int DEFAULT NULL,\n `dwurmhowzytpxuzbqwiwiouqfxpulgcv` int DEFAULT NULL,\n `xuerihapfwnigaipcmbkeasskqhyteox` int DEFAULT NULL,\n `iehaxencrfctenpbhkpnjwfqkuisukkc` int DEFAULT NULL,\n `pucdtmenindgmcavowuiegvgkevwfrki` int DEFAULT NULL,\n `sgndgcmiycrqrszxmskkcbcfnxmkzcpy` int DEFAULT NULL,\n `xmvnnliygljitjtahivrcljkprpynpnm` int DEFAULT NULL,\n `yrrmijgejczteqwywerwtfnqoksbxqqc` int DEFAULT NULL,\n `iagtqeifbkusrcyybvrwimwiyzvdvfqo` int DEFAULT NULL,\n `lzgkvxuixrnseljthstndibvighklqlz` int DEFAULT NULL,\n `qymckdaepejbwxmxbxfmityhsgdkjibv` int DEFAULT NULL,\n `jzpuoaywobfbyxgxifrfneilfcdsqwnw` int DEFAULT NULL,\n `yxnogztfhnkbqdbwllizzddeglxujpeo` int DEFAULT NULL,\n `gzqlyclclsyjdsnwmcphaglzkiqskawi` int DEFAULT NULL,\n `fqlzpzigkjqzoakvuajbsedcbjzkezfa` int DEFAULT NULL,\n `ottqovmdpwkioavfbrrdfhyaigcpuisp` int DEFAULT NULL,\n `lqrgtumdbvfstxelpvzhnekubbbdsjua` int DEFAULT NULL,\n `uclbprzmhenzudbwctnjjchdqmdmsuon` int DEFAULT NULL,\n `tqmcaniidahkiqivpiihgayasudxxyqr` int DEFAULT NULL,\n `sgheeccszsxalkdrqfnquxjtyxcoemaj` int DEFAULT NULL,\n `lqzyxmttaaixzuzfhhpuctixcbjhyugi` int DEFAULT NULL,\n `cxmcddfumxgbvfserevqxdjvejthozeo` int DEFAULT NULL,\n `bczuayxcgscqfoltfilwabeijsngowwe` int DEFAULT NULL,\n `aqrbqbjxitvohnhdimqpynkqvywbpjvs` int DEFAULT NULL,\n `zqwbhzoebpuqtbmwgkvsbbcrrkhlnfox` int DEFAULT NULL,\n `awvicvajtzotdlzyshychxglfyafzmfp` int DEFAULT NULL,\n `wfbklpgzxsnptmzqdnbssazzlldxeteb` int DEFAULT NULL,\n `pspoyjnjtmsqzpyawobzddifmfvuqafn` int DEFAULT NULL,\n `jlwxwymonazqyjrmiqskjtucxyurrhou` int DEFAULT NULL,\n `dziyupmfgitfnbfrfbubfsopzluhxxjt` int DEFAULT NULL,\n `meiknqxbrbuqeahtyhvmrnrubqqedcjp` int DEFAULT NULL,\n `xhybnjxahukmakmkvlfgvcquectdpwpn` int DEFAULT NULL,\n `pubpqsdqlfedrgymcgaukmikxdykgmcy` int DEFAULT NULL,\n `vgnabzopyiwgdtrohzgeofxvlnjixzni` int DEFAULT NULL,\n `gbnqaqkzioikeknhfcczhxpiwaxsajtm` int DEFAULT NULL,\n `bvvdfeymobnuoutlzktwdozxpotxbply` int DEFAULT NULL,\n `xkgzgkuwozatkqxzofqjujfmwjfpckyc` int DEFAULT NULL,\n `ezawspmtbagrargowgefiqjkuqtcroyv` int DEFAULT NULL,\n `ysaffkkixianifgdvihvfcajxhseqzww` int DEFAULT NULL,\n `plmnteftzzzzjrbmwjqljfvvggsdeado` int DEFAULT NULL,\n `wqfkccfbemgeodgvzqbczaoruojbcwwd` int DEFAULT NULL,\n `taleshpcnghgiemyjmmhwdxkcsbaxnpm` int DEFAULT NULL,\n `wuwfvumlzrmtkzpqwgelsalcqktssvbu` int DEFAULT NULL,\n `mtgtlepklpkoslsesgxkdcfsbbpvkemw` int DEFAULT NULL,\n `lsakybhabeuljdkyabyctuuciicqxgfo` int DEFAULT NULL,\n `fssfniwhdlxibqdvridzbdxogevpwfhv` int DEFAULT NULL,\n `bylnbdgcdlpxnsadnhjmuknkmhhyxycv` int DEFAULT NULL,\n `rzyekjcpmwnmebomaxkcqcvmdtczfphx` int DEFAULT NULL,\n `skomlgwakvlhcpkblwwqtthujqzivtfu` int DEFAULT NULL,\n `bgnlsayzlwmgdecedmfefpybufpotqqe` int DEFAULT NULL,\n `sikxydncajtdavttdvglyroggttickee` int DEFAULT NULL,\n `sdnurfphtdrgtgotzgpcbaudydmsngsw` int DEFAULT NULL,\n `ykaaxqpbhwgvimwacapscyxhmxjnntvv` int DEFAULT NULL,\n `rbxtyiwwzomrwqinqhccyepxnrprpapn` int DEFAULT NULL,\n `xnuajzzbkfcjoqzubtvfltqdffaqrmqe` int DEFAULT NULL,\n `zkynelgipsixjtpimccvwlrsoqrsvfxc` int DEFAULT NULL,\n `dynpdbybdiuhtealrptdihdkgoxievwv` int DEFAULT NULL,\n `tpnfxbzwvrcbbsiotziknlgqpcwderku` int DEFAULT NULL,\n `znhawteflcpkybuaozoyebwtnqmagjuu` int DEFAULT NULL,\n `howuimnjosndqihmdzgynpgtoijhfexs` int DEFAULT NULL,\n `seaaxxkxgpeeqlgbtnqoliabcklbsugj` int DEFAULT NULL,\n `etfaqiyfmcgvffktnygdvhtjehhaudpj` int DEFAULT NULL,\n `uxuidfhsvfektudicrlxupcstmhmjcjo` int DEFAULT NULL,\n `onrykpvlgqrvinyexjmncpqxpjytuvns` int DEFAULT NULL,\n `nmtdtlfswhazikjyjgnhsmgxaitgzuxk` int DEFAULT NULL,\n `avsqxiqvaffnwpwfxjsspzurwdmdmzzy` int DEFAULT NULL,\n PRIMARY KEY (`urambtgjgdcahfjjvowsvgwrwinrshxb`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"tcrradlvorgzjcciygegyfvojodcfdhl\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["urambtgjgdcahfjjvowsvgwrwinrshxb"],"columns":[{"name":"urambtgjgdcahfjjvowsvgwrwinrshxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"fzsniozazdwmmnwtflffiupounbqdjnu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wgswzxduxcxxfibirhthoedklalbvgdy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oczgubostlndwtpuohrpvnfqknhlbhon","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhiisaoyxllwooqogpqbvyqtxlhzsjea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"osikjddrmbsuyjserzpsbyluopcbkzlp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qakupjbftjzuphfalaerjjgemaqgxzly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzoevrprrnutxtikqiefrerydpijnwbn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwgenzcylmzzykylgpjauyzyihgmgmay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fysdqtrnxdwawrfailmfbjgcdndargcs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jpbzhabjjcyfftrckkviugewhasxknhm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"spfqbvzjcnyqwvikcwydoxxqfjmjahxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dlhxlnpjueuhvtwmjwkwdkvtxmhxgfwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prywkdddumcmfsdtijfdzjsbvmllecnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kosclooiximyyuiikjcueojjxkzyftha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opxkndadjsdzrfdvzzpakesrlegiccyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tywjvzgbljwobenszanbvecznsrtjasn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rtzorswcilxerqamhsoyjhtfzvutjfap","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjcrevjhrknnxldnlnzymfocldaegvwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ddzeonjaaavwmywndywcxawewomkzyyy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmnmonlltgpwhtuzmlucecbskmhotxay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpzqvsrnbljirmcbhpmuwrbwbnlczwga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nrkqddgqidlhwpgrnejrwdthuxpnqnst","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qgluxjhlfqiobktnwctazarvpwzggwrs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upvkjurjcvffklmxxykylmvvjscrpfsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ruijznarjeuortvcjmvrzijexvbkbiks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzrdxsyrdkbyrgewryjthfnzptmpmvzr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wefwicuzggtjijpddrkwfebiwtqatoyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"folfobqirankyihgicbpayknzbxzpmet","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzludzfenlgoeuopjqhnjlufhskwmmks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"taewkyhavbhxiejezphlixtrlgnogppv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzjdfbxpomdgzxtjiigcyiyyubwwtnfb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jhakcmsbuxeqqbjlzcezppkcqrkwjwzl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykesojosllycsybhgeannyjihicgrpdy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ysitsdexeamqeexyhkaxmktxognotkcb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwurmhowzytpxuzbqwiwiouqfxpulgcv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xuerihapfwnigaipcmbkeasskqhyteox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iehaxencrfctenpbhkpnjwfqkuisukkc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pucdtmenindgmcavowuiegvgkevwfrki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sgndgcmiycrqrszxmskkcbcfnxmkzcpy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xmvnnliygljitjtahivrcljkprpynpnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yrrmijgejczteqwywerwtfnqoksbxqqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iagtqeifbkusrcyybvrwimwiyzvdvfqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lzgkvxuixrnseljthstndibvighklqlz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qymckdaepejbwxmxbxfmityhsgdkjibv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jzpuoaywobfbyxgxifrfneilfcdsqwnw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxnogztfhnkbqdbwllizzddeglxujpeo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzqlyclclsyjdsnwmcphaglzkiqskawi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqlzpzigkjqzoakvuajbsedcbjzkezfa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ottqovmdpwkioavfbrrdfhyaigcpuisp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqrgtumdbvfstxelpvzhnekubbbdsjua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uclbprzmhenzudbwctnjjchdqmdmsuon","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqmcaniidahkiqivpiihgayasudxxyqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sgheeccszsxalkdrqfnquxjtyxcoemaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqzyxmttaaixzuzfhhpuctixcbjhyugi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cxmcddfumxgbvfserevqxdjvejthozeo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bczuayxcgscqfoltfilwabeijsngowwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqrbqbjxitvohnhdimqpynkqvywbpjvs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqwbhzoebpuqtbmwgkvsbbcrrkhlnfox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awvicvajtzotdlzyshychxglfyafzmfp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfbklpgzxsnptmzqdnbssazzlldxeteb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pspoyjnjtmsqzpyawobzddifmfvuqafn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlwxwymonazqyjrmiqskjtucxyurrhou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dziyupmfgitfnbfrfbubfsopzluhxxjt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"meiknqxbrbuqeahtyhvmrnrubqqedcjp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xhybnjxahukmakmkvlfgvcquectdpwpn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pubpqsdqlfedrgymcgaukmikxdykgmcy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgnabzopyiwgdtrohzgeofxvlnjixzni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gbnqaqkzioikeknhfcczhxpiwaxsajtm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvvdfeymobnuoutlzktwdozxpotxbply","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkgzgkuwozatkqxzofqjujfmwjfpckyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezawspmtbagrargowgefiqjkuqtcroyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ysaffkkixianifgdvihvfcajxhseqzww","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"plmnteftzzzzjrbmwjqljfvvggsdeado","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqfkccfbemgeodgvzqbczaoruojbcwwd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"taleshpcnghgiemyjmmhwdxkcsbaxnpm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wuwfvumlzrmtkzpqwgelsalcqktssvbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtgtlepklpkoslsesgxkdcfsbbpvkemw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lsakybhabeuljdkyabyctuuciicqxgfo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fssfniwhdlxibqdvridzbdxogevpwfhv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bylnbdgcdlpxnsadnhjmuknkmhhyxycv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzyekjcpmwnmebomaxkcqcvmdtczfphx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skomlgwakvlhcpkblwwqtthujqzivtfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bgnlsayzlwmgdecedmfefpybufpotqqe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sikxydncajtdavttdvglyroggttickee","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdnurfphtdrgtgotzgpcbaudydmsngsw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykaaxqpbhwgvimwacapscyxhmxjnntvv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbxtyiwwzomrwqinqhccyepxnrprpapn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnuajzzbkfcjoqzubtvfltqdffaqrmqe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zkynelgipsixjtpimccvwlrsoqrsvfxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dynpdbybdiuhtealrptdihdkgoxievwv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpnfxbzwvrcbbsiotziknlgqpcwderku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znhawteflcpkybuaozoyebwtnqmagjuu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"howuimnjosndqihmdzgynpgtoijhfexs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"seaaxxkxgpeeqlgbtnqoliabcklbsugj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"etfaqiyfmcgvffktnygdvhtjehhaudpj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxuidfhsvfektudicrlxupcstmhmjcjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"onrykpvlgqrvinyexjmncpqxpjytuvns","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmtdtlfswhazikjyjgnhsmgxaitgzuxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avsqxiqvaffnwpwfxjsspzurwdmdmzzy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671352,"databaseName":"models_schema","ddl":"CREATE TABLE `tfoaqprarfoabbffxqiypuqnjuzesvmg` (\n `itefojdnavbgbuqpkstlsbwkrposdmwq` int NOT NULL,\n `garzrcvmospocqitmebwjukupcwkkzjp` int DEFAULT NULL,\n `vaxhadgltqvuxnqsyjwbrkwkhmtzhcah` int DEFAULT NULL,\n `igcdeepmsprrngvshawiusblsbyimlbm` int DEFAULT NULL,\n `argnupalshsodhnxmumuhmusrszoxvlh` int DEFAULT NULL,\n `betjmxxktliqftnipmqxtsgjxpbvssab` int DEFAULT NULL,\n `dwsswrvbshqdlvojazjktetsvqllpqhe` int DEFAULT NULL,\n `rxhujgrjennjiydqbbcmrqyebpbuiwbr` int DEFAULT NULL,\n `hwgfnjbxhukjpjgkglzoocryvkbxhkte` int DEFAULT NULL,\n `lgjevubsebxjatzuuggtclgvnntlzswh` int DEFAULT NULL,\n `wyzordnzvslqibqywnpvbctypcgwoveo` int DEFAULT NULL,\n `vybvnerrmgnfbajruupowykvwqwrufbt` int DEFAULT NULL,\n `qwvnuerfyiiiuskvormckmrvjauqhupg` int DEFAULT NULL,\n `jykgyfhrhdbrwabdxtbaekpdmrrztyhj` int DEFAULT NULL,\n `zblrvedmceniszjmhfrohmjeyifqchae` int DEFAULT NULL,\n `ublhfvlispnratgvpvfrugntizheefze` int DEFAULT NULL,\n `kbcyqwvqfswjpthxkywjpwwkpickofsm` int DEFAULT NULL,\n `rwcrabzaejecylphjfaiyatdibufxqrr` int DEFAULT NULL,\n `sjphdbhsbnxnsgdanabhhuisxwsmqlfv` int DEFAULT NULL,\n `uhyzwqjrlxaydgkhdhcxllfssquqcxbq` int DEFAULT NULL,\n `drpunsdvjhilqoeyzpkcpnbrwkrgvcyo` int DEFAULT NULL,\n `egqlveyrubndinrjosadpwdmlbbpqycy` int DEFAULT NULL,\n `ttecplpdgvmsmacbfcpzzaiupvprjtef` int DEFAULT NULL,\n `beihgqzjleorgjtmfjplxoelpuxzzxfa` int DEFAULT NULL,\n `fcqeduzkruvkmjesazdvgwemuoffaiyv` int DEFAULT NULL,\n `nfxoynjnimkwazheykjviguinntubstx` int DEFAULT NULL,\n `bhjhbmroinrswhvjrsplgtizxznbsrds` int DEFAULT NULL,\n `pdmmcthyaunwrohdghumtnxzgdrddsna` int DEFAULT NULL,\n `penhyemmvbjhpjnbmgczpqxgzuoomupk` int DEFAULT NULL,\n `tbbanfiywsxekrtqzbzijuoxuvnmnaim` int DEFAULT NULL,\n `dxdrnuhbsgmgttvluyepdmrdmqyqtrik` int DEFAULT NULL,\n `jlrofifzzcoqsrcdogoanhmuovcivrkf` int DEFAULT NULL,\n `xvcdottcbmebybjypzfqnshoamiwatvc` int DEFAULT NULL,\n `tnandgwndduhwyxfmouqkowjzedtssxw` int DEFAULT NULL,\n `xvdgjesdboytgdnakgdaprtwnzqpqpwa` int DEFAULT NULL,\n `occkpqimeawwdpoxwfephqpzpxrghxll` int DEFAULT NULL,\n `mcvhkkovrzifoweezuopmkccdvapyehs` int DEFAULT NULL,\n `fvrfjuhazohnsmnzjihwwvtlndqargys` int DEFAULT NULL,\n `koviwkxyglozkssqvufbbfokqwgejmyd` int DEFAULT NULL,\n `zewiygkjmfdbkgzqlvhtrzosunakdygd` int DEFAULT NULL,\n `kygsrqsdmpqpspyyrcelifppeiibtesk` int DEFAULT NULL,\n `nzshcbcadroogaxpoudpnndewkszupcb` int DEFAULT NULL,\n `wtvoscproufuasgptmjnbvxgqffkkozo` int DEFAULT NULL,\n `ucltifxlfkbwvmgxmnbqqguixyoyxeuc` int DEFAULT NULL,\n `vxmdkveppvdtiwoweswininmpujvzpob` int DEFAULT NULL,\n `sktqvcuzwyzpcysmukxsuloukdjlxkzm` int DEFAULT NULL,\n `opoabzuuzqpxcovdynlhksxnryapcijo` int DEFAULT NULL,\n `qobyysclucmsqmkpzcjhkrcredzcupwm` int DEFAULT NULL,\n `hmqpzqrydmphbphgoxyojezfgknafbej` int DEFAULT NULL,\n `tuvwevorubckdlkkjohazyscqwxnovvi` int DEFAULT NULL,\n `rzryhxqjydhxfxiucaqdrtcmproaxwza` int DEFAULT NULL,\n `pgvofrqyaahxaiqlvlyidfdnfovxkuyi` int DEFAULT NULL,\n `zygoorizgkzhftbsdrnbpvxgwzlonkpy` int DEFAULT NULL,\n `gtgjgbmnpaigntrejjmjpxrbuigkgokz` int DEFAULT NULL,\n `xjbbstcudsfquwuptpgcierpuqotjxub` int DEFAULT NULL,\n `dleextvxyaxymbkikqrvvcwchxyleaay` int DEFAULT NULL,\n `ayaoplomvfvwnffduwfhjeevlbsbhenq` int DEFAULT NULL,\n `vwujuqmcdfgvtprvwlgvxailizdkpynj` int DEFAULT NULL,\n `bdnwlbmfzfspytjfphjphdphivsvsoyg` int DEFAULT NULL,\n `oxdludidughyclpgtwjsufbbdlcbjaow` int DEFAULT NULL,\n `vwddjtfdwejeqaegkvjzfumsrmrwfyas` int DEFAULT NULL,\n `alcwwehnbmqexvihwvanalamuqebrecs` int DEFAULT NULL,\n `txwdhtdhfukaeuwelctdnpisarzcsrpw` int DEFAULT NULL,\n `ojrgytkqiqrpygagdctfaphyytptirqj` int DEFAULT NULL,\n `aocwqerlzheqjhlonpfqidohsoujrxos` int DEFAULT NULL,\n `eytkuboazvfdrizbceqwbofutfntjazh` int DEFAULT NULL,\n `ytjttxjwcocvjvgoigbeqipvyjpllawx` int DEFAULT NULL,\n `znuwwxprfgltqgvawiqmdftwyprdokim` int DEFAULT NULL,\n `wfdooxuaxxnzdmpnpdokpgrecjvbbxct` int DEFAULT NULL,\n `snhjshzuilepqwkhvcdixuuhbcamdrcp` int DEFAULT NULL,\n `cbhuznyuxgzgffujurgwzvaqevmnxhun` int DEFAULT NULL,\n `ibhazqadbdkujfzvbailsnkgfioiwqll` int DEFAULT NULL,\n `tgtvobcpzofjtfweqdozcelacvaqqzgs` int DEFAULT NULL,\n `lpljxidxwzegheolnovprqyndwyqlykw` int DEFAULT NULL,\n `sfqnczjhjkyrznqxxhdngxkftuidwfke` int DEFAULT NULL,\n `pldtbwgruslxwihuzrfpocjsyqgudjgx` int DEFAULT NULL,\n `hxpxrhaeokzckktkmphkbisyqqhpdydx` int DEFAULT NULL,\n `xkyybfvgddqzalhgcshkbecdxkuphoiz` int DEFAULT NULL,\n `rsjkozhgmpjvcmucmgdxwsmfrylbntcc` int DEFAULT NULL,\n `firmtgypkxmpgntkncoulqmaxxudjzvv` int DEFAULT NULL,\n `csxxtgbskuiljeftsafrkzxuydhgqctu` int DEFAULT NULL,\n `fcfyjybpwtjooxxjepqehaltvufgdxvr` int DEFAULT NULL,\n `jklizouygaywkrmagllucdqnfpmvtnoi` int DEFAULT NULL,\n `zbfijygmivuayaektpfrnjvabugeenbl` int DEFAULT NULL,\n `bvarcbwrbzwxekokeltlupgizpvjurai` int DEFAULT NULL,\n `wyipwfnmesdmlpapnvzdsokrwrkaktxd` int DEFAULT NULL,\n `rvwdcxscdkkwavfqxxpoofgqbqmbyhnp` int DEFAULT NULL,\n `asscsxadypecztbtoypygevzauiwechp` int DEFAULT NULL,\n `bqtqpoiaupidfpxiqwkwvxmlvmuvhcgu` int DEFAULT NULL,\n `uwcodhawytibyunxnplwtdiytmygakxc` int DEFAULT NULL,\n `issqyrbjtqokdqnvrynqgbwnnubwnspd` int DEFAULT NULL,\n `bvarfonzwcaujfodtspzbzkqbrewfrdw` int DEFAULT NULL,\n `flsejhqunkpfpxookvdrhwmkkfmafsbw` int DEFAULT NULL,\n `oghgjvnaldikiowjsoohilyfoxotmeld` int DEFAULT NULL,\n `wiryfszewrevlafmyzcneuobxavbcmbe` int DEFAULT NULL,\n `poxffzcfozbtzbjpguyyvvibvvqcnuwl` int DEFAULT NULL,\n `sqehpvwglvwusdnpnznbmbamccfxpxpn` int DEFAULT NULL,\n `yozekaslmswgaczcjiwmshckzxzrsgjw` int DEFAULT NULL,\n `smaqfacqfhwlwbiznblgvbozkycnqnpo` int DEFAULT NULL,\n `vsligyiaawebmjadxrqvvpmyaaewsuxj` int DEFAULT NULL,\n PRIMARY KEY (`itefojdnavbgbuqpkstlsbwkrposdmwq`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"tfoaqprarfoabbffxqiypuqnjuzesvmg\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["itefojdnavbgbuqpkstlsbwkrposdmwq"],"columns":[{"name":"itefojdnavbgbuqpkstlsbwkrposdmwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"garzrcvmospocqitmebwjukupcwkkzjp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vaxhadgltqvuxnqsyjwbrkwkhmtzhcah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igcdeepmsprrngvshawiusblsbyimlbm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"argnupalshsodhnxmumuhmusrszoxvlh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"betjmxxktliqftnipmqxtsgjxpbvssab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwsswrvbshqdlvojazjktetsvqllpqhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxhujgrjennjiydqbbcmrqyebpbuiwbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwgfnjbxhukjpjgkglzoocryvkbxhkte","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgjevubsebxjatzuuggtclgvnntlzswh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wyzordnzvslqibqywnpvbctypcgwoveo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vybvnerrmgnfbajruupowykvwqwrufbt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwvnuerfyiiiuskvormckmrvjauqhupg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jykgyfhrhdbrwabdxtbaekpdmrrztyhj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zblrvedmceniszjmhfrohmjeyifqchae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ublhfvlispnratgvpvfrugntizheefze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kbcyqwvqfswjpthxkywjpwwkpickofsm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rwcrabzaejecylphjfaiyatdibufxqrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjphdbhsbnxnsgdanabhhuisxwsmqlfv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhyzwqjrlxaydgkhdhcxllfssquqcxbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drpunsdvjhilqoeyzpkcpnbrwkrgvcyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"egqlveyrubndinrjosadpwdmlbbpqycy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ttecplpdgvmsmacbfcpzzaiupvprjtef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"beihgqzjleorgjtmfjplxoelpuxzzxfa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcqeduzkruvkmjesazdvgwemuoffaiyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfxoynjnimkwazheykjviguinntubstx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bhjhbmroinrswhvjrsplgtizxznbsrds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdmmcthyaunwrohdghumtnxzgdrddsna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"penhyemmvbjhpjnbmgczpqxgzuoomupk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbbanfiywsxekrtqzbzijuoxuvnmnaim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxdrnuhbsgmgttvluyepdmrdmqyqtrik","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlrofifzzcoqsrcdogoanhmuovcivrkf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvcdottcbmebybjypzfqnshoamiwatvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnandgwndduhwyxfmouqkowjzedtssxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvdgjesdboytgdnakgdaprtwnzqpqpwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"occkpqimeawwdpoxwfephqpzpxrghxll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcvhkkovrzifoweezuopmkccdvapyehs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fvrfjuhazohnsmnzjihwwvtlndqargys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"koviwkxyglozkssqvufbbfokqwgejmyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zewiygkjmfdbkgzqlvhtrzosunakdygd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kygsrqsdmpqpspyyrcelifppeiibtesk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzshcbcadroogaxpoudpnndewkszupcb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wtvoscproufuasgptmjnbvxgqffkkozo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ucltifxlfkbwvmgxmnbqqguixyoyxeuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxmdkveppvdtiwoweswininmpujvzpob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sktqvcuzwyzpcysmukxsuloukdjlxkzm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opoabzuuzqpxcovdynlhksxnryapcijo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qobyysclucmsqmkpzcjhkrcredzcupwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmqpzqrydmphbphgoxyojezfgknafbej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tuvwevorubckdlkkjohazyscqwxnovvi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzryhxqjydhxfxiucaqdrtcmproaxwza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgvofrqyaahxaiqlvlyidfdnfovxkuyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zygoorizgkzhftbsdrnbpvxgwzlonkpy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtgjgbmnpaigntrejjmjpxrbuigkgokz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjbbstcudsfquwuptpgcierpuqotjxub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dleextvxyaxymbkikqrvvcwchxyleaay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ayaoplomvfvwnffduwfhjeevlbsbhenq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vwujuqmcdfgvtprvwlgvxailizdkpynj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bdnwlbmfzfspytjfphjphdphivsvsoyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oxdludidughyclpgtwjsufbbdlcbjaow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vwddjtfdwejeqaegkvjzfumsrmrwfyas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"alcwwehnbmqexvihwvanalamuqebrecs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txwdhtdhfukaeuwelctdnpisarzcsrpw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojrgytkqiqrpygagdctfaphyytptirqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aocwqerlzheqjhlonpfqidohsoujrxos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eytkuboazvfdrizbceqwbofutfntjazh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytjttxjwcocvjvgoigbeqipvyjpllawx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znuwwxprfgltqgvawiqmdftwyprdokim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfdooxuaxxnzdmpnpdokpgrecjvbbxct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"snhjshzuilepqwkhvcdixuuhbcamdrcp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbhuznyuxgzgffujurgwzvaqevmnxhun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibhazqadbdkujfzvbailsnkgfioiwqll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tgtvobcpzofjtfweqdozcelacvaqqzgs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lpljxidxwzegheolnovprqyndwyqlykw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfqnczjhjkyrznqxxhdngxkftuidwfke","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pldtbwgruslxwihuzrfpocjsyqgudjgx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hxpxrhaeokzckktkmphkbisyqqhpdydx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkyybfvgddqzalhgcshkbecdxkuphoiz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rsjkozhgmpjvcmucmgdxwsmfrylbntcc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"firmtgypkxmpgntkncoulqmaxxudjzvv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"csxxtgbskuiljeftsafrkzxuydhgqctu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcfyjybpwtjooxxjepqehaltvufgdxvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jklizouygaywkrmagllucdqnfpmvtnoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbfijygmivuayaektpfrnjvabugeenbl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvarcbwrbzwxekokeltlupgizpvjurai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wyipwfnmesdmlpapnvzdsokrwrkaktxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rvwdcxscdkkwavfqxxpoofgqbqmbyhnp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"asscsxadypecztbtoypygevzauiwechp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqtqpoiaupidfpxiqwkwvxmlvmuvhcgu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uwcodhawytibyunxnplwtdiytmygakxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"issqyrbjtqokdqnvrynqgbwnnubwnspd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvarfonzwcaujfodtspzbzkqbrewfrdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flsejhqunkpfpxookvdrhwmkkfmafsbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oghgjvnaldikiowjsoohilyfoxotmeld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wiryfszewrevlafmyzcneuobxavbcmbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"poxffzcfozbtzbjpguyyvvibvvqcnuwl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sqehpvwglvwusdnpnznbmbamccfxpxpn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yozekaslmswgaczcjiwmshckzxzrsgjw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smaqfacqfhwlwbiznblgvbozkycnqnpo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsligyiaawebmjadxrqvvpmyaaewsuxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671382,"databaseName":"models_schema","ddl":"CREATE TABLE `tgczemkospnlaxgjoudtzsgbgjwujcbh` (\n `yfkfrnvliwqrsrlqnewainwbjecqxukn` int NOT NULL,\n `rclqqxgmuzbjgkmqyudfwgkzfppmtaat` int DEFAULT NULL,\n `nvuqmhfiluvffkiwoycnyosovrrhoatj` int DEFAULT NULL,\n `jawxvaakbvqzybdlyatiljloejeppwuf` int DEFAULT NULL,\n `qkylbqingygetqrmuuyzbefildzlgafc` int DEFAULT NULL,\n `umzxamcovlkirpgncyooqyqhtbjtdgqg` int DEFAULT NULL,\n `ijzmcnrultugffywurbfgaktoprbrlzo` int DEFAULT NULL,\n `lfdujbzcjemaknfzczuzycrstiayqunw` int DEFAULT NULL,\n `qjyamvqngpddjgajgsexvyudqfgawnun` int DEFAULT NULL,\n `chhbmfeodoaudygddxnhpjncxdkedgea` int DEFAULT NULL,\n `zddhuwghtkrsfqcooitwghcpefmfhtpi` int DEFAULT NULL,\n `uavoaaiveqlosdjbnqcciupfjhucnkzo` int DEFAULT NULL,\n `kjqbaohyjemnkpxbrjmlbbxjmrqwrpbr` int DEFAULT NULL,\n `dwftcwdcykdxmcxactoiwrccfzfmycqe` int DEFAULT NULL,\n `rtxprpqukqmtfavtybhmfbcuhpqegsjn` int DEFAULT NULL,\n `knazyafxuiitvmdmxggifvyaieltvpoi` int DEFAULT NULL,\n `cuzcfpnczxeybhfxzdkgblfpkvavgqae` int DEFAULT NULL,\n `szwwwkqgpdmwssxxsvsyexverdvyimhr` int DEFAULT NULL,\n `lhvbrrgcrzbsobmgpxdqvxiappkaqaph` int DEFAULT NULL,\n `npxauherviusefmqfldkmyjjawscnbmy` int DEFAULT NULL,\n `rnhbrkphdsrzybgjqcldlovxozzqzyku` int DEFAULT NULL,\n `qvtohabygxqudexwxuavvqumonkgioza` int DEFAULT NULL,\n `irrqzslpgqphjvmvnoqsofmzwllwjyiv` int DEFAULT NULL,\n `cvgysyqsxcvfogisomxprikgjblsrekn` int DEFAULT NULL,\n `njpgskcdkrigncqotdkwuplljsdnffwj` int DEFAULT NULL,\n `fiymawnemubavbzfudgrtpdxirafctjs` int DEFAULT NULL,\n `dqexmosuyrnjchxkwmeoltxxpysbjkfv` int DEFAULT NULL,\n `yjwawcignavdnauhuqmqhdzzuhavnmpj` int DEFAULT NULL,\n `xljqcurtkxdxxpziwbdfzonecmcuhwhd` int DEFAULT NULL,\n `rvhoxyyvtmcjzpxqefgppapimvgcyufb` int DEFAULT NULL,\n `wprwmgngwklbbhkzvwqvtqnqthewvhzi` int DEFAULT NULL,\n `ynptacpckrzlngadbijpxukvpivbutre` int DEFAULT NULL,\n `upqnnfkeivhgtunvgumhlomfdihrujyi` int DEFAULT NULL,\n `ubpkioxoxvpaqkmqvazxtjqtlpyolfxd` int DEFAULT NULL,\n `dtroebfzjzzcluhvhwsmwvlkuqonhlav` int DEFAULT NULL,\n `kdqpzfywbfxxmrwhgintvizfyinujvlx` int DEFAULT NULL,\n `itxlqtonisjsghpkygohgccclwiqwcfs` int DEFAULT NULL,\n `wsjnogosvobjvxbqfmdxddkboplzsxwk` int DEFAULT NULL,\n `xfjcbbmjgdumqmixveqwydjdxrfanxiv` int DEFAULT NULL,\n `cbwfsmfqfxiifuefttqpnzchnpmrcwam` int DEFAULT NULL,\n `kmunqjqbkmtmftwawjnixulghosfudzu` int DEFAULT NULL,\n `mvjledqzypuzetjabshxnkslkuddgejs` int DEFAULT NULL,\n `lvppyrtjsgaimkfnyqenhwwfaieavpuk` int DEFAULT NULL,\n `mvlavftcdlwqmearjmftdbertmieeayq` int DEFAULT NULL,\n `ccvwobcfsxgyodfdckxknxfxcdcnpsio` int DEFAULT NULL,\n `whvmcvujfeqwxlmqsvrolkvbxhkkgosu` int DEFAULT NULL,\n `ljqoohgbicljwlhedhkqxdayjhacjpim` int DEFAULT NULL,\n `fafpntglghvesrgvsuwxmwuiqdpeguqj` int DEFAULT NULL,\n `cxebjrulwejgvknmfmfqahbfsqhztjps` int DEFAULT NULL,\n `eqvgruvsgaxmbuofbyqdfixpgsndcvux` int DEFAULT NULL,\n `ydbbqwirvmxusmijwfsmrddbxkmoilgx` int DEFAULT NULL,\n `xdbbzhhyjihdligikdndicqacdaflimz` int DEFAULT NULL,\n `kkuzufpwzigrofwzyksfirhwclibklar` int DEFAULT NULL,\n `bbznqbrduhtwgppcochyqjqwihswmcwe` int DEFAULT NULL,\n `rwsxnetjrjzhlxohvrqsfagrwhihrsnd` int DEFAULT NULL,\n `uxlmfwfnhsvjahhqtbethpllcpbhtbdq` int DEFAULT NULL,\n `etclvguoywygjdebvtfuspgcbnvaetah` int DEFAULT NULL,\n `amyttiyokkayvxsrvgohudnhqgplrqzf` int DEFAULT NULL,\n `mmffsngbekszdtvmrbkdyfywwtotzace` int DEFAULT NULL,\n `lyuktsavdemarxbmwleleohgzbdsqwjy` int DEFAULT NULL,\n `ptgmjzfehnlwdzsiabttwxsgetmpvfmv` int DEFAULT NULL,\n `aatlgrbsgnyfchfpqeozbzsijjbvmzjz` int DEFAULT NULL,\n `vutbfakxjlzfhqcefcaimqpbidkbewsw` int DEFAULT NULL,\n `zrlzylwqmtkiindulefqngkbnfhpiker` int DEFAULT NULL,\n `jyfjkvjcqoxnnzevkssjiqxyacifyjtr` int DEFAULT NULL,\n `wmxesjkpynyewxvbsuqtghpjrsxzmzxe` int DEFAULT NULL,\n `zsyxlbakbmyxnytayqquujmcktrhjkef` int DEFAULT NULL,\n `lxniydlvoqjwdwvskqesrokpeymuuqdp` int DEFAULT NULL,\n `swwcvxtmsmdovdnlizyrrrdrlsklodri` int DEFAULT NULL,\n `ndjmonvqaoqpvldthzignvkrnyhzmiuj` int DEFAULT NULL,\n `ytsptnjjeglqmuprleiuqiujgtvbsdcc` int DEFAULT NULL,\n `jmwnhtenxhftytpgkmkxfkwbozldyirb` int DEFAULT NULL,\n `fnsuuhenyqxyeialstmkvwkoejnzfuwn` int DEFAULT NULL,\n `qxnnilbxbhdidgsbvebhzyxatleudlbo` int DEFAULT NULL,\n `dtorhjakijnhnwwsoyzzrufkifawcwtq` int DEFAULT NULL,\n `nbfavdujxkucowffzanmuvoyxqvmxmdc` int DEFAULT NULL,\n `mrmfsilemnmhdzqtmnejoaryebtorvng` int DEFAULT NULL,\n `relnrfpdwttfzjasyayesfmdwwreljav` int DEFAULT NULL,\n `scdqsdtxmbgxdmdkuffjxbysufbxyvis` int DEFAULT NULL,\n `nzboiygftrhfsrofxwqakcrtfqaovkhp` int DEFAULT NULL,\n `kcwbvydbiutyzjawxpujsljoafloddne` int DEFAULT NULL,\n `qawauictroylkrsgdindzgggwkzklvnb` int DEFAULT NULL,\n `tpcroojyeevnwpddkhwxxtoccwckynnk` int DEFAULT NULL,\n `gzrvoxvoiqxvqftywlivxxxpbonbliua` int DEFAULT NULL,\n `mdmcocsmqzrsicmwwsvopgreyxylvals` int DEFAULT NULL,\n `kawmhjfwdasarbjgelnoptpilppvlvnx` int DEFAULT NULL,\n `cvilvniamgwsgzncpvombkzmuhhvkuhm` int DEFAULT NULL,\n `vlicwdkfuxbbypaudfbsikvcsrfvhtbx` int DEFAULT NULL,\n `xkbdvxutgtqxcikgtgfdsbylidrekvio` int DEFAULT NULL,\n `mrvqrsrljletpvsbbrpftojbwagqkhyb` int DEFAULT NULL,\n `deecsfxuurdsolyyttoguqgmvdxttckn` int DEFAULT NULL,\n `ynhqlahsnfzkyevxarkamovgrmypbjjh` int DEFAULT NULL,\n `lgweizhaxwlvqxmbwankgzsbmsgiiguh` int DEFAULT NULL,\n `efgwxcrvrwukuzxucvbkuteshvbrbpge` int DEFAULT NULL,\n `bsbkpjsehcxbjdfisavvewjogkwtkuyx` int DEFAULT NULL,\n `uhezfntydsvcgnlfbumksalzfjmiudfx` int DEFAULT NULL,\n `fyqfnzxjulsxoyphdzuynrdjjrjoqxsk` int DEFAULT NULL,\n `hanysmwnihvjbjdirueziwfxnwmbwwxk` int DEFAULT NULL,\n `hujnfgsdysttpcqzlmwumszvhekqwwqf` int DEFAULT NULL,\n `xyksuzuasgzkzryqqzupukmoyqqfvopa` int DEFAULT NULL,\n PRIMARY KEY (`yfkfrnvliwqrsrlqnewainwbjecqxukn`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"tgczemkospnlaxgjoudtzsgbgjwujcbh\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["yfkfrnvliwqrsrlqnewainwbjecqxukn"],"columns":[{"name":"yfkfrnvliwqrsrlqnewainwbjecqxukn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"rclqqxgmuzbjgkmqyudfwgkzfppmtaat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvuqmhfiluvffkiwoycnyosovrrhoatj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jawxvaakbvqzybdlyatiljloejeppwuf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qkylbqingygetqrmuuyzbefildzlgafc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umzxamcovlkirpgncyooqyqhtbjtdgqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijzmcnrultugffywurbfgaktoprbrlzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfdujbzcjemaknfzczuzycrstiayqunw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjyamvqngpddjgajgsexvyudqfgawnun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"chhbmfeodoaudygddxnhpjncxdkedgea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zddhuwghtkrsfqcooitwghcpefmfhtpi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uavoaaiveqlosdjbnqcciupfjhucnkzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjqbaohyjemnkpxbrjmlbbxjmrqwrpbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwftcwdcykdxmcxactoiwrccfzfmycqe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rtxprpqukqmtfavtybhmfbcuhpqegsjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knazyafxuiitvmdmxggifvyaieltvpoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cuzcfpnczxeybhfxzdkgblfpkvavgqae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"szwwwkqgpdmwssxxsvsyexverdvyimhr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhvbrrgcrzbsobmgpxdqvxiappkaqaph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"npxauherviusefmqfldkmyjjawscnbmy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnhbrkphdsrzybgjqcldlovxozzqzyku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvtohabygxqudexwxuavvqumonkgioza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"irrqzslpgqphjvmvnoqsofmzwllwjyiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvgysyqsxcvfogisomxprikgjblsrekn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njpgskcdkrigncqotdkwuplljsdnffwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fiymawnemubavbzfudgrtpdxirafctjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqexmosuyrnjchxkwmeoltxxpysbjkfv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjwawcignavdnauhuqmqhdzzuhavnmpj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xljqcurtkxdxxpziwbdfzonecmcuhwhd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rvhoxyyvtmcjzpxqefgppapimvgcyufb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wprwmgngwklbbhkzvwqvtqnqthewvhzi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynptacpckrzlngadbijpxukvpivbutre","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upqnnfkeivhgtunvgumhlomfdihrujyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubpkioxoxvpaqkmqvazxtjqtlpyolfxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtroebfzjzzcluhvhwsmwvlkuqonhlav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kdqpzfywbfxxmrwhgintvizfyinujvlx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itxlqtonisjsghpkygohgccclwiqwcfs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wsjnogosvobjvxbqfmdxddkboplzsxwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xfjcbbmjgdumqmixveqwydjdxrfanxiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbwfsmfqfxiifuefttqpnzchnpmrcwam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kmunqjqbkmtmftwawjnixulghosfudzu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvjledqzypuzetjabshxnkslkuddgejs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvppyrtjsgaimkfnyqenhwwfaieavpuk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvlavftcdlwqmearjmftdbertmieeayq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ccvwobcfsxgyodfdckxknxfxcdcnpsio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"whvmcvujfeqwxlmqsvrolkvbxhkkgosu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljqoohgbicljwlhedhkqxdayjhacjpim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fafpntglghvesrgvsuwxmwuiqdpeguqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cxebjrulwejgvknmfmfqahbfsqhztjps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqvgruvsgaxmbuofbyqdfixpgsndcvux","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydbbqwirvmxusmijwfsmrddbxkmoilgx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdbbzhhyjihdligikdndicqacdaflimz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kkuzufpwzigrofwzyksfirhwclibklar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbznqbrduhtwgppcochyqjqwihswmcwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rwsxnetjrjzhlxohvrqsfagrwhihrsnd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxlmfwfnhsvjahhqtbethpllcpbhtbdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"etclvguoywygjdebvtfuspgcbnvaetah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"amyttiyokkayvxsrvgohudnhqgplrqzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmffsngbekszdtvmrbkdyfywwtotzace","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lyuktsavdemarxbmwleleohgzbdsqwjy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ptgmjzfehnlwdzsiabttwxsgetmpvfmv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aatlgrbsgnyfchfpqeozbzsijjbvmzjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vutbfakxjlzfhqcefcaimqpbidkbewsw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zrlzylwqmtkiindulefqngkbnfhpiker","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jyfjkvjcqoxnnzevkssjiqxyacifyjtr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmxesjkpynyewxvbsuqtghpjrsxzmzxe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zsyxlbakbmyxnytayqquujmcktrhjkef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxniydlvoqjwdwvskqesrokpeymuuqdp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swwcvxtmsmdovdnlizyrrrdrlsklodri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ndjmonvqaoqpvldthzignvkrnyhzmiuj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytsptnjjeglqmuprleiuqiujgtvbsdcc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmwnhtenxhftytpgkmkxfkwbozldyirb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnsuuhenyqxyeialstmkvwkoejnzfuwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxnnilbxbhdidgsbvebhzyxatleudlbo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtorhjakijnhnwwsoyzzrufkifawcwtq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbfavdujxkucowffzanmuvoyxqvmxmdc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrmfsilemnmhdzqtmnejoaryebtorvng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"relnrfpdwttfzjasyayesfmdwwreljav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"scdqsdtxmbgxdmdkuffjxbysufbxyvis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzboiygftrhfsrofxwqakcrtfqaovkhp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kcwbvydbiutyzjawxpujsljoafloddne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qawauictroylkrsgdindzgggwkzklvnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpcroojyeevnwpddkhwxxtoccwckynnk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzrvoxvoiqxvqftywlivxxxpbonbliua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mdmcocsmqzrsicmwwsvopgreyxylvals","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kawmhjfwdasarbjgelnoptpilppvlvnx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvilvniamgwsgzncpvombkzmuhhvkuhm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vlicwdkfuxbbypaudfbsikvcsrfvhtbx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkbdvxutgtqxcikgtgfdsbylidrekvio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrvqrsrljletpvsbbrpftojbwagqkhyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"deecsfxuurdsolyyttoguqgmvdxttckn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynhqlahsnfzkyevxarkamovgrmypbjjh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgweizhaxwlvqxmbwankgzsbmsgiiguh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"efgwxcrvrwukuzxucvbkuteshvbrbpge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bsbkpjsehcxbjdfisavvewjogkwtkuyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhezfntydsvcgnlfbumksalzfjmiudfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fyqfnzxjulsxoyphdzuynrdjjrjoqxsk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hanysmwnihvjbjdirueziwfxnwmbwwxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hujnfgsdysttpcqzlmwumszvhekqwwqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyksuzuasgzkzryqqzupukmoyqqfvopa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671413,"databaseName":"models_schema","ddl":"CREATE TABLE `tgtlonwoccyfoxpnlcdbuzcncumduhrs` (\n `edaspexhikcohkkkfvtodwlwhliqmesg` int NOT NULL,\n `tsruoqutkwwwmufemyfhehdrpphjbdhf` int DEFAULT NULL,\n `cvicqoqndadkctxwjnebyalzboqcvjdr` int DEFAULT NULL,\n `meqoniyedtlgtaozqrauehiqfkvljicj` int DEFAULT NULL,\n `btcctdeqfipeiourtbmtdxmoomuwzayl` int DEFAULT NULL,\n `snjbnpvwbdvebtwetetjruzmmkmdgzsm` int DEFAULT NULL,\n `disaswiwbrxjxnpxxqjaooroxykcxzvh` int DEFAULT NULL,\n `wpouycpgebxwaovwlraorxbzrzxmqnmg` int DEFAULT NULL,\n `nhatcpphsyuzqgsiddcvylseurjddsez` int DEFAULT NULL,\n `iykbqwucczeqsepgowrhcnzcdmjapkmf` int DEFAULT NULL,\n `dcgpbzaalkeqqlaazocvtxvmadwsxqoc` int DEFAULT NULL,\n `rpcpshqagjtivojnjwsncovewvmpwump` int DEFAULT NULL,\n `xctektzlmgbnlszdqkvkjgltrxknwech` int DEFAULT NULL,\n `wlzuwclgujczeuzvliorpifndgkrjlix` int DEFAULT NULL,\n `lcibpaylsaxxodhngxyiuyslacrwhleh` int DEFAULT NULL,\n `iysdzfjnrzhbcgmmophqnhisyrkofslk` int DEFAULT NULL,\n `pccgsevpplygtuhtfyeenicznhmnwoba` int DEFAULT NULL,\n `vbldzcfhmpaopfecuqrxwspfkkwjfnyr` int DEFAULT NULL,\n `ybmynbvnizgvuygybbcajcrlibdeusna` int DEFAULT NULL,\n `zfhbgjnokyqlpuerctjtcafxanxibzwb` int DEFAULT NULL,\n `cktecabsvaxvazofunlyvitomsinleyz` int DEFAULT NULL,\n `ynipfespqoknghwdyydawkjdopebvoio` int DEFAULT NULL,\n `thbsqfdixtjoctdzpgrcfuvxgrkykiwj` int DEFAULT NULL,\n `nsfpgjgkuazptnhltmciijfglhdhiaot` int DEFAULT NULL,\n `ylnlabdnmtptvdxbqihfeyumyvwflknx` int DEFAULT NULL,\n `xvfhsnkiviavqzzifqzzzdpmtvffnoua` int DEFAULT NULL,\n `gcbjozvglrxdabppyqtbijbtxkcnllji` int DEFAULT NULL,\n `gcgmcemeayntkxosdypogqebhpgiivgx` int DEFAULT NULL,\n `wspklmfmzzgznhsvkgvfktcbgevwnklu` int DEFAULT NULL,\n `crbqfqfnirvudlrjzjkqjparcxwcsnup` int DEFAULT NULL,\n `qtxzkmlvniqbqbkqimiaqldzdhpkzboc` int DEFAULT NULL,\n `mubhhzfxemlzhuwwkcqwaahiigexsidg` int DEFAULT NULL,\n `dsuicseukziwgykvpxhxdcgximbguelu` int DEFAULT NULL,\n `ktyqvchzhojmbpmlsttcsnfqfvruetay` int DEFAULT NULL,\n `qghnfwcaqlnwduhhubrsizmunniznaeq` int DEFAULT NULL,\n `ffegvynrntucbjwgxqcwheajkbpnfvjy` int DEFAULT NULL,\n `bdarbcwkpgtdxqiwganensmkkssgecik` int DEFAULT NULL,\n `dhkofpsgilygegwxgiohpucuauxjgktu` int DEFAULT NULL,\n `qhhdmmwtqgcdozgkxjqzjbmkrixfpqop` int DEFAULT NULL,\n `eiwyshkepflmhzjlgklxblsffdwschct` int DEFAULT NULL,\n `rdjvypsxsgqpgzzejhuaewukntyedyqv` int DEFAULT NULL,\n `rliwngmktizdtlzkrjhpvukcarbocgfu` int DEFAULT NULL,\n `metdpfghmrwxmhjtctwkhujouyrujjuv` int DEFAULT NULL,\n `axsreowpkeczdmkmkelzbijojjenrxzk` int DEFAULT NULL,\n `rmdcfkwgxtipbyzqmgqcywoouxjrftvb` int DEFAULT NULL,\n `qbpgtnkagchqmtigudqddfwkiyuvaodv` int DEFAULT NULL,\n `qgwrvntfotjafgczsteuovcuzyeyhoya` int DEFAULT NULL,\n `wcqvucrxftovsgwckwulotkpmtweslkh` int DEFAULT NULL,\n `qxfizmlbnqqumucxqzlgvnsyvxjdhlht` int DEFAULT NULL,\n `dvykaqjtsdgxqivefeuordnzrqwbwfws` int DEFAULT NULL,\n `awqzgssafryzmxwaczltlwlivkfhahjd` int DEFAULT NULL,\n `udtnafqnfumqzltkyjyvzakpnmnpbuyc` int DEFAULT NULL,\n `kltljtyuqghjwpyecnmxnpwgwkaubfwd` int DEFAULT NULL,\n `urdywgbbucuvzpdaxromupaxehzabjuk` int DEFAULT NULL,\n `lhhystdlvswusdebmpoplhiymotojsij` int DEFAULT NULL,\n `hqrxlfavhifwjkwcfmutruslxfdfauej` int DEFAULT NULL,\n `rhthbvkozdacswcgqnrmrdugkghaxzzx` int DEFAULT NULL,\n `molbmldlnmkttwlssqomstgxckrtcwvl` int DEFAULT NULL,\n `qwnssepofbuiqrtjahistcesjvgdbxbv` int DEFAULT NULL,\n `inlytbdciemfjlupjdreqfnlepoysdsc` int DEFAULT NULL,\n `chpykaryjaegnpjidmqnpmqjyyshbskp` int DEFAULT NULL,\n `ocgbmctrhnhnbyrxcbtanntomxmrffns` int DEFAULT NULL,\n `zwvjtoveidgneuvkdlmmwjuqquehkdbg` int DEFAULT NULL,\n `ivyccerdxykyvxdkhcmyehuudjnjwzsz` int DEFAULT NULL,\n `mgaonjimpcdtlsylllipinjaiakdhock` int DEFAULT NULL,\n `ffkhijeidnagnfjrggjaodmkvehexxmo` int DEFAULT NULL,\n `dntrlwvrvavcwylygsvbwnoucabkkevl` int DEFAULT NULL,\n `xfqsoijysygcmrfpuklfvraeuvuepref` int DEFAULT NULL,\n `vyyfrydipbjolcqmgmhywaasgkjyszub` int DEFAULT NULL,\n `ykoobhvfgbibauishrxmzfnkadsgeqjp` int DEFAULT NULL,\n `qjhxiuxupubamddgyduwqyjijlydiybw` int DEFAULT NULL,\n `vhynrikayzfqehxsezvetzbyhwaxbenq` int DEFAULT NULL,\n `fibmnbkzvyhutjvmytqvunuvlgryzlml` int DEFAULT NULL,\n `ieppzhwplceprslglnoynwowzkyahqzo` int DEFAULT NULL,\n `kpugdbjnmofgxomisftiribrskcvqzol` int DEFAULT NULL,\n `crsgmisbviwifkxoizchsdonjeytohrg` int DEFAULT NULL,\n `kttrracxzydjyhwzqurcqxerobfcstmu` int DEFAULT NULL,\n `rksyutwuqtuxbrphzpbjyexicplcqcni` int DEFAULT NULL,\n `vpsgyzeljtwnmaavowcnjxvgkdjzulfn` int DEFAULT NULL,\n `ujtotphrglwjnciburzguegamoqtsgsd` int DEFAULT NULL,\n `vfslwfsvkabqbzxwljxuklygyosetpxf` int DEFAULT NULL,\n `dhapdrmekxlbdjdgtohbwzosnsxicoiu` int DEFAULT NULL,\n `muafdmmmmoiyrxvjorevqfyaggevvywa` int DEFAULT NULL,\n `mlbynxspciaecrawwxdmqulhiecgmqim` int DEFAULT NULL,\n `qgtuybmtndprjpemhfqknlrpylvhnqrx` int DEFAULT NULL,\n `gzdskmhlcqnhupxatihmsuketefeuolp` int DEFAULT NULL,\n `fppxfkextdktgcoprxolvvygumarvdey` int DEFAULT NULL,\n `diltwbmvslzibhnlwvzfmlolgnmxrrqm` int DEFAULT NULL,\n `qntbkbwmlqhinxnruxolttdgcwjybjhn` int DEFAULT NULL,\n `acourfclhsnthsdddhsiziwpjdfbxfpo` int DEFAULT NULL,\n `ojsqknmxmkaoeksqaoydfkkbhgxcbuhz` int DEFAULT NULL,\n `nawelblnyztfmemrxobomgxxjdncntgt` int DEFAULT NULL,\n `fprqvfgizccpzequpsjhsjfvylfehjtt` int DEFAULT NULL,\n `bmvheggyevhbjrnrpaaseghoogfjacug` int DEFAULT NULL,\n `zscepnxfvngazrigxbmdshhaberpyvzt` int DEFAULT NULL,\n `bxiayghkhjmuymxxxgdvnodzjkqpdxbp` int DEFAULT NULL,\n `ivjmpwrgsjwjbfzsuzcdygqkqtwsfald` int DEFAULT NULL,\n `eknujyrxjftcdbnisettnbhgemmtgzdy` int DEFAULT NULL,\n `wusjjuyhfkioqaegtloxkfboigsndifi` int DEFAULT NULL,\n `ddidsgbkheeiryenceibgiolsrtrjgfm` int DEFAULT NULL,\n PRIMARY KEY (`edaspexhikcohkkkfvtodwlwhliqmesg`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"tgtlonwoccyfoxpnlcdbuzcncumduhrs\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["edaspexhikcohkkkfvtodwlwhliqmesg"],"columns":[{"name":"edaspexhikcohkkkfvtodwlwhliqmesg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"tsruoqutkwwwmufemyfhehdrpphjbdhf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvicqoqndadkctxwjnebyalzboqcvjdr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"meqoniyedtlgtaozqrauehiqfkvljicj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"btcctdeqfipeiourtbmtdxmoomuwzayl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"snjbnpvwbdvebtwetetjruzmmkmdgzsm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"disaswiwbrxjxnpxxqjaooroxykcxzvh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wpouycpgebxwaovwlraorxbzrzxmqnmg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhatcpphsyuzqgsiddcvylseurjddsez","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iykbqwucczeqsepgowrhcnzcdmjapkmf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcgpbzaalkeqqlaazocvtxvmadwsxqoc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpcpshqagjtivojnjwsncovewvmpwump","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xctektzlmgbnlszdqkvkjgltrxknwech","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wlzuwclgujczeuzvliorpifndgkrjlix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lcibpaylsaxxodhngxyiuyslacrwhleh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iysdzfjnrzhbcgmmophqnhisyrkofslk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pccgsevpplygtuhtfyeenicznhmnwoba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbldzcfhmpaopfecuqrxwspfkkwjfnyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ybmynbvnizgvuygybbcajcrlibdeusna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zfhbgjnokyqlpuerctjtcafxanxibzwb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cktecabsvaxvazofunlyvitomsinleyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynipfespqoknghwdyydawkjdopebvoio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thbsqfdixtjoctdzpgrcfuvxgrkykiwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nsfpgjgkuazptnhltmciijfglhdhiaot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ylnlabdnmtptvdxbqihfeyumyvwflknx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvfhsnkiviavqzzifqzzzdpmtvffnoua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gcbjozvglrxdabppyqtbijbtxkcnllji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gcgmcemeayntkxosdypogqebhpgiivgx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wspklmfmzzgznhsvkgvfktcbgevwnklu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"crbqfqfnirvudlrjzjkqjparcxwcsnup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtxzkmlvniqbqbkqimiaqldzdhpkzboc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mubhhzfxemlzhuwwkcqwaahiigexsidg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dsuicseukziwgykvpxhxdcgximbguelu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ktyqvchzhojmbpmlsttcsnfqfvruetay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qghnfwcaqlnwduhhubrsizmunniznaeq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffegvynrntucbjwgxqcwheajkbpnfvjy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bdarbcwkpgtdxqiwganensmkkssgecik","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhkofpsgilygegwxgiohpucuauxjgktu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhhdmmwtqgcdozgkxjqzjbmkrixfpqop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eiwyshkepflmhzjlgklxblsffdwschct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdjvypsxsgqpgzzejhuaewukntyedyqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rliwngmktizdtlzkrjhpvukcarbocgfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"metdpfghmrwxmhjtctwkhujouyrujjuv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axsreowpkeczdmkmkelzbijojjenrxzk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rmdcfkwgxtipbyzqmgqcywoouxjrftvb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qbpgtnkagchqmtigudqddfwkiyuvaodv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qgwrvntfotjafgczsteuovcuzyeyhoya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcqvucrxftovsgwckwulotkpmtweslkh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxfizmlbnqqumucxqzlgvnsyvxjdhlht","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvykaqjtsdgxqivefeuordnzrqwbwfws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awqzgssafryzmxwaczltlwlivkfhahjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udtnafqnfumqzltkyjyvzakpnmnpbuyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kltljtyuqghjwpyecnmxnpwgwkaubfwd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urdywgbbucuvzpdaxromupaxehzabjuk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhhystdlvswusdebmpoplhiymotojsij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqrxlfavhifwjkwcfmutruslxfdfauej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhthbvkozdacswcgqnrmrdugkghaxzzx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"molbmldlnmkttwlssqomstgxckrtcwvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwnssepofbuiqrtjahistcesjvgdbxbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"inlytbdciemfjlupjdreqfnlepoysdsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"chpykaryjaegnpjidmqnpmqjyyshbskp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocgbmctrhnhnbyrxcbtanntomxmrffns","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zwvjtoveidgneuvkdlmmwjuqquehkdbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivyccerdxykyvxdkhcmyehuudjnjwzsz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mgaonjimpcdtlsylllipinjaiakdhock","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffkhijeidnagnfjrggjaodmkvehexxmo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dntrlwvrvavcwylygsvbwnoucabkkevl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xfqsoijysygcmrfpuklfvraeuvuepref","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vyyfrydipbjolcqmgmhywaasgkjyszub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykoobhvfgbibauishrxmzfnkadsgeqjp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjhxiuxupubamddgyduwqyjijlydiybw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhynrikayzfqehxsezvetzbyhwaxbenq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fibmnbkzvyhutjvmytqvunuvlgryzlml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ieppzhwplceprslglnoynwowzkyahqzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kpugdbjnmofgxomisftiribrskcvqzol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"crsgmisbviwifkxoizchsdonjeytohrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kttrracxzydjyhwzqurcqxerobfcstmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rksyutwuqtuxbrphzpbjyexicplcqcni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpsgyzeljtwnmaavowcnjxvgkdjzulfn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujtotphrglwjnciburzguegamoqtsgsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vfslwfsvkabqbzxwljxuklygyosetpxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhapdrmekxlbdjdgtohbwzosnsxicoiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"muafdmmmmoiyrxvjorevqfyaggevvywa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mlbynxspciaecrawwxdmqulhiecgmqim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qgtuybmtndprjpemhfqknlrpylvhnqrx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzdskmhlcqnhupxatihmsuketefeuolp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fppxfkextdktgcoprxolvvygumarvdey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"diltwbmvslzibhnlwvzfmlolgnmxrrqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qntbkbwmlqhinxnruxolttdgcwjybjhn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"acourfclhsnthsdddhsiziwpjdfbxfpo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojsqknmxmkaoeksqaoydfkkbhgxcbuhz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nawelblnyztfmemrxobomgxxjdncntgt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fprqvfgizccpzequpsjhsjfvylfehjtt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bmvheggyevhbjrnrpaaseghoogfjacug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zscepnxfvngazrigxbmdshhaberpyvzt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bxiayghkhjmuymxxxgdvnodzjkqpdxbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivjmpwrgsjwjbfzsuzcdygqkqtwsfald","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eknujyrxjftcdbnisettnbhgemmtgzdy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wusjjuyhfkioqaegtloxkfboigsndifi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ddidsgbkheeiryenceibgiolsrtrjgfm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671446,"databaseName":"models_schema","ddl":"CREATE TABLE `tixcpagetyojezbmkaeetpemukblcpsr` (\n `jqruxhwpoxoxyebdozgwghjudbpldvgy` int NOT NULL,\n `pmwvzxgstpaunqbryridioqamatrifvf` int DEFAULT NULL,\n `hbplbnssdcqjwsiniiyhrvbmgatqkphc` int DEFAULT NULL,\n `nucojgxelmnmnqceqbtcenerjzqmtksr` int DEFAULT NULL,\n `ypqkvbwrqlwrwzllhxyyzeiqdyidpdxa` int DEFAULT NULL,\n `rqkrieebwietonwefqkdluotxvcaolla` int DEFAULT NULL,\n `rkryilvasxsjtdwmnjodgdnldlwlolzn` int DEFAULT NULL,\n `zdybqpsrfxzzyxipiwvtzqphmvzejpbp` int DEFAULT NULL,\n `urrdxeuzlxwuurxsxqbrgdrsxlerncak` int DEFAULT NULL,\n `hecmizwfcicumoylteiokzndmoiimxev` int DEFAULT NULL,\n `oqulqmisdrqurtkcmktvyalfjjivtars` int DEFAULT NULL,\n `dmyrgokvkpuqghfttrntqgtoavzpbdfc` int DEFAULT NULL,\n `xnjjlrtwxpcmaugnrofhngubsoohzhag` int DEFAULT NULL,\n `njxdlxtlnmvnlfitsnnapjgolfmpyghr` int DEFAULT NULL,\n `zrnkawplksducwcjxxwtsjdieeplgoej` int DEFAULT NULL,\n `pgjukpqudcaxfoxtbrugzifpgukqlqmv` int DEFAULT NULL,\n `fvfuadueyhcwtwtgxhldgfrdmguwtiiw` int DEFAULT NULL,\n `jbbsruqssskwbnvddhmecoymsguduidb` int DEFAULT NULL,\n `ttnyputdsqrutjiiuotsobihksocjcsc` int DEFAULT NULL,\n `jzqcnrwgixtkawvuyobuvkrtqybgzrzp` int DEFAULT NULL,\n `mtrgpqsqjepvkebdhssgknqglcnbqjim` int DEFAULT NULL,\n `hindbagiyohudqiexzokkgjneblcnqtn` int DEFAULT NULL,\n `ujtkpduhtpdupesjpqjrhmvikkwkmfrm` int DEFAULT NULL,\n `qoghzrpxdoirbtyqkqwyjuwpdzzunufm` int DEFAULT NULL,\n `dcniqygsysqyaawauytozdwqaoegsnvj` int DEFAULT NULL,\n `otcwbqcspabouxtakaeexanxddtldydz` int DEFAULT NULL,\n `ouunvdjqrjseqaoaycauwndkrzggnlcd` int DEFAULT NULL,\n `vhwiuckxrebambyybitxthtlihbpdgan` int DEFAULT NULL,\n `xaylnymrocjkflotwscixtkjamdbfahy` int DEFAULT NULL,\n `omanfpdyozrbzhofykqxnjrwwidqhqah` int DEFAULT NULL,\n `yalfsvoqcmpylkqzppdviakkhyxmejqo` int DEFAULT NULL,\n `exxygiklogbvqxjmuqycpklhcxdkcdnq` int DEFAULT NULL,\n `xndeijjxvswqlzefdfgfbmpedafnmvbj` int DEFAULT NULL,\n `drnpyoctwhjnlabfempajolgseralzau` int DEFAULT NULL,\n `jpwfttzksuhmfnevveqmpvnlhyobzypv` int DEFAULT NULL,\n `mgovyhgibeeszpwcwvdggqligsjuawww` int DEFAULT NULL,\n `sebqodfcnufpacorlmvoagomfimuxdzq` int DEFAULT NULL,\n `gixwfxittbbswwghsdrnepllxojghabn` int DEFAULT NULL,\n `hlvscqrrtwwiavacwduzmxragwcwepuf` int DEFAULT NULL,\n `xtkobrovvjpvzwvrnrileeeeesqlahyc` int DEFAULT NULL,\n `mgywzfuhlrhifpounupvotmuibrtdgqf` int DEFAULT NULL,\n `ltdwdnyxnotbeyawebghabkqyitizgba` int DEFAULT NULL,\n `gjzpobtbwgmxjfwymmxcfvwtbllhulzi` int DEFAULT NULL,\n `tehigersujrejatwcfdazofuhkpvdyrs` int DEFAULT NULL,\n `knojeyacamyxbhrfrtxdtqvesshjrvzq` int DEFAULT NULL,\n `hspdddyksnpeoynpssaoqcacsqbdbsjf` int DEFAULT NULL,\n `wlbrmehwqjueijiulgaodincewgwuyqy` int DEFAULT NULL,\n `wyltqtobvlerphyzzgghxtsnakbcmave` int DEFAULT NULL,\n `pqqmjwviuqkgkujrlahhjxvkjaybinec` int DEFAULT NULL,\n `wivkflonzioknosggiyjpyosixohmdmi` int DEFAULT NULL,\n `vdjygkrtsbnltckeswmhphqflkhaycff` int DEFAULT NULL,\n `jintepbfqtqosaeaghhdthrksgusgmsq` int DEFAULT NULL,\n `mpcatjutarysvzdqxnqxjubosqmauzdv` int DEFAULT NULL,\n `dkxtcmmvgkfqglhehcaeyltxucymzswu` int DEFAULT NULL,\n `rvmnzdttwyfknznmhnklesxkpkvewvte` int DEFAULT NULL,\n `wgxpkxnxvfdsnicimlpapxwtswvfxqyv` int DEFAULT NULL,\n `hygnyuvzqwnpknnugjsjdqiyqmpvqyfi` int DEFAULT NULL,\n `fqxsgncnnewamepumlmcawxqytbvjzmi` int DEFAULT NULL,\n `mobmhyimfttmxphxdivsojlhrgvsxewu` int DEFAULT NULL,\n `hzhxqhasqzezqggdzvbioukdmkogtcyw` int DEFAULT NULL,\n `daclfspbqvsdwvlhlplhvwelozgpwxof` int DEFAULT NULL,\n `hyrlsgadnmxexunoayddvlwxjdjgkljw` int DEFAULT NULL,\n `iotrbkzmcxlcnivckyctugoqzadezcod` int DEFAULT NULL,\n `cofyutruypmmvgkjvmltckuqiduddwky` int DEFAULT NULL,\n `hfdzanskkqokbwzsxwhsvwzalpwtzzvi` int DEFAULT NULL,\n `mhwcgxklcowtulcnvqoyyntqgivmytqa` int DEFAULT NULL,\n `nezwkkmcpahzkrfezwcwzmbxxhkhbrgw` int DEFAULT NULL,\n `ococwtqdeepsmmijycpqpvvzpdethlxg` int DEFAULT NULL,\n `opxdismgrkqkgdvkfewmutfsehtvsbqj` int DEFAULT NULL,\n `wueldprufzuinstjntsyrqqoogchogfw` int DEFAULT NULL,\n `qhxcjvcuqyoiluqzjsswemubnjytcxwj` int DEFAULT NULL,\n `awudffkygddbcbaaoyolbmhwskskvcan` int DEFAULT NULL,\n `bfaimkeznetbxooyvzlkcwrtkcqdgiaj` int DEFAULT NULL,\n `tbokkxikhsthiwkixiblstqxfjlvayfx` int DEFAULT NULL,\n `icolsefjnlfsdhnfmrsfotufdzeuwsna` int DEFAULT NULL,\n `ietftygslxuaivqnmwoklzvbbqsoqayl` int DEFAULT NULL,\n `chjsmimxdrjnfytvkwftcguiiyaajuwu` int DEFAULT NULL,\n `kuqumajgkdnadglvqltsrkvdubrkfwky` int DEFAULT NULL,\n `zkbwuryacxkrizunwvwsmwgsxjjsjpqu` int DEFAULT NULL,\n `dgzwicguinwguqjrpilwpoilizyaqete` int DEFAULT NULL,\n `rxbsylkorjxsascslqgzjeqbqjfasfrn` int DEFAULT NULL,\n `yeuzoetdpwypeblyrxoaiyahkvppjfib` int DEFAULT NULL,\n `yjyfhlfrqwxzpjbxjxvckumayefsnfwy` int DEFAULT NULL,\n `snhsfxzetypbisswszroizfezgcybbsx` int DEFAULT NULL,\n `ffwqqutmtjtxslfkpaiqeqnunwypyuec` int DEFAULT NULL,\n `vdsfvsoxcuubhxydnhtkzkmhmseeyfqs` int DEFAULT NULL,\n `svjlfmfsshvzczakvebccuzjocbhgiqw` int DEFAULT NULL,\n `boxfjrfkqxcvtbrixyuykuvyffwmvxoq` int DEFAULT NULL,\n `nfdffjqpcgufeeszfslgjuhownxzyfkn` int DEFAULT NULL,\n `hlsmydxoianyejpalntwrzjmchlbqvgl` int DEFAULT NULL,\n `ywgndenoxxtpqwtzazcojtyoqqjegyns` int DEFAULT NULL,\n `utapevqvjuyrftcnmectophvqaykirqp` int DEFAULT NULL,\n `vwhnxaewldatswebjxpvepjobrcylcnl` int DEFAULT NULL,\n `jylbzmaijqugyvjviklffrvzxbmcvkax` int DEFAULT NULL,\n `hgixewdjaphwltxkzbjstaymixenaxml` int DEFAULT NULL,\n `vnhaitlihitzbreithshuyiscyylqkxb` int DEFAULT NULL,\n `ghfrhdkkmenyxmkpsewcattvawxdmsfr` int DEFAULT NULL,\n `imaezkgpsdudeaszayzwqswgxcgxapdi` int DEFAULT NULL,\n `ewmfyfisebfitzscyftywrnfhlmeehpr` int DEFAULT NULL,\n `ufznwlhdjkdawrumiladsyavrjzupxuc` int DEFAULT NULL,\n PRIMARY KEY (`jqruxhwpoxoxyebdozgwghjudbpldvgy`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"tixcpagetyojezbmkaeetpemukblcpsr\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["jqruxhwpoxoxyebdozgwghjudbpldvgy"],"columns":[{"name":"jqruxhwpoxoxyebdozgwghjudbpldvgy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"pmwvzxgstpaunqbryridioqamatrifvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbplbnssdcqjwsiniiyhrvbmgatqkphc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nucojgxelmnmnqceqbtcenerjzqmtksr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypqkvbwrqlwrwzllhxyyzeiqdyidpdxa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqkrieebwietonwefqkdluotxvcaolla","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkryilvasxsjtdwmnjodgdnldlwlolzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdybqpsrfxzzyxipiwvtzqphmvzejpbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urrdxeuzlxwuurxsxqbrgdrsxlerncak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hecmizwfcicumoylteiokzndmoiimxev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqulqmisdrqurtkcmktvyalfjjivtars","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dmyrgokvkpuqghfttrntqgtoavzpbdfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnjjlrtwxpcmaugnrofhngubsoohzhag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njxdlxtlnmvnlfitsnnapjgolfmpyghr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zrnkawplksducwcjxxwtsjdieeplgoej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgjukpqudcaxfoxtbrugzifpgukqlqmv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fvfuadueyhcwtwtgxhldgfrdmguwtiiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jbbsruqssskwbnvddhmecoymsguduidb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ttnyputdsqrutjiiuotsobihksocjcsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jzqcnrwgixtkawvuyobuvkrtqybgzrzp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtrgpqsqjepvkebdhssgknqglcnbqjim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hindbagiyohudqiexzokkgjneblcnqtn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujtkpduhtpdupesjpqjrhmvikkwkmfrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qoghzrpxdoirbtyqkqwyjuwpdzzunufm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcniqygsysqyaawauytozdwqaoegsnvj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otcwbqcspabouxtakaeexanxddtldydz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ouunvdjqrjseqaoaycauwndkrzggnlcd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhwiuckxrebambyybitxthtlihbpdgan","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xaylnymrocjkflotwscixtkjamdbfahy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omanfpdyozrbzhofykqxnjrwwidqhqah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yalfsvoqcmpylkqzppdviakkhyxmejqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exxygiklogbvqxjmuqycpklhcxdkcdnq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xndeijjxvswqlzefdfgfbmpedafnmvbj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drnpyoctwhjnlabfempajolgseralzau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jpwfttzksuhmfnevveqmpvnlhyobzypv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mgovyhgibeeszpwcwvdggqligsjuawww","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sebqodfcnufpacorlmvoagomfimuxdzq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gixwfxittbbswwghsdrnepllxojghabn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlvscqrrtwwiavacwduzmxragwcwepuf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xtkobrovvjpvzwvrnrileeeeesqlahyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mgywzfuhlrhifpounupvotmuibrtdgqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ltdwdnyxnotbeyawebghabkqyitizgba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjzpobtbwgmxjfwymmxcfvwtbllhulzi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tehigersujrejatwcfdazofuhkpvdyrs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knojeyacamyxbhrfrtxdtqvesshjrvzq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hspdddyksnpeoynpssaoqcacsqbdbsjf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wlbrmehwqjueijiulgaodincewgwuyqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wyltqtobvlerphyzzgghxtsnakbcmave","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqqmjwviuqkgkujrlahhjxvkjaybinec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wivkflonzioknosggiyjpyosixohmdmi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdjygkrtsbnltckeswmhphqflkhaycff","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jintepbfqtqosaeaghhdthrksgusgmsq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpcatjutarysvzdqxnqxjubosqmauzdv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkxtcmmvgkfqglhehcaeyltxucymzswu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rvmnzdttwyfknznmhnklesxkpkvewvte","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wgxpkxnxvfdsnicimlpapxwtswvfxqyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hygnyuvzqwnpknnugjsjdqiyqmpvqyfi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqxsgncnnewamepumlmcawxqytbvjzmi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mobmhyimfttmxphxdivsojlhrgvsxewu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hzhxqhasqzezqggdzvbioukdmkogtcyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"daclfspbqvsdwvlhlplhvwelozgpwxof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hyrlsgadnmxexunoayddvlwxjdjgkljw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iotrbkzmcxlcnivckyctugoqzadezcod","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cofyutruypmmvgkjvmltckuqiduddwky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfdzanskkqokbwzsxwhsvwzalpwtzzvi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhwcgxklcowtulcnvqoyyntqgivmytqa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nezwkkmcpahzkrfezwcwzmbxxhkhbrgw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ococwtqdeepsmmijycpqpvvzpdethlxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opxdismgrkqkgdvkfewmutfsehtvsbqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wueldprufzuinstjntsyrqqoogchogfw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhxcjvcuqyoiluqzjsswemubnjytcxwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awudffkygddbcbaaoyolbmhwskskvcan","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bfaimkeznetbxooyvzlkcwrtkcqdgiaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbokkxikhsthiwkixiblstqxfjlvayfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icolsefjnlfsdhnfmrsfotufdzeuwsna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ietftygslxuaivqnmwoklzvbbqsoqayl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"chjsmimxdrjnfytvkwftcguiiyaajuwu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kuqumajgkdnadglvqltsrkvdubrkfwky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zkbwuryacxkrizunwvwsmwgsxjjsjpqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgzwicguinwguqjrpilwpoilizyaqete","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxbsylkorjxsascslqgzjeqbqjfasfrn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yeuzoetdpwypeblyrxoaiyahkvppjfib","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjyfhlfrqwxzpjbxjxvckumayefsnfwy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"snhsfxzetypbisswszroizfezgcybbsx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffwqqutmtjtxslfkpaiqeqnunwypyuec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdsfvsoxcuubhxydnhtkzkmhmseeyfqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"svjlfmfsshvzczakvebccuzjocbhgiqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"boxfjrfkqxcvtbrixyuykuvyffwmvxoq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfdffjqpcgufeeszfslgjuhownxzyfkn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlsmydxoianyejpalntwrzjmchlbqvgl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywgndenoxxtpqwtzazcojtyoqqjegyns","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utapevqvjuyrftcnmectophvqaykirqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vwhnxaewldatswebjxpvepjobrcylcnl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jylbzmaijqugyvjviklffrvzxbmcvkax","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hgixewdjaphwltxkzbjstaymixenaxml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vnhaitlihitzbreithshuyiscyylqkxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghfrhdkkmenyxmkpsewcattvawxdmsfr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"imaezkgpsdudeaszayzwqswgxcgxapdi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ewmfyfisebfitzscyftywrnfhlmeehpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ufznwlhdjkdawrumiladsyavrjzupxuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671483,"databaseName":"models_schema","ddl":"CREATE TABLE `tktrwfqkbwagctiwqbgzfdyjkzxqxrnt` (\n `hjzjrtgfehfrnyvwypipnxqjxhdqluim` int NOT NULL,\n `lovcgfqzgabybxfbgibjpvzbdqjozyko` int DEFAULT NULL,\n `senddobufkwdceetfdvpakeiydryhdsl` int DEFAULT NULL,\n `bjkvkpzmokgrmswlcgqrmqehhptfnqll` int DEFAULT NULL,\n `ixgmbowbeuukomzlyoydkwndpmdsyepe` int DEFAULT NULL,\n `wnfjsefmxxjebwywdqfgdpfqicvfrhsn` int DEFAULT NULL,\n `mltesqkxdeejzgksrcjyqubbsttomdak` int DEFAULT NULL,\n `mmzltexxixoyauoqnsqilruemcgmsnua` int DEFAULT NULL,\n `yrfithqlcczwxksazyycsqvhbfyubqly` int DEFAULT NULL,\n `dutwcstyanwuagftunfstaswrorzmqyy` int DEFAULT NULL,\n `wgferknhhpuveyvevorlcfgslgpuofmz` int DEFAULT NULL,\n `xfwfbjbsgvrjpnfaealarkuxlplnjfra` int DEFAULT NULL,\n `blmuixytsgwftqxdoqlishuflaasuwgb` int DEFAULT NULL,\n `epvvekobbjadnecsopxdqgrrxsrdyqsy` int DEFAULT NULL,\n `vzicygscovzpgaxnykiiefcnjydupsbb` int DEFAULT NULL,\n `nykrdfqjrpvdormvcgatwpxtxxzvqdmb` int DEFAULT NULL,\n `vgusixghdexeownyltyvumbykhuxvsnm` int DEFAULT NULL,\n `pyizixlvesaochoxnycbfyofkoikvjfg` int DEFAULT NULL,\n `dlkkvfenbjenqofgmawsmmaglespjqmi` int DEFAULT NULL,\n `poldergqwsxiguhxmyuywklbynwrjstf` int DEFAULT NULL,\n `giqutnagxcwfolrbkrnxzursrzzuahtq` int DEFAULT NULL,\n `igellwnxunsoyhqlysnluluduqbjlbqo` int DEFAULT NULL,\n `omidwlwviaewswdrxausronhysdvexok` int DEFAULT NULL,\n `nnwwbrosoootkiofydwbekfmnfbrytjs` int DEFAULT NULL,\n `exrmqugnoaoiyileudjzkgdsbeeucfpp` int DEFAULT NULL,\n `wbnxdgkbnyxgswfvkfidqsvddejniqxa` int DEFAULT NULL,\n `bqgkxbcihjwjdugbxrhtjjvttgfdnhnm` int DEFAULT NULL,\n `vslckltbpohvnalnpuujgpabiogmxtnf` int DEFAULT NULL,\n `gutgkmcduwjxfrihngqnmmukvfsefvcm` int DEFAULT NULL,\n `liszzffffbgjltyadoknifvmmwemknam` int DEFAULT NULL,\n `uoomefqlzrihuemfmcjsuoetbtfgvgln` int DEFAULT NULL,\n `vhmmivtgjyitgbhirrlipmjivncmgyoo` int DEFAULT NULL,\n `qmghvrnbiphtkfbdqvoditijwrwzbbxq` int DEFAULT NULL,\n `xyvuyyyywjtlqpfkesyhvaummgpqaskd` int DEFAULT NULL,\n `jfthvfbhufqkpdgwcatavggeymqiziqw` int DEFAULT NULL,\n `yxyujccckirkcgymfpxdxgykwkibwxxz` int DEFAULT NULL,\n `pjhwliilpblykmasyeggvmmqgjbivewn` int DEFAULT NULL,\n `swnbsprxsrkjifayarhceyzzsgfuzcwe` int DEFAULT NULL,\n `dwqzdfbdpyrnhxzjpjjrictttxbcotwg` int DEFAULT NULL,\n `foxctpmzlpppcewvvmovviydlpifoohm` int DEFAULT NULL,\n `jqthtvgdiemcpljjxsgjawdxgcttnust` int DEFAULT NULL,\n `iqqcbjzpnysnqjdymqnhrnykmnyhmrwb` int DEFAULT NULL,\n `czfoogolobdemetwkohjfasqiyigzpdx` int DEFAULT NULL,\n `vmbfxwklurifluvmsojqsoqbkoypnxas` int DEFAULT NULL,\n `txdgeegmkmmopqirbuxafbrjhykpekql` int DEFAULT NULL,\n `ouixjaybjtkfeenlawjotfzqxjyvjlwb` int DEFAULT NULL,\n `xtcyureygkqdlizipnudvilyhbziolyb` int DEFAULT NULL,\n `inwivbopasspusykygxubddjfduyuddd` int DEFAULT NULL,\n `cwwztulkgoepxdtiqjuirhzvwztfzblu` int DEFAULT NULL,\n `jauqpkngvijctiwcezfjnfkboelpqwef` int DEFAULT NULL,\n `xoublbvdicddzvhpzulfzlyqzopipsbk` int DEFAULT NULL,\n `rtofqwtgyloetdkndjpyltydmhgfwktx` int DEFAULT NULL,\n `sdidebpedsmgnbzyzxrcexpinclcqgee` int DEFAULT NULL,\n `hgjlkqedacqozvxuhddimicocgcdwbtd` int DEFAULT NULL,\n `nbbynbtgwoaugsyhyttdhlufmpbevvzl` int DEFAULT NULL,\n `vybwrfzebpvlplmbqybopwgihdsmskif` int DEFAULT NULL,\n `ofvigfmpefqowimuayjeajcjbfengxbe` int DEFAULT NULL,\n `qxjskaevpmvzbqyqbduxojntdupzqhqr` int DEFAULT NULL,\n `zzujnetkaudixcndkevauxycedrlyisi` int DEFAULT NULL,\n `ejwmcgnfvqmktlcxtdqozurtsnwtuoyu` int DEFAULT NULL,\n `dfksrdujagtoufotdusuaheyweoqgyny` int DEFAULT NULL,\n `afkkwnsqmjdianwryzejpizxgggombov` int DEFAULT NULL,\n `xbbvxbmqblmmiikzrkuhaiziglfyfmyi` int DEFAULT NULL,\n `yzwfaoykkrhaisfykryovjytwxppbpxi` int DEFAULT NULL,\n `vdkzglsnqubpiqnuappmivqobtbciwqg` int DEFAULT NULL,\n `spsnnadppcmiwtoaaykibqfamrbblrch` int DEFAULT NULL,\n `rfpnfncuimhtbkvnngdatnpiytzsbhxs` int DEFAULT NULL,\n `wamjugldcnuqwoscehpbbmzguzmybqae` int DEFAULT NULL,\n `wdhhyqzxzpiyrbiqrgpwtzghizmltrul` int DEFAULT NULL,\n `rcjqfsfeballpdyambbmiykyzsqshdaw` int DEFAULT NULL,\n `vptjdbevgihvbeloycfrauiknunycmyv` int DEFAULT NULL,\n `ewyzuxqtdxuqkmygxtssidwjacuykdlw` int DEFAULT NULL,\n `bslvjablztsmpsmzruphkenhqrbrctoo` int DEFAULT NULL,\n `viczyizbcturwmfyrxdjzpnmicovtaaw` int DEFAULT NULL,\n `haybzgwneuncssyvifmrkqlwjbumhcbx` int DEFAULT NULL,\n `olvgttwgqsjqmrxuxfsziblelyearhfe` int DEFAULT NULL,\n `wzbzjosvmspozbhwbdhdynfqbjvecyfs` int DEFAULT NULL,\n `ybirfuhshregdidsuowjfpeywgmibjid` int DEFAULT NULL,\n `akbnfbssgxdfilzagtldnbjgqtkwuwza` int DEFAULT NULL,\n `vzchmifuckflabfqksjsbhjswqpohyly` int DEFAULT NULL,\n `tjgeruqtsezlmvvyxnfylbzitggokrax` int DEFAULT NULL,\n `bgznfoyvcsrfufizfjbuyepdzcredvru` int DEFAULT NULL,\n `rgquahuvpcrdnkueutuaumiohgbgyvvl` int DEFAULT NULL,\n `hvxxkdaxgpxkbozyqnyiaamtkastzdxx` int DEFAULT NULL,\n `bgnkygpnazvcghyelynnmueweutzczhs` int DEFAULT NULL,\n `supnzaswdgpwwiboldcswwscqrfvmclz` int DEFAULT NULL,\n `nkhwrxkogrnxluvkwsroocwvhcgtjieo` int DEFAULT NULL,\n `dzzikecbuuxuefsuxtzmqyriphghondt` int DEFAULT NULL,\n `iowslnamyqlobudtugkhsxhmangjfyft` int DEFAULT NULL,\n `nagnpdbaqgdhrwlplextoxuqgowzhfeq` int DEFAULT NULL,\n `xhectesihnycvmlheepdmnosvvhjsjmo` int DEFAULT NULL,\n `yneadkzaskiuottkxhixgkakqudhiyol` int DEFAULT NULL,\n `cujflytzlqustlkmpxennzsfcuyihioo` int DEFAULT NULL,\n `cqyqslkqejuwzftidkqfutkitvatkhei` int DEFAULT NULL,\n `njnhujrlyzeesousekhujzyjacqedyzn` int DEFAULT NULL,\n `eqmbqiaklmcdiczvjmwnauczzgancaji` int DEFAULT NULL,\n `snxqtfifyfrrvbirlgafpkjsnloojvbo` int DEFAULT NULL,\n `tnavxaynknkueaavjmxftuiarmhhxyrr` int DEFAULT NULL,\n `ahvnpaascxazlsvdzvxjfzrvtlvamhzw` int DEFAULT NULL,\n `esfzthsmcreotgofdfrxebysthhwveim` int DEFAULT NULL,\n PRIMARY KEY (`hjzjrtgfehfrnyvwypipnxqjxhdqluim`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"tktrwfqkbwagctiwqbgzfdyjkzxqxrnt\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["hjzjrtgfehfrnyvwypipnxqjxhdqluim"],"columns":[{"name":"hjzjrtgfehfrnyvwypipnxqjxhdqluim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"lovcgfqzgabybxfbgibjpvzbdqjozyko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"senddobufkwdceetfdvpakeiydryhdsl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjkvkpzmokgrmswlcgqrmqehhptfnqll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixgmbowbeuukomzlyoydkwndpmdsyepe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnfjsefmxxjebwywdqfgdpfqicvfrhsn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mltesqkxdeejzgksrcjyqubbsttomdak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmzltexxixoyauoqnsqilruemcgmsnua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yrfithqlcczwxksazyycsqvhbfyubqly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dutwcstyanwuagftunfstaswrorzmqyy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wgferknhhpuveyvevorlcfgslgpuofmz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xfwfbjbsgvrjpnfaealarkuxlplnjfra","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blmuixytsgwftqxdoqlishuflaasuwgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"epvvekobbjadnecsopxdqgrrxsrdyqsy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vzicygscovzpgaxnykiiefcnjydupsbb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nykrdfqjrpvdormvcgatwpxtxxzvqdmb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgusixghdexeownyltyvumbykhuxvsnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pyizixlvesaochoxnycbfyofkoikvjfg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dlkkvfenbjenqofgmawsmmaglespjqmi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"poldergqwsxiguhxmyuywklbynwrjstf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"giqutnagxcwfolrbkrnxzursrzzuahtq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igellwnxunsoyhqlysnluluduqbjlbqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omidwlwviaewswdrxausronhysdvexok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nnwwbrosoootkiofydwbekfmnfbrytjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exrmqugnoaoiyileudjzkgdsbeeucfpp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbnxdgkbnyxgswfvkfidqsvddejniqxa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqgkxbcihjwjdugbxrhtjjvttgfdnhnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vslckltbpohvnalnpuujgpabiogmxtnf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gutgkmcduwjxfrihngqnmmukvfsefvcm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"liszzffffbgjltyadoknifvmmwemknam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uoomefqlzrihuemfmcjsuoetbtfgvgln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhmmivtgjyitgbhirrlipmjivncmgyoo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmghvrnbiphtkfbdqvoditijwrwzbbxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyvuyyyywjtlqpfkesyhvaummgpqaskd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jfthvfbhufqkpdgwcatavggeymqiziqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxyujccckirkcgymfpxdxgykwkibwxxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjhwliilpblykmasyeggvmmqgjbivewn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swnbsprxsrkjifayarhceyzzsgfuzcwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwqzdfbdpyrnhxzjpjjrictttxbcotwg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"foxctpmzlpppcewvvmovviydlpifoohm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jqthtvgdiemcpljjxsgjawdxgcttnust","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqqcbjzpnysnqjdymqnhrnykmnyhmrwb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"czfoogolobdemetwkohjfasqiyigzpdx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vmbfxwklurifluvmsojqsoqbkoypnxas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txdgeegmkmmopqirbuxafbrjhykpekql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ouixjaybjtkfeenlawjotfzqxjyvjlwb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xtcyureygkqdlizipnudvilyhbziolyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"inwivbopasspusykygxubddjfduyuddd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwwztulkgoepxdtiqjuirhzvwztfzblu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jauqpkngvijctiwcezfjnfkboelpqwef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xoublbvdicddzvhpzulfzlyqzopipsbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rtofqwtgyloetdkndjpyltydmhgfwktx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdidebpedsmgnbzyzxrcexpinclcqgee","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hgjlkqedacqozvxuhddimicocgcdwbtd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbbynbtgwoaugsyhyttdhlufmpbevvzl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vybwrfzebpvlplmbqybopwgihdsmskif","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofvigfmpefqowimuayjeajcjbfengxbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxjskaevpmvzbqyqbduxojntdupzqhqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzujnetkaudixcndkevauxycedrlyisi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejwmcgnfvqmktlcxtdqozurtsnwtuoyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dfksrdujagtoufotdusuaheyweoqgyny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afkkwnsqmjdianwryzejpizxgggombov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbbvxbmqblmmiikzrkuhaiziglfyfmyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzwfaoykkrhaisfykryovjytwxppbpxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdkzglsnqubpiqnuappmivqobtbciwqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"spsnnadppcmiwtoaaykibqfamrbblrch","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfpnfncuimhtbkvnngdatnpiytzsbhxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wamjugldcnuqwoscehpbbmzguzmybqae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wdhhyqzxzpiyrbiqrgpwtzghizmltrul","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcjqfsfeballpdyambbmiykyzsqshdaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vptjdbevgihvbeloycfrauiknunycmyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ewyzuxqtdxuqkmygxtssidwjacuykdlw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bslvjablztsmpsmzruphkenhqrbrctoo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"viczyizbcturwmfyrxdjzpnmicovtaaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"haybzgwneuncssyvifmrkqlwjbumhcbx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"olvgttwgqsjqmrxuxfsziblelyearhfe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzbzjosvmspozbhwbdhdynfqbjvecyfs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ybirfuhshregdidsuowjfpeywgmibjid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akbnfbssgxdfilzagtldnbjgqtkwuwza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vzchmifuckflabfqksjsbhjswqpohyly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjgeruqtsezlmvvyxnfylbzitggokrax","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bgznfoyvcsrfufizfjbuyepdzcredvru","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgquahuvpcrdnkueutuaumiohgbgyvvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hvxxkdaxgpxkbozyqnyiaamtkastzdxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bgnkygpnazvcghyelynnmueweutzczhs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"supnzaswdgpwwiboldcswwscqrfvmclz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nkhwrxkogrnxluvkwsroocwvhcgtjieo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dzzikecbuuxuefsuxtzmqyriphghondt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iowslnamyqlobudtugkhsxhmangjfyft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nagnpdbaqgdhrwlplextoxuqgowzhfeq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xhectesihnycvmlheepdmnosvvhjsjmo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yneadkzaskiuottkxhixgkakqudhiyol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cujflytzlqustlkmpxennzsfcuyihioo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqyqslkqejuwzftidkqfutkitvatkhei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njnhujrlyzeesousekhujzyjacqedyzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqmbqiaklmcdiczvjmwnauczzgancaji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"snxqtfifyfrrvbirlgafpkjsnloojvbo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnavxaynknkueaavjmxftuiarmhhxyrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ahvnpaascxazlsvdzvxjfzrvtlvamhzw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"esfzthsmcreotgofdfrxebysthhwveim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671513,"databaseName":"models_schema","ddl":"CREATE TABLE `tlawbzmwhcjjoudhkxvxmsfrdeygughc` (\n `ztrhbcxcjoedtfrykjakfwewdyewqvlg` int NOT NULL,\n `ozrmxqxvlpzypnpabybibvisjnkalwax` int DEFAULT NULL,\n `letuvyaxylsqbdscflgqgcoqclwvukew` int DEFAULT NULL,\n `qwlquhszxygyrwtiwzamtxxwjjmflzmo` int DEFAULT NULL,\n `goqouxbmjdtpquyrkcsvbqdxmqmysoyg` int DEFAULT NULL,\n `scbkijmewcdpretzzmopydhwruwyekmt` int DEFAULT NULL,\n `sykmfekhrembaoqfjncqazzkjgdipbnw` int DEFAULT NULL,\n `zyuillyijdpprehreijlmqfbbailxsoj` int DEFAULT NULL,\n `gmxbuotbvzfqvqczcnooyqwsvtbhxtfa` int DEFAULT NULL,\n `hmqxnorxrmrqveezenamdxrhgtqkolri` int DEFAULT NULL,\n `wzzthjihcoqalmyvktyasixtqeuzmgcq` int DEFAULT NULL,\n `gqrjetmeygytqzbpfuumkhoboutrrlsz` int DEFAULT NULL,\n `eyqvvjigtbbqkihvwhkydrhsyuwivcyz` int DEFAULT NULL,\n `fnyegexyvgxtxtupxtcrjdnmvabxdktv` int DEFAULT NULL,\n `jkkkwndewuzlmhzcbbjwzbkzuhxqngbu` int DEFAULT NULL,\n `vxmimhytmggkbcdvcfyrxpsvjjshorbb` int DEFAULT NULL,\n `vrsrgadlvodzahhsnoyhvtpkxvivwkdr` int DEFAULT NULL,\n `iydqaimulcossipftawikkepebxouhxf` int DEFAULT NULL,\n `vndbntfbbzrxvqwjxfhbgrbdttwkioca` int DEFAULT NULL,\n `cqoruwahdlzdlnorbflgyjixnsbdqybr` int DEFAULT NULL,\n `kpcwzxdykkmkroigyiheukexiscucucz` int DEFAULT NULL,\n `wyvezxrpqweilaqbiamgklaobnblyaqh` int DEFAULT NULL,\n `zhnvpsugzfqchprisffhdoxkmagwbxud` int DEFAULT NULL,\n `lybgiztujjgcbdqqlwqryzpsaxpgaybb` int DEFAULT NULL,\n `fbdfzxwtqlobozscnjdeatzcmjfchxhi` int DEFAULT NULL,\n `xmlrdygodrfjhlmvnyngpuezmfmplrif` int DEFAULT NULL,\n `hruolmojnwrtgevmmqkhaaqugqesqykr` int DEFAULT NULL,\n `htkrjsogyanlicwivzwtzuqdhjwpfocd` int DEFAULT NULL,\n `jofjcxqkwvdujvhbrrgsgogyijgnbfny` int DEFAULT NULL,\n `zezbojdhfzrlfiqsqvqcxskhavotpjtl` int DEFAULT NULL,\n `nptpqhpsbkgbhgkmovdwejhaiithpqrn` int DEFAULT NULL,\n `ijvnlyfrluyozdwuhaszyozrvvukslih` int DEFAULT NULL,\n `kvmfsxjpzhitkhevtehdpaurikcgrzjd` int DEFAULT NULL,\n `diwzdadsykcvluadktsuumgvngwwujgt` int DEFAULT NULL,\n `pfwlkhtbecufxeodaecoprskowhdmbas` int DEFAULT NULL,\n `kvlwdnqjxaohxhzccszsnkdroxwvbhrr` int DEFAULT NULL,\n `kzezhtbzlpasceronnoyzpyoivlbjjjs` int DEFAULT NULL,\n `kdriuhaeeqtnjyjtgmudsxefniruxjut` int DEFAULT NULL,\n `vpupgushxunugxjhgyuzcydrtrlhvixv` int DEFAULT NULL,\n `lhpntmaqcjkuoabeilgmnicfzvimzapr` int DEFAULT NULL,\n `wwnnaxzkzonhistngemsyghlggmkikco` int DEFAULT NULL,\n `ordrtjgawwpdrqpvdghrptkowueagrgi` int DEFAULT NULL,\n `uofbhbghdtiltrytujbadybrpivnmyec` int DEFAULT NULL,\n `ucpapldecbarrtagdzrbeouzlfgboags` int DEFAULT NULL,\n `wlmdgfduljbanqjxlpfjrajwhykxquxy` int DEFAULT NULL,\n `zvmcixwfgpgfgopexxosfhhkvdjyqfll` int DEFAULT NULL,\n `nzuokkdmqyfcfekmqfmhrxljalxgsxhc` int DEFAULT NULL,\n `abxqaoodcdftvzbecestdprysrvvqnvl` int DEFAULT NULL,\n `vueiaugvhfohhgxoqeylxdvznlesmxtc` int DEFAULT NULL,\n `ykrjcsexsmjiqcksaqtixgwvkygjpuze` int DEFAULT NULL,\n `fcytkwohumyrblrsyjwbbobkiryphelw` int DEFAULT NULL,\n `vqlchcbfmwdlvudocqrmffvywioalkxu` int DEFAULT NULL,\n `atqwqxzdxftelgkktneayqmsautdblcv` int DEFAULT NULL,\n `jzaindfhpwwyvkvgsvsqiufgqjquzqna` int DEFAULT NULL,\n `hkvxhvlsddelxwtbscyanrfwtykdrfrr` int DEFAULT NULL,\n `uikxqwtnmwybaztuncopdkcfkawlpxjk` int DEFAULT NULL,\n `pajxyktdvmjhnaalmvnockahvxlkogvo` int DEFAULT NULL,\n `ocgmtfjsilbngjhgyqcnzkyjgcdxvkgn` int DEFAULT NULL,\n `cjrhztoqzcykhcwqstuggygydudttohf` int DEFAULT NULL,\n `rksnelegfjgwumskgltrnzuklxlbiwqj` int DEFAULT NULL,\n `qcfsyfgrvhwlmiaiwzgscsythbkmbymc` int DEFAULT NULL,\n `isvoxpuvdgvzvkdfqgmtqxyvkcqiukmx` int DEFAULT NULL,\n `brjyvsoqclbykakbyfyftibarmtyhifn` int DEFAULT NULL,\n `ooebgmmllpauukqvglitifjkvpwcxesb` int DEFAULT NULL,\n `ctbsvjnhxuphgssjniyifwoslncduhvz` int DEFAULT NULL,\n `veuvippfanwfueoqqadxorzxpjzkrycw` int DEFAULT NULL,\n `jecallfmukfujbqjhpsmmoxkkcladprc` int DEFAULT NULL,\n `qgjesvfnhmnieohftpredyrokjvxwxby` int DEFAULT NULL,\n `vqlkyjvbmiaqwfvcwmvrazyfuhlswteu` int DEFAULT NULL,\n `sirkynnnngtfjtowpuwvkslsvogyfxsk` int DEFAULT NULL,\n `shxuvtunljvaezplizbpjmwffyqyhiaf` int DEFAULT NULL,\n `xwkwlpzyhbnhjuzslrbiyvbydmxuuszq` int DEFAULT NULL,\n `yhzwatkaskysbmahveyfmcprukrpzrqn` int DEFAULT NULL,\n `zumlskopjriuksobqmdxvzeoeejfikmx` int DEFAULT NULL,\n `ghzyddthmekynrasadukadpepufwlogm` int DEFAULT NULL,\n `snvnsdaaokseavavhfmkiyiemrfvodrr` int DEFAULT NULL,\n `fzautemrqwjhdafpsqnfhpluirdfphfj` int DEFAULT NULL,\n `sigtmzttzmiqeviiqssrxvzcemwkctho` int DEFAULT NULL,\n `udcepbediygjdoyakxpictpydqizwxvr` int DEFAULT NULL,\n `xsfgtgvcjysmtnnnuteqqljmzymuhawi` int DEFAULT NULL,\n `tqrwssvmsbfgrtrlixwgyahhufljnedx` int DEFAULT NULL,\n `xovmdfcvrkgparnyetjjwuuoflkggppk` int DEFAULT NULL,\n `odkiefxlyjxdldgebnanlebfwszodmmi` int DEFAULT NULL,\n `dpymeblgyhvqqarukjzivnpqxhykiyhw` int DEFAULT NULL,\n `wltthgimdrpgdhphxyrmszeemjiwvckw` int DEFAULT NULL,\n `nunrckdktbkwedrtuzkgdwumaojksexr` int DEFAULT NULL,\n `jvqfavfhdefeizxhlgslmyjgcnsalhqp` int DEFAULT NULL,\n `weabtuedvicxzimbfblgwnvhbrcwsxma` int DEFAULT NULL,\n `iofqpcseczwmxgydarhxizcdtkyryawl` int DEFAULT NULL,\n `xctxqnuftebiqelwajhuimuesqiqyqrp` int DEFAULT NULL,\n `mdpxchkiosokepcfzyuhxwylcnujuypd` int DEFAULT NULL,\n `cmofnpsjgyydjfvkfbulrilkxvcwnevt` int DEFAULT NULL,\n `uhxhbgciupsljbqlthbyvcrinpzyhqse` int DEFAULT NULL,\n `vwxkmkgouomclmnzcpeacchgrcuzhrdr` int DEFAULT NULL,\n `ijvjhjnzymwjfjnskmuioitxymaqunhv` int DEFAULT NULL,\n `gjlyqujfobzimdrvztpakkfcgrccgika` int DEFAULT NULL,\n `pojokhmtpwhvdolxzavqjvivfqocfkqs` int DEFAULT NULL,\n `fmbrrufqvypwdufluwxloetpyznsonxa` int DEFAULT NULL,\n `ofqxvkpmzluuspeahrircunumcvrkqwj` int DEFAULT NULL,\n `nvhurvcvqcgcktdlmwhihkykrnaakjhe` int DEFAULT NULL,\n PRIMARY KEY (`ztrhbcxcjoedtfrykjakfwewdyewqvlg`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"tlawbzmwhcjjoudhkxvxmsfrdeygughc\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["ztrhbcxcjoedtfrykjakfwewdyewqvlg"],"columns":[{"name":"ztrhbcxcjoedtfrykjakfwewdyewqvlg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"ozrmxqxvlpzypnpabybibvisjnkalwax","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"letuvyaxylsqbdscflgqgcoqclwvukew","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwlquhszxygyrwtiwzamtxxwjjmflzmo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"goqouxbmjdtpquyrkcsvbqdxmqmysoyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"scbkijmewcdpretzzmopydhwruwyekmt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sykmfekhrembaoqfjncqazzkjgdipbnw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zyuillyijdpprehreijlmqfbbailxsoj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmxbuotbvzfqvqczcnooyqwsvtbhxtfa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmqxnorxrmrqveezenamdxrhgtqkolri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzzthjihcoqalmyvktyasixtqeuzmgcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqrjetmeygytqzbpfuumkhoboutrrlsz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eyqvvjigtbbqkihvwhkydrhsyuwivcyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnyegexyvgxtxtupxtcrjdnmvabxdktv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jkkkwndewuzlmhzcbbjwzbkzuhxqngbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxmimhytmggkbcdvcfyrxpsvjjshorbb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vrsrgadlvodzahhsnoyhvtpkxvivwkdr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iydqaimulcossipftawikkepebxouhxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vndbntfbbzrxvqwjxfhbgrbdttwkioca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqoruwahdlzdlnorbflgyjixnsbdqybr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kpcwzxdykkmkroigyiheukexiscucucz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wyvezxrpqweilaqbiamgklaobnblyaqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhnvpsugzfqchprisffhdoxkmagwbxud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lybgiztujjgcbdqqlwqryzpsaxpgaybb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbdfzxwtqlobozscnjdeatzcmjfchxhi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xmlrdygodrfjhlmvnyngpuezmfmplrif","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hruolmojnwrtgevmmqkhaaqugqesqykr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"htkrjsogyanlicwivzwtzuqdhjwpfocd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jofjcxqkwvdujvhbrrgsgogyijgnbfny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zezbojdhfzrlfiqsqvqcxskhavotpjtl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nptpqhpsbkgbhgkmovdwejhaiithpqrn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijvnlyfrluyozdwuhaszyozrvvukslih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvmfsxjpzhitkhevtehdpaurikcgrzjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"diwzdadsykcvluadktsuumgvngwwujgt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pfwlkhtbecufxeodaecoprskowhdmbas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvlwdnqjxaohxhzccszsnkdroxwvbhrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzezhtbzlpasceronnoyzpyoivlbjjjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kdriuhaeeqtnjyjtgmudsxefniruxjut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpupgushxunugxjhgyuzcydrtrlhvixv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhpntmaqcjkuoabeilgmnicfzvimzapr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwnnaxzkzonhistngemsyghlggmkikco","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ordrtjgawwpdrqpvdghrptkowueagrgi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uofbhbghdtiltrytujbadybrpivnmyec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ucpapldecbarrtagdzrbeouzlfgboags","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wlmdgfduljbanqjxlpfjrajwhykxquxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvmcixwfgpgfgopexxosfhhkvdjyqfll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzuokkdmqyfcfekmqfmhrxljalxgsxhc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"abxqaoodcdftvzbecestdprysrvvqnvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vueiaugvhfohhgxoqeylxdvznlesmxtc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykrjcsexsmjiqcksaqtixgwvkygjpuze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcytkwohumyrblrsyjwbbobkiryphelw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqlchcbfmwdlvudocqrmffvywioalkxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atqwqxzdxftelgkktneayqmsautdblcv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jzaindfhpwwyvkvgsvsqiufgqjquzqna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkvxhvlsddelxwtbscyanrfwtykdrfrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uikxqwtnmwybaztuncopdkcfkawlpxjk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pajxyktdvmjhnaalmvnockahvxlkogvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocgmtfjsilbngjhgyqcnzkyjgcdxvkgn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cjrhztoqzcykhcwqstuggygydudttohf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rksnelegfjgwumskgltrnzuklxlbiwqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qcfsyfgrvhwlmiaiwzgscsythbkmbymc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"isvoxpuvdgvzvkdfqgmtqxyvkcqiukmx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"brjyvsoqclbykakbyfyftibarmtyhifn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ooebgmmllpauukqvglitifjkvpwcxesb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctbsvjnhxuphgssjniyifwoslncduhvz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"veuvippfanwfueoqqadxorzxpjzkrycw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jecallfmukfujbqjhpsmmoxkkcladprc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qgjesvfnhmnieohftpredyrokjvxwxby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqlkyjvbmiaqwfvcwmvrazyfuhlswteu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sirkynnnngtfjtowpuwvkslsvogyfxsk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shxuvtunljvaezplizbpjmwffyqyhiaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xwkwlpzyhbnhjuzslrbiyvbydmxuuszq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhzwatkaskysbmahveyfmcprukrpzrqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zumlskopjriuksobqmdxvzeoeejfikmx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghzyddthmekynrasadukadpepufwlogm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"snvnsdaaokseavavhfmkiyiemrfvodrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzautemrqwjhdafpsqnfhpluirdfphfj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sigtmzttzmiqeviiqssrxvzcemwkctho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udcepbediygjdoyakxpictpydqizwxvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsfgtgvcjysmtnnnuteqqljmzymuhawi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqrwssvmsbfgrtrlixwgyahhufljnedx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xovmdfcvrkgparnyetjjwuuoflkggppk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"odkiefxlyjxdldgebnanlebfwszodmmi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpymeblgyhvqqarukjzivnpqxhykiyhw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wltthgimdrpgdhphxyrmszeemjiwvckw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nunrckdktbkwedrtuzkgdwumaojksexr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvqfavfhdefeizxhlgslmyjgcnsalhqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"weabtuedvicxzimbfblgwnvhbrcwsxma","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iofqpcseczwmxgydarhxizcdtkyryawl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xctxqnuftebiqelwajhuimuesqiqyqrp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mdpxchkiosokepcfzyuhxwylcnujuypd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmofnpsjgyydjfvkfbulrilkxvcwnevt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhxhbgciupsljbqlthbyvcrinpzyhqse","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vwxkmkgouomclmnzcpeacchgrcuzhrdr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijvjhjnzymwjfjnskmuioitxymaqunhv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjlyqujfobzimdrvztpakkfcgrccgika","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pojokhmtpwhvdolxzavqjvivfqocfkqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmbrrufqvypwdufluwxloetpyznsonxa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofqxvkpmzluuspeahrircunumcvrkqwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvhurvcvqcgcktdlmwhihkykrnaakjhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671545,"databaseName":"models_schema","ddl":"CREATE TABLE `tpksmtlcpcazciywpqiwdqlzxbnoiktq` (\n `nsnsqgwgdsiwoxzbrtpgkcufmurayjcc` int NOT NULL,\n `xvpnrilojzdvqnmdzglpwqrysryhgaet` int DEFAULT NULL,\n `xlbgqpdzlwncmrhyaaamgbfhgqpiybal` int DEFAULT NULL,\n `dnzxjudmjhxrtbdyvpawzdbkavdsqzsv` int DEFAULT NULL,\n `tskmuothytedlmzztzhqqgibbeiwnvdk` int DEFAULT NULL,\n `ebpklqpcsoetwuyaqzelezyklulfeyst` int DEFAULT NULL,\n `ukmozusspnximcmevzxtwivvmgmfqvst` int DEFAULT NULL,\n `podemnevsbizkqufqyvogoabfpstsdjo` int DEFAULT NULL,\n `jwwnktexipoqiqatrmhyuccgjpnnzgcb` int DEFAULT NULL,\n `eoidmkzommtrlvijsgwdglxubjownfam` int DEFAULT NULL,\n `cpblpzgivohuovxvusxmbzyirgjqycjf` int DEFAULT NULL,\n `jdfrieyaixafiwkjkcbvamgrjpeofcys` int DEFAULT NULL,\n `assnybzeebzezowrpkloueccgucncdhd` int DEFAULT NULL,\n `loxjxcpjmdxdiicupmdpsxjjwlpzkond` int DEFAULT NULL,\n `gtwxtowgbecbeesexxnwiirohspmvxyn` int DEFAULT NULL,\n `tgsoqpipmgtktfguhpptmxtglojiqclh` int DEFAULT NULL,\n `hhxnypzzzpxjrvfnzddtbzmffywkcink` int DEFAULT NULL,\n `nkqlsotyekknzqcyxmytdrqonshdehtr` int DEFAULT NULL,\n `gqexvplxlmnlidreotngxcswasdffsdy` int DEFAULT NULL,\n `hjodlhnmfulfrqvurnmfyttxxkeephip` int DEFAULT NULL,\n `txxtpcwntoxvqdmhocdgsvibilmupafk` int DEFAULT NULL,\n `podwrqlqjmgxwcmpkzbiqhbvtlpzsehg` int DEFAULT NULL,\n `zeoiqghgzrchosjkkuwnckcxynhfelth` int DEFAULT NULL,\n `ryqzpypqoexqusjeohdhxbktgypwvwvw` int DEFAULT NULL,\n `yvqrmbvyfaiwwzxdqspcoibovttwxesf` int DEFAULT NULL,\n `fasfjrxvhtkbwzqhvuhmkuwsmpdupeyh` int DEFAULT NULL,\n `coaetubltslfnjlkzmcqnodluycfoonw` int DEFAULT NULL,\n `jfwzhqgwosqxxzluezegladvgirogsvc` int DEFAULT NULL,\n `eqxyvcazdhapjouqfapmyydqdyajoklk` int DEFAULT NULL,\n `quhjtpbtghyjgwhfbmqfpnzqxcstfqbt` int DEFAULT NULL,\n `gvwjalhgdhvybihvmgeeqdvwcntodoym` int DEFAULT NULL,\n `lyrdtkylrdhbqrvyjiligkukoiglpmmt` int DEFAULT NULL,\n `sjgnrxmzquqpbbgqmiuklavldfjjyrnd` int DEFAULT NULL,\n `cyudpeanfvajuxfyqcrknbxuokqspgje` int DEFAULT NULL,\n `wejucqzvcddydaznwjvthodetzekwasx` int DEFAULT NULL,\n `dzywkuzaeryygmhnudpgqqmkibyanjop` int DEFAULT NULL,\n `lfmskoppuiiuedunixziaaemprqclsev` int DEFAULT NULL,\n `xivbdhzeculdwqjsqycqavxuermxpqgh` int DEFAULT NULL,\n `fxzfbnbkaltfvhsphltzgeacqiynwalz` int DEFAULT NULL,\n `pgulxtolwoefnhoxwdaxocdllfithgit` int DEFAULT NULL,\n `ubyciqfcaupydhryhzxqvupnpohsyskb` int DEFAULT NULL,\n `pwcfkuwwmnimkbhouzbsqgpxgfiqcikt` int DEFAULT NULL,\n `bruaqhcacvbyjwxjfqjnenzwbedaoedq` int DEFAULT NULL,\n `opqzfkdeleypupvsvorrubokfuwwfdjk` int DEFAULT NULL,\n `vlwlbcrliocbuchdsmmadjldfbjfovig` int DEFAULT NULL,\n `bmmegwybkpveiadjbpefjudpmycbwmxo` int DEFAULT NULL,\n `kfsqwywcfxlcxkyhkarjunlpzvesviab` int DEFAULT NULL,\n `tkfcevhchyhdelhgwrkbogvsuuzfsjgv` int DEFAULT NULL,\n `kmoffcixsaoutepaetcpducowxmfzusa` int DEFAULT NULL,\n `vefrklcthqcojogzsctcfktsiqdnfbbk` int DEFAULT NULL,\n `cuckkjccsqgdflxvhyigxuqfbtzxmrio` int DEFAULT NULL,\n `tkbztxzspszlgrcgoqtyxrwmblqmitpr` int DEFAULT NULL,\n `lbjgylbfqnzvadnqqyfyijugfvcncumw` int DEFAULT NULL,\n `inieriunodjwdveoppxlbxyldvmouvau` int DEFAULT NULL,\n `axcdoljhrzwlmrnstocivhrcgptpvbre` int DEFAULT NULL,\n `yjemwinramfjkjwrvwcbtgjcymamohlm` int DEFAULT NULL,\n `ajkdmcqvjhfelbphcmehlwsgwpxxljwa` int DEFAULT NULL,\n `avdxvfzepozcbtotpzoqpaeqhbcvpakd` int DEFAULT NULL,\n `xkhqmrjnywaziqngmskqgulgfktcqduf` int DEFAULT NULL,\n `ortrjebiyxcsqpuboqigwrrdkpogmxic` int DEFAULT NULL,\n `plommnlmauntzgonkjlcsclzxltabxes` int DEFAULT NULL,\n `gfviuzriewwutdkocjfejbkxprhpseaj` int DEFAULT NULL,\n `lwgzgltaqrzwuyevorktzmnocknpmjkg` int DEFAULT NULL,\n `ikhtsaqzlkbglyhpqonigghvbogioich` int DEFAULT NULL,\n `ianznuzvectonsticizyfviswpctnbqw` int DEFAULT NULL,\n `hidkobjrqeovaoqshpmmqgqluonherac` int DEFAULT NULL,\n `aljjmelxinlojotobvfsywxtdudeeiub` int DEFAULT NULL,\n `thfyypgmxaaaklcjvtsdgzdpstozqqpv` int DEFAULT NULL,\n `xtvqcnhnseiwtrhatoaeanrjhlhqbgsd` int DEFAULT NULL,\n `npbmoyjlvvqvfpjbeaddvxpdgnbyxpga` int DEFAULT NULL,\n `utkkkebscvwoeoaykgtteiggwzkgfwfw` int DEFAULT NULL,\n `jgtgopsbbwkhljziqczefmicsyqoltvr` int DEFAULT NULL,\n `zvrlmlccvnmxotxyjtxugpcmqclaptco` int DEFAULT NULL,\n `qjabrnqdldpruazjwepcqttsbwaokvzv` int DEFAULT NULL,\n `upacjrbdlbjwmfkcoehiepwxmkysiapn` int DEFAULT NULL,\n `tkwbeiakreouwycujpcfbtkzjrqjsnam` int DEFAULT NULL,\n `dilbrwsgwpzexgiroxqxsoquirqprehh` int DEFAULT NULL,\n `utizjmqhxhiiazfgfdzufocxwybajayk` int DEFAULT NULL,\n `ynwboaotjwgisjcwyrrjmawxuxuedcde` int DEFAULT NULL,\n `toioratwbhszxcxseifqpqaehjewhmxo` int DEFAULT NULL,\n `qlrjyilyxccspisksjdblgenuldexmsc` int DEFAULT NULL,\n `wwvxcpwlnfitmuoeiudyshocroaodici` int DEFAULT NULL,\n `nlflyoeetidhsrhxwtwtnxzdimytmztf` int DEFAULT NULL,\n `pdpweobwjuidbhvmnvjfzlviydecvtgp` int DEFAULT NULL,\n `syohruqxbshsvyjgfefpwwhbdksnntxt` int DEFAULT NULL,\n `thjpujpyosrluilhhysysmaxjwkjysxs` int DEFAULT NULL,\n `dvhacsrcqrndrxoveyxkygrpnptypiei` int DEFAULT NULL,\n `ossfsehgkwhuvqffykeoobapvuejadtt` int DEFAULT NULL,\n `oikbdoczggryojzibswquzfqhquskjnc` int DEFAULT NULL,\n `kpmozrebgcddjeepltpnffkcvacvstmg` int DEFAULT NULL,\n `nnfjjfkwktbkuspwipbrbhvxdjomrpqt` int DEFAULT NULL,\n `kutvrjkfwaupzxdhpyokuygxeqqqiyxs` int DEFAULT NULL,\n `xcmpnxbodzymjllgqimnnhmdtauzmxgt` int DEFAULT NULL,\n `yovzukgbwlfjmrtpgzzwvcvdyleidspb` int DEFAULT NULL,\n `jlzdfczytjijddlzmazzzutcjpeqwkuf` int DEFAULT NULL,\n `cupumrvfhxousffxesbfolzflshsopdb` int DEFAULT NULL,\n `lqipdgwgfaeppagbhjcnvdhmzyurjfpk` int DEFAULT NULL,\n `uezeqdcckvgxivlbhdgkmduthwvnjaav` int DEFAULT NULL,\n `kmelplwnmtpgqufrseyheiikeshxwhuy` int DEFAULT NULL,\n `ejrcoisanzrhrctbbyrfnhzeutndfeme` int DEFAULT NULL,\n PRIMARY KEY (`nsnsqgwgdsiwoxzbrtpgkcufmurayjcc`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"tpksmtlcpcazciywpqiwdqlzxbnoiktq\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["nsnsqgwgdsiwoxzbrtpgkcufmurayjcc"],"columns":[{"name":"nsnsqgwgdsiwoxzbrtpgkcufmurayjcc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"xvpnrilojzdvqnmdzglpwqrysryhgaet","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xlbgqpdzlwncmrhyaaamgbfhgqpiybal","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dnzxjudmjhxrtbdyvpawzdbkavdsqzsv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tskmuothytedlmzztzhqqgibbeiwnvdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebpklqpcsoetwuyaqzelezyklulfeyst","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ukmozusspnximcmevzxtwivvmgmfqvst","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"podemnevsbizkqufqyvogoabfpstsdjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwwnktexipoqiqatrmhyuccgjpnnzgcb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eoidmkzommtrlvijsgwdglxubjownfam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cpblpzgivohuovxvusxmbzyirgjqycjf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdfrieyaixafiwkjkcbvamgrjpeofcys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"assnybzeebzezowrpkloueccgucncdhd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"loxjxcpjmdxdiicupmdpsxjjwlpzkond","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtwxtowgbecbeesexxnwiirohspmvxyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tgsoqpipmgtktfguhpptmxtglojiqclh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhxnypzzzpxjrvfnzddtbzmffywkcink","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nkqlsotyekknzqcyxmytdrqonshdehtr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqexvplxlmnlidreotngxcswasdffsdy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjodlhnmfulfrqvurnmfyttxxkeephip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txxtpcwntoxvqdmhocdgsvibilmupafk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"podwrqlqjmgxwcmpkzbiqhbvtlpzsehg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zeoiqghgzrchosjkkuwnckcxynhfelth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ryqzpypqoexqusjeohdhxbktgypwvwvw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yvqrmbvyfaiwwzxdqspcoibovttwxesf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fasfjrxvhtkbwzqhvuhmkuwsmpdupeyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"coaetubltslfnjlkzmcqnodluycfoonw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jfwzhqgwosqxxzluezegladvgirogsvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqxyvcazdhapjouqfapmyydqdyajoklk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"quhjtpbtghyjgwhfbmqfpnzqxcstfqbt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gvwjalhgdhvybihvmgeeqdvwcntodoym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lyrdtkylrdhbqrvyjiligkukoiglpmmt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjgnrxmzquqpbbgqmiuklavldfjjyrnd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cyudpeanfvajuxfyqcrknbxuokqspgje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wejucqzvcddydaznwjvthodetzekwasx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dzywkuzaeryygmhnudpgqqmkibyanjop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfmskoppuiiuedunixziaaemprqclsev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xivbdhzeculdwqjsqycqavxuermxpqgh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxzfbnbkaltfvhsphltzgeacqiynwalz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgulxtolwoefnhoxwdaxocdllfithgit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubyciqfcaupydhryhzxqvupnpohsyskb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwcfkuwwmnimkbhouzbsqgpxgfiqcikt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bruaqhcacvbyjwxjfqjnenzwbedaoedq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opqzfkdeleypupvsvorrubokfuwwfdjk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vlwlbcrliocbuchdsmmadjldfbjfovig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bmmegwybkpveiadjbpefjudpmycbwmxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfsqwywcfxlcxkyhkarjunlpzvesviab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkfcevhchyhdelhgwrkbogvsuuzfsjgv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kmoffcixsaoutepaetcpducowxmfzusa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vefrklcthqcojogzsctcfktsiqdnfbbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cuckkjccsqgdflxvhyigxuqfbtzxmrio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkbztxzspszlgrcgoqtyxrwmblqmitpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lbjgylbfqnzvadnqqyfyijugfvcncumw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"inieriunodjwdveoppxlbxyldvmouvau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axcdoljhrzwlmrnstocivhrcgptpvbre","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjemwinramfjkjwrvwcbtgjcymamohlm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajkdmcqvjhfelbphcmehlwsgwpxxljwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avdxvfzepozcbtotpzoqpaeqhbcvpakd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkhqmrjnywaziqngmskqgulgfktcqduf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ortrjebiyxcsqpuboqigwrrdkpogmxic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"plommnlmauntzgonkjlcsclzxltabxes","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfviuzriewwutdkocjfejbkxprhpseaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwgzgltaqrzwuyevorktzmnocknpmjkg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikhtsaqzlkbglyhpqonigghvbogioich","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ianznuzvectonsticizyfviswpctnbqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hidkobjrqeovaoqshpmmqgqluonherac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aljjmelxinlojotobvfsywxtdudeeiub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thfyypgmxaaaklcjvtsdgzdpstozqqpv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xtvqcnhnseiwtrhatoaeanrjhlhqbgsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"npbmoyjlvvqvfpjbeaddvxpdgnbyxpga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utkkkebscvwoeoaykgtteiggwzkgfwfw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgtgopsbbwkhljziqczefmicsyqoltvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvrlmlccvnmxotxyjtxugpcmqclaptco","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjabrnqdldpruazjwepcqttsbwaokvzv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upacjrbdlbjwmfkcoehiepwxmkysiapn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkwbeiakreouwycujpcfbtkzjrqjsnam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dilbrwsgwpzexgiroxqxsoquirqprehh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utizjmqhxhiiazfgfdzufocxwybajayk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynwboaotjwgisjcwyrrjmawxuxuedcde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"toioratwbhszxcxseifqpqaehjewhmxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qlrjyilyxccspisksjdblgenuldexmsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwvxcpwlnfitmuoeiudyshocroaodici","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nlflyoeetidhsrhxwtwtnxzdimytmztf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdpweobwjuidbhvmnvjfzlviydecvtgp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"syohruqxbshsvyjgfefpwwhbdksnntxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thjpujpyosrluilhhysysmaxjwkjysxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvhacsrcqrndrxoveyxkygrpnptypiei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ossfsehgkwhuvqffykeoobapvuejadtt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oikbdoczggryojzibswquzfqhquskjnc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kpmozrebgcddjeepltpnffkcvacvstmg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nnfjjfkwktbkuspwipbrbhvxdjomrpqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kutvrjkfwaupzxdhpyokuygxeqqqiyxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xcmpnxbodzymjllgqimnnhmdtauzmxgt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yovzukgbwlfjmrtpgzzwvcvdyleidspb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlzdfczytjijddlzmazzzutcjpeqwkuf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cupumrvfhxousffxesbfolzflshsopdb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqipdgwgfaeppagbhjcnvdhmzyurjfpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uezeqdcckvgxivlbhdgkmduthwvnjaav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kmelplwnmtpgqufrseyheiikeshxwhuy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejrcoisanzrhrctbbyrfnhzeutndfeme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671575,"databaseName":"models_schema","ddl":"CREATE TABLE `tpkxfywbmayegsworhdugtdrzkjvveya` (\n `pjkcefpcibjkvosywtxgwcbbcvvenjpy` int NOT NULL,\n `lfyphemoycozrwbvaklcnkxnhcesvcxi` int DEFAULT NULL,\n `frlrlahhxnscwydiifkembklgfftzjgr` int DEFAULT NULL,\n `wreuqlbaqftrllkddirgohlxplbnuccw` int DEFAULT NULL,\n `fzbautbcrfchvntxilfquyfmsekxzowk` int DEFAULT NULL,\n `xforkqmpmqypbvbzfznhbjalwhjpydqd` int DEFAULT NULL,\n `suglrgrmlqvwrlcemnbyaeutfnihhiyu` int DEFAULT NULL,\n `drlcudemumtzjdlanofkgsbgtdoinxfp` int DEFAULT NULL,\n `spnxufrqltrmpksehrucqefuhjdlrodc` int DEFAULT NULL,\n `lcqcuakxuxinrmazroqnttlvairqtdyw` int DEFAULT NULL,\n `hphffogojvrncxdrguaelvhrxsvlsrlc` int DEFAULT NULL,\n `tlpououdgtiksutocibrkuycwesvngrt` int DEFAULT NULL,\n `tfyjyjwglcjmwcjpnbxcatejcomwcacn` int DEFAULT NULL,\n `tjkzrlxptekekvfduzcponlrymzbzscy` int DEFAULT NULL,\n `nrtplkbksjgklkwsmqevmztrtpshagbb` int DEFAULT NULL,\n `cdeouauzyqgddyfgmkwpzwqqgsrmkfzy` int DEFAULT NULL,\n `jeprkgklhxdlwxzvkzbszsybcjyusjmw` int DEFAULT NULL,\n `davcyzrdgnxtkpxnuhfsddsjglweddtm` int DEFAULT NULL,\n `fednobbpoouhdzzxnarkrlnpicvjmfsk` int DEFAULT NULL,\n `elmsnqaniikispiqnkapsswcdjbpadfy` int DEFAULT NULL,\n `wijslyzchcunyqwbzrywgggijbsiytbp` int DEFAULT NULL,\n `aubipltydbmypleitfdkabtyuhfqxecj` int DEFAULT NULL,\n `uzlazgtormtyuomxxqmmlndixvduzqge` int DEFAULT NULL,\n `vbkjcgayczwydyyxkilhhtqakfspzyas` int DEFAULT NULL,\n `jzzcmwztyvstoeskkkdxkuxjkbboxteq` int DEFAULT NULL,\n `qypcoourvbhesardyqhkzriedjhloxui` int DEFAULT NULL,\n `insslfbqznydwnkxnkcytvqleqbvblph` int DEFAULT NULL,\n `bkjhkrabfhtfhuemofpvykkchgqupvul` int DEFAULT NULL,\n `seskbflxfilzbseumbgmurikdqrurpdz` int DEFAULT NULL,\n `nritycvrqkrldobsrymbqykzbqexmsua` int DEFAULT NULL,\n `hhtrzeecfgzpzkwvhyptmhzoqazcemxu` int DEFAULT NULL,\n `rrezhddrcdixjslwrumhkmabzgdldkgi` int DEFAULT NULL,\n `ncdezfxoknxvsigyvykjvlkqeymrplts` int DEFAULT NULL,\n `rvghoavpydmjobddkrjgwwfxcyjjbscn` int DEFAULT NULL,\n `gaqwimibpefbinuqolihwyvjsdgmhril` int DEFAULT NULL,\n `cfsynuwpvvhsgyoqmiefkqqxafwgtgog` int DEFAULT NULL,\n `txpxxhtrxbfaheozdxrbjtkmkmejaxau` int DEFAULT NULL,\n `iiczzajgmaieqnpvvltlqiofembnaimk` int DEFAULT NULL,\n `kzbumgvpusifdlhmymegoxepjqzfuqwu` int DEFAULT NULL,\n `ckigfjznvlpzxilkwzaygbanngfqtoba` int DEFAULT NULL,\n `iwndtbmdpvfhjlculqwddeiqvcwsmchu` int DEFAULT NULL,\n `tqyfzuhcyiqgfwwbcyidgzutdlxsorfe` int DEFAULT NULL,\n `laeldcbrercxmtbjdhmbuimdoskxfdjd` int DEFAULT NULL,\n `pgijjmwdfabkklxlzbhapyqwbmnlvxrn` int DEFAULT NULL,\n `wtwkowcdnomycledvfdhklacnaapxrhi` int DEFAULT NULL,\n `deotwdyvwhqmwsuqoizxeldmmmaabtso` int DEFAULT NULL,\n `xktmqptkzuerzntaxbkjuzdddevddczp` int DEFAULT NULL,\n `fveqaghmxbzcsrjckuylousmtajjjwon` int DEFAULT NULL,\n `ajmaywulwumbdvsbkzdphlfhoroiyuxx` int DEFAULT NULL,\n `wiubnhjhzhimlpobpmzxgosfivehfhjr` int DEFAULT NULL,\n `bkttyqwnjvshwzwtsdxxseocpedqozjt` int DEFAULT NULL,\n `hdtlbtguukindzvswiwyrwcwvwzghmea` int DEFAULT NULL,\n `dpukyavphxziehrsystcgacopzegwkgf` int DEFAULT NULL,\n `tuxbfydekepqdshqfrdaxbtvmvgtazeu` int DEFAULT NULL,\n `rvewripnpcqophtehgnohcadywsxpzob` int DEFAULT NULL,\n `ihcofidkwqzbbpdlptwxwmhulwhplsyc` int DEFAULT NULL,\n `serlvfnexmqyoqkocigqdnrcazzgspye` int DEFAULT NULL,\n `ktvstkdqtmqfugrfsqbdotitzvpjlpsh` int DEFAULT NULL,\n `prsyxhdgeurqoypwjtzgcqcwdsnkkknn` int DEFAULT NULL,\n `tduiqdpafixzmazbvrcqzxxlovfliake` int DEFAULT NULL,\n `xelvkjjipjihculepnjhwmbfnodnstdv` int DEFAULT NULL,\n `mpjadkhqhasqjknplbnnsjiqksrrnvzo` int DEFAULT NULL,\n `klqasuzktesjmycotfzubdmaoexvqnsr` int DEFAULT NULL,\n `hzkbempopmzkfsfpsqtiviixyerwfyvn` int DEFAULT NULL,\n `sqndpwqqhnifmzelrrfzhhppcnpkpmqu` int DEFAULT NULL,\n `sozyshbaealuncmitufojslshsbcjcwn` int DEFAULT NULL,\n `jjxshfcasgyqyqpsujxttfwzaiohaexr` int DEFAULT NULL,\n `pceymtktorykqsfqkohgkkxofebigeiw` int DEFAULT NULL,\n `carcryipeysucxddzkupllwoipkbcjaw` int DEFAULT NULL,\n `qkqqzyvqidbiufbulqhgllhceigxsjvw` int DEFAULT NULL,\n `fzumppkeoaysiestfixlrcexojgzyngx` int DEFAULT NULL,\n `vdzkfklxjtizcdgjzddbsqdwcmogysys` int DEFAULT NULL,\n `wkrwizpdeoxgjsiummaaburxzcakxeqc` int DEFAULT NULL,\n `essrgioxvnpygxonztsvpigyeevrzeiv` int DEFAULT NULL,\n `eyangozrbyvyufnqevetdaihgnlrztlz` int DEFAULT NULL,\n `clzgqymvetchaykdmqyufydxyunycpet` int DEFAULT NULL,\n `gbemyqvpmtuhicpemdsuohlxdapgdvmr` int DEFAULT NULL,\n `awmjgxjxexbyjamgkngqiyyoluqclyyj` int DEFAULT NULL,\n `mglqbjwxykavffxugaqckfbzhworlxsp` int DEFAULT NULL,\n `anrybznelxbgcigqiaiypowjfltrofgk` int DEFAULT NULL,\n `dtiokdlgcdbfbfvwelsgqsfwksyvynzo` int DEFAULT NULL,\n `buqybwosfyceggnacfdmnsylzxzmndff` int DEFAULT NULL,\n `bmwbgrkcymsaxhrtiakypgfahmxphpow` int DEFAULT NULL,\n `qattqhaitxusjwluvypukzhmilnwtxea` int DEFAULT NULL,\n `bxdjkwqxhgghkmwkfnsaihhcbhgfhvgp` int DEFAULT NULL,\n `ogaiaosjojtevwfugpmqoyclibdxlsgs` int DEFAULT NULL,\n `inpcujkfxrtotmyttzqvsqagdotzlcjn` int DEFAULT NULL,\n `cfcedvkwyvlsnnrpbdblaqpiejgfjjab` int DEFAULT NULL,\n `tbmtmjdytmxrigfcjyavntsdshocmvum` int DEFAULT NULL,\n `gxhjvmmambeuzdujhwmsypoxbrtykoor` int DEFAULT NULL,\n `agpjxpdgpomgjwsluzkfurntwwjlzyrq` int DEFAULT NULL,\n `bajmfvirojfyasmvjsocilowwqxqlcfc` int DEFAULT NULL,\n `kgrkaqumzamyyglzkooilewqoprbbxry` int DEFAULT NULL,\n `dcflmbkcedabhicfxfkiwitkwhixpqlq` int DEFAULT NULL,\n `xebyytiwbgpwdglsuotzpzeftacadosi` int DEFAULT NULL,\n `izylioayxcubknfjrcpmpjvzcbercjqc` int DEFAULT NULL,\n `ejtrxitxfmcvqefbdwkdbyypkptfvicf` int DEFAULT NULL,\n `pjaenjffbharmphuesnajqbrqzacehnh` int DEFAULT NULL,\n `igyuoqmczhzcngghrjuygorgjehtzljn` int DEFAULT NULL,\n `nytavjkktqjyukqatieuvgxozrtqbrpm` int DEFAULT NULL,\n PRIMARY KEY (`pjkcefpcibjkvosywtxgwcbbcvvenjpy`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"tpkxfywbmayegsworhdugtdrzkjvveya\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["pjkcefpcibjkvosywtxgwcbbcvvenjpy"],"columns":[{"name":"pjkcefpcibjkvosywtxgwcbbcvvenjpy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"lfyphemoycozrwbvaklcnkxnhcesvcxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"frlrlahhxnscwydiifkembklgfftzjgr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wreuqlbaqftrllkddirgohlxplbnuccw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzbautbcrfchvntxilfquyfmsekxzowk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xforkqmpmqypbvbzfznhbjalwhjpydqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"suglrgrmlqvwrlcemnbyaeutfnihhiyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drlcudemumtzjdlanofkgsbgtdoinxfp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"spnxufrqltrmpksehrucqefuhjdlrodc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lcqcuakxuxinrmazroqnttlvairqtdyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hphffogojvrncxdrguaelvhrxsvlsrlc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlpououdgtiksutocibrkuycwesvngrt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tfyjyjwglcjmwcjpnbxcatejcomwcacn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjkzrlxptekekvfduzcponlrymzbzscy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nrtplkbksjgklkwsmqevmztrtpshagbb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cdeouauzyqgddyfgmkwpzwqqgsrmkfzy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jeprkgklhxdlwxzvkzbszsybcjyusjmw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"davcyzrdgnxtkpxnuhfsddsjglweddtm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fednobbpoouhdzzxnarkrlnpicvjmfsk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"elmsnqaniikispiqnkapsswcdjbpadfy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wijslyzchcunyqwbzrywgggijbsiytbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aubipltydbmypleitfdkabtyuhfqxecj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzlazgtormtyuomxxqmmlndixvduzqge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbkjcgayczwydyyxkilhhtqakfspzyas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jzzcmwztyvstoeskkkdxkuxjkbboxteq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qypcoourvbhesardyqhkzriedjhloxui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"insslfbqznydwnkxnkcytvqleqbvblph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkjhkrabfhtfhuemofpvykkchgqupvul","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"seskbflxfilzbseumbgmurikdqrurpdz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nritycvrqkrldobsrymbqykzbqexmsua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhtrzeecfgzpzkwvhyptmhzoqazcemxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrezhddrcdixjslwrumhkmabzgdldkgi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ncdezfxoknxvsigyvykjvlkqeymrplts","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rvghoavpydmjobddkrjgwwfxcyjjbscn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gaqwimibpefbinuqolihwyvjsdgmhril","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfsynuwpvvhsgyoqmiefkqqxafwgtgog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txpxxhtrxbfaheozdxrbjtkmkmejaxau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iiczzajgmaieqnpvvltlqiofembnaimk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzbumgvpusifdlhmymegoxepjqzfuqwu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ckigfjznvlpzxilkwzaygbanngfqtoba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwndtbmdpvfhjlculqwddeiqvcwsmchu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqyfzuhcyiqgfwwbcyidgzutdlxsorfe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"laeldcbrercxmtbjdhmbuimdoskxfdjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgijjmwdfabkklxlzbhapyqwbmnlvxrn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wtwkowcdnomycledvfdhklacnaapxrhi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"deotwdyvwhqmwsuqoizxeldmmmaabtso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xktmqptkzuerzntaxbkjuzdddevddczp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fveqaghmxbzcsrjckuylousmtajjjwon","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajmaywulwumbdvsbkzdphlfhoroiyuxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wiubnhjhzhimlpobpmzxgosfivehfhjr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkttyqwnjvshwzwtsdxxseocpedqozjt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdtlbtguukindzvswiwyrwcwvwzghmea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpukyavphxziehrsystcgacopzegwkgf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tuxbfydekepqdshqfrdaxbtvmvgtazeu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rvewripnpcqophtehgnohcadywsxpzob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ihcofidkwqzbbpdlptwxwmhulwhplsyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"serlvfnexmqyoqkocigqdnrcazzgspye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ktvstkdqtmqfugrfsqbdotitzvpjlpsh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prsyxhdgeurqoypwjtzgcqcwdsnkkknn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tduiqdpafixzmazbvrcqzxxlovfliake","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xelvkjjipjihculepnjhwmbfnodnstdv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpjadkhqhasqjknplbnnsjiqksrrnvzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"klqasuzktesjmycotfzubdmaoexvqnsr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hzkbempopmzkfsfpsqtiviixyerwfyvn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sqndpwqqhnifmzelrrfzhhppcnpkpmqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sozyshbaealuncmitufojslshsbcjcwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjxshfcasgyqyqpsujxttfwzaiohaexr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pceymtktorykqsfqkohgkkxofebigeiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"carcryipeysucxddzkupllwoipkbcjaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qkqqzyvqidbiufbulqhgllhceigxsjvw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzumppkeoaysiestfixlrcexojgzyngx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdzkfklxjtizcdgjzddbsqdwcmogysys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wkrwizpdeoxgjsiummaaburxzcakxeqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"essrgioxvnpygxonztsvpigyeevrzeiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eyangozrbyvyufnqevetdaihgnlrztlz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"clzgqymvetchaykdmqyufydxyunycpet","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gbemyqvpmtuhicpemdsuohlxdapgdvmr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awmjgxjxexbyjamgkngqiyyoluqclyyj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mglqbjwxykavffxugaqckfbzhworlxsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"anrybznelxbgcigqiaiypowjfltrofgk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtiokdlgcdbfbfvwelsgqsfwksyvynzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"buqybwosfyceggnacfdmnsylzxzmndff","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bmwbgrkcymsaxhrtiakypgfahmxphpow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qattqhaitxusjwluvypukzhmilnwtxea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bxdjkwqxhgghkmwkfnsaihhcbhgfhvgp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ogaiaosjojtevwfugpmqoyclibdxlsgs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"inpcujkfxrtotmyttzqvsqagdotzlcjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfcedvkwyvlsnnrpbdblaqpiejgfjjab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbmtmjdytmxrigfcjyavntsdshocmvum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gxhjvmmambeuzdujhwmsypoxbrtykoor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agpjxpdgpomgjwsluzkfurntwwjlzyrq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bajmfvirojfyasmvjsocilowwqxqlcfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kgrkaqumzamyyglzkooilewqoprbbxry","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcflmbkcedabhicfxfkiwitkwhixpqlq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xebyytiwbgpwdglsuotzpzeftacadosi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"izylioayxcubknfjrcpmpjvzcbercjqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejtrxitxfmcvqefbdwkdbyypkptfvicf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjaenjffbharmphuesnajqbrqzacehnh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igyuoqmczhzcngghrjuygorgjehtzljn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nytavjkktqjyukqatieuvgxozrtqbrpm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671607,"databaseName":"models_schema","ddl":"CREATE TABLE `tzetkodbjogqjrhxuxwowogrhxsolvar` (\n `msrsffbjcrxtgrdomvvwaeqvtkcokzov` int NOT NULL,\n `jqfstbkoyxaibdhpjrnewnjporjssbha` int DEFAULT NULL,\n `bgjklmpabkbwryaxttrvwwblylpbjwnb` int DEFAULT NULL,\n `hmjdplrsqxwwtsitzwpeigkfrgcxhdqt` int DEFAULT NULL,\n `fzyyybcmildnebrnjtldbuugxzfrzaqm` int DEFAULT NULL,\n `wnrslgyzysvczvskisjaemqmakcbcamt` int DEFAULT NULL,\n `vnzfvezqleaznygfmqkghbxidbouirwz` int DEFAULT NULL,\n `kgethotfuepfrstfddvmvesxqyjwhnrn` int DEFAULT NULL,\n `cslmusuvygvbwerbfgbfmphtaoyiomor` int DEFAULT NULL,\n `bkithrfnjitlanjgtlxtxmfzximvdtbw` int DEFAULT NULL,\n `csrugkssbwdxyuktyrmaqtpxzwvbtbbq` int DEFAULT NULL,\n `xxrepueyhplrdbpnenxvoklyqclkyzvh` int DEFAULT NULL,\n `dhvjcktzxbwkhvegptatxnugfwdxmweb` int DEFAULT NULL,\n `dusudimfnlzznpnqeqeidwpjlubdomoi` int DEFAULT NULL,\n `nzgvaaqcpyzomvqryhfuqqobfanmtial` int DEFAULT NULL,\n `hupgdalxkonicxvovpyjpwtdhjrwnmcy` int DEFAULT NULL,\n `iflouasmqswpjupkqqdwoddxrbbdpxxu` int DEFAULT NULL,\n `sgzsrjpjbhtmlekghdyhaojsohwqkbbi` int DEFAULT NULL,\n `adrrbdmylsszzckekdzdzopelkiwqlhp` int DEFAULT NULL,\n `pkwgiynkmyqqiouwiuhdgenspnzegjwe` int DEFAULT NULL,\n `gwmexzovxwbftnwpgyrurifueazbqjir` int DEFAULT NULL,\n `dmfbxrkpxzlaheitvtkrwbxvvvfdekbe` int DEFAULT NULL,\n `ajforhqwfhrapmncrjhjjuynhtchpgth` int DEFAULT NULL,\n `wxomutaxanufvcfeadfeouqozqabbxvr` int DEFAULT NULL,\n `pervmxgmumnvasjkodhwdtjnvhkakenc` int DEFAULT NULL,\n `mtzbpriksoikjqjwhihtjfobcgztwhjl` int DEFAULT NULL,\n `crmipbnzlrnnoxzaowoclqthvwbxcsuc` int DEFAULT NULL,\n `jpqseyhiyvsutknbxhdfmfgqofetodgf` int DEFAULT NULL,\n `qynclvqxbcuatvmdurhtuujidxtuqbcg` int DEFAULT NULL,\n `wyzwepxyxprfymtfevkysnvcwddkxeol` int DEFAULT NULL,\n `manwipmvkqfqepbrhcomchevavkeczhz` int DEFAULT NULL,\n `izythqpzzffaframrldfsyfbnemjenkh` int DEFAULT NULL,\n `zlehrblynysfittwxsxehdhtwoddqjox` int DEFAULT NULL,\n `iwnvctdptmkqmcpcelnnjxulmcmcbruj` int DEFAULT NULL,\n `ghvgatxochimtzhwhommjrhjlwbdeabi` int DEFAULT NULL,\n `eucrdbwlcnnkxdupuktvyzmpkiyyjscq` int DEFAULT NULL,\n `bzvjgregdgjkdqohpghjaeoteremxoiv` int DEFAULT NULL,\n `scvodwhzlemwwuujcnzvkophvtfvjfuq` int DEFAULT NULL,\n `rdudfnzkicdwhtevdddydoywuszyguvn` int DEFAULT NULL,\n `sbyklsheaeygcplqoymrzhkpmlblnsut` int DEFAULT NULL,\n `afpbslimsvzwjkplbqzolwxbbxtxocsl` int DEFAULT NULL,\n `plzlmkqmgudjctxlugyfyvqpedopocyr` int DEFAULT NULL,\n `wrtuhvochowcxwqhzaojnttijulwsghg` int DEFAULT NULL,\n `jloqmjqtjgpjxwtvtdrldeguetypjrgz` int DEFAULT NULL,\n `lqdmxhryydxcwysmttjpgwnibbqavrmx` int DEFAULT NULL,\n `becpcslxlaruozsomifstxjmjtdoogml` int DEFAULT NULL,\n `ajygbvpcqmkdpqpwxgavctcaibthrbkk` int DEFAULT NULL,\n `cpvcixncywmtfnmiznovplhxzwrdbhqh` int DEFAULT NULL,\n `ioxmxaildrzvitrueafdfyfmlnodxkzi` int DEFAULT NULL,\n `drllhgtohcfzazszyuebiinvynwdhspj` int DEFAULT NULL,\n `ylnadxmdudxqrbccfstikhxvbzzpzitd` int DEFAULT NULL,\n `rwwhrymzbkksjjazqsbkfhhnvbdutxri` int DEFAULT NULL,\n `qpujjawamkndlhfydlozxbjsbupivqpg` int DEFAULT NULL,\n `fqbvfbgnqijnqhrffoahsemafzjsqvdh` int DEFAULT NULL,\n `gtkpvsyfdzhxlnnwqsnnuauxyyellvis` int DEFAULT NULL,\n `toftclnosxtgkyypteczvfudjqojumgi` int DEFAULT NULL,\n `vgoprwlcqzfuilwbiypnoifwycbzajwn` int DEFAULT NULL,\n `wukkycmfhctqlvqsyowcdtnithkhfclr` int DEFAULT NULL,\n `czheusmchgodznymzpoldjjucrgoaoah` int DEFAULT NULL,\n `ihjfsyssfgxrohvxirpniedtqydlgduy` int DEFAULT NULL,\n `ixelrigmeqfacfunzcnblrxdmyscuqxw` int DEFAULT NULL,\n `hmslnejiqusybhbyzklaakmwajeuwgqy` int DEFAULT NULL,\n `ctuwuyikthqltoihdhthcparsztzwlxo` int DEFAULT NULL,\n `oryoegawbrftjdzaeczureecxmuepmhs` int DEFAULT NULL,\n `wfhwiwczqwvqalavmbxrdxyobvgihjzg` int DEFAULT NULL,\n `ymhgcceekbudxumynkpflioztpzgpinr` int DEFAULT NULL,\n `mepxccnkmjscxkrueouytuwhvggtspwc` int DEFAULT NULL,\n `nzdxzehyesrcfdonufgzadgrfydswrvu` int DEFAULT NULL,\n `jpfpiargzhtwfiwzmolcjbtccemquvxi` int DEFAULT NULL,\n `lcqrxpyszakljlrhgxfxxcppuakbgjgr` int DEFAULT NULL,\n `zktkszjaicmbnxaiyyrxueiiaxoymqyv` int DEFAULT NULL,\n `xsdqhwnzdcvtkcseaxmvzarvxsjfuxsz` int DEFAULT NULL,\n `udhdgruohkjjdemukbhrdmvkiwmqemmp` int DEFAULT NULL,\n `aoxzkkxqhmpltqxitomciqonwlueseup` int DEFAULT NULL,\n `fjtsvaybvpbzdeymdvtnhtdvokcdpcae` int DEFAULT NULL,\n `cotnvfnlzrjvjkpyszdzvdsldpokmjxl` int DEFAULT NULL,\n `fvsgmvcfafbgzvvmywkdzdfuaarmbsjw` int DEFAULT NULL,\n `xdxdsnlnwjdcbxqdjosgmcccdshawvfj` int DEFAULT NULL,\n `znbqufpalbqjhehriniaclizuwtkbgmo` int DEFAULT NULL,\n `baabvuqumayldkkkgsikyfmeucojrter` int DEFAULT NULL,\n `ofxsprtynpvnvnqaswfgmqfljyjyrunu` int DEFAULT NULL,\n `ehincrgzlaogluorkcnegrqceaqmnrym` int DEFAULT NULL,\n `jbkjgnjzytxfdlfbkdmjscsuqzjcuvyg` int DEFAULT NULL,\n `vvtjfjtonzsyvzuvcdxfxilrusykgnjc` int DEFAULT NULL,\n `pehpndkihkmuwvqlbzwwxilyfnoupyah` int DEFAULT NULL,\n `opeiecqfhvnnrlzutmtcxssmorwppihg` int DEFAULT NULL,\n `kfnlctjxizsqkvclpofyrqvpswcoiyhr` int DEFAULT NULL,\n `nbrqmiedryydahpvyizjnoxwpugnfjxz` int DEFAULT NULL,\n `jxfgzomvreyxrbhcisuclcgjxfsyzshh` int DEFAULT NULL,\n `xpinirslzhjmurgpilvlggxkimttcyxs` int DEFAULT NULL,\n `jvxucfccdpvaoupwtkxwgrtanjaqqcut` int DEFAULT NULL,\n `rbetwdiqlhwyjdeddnpigfgfrpcpjyyk` int DEFAULT NULL,\n `kxbdaerhnnwomuslqiduzdcxdcybunuu` int DEFAULT NULL,\n `tlwbgvhksdataytxafvsijapwziezlli` int DEFAULT NULL,\n `orghxiaqgyslkngbzysrzkcbpytqjxse` int DEFAULT NULL,\n `gymvnlvmwxfppxxrpqetqkdacocycrpy` int DEFAULT NULL,\n `tthmfcgxlzgdwjpcswmmvvpycrdqkrcx` int DEFAULT NULL,\n `ocwtaifuzvvlivftpnlmjfvuhrqtvauf` int DEFAULT NULL,\n `anenoszfdnpegkgniqtjelurwldocdke` int DEFAULT NULL,\n `xmryqcznyoefslyrigkpnkdipbhhucdd` int DEFAULT NULL,\n PRIMARY KEY (`msrsffbjcrxtgrdomvvwaeqvtkcokzov`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"tzetkodbjogqjrhxuxwowogrhxsolvar\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["msrsffbjcrxtgrdomvvwaeqvtkcokzov"],"columns":[{"name":"msrsffbjcrxtgrdomvvwaeqvtkcokzov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"jqfstbkoyxaibdhpjrnewnjporjssbha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bgjklmpabkbwryaxttrvwwblylpbjwnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmjdplrsqxwwtsitzwpeigkfrgcxhdqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzyyybcmildnebrnjtldbuugxzfrzaqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnrslgyzysvczvskisjaemqmakcbcamt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vnzfvezqleaznygfmqkghbxidbouirwz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kgethotfuepfrstfddvmvesxqyjwhnrn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cslmusuvygvbwerbfgbfmphtaoyiomor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkithrfnjitlanjgtlxtxmfzximvdtbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"csrugkssbwdxyuktyrmaqtpxzwvbtbbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxrepueyhplrdbpnenxvoklyqclkyzvh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhvjcktzxbwkhvegptatxnugfwdxmweb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dusudimfnlzznpnqeqeidwpjlubdomoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzgvaaqcpyzomvqryhfuqqobfanmtial","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hupgdalxkonicxvovpyjpwtdhjrwnmcy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iflouasmqswpjupkqqdwoddxrbbdpxxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sgzsrjpjbhtmlekghdyhaojsohwqkbbi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"adrrbdmylsszzckekdzdzopelkiwqlhp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkwgiynkmyqqiouwiuhdgenspnzegjwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gwmexzovxwbftnwpgyrurifueazbqjir","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dmfbxrkpxzlaheitvtkrwbxvvvfdekbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajforhqwfhrapmncrjhjjuynhtchpgth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxomutaxanufvcfeadfeouqozqabbxvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pervmxgmumnvasjkodhwdtjnvhkakenc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtzbpriksoikjqjwhihtjfobcgztwhjl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"crmipbnzlrnnoxzaowoclqthvwbxcsuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jpqseyhiyvsutknbxhdfmfgqofetodgf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qynclvqxbcuatvmdurhtuujidxtuqbcg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wyzwepxyxprfymtfevkysnvcwddkxeol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"manwipmvkqfqepbrhcomchevavkeczhz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"izythqpzzffaframrldfsyfbnemjenkh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zlehrblynysfittwxsxehdhtwoddqjox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwnvctdptmkqmcpcelnnjxulmcmcbruj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghvgatxochimtzhwhommjrhjlwbdeabi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eucrdbwlcnnkxdupuktvyzmpkiyyjscq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bzvjgregdgjkdqohpghjaeoteremxoiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"scvodwhzlemwwuujcnzvkophvtfvjfuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdudfnzkicdwhtevdddydoywuszyguvn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbyklsheaeygcplqoymrzhkpmlblnsut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afpbslimsvzwjkplbqzolwxbbxtxocsl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"plzlmkqmgudjctxlugyfyvqpedopocyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wrtuhvochowcxwqhzaojnttijulwsghg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jloqmjqtjgpjxwtvtdrldeguetypjrgz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqdmxhryydxcwysmttjpgwnibbqavrmx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"becpcslxlaruozsomifstxjmjtdoogml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajygbvpcqmkdpqpwxgavctcaibthrbkk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cpvcixncywmtfnmiznovplhxzwrdbhqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ioxmxaildrzvitrueafdfyfmlnodxkzi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drllhgtohcfzazszyuebiinvynwdhspj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ylnadxmdudxqrbccfstikhxvbzzpzitd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rwwhrymzbkksjjazqsbkfhhnvbdutxri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qpujjawamkndlhfydlozxbjsbupivqpg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqbvfbgnqijnqhrffoahsemafzjsqvdh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtkpvsyfdzhxlnnwqsnnuauxyyellvis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"toftclnosxtgkyypteczvfudjqojumgi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgoprwlcqzfuilwbiypnoifwycbzajwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wukkycmfhctqlvqsyowcdtnithkhfclr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"czheusmchgodznymzpoldjjucrgoaoah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ihjfsyssfgxrohvxirpniedtqydlgduy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixelrigmeqfacfunzcnblrxdmyscuqxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmslnejiqusybhbyzklaakmwajeuwgqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctuwuyikthqltoihdhthcparsztzwlxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oryoegawbrftjdzaeczureecxmuepmhs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfhwiwczqwvqalavmbxrdxyobvgihjzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ymhgcceekbudxumynkpflioztpzgpinr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mepxccnkmjscxkrueouytuwhvggtspwc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzdxzehyesrcfdonufgzadgrfydswrvu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jpfpiargzhtwfiwzmolcjbtccemquvxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lcqrxpyszakljlrhgxfxxcppuakbgjgr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zktkszjaicmbnxaiyyrxueiiaxoymqyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsdqhwnzdcvtkcseaxmvzarvxsjfuxsz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udhdgruohkjjdemukbhrdmvkiwmqemmp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aoxzkkxqhmpltqxitomciqonwlueseup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjtsvaybvpbzdeymdvtnhtdvokcdpcae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cotnvfnlzrjvjkpyszdzvdsldpokmjxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fvsgmvcfafbgzvvmywkdzdfuaarmbsjw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdxdsnlnwjdcbxqdjosgmcccdshawvfj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znbqufpalbqjhehriniaclizuwtkbgmo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"baabvuqumayldkkkgsikyfmeucojrter","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofxsprtynpvnvnqaswfgmqfljyjyrunu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehincrgzlaogluorkcnegrqceaqmnrym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jbkjgnjzytxfdlfbkdmjscsuqzjcuvyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vvtjfjtonzsyvzuvcdxfxilrusykgnjc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pehpndkihkmuwvqlbzwwxilyfnoupyah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opeiecqfhvnnrlzutmtcxssmorwppihg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfnlctjxizsqkvclpofyrqvpswcoiyhr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbrqmiedryydahpvyizjnoxwpugnfjxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jxfgzomvreyxrbhcisuclcgjxfsyzshh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xpinirslzhjmurgpilvlggxkimttcyxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvxucfccdpvaoupwtkxwgrtanjaqqcut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbetwdiqlhwyjdeddnpigfgfrpcpjyyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxbdaerhnnwomuslqiduzdcxdcybunuu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlwbgvhksdataytxafvsijapwziezlli","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orghxiaqgyslkngbzysrzkcbpytqjxse","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gymvnlvmwxfppxxrpqetqkdacocycrpy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tthmfcgxlzgdwjpcswmmvvpycrdqkrcx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocwtaifuzvvlivftpnlmjfvuhrqtvauf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"anenoszfdnpegkgniqtjelurwldocdke","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xmryqcznyoefslyrigkpnkdipbhhucdd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671642,"databaseName":"models_schema","ddl":"CREATE TABLE `tzlncpqzqjgadnlmxsvbcgcpiljusbbe` (\n `wephehgecoqruvgvkndvlqiycpqtbrgt` int NOT NULL,\n `glhydrrklotccgozbskzibkokkfiupzr` int DEFAULT NULL,\n `nvgmnxcjwkpcqcukvwusdseyouqogpmy` int DEFAULT NULL,\n `qmdnyeyuzgsajsfsyomzsnzjrvkvxiip` int DEFAULT NULL,\n `okmohrxgdonhcwuryizqborrgrwnlqwb` int DEFAULT NULL,\n `phfmbbqbwvizneeotizcaslhxvbvimfj` int DEFAULT NULL,\n `svzlvifnmsfvbhwlwcdncvveysvnlupg` int DEFAULT NULL,\n `icopqrqbqvwhrhmvunpjdzwxyepzyyus` int DEFAULT NULL,\n `ocamhqpcivqybascwlpuyfaohdvkexsn` int DEFAULT NULL,\n `hssspjvotdhwvjkpwbsicwnndnbuewud` int DEFAULT NULL,\n `psorrwqnmekzkwpmrapmckvcgohqpltm` int DEFAULT NULL,\n `hylywzykrtextxgkvpuknrenziyqeoen` int DEFAULT NULL,\n `xexgjfqbeymbuowqxkxuspurdvaubexb` int DEFAULT NULL,\n `jvirmwtehjqsqvdjwolzaqyynafilryv` int DEFAULT NULL,\n `kpfhhrzllbdaiyxhbmilsmchsmgvmozo` int DEFAULT NULL,\n `xysdvpgqnvjpphfphpewwnwsxjpadsuv` int DEFAULT NULL,\n `vvohalnbjbgcwboihcryzlzojovmoidd` int DEFAULT NULL,\n `dxnwvkmmicnanymmnhwcqbtnlumisqix` int DEFAULT NULL,\n `wxyegqpwaveuhuvnzerkhxocvecyrcyg` int DEFAULT NULL,\n `xpudocietnfykwgpmqrfleasemzzdeaq` int DEFAULT NULL,\n `bwgsiljfwotayavuuhviofktsonlopro` int DEFAULT NULL,\n `mrzocwteaqlmqkuybiuwmxqueyuwnupu` int DEFAULT NULL,\n `njnfaehlxtaebgoiaznwvxxlwpfslgpw` int DEFAULT NULL,\n `rloyocdgrvazhjarjdpkyjajdkwjjlxx` int DEFAULT NULL,\n `bupexhfnzhebwevrjpzhwnzfqslcngee` int DEFAULT NULL,\n `ewgrwphuaejvghxqeqraquevmxzjxbav` int DEFAULT NULL,\n `dicuihifcxcxbzrvbfcvivnsfsjuzhug` int DEFAULT NULL,\n `irlfbigxoqyihaxpilawygmipcwixdzg` int DEFAULT NULL,\n `fzdlzujojsnxwhfpaqvseiovfnvomsbs` int DEFAULT NULL,\n `fmaetpjkicpfnaqzlzpkjoutnqbkbpat` int DEFAULT NULL,\n `ggygluvbdjbxeawiktncnszkdyhpzcda` int DEFAULT NULL,\n `fvhqxznuqnqqierxqeresvoxkkrvretk` int DEFAULT NULL,\n `moygpdzgxlpuvflshrsfmhrxzsovtowv` int DEFAULT NULL,\n `tddcrrkknhidqremrqgvwadxiusdeyyl` int DEFAULT NULL,\n `zknbirsjqkiffnjxfhttcwgpnzzvywzn` int DEFAULT NULL,\n `jjpgzybtbxxapmoueyykiruzypzddgyp` int DEFAULT NULL,\n `vluwjqkvkturuljbqfohqzwcrogwbxhy` int DEFAULT NULL,\n `efsojjcqeuqxpofjlfelkijjpvuagjqf` int DEFAULT NULL,\n `eysybglhmzobfzgthrihwtrlnsiuraci` int DEFAULT NULL,\n `pfdvmccpxntrsnwmvlkkgwnyuiucblbp` int DEFAULT NULL,\n `pxxyzrpljplkuskxmpdlgregcbwnfabj` int DEFAULT NULL,\n `asucvvrbjzjcihqrjoyebgbqdpzsrnix` int DEFAULT NULL,\n `qtqdveaihvomywehhiutedrznckmdrol` int DEFAULT NULL,\n `mvjysojwxydevtnmhcrpktkyrleashgd` int DEFAULT NULL,\n `zmhqskqkblvudqqdcsdgmoyxxioknaap` int DEFAULT NULL,\n `prfyzfcwejdxiadmawhkllgbmbwfwbcn` int DEFAULT NULL,\n `mumqbzinliptppcnfrtknodfguqavvvf` int DEFAULT NULL,\n `dntthbdbpdotyazlpeshutriqukrojfg` int DEFAULT NULL,\n `awhspuohmmmopzlbhqhoxkkwujqtksbc` int DEFAULT NULL,\n `utlmkwvccvateehvboynokwpkplecdcc` int DEFAULT NULL,\n `vbbtyzmrmtxqcslybnviiiikxpujdcap` int DEFAULT NULL,\n `ldnurxkdgnpzzuodxunwhbmjofnagalc` int DEFAULT NULL,\n `xnvevnkfxsojwtfnflpkxooymyxrsqea` int DEFAULT NULL,\n `zzggnsbtilttrucitxjlcgpfmcqxcqrb` int DEFAULT NULL,\n `qrxbsnbnplrltogwltlzbumgjkzzhoeb` int DEFAULT NULL,\n `vlcekhohxverzopclnumdztckfcqvkem` int DEFAULT NULL,\n `rlwdnmlykerrcvymnqxmzjspifojqvpz` int DEFAULT NULL,\n `ysdkcjocfgioljnyjgbbybglkeozfibe` int DEFAULT NULL,\n `ddnglxysyhltzryofpcssbuqpttuybpn` int DEFAULT NULL,\n `nkkmfklymixinpuzsozczfyjclxeycvn` int DEFAULT NULL,\n `jmkvfqynasuwkeljxzjtdkvrlcgloakh` int DEFAULT NULL,\n `rhgocqqvkikhmovrkcdfilabtcetzeql` int DEFAULT NULL,\n `yovlzdwiwzcwtmfjfxpgtouqedykzudg` int DEFAULT NULL,\n `gllrodxnudunxexgzvpgpfqqyuqygybe` int DEFAULT NULL,\n `ounsibspzrwrypmqaflaynonrsbofjzk` int DEFAULT NULL,\n `rlsahmyomrtpzbdoodqfdxddcloanfqm` int DEFAULT NULL,\n `xjqokgsqvcqomasxmfbmgkmqoxbpqgqh` int DEFAULT NULL,\n `dxtakfregrqqaxmphkozuwiiwhchlyrj` int DEFAULT NULL,\n `lgtycatzuxxflirmqehcoicibkztcgry` int DEFAULT NULL,\n `lbiirfadknlwmvoeiittqspmwbltdwtw` int DEFAULT NULL,\n `tuhrjmiivjxsypbfvimwanrwkbfmhxqh` int DEFAULT NULL,\n `yytztmvczzesglqahrsxrdmpyixapubk` int DEFAULT NULL,\n `swcqfbiyxliczfhpwnyfneuzqnjmhpgz` int DEFAULT NULL,\n `gffmrmrgrlunkquzichdgsekvmrwnffo` int DEFAULT NULL,\n `upfkulyyvfskvtdefnlkjbtinicokovz` int DEFAULT NULL,\n `sewyyxqnmflhqxyoolqqzwewnrvtfygt` int DEFAULT NULL,\n `weohiynvjhtqxlacrakukwxpewqgsqpr` int DEFAULT NULL,\n `kewtscdvsgljmxrdrvvrdgprdicrsmxi` int DEFAULT NULL,\n `qkkuxsauhkqkojijwfmhcrvqunxgavow` int DEFAULT NULL,\n `lqetarwzhlqjdjllgfjwfraqkqeixeoj` int DEFAULT NULL,\n `tgdlxfkavwwndesiiyrbtxivsabqfigu` int DEFAULT NULL,\n `idsorcljirmnfflgttmqqdnppnytfztl` int DEFAULT NULL,\n `oyuogpxiztvqzlbfinubbeptfixzbmff` int DEFAULT NULL,\n `mbyvumtlpgthabrtsebmwkiquthpfnae` int DEFAULT NULL,\n `gzxddhfmitzxasbospeoocwxhavgbjxf` int DEFAULT NULL,\n `jrykipdtximhsqssliefbbxyjyqwcmoh` int DEFAULT NULL,\n `iixepoqvhzurpwjhjohxfmwesgrstedd` int DEFAULT NULL,\n `hjedzhoshnhkmavcujijvjwwolakudhu` int DEFAULT NULL,\n `ugotgorcfxxxtnhfpxstttrrkcjycmhz` int DEFAULT NULL,\n `ajwcsjxygvbemtpaewqzktnnihryolvx` int DEFAULT NULL,\n `fbtyiffhujddpqemogagijvumetlufby` int DEFAULT NULL,\n `tfwpefjhtzkmgdifpvwwromchqvherwr` int DEFAULT NULL,\n `kpgexfckcwvwnprnfwxppdiaiybsovig` int DEFAULT NULL,\n `rboyeiqmcwsoxolwchjdmtfchpbimfcq` int DEFAULT NULL,\n `ypejrnhoqzhorjhsjrifjlabtjxptwbk` int DEFAULT NULL,\n `luzmmwjdcjjuavdgnyzvnqdhrnkrgbhj` int DEFAULT NULL,\n `elgmxvwpwwoolzmuzjbstceslsmiijhk` int DEFAULT NULL,\n `xkayqiajyafeubhztejnswmzfufhzxdc` int DEFAULT NULL,\n `minszlgcyrokwwbtivihcodbdtqegyzy` int DEFAULT NULL,\n `madsqqgvgbtvioonqvkyxkgvgapgswcu` int DEFAULT NULL,\n PRIMARY KEY (`wephehgecoqruvgvkndvlqiycpqtbrgt`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"tzlncpqzqjgadnlmxsvbcgcpiljusbbe\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["wephehgecoqruvgvkndvlqiycpqtbrgt"],"columns":[{"name":"wephehgecoqruvgvkndvlqiycpqtbrgt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"glhydrrklotccgozbskzibkokkfiupzr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvgmnxcjwkpcqcukvwusdseyouqogpmy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmdnyeyuzgsajsfsyomzsnzjrvkvxiip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"okmohrxgdonhcwuryizqborrgrwnlqwb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phfmbbqbwvizneeotizcaslhxvbvimfj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"svzlvifnmsfvbhwlwcdncvveysvnlupg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icopqrqbqvwhrhmvunpjdzwxyepzyyus","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocamhqpcivqybascwlpuyfaohdvkexsn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hssspjvotdhwvjkpwbsicwnndnbuewud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"psorrwqnmekzkwpmrapmckvcgohqpltm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hylywzykrtextxgkvpuknrenziyqeoen","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xexgjfqbeymbuowqxkxuspurdvaubexb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvirmwtehjqsqvdjwolzaqyynafilryv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kpfhhrzllbdaiyxhbmilsmchsmgvmozo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xysdvpgqnvjpphfphpewwnwsxjpadsuv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vvohalnbjbgcwboihcryzlzojovmoidd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxnwvkmmicnanymmnhwcqbtnlumisqix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxyegqpwaveuhuvnzerkhxocvecyrcyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xpudocietnfykwgpmqrfleasemzzdeaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bwgsiljfwotayavuuhviofktsonlopro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrzocwteaqlmqkuybiuwmxqueyuwnupu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njnfaehlxtaebgoiaznwvxxlwpfslgpw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rloyocdgrvazhjarjdpkyjajdkwjjlxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bupexhfnzhebwevrjpzhwnzfqslcngee","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ewgrwphuaejvghxqeqraquevmxzjxbav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dicuihifcxcxbzrvbfcvivnsfsjuzhug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"irlfbigxoqyihaxpilawygmipcwixdzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzdlzujojsnxwhfpaqvseiovfnvomsbs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmaetpjkicpfnaqzlzpkjoutnqbkbpat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggygluvbdjbxeawiktncnszkdyhpzcda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fvhqxznuqnqqierxqeresvoxkkrvretk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"moygpdzgxlpuvflshrsfmhrxzsovtowv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tddcrrkknhidqremrqgvwadxiusdeyyl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zknbirsjqkiffnjxfhttcwgpnzzvywzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjpgzybtbxxapmoueyykiruzypzddgyp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vluwjqkvkturuljbqfohqzwcrogwbxhy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"efsojjcqeuqxpofjlfelkijjpvuagjqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eysybglhmzobfzgthrihwtrlnsiuraci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pfdvmccpxntrsnwmvlkkgwnyuiucblbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxxyzrpljplkuskxmpdlgregcbwnfabj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"asucvvrbjzjcihqrjoyebgbqdpzsrnix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtqdveaihvomywehhiutedrznckmdrol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvjysojwxydevtnmhcrpktkyrleashgd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmhqskqkblvudqqdcsdgmoyxxioknaap","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prfyzfcwejdxiadmawhkllgbmbwfwbcn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mumqbzinliptppcnfrtknodfguqavvvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dntthbdbpdotyazlpeshutriqukrojfg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awhspuohmmmopzlbhqhoxkkwujqtksbc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utlmkwvccvateehvboynokwpkplecdcc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbbtyzmrmtxqcslybnviiiikxpujdcap","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ldnurxkdgnpzzuodxunwhbmjofnagalc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnvevnkfxsojwtfnflpkxooymyxrsqea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzggnsbtilttrucitxjlcgpfmcqxcqrb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qrxbsnbnplrltogwltlzbumgjkzzhoeb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vlcekhohxverzopclnumdztckfcqvkem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlwdnmlykerrcvymnqxmzjspifojqvpz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ysdkcjocfgioljnyjgbbybglkeozfibe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ddnglxysyhltzryofpcssbuqpttuybpn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nkkmfklymixinpuzsozczfyjclxeycvn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmkvfqynasuwkeljxzjtdkvrlcgloakh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhgocqqvkikhmovrkcdfilabtcetzeql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yovlzdwiwzcwtmfjfxpgtouqedykzudg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gllrodxnudunxexgzvpgpfqqyuqygybe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ounsibspzrwrypmqaflaynonrsbofjzk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlsahmyomrtpzbdoodqfdxddcloanfqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjqokgsqvcqomasxmfbmgkmqoxbpqgqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxtakfregrqqaxmphkozuwiiwhchlyrj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgtycatzuxxflirmqehcoicibkztcgry","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lbiirfadknlwmvoeiittqspmwbltdwtw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tuhrjmiivjxsypbfvimwanrwkbfmhxqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yytztmvczzesglqahrsxrdmpyixapubk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swcqfbiyxliczfhpwnyfneuzqnjmhpgz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gffmrmrgrlunkquzichdgsekvmrwnffo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upfkulyyvfskvtdefnlkjbtinicokovz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sewyyxqnmflhqxyoolqqzwewnrvtfygt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"weohiynvjhtqxlacrakukwxpewqgsqpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kewtscdvsgljmxrdrvvrdgprdicrsmxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qkkuxsauhkqkojijwfmhcrvqunxgavow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqetarwzhlqjdjllgfjwfraqkqeixeoj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tgdlxfkavwwndesiiyrbtxivsabqfigu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idsorcljirmnfflgttmqqdnppnytfztl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oyuogpxiztvqzlbfinubbeptfixzbmff","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbyvumtlpgthabrtsebmwkiquthpfnae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzxddhfmitzxasbospeoocwxhavgbjxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jrykipdtximhsqssliefbbxyjyqwcmoh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iixepoqvhzurpwjhjohxfmwesgrstedd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjedzhoshnhkmavcujijvjwwolakudhu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugotgorcfxxxtnhfpxstttrrkcjycmhz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajwcsjxygvbemtpaewqzktnnihryolvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbtyiffhujddpqemogagijvumetlufby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tfwpefjhtzkmgdifpvwwromchqvherwr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kpgexfckcwvwnprnfwxppdiaiybsovig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rboyeiqmcwsoxolwchjdmtfchpbimfcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypejrnhoqzhorjhsjrifjlabtjxptwbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"luzmmwjdcjjuavdgnyzvnqdhrnkrgbhj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"elgmxvwpwwoolzmuzjbstceslsmiijhk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkayqiajyafeubhztejnswmzfufhzxdc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"minszlgcyrokwwbtivihcodbdtqegyzy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"madsqqgvgbtvioonqvkyxkgvgapgswcu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671673,"databaseName":"models_schema","ddl":"CREATE TABLE `udikvvdsawrybndbmlsacvseeqbudtkz` (\n `bxzojuplpkznqxnywoaytcoydbrrqbcp` int NOT NULL,\n `hcgcshygkugayyeulfxayozzylltcdvb` int DEFAULT NULL,\n `hmslvfcldiazehimdhdipminyxchshqx` int DEFAULT NULL,\n `tztmdqisfdxulhprqnuzsfsgukbpmtxs` int DEFAULT NULL,\n `kurbyewqwzvcpinxgzplzhmmsmbhsoan` int DEFAULT NULL,\n `rusnsyypdhgxbaordwlgzmwvckzcirho` int DEFAULT NULL,\n `zmuymfvjxpqewmiobrtmiofpitlyrxhq` int DEFAULT NULL,\n `alufvhuzhdujuhjbzqmlhcxbpdakbnbk` int DEFAULT NULL,\n `ghgztxnzdrnpqletakglwojsutcnqewq` int DEFAULT NULL,\n `gupgvfcshzjmpuuachxtjqfvlnpkqwgt` int DEFAULT NULL,\n `lwuyqrdxhbvduppsqsgpuoaocibdcsie` int DEFAULT NULL,\n `qdhipvhforhovknlrxlyauyahlzmilha` int DEFAULT NULL,\n `zsegjcplrfvejilonohkzvpnxbowjxvf` int DEFAULT NULL,\n `ilopfppflwovrasuqyjyvyibfpcrogln` int DEFAULT NULL,\n `adlgtmuvlyyxvjxzwihxqyiyuxuxqwms` int DEFAULT NULL,\n `mqiljbaxphamyqpxapxgbbmtmwarxaqo` int DEFAULT NULL,\n `kojdneyybpciagfohtmatmdqermqyfbu` int DEFAULT NULL,\n `vztkdhhoiymsylllbxsrzfammfipfgzr` int DEFAULT NULL,\n `scqdonewimewskeomtygqyujdybtbkgc` int DEFAULT NULL,\n `liffwddaayvidsayxhdsjaixngazigmj` int DEFAULT NULL,\n `ukzlpfoluynpdvyuudokwdkmutrkcsim` int DEFAULT NULL,\n `gnueoklduniqxsdjjndliczpvrrmjdof` int DEFAULT NULL,\n `oorqdxhufvfycciigauerolvmbfonrbq` int DEFAULT NULL,\n `wenoipqedmqfdfsibupybuzwtxzimzka` int DEFAULT NULL,\n `ccjpidkrlkdzovrbxwoqcbgqwliqdrzq` int DEFAULT NULL,\n `jpplivceyaoskifpamcjhjzmknsfwfop` int DEFAULT NULL,\n `emyqbjdbfnjksbdzicbgobrfxqjvdygg` int DEFAULT NULL,\n `leshrnydpzywclpnhfwrklkwdibuwcku` int DEFAULT NULL,\n `gntkgozkttfjqudxpkjrnqulkvaptcsa` int DEFAULT NULL,\n `vxqazpmzwupyahmuvgiafcdgpcrrtngw` int DEFAULT NULL,\n `ayaugujmzrmronwrbhfdsojyralzafxt` int DEFAULT NULL,\n `czhkcjlgjonrckvfdcacsifxjtwsenzf` int DEFAULT NULL,\n `mediqapiwkqwmxspfzcmfaeiexzrzwlm` int DEFAULT NULL,\n `rokdkiucijeefwvnwyvplviaommtxdkz` int DEFAULT NULL,\n `zvnttfxukqlyidpblihktyxsuqfishdt` int DEFAULT NULL,\n `uhwqxftbqhorhwxmeitcwylpwemwoiiw` int DEFAULT NULL,\n `igolqmfbkfjdlfmczkfiujskjyibujdw` int DEFAULT NULL,\n `lapknwvqukuxwfbojgglnqprcixinzyh` int DEFAULT NULL,\n `tfrbojfwqpxvqeelvjnocbywwmpmibap` int DEFAULT NULL,\n `wjdqpbovdvmodqfmibwqvwoqaptwmlsj` int DEFAULT NULL,\n `fpatrhpkoiuyhxbsfgreyjclcvmmubpk` int DEFAULT NULL,\n `iiqsxhnjsdqkytjhjjazsggwecugatgs` int DEFAULT NULL,\n `unreqispcqfsmqqcdaqkmuopcbgarmga` int DEFAULT NULL,\n `gsnodkwuqixntpvoirucytzdmqmxhrgu` int DEFAULT NULL,\n `oeenaaewutqrqjwmfsrrcxnccgafmgsb` int DEFAULT NULL,\n `cqjbubbguyibgqbzohckllewstokrfrl` int DEFAULT NULL,\n `jdgyevrupfnquvxipdwgszparxpmrisr` int DEFAULT NULL,\n `dwccdcbwxqeptzdqqkdvffomxvqnuhrx` int DEFAULT NULL,\n `nemwsuscsgwyzjzreqewgyuqwkrcfpas` int DEFAULT NULL,\n `lqfhfejmrakadqlpcsrqycpoexlhxdfh` int DEFAULT NULL,\n `uvyyywrgjjhrpdqvhgiuqsklekwpudfq` int DEFAULT NULL,\n `sjguageexrpwusgqfugzlrooeqoykoyb` int DEFAULT NULL,\n `lkrvnrbpvgpqgjoclcbdatutnvlyvrwk` int DEFAULT NULL,\n `iychfcvrigbeuholaxlvuobvtnbnwxjc` int DEFAULT NULL,\n `pvdfudhjbsisbwnimrdkapbpakrisrrg` int DEFAULT NULL,\n `diferszjstgzhgiedfsiozcitxyxfpaz` int DEFAULT NULL,\n `amedomgomesntzbegluvcbimrthdlyel` int DEFAULT NULL,\n `uksqalaydphhdrrrkyhflvlnuudpvulu` int DEFAULT NULL,\n `cbxqbfqkduxedywvvefizlfemkbmhxgy` int DEFAULT NULL,\n `iqrabihhvhnbimyqhrlfbjgzxrioybbh` int DEFAULT NULL,\n `mvwrektkrryfzohmczorsooblfdkuwfe` int DEFAULT NULL,\n `dwrtgjntzyspgesnhappcdrgzgsuhetx` int DEFAULT NULL,\n `vtxtbihyrscjmkmcqvvdhjjrndptahpc` int DEFAULT NULL,\n `sbfjxkutnizouglxjnpjqrmajynetwhu` int DEFAULT NULL,\n `jhdxoumfkrknxrrmglrfgjiefzzqbrjv` int DEFAULT NULL,\n `suryictycqqgcunqcmykvkzeprpcxiqd` int DEFAULT NULL,\n `cdzlbvrloljqgojcsdpinlaiwvijgqlh` int DEFAULT NULL,\n `lrmruflyghmlalktrhsjvacucjdujhre` int DEFAULT NULL,\n `avgbhymfrsvgwxsvrdqcrwtwqwaxdgnl` int DEFAULT NULL,\n `oyeorvwriijhcatgzbcnegnflbojznwk` int DEFAULT NULL,\n `vsenzdsdfbyjeclfpazjiavjtpdvoaph` int DEFAULT NULL,\n `lnqqxhmiitvaowevtjaxbhdakopsnzcf` int DEFAULT NULL,\n `ibxsgqewloavbnggmaqnpnyzwnpajfzk` int DEFAULT NULL,\n `xnydvvdetqxqehxggjjjoyrmnjlglttw` int DEFAULT NULL,\n `pomewxkyjgyypximhrfvninrxcnxulti` int DEFAULT NULL,\n `htsmwiurkpdumlavsrbjxfnriuzhvboy` int DEFAULT NULL,\n `feyqkknclsvcovacyxlauwwswmpqswrl` int DEFAULT NULL,\n `pgqtwjfheynqokaawbvzjbbderqkyijf` int DEFAULT NULL,\n `eplnvprunnrozoilzvvrujqkffjjcfbh` int DEFAULT NULL,\n `bvfeqdlkvwhnnpjimzxnluwufpswqifo` int DEFAULT NULL,\n `bjivkisivgnuzpavgnvvhngopqrgmlzn` int DEFAULT NULL,\n `oetngeeywbdnpekazweyfpxtqaewrbop` int DEFAULT NULL,\n `cfwpfricpwwifucasjkfsdysllblhllb` int DEFAULT NULL,\n `yxirhcclusvkvehdlqtccfdgoeotyhky` int DEFAULT NULL,\n `qcyqadysmxehrtljrhzrltblyftkmpta` int DEFAULT NULL,\n `jvyqkdbxhchymdzpzhchckozplquwdzn` int DEFAULT NULL,\n `ujfjzfkeuzujbovzliwphpgoomzlcpec` int DEFAULT NULL,\n `njowujqggsqctvmokdylrzzfhlweipjb` int DEFAULT NULL,\n `joblcvqsiviclxqxmfsdxhtfohmmcudb` int DEFAULT NULL,\n `jldjrhkaxqflgeevlxsuuedinrdjnaws` int DEFAULT NULL,\n `xaojxvzczolcigstuynjhmpqxqotjmtp` int DEFAULT NULL,\n `omjdnscfzcddogfmjpwifvmvbpscrfix` int DEFAULT NULL,\n `srsneekxpsgivqmugfzuislbynrdcgyl` int DEFAULT NULL,\n `evmwvqmuzxiubfevqufriiytthmuchec` int DEFAULT NULL,\n `ckvalphgvprjqibtaxwnvevaiyxbbmxj` int DEFAULT NULL,\n `yktqczhseeuzigtjsfoxckbfksthznym` int DEFAULT NULL,\n `vgdlhfmvguznruhbgtrwlmgvhxxcptkv` int DEFAULT NULL,\n `ewexwnksmhoiypiwdujqkoknnvimwthy` int DEFAULT NULL,\n `yghktrsanooocnndnaswmaixihldzebo` int DEFAULT NULL,\n `ryeojfuhqrmfyqblhkrclfckiymrwdms` int DEFAULT NULL,\n PRIMARY KEY (`bxzojuplpkznqxnywoaytcoydbrrqbcp`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"udikvvdsawrybndbmlsacvseeqbudtkz\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["bxzojuplpkznqxnywoaytcoydbrrqbcp"],"columns":[{"name":"bxzojuplpkznqxnywoaytcoydbrrqbcp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"hcgcshygkugayyeulfxayozzylltcdvb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmslvfcldiazehimdhdipminyxchshqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tztmdqisfdxulhprqnuzsfsgukbpmtxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kurbyewqwzvcpinxgzplzhmmsmbhsoan","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rusnsyypdhgxbaordwlgzmwvckzcirho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmuymfvjxpqewmiobrtmiofpitlyrxhq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"alufvhuzhdujuhjbzqmlhcxbpdakbnbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghgztxnzdrnpqletakglwojsutcnqewq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gupgvfcshzjmpuuachxtjqfvlnpkqwgt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwuyqrdxhbvduppsqsgpuoaocibdcsie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdhipvhforhovknlrxlyauyahlzmilha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zsegjcplrfvejilonohkzvpnxbowjxvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ilopfppflwovrasuqyjyvyibfpcrogln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"adlgtmuvlyyxvjxzwihxqyiyuxuxqwms","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqiljbaxphamyqpxapxgbbmtmwarxaqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kojdneyybpciagfohtmatmdqermqyfbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vztkdhhoiymsylllbxsrzfammfipfgzr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"scqdonewimewskeomtygqyujdybtbkgc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"liffwddaayvidsayxhdsjaixngazigmj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ukzlpfoluynpdvyuudokwdkmutrkcsim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnueoklduniqxsdjjndliczpvrrmjdof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oorqdxhufvfycciigauerolvmbfonrbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wenoipqedmqfdfsibupybuzwtxzimzka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ccjpidkrlkdzovrbxwoqcbgqwliqdrzq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jpplivceyaoskifpamcjhjzmknsfwfop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"emyqbjdbfnjksbdzicbgobrfxqjvdygg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"leshrnydpzywclpnhfwrklkwdibuwcku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gntkgozkttfjqudxpkjrnqulkvaptcsa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxqazpmzwupyahmuvgiafcdgpcrrtngw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ayaugujmzrmronwrbhfdsojyralzafxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"czhkcjlgjonrckvfdcacsifxjtwsenzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mediqapiwkqwmxspfzcmfaeiexzrzwlm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rokdkiucijeefwvnwyvplviaommtxdkz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvnttfxukqlyidpblihktyxsuqfishdt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhwqxftbqhorhwxmeitcwylpwemwoiiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igolqmfbkfjdlfmczkfiujskjyibujdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lapknwvqukuxwfbojgglnqprcixinzyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tfrbojfwqpxvqeelvjnocbywwmpmibap","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjdqpbovdvmodqfmibwqvwoqaptwmlsj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpatrhpkoiuyhxbsfgreyjclcvmmubpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iiqsxhnjsdqkytjhjjazsggwecugatgs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unreqispcqfsmqqcdaqkmuopcbgarmga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gsnodkwuqixntpvoirucytzdmqmxhrgu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oeenaaewutqrqjwmfsrrcxnccgafmgsb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqjbubbguyibgqbzohckllewstokrfrl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdgyevrupfnquvxipdwgszparxpmrisr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwccdcbwxqeptzdqqkdvffomxvqnuhrx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nemwsuscsgwyzjzreqewgyuqwkrcfpas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqfhfejmrakadqlpcsrqycpoexlhxdfh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvyyywrgjjhrpdqvhgiuqsklekwpudfq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjguageexrpwusgqfugzlrooeqoykoyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lkrvnrbpvgpqgjoclcbdatutnvlyvrwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iychfcvrigbeuholaxlvuobvtnbnwxjc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pvdfudhjbsisbwnimrdkapbpakrisrrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"diferszjstgzhgiedfsiozcitxyxfpaz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"amedomgomesntzbegluvcbimrthdlyel","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uksqalaydphhdrrrkyhflvlnuudpvulu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbxqbfqkduxedywvvefizlfemkbmhxgy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqrabihhvhnbimyqhrlfbjgzxrioybbh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvwrektkrryfzohmczorsooblfdkuwfe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwrtgjntzyspgesnhappcdrgzgsuhetx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtxtbihyrscjmkmcqvvdhjjrndptahpc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbfjxkutnizouglxjnpjqrmajynetwhu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jhdxoumfkrknxrrmglrfgjiefzzqbrjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"suryictycqqgcunqcmykvkzeprpcxiqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cdzlbvrloljqgojcsdpinlaiwvijgqlh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lrmruflyghmlalktrhsjvacucjdujhre","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avgbhymfrsvgwxsvrdqcrwtwqwaxdgnl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oyeorvwriijhcatgzbcnegnflbojznwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsenzdsdfbyjeclfpazjiavjtpdvoaph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lnqqxhmiitvaowevtjaxbhdakopsnzcf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibxsgqewloavbnggmaqnpnyzwnpajfzk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnydvvdetqxqehxggjjjoyrmnjlglttw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pomewxkyjgyypximhrfvninrxcnxulti","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"htsmwiurkpdumlavsrbjxfnriuzhvboy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"feyqkknclsvcovacyxlauwwswmpqswrl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgqtwjfheynqokaawbvzjbbderqkyijf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eplnvprunnrozoilzvvrujqkffjjcfbh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvfeqdlkvwhnnpjimzxnluwufpswqifo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjivkisivgnuzpavgnvvhngopqrgmlzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oetngeeywbdnpekazweyfpxtqaewrbop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfwpfricpwwifucasjkfsdysllblhllb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxirhcclusvkvehdlqtccfdgoeotyhky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qcyqadysmxehrtljrhzrltblyftkmpta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvyqkdbxhchymdzpzhchckozplquwdzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujfjzfkeuzujbovzliwphpgoomzlcpec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njowujqggsqctvmokdylrzzfhlweipjb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"joblcvqsiviclxqxmfsdxhtfohmmcudb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jldjrhkaxqflgeevlxsuuedinrdjnaws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xaojxvzczolcigstuynjhmpqxqotjmtp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omjdnscfzcddogfmjpwifvmvbpscrfix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"srsneekxpsgivqmugfzuislbynrdcgyl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evmwvqmuzxiubfevqufriiytthmuchec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ckvalphgvprjqibtaxwnvevaiyxbbmxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yktqczhseeuzigtjsfoxckbfksthznym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgdlhfmvguznruhbgtrwlmgvhxxcptkv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ewexwnksmhoiypiwdujqkoknnvimwthy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yghktrsanooocnndnaswmaixihldzebo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ryeojfuhqrmfyqblhkrclfckiymrwdms","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671704,"databaseName":"models_schema","ddl":"CREATE TABLE `udizceykeqmjnuuejwuufbzihqpwbzfp` (\n `bxgnqzsycnlkzseaktegygswkmknbqjz` int NOT NULL,\n `mrbipgatshfwoksdshszgsczsauybett` int DEFAULT NULL,\n `rzqelhfsdjxaygzotmlcegiqshsktvzl` int DEFAULT NULL,\n `oxmbtvspwmofqsvmaewycezwhjzhfhsi` int DEFAULT NULL,\n `iqykdzxhstscuefikrczqjswnxbnjzst` int DEFAULT NULL,\n `oymkzztfqcnznoxnlcgpkzwmkfhbgmwp` int DEFAULT NULL,\n `sguzeeojcsalorraudmqycqidotybbgl` int DEFAULT NULL,\n `tkjjbuijsjqtsjfwcysmlrtgsqdjnyzi` int DEFAULT NULL,\n `mkqiififvajblctbrozhkhyyljefpdwj` int DEFAULT NULL,\n `bodtqylgxuezuemnioouwqfhggnleisu` int DEFAULT NULL,\n `mlxrckmtallrnjmvuclwrrjuanuazwdz` int DEFAULT NULL,\n `rufgfvoksnecacjjbluolyhjcuivbrbq` int DEFAULT NULL,\n `arushphcvbodpmnmtyznhiauvdfuihzz` int DEFAULT NULL,\n `yqyjbgpckhdbmghcvhmzclauhtclnajh` int DEFAULT NULL,\n `wmultmxolzrqjwsogwgbyalawhkoaxae` int DEFAULT NULL,\n `ujnepejwpzuxmyxryaxsjwthraixkobn` int DEFAULT NULL,\n `eqoxeyotklxrfxlztjswfoovjcwejemm` int DEFAULT NULL,\n `byrcmquncpawmoglingnigpzgwlhtijy` int DEFAULT NULL,\n `awqbyqkxwdagvzhqlbmovniootuhiqcs` int DEFAULT NULL,\n `lzpiuxkegspqyoohejxvaybwraucobdd` int DEFAULT NULL,\n `pgfonpgywrelgftabqcwrhrojmttbeeu` int DEFAULT NULL,\n `xiojevbaxhreggxryqjkqvaewlfhrida` int DEFAULT NULL,\n `jrygnxecxliubxecdxxvmqtcpzrczhxz` int DEFAULT NULL,\n `mrpvvegfydaasclbujphtgznvaegxsll` int DEFAULT NULL,\n `gpylfvnbhvkryonvomlbixunijlkenxv` int DEFAULT NULL,\n `wywzawakeazzinqezvpgozuovufksxma` int DEFAULT NULL,\n `bmsunvebnbwnuwpgswwqoxzyvmeugwjg` int DEFAULT NULL,\n `yvrxddyzaigitygabqfxjahbxmtqdiit` int DEFAULT NULL,\n `jyknpqievhmxzulrmnnzltwnnnlkdjnt` int DEFAULT NULL,\n `ovfcurprtwqrpqqzgrbeqppudhkecssq` int DEFAULT NULL,\n `pmxsrgwnusvjxfzlyhddiskiwfxlfvyk` int DEFAULT NULL,\n `zexdcobzrexaovzgnknqioypcamaxexm` int DEFAULT NULL,\n `uqutkcltddvptishnfqnziibvyiswngd` int DEFAULT NULL,\n `rdezyugejmncqbyadpupgxzwjhefyool` int DEFAULT NULL,\n `owlkcmsycahpphxqekiaozvfhoxigurf` int DEFAULT NULL,\n `qyfcjfwmxnbbsdczhgrhjnijuybncqmg` int DEFAULT NULL,\n `vcgdfjpccppjqfljmrgbvezdmlziwoqs` int DEFAULT NULL,\n `xopdqhsgpecudmpfsqyzjcorsmkzuexx` int DEFAULT NULL,\n `breyzfhwlbbpnsprwaqcltgcpolbdqmh` int DEFAULT NULL,\n `zltlmpmusszysdplbzwtcadczfudfnpq` int DEFAULT NULL,\n `ypurqkubksucujghmztzdonryigjrwfl` int DEFAULT NULL,\n `rcvgcoxieigrschuqehvjgvqhzfitfan` int DEFAULT NULL,\n `tgeitmipganqadtirkyugocodbjkgeqs` int DEFAULT NULL,\n `xbtnvifyviwkqqqdzmxjccarudfruzzd` int DEFAULT NULL,\n `zshoscxxbihiafphmfvyesaqvujhgzxi` int DEFAULT NULL,\n `rvzzyvrodaqfwhseizgrtqyezjfmtpet` int DEFAULT NULL,\n `wfpdmomprrobmclsbotexklajqkmerrg` int DEFAULT NULL,\n `cgdkxayaxweeptvcdzsbnlisoofwlgjh` int DEFAULT NULL,\n `zxdwihouoaalxzvldkdjbbbieyfvjfok` int DEFAULT NULL,\n `aqadzkpyyuviyphinyrzscnwersazzwh` int DEFAULT NULL,\n `fecncprgvwgwqvcwmzpwybatqglezrrk` int DEFAULT NULL,\n `kfgpuebiorlsgiskspeanaycpdjnsrad` int DEFAULT NULL,\n `qdnalesncxysmcxzhwalnlwxtjovsazz` int DEFAULT NULL,\n `qsiglreqapdtxnimttwxmntjyapoajwc` int DEFAULT NULL,\n `hvrctdlqpbtyyczlpygehquwgoarcldx` int DEFAULT NULL,\n `lawfxugmkgfycrfhzgbzgxtjtmxnpjtz` int DEFAULT NULL,\n `bnvualmpndefejuwjbnnmqfmuivsutym` int DEFAULT NULL,\n `htnawksmqqoqzzkgrfesxbygwztwybym` int DEFAULT NULL,\n `kctsnsbmjtfngeqyfovlbemuoyvinevt` int DEFAULT NULL,\n `jlkrbbkrpxktruazynuziplpvoazbpup` int DEFAULT NULL,\n `ukqzryepuugqhbwacekhhxcyufeyleom` int DEFAULT NULL,\n `yozdcqglgmsejlybqzgqkcvcsjubwlrd` int DEFAULT NULL,\n `kmttaedxijuvqcxjyjheutwpmcdsfvpm` int DEFAULT NULL,\n `oavlgykvubfkizohidvcgncxiciemhaw` int DEFAULT NULL,\n `raemxfovvppvricoqdysgbvcvtdwvspm` int DEFAULT NULL,\n `rmfyopnnbiaarfsdtpykyemervmmltyl` int DEFAULT NULL,\n `ramrzjxgbwlscyxkmgbagssgepzpfxnr` int DEFAULT NULL,\n `zjkyesednkoiahphqjlmevoztyzddnub` int DEFAULT NULL,\n `jmzalnbngvicvrgmggbgvwsqpqnluksr` int DEFAULT NULL,\n `urelnudbaljusinxtbutcgebwkbuecix` int DEFAULT NULL,\n `icuepuvmvjbwuqpkxfiafegmosbjgqyr` int DEFAULT NULL,\n `vvqffhebdgqhxtylouidxnmnbcvphrbv` int DEFAULT NULL,\n `nsnctexhildsctnnofvncmaipaobhuif` int DEFAULT NULL,\n `nlvcuvklbrextsmtvkipfzsupnoadbyf` int DEFAULT NULL,\n `lwjoexqvtdlaohmtiauegtiwpoppsqni` int DEFAULT NULL,\n `wlsdlkvusmhchbhtpplofqbdovydkzpv` int DEFAULT NULL,\n `amiedjiaazwbiioconnivrbwazseraty` int DEFAULT NULL,\n `parxrcbajyznityxifwphnwattjfyfbg` int DEFAULT NULL,\n `fkewtuqrqgopqjmzngphblyxzeeihnju` int DEFAULT NULL,\n `uzjxxzrjpmnbrtntxyvnvbzquvgxgkva` int DEFAULT NULL,\n `mhqxhynlqhfkptilqamdzkawwtxaydyf` int DEFAULT NULL,\n `annmnuhtnokijcqobexotuzgtdhwezwh` int DEFAULT NULL,\n `eposykyhghmkzevtdxgpwojjisntbcqk` int DEFAULT NULL,\n `ugxkiogueumwfholdhgmyqbpmvohstyi` int DEFAULT NULL,\n `sacrugrverbsismdtwilztesmtrszexs` int DEFAULT NULL,\n `uztjpgubmgwtxzmyzmhmoomnaqzgxseg` int DEFAULT NULL,\n `kbtglzlccxwwyzkdecwptvvxvhcydumn` int DEFAULT NULL,\n `fyjmspdxaymgdrclahqghqfyqahnvnhs` int DEFAULT NULL,\n `bchwticdqfxqidizhqgpugcixdxdyokd` int DEFAULT NULL,\n `xevwzkuxfoyqspenqyngeugscqqbzcpv` int DEFAULT NULL,\n `gubgmpokoodgnfhrahlssmurkjkqjisy` int DEFAULT NULL,\n `ynxajozuxkkydwznvwphbdkatygmxatn` int DEFAULT NULL,\n `cmdimccakbwmkdrcgomoewfgapfobakg` int DEFAULT NULL,\n `tbqnzsbpekgbvczyqmimezgpznfyelyp` int DEFAULT NULL,\n `qjsojnqhzepzykfocoepidygcesqcndt` int DEFAULT NULL,\n `cpepzijacrbpjpgrzvaxfdkbiczrywlq` int DEFAULT NULL,\n `emkrpnyyjwsmtkujtacxcpkuzdcrrgjv` int DEFAULT NULL,\n `erkdrcjtfipbdjwgrmkyvisumokqwgyz` int DEFAULT NULL,\n `izrvgxpnblwxehzqyybkgxqpasqcuptx` int DEFAULT NULL,\n `fyrrxmaruebncjllfyckakqrextifsdw` int DEFAULT NULL,\n PRIMARY KEY (`bxgnqzsycnlkzseaktegygswkmknbqjz`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"udizceykeqmjnuuejwuufbzihqpwbzfp\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["bxgnqzsycnlkzseaktegygswkmknbqjz"],"columns":[{"name":"bxgnqzsycnlkzseaktegygswkmknbqjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"mrbipgatshfwoksdshszgsczsauybett","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzqelhfsdjxaygzotmlcegiqshsktvzl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oxmbtvspwmofqsvmaewycezwhjzhfhsi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqykdzxhstscuefikrczqjswnxbnjzst","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oymkzztfqcnznoxnlcgpkzwmkfhbgmwp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sguzeeojcsalorraudmqycqidotybbgl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkjjbuijsjqtsjfwcysmlrtgsqdjnyzi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkqiififvajblctbrozhkhyyljefpdwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bodtqylgxuezuemnioouwqfhggnleisu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mlxrckmtallrnjmvuclwrrjuanuazwdz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rufgfvoksnecacjjbluolyhjcuivbrbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"arushphcvbodpmnmtyznhiauvdfuihzz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqyjbgpckhdbmghcvhmzclauhtclnajh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmultmxolzrqjwsogwgbyalawhkoaxae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujnepejwpzuxmyxryaxsjwthraixkobn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqoxeyotklxrfxlztjswfoovjcwejemm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"byrcmquncpawmoglingnigpzgwlhtijy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awqbyqkxwdagvzhqlbmovniootuhiqcs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lzpiuxkegspqyoohejxvaybwraucobdd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgfonpgywrelgftabqcwrhrojmttbeeu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xiojevbaxhreggxryqjkqvaewlfhrida","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jrygnxecxliubxecdxxvmqtcpzrczhxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrpvvegfydaasclbujphtgznvaegxsll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gpylfvnbhvkryonvomlbixunijlkenxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wywzawakeazzinqezvpgozuovufksxma","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bmsunvebnbwnuwpgswwqoxzyvmeugwjg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yvrxddyzaigitygabqfxjahbxmtqdiit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jyknpqievhmxzulrmnnzltwnnnlkdjnt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovfcurprtwqrpqqzgrbeqppudhkecssq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmxsrgwnusvjxfzlyhddiskiwfxlfvyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zexdcobzrexaovzgnknqioypcamaxexm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqutkcltddvptishnfqnziibvyiswngd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdezyugejmncqbyadpupgxzwjhefyool","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owlkcmsycahpphxqekiaozvfhoxigurf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qyfcjfwmxnbbsdczhgrhjnijuybncqmg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vcgdfjpccppjqfljmrgbvezdmlziwoqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xopdqhsgpecudmpfsqyzjcorsmkzuexx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"breyzfhwlbbpnsprwaqcltgcpolbdqmh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zltlmpmusszysdplbzwtcadczfudfnpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypurqkubksucujghmztzdonryigjrwfl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcvgcoxieigrschuqehvjgvqhzfitfan","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tgeitmipganqadtirkyugocodbjkgeqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbtnvifyviwkqqqdzmxjccarudfruzzd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zshoscxxbihiafphmfvyesaqvujhgzxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rvzzyvrodaqfwhseizgrtqyezjfmtpet","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfpdmomprrobmclsbotexklajqkmerrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgdkxayaxweeptvcdzsbnlisoofwlgjh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxdwihouoaalxzvldkdjbbbieyfvjfok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqadzkpyyuviyphinyrzscnwersazzwh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fecncprgvwgwqvcwmzpwybatqglezrrk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfgpuebiorlsgiskspeanaycpdjnsrad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdnalesncxysmcxzhwalnlwxtjovsazz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qsiglreqapdtxnimttwxmntjyapoajwc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hvrctdlqpbtyyczlpygehquwgoarcldx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lawfxugmkgfycrfhzgbzgxtjtmxnpjtz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnvualmpndefejuwjbnnmqfmuivsutym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"htnawksmqqoqzzkgrfesxbygwztwybym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kctsnsbmjtfngeqyfovlbemuoyvinevt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlkrbbkrpxktruazynuziplpvoazbpup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ukqzryepuugqhbwacekhhxcyufeyleom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yozdcqglgmsejlybqzgqkcvcsjubwlrd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kmttaedxijuvqcxjyjheutwpmcdsfvpm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oavlgykvubfkizohidvcgncxiciemhaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"raemxfovvppvricoqdysgbvcvtdwvspm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rmfyopnnbiaarfsdtpykyemervmmltyl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ramrzjxgbwlscyxkmgbagssgepzpfxnr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjkyesednkoiahphqjlmevoztyzddnub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmzalnbngvicvrgmggbgvwsqpqnluksr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urelnudbaljusinxtbutcgebwkbuecix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icuepuvmvjbwuqpkxfiafegmosbjgqyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vvqffhebdgqhxtylouidxnmnbcvphrbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nsnctexhildsctnnofvncmaipaobhuif","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nlvcuvklbrextsmtvkipfzsupnoadbyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwjoexqvtdlaohmtiauegtiwpoppsqni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wlsdlkvusmhchbhtpplofqbdovydkzpv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"amiedjiaazwbiioconnivrbwazseraty","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"parxrcbajyznityxifwphnwattjfyfbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fkewtuqrqgopqjmzngphblyxzeeihnju","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzjxxzrjpmnbrtntxyvnvbzquvgxgkva","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhqxhynlqhfkptilqamdzkawwtxaydyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"annmnuhtnokijcqobexotuzgtdhwezwh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eposykyhghmkzevtdxgpwojjisntbcqk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugxkiogueumwfholdhgmyqbpmvohstyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sacrugrverbsismdtwilztesmtrszexs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uztjpgubmgwtxzmyzmhmoomnaqzgxseg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kbtglzlccxwwyzkdecwptvvxvhcydumn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fyjmspdxaymgdrclahqghqfyqahnvnhs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bchwticdqfxqidizhqgpugcixdxdyokd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xevwzkuxfoyqspenqyngeugscqqbzcpv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gubgmpokoodgnfhrahlssmurkjkqjisy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynxajozuxkkydwznvwphbdkatygmxatn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmdimccakbwmkdrcgomoewfgapfobakg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbqnzsbpekgbvczyqmimezgpznfyelyp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjsojnqhzepzykfocoepidygcesqcndt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cpepzijacrbpjpgrzvaxfdkbiczrywlq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"emkrpnyyjwsmtkujtacxcpkuzdcrrgjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"erkdrcjtfipbdjwgrmkyvisumokqwgyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"izrvgxpnblwxehzqyybkgxqpasqcuptx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fyrrxmaruebncjllfyckakqrextifsdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671736,"databaseName":"models_schema","ddl":"CREATE TABLE `uflnnphheekurdaziorsgpfwdysuutca` (\n `rkzvmigwiktvwsllnmqpxvxqesmulihy` int NOT NULL,\n `gewiefdfxpvjglusquhtbyhkviafgaxp` int DEFAULT NULL,\n `jtdkqcqnbnugrxwkjqkpzetywoibhepi` int DEFAULT NULL,\n `pghhwllnyugoibfmxjhrpodvekydgsbf` int DEFAULT NULL,\n `ikaaqrsiwzpzjmudafxpertymgeorxhk` int DEFAULT NULL,\n `xggybmwtqjqtjgtnfgcfiqkurvrxrxfn` int DEFAULT NULL,\n `pppvghfvcyltxrnbldbcmacsdrpsimpz` int DEFAULT NULL,\n `yepcjngzzfuclplmsepsxzstdffdfvmc` int DEFAULT NULL,\n `fwcposgwpifzwwaautfcdtpkolsdlnwi` int DEFAULT NULL,\n `gwjibgipniskqkfpgunwuzrfyojkxvix` int DEFAULT NULL,\n `rfawatzhyzbtxhcnfwpaspejtdtcmccf` int DEFAULT NULL,\n `urslwizhpghdghgwlktaomtusgdlevmm` int DEFAULT NULL,\n `frzbiofazgfjwmfdbqpokjyfccybyalb` int DEFAULT NULL,\n `dgmqnsgkkctgiyqjnkluirgdzepfzyce` int DEFAULT NULL,\n `obilpuwffbyhlxpmbcdynrquknrxoiqr` int DEFAULT NULL,\n `yzdavrcxkdbbkufymbkjwwjtaubqvtkb` int DEFAULT NULL,\n `suzxhmuckxjrvxsbmcrqlfebjzipppag` int DEFAULT NULL,\n `kplirgiriptwzpzbxxfjbjsblojumdys` int DEFAULT NULL,\n `bfnvcywhbuebqckquhsmcppdgredthpv` int DEFAULT NULL,\n `hlcdufdwmplbhmyjthjcvbnmjbhlfqze` int DEFAULT NULL,\n `bwlhtcmzexvkmepljednnbmwflnzxqth` int DEFAULT NULL,\n `lgybcdjxckkvlkvrgbqbayqsbwiwmjyo` int DEFAULT NULL,\n `kcbdbgwsybefvbhcqpffxbkxbclwdfnz` int DEFAULT NULL,\n `gtltjkgkdrohmrorchvyfljowtzjszyv` int DEFAULT NULL,\n `bnfkjhjbyvolzibhigdtulyqdtzupaxi` int DEFAULT NULL,\n `fmjdibfgdanmhradefufokdjsvfoluct` int DEFAULT NULL,\n `yduxcvjxnfjiyrknzhbxcwusivnibhbq` int DEFAULT NULL,\n `nachjvxmtwiaxjhxakruvpsqhevdqivw` int DEFAULT NULL,\n `ucofqozvjglsslqnmbsozvoischlpeuq` int DEFAULT NULL,\n `ssnwtgwlyhkvxxfjgbylaojdrjwvoaor` int DEFAULT NULL,\n `orcisbvvpaktzdeokwqyzsjsrlfyjvrq` int DEFAULT NULL,\n `ehibnozkqhfckyupvdgtgbdvlzzpgqwc` int DEFAULT NULL,\n `wqwgmturzzrqjjlutjxzjtozgptonbey` int DEFAULT NULL,\n `aksftwsyppppnzefhdolsurobkqriyjm` int DEFAULT NULL,\n `ciqpbwbnillhijpdhybmvzwfkmerutlg` int DEFAULT NULL,\n `unxniuanptxsrbjwblxhimawqcpqrtro` int DEFAULT NULL,\n `pyvyjevudbgxeqgyclrwtjinlounxwvp` int DEFAULT NULL,\n `urljaqzplnykdlpjlasqjnzqhjkdwffr` int DEFAULT NULL,\n `zgguereqwouupghyovxrhlknwihvkjog` int DEFAULT NULL,\n `tpqrnzuvnuwcqgtlozzrbkflkyqgqioo` int DEFAULT NULL,\n `vyktnawlorgaevyexmkgfzgkrmqftckw` int DEFAULT NULL,\n `drnztftgmriqwtkqtujmrvvzaxvroiye` int DEFAULT NULL,\n `mcwberewgdwolzkkwtdhecpacogjqxdn` int DEFAULT NULL,\n `cojdltuomsfxsaqsppapfcuoaxxdycik` int DEFAULT NULL,\n `facaamfnijpznsjcwcszggmlbdsmwmjr` int DEFAULT NULL,\n `vgkxgrtjqsetaagdkmhizczuakmorpzx` int DEFAULT NULL,\n `rvhavvycznbzpibfuhelfxowpeuabekh` int DEFAULT NULL,\n `frhkeiykocvgtssmbkunwiusnhfjsvhp` int DEFAULT NULL,\n `xvrfzxyaagbcipmmyrujeycsvpiciuuf` int DEFAULT NULL,\n `ezozbveqgetsnoddlsjtjssxjnwkagkw` int DEFAULT NULL,\n `vghjlotccqvciysvampilsolzpuvhnvu` int DEFAULT NULL,\n `rwpbbpnugqdmparxccqtxmxijzurqcmb` int DEFAULT NULL,\n `nlsgiocjcohkrucoyypludkvdtysbigj` int DEFAULT NULL,\n `axeurdzbtzcttmynvfgueukhtmexzfaw` int DEFAULT NULL,\n `hhxqwkkftuixkzahjmgjnllqwbzqweue` int DEFAULT NULL,\n `tnpsrktsbumeporxmfavhkezapnyvpem` int DEFAULT NULL,\n `leqvmodjufjsjkqwgumaofjzhfbywlfg` int DEFAULT NULL,\n `hqoynenvndtchuqlkttftipbvuvymilb` int DEFAULT NULL,\n `craarudnkadcdrhykqqjeysliuedszsy` int DEFAULT NULL,\n `kcuhotmctpxvamjkwrzcbzfxdrrfcxas` int DEFAULT NULL,\n `gdbqverxgeagrwmzuuycgmdhhvbsuphx` int DEFAULT NULL,\n `jntmwwmjsyazllswimthjvsvqsarydlq` int DEFAULT NULL,\n `ekkleectwmuttszyerkvkkvzbeltigta` int DEFAULT NULL,\n `stfrdzzrkjmbxjtiofvtmdhcainwdcvl` int DEFAULT NULL,\n `vqpmzmxnlyihqsrsqgswlxmqzhrasbue` int DEFAULT NULL,\n `hcuqdczarrpquegcwfjkgwbyfqqequph` int DEFAULT NULL,\n `anuknyeocupmypecaepkduqughyjwkvx` int DEFAULT NULL,\n `xqbiggndoqnpggiufwfqkmnmcocwfnxm` int DEFAULT NULL,\n `xkexgqoutnyvkyydiblemxhmhqdlmqyu` int DEFAULT NULL,\n `gmbmgukfxjbevwmivqicihmvwnmqansp` int DEFAULT NULL,\n `ldxjxtqjwefwletjdparzlrorbdnesvy` int DEFAULT NULL,\n `grudblylvshwjxsatntyaxskfigovgyq` int DEFAULT NULL,\n `yurmlchnhllagdthneoqcqaposjeyksu` int DEFAULT NULL,\n `xsjvhemwvkebubzdbybghucniptjezmr` int DEFAULT NULL,\n `sfdzynhhwdwdagogkokxjgznswndirot` int DEFAULT NULL,\n `igqourtfeinjkkzlqcnuiuzgdgnzupkd` int DEFAULT NULL,\n `wyofjyiwypqqehpvpafashugzzqkwflq` int DEFAULT NULL,\n `xumvgkowvkcjimpwxttcsnqlfmbmrkyt` int DEFAULT NULL,\n `ypykmrfointmeexpzsbumacuouwnikid` int DEFAULT NULL,\n `rlkfdexzhtizddkpwfoaozopxfifuxou` int DEFAULT NULL,\n `xshffrqhmzwmahglpsnbykkkykppocnm` int DEFAULT NULL,\n `cbcepynqogqhyuupgdzxxrpvphcsvywd` int DEFAULT NULL,\n `vpciftawhpxggrdfivgvscpjdeftaxzy` int DEFAULT NULL,\n `mvvxqnpyaqirkxpfshifnabfgtpfnnck` int DEFAULT NULL,\n `gnrheskprndjxyidjwktxzurvaepebfh` int DEFAULT NULL,\n `ywpkijuxcwacdzuutsdgxyghasnizpcq` int DEFAULT NULL,\n `okvsfchlbhmbajzeqrhqxiutrncqbktj` int DEFAULT NULL,\n `aarfjjenqjehmuqcseqajknbwmddhvcr` int DEFAULT NULL,\n `arbblfmqsmedecafymylchslkbgfszoc` int DEFAULT NULL,\n `jycewjtpclinqtimqpdljxrpemtvtgqt` int DEFAULT NULL,\n `pgopgdpilqzwwsnbfrljihkwmjbwkmys` int DEFAULT NULL,\n `difurhfuraojlqyirblendxcbljljswb` int DEFAULT NULL,\n `pnelubjwphfcoeejdkfirqodkpymratp` int DEFAULT NULL,\n `vogysyotmtrwmwljdlexpyltmoefyudq` int DEFAULT NULL,\n `rgrfzjyhklicevrzaklsrdneweenghgl` int DEFAULT NULL,\n `ldprbyjgtxwlxmkxuwjjkmlooyekjyng` int DEFAULT NULL,\n `xvdbftpiklfebxcrjakvxewmhkczljpm` int DEFAULT NULL,\n `twanqwddbukdjdgoopgmzvcvllpcldbn` int DEFAULT NULL,\n `qwjesazlpmayqyuvpckuftjlozmglmgn` int DEFAULT NULL,\n `axfhsjoxxbagynxrflxotmnztlbkiylz` int DEFAULT NULL,\n PRIMARY KEY (`rkzvmigwiktvwsllnmqpxvxqesmulihy`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"uflnnphheekurdaziorsgpfwdysuutca\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["rkzvmigwiktvwsllnmqpxvxqesmulihy"],"columns":[{"name":"rkzvmigwiktvwsllnmqpxvxqesmulihy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"gewiefdfxpvjglusquhtbyhkviafgaxp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jtdkqcqnbnugrxwkjqkpzetywoibhepi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pghhwllnyugoibfmxjhrpodvekydgsbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikaaqrsiwzpzjmudafxpertymgeorxhk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xggybmwtqjqtjgtnfgcfiqkurvrxrxfn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pppvghfvcyltxrnbldbcmacsdrpsimpz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yepcjngzzfuclplmsepsxzstdffdfvmc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwcposgwpifzwwaautfcdtpkolsdlnwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gwjibgipniskqkfpgunwuzrfyojkxvix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfawatzhyzbtxhcnfwpaspejtdtcmccf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urslwizhpghdghgwlktaomtusgdlevmm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"frzbiofazgfjwmfdbqpokjyfccybyalb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgmqnsgkkctgiyqjnkluirgdzepfzyce","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obilpuwffbyhlxpmbcdynrquknrxoiqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzdavrcxkdbbkufymbkjwwjtaubqvtkb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"suzxhmuckxjrvxsbmcrqlfebjzipppag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kplirgiriptwzpzbxxfjbjsblojumdys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bfnvcywhbuebqckquhsmcppdgredthpv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlcdufdwmplbhmyjthjcvbnmjbhlfqze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bwlhtcmzexvkmepljednnbmwflnzxqth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgybcdjxckkvlkvrgbqbayqsbwiwmjyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kcbdbgwsybefvbhcqpffxbkxbclwdfnz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtltjkgkdrohmrorchvyfljowtzjszyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnfkjhjbyvolzibhigdtulyqdtzupaxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmjdibfgdanmhradefufokdjsvfoluct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yduxcvjxnfjiyrknzhbxcwusivnibhbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nachjvxmtwiaxjhxakruvpsqhevdqivw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ucofqozvjglsslqnmbsozvoischlpeuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ssnwtgwlyhkvxxfjgbylaojdrjwvoaor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orcisbvvpaktzdeokwqyzsjsrlfyjvrq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehibnozkqhfckyupvdgtgbdvlzzpgqwc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqwgmturzzrqjjlutjxzjtozgptonbey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aksftwsyppppnzefhdolsurobkqriyjm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ciqpbwbnillhijpdhybmvzwfkmerutlg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unxniuanptxsrbjwblxhimawqcpqrtro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pyvyjevudbgxeqgyclrwtjinlounxwvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urljaqzplnykdlpjlasqjnzqhjkdwffr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zgguereqwouupghyovxrhlknwihvkjog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpqrnzuvnuwcqgtlozzrbkflkyqgqioo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vyktnawlorgaevyexmkgfzgkrmqftckw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drnztftgmriqwtkqtujmrvvzaxvroiye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcwberewgdwolzkkwtdhecpacogjqxdn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cojdltuomsfxsaqsppapfcuoaxxdycik","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"facaamfnijpznsjcwcszggmlbdsmwmjr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgkxgrtjqsetaagdkmhizczuakmorpzx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rvhavvycznbzpibfuhelfxowpeuabekh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"frhkeiykocvgtssmbkunwiusnhfjsvhp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvrfzxyaagbcipmmyrujeycsvpiciuuf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezozbveqgetsnoddlsjtjssxjnwkagkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vghjlotccqvciysvampilsolzpuvhnvu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rwpbbpnugqdmparxccqtxmxijzurqcmb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nlsgiocjcohkrucoyypludkvdtysbigj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axeurdzbtzcttmynvfgueukhtmexzfaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhxqwkkftuixkzahjmgjnllqwbzqweue","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnpsrktsbumeporxmfavhkezapnyvpem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"leqvmodjufjsjkqwgumaofjzhfbywlfg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqoynenvndtchuqlkttftipbvuvymilb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"craarudnkadcdrhykqqjeysliuedszsy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kcuhotmctpxvamjkwrzcbzfxdrrfcxas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdbqverxgeagrwmzuuycgmdhhvbsuphx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jntmwwmjsyazllswimthjvsvqsarydlq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekkleectwmuttszyerkvkkvzbeltigta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"stfrdzzrkjmbxjtiofvtmdhcainwdcvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqpmzmxnlyihqsrsqgswlxmqzhrasbue","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hcuqdczarrpquegcwfjkgwbyfqqequph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"anuknyeocupmypecaepkduqughyjwkvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqbiggndoqnpggiufwfqkmnmcocwfnxm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkexgqoutnyvkyydiblemxhmhqdlmqyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmbmgukfxjbevwmivqicihmvwnmqansp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ldxjxtqjwefwletjdparzlrorbdnesvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grudblylvshwjxsatntyaxskfigovgyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yurmlchnhllagdthneoqcqaposjeyksu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsjvhemwvkebubzdbybghucniptjezmr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfdzynhhwdwdagogkokxjgznswndirot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igqourtfeinjkkzlqcnuiuzgdgnzupkd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wyofjyiwypqqehpvpafashugzzqkwflq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xumvgkowvkcjimpwxttcsnqlfmbmrkyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypykmrfointmeexpzsbumacuouwnikid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlkfdexzhtizddkpwfoaozopxfifuxou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xshffrqhmzwmahglpsnbykkkykppocnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbcepynqogqhyuupgdzxxrpvphcsvywd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpciftawhpxggrdfivgvscpjdeftaxzy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvvxqnpyaqirkxpfshifnabfgtpfnnck","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnrheskprndjxyidjwktxzurvaepebfh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywpkijuxcwacdzuutsdgxyghasnizpcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"okvsfchlbhmbajzeqrhqxiutrncqbktj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aarfjjenqjehmuqcseqajknbwmddhvcr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"arbblfmqsmedecafymylchslkbgfszoc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jycewjtpclinqtimqpdljxrpemtvtgqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgopgdpilqzwwsnbfrljihkwmjbwkmys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"difurhfuraojlqyirblendxcbljljswb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnelubjwphfcoeejdkfirqodkpymratp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vogysyotmtrwmwljdlexpyltmoefyudq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgrfzjyhklicevrzaklsrdneweenghgl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ldprbyjgtxwlxmkxuwjjkmlooyekjyng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvdbftpiklfebxcrjakvxewmhkczljpm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twanqwddbukdjdgoopgmzvcvllpcldbn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwjesazlpmayqyuvpckuftjlozmglmgn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axfhsjoxxbagynxrflxotmnztlbkiylz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671770,"databaseName":"models_schema","ddl":"CREATE TABLE `uhncixqtyhjsicsgvnamwatzwbpgfqld` (\n `wlgfodccepybwnnlwczvcskqxhiicpng` int NOT NULL,\n `pforffmtqznulzclnijmukrriomndeek` int DEFAULT NULL,\n `aqyllktweptbarhdymrwljihwoadfzhi` int DEFAULT NULL,\n `gqtsodnfrndilwzrwvnthewfyziskocz` int DEFAULT NULL,\n `xzqdrkvysjnmcvxvvabqijmormnvbscb` int DEFAULT NULL,\n `rpnfhsynuilccfgmdnggrlllipsqnndj` int DEFAULT NULL,\n `thopurypvkfihjuwlvwckflpljjhvkrz` int DEFAULT NULL,\n `ytuixlhsfqwdxsjvjixhrlqqicbnduxv` int DEFAULT NULL,\n `lcvaqxxoctlsxfjifpzqewofvnnupixo` int DEFAULT NULL,\n `ixodniefjkdfhnihgbzgaejwmywgqrby` int DEFAULT NULL,\n `acnwtocdqmyqqpzdqenjacbtqasrczhs` int DEFAULT NULL,\n `uxhtdzxxrivxfywqbbxphbcbhynsneor` int DEFAULT NULL,\n `dwtftrzsfldalupgrfcnckpxiiyqedls` int DEFAULT NULL,\n `unotrfiiqkrrrgifcoodupjkcovzukyz` int DEFAULT NULL,\n `tekkkqhxczrsbdwdjtsmebuzeitizgjj` int DEFAULT NULL,\n `oiqstkaelrmiaezpjzppixygygbzjsbh` int DEFAULT NULL,\n `byvxvcusnhpvzpzeqltyggidgberedlt` int DEFAULT NULL,\n `vmkdzzmwcfpjbbavqxogfvogbabamhoz` int DEFAULT NULL,\n `dfbwaodpateouuipnxumvtlcphmprwpa` int DEFAULT NULL,\n `pfjtoclobbqzljevezhgihbajpyanuiv` int DEFAULT NULL,\n `gjneljmbprbljfkxrkdukjbiibuiidus` int DEFAULT NULL,\n `wwhgibejgyyrkmmpsnvtumnjvihzbmwe` int DEFAULT NULL,\n `fsbrdvxvmkvvtricmtvzffjcrqbhtxrm` int DEFAULT NULL,\n `zltujcmkteitkaadhjvfsqlcwuecrwyr` int DEFAULT NULL,\n `esdkbwlpjwczgkyhidhilirqlhxwyqjv` int DEFAULT NULL,\n `zijokmcqplmdubrojrwrwpqmjjfuwggy` int DEFAULT NULL,\n `pdpxrzqeiyriqptkkzplfnguldtaxryb` int DEFAULT NULL,\n `qtzgttkbdvtsvjpjituxhqmskdxnxpvz` int DEFAULT NULL,\n `vzuebzlmsnccaxyqlxtlyxhhxbjrtbsa` int DEFAULT NULL,\n `tdvptngptevljrnhdkprgeswodtmdrni` int DEFAULT NULL,\n `teiitsbskilfsqyljmvjdryockaamcbz` int DEFAULT NULL,\n `hczjghykcqnlrbcmnhuhiedohokynwuq` int DEFAULT NULL,\n `ckhhbfwnywifswkqdylarejpcedsrlrm` int DEFAULT NULL,\n `pdgmwbyloxjdzrdbougkwryqprmabxdb` int DEFAULT NULL,\n `nnfwuqzqbqmvvwenscedfgmzgnyvxwut` int DEFAULT NULL,\n `aflqzygdfbtshgelbrredyudzkdjqwxk` int DEFAULT NULL,\n `trawykqqnucqinzttvhucbmxdjwkztds` int DEFAULT NULL,\n `berbrgqdihwptyzqrvztvqhrfodettwv` int DEFAULT NULL,\n `jgndhfejhvlrpvibznwozatbzbvnqqjn` int DEFAULT NULL,\n `vxwohmoluzguhiqluotgboonvumibjsd` int DEFAULT NULL,\n `mtbxxdmboqxebmyhjdcfrmtlonzkehig` int DEFAULT NULL,\n `qslvjqbblivpbqmxbdrwwahtjloaijjo` int DEFAULT NULL,\n `aclyiwxyvhqrmbxhuoyddxpbbkczayxg` int DEFAULT NULL,\n `qfccuqdxtnxautsssrhgtbyxakybipaa` int DEFAULT NULL,\n `vxmqzurthxzttzschfalsuqvjfvnudva` int DEFAULT NULL,\n `iggdpzuqiewmbijvvseitosspflcdmjq` int DEFAULT NULL,\n `xiebdjdmplmzcvxiaqjycbdrahieraba` int DEFAULT NULL,\n `exnkvsyycvfvfxyprhqaojwtnowiumpe` int DEFAULT NULL,\n `qqhbguolfnrhnmbkujohfhumubhiscjp` int DEFAULT NULL,\n `fswmnwnctkiooduefxnuredqelmlkdmt` int DEFAULT NULL,\n `vsrkjyzkauuonyaharororgemnxdqlle` int DEFAULT NULL,\n `ccpsfblquvolksgxlrhqmggkrssaatch` int DEFAULT NULL,\n `wgcuioejmdptlemdxclkznbfiuktgfcz` int DEFAULT NULL,\n `vejimydriorhvmjuafzqetkprlcnladf` int DEFAULT NULL,\n `ulevxwsipymtechfitsassndfswemfec` int DEFAULT NULL,\n `somgnisbzfszrryticbywouwatmmizvx` int DEFAULT NULL,\n `geqojnbmtprwujzmyaywdafxlwgjwpdz` int DEFAULT NULL,\n `tgsrngpcytsuresletaudbqumzxpzyuq` int DEFAULT NULL,\n `spcgnxwblijdvmgtwhgyvsgpqsqqjvyo` int DEFAULT NULL,\n `eepxlwjtquylgdjconoboefwaasxmucz` int DEFAULT NULL,\n `fomnbbwyogwzlchtfkmftlphtxemeimz` int DEFAULT NULL,\n `ekrxmhuzrorhvcvwttuyibaxfrkytrru` int DEFAULT NULL,\n `vybchklfmkdfwakbdeithwzcqnkxmnuj` int DEFAULT NULL,\n `pxseqvgkdiibifktmvaaivkeopsywaea` int DEFAULT NULL,\n `xipnwlpkrlpewsqzcxoqpibzaspxynwv` int DEFAULT NULL,\n `jvuiplvfuhtohvbzbldminyoikjkpyjs` int DEFAULT NULL,\n `ysbuxlrtechbpoxhifqqsgcvdfjiaeli` int DEFAULT NULL,\n `flotqetpaypwqnwyrjuuzbzlmahabyme` int DEFAULT NULL,\n `jbtbwfopcfqixzbkratfciqpgpbekbfm` int DEFAULT NULL,\n `zsppfnyejpowfwwqdvgdmrycrkpntqtt` int DEFAULT NULL,\n `zsrwtfrejqbbshahgazafnamtgrtkzvy` int DEFAULT NULL,\n `xheziouwqqityorgrvixrnevskbixvel` int DEFAULT NULL,\n `ocbyajvnumctlowkwbohhkeuqctvczjp` int DEFAULT NULL,\n `vwhijuixentcwwfvhfgwlskoeedzuedo` int DEFAULT NULL,\n `fxjabaevtzqlziliktitrdfcpxlbkfyi` int DEFAULT NULL,\n `nuqnjnbxfoiiaplxjvgbmqghbpurhjnl` int DEFAULT NULL,\n `irgvoweuhhfcsyyjexptqbvjzurdagpn` int DEFAULT NULL,\n `ddtpmrueedwhdhegxqzmmmzgdszoqqsw` int DEFAULT NULL,\n `dpcbqjevmhntoyllzfaxnkoogothymou` int DEFAULT NULL,\n `mudqlbtdknjezikkakbmnwixigcqzgyz` int DEFAULT NULL,\n `nixzcfvlrdnqdwkufepajteapyynumjh` int DEFAULT NULL,\n `htqyerjgvuivbbivimwxiqkujwqnarsi` int DEFAULT NULL,\n `burlvubgrnqihgbahsutjrkakgyzhnxm` int DEFAULT NULL,\n `uqinsoydyxefrcgzefdljidomrmjtauv` int DEFAULT NULL,\n `upexhyrcwraeklfoxmljuvbzvoilupph` int DEFAULT NULL,\n `dbqjennslawsddnghpicelfegpptvipj` int DEFAULT NULL,\n `artqavypcfwmhofthcwopprqtquueycs` int DEFAULT NULL,\n `ilfzobfqkzdpbpinzgwhltuikxveyyar` int DEFAULT NULL,\n `rpxhzinbckafxgwduyuxpclwcriyvggi` int DEFAULT NULL,\n `jhlsjajrxblbzzecechhgiexfcqjhuvf` int DEFAULT NULL,\n `vfvfokacnxmcgudrmnzaiokbtpskayef` int DEFAULT NULL,\n `honkqhrbogpxelmxrqckexmryiocwqrr` int DEFAULT NULL,\n `gsbbeibzghmkwaqrrdjanuhqtdgptfpf` int DEFAULT NULL,\n `kxkxfkafdmohybxqwzwowhnsthkuizac` int DEFAULT NULL,\n `ksvdwglkbdwcxrgqmesxydcyfiwnmuao` int DEFAULT NULL,\n `chuiuqtofpsbaqwebojvwhmtacvucnbx` int DEFAULT NULL,\n `wpumeoutowrujuhkvcsbjchulmvceekz` int DEFAULT NULL,\n `mjrsplxaucgrtqpoycvtriyiochvhbve` int DEFAULT NULL,\n `daivvmuvyztcyjdqtvvcwhzlqecoktmy` int DEFAULT NULL,\n `ppkevwhnluyrqmrwhmenoksgztnnzgnj` int DEFAULT NULL,\n PRIMARY KEY (`wlgfodccepybwnnlwczvcskqxhiicpng`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"uhncixqtyhjsicsgvnamwatzwbpgfqld\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["wlgfodccepybwnnlwczvcskqxhiicpng"],"columns":[{"name":"wlgfodccepybwnnlwczvcskqxhiicpng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"pforffmtqznulzclnijmukrriomndeek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqyllktweptbarhdymrwljihwoadfzhi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqtsodnfrndilwzrwvnthewfyziskocz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xzqdrkvysjnmcvxvvabqijmormnvbscb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpnfhsynuilccfgmdnggrlllipsqnndj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thopurypvkfihjuwlvwckflpljjhvkrz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytuixlhsfqwdxsjvjixhrlqqicbnduxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lcvaqxxoctlsxfjifpzqewofvnnupixo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixodniefjkdfhnihgbzgaejwmywgqrby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"acnwtocdqmyqqpzdqenjacbtqasrczhs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxhtdzxxrivxfywqbbxphbcbhynsneor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwtftrzsfldalupgrfcnckpxiiyqedls","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unotrfiiqkrrrgifcoodupjkcovzukyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tekkkqhxczrsbdwdjtsmebuzeitizgjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oiqstkaelrmiaezpjzppixygygbzjsbh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"byvxvcusnhpvzpzeqltyggidgberedlt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vmkdzzmwcfpjbbavqxogfvogbabamhoz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dfbwaodpateouuipnxumvtlcphmprwpa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pfjtoclobbqzljevezhgihbajpyanuiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjneljmbprbljfkxrkdukjbiibuiidus","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwhgibejgyyrkmmpsnvtumnjvihzbmwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fsbrdvxvmkvvtricmtvzffjcrqbhtxrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zltujcmkteitkaadhjvfsqlcwuecrwyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"esdkbwlpjwczgkyhidhilirqlhxwyqjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zijokmcqplmdubrojrwrwpqmjjfuwggy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdpxrzqeiyriqptkkzplfnguldtaxryb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtzgttkbdvtsvjpjituxhqmskdxnxpvz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vzuebzlmsnccaxyqlxtlyxhhxbjrtbsa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tdvptngptevljrnhdkprgeswodtmdrni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"teiitsbskilfsqyljmvjdryockaamcbz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hczjghykcqnlrbcmnhuhiedohokynwuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ckhhbfwnywifswkqdylarejpcedsrlrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdgmwbyloxjdzrdbougkwryqprmabxdb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nnfwuqzqbqmvvwenscedfgmzgnyvxwut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aflqzygdfbtshgelbrredyudzkdjqwxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"trawykqqnucqinzttvhucbmxdjwkztds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"berbrgqdihwptyzqrvztvqhrfodettwv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgndhfejhvlrpvibznwozatbzbvnqqjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxwohmoluzguhiqluotgboonvumibjsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtbxxdmboqxebmyhjdcfrmtlonzkehig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qslvjqbblivpbqmxbdrwwahtjloaijjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aclyiwxyvhqrmbxhuoyddxpbbkczayxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfccuqdxtnxautsssrhgtbyxakybipaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxmqzurthxzttzschfalsuqvjfvnudva","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iggdpzuqiewmbijvvseitosspflcdmjq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xiebdjdmplmzcvxiaqjycbdrahieraba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exnkvsyycvfvfxyprhqaojwtnowiumpe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqhbguolfnrhnmbkujohfhumubhiscjp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fswmnwnctkiooduefxnuredqelmlkdmt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsrkjyzkauuonyaharororgemnxdqlle","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ccpsfblquvolksgxlrhqmggkrssaatch","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wgcuioejmdptlemdxclkznbfiuktgfcz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vejimydriorhvmjuafzqetkprlcnladf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ulevxwsipymtechfitsassndfswemfec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"somgnisbzfszrryticbywouwatmmizvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"geqojnbmtprwujzmyaywdafxlwgjwpdz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tgsrngpcytsuresletaudbqumzxpzyuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"spcgnxwblijdvmgtwhgyvsgpqsqqjvyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eepxlwjtquylgdjconoboefwaasxmucz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fomnbbwyogwzlchtfkmftlphtxemeimz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekrxmhuzrorhvcvwttuyibaxfrkytrru","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vybchklfmkdfwakbdeithwzcqnkxmnuj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxseqvgkdiibifktmvaaivkeopsywaea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xipnwlpkrlpewsqzcxoqpibzaspxynwv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvuiplvfuhtohvbzbldminyoikjkpyjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ysbuxlrtechbpoxhifqqsgcvdfjiaeli","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flotqetpaypwqnwyrjuuzbzlmahabyme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jbtbwfopcfqixzbkratfciqpgpbekbfm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zsppfnyejpowfwwqdvgdmrycrkpntqtt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zsrwtfrejqbbshahgazafnamtgrtkzvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xheziouwqqityorgrvixrnevskbixvel","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocbyajvnumctlowkwbohhkeuqctvczjp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vwhijuixentcwwfvhfgwlskoeedzuedo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxjabaevtzqlziliktitrdfcpxlbkfyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nuqnjnbxfoiiaplxjvgbmqghbpurhjnl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"irgvoweuhhfcsyyjexptqbvjzurdagpn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ddtpmrueedwhdhegxqzmmmzgdszoqqsw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpcbqjevmhntoyllzfaxnkoogothymou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mudqlbtdknjezikkakbmnwixigcqzgyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nixzcfvlrdnqdwkufepajteapyynumjh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"htqyerjgvuivbbivimwxiqkujwqnarsi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"burlvubgrnqihgbahsutjrkakgyzhnxm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqinsoydyxefrcgzefdljidomrmjtauv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upexhyrcwraeklfoxmljuvbzvoilupph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbqjennslawsddnghpicelfegpptvipj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"artqavypcfwmhofthcwopprqtquueycs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ilfzobfqkzdpbpinzgwhltuikxveyyar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpxhzinbckafxgwduyuxpclwcriyvggi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jhlsjajrxblbzzecechhgiexfcqjhuvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vfvfokacnxmcgudrmnzaiokbtpskayef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"honkqhrbogpxelmxrqckexmryiocwqrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gsbbeibzghmkwaqrrdjanuhqtdgptfpf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxkxfkafdmohybxqwzwowhnsthkuizac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ksvdwglkbdwcxrgqmesxydcyfiwnmuao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"chuiuqtofpsbaqwebojvwhmtacvucnbx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wpumeoutowrujuhkvcsbjchulmvceekz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjrsplxaucgrtqpoycvtriyiochvhbve","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"daivvmuvyztcyjdqtvvcwhzlqecoktmy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ppkevwhnluyrqmrwhmenoksgztnnzgnj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671801,"databaseName":"models_schema","ddl":"CREATE TABLE `urtqvqjqqavkdscrqvcdnwnrtgnmfnbd` (\n `kwtokworxzrftmcovounpviwljoxbxwm` int NOT NULL,\n `ufzvtjgabtxgaxmqhbxpyevjoiazwson` int DEFAULT NULL,\n `dlsaijtoqgnjhmaelomckygdqlesfwwu` int DEFAULT NULL,\n `klqwhvvfntqzgrriykteruzxubniunee` int DEFAULT NULL,\n `vigawwawlejjczaqpzsoxhgaixlsfomt` int DEFAULT NULL,\n `agakbfdyuwghztxbkqsybaihaiqrtchf` int DEFAULT NULL,\n `iwijiykttrudsygsxulncrxybuntrfpd` int DEFAULT NULL,\n `yjdkubclnbykrjaundhhvffdlothekjl` int DEFAULT NULL,\n `ekttbkpbfgrdbatwnokgkjieikscmxha` int DEFAULT NULL,\n `omnjptywqkdiathgbuqqyaxvwathsiky` int DEFAULT NULL,\n `yhzgvxkbdurwmjgoyejffrafwygztfys` int DEFAULT NULL,\n `sttjcldvukxbprgqofrhrwyclfqmcqea` int DEFAULT NULL,\n `qfbeclittgnrxkphxqupktkdywlaxlky` int DEFAULT NULL,\n `trxyyurxnuwabuyckwhqtymgtnsclwzi` int DEFAULT NULL,\n `iqkuhguwhkbrewnxxdhtljymwqncxegs` int DEFAULT NULL,\n `vbkpjitgnntfhccgygkcxccnzxmjrtpi` int DEFAULT NULL,\n `ijoarqsknskbpjnfxnevicgdsxnsaktj` int DEFAULT NULL,\n `vuywdzjgqvrnhygfxodrkekxngdllfsx` int DEFAULT NULL,\n `pcwpasjpaxwzoamfxprzfhijcujfghpf` int DEFAULT NULL,\n `ooydfrwwpkbgeomprdpxzskoxpqbsqvs` int DEFAULT NULL,\n `qomtdovmencxigqosxkaelssmhzdcpps` int DEFAULT NULL,\n `tyrxbjtuppkyavymtposagemavoivggf` int DEFAULT NULL,\n `otwsvvfrarlfovqsozkhukyrryyldyzo` int DEFAULT NULL,\n `udldegipepjvsffsxhiiusskhhwaesnt` int DEFAULT NULL,\n `vjcwbgtppsjnladbrikmngdrzcrpijzs` int DEFAULT NULL,\n `jldpezithabgkspzepkudfzgcivgozvd` int DEFAULT NULL,\n `imofahztqrmxzgnkainjfqgspedmbqjt` int DEFAULT NULL,\n `rxntiqwtsxrsfpptrssofakpnfqqvfuo` int DEFAULT NULL,\n `aadpjnjbzhdrcnsxausbxuglxlfdlktz` int DEFAULT NULL,\n `iacadhwaodjbizktluswhwkznqlbhyxe` int DEFAULT NULL,\n `tlrdnqyptzgxjlokjidscxshuxvbcmsj` int DEFAULT NULL,\n `kctzkzepuxwzsmbncibcpwonrsysjygc` int DEFAULT NULL,\n `prerwdsnqfowubientkehmtajoahhxfp` int DEFAULT NULL,\n `kkcnocicefjjpoafiiffmufhonqelbxv` int DEFAULT NULL,\n `hobsqdfdodyabroforxnqglbzziqzngy` int DEFAULT NULL,\n `qwikfxcarjqcmgvuuagngmaoqtymsxwq` int DEFAULT NULL,\n `yzrcjuxchlkgetdkoqrznzcujusqyetc` int DEFAULT NULL,\n `hcugtykyvtltpqrawtxyglltcpcbschc` int DEFAULT NULL,\n `ooitbxdlqookvbcuxrjwhgtanzrzmuqh` int DEFAULT NULL,\n `tvqubmkfchexgmoiyvirnjyvpnwyueql` int DEFAULT NULL,\n `ybkbhofcrukcfvhpfvrwzdzeaffywltu` int DEFAULT NULL,\n `inehqahdkppowontwrbhitxdbslotmmw` int DEFAULT NULL,\n `yusszfkhlphrzrxtnjqadtkmdhatdwuh` int DEFAULT NULL,\n `skeqfdtglrvwcfsgcexlwoxycvurqqpj` int DEFAULT NULL,\n `unsasfvbivxgyiptsoxprfefxidjqvag` int DEFAULT NULL,\n `xqzyzodxeyqlvycckadfyjgkgpvzfomy` int DEFAULT NULL,\n `sbnmxtkpyapxjbyvokcwliytleytgihv` int DEFAULT NULL,\n `tjtqpwbybbzovhlfhzatkpeqhpwqbvcy` int DEFAULT NULL,\n `mmaffnttsynfofsqakrfcldvzjoavyes` int DEFAULT NULL,\n `ikzkhgkcpftoozdblgappumijejnrytr` int DEFAULT NULL,\n `yiisapiidiyhphofdqzjnhwvsvaxlypr` int DEFAULT NULL,\n `flwugaieuwsmhqrtwgvtduvpuljayvic` int DEFAULT NULL,\n `caigcvncgtkfgcpzoxxaiubhizenrivk` int DEFAULT NULL,\n `nxbmduxopkbjmojjoaqbgkuekxiwdqvy` int DEFAULT NULL,\n `rglhppvkuwldejwscbejcbahangdokfp` int DEFAULT NULL,\n `wpmwqxzbhhcwseydomwtvbwdecxuvnnh` int DEFAULT NULL,\n `blyxzxyunnqglardchhbynhzwfjtbqiz` int DEFAULT NULL,\n `kmpdjoiupffhbfculqvxysqejufhfplr` int DEFAULT NULL,\n `psmzmhvmqojrmmqqpbxakfmiojekrgdg` int DEFAULT NULL,\n `yjiylkxxfycgmkocxiwssaqiqzlzfdwe` int DEFAULT NULL,\n `ocmalcykmsffwjbdobvmhpfdhofyssmv` int DEFAULT NULL,\n `viqgeggifjadmewjibfmqfskeghvbhzf` int DEFAULT NULL,\n `jmpjgbznbgxuvtmkzlywgaleybrqshuc` int DEFAULT NULL,\n `jrggxpxgpyvzwbdduwonerqdxidnmsep` int DEFAULT NULL,\n `scoqlfaqrxjwvmyadqgbizlldkdjvxvp` int DEFAULT NULL,\n `tnbncmweevwyatmnwynlezkgmglvjpbc` int DEFAULT NULL,\n `gqelhtnptkasclqlxfyeypxgvujhnedf` int DEFAULT NULL,\n `vgilqoscuwxqkuylsqridtlvjjicluvp` int DEFAULT NULL,\n `fadrskjobfxjqqkymedujoehrxvaffcq` int DEFAULT NULL,\n `lydwlkohyruizwchnhmzasloocexirlj` int DEFAULT NULL,\n `qtjsvspsxdhiefmwnjkguxyiexsektir` int DEFAULT NULL,\n `wgnbjstrzakzsjgwzapvgpiauhqrawle` int DEFAULT NULL,\n `fbttlwpibugsvkjlmhuwwgwudtvybqvi` int DEFAULT NULL,\n `qmwveblgaavkhysreiqlsekhubsrerne` int DEFAULT NULL,\n `kfgbisclydnudgjmtovsdxauwnrukquw` int DEFAULT NULL,\n `rcduvxaeolgfcmogmvsuuvgotydoopgn` int DEFAULT NULL,\n `qzmyiijqqkppzfsxlsaghgertwarubpz` int DEFAULT NULL,\n `ssyuewbuntehlqbilhjujmmdfvpzvwye` int DEFAULT NULL,\n `dlztnhnxognlmetpcthimhnogstrieqa` int DEFAULT NULL,\n `cqfdrnsiilijxteadzslnmpdwjyngkqt` int DEFAULT NULL,\n `unuybuqokrpdoyslvfchkmugrcofrzjs` int DEFAULT NULL,\n `icgsicoavaygemsdtywcsjtlcstuymvd` int DEFAULT NULL,\n `xbbxkgdvsptewzvhwhlxgkfwyirydzmf` int DEFAULT NULL,\n `itgqnuuaneujidutvcyfqmyiuelrwunj` int DEFAULT NULL,\n `ztcwrtgmxefpyalzypgohxbedefwgjij` int DEFAULT NULL,\n `aiyhmxwfoaeplbqinavocfdlmizragvo` int DEFAULT NULL,\n `iwzeiyfqymfursyvgvfskxoxtkmuntzc` int DEFAULT NULL,\n `katkyjfuiyjpodisvyicnyunwxjoxbie` int DEFAULT NULL,\n `gipgqewqlrlzworigtikassigdkjqfei` int DEFAULT NULL,\n `rwiuodfjljgbzlqtyfmzeftzocivxhtl` int DEFAULT NULL,\n `kcfyaxdlrlvosnkbgivuulazihphrene` int DEFAULT NULL,\n `xvwomvpaqlfdjxenbrtwivltwqrvtywo` int DEFAULT NULL,\n `pfetwbswlvtaktdsgcqylucafilrytmd` int DEFAULT NULL,\n `ezizjxpkatfuqhyqorfryqnjlyttlgev` int DEFAULT NULL,\n `wdyonogcveylnjtbzzwtwuspwfvgaytn` int DEFAULT NULL,\n `ofwecluwzxxlmfruxqocpevlzzybyhoe` int DEFAULT NULL,\n `pimpqggmcwobgbgynzuxybksxopqxnob` int DEFAULT NULL,\n `uofvankranwufqcpzxpxsvehqrdskbfz` int DEFAULT NULL,\n `tbdedmbvtjycnptafvaywryxszxlyilg` int DEFAULT NULL,\n `uifdjfsxffasijcdoafxwbzwdbkknxiy` int DEFAULT NULL,\n PRIMARY KEY (`kwtokworxzrftmcovounpviwljoxbxwm`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"urtqvqjqqavkdscrqvcdnwnrtgnmfnbd\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["kwtokworxzrftmcovounpviwljoxbxwm"],"columns":[{"name":"kwtokworxzrftmcovounpviwljoxbxwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"ufzvtjgabtxgaxmqhbxpyevjoiazwson","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dlsaijtoqgnjhmaelomckygdqlesfwwu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"klqwhvvfntqzgrriykteruzxubniunee","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vigawwawlejjczaqpzsoxhgaixlsfomt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agakbfdyuwghztxbkqsybaihaiqrtchf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwijiykttrudsygsxulncrxybuntrfpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjdkubclnbykrjaundhhvffdlothekjl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekttbkpbfgrdbatwnokgkjieikscmxha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omnjptywqkdiathgbuqqyaxvwathsiky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhzgvxkbdurwmjgoyejffrafwygztfys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sttjcldvukxbprgqofrhrwyclfqmcqea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfbeclittgnrxkphxqupktkdywlaxlky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"trxyyurxnuwabuyckwhqtymgtnsclwzi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqkuhguwhkbrewnxxdhtljymwqncxegs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbkpjitgnntfhccgygkcxccnzxmjrtpi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijoarqsknskbpjnfxnevicgdsxnsaktj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vuywdzjgqvrnhygfxodrkekxngdllfsx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pcwpasjpaxwzoamfxprzfhijcujfghpf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ooydfrwwpkbgeomprdpxzskoxpqbsqvs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qomtdovmencxigqosxkaelssmhzdcpps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tyrxbjtuppkyavymtposagemavoivggf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otwsvvfrarlfovqsozkhukyrryyldyzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udldegipepjvsffsxhiiusskhhwaesnt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjcwbgtppsjnladbrikmngdrzcrpijzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jldpezithabgkspzepkudfzgcivgozvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"imofahztqrmxzgnkainjfqgspedmbqjt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxntiqwtsxrsfpptrssofakpnfqqvfuo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aadpjnjbzhdrcnsxausbxuglxlfdlktz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iacadhwaodjbizktluswhwkznqlbhyxe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlrdnqyptzgxjlokjidscxshuxvbcmsj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kctzkzepuxwzsmbncibcpwonrsysjygc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prerwdsnqfowubientkehmtajoahhxfp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kkcnocicefjjpoafiiffmufhonqelbxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hobsqdfdodyabroforxnqglbzziqzngy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwikfxcarjqcmgvuuagngmaoqtymsxwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzrcjuxchlkgetdkoqrznzcujusqyetc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hcugtykyvtltpqrawtxyglltcpcbschc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ooitbxdlqookvbcuxrjwhgtanzrzmuqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvqubmkfchexgmoiyvirnjyvpnwyueql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ybkbhofcrukcfvhpfvrwzdzeaffywltu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"inehqahdkppowontwrbhitxdbslotmmw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yusszfkhlphrzrxtnjqadtkmdhatdwuh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skeqfdtglrvwcfsgcexlwoxycvurqqpj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unsasfvbivxgyiptsoxprfefxidjqvag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqzyzodxeyqlvycckadfyjgkgpvzfomy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbnmxtkpyapxjbyvokcwliytleytgihv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjtqpwbybbzovhlfhzatkpeqhpwqbvcy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmaffnttsynfofsqakrfcldvzjoavyes","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikzkhgkcpftoozdblgappumijejnrytr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yiisapiidiyhphofdqzjnhwvsvaxlypr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flwugaieuwsmhqrtwgvtduvpuljayvic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"caigcvncgtkfgcpzoxxaiubhizenrivk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxbmduxopkbjmojjoaqbgkuekxiwdqvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rglhppvkuwldejwscbejcbahangdokfp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wpmwqxzbhhcwseydomwtvbwdecxuvnnh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blyxzxyunnqglardchhbynhzwfjtbqiz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kmpdjoiupffhbfculqvxysqejufhfplr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"psmzmhvmqojrmmqqpbxakfmiojekrgdg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjiylkxxfycgmkocxiwssaqiqzlzfdwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocmalcykmsffwjbdobvmhpfdhofyssmv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"viqgeggifjadmewjibfmqfskeghvbhzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmpjgbznbgxuvtmkzlywgaleybrqshuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jrggxpxgpyvzwbdduwonerqdxidnmsep","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"scoqlfaqrxjwvmyadqgbizlldkdjvxvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnbncmweevwyatmnwynlezkgmglvjpbc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqelhtnptkasclqlxfyeypxgvujhnedf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgilqoscuwxqkuylsqridtlvjjicluvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fadrskjobfxjqqkymedujoehrxvaffcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lydwlkohyruizwchnhmzasloocexirlj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtjsvspsxdhiefmwnjkguxyiexsektir","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wgnbjstrzakzsjgwzapvgpiauhqrawle","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbttlwpibugsvkjlmhuwwgwudtvybqvi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmwveblgaavkhysreiqlsekhubsrerne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfgbisclydnudgjmtovsdxauwnrukquw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcduvxaeolgfcmogmvsuuvgotydoopgn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qzmyiijqqkppzfsxlsaghgertwarubpz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ssyuewbuntehlqbilhjujmmdfvpzvwye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dlztnhnxognlmetpcthimhnogstrieqa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqfdrnsiilijxteadzslnmpdwjyngkqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unuybuqokrpdoyslvfchkmugrcofrzjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icgsicoavaygemsdtywcsjtlcstuymvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbbxkgdvsptewzvhwhlxgkfwyirydzmf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itgqnuuaneujidutvcyfqmyiuelrwunj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ztcwrtgmxefpyalzypgohxbedefwgjij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aiyhmxwfoaeplbqinavocfdlmizragvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwzeiyfqymfursyvgvfskxoxtkmuntzc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"katkyjfuiyjpodisvyicnyunwxjoxbie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gipgqewqlrlzworigtikassigdkjqfei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rwiuodfjljgbzlqtyfmzeftzocivxhtl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kcfyaxdlrlvosnkbgivuulazihphrene","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvwomvpaqlfdjxenbrtwivltwqrvtywo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pfetwbswlvtaktdsgcqylucafilrytmd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezizjxpkatfuqhyqorfryqnjlyttlgev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wdyonogcveylnjtbzzwtwuspwfvgaytn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofwecluwzxxlmfruxqocpevlzzybyhoe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pimpqggmcwobgbgynzuxybksxopqxnob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uofvankranwufqcpzxpxsvehqrdskbfz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbdedmbvtjycnptafvaywryxszxlyilg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uifdjfsxffasijcdoafxwbzwdbkknxiy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671833,"databaseName":"models_schema","ddl":"CREATE TABLE `utrkrrrttkgoplueqarmsziysncokcgj` (\n `wcwyrvpbxspwqhpawxiqgsddkggfdgac` int NOT NULL,\n `mphgrlsqfxswfihoewvthpfdcluobkar` int DEFAULT NULL,\n `qyxuyyrnpvncsevddwhunqnapndgotpy` int DEFAULT NULL,\n `jxlkkusddjhqmmbyotjoaeaywpmmbjme` int DEFAULT NULL,\n `diqpsrceyahwbrhbaaqymcdoqzhzktbm` int DEFAULT NULL,\n `jfuemdkjnokdtbrfeewuzfqxgmmtfxif` int DEFAULT NULL,\n `pkqwistgmdkalbtynfrbokgwblznhmbm` int DEFAULT NULL,\n `vwclumjdzjkuamyemnupqjpksftginmb` int DEFAULT NULL,\n `ykqyjtawidmlwktcidnekgplyjeguufc` int DEFAULT NULL,\n `kqwfjwhbyvgtrfkjbaznvpzamnaicgir` int DEFAULT NULL,\n `boowtfapdjkrwuvlisbasriugarsbnhj` int DEFAULT NULL,\n `yhplvetjhrwnvixxhlwujootbknnyzax` int DEFAULT NULL,\n `woelhvgqerfjccrpjnmsgxieahsdkhsm` int DEFAULT NULL,\n `fxedfxlfkncphwyduowsfzqrnftvoplm` int DEFAULT NULL,\n `lgbgomvdaokvedsezjqkmksmnpmrpbgt` int DEFAULT NULL,\n `comxhxqhhfvukqpfjhkifcuwmvaehphd` int DEFAULT NULL,\n `xysbuqwwrymxofoutjvrvziglstpkcfz` int DEFAULT NULL,\n `gnaqndcueewojlzcndmfpjlhxsbwkrku` int DEFAULT NULL,\n `zptnesnebohqqqglztsbmnprfpkyvqze` int DEFAULT NULL,\n `hfdbbebnekdapqacsirrwvpzsyalwztr` int DEFAULT NULL,\n `umdfdsyfyjojiolfwcvksgghelzcramh` int DEFAULT NULL,\n `tznyjwxjhiylyqjydzgwmoertfckidfh` int DEFAULT NULL,\n `pgctksihouwcpteepultbwuxbdmhajza` int DEFAULT NULL,\n `jpqcohdeznpfcjrrnitqykrrqlsnlvpm` int DEFAULT NULL,\n `kwiuddzxpclbhzzywpsfdnyvzeecgiwb` int DEFAULT NULL,\n `owlwtatvetevzeffqkqxmnhcffzvujsi` int DEFAULT NULL,\n `wsxkhfyfotlfynjtkybgvfphngabedww` int DEFAULT NULL,\n `dvmgpvhodhqbvsobmfakcywenfqdovog` int DEFAULT NULL,\n `igeeuevqjfoqdpnezljtyvubulxmgivp` int DEFAULT NULL,\n `rkemumfapvytnwaskytgqmuqmmodgjbo` int DEFAULT NULL,\n `yksgcporyyhboozgsitviwgypizdbbag` int DEFAULT NULL,\n `lyqeynocsrrsbhyvbcmjnnsqcwxgkwky` int DEFAULT NULL,\n `crnptfoeatvyraxpvoocmuybpauoukvm` int DEFAULT NULL,\n `yrcrmkwagypuhsdkarojxcjbdchdpmty` int DEFAULT NULL,\n `upgxfnivicpxkccjgvxqdklxayblkfgc` int DEFAULT NULL,\n `cqdkwxhuuugyoiglbmtcoshyujdxrdnd` int DEFAULT NULL,\n `cgcrbxgfucktkjblkawbapvjxmskafii` int DEFAULT NULL,\n `ajgftxrqzgcftcffeqevflifnclcswno` int DEFAULT NULL,\n `slteramftqhqylohrnhikqzpvpzsqzev` int DEFAULT NULL,\n `fltrqamvzouddclpsbauhpkqrkguzogy` int DEFAULT NULL,\n `topprtixhddvevywqzsnnhboiekqfxth` int DEFAULT NULL,\n `xpsncvfumrrvtlqtphbjafzmquzamzbs` int DEFAULT NULL,\n `lukgvcspalkllhbyuhspipycdpktnhxa` int DEFAULT NULL,\n `dwvlaefvikkypdohgdyjvafcyhrttmer` int DEFAULT NULL,\n `akvjflyuokyxawewfvcasbugyvlwppeb` int DEFAULT NULL,\n `rkjqfmhcmugegsgdjgdvyescgznawtec` int DEFAULT NULL,\n `haujgvffzopsksuifpixrwzhmxsguobt` int DEFAULT NULL,\n `vwygsruhidpnxjpyzcegizkrkyeirxox` int DEFAULT NULL,\n `ioakarqmqkrqhosleafluevevvogered` int DEFAULT NULL,\n `jhesxetrisblpvffzfttlywzzjevxxqk` int DEFAULT NULL,\n `abtrblovsvlsqlpimuhzwolpgrerkunb` int DEFAULT NULL,\n `zlvqasgptioixrsseqalwvgbxukwhfiu` int DEFAULT NULL,\n `heminuueiyugahrpzqserusmrdaqhjph` int DEFAULT NULL,\n `wmhlndpxxrzpujvokwjgstwaatvwuiln` int DEFAULT NULL,\n `phfqwczsrqdrwrhisllrwoiwrmntwsap` int DEFAULT NULL,\n `wtczriehzhxbymiszsfvzgmjmwwtztyf` int DEFAULT NULL,\n `nmemyezmnzkaadrsznvvcldszlicaqlf` int DEFAULT NULL,\n `qhlpdrqteejkuxufwhzjdwpzkgctstqx` int DEFAULT NULL,\n `mxavaootkfxauwqgujcgjwneuwmthkor` int DEFAULT NULL,\n `girvocgwabgrdfjrpxytjoqgdokrdhpq` int DEFAULT NULL,\n `xpqlwktkotouyzlbaiqpcpcrynbbluir` int DEFAULT NULL,\n `mrjzukyhsccjjrigtgdawsjnbhgwuxlu` int DEFAULT NULL,\n `qznixbmtsgxqdomoadvwxayzcdbofjrq` int DEFAULT NULL,\n `tocutiwabtvfvtuoauuvyiqxpxkvesbq` int DEFAULT NULL,\n `vseowlybnjqjtjpqrxgkrrxxlvcxbopl` int DEFAULT NULL,\n `jayetwqwwarcfclvpoinlxtvrcholjvc` int DEFAULT NULL,\n `nilhiljzcogwfuhrvzvqxcrnfaqnblwo` int DEFAULT NULL,\n `gcgypetujzkfkxcigghprczkshwzqcor` int DEFAULT NULL,\n `uyhrfqfoszkffjdyzjxzctunmnupgbbc` int DEFAULT NULL,\n `udmjckeyziqeauaszfoyqzzocrmocbyy` int DEFAULT NULL,\n `uxwobeapcokqvidwiqslcculklvsdptt` int DEFAULT NULL,\n `ucumhvequtkusiukjlsrsuppbqqhosny` int DEFAULT NULL,\n `yprxvddnhtgzlmpjrufckyfhscilktam` int DEFAULT NULL,\n `fzfgrjaknayetlxwuniezlywzrhadefi` int DEFAULT NULL,\n `xrmaytpljlwznlimtsrpupiremmdbfxf` int DEFAULT NULL,\n `pqmhxutgnncpsoydfvspzgyaxvvqquqf` int DEFAULT NULL,\n `dpwpvqaplqghtygambdeappnwvwjkxfx` int DEFAULT NULL,\n `htrutuannknvgyoroshdnybmvrptevym` int DEFAULT NULL,\n `eagpunwirdojvqqxvacakkxadfmysztx` int DEFAULT NULL,\n `sdixfwbuepzcptzizttggchrnavsltxf` int DEFAULT NULL,\n `tvhhhazaytuhrpupcgatenwrsweoqgmx` int DEFAULT NULL,\n `upmvonljjpuogwqqpnrupbeqlqdmlqed` int DEFAULT NULL,\n `ppahkawdzizujxbmbrfbhaosftlmkjhm` int DEFAULT NULL,\n `mahfluzeadkiqvoyvncrbtjdvobabffb` int DEFAULT NULL,\n `ywzmrrriutafhhsyuagmgjosoyevsyoo` int DEFAULT NULL,\n `cgdueqjapwlpoqyuptuzrufqgafwqryw` int DEFAULT NULL,\n `amqossrxoqbjasyrzrfvbynyahulxzso` int DEFAULT NULL,\n `novhlxsoszdfgqkemqhcwsdyfcsjpqyw` int DEFAULT NULL,\n `fsegegrkkjyafbawcfzoipxlhhzeuvaf` int DEFAULT NULL,\n `rwhbrlfkdfxnxguyazpkvzmzkgrygkja` int DEFAULT NULL,\n `boqlozikyoqfcrcltedqsebpdruylfhu` int DEFAULT NULL,\n `ncqnayfucbnifgxonhehmztscsviqdpb` int DEFAULT NULL,\n `dinqcgebjogpoonmgbubpluvzsstypdw` int DEFAULT NULL,\n `sriefykctzcubdxdnfxtsloktyruiita` int DEFAULT NULL,\n `ajcrxnefvkekmoxsgbsumvujsxqhsxwj` int DEFAULT NULL,\n `ydyaczexfkkysofkuxsjcrrlkdvfiwjj` int DEFAULT NULL,\n `glpiduvzlngvnngbpnttluvfqeqscret` int DEFAULT NULL,\n `uimxrylshnhthhximqcxugvhneysimkf` int DEFAULT NULL,\n `ymccquzxmkphokjokbtutgkelioxsqqd` int DEFAULT NULL,\n `wnakvihoswpzxlpqcjvtvyyhikwqtrql` int DEFAULT NULL,\n PRIMARY KEY (`wcwyrvpbxspwqhpawxiqgsddkggfdgac`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"utrkrrrttkgoplueqarmsziysncokcgj\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["wcwyrvpbxspwqhpawxiqgsddkggfdgac"],"columns":[{"name":"wcwyrvpbxspwqhpawxiqgsddkggfdgac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"mphgrlsqfxswfihoewvthpfdcluobkar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qyxuyyrnpvncsevddwhunqnapndgotpy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jxlkkusddjhqmmbyotjoaeaywpmmbjme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"diqpsrceyahwbrhbaaqymcdoqzhzktbm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jfuemdkjnokdtbrfeewuzfqxgmmtfxif","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkqwistgmdkalbtynfrbokgwblznhmbm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vwclumjdzjkuamyemnupqjpksftginmb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykqyjtawidmlwktcidnekgplyjeguufc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kqwfjwhbyvgtrfkjbaznvpzamnaicgir","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"boowtfapdjkrwuvlisbasriugarsbnhj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhplvetjhrwnvixxhlwujootbknnyzax","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"woelhvgqerfjccrpjnmsgxieahsdkhsm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxedfxlfkncphwyduowsfzqrnftvoplm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgbgomvdaokvedsezjqkmksmnpmrpbgt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"comxhxqhhfvukqpfjhkifcuwmvaehphd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xysbuqwwrymxofoutjvrvziglstpkcfz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnaqndcueewojlzcndmfpjlhxsbwkrku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zptnesnebohqqqglztsbmnprfpkyvqze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfdbbebnekdapqacsirrwvpzsyalwztr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umdfdsyfyjojiolfwcvksgghelzcramh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tznyjwxjhiylyqjydzgwmoertfckidfh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgctksihouwcpteepultbwuxbdmhajza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jpqcohdeznpfcjrrnitqykrrqlsnlvpm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kwiuddzxpclbhzzywpsfdnyvzeecgiwb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owlwtatvetevzeffqkqxmnhcffzvujsi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wsxkhfyfotlfynjtkybgvfphngabedww","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvmgpvhodhqbvsobmfakcywenfqdovog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igeeuevqjfoqdpnezljtyvubulxmgivp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkemumfapvytnwaskytgqmuqmmodgjbo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yksgcporyyhboozgsitviwgypizdbbag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lyqeynocsrrsbhyvbcmjnnsqcwxgkwky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"crnptfoeatvyraxpvoocmuybpauoukvm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yrcrmkwagypuhsdkarojxcjbdchdpmty","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upgxfnivicpxkccjgvxqdklxayblkfgc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqdkwxhuuugyoiglbmtcoshyujdxrdnd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgcrbxgfucktkjblkawbapvjxmskafii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajgftxrqzgcftcffeqevflifnclcswno","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"slteramftqhqylohrnhikqzpvpzsqzev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fltrqamvzouddclpsbauhpkqrkguzogy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"topprtixhddvevywqzsnnhboiekqfxth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xpsncvfumrrvtlqtphbjafzmquzamzbs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lukgvcspalkllhbyuhspipycdpktnhxa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwvlaefvikkypdohgdyjvafcyhrttmer","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akvjflyuokyxawewfvcasbugyvlwppeb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkjqfmhcmugegsgdjgdvyescgznawtec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"haujgvffzopsksuifpixrwzhmxsguobt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vwygsruhidpnxjpyzcegizkrkyeirxox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ioakarqmqkrqhosleafluevevvogered","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jhesxetrisblpvffzfttlywzzjevxxqk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"abtrblovsvlsqlpimuhzwolpgrerkunb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zlvqasgptioixrsseqalwvgbxukwhfiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"heminuueiyugahrpzqserusmrdaqhjph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmhlndpxxrzpujvokwjgstwaatvwuiln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phfqwczsrqdrwrhisllrwoiwrmntwsap","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wtczriehzhxbymiszsfvzgmjmwwtztyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmemyezmnzkaadrsznvvcldszlicaqlf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhlpdrqteejkuxufwhzjdwpzkgctstqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mxavaootkfxauwqgujcgjwneuwmthkor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"girvocgwabgrdfjrpxytjoqgdokrdhpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xpqlwktkotouyzlbaiqpcpcrynbbluir","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrjzukyhsccjjrigtgdawsjnbhgwuxlu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qznixbmtsgxqdomoadvwxayzcdbofjrq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tocutiwabtvfvtuoauuvyiqxpxkvesbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vseowlybnjqjtjpqrxgkrrxxlvcxbopl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jayetwqwwarcfclvpoinlxtvrcholjvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nilhiljzcogwfuhrvzvqxcrnfaqnblwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gcgypetujzkfkxcigghprczkshwzqcor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uyhrfqfoszkffjdyzjxzctunmnupgbbc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udmjckeyziqeauaszfoyqzzocrmocbyy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxwobeapcokqvidwiqslcculklvsdptt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ucumhvequtkusiukjlsrsuppbqqhosny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yprxvddnhtgzlmpjrufckyfhscilktam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzfgrjaknayetlxwuniezlywzrhadefi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xrmaytpljlwznlimtsrpupiremmdbfxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqmhxutgnncpsoydfvspzgyaxvvqquqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpwpvqaplqghtygambdeappnwvwjkxfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"htrutuannknvgyoroshdnybmvrptevym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eagpunwirdojvqqxvacakkxadfmysztx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdixfwbuepzcptzizttggchrnavsltxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvhhhazaytuhrpupcgatenwrsweoqgmx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upmvonljjpuogwqqpnrupbeqlqdmlqed","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ppahkawdzizujxbmbrfbhaosftlmkjhm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mahfluzeadkiqvoyvncrbtjdvobabffb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywzmrrriutafhhsyuagmgjosoyevsyoo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgdueqjapwlpoqyuptuzrufqgafwqryw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"amqossrxoqbjasyrzrfvbynyahulxzso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"novhlxsoszdfgqkemqhcwsdyfcsjpqyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fsegegrkkjyafbawcfzoipxlhhzeuvaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rwhbrlfkdfxnxguyazpkvzmzkgrygkja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"boqlozikyoqfcrcltedqsebpdruylfhu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ncqnayfucbnifgxonhehmztscsviqdpb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dinqcgebjogpoonmgbubpluvzsstypdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sriefykctzcubdxdnfxtsloktyruiita","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajcrxnefvkekmoxsgbsumvujsxqhsxwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydyaczexfkkysofkuxsjcrrlkdvfiwjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"glpiduvzlngvnngbpnttluvfqeqscret","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uimxrylshnhthhximqcxugvhneysimkf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ymccquzxmkphokjokbtutgkelioxsqqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnakvihoswpzxlpqcjvtvyyhikwqtrql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671867,"databaseName":"models_schema","ddl":"CREATE TABLE `uwhvppgdytwyftjjcnihrmfdnhimzykv` (\n `obvuojvxffdxrampurhwocxvmxddsvwa` int NOT NULL,\n `nsrqhofkpjvynzkbjwwrhpoxfzkyudjo` int DEFAULT NULL,\n `yvxcmozelmobbzjezvelrloxzyubtjyn` int DEFAULT NULL,\n `vwoxjtbspxeasptcdibtfhuzbesjdxvq` int DEFAULT NULL,\n `izdtrabrhdphlwvjexczqtmghypbefxs` int DEFAULT NULL,\n `yajeafspzozuicybpaveazprefafkkxz` int DEFAULT NULL,\n `ogmgfujexggdcwsjwswbszeuzucfzeaj` int DEFAULT NULL,\n `ybpiuuujnuxojjbvhaxmyymuihrsxfba` int DEFAULT NULL,\n `tdofnepsqgrilcvwnnczreihokqfypgi` int DEFAULT NULL,\n `owymxxpogwynqzslwrkwhffwvdcvazjz` int DEFAULT NULL,\n `zosvfojllfzqopagvavemnqbmtyuhqbd` int DEFAULT NULL,\n `hbzykotfhfarvtrsvulawxoolrtsixgj` int DEFAULT NULL,\n `rajstuensreqxslbeyvalkurdwbvwtxk` int DEFAULT NULL,\n `rdsuxggbvvxizlsituttuqvpditheesi` int DEFAULT NULL,\n `qxjiwgbptkfwxkbdritdftzoqmgqstgi` int DEFAULT NULL,\n `eiurjmiamogihpfnapalofagiskjpswy` int DEFAULT NULL,\n `phxsjusowvemetmqflecdvrpewxdppqr` int DEFAULT NULL,\n `wohogndruuprhcuzflycvqxqomiprbqa` int DEFAULT NULL,\n `qvnlmoumkpcpikvscgjmsahgruverywx` int DEFAULT NULL,\n `rzufinvsmluxcjkultblrnubmlyvsxuh` int DEFAULT NULL,\n `mqbwnrwvcdchzavearpinbbsjzcgdzde` int DEFAULT NULL,\n `lkjjlxuqtcsadclamsbzcvdmdcypzttz` int DEFAULT NULL,\n `gsirdbcltetimowxzgjdgimxabvuybyn` int DEFAULT NULL,\n `hdlnqufiyhdmjxuttdsynjdmlitalpfz` int DEFAULT NULL,\n `rrizfnpkziphpgojhueowbvpgxdtbrqt` int DEFAULT NULL,\n `dunvpdgyyaqfpujuqmkvacmfyjzxzxxt` int DEFAULT NULL,\n `qzooseqegjtuhbmsxamtcnrpkzkbkcpv` int DEFAULT NULL,\n `bdjxnorxusgbnylimdmurpfzdcleccyy` int DEFAULT NULL,\n `tjgronkjqapfmndgfscznkfvqltkzeoa` int DEFAULT NULL,\n `nwwkdvfvtnhejpgjhqcebjepchfqxheh` int DEFAULT NULL,\n `qvfnmnwkksdpzqxtcirsxozecsbtmeiu` int DEFAULT NULL,\n `zjicyvbgbbhulcutfclnwnwndypweerc` int DEFAULT NULL,\n `yglriexdfafwxtvhkjhqkauvmlngtltf` int DEFAULT NULL,\n `xjytydeketwojzmztzkaiddmhmnpjjfl` int DEFAULT NULL,\n `jcmtakhveefktzsqctaxwvmmupiocwmu` int DEFAULT NULL,\n `mjgmptxignhtmqqwppptgjtoocpqmocn` int DEFAULT NULL,\n `ehqffemvoxicanriqkjlndcbpqmqzlrz` int DEFAULT NULL,\n `ngtmreeanqnoszyzthqygsuxumoqcqis` int DEFAULT NULL,\n `pycvhjqdskakaqvtpcrbknvpjwimbbjc` int DEFAULT NULL,\n `fumumkwgyvtjudcmtsgayfqzpzmjkluc` int DEFAULT NULL,\n `ejmzpjecfflbiwzejcspgkjvwviqbzyq` int DEFAULT NULL,\n `ltpnvtaspevtnwrnkmkiqgicewbrgqsu` int DEFAULT NULL,\n `hcvfjbsjuevvuiyajmcvhlyuadoknhjk` int DEFAULT NULL,\n `ldmfraipcfuquvdkewhyngmvtlqewsls` int DEFAULT NULL,\n `wfjnebmpfoegunowyfsaopgwmdfwbuml` int DEFAULT NULL,\n `ypvmwmqldebrqbmcyjbfalgzlazehwig` int DEFAULT NULL,\n `ugnpmfaxhfwntvvhoygdhhgkptuovblp` int DEFAULT NULL,\n `lkrpemchcmgvobclksbcbkzeadesdbgg` int DEFAULT NULL,\n `onrklgwvhnukehgdfxvsfskizeeosfox` int DEFAULT NULL,\n `ylycpbgltowenpevkqripvnurdhvbnlr` int DEFAULT NULL,\n `erlpitbcrlphuivqpspjgwphchhqeomj` int DEFAULT NULL,\n `dauygbizybzhzvysuxloudfmpqajheer` int DEFAULT NULL,\n `vcrtegedrcqltgcldlxemakhlzsvnwdo` int DEFAULT NULL,\n `giicdvgecadjkfbwbgrhworgtduolbzx` int DEFAULT NULL,\n `kihqhefqazvvcgkgkznphsfdddgsbvwi` int DEFAULT NULL,\n `akuawhpyccfgnaqaysthgylniwurklbr` int DEFAULT NULL,\n `oinrvgqidxrgmcsrkccgtdbjugkgtdjc` int DEFAULT NULL,\n `sgxtcxfinypyhmhxotndmqdanyxqqrlj` int DEFAULT NULL,\n `lmhnskdprrlhoahvglmeprnkvhicrxpc` int DEFAULT NULL,\n `leydxlisksotrwccvreseslzpidkbnxq` int DEFAULT NULL,\n `hhlotytjlkxbisajpunsazislnvrjncq` int DEFAULT NULL,\n `xfxapakbkebkwnqvpqqrjoxxtlpusbej` int DEFAULT NULL,\n `evkzslhqqdnpywsigciinmhzyjorvodx` int DEFAULT NULL,\n `vzgyzrmadumurirjllkblxlydkevyild` int DEFAULT NULL,\n `sekeylqvsffwoowzsdslunxpalzsyzte` int DEFAULT NULL,\n `rtoazzxgfrzsgjnxcfdgkfxmzhhvjwae` int DEFAULT NULL,\n `gsxobfgtcvaznixwagivykcjejrbjzmf` int DEFAULT NULL,\n `yauegrsdqjpskgemybgypctfffvpklvq` int DEFAULT NULL,\n `qyjfyqfrlzqgcgqxsolfxamqozngnuao` int DEFAULT NULL,\n `qrfuwgrbhotttxseqnbvezuwpfepurgz` int DEFAULT NULL,\n `bpcdwftkmmtigozjqwvnlmnjiauoxdph` int DEFAULT NULL,\n `utydrramoudnxvseaqoauyxinpuhnndd` int DEFAULT NULL,\n `chgynuxaosygcvzfzccgljhrwjvregdo` int DEFAULT NULL,\n `hwxmnbnzctntpzredmdeygvxlyetkclf` int DEFAULT NULL,\n `lhrnhvhyanbvirbbhrqsfaeujwkysruz` int DEFAULT NULL,\n `tokbgwztqsokuwvzwubqlvgqwvwgzhyq` int DEFAULT NULL,\n `isuygrjbeoxsnaxtdaydluccilttfvlv` int DEFAULT NULL,\n `wornriwwkiaeywagojsdqltjfgpfzopi` int DEFAULT NULL,\n `aaxviakvubidcoerbnaaiucohpffuetl` int DEFAULT NULL,\n `rfzfnfskeeglwgjduuqyakjrlyjnqxzd` int DEFAULT NULL,\n `nqldkrdjeaaorspnzayywxbocivyamfc` int DEFAULT NULL,\n `elarfmgvymlpibbsukvtdaobzehakfyn` int DEFAULT NULL,\n `hshmpodmhutpacjlvppikoybarjdqafg` int DEFAULT NULL,\n `umrgbhahdliqwfgeoaemmcyxagadjodw` int DEFAULT NULL,\n `agkiawnhqqifunaiwvisohuuwlsphqwl` int DEFAULT NULL,\n `ijjfqkwfotkfmrbffovrihuvzkqitnde` int DEFAULT NULL,\n `flpxhzlzbrlmraxbzqhothirqyotqcrt` int DEFAULT NULL,\n `smggtoutabqlfamcxvyicfbjtgdngewl` int DEFAULT NULL,\n `mrsphjcbqgroczyduzpcaaqvptjkeslp` int DEFAULT NULL,\n `efyywmmjkflogjbftxigrkrwkfhraofd` int DEFAULT NULL,\n `hasarturjuubdtonhvhuhaifndcbyqip` int DEFAULT NULL,\n `lapjssfbhesyvkxtprhaxixbfiwershz` int DEFAULT NULL,\n `aaankgfujmcjejwvkvfuyaygrbeffkbf` int DEFAULT NULL,\n `dgfzpjyxioxvgcuglwsztvousfeojxdk` int DEFAULT NULL,\n `zzwxpcxpnduofwukivqqkcmkwovjbgen` int DEFAULT NULL,\n `qpuuyslxyaojwmejhugrnbebrialgdrc` int DEFAULT NULL,\n `uridanjmwkkhcoitgruswyydxfzxwvdq` int DEFAULT NULL,\n `fitvdtrvrkmfrridgywunlnxrwfrjopc` int DEFAULT NULL,\n `xovzuivtkvbvohfryfabqwhwfgovlqqx` int DEFAULT NULL,\n `ofqvkbqihctbhnqljmgzyeahvrhufekk` int DEFAULT NULL,\n PRIMARY KEY (`obvuojvxffdxrampurhwocxvmxddsvwa`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"uwhvppgdytwyftjjcnihrmfdnhimzykv\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["obvuojvxffdxrampurhwocxvmxddsvwa"],"columns":[{"name":"obvuojvxffdxrampurhwocxvmxddsvwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"nsrqhofkpjvynzkbjwwrhpoxfzkyudjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yvxcmozelmobbzjezvelrloxzyubtjyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vwoxjtbspxeasptcdibtfhuzbesjdxvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"izdtrabrhdphlwvjexczqtmghypbefxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yajeafspzozuicybpaveazprefafkkxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ogmgfujexggdcwsjwswbszeuzucfzeaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ybpiuuujnuxojjbvhaxmyymuihrsxfba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tdofnepsqgrilcvwnnczreihokqfypgi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owymxxpogwynqzslwrkwhffwvdcvazjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zosvfojllfzqopagvavemnqbmtyuhqbd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbzykotfhfarvtrsvulawxoolrtsixgj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rajstuensreqxslbeyvalkurdwbvwtxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdsuxggbvvxizlsituttuqvpditheesi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxjiwgbptkfwxkbdritdftzoqmgqstgi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eiurjmiamogihpfnapalofagiskjpswy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phxsjusowvemetmqflecdvrpewxdppqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wohogndruuprhcuzflycvqxqomiprbqa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvnlmoumkpcpikvscgjmsahgruverywx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzufinvsmluxcjkultblrnubmlyvsxuh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqbwnrwvcdchzavearpinbbsjzcgdzde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lkjjlxuqtcsadclamsbzcvdmdcypzttz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gsirdbcltetimowxzgjdgimxabvuybyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdlnqufiyhdmjxuttdsynjdmlitalpfz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrizfnpkziphpgojhueowbvpgxdtbrqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dunvpdgyyaqfpujuqmkvacmfyjzxzxxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qzooseqegjtuhbmsxamtcnrpkzkbkcpv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bdjxnorxusgbnylimdmurpfzdcleccyy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjgronkjqapfmndgfscznkfvqltkzeoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nwwkdvfvtnhejpgjhqcebjepchfqxheh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvfnmnwkksdpzqxtcirsxozecsbtmeiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjicyvbgbbhulcutfclnwnwndypweerc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yglriexdfafwxtvhkjhqkauvmlngtltf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjytydeketwojzmztzkaiddmhmnpjjfl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jcmtakhveefktzsqctaxwvmmupiocwmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjgmptxignhtmqqwppptgjtoocpqmocn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehqffemvoxicanriqkjlndcbpqmqzlrz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ngtmreeanqnoszyzthqygsuxumoqcqis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pycvhjqdskakaqvtpcrbknvpjwimbbjc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fumumkwgyvtjudcmtsgayfqzpzmjkluc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejmzpjecfflbiwzejcspgkjvwviqbzyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ltpnvtaspevtnwrnkmkiqgicewbrgqsu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hcvfjbsjuevvuiyajmcvhlyuadoknhjk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ldmfraipcfuquvdkewhyngmvtlqewsls","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfjnebmpfoegunowyfsaopgwmdfwbuml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypvmwmqldebrqbmcyjbfalgzlazehwig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugnpmfaxhfwntvvhoygdhhgkptuovblp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lkrpemchcmgvobclksbcbkzeadesdbgg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"onrklgwvhnukehgdfxvsfskizeeosfox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ylycpbgltowenpevkqripvnurdhvbnlr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"erlpitbcrlphuivqpspjgwphchhqeomj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dauygbizybzhzvysuxloudfmpqajheer","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vcrtegedrcqltgcldlxemakhlzsvnwdo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"giicdvgecadjkfbwbgrhworgtduolbzx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kihqhefqazvvcgkgkznphsfdddgsbvwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akuawhpyccfgnaqaysthgylniwurklbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oinrvgqidxrgmcsrkccgtdbjugkgtdjc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sgxtcxfinypyhmhxotndmqdanyxqqrlj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmhnskdprrlhoahvglmeprnkvhicrxpc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"leydxlisksotrwccvreseslzpidkbnxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhlotytjlkxbisajpunsazislnvrjncq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xfxapakbkebkwnqvpqqrjoxxtlpusbej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evkzslhqqdnpywsigciinmhzyjorvodx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vzgyzrmadumurirjllkblxlydkevyild","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sekeylqvsffwoowzsdslunxpalzsyzte","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rtoazzxgfrzsgjnxcfdgkfxmzhhvjwae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gsxobfgtcvaznixwagivykcjejrbjzmf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yauegrsdqjpskgemybgypctfffvpklvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qyjfyqfrlzqgcgqxsolfxamqozngnuao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qrfuwgrbhotttxseqnbvezuwpfepurgz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bpcdwftkmmtigozjqwvnlmnjiauoxdph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utydrramoudnxvseaqoauyxinpuhnndd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"chgynuxaosygcvzfzccgljhrwjvregdo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwxmnbnzctntpzredmdeygvxlyetkclf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhrnhvhyanbvirbbhrqsfaeujwkysruz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tokbgwztqsokuwvzwubqlvgqwvwgzhyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"isuygrjbeoxsnaxtdaydluccilttfvlv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wornriwwkiaeywagojsdqltjfgpfzopi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aaxviakvubidcoerbnaaiucohpffuetl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfzfnfskeeglwgjduuqyakjrlyjnqxzd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqldkrdjeaaorspnzayywxbocivyamfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"elarfmgvymlpibbsukvtdaobzehakfyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hshmpodmhutpacjlvppikoybarjdqafg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umrgbhahdliqwfgeoaemmcyxagadjodw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agkiawnhqqifunaiwvisohuuwlsphqwl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijjfqkwfotkfmrbffovrihuvzkqitnde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flpxhzlzbrlmraxbzqhothirqyotqcrt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smggtoutabqlfamcxvyicfbjtgdngewl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrsphjcbqgroczyduzpcaaqvptjkeslp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"efyywmmjkflogjbftxigrkrwkfhraofd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hasarturjuubdtonhvhuhaifndcbyqip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lapjssfbhesyvkxtprhaxixbfiwershz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aaankgfujmcjejwvkvfuyaygrbeffkbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgfzpjyxioxvgcuglwsztvousfeojxdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzwxpcxpnduofwukivqqkcmkwovjbgen","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qpuuyslxyaojwmejhugrnbebrialgdrc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uridanjmwkkhcoitgruswyydxfzxwvdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fitvdtrvrkmfrridgywunlnxrwfrjopc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xovzuivtkvbvohfryfabqwhwfgovlqqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofqvkbqihctbhnqljmgzyeahvrhufekk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671896,"databaseName":"models_schema","ddl":"CREATE TABLE `uyjsubdlcesowgvppiweyyynybzozzcb` (\n `hgsixrilgixxhuckbpoeywokzccbmhlv` int NOT NULL,\n `wrzyfhbnnalozkfzeliezifftvoypmfa` int DEFAULT NULL,\n `vnuzhtgskuzubgnxkjvassmkpwrxqxdw` int DEFAULT NULL,\n `juqzfbvcymmrdxweeihgbpxtyogvkxcd` int DEFAULT NULL,\n `jbqytvvaotnpocmkweduawrehrifutfc` int DEFAULT NULL,\n `vxvjeoohctpcleyfpbaiuzdearnxlyjy` int DEFAULT NULL,\n `iezvsfnlhhpmflszlbkqfuleiyajpyyh` int DEFAULT NULL,\n `rqwfclqfnkvpvhjkuoemjuoctjjvchcx` int DEFAULT NULL,\n `pvkllasgnbkgipgqxdiymxlqgszthtmi` int DEFAULT NULL,\n `rldodfnrzdoxhebvzomfhsnbwjyqnudq` int DEFAULT NULL,\n `ithzaxyixmeifgaatqojepqxoojmqmwd` int DEFAULT NULL,\n `cyuazbmztbwaelfjceekiuacagaxylxs` int DEFAULT NULL,\n `oldcufitgudhkvamwtcdgfwesiqxqrtd` int DEFAULT NULL,\n `lcnuzntjhxgolszlffawnqhurayzdgph` int DEFAULT NULL,\n `ecqurhtovbzpvoosdbwonocokkefhwwz` int DEFAULT NULL,\n `fawmnvqviicxkozayiaabxnqgjixcacv` int DEFAULT NULL,\n `vwqdbcomracibotjxkbijcsnbfjyarxo` int DEFAULT NULL,\n `aajgtgqunncvbzexhcrutkvadhptbgkx` int DEFAULT NULL,\n `pkwzdsvuraofdkrcxljkdsiqzcinrznl` int DEFAULT NULL,\n `ixqwemvfzrfnfexyoneodularxczvxro` int DEFAULT NULL,\n `xuvgucilymyarownqswebhwhbconwuza` int DEFAULT NULL,\n `dqoqnlyypaxwgpkvwwsnwddkbmiruvjz` int DEFAULT NULL,\n `hibctiwkfwihoceyqmcnyvfxuvwvsahw` int DEFAULT NULL,\n `woxvunzuxtrygtptfhvqtajfhesqqrbq` int DEFAULT NULL,\n `nqyodnvtrzfxdiladrvdtlhmriljsrbb` int DEFAULT NULL,\n `owzxvrfekmndjuzpmhlbwchpwlfsjqbg` int DEFAULT NULL,\n `dxvagghtzlipkmoauckfcleculqafjis` int DEFAULT NULL,\n `xxkgitlfqpuuuckqaijqmsvnsrbjnhdf` int DEFAULT NULL,\n `tkhucvrqepimqxhmsfazghbeaxuxfymh` int DEFAULT NULL,\n `zxvvilkjlscbepsomzswioozpsykudpt` int DEFAULT NULL,\n `upbitvphzspyivglmreufwaevrqgeemk` int DEFAULT NULL,\n `ekdhajehpdemcjctrwwtyhrrvagjhtoc` int DEFAULT NULL,\n `groxbfbjdvrfdgfjvpeinpbgdbarevei` int DEFAULT NULL,\n `xcbftjvervgeveihguuendxcalycvsok` int DEFAULT NULL,\n `mjtbbnbqgeaiszerpsxhwwozmbkoebmf` int DEFAULT NULL,\n `xswlgizxpuwkxblkdyglzazpaantdcnu` int DEFAULT NULL,\n `tnxdntmtjsfzurylkukjbksjcnuunljr` int DEFAULT NULL,\n `bcqvzfatnwmxxpfpitlydurvzflqqxef` int DEFAULT NULL,\n `raspmfibkycmzbqgdaiqtqyzwsqvyssw` int DEFAULT NULL,\n `vyfqxevrzbghvwhkagnohtmctvhguowr` int DEFAULT NULL,\n `dogvocwiqqivdziyhdetpxjgkzqftdrg` int DEFAULT NULL,\n `jwfmzstzvfqrkuraxbxdcfqgbuvchzwt` int DEFAULT NULL,\n `iyqatxpfwtmujlvnbfamsxwykjuxytiv` int DEFAULT NULL,\n `kufnuappeccsjijzcgcxcoyeaakfspxf` int DEFAULT NULL,\n `hehknlpmppaglihiqgaieuphtlyfkgxd` int DEFAULT NULL,\n `kuyjnrbrxwfikqpcruziifektmqhcvzo` int DEFAULT NULL,\n `yhaltbtromhwzeunmtqrlkumdqwnwzcv` int DEFAULT NULL,\n `xcioznmqcuwrlqqygvpolinasshsjvtk` int DEFAULT NULL,\n `itojskjibfhqynebnciozbxagmverhih` int DEFAULT NULL,\n `mqrjqxpgrkvhghtaooeyssdjinloxpbt` int DEFAULT NULL,\n `ipknwokjwdgxeacvvxmwicxfyckiaoeq` int DEFAULT NULL,\n `nbvnxpiumodlqycamoqkeqlzogjhypxf` int DEFAULT NULL,\n `axdwhkghwjocofugahvcssfxnypxcbgk` int DEFAULT NULL,\n `yfhpgsajtrpfyahllrcqpwqzpjvaoqen` int DEFAULT NULL,\n `dmszncsulxuxmwfsvvenkcmgkozkiymu` int DEFAULT NULL,\n `alnekqalzfkfhgyhynvirvbzeheikxvx` int DEFAULT NULL,\n `yogxsznocevbtyxjqqlgiiiwywdokynm` int DEFAULT NULL,\n `ctqbmcnsuwgbveipidxrwuagdgbkxaoh` int DEFAULT NULL,\n `xvqemipvrouzikzqpecabrxviwqyajbw` int DEFAULT NULL,\n `gvxmkflwcdxqtlqaxpyqatsvmovxdpbi` int DEFAULT NULL,\n `skoxpphhirdrfgmjpslywmiauucvsfxx` int DEFAULT NULL,\n `ipirkzjlzsspcgkqluovxwicgpzajhgh` int DEFAULT NULL,\n `krjuguviilhvcgfirpyunzabtvmkjkyx` int DEFAULT NULL,\n `oyyazcepubtbkuzgutqrpbghbausrple` int DEFAULT NULL,\n `rhfxzyritvuubisvowreuwoujoadaecw` int DEFAULT NULL,\n `uxqsuvtuvnpfejqjkdnqiydwjldsooke` int DEFAULT NULL,\n `gjsdhuleufrnkdowuimpecshpwuqzadg` int DEFAULT NULL,\n `bpkyvmtovarrmgwpbkqbjbfpwbkwzsrm` int DEFAULT NULL,\n `tmzujllptyubhmmdsuhvsgcwtsiuqmwt` int DEFAULT NULL,\n `brtoguyjejewjtxohqdojprkphggonep` int DEFAULT NULL,\n `cyecnhmjvinkihfluyhbznycyrpiblzm` int DEFAULT NULL,\n `vqcwezhgrmlkwklhwmhyryxvwtdvztdx` int DEFAULT NULL,\n `ebrfwzclqanmtwieawwjsxsamsvqjeid` int DEFAULT NULL,\n `xqgvhbyhiloozcuearxwdnktrfhwfuun` int DEFAULT NULL,\n `gdmukkkkpmiydcshcfdooqpxhiaqlofz` int DEFAULT NULL,\n `oisamjoaiijfqfobnohsuhmwvwdtuxyj` int DEFAULT NULL,\n `ckuuyrnplpmwnlpgzyyfftgpyteulell` int DEFAULT NULL,\n `mhdgboaepwdgdlbosfvklimbqxsqktme` int DEFAULT NULL,\n `tawrdkhtvdxtuhrkgtjyxjcarxsmgaxw` int DEFAULT NULL,\n `qljabvgqxhtvxvoagveghskmgcufmdzu` int DEFAULT NULL,\n `hjilijppjosisnpnwpdlwglnwqkztalb` int DEFAULT NULL,\n `nmoyjouvrcklovgavvzspgeadhdagnxe` int DEFAULT NULL,\n `rxccwmrehzvcahrhqsbfdqcdlsmfkpbu` int DEFAULT NULL,\n `qfjsrmotxtblvtgoeohxsaxiffjnfrjs` int DEFAULT NULL,\n `vsjstutfzhgeiiqdqokqsljxcphwirrv` int DEFAULT NULL,\n `ktqejbqphcucuudwguivlqtwfdkksein` int DEFAULT NULL,\n `ehdtqeoiyudgiwdxqdcdypfagysblqed` int DEFAULT NULL,\n `doxqsdycvnvttveqaersltdimurtgjdk` int DEFAULT NULL,\n `bnicxtwvrqoxtdnzzupmuyaideeprdqs` int DEFAULT NULL,\n `zabxxngzkzepcksqdctziretwtjoalek` int DEFAULT NULL,\n `sheawvsbdbqqikqkpfdpfwajjukftnue` int DEFAULT NULL,\n `arnbtuxehsdyqdpkmzzrkyfbeizcjdqn` int DEFAULT NULL,\n `iiyijrixhsrgtpknhsbbhxtjzwpkzyzt` int DEFAULT NULL,\n `xaezeeqcfscowdbngzndplesubzukngg` int DEFAULT NULL,\n `hsbwmfcrawztxvbqjtxynylzrndxxasy` int DEFAULT NULL,\n `vjozdbmdtavffumdzdqbkkxypwpclmeg` int DEFAULT NULL,\n `zuprfmbfdoretufyvsprtulkfqdikvaf` int DEFAULT NULL,\n `qdmcdclzijwirdariluflnbydvcbrvlg` int DEFAULT NULL,\n `vpnuhvmrjozwhtbgqhsatmzcajhasrcd` int DEFAULT NULL,\n `jrzkhpgwscgvoxpevbkgbntpurigraso` int DEFAULT NULL,\n PRIMARY KEY (`hgsixrilgixxhuckbpoeywokzccbmhlv`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"uyjsubdlcesowgvppiweyyynybzozzcb\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["hgsixrilgixxhuckbpoeywokzccbmhlv"],"columns":[{"name":"hgsixrilgixxhuckbpoeywokzccbmhlv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"wrzyfhbnnalozkfzeliezifftvoypmfa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vnuzhtgskuzubgnxkjvassmkpwrxqxdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"juqzfbvcymmrdxweeihgbpxtyogvkxcd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jbqytvvaotnpocmkweduawrehrifutfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxvjeoohctpcleyfpbaiuzdearnxlyjy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iezvsfnlhhpmflszlbkqfuleiyajpyyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqwfclqfnkvpvhjkuoemjuoctjjvchcx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pvkllasgnbkgipgqxdiymxlqgszthtmi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rldodfnrzdoxhebvzomfhsnbwjyqnudq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ithzaxyixmeifgaatqojepqxoojmqmwd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cyuazbmztbwaelfjceekiuacagaxylxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oldcufitgudhkvamwtcdgfwesiqxqrtd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lcnuzntjhxgolszlffawnqhurayzdgph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecqurhtovbzpvoosdbwonocokkefhwwz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fawmnvqviicxkozayiaabxnqgjixcacv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vwqdbcomracibotjxkbijcsnbfjyarxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aajgtgqunncvbzexhcrutkvadhptbgkx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkwzdsvuraofdkrcxljkdsiqzcinrznl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixqwemvfzrfnfexyoneodularxczvxro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xuvgucilymyarownqswebhwhbconwuza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqoqnlyypaxwgpkvwwsnwddkbmiruvjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hibctiwkfwihoceyqmcnyvfxuvwvsahw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"woxvunzuxtrygtptfhvqtajfhesqqrbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqyodnvtrzfxdiladrvdtlhmriljsrbb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owzxvrfekmndjuzpmhlbwchpwlfsjqbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxvagghtzlipkmoauckfcleculqafjis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxkgitlfqpuuuckqaijqmsvnsrbjnhdf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkhucvrqepimqxhmsfazghbeaxuxfymh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxvvilkjlscbepsomzswioozpsykudpt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upbitvphzspyivglmreufwaevrqgeemk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekdhajehpdemcjctrwwtyhrrvagjhtoc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"groxbfbjdvrfdgfjvpeinpbgdbarevei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xcbftjvervgeveihguuendxcalycvsok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjtbbnbqgeaiszerpsxhwwozmbkoebmf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xswlgizxpuwkxblkdyglzazpaantdcnu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnxdntmtjsfzurylkukjbksjcnuunljr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bcqvzfatnwmxxpfpitlydurvzflqqxef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"raspmfibkycmzbqgdaiqtqyzwsqvyssw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vyfqxevrzbghvwhkagnohtmctvhguowr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dogvocwiqqivdziyhdetpxjgkzqftdrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwfmzstzvfqrkuraxbxdcfqgbuvchzwt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iyqatxpfwtmujlvnbfamsxwykjuxytiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kufnuappeccsjijzcgcxcoyeaakfspxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hehknlpmppaglihiqgaieuphtlyfkgxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kuyjnrbrxwfikqpcruziifektmqhcvzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhaltbtromhwzeunmtqrlkumdqwnwzcv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xcioznmqcuwrlqqygvpolinasshsjvtk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itojskjibfhqynebnciozbxagmverhih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqrjqxpgrkvhghtaooeyssdjinloxpbt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ipknwokjwdgxeacvvxmwicxfyckiaoeq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbvnxpiumodlqycamoqkeqlzogjhypxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axdwhkghwjocofugahvcssfxnypxcbgk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfhpgsajtrpfyahllrcqpwqzpjvaoqen","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dmszncsulxuxmwfsvvenkcmgkozkiymu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"alnekqalzfkfhgyhynvirvbzeheikxvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yogxsznocevbtyxjqqlgiiiwywdokynm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctqbmcnsuwgbveipidxrwuagdgbkxaoh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvqemipvrouzikzqpecabrxviwqyajbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gvxmkflwcdxqtlqaxpyqatsvmovxdpbi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skoxpphhirdrfgmjpslywmiauucvsfxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ipirkzjlzsspcgkqluovxwicgpzajhgh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"krjuguviilhvcgfirpyunzabtvmkjkyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oyyazcepubtbkuzgutqrpbghbausrple","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhfxzyritvuubisvowreuwoujoadaecw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxqsuvtuvnpfejqjkdnqiydwjldsooke","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjsdhuleufrnkdowuimpecshpwuqzadg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bpkyvmtovarrmgwpbkqbjbfpwbkwzsrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmzujllptyubhmmdsuhvsgcwtsiuqmwt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"brtoguyjejewjtxohqdojprkphggonep","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cyecnhmjvinkihfluyhbznycyrpiblzm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqcwezhgrmlkwklhwmhyryxvwtdvztdx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebrfwzclqanmtwieawwjsxsamsvqjeid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqgvhbyhiloozcuearxwdnktrfhwfuun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdmukkkkpmiydcshcfdooqpxhiaqlofz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oisamjoaiijfqfobnohsuhmwvwdtuxyj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ckuuyrnplpmwnlpgzyyfftgpyteulell","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhdgboaepwdgdlbosfvklimbqxsqktme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tawrdkhtvdxtuhrkgtjyxjcarxsmgaxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qljabvgqxhtvxvoagveghskmgcufmdzu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjilijppjosisnpnwpdlwglnwqkztalb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmoyjouvrcklovgavvzspgeadhdagnxe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxccwmrehzvcahrhqsbfdqcdlsmfkpbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfjsrmotxtblvtgoeohxsaxiffjnfrjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsjstutfzhgeiiqdqokqsljxcphwirrv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ktqejbqphcucuudwguivlqtwfdkksein","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehdtqeoiyudgiwdxqdcdypfagysblqed","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"doxqsdycvnvttveqaersltdimurtgjdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnicxtwvrqoxtdnzzupmuyaideeprdqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zabxxngzkzepcksqdctziretwtjoalek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sheawvsbdbqqikqkpfdpfwajjukftnue","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"arnbtuxehsdyqdpkmzzrkyfbeizcjdqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iiyijrixhsrgtpknhsbbhxtjzwpkzyzt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xaezeeqcfscowdbngzndplesubzukngg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hsbwmfcrawztxvbqjtxynylzrndxxasy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjozdbmdtavffumdzdqbkkxypwpclmeg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zuprfmbfdoretufyvsprtulkfqdikvaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdmcdclzijwirdariluflnbydvcbrvlg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpnuhvmrjozwhtbgqhsatmzcajhasrcd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jrzkhpgwscgvoxpevbkgbntpurigraso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671930,"databaseName":"models_schema","ddl":"CREATE TABLE `uyllrczkxxxqdijmtoeuaxgipxtztugl` (\n `vruopcjgamceaidwmrlrkdyaqwenwkzo` int NOT NULL,\n `nnsrrthzzyqlxvohoyrwkxbfibuplhvt` int DEFAULT NULL,\n `hmdrouurqfjxzumclwwlfolijyrfzwur` int DEFAULT NULL,\n `ebxaexgmuiodwlodkfmjlaqbvhtsriph` int DEFAULT NULL,\n `jkwctlvmdikacgekkdgegzdepblvnjhf` int DEFAULT NULL,\n `mebaqapqnmysewazkmljccaaskcvpqot` int DEFAULT NULL,\n `xktmcuwszbtutaddyhaegojmhcvezfdw` int DEFAULT NULL,\n `frmqhdmxchleexhqdzpsfkcdututueiu` int DEFAULT NULL,\n `hagiscraubxmterzpitodjajmbqmauly` int DEFAULT NULL,\n `lcjijfdkcslkkcecdeukgscgsvmrwcbp` int DEFAULT NULL,\n `xfvlrqejvawjybzfntdcpocybggvijab` int DEFAULT NULL,\n `xesowoosexseabfaaqcjrbvpofryjwuj` int DEFAULT NULL,\n `yoajwdpahiefdnjwmaxpuihzsdjcydpr` int DEFAULT NULL,\n `wqeahqdcrjdyluscyoqqrkxgbggyfkyz` int DEFAULT NULL,\n `dqiyelgxfoaifsmkdonvrvvfdvqsuzgk` int DEFAULT NULL,\n `svdvnoughgyjycnqdaesfjeepmjkzqnq` int DEFAULT NULL,\n `tqwxvlfuokcutybtwmzpqbpbnmsdtfcg` int DEFAULT NULL,\n `mowqoksvynmkqyzkznabwegrydloboax` int DEFAULT NULL,\n `bqbcgpxgrnympejujagpnfkwwkqyykkt` int DEFAULT NULL,\n `twfbxzdrlfvpdsenlodueqzlmtbgagry` int DEFAULT NULL,\n `lijzngjgtgbyomjglutcqivffuweenxy` int DEFAULT NULL,\n `nltmbjozpjaopsnoxsqrdfkmjtdtlmiv` int DEFAULT NULL,\n `phuvzwrxgsbaputqejsvsotbjgtvaiex` int DEFAULT NULL,\n `hfchssrjtmzcdbafxnoxdzuduwtebqtz` int DEFAULT NULL,\n `byrrnflzvcmemxokyqxfzdlmlacouzrt` int DEFAULT NULL,\n `tddwmvywnhbilijwfydmoqxybuoumers` int DEFAULT NULL,\n `attlmypswzmhucxuxawsahijxqcpydjm` int DEFAULT NULL,\n `ippkaykkaeuvxgxgfgrzxhjamrdvtika` int DEFAULT NULL,\n `dqhlzdftsdyjrpnthrqeynddvrulqwcl` int DEFAULT NULL,\n `dinytqyjtswttrgjburpsxchdeslmdvw` int DEFAULT NULL,\n `mytopzzqbhhadixmdwmzwmkckkcdaolo` int DEFAULT NULL,\n `ggluncvagmrmszhlkvcyhvpmhpnhmall` int DEFAULT NULL,\n `wpycdkzszxqqhtejfktvtaknljntjgdw` int DEFAULT NULL,\n `ocmnrsxvlaxtodhddiwmvuwoycfanmhl` int DEFAULT NULL,\n `wccowwaoawjqefnhrnuzsmbhwffnooxf` int DEFAULT NULL,\n `oircdevbsmmbiflpbheravmbcrqjblhn` int DEFAULT NULL,\n `mbxfgcsogbnvxiokiuvftprdbyprnmna` int DEFAULT NULL,\n `myvmbvzirpbxmzihwtfswaxothdsexhl` int DEFAULT NULL,\n `mqpvfmpjafowafoogkjjappfvguqpofl` int DEFAULT NULL,\n `zcqadbchyzcrmcosgtapqcsrdtugzvrn` int DEFAULT NULL,\n `vcabtnenkiafhsqkvoddxhdzccetngiv` int DEFAULT NULL,\n `onfmwkizlcpvnhaaibwwsgrocadveaae` int DEFAULT NULL,\n `skjcsvcdwhcvazliszjmtfwfwnwlyxzr` int DEFAULT NULL,\n `qmdibtetcqjfebeijcgvsalmnkcpytam` int DEFAULT NULL,\n `bjzepkawwnoqealhmajgpuuxqqohtxvp` int DEFAULT NULL,\n `xkdepjcovazmufdhfmctsistzffcewyv` int DEFAULT NULL,\n `yikdadweymxwpngmgftfdvzihvphnqjc` int DEFAULT NULL,\n `jjiyimfpaosmcacuxwtvxinonlhlyawb` int DEFAULT NULL,\n `tdzvkdgkplxxqscstcwrtymdfbhtosdc` int DEFAULT NULL,\n `rpqzphhmmrkaducbqnkgkrfeodlxxmbr` int DEFAULT NULL,\n `jlaabrqhfcuowcxdomiunrqhdaivzpyx` int DEFAULT NULL,\n `zxoimballsspkjhwkdqrmdrqitgixgdw` int DEFAULT NULL,\n `ckkecgnmanzjpxvqxlelyabjdodmmlby` int DEFAULT NULL,\n `hdkwoqbgpogngocghzjelkvaedhkkijn` int DEFAULT NULL,\n `wjjpddwvvilkksvjxabwgrmikhokiwgo` int DEFAULT NULL,\n `iufdjcflhghspvgavgfbshlwuexfjiiy` int DEFAULT NULL,\n `uzdrnwozygbkiaaakosypxtsywavgmci` int DEFAULT NULL,\n `dnycnewrkdcrkvgvvqkthcfujduqqaqb` int DEFAULT NULL,\n `nsdpkdjbvhdkouwoqjozjiptyaenankm` int DEFAULT NULL,\n `lwamzykmdsuaswbokyylquoacwrihmbb` int DEFAULT NULL,\n `upfewpeqpqzxpgjyjosvvenfonddogwl` int DEFAULT NULL,\n `wasixipmbmcuaknojplpotrdovhzfzhg` int DEFAULT NULL,\n `chyvgtlceksxzysrvfvufhghhxvycdfx` int DEFAULT NULL,\n `reyaqeesnoxgriuhnefaqwxxiyynqhsk` int DEFAULT NULL,\n `eobjcwfugqaymofiwlzmepzauhtshpiw` int DEFAULT NULL,\n `ngpzbrnrvrmbxjaoheqfcrepjcrffwix` int DEFAULT NULL,\n `cjjyxwheztaaruitlodtqjovlnlniblz` int DEFAULT NULL,\n `bjznujthkcpcaffdgrpdogszdtntngcy` int DEFAULT NULL,\n `mpnlpvavgyqiqrnjyypxknjyanifnijy` int DEFAULT NULL,\n `yqywelwcwbsdifxdozlfxdruzjllsjja` int DEFAULT NULL,\n `pmqyvlhwljvgfhhtzstkdxtgszdekuup` int DEFAULT NULL,\n `psjtgqywwbmgawrilnklwiwtegsqeuvt` int DEFAULT NULL,\n `jjraaatqqpgiilphwpctvzbuoiytblgu` int DEFAULT NULL,\n `gatwiomoiymkfgqydhugqycehzilmwlq` int DEFAULT NULL,\n `gtfbdcbxnzcxcaiftunqokamrqcipbub` int DEFAULT NULL,\n `tjzpurowyamoviejvlnxnutjdazgoznd` int DEFAULT NULL,\n `tledpcuhobbizqachkrzdtqnuioevoxu` int DEFAULT NULL,\n `tlcehsusqdkwnookamnzebhlbvsqooie` int DEFAULT NULL,\n `leaklhqrhklrbaqeclcxlqgbmexxpmnd` int DEFAULT NULL,\n `yxtdlgwjzggrecghuulkvjtlpvmyiiob` int DEFAULT NULL,\n `rboxvkejjumosfpxjyccdxpxincamyft` int DEFAULT NULL,\n `esbfuvximnbhchyqmwdtaaqwfyvvisuz` int DEFAULT NULL,\n `fbscgklplpqcdmbrmmcxyxphamfdnhuo` int DEFAULT NULL,\n `tqypvbrogcgxxhqkwqtbskjqgygmrany` int DEFAULT NULL,\n `wqnbgdrwobtwvtabvkzcsfaijrmokkws` int DEFAULT NULL,\n `mpfqoknsiyytusazmyncikbopiqlhfvs` int DEFAULT NULL,\n `vzciinqswreohhbyrbmrnqypupphrxhk` int DEFAULT NULL,\n `idioqhssbulafoewhdnkhpqdbgtuhcmu` int DEFAULT NULL,\n `orqhfxfsjymmtvjiryveaklbgfltsyyc` int DEFAULT NULL,\n `xipiteiskqevtfbactvpoxlzhnwgpuhb` int DEFAULT NULL,\n `mqcpuusqgddpcmitqkangxingdoltpuw` int DEFAULT NULL,\n `ekyupujweztqnrecjjoksoutnpkqktol` int DEFAULT NULL,\n `khomsuxgoludnzrnfcdlfhcqjwkgxskt` int DEFAULT NULL,\n `xszjejedlkomrksovenhqhpsxdubuizt` int DEFAULT NULL,\n `pjphtuheloluicbwhujwwssszlweckbx` int DEFAULT NULL,\n `mwzzfdqotzvpxsphpviorcwnjwelfthi` int DEFAULT NULL,\n `averveantsgkahwbpetlqlcayjhktvju` int DEFAULT NULL,\n `pnsozpazxkynxhhwixeprfxuklzrypgq` int DEFAULT NULL,\n `oppdmwvmiyvppgobnxgawocbntqlhwwy` int DEFAULT NULL,\n `cbnwkrsskrufknszwlyxlxrcnktditau` int DEFAULT NULL,\n PRIMARY KEY (`vruopcjgamceaidwmrlrkdyaqwenwkzo`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"uyllrczkxxxqdijmtoeuaxgipxtztugl\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["vruopcjgamceaidwmrlrkdyaqwenwkzo"],"columns":[{"name":"vruopcjgamceaidwmrlrkdyaqwenwkzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"nnsrrthzzyqlxvohoyrwkxbfibuplhvt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmdrouurqfjxzumclwwlfolijyrfzwur","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebxaexgmuiodwlodkfmjlaqbvhtsriph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jkwctlvmdikacgekkdgegzdepblvnjhf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mebaqapqnmysewazkmljccaaskcvpqot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xktmcuwszbtutaddyhaegojmhcvezfdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"frmqhdmxchleexhqdzpsfkcdututueiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hagiscraubxmterzpitodjajmbqmauly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lcjijfdkcslkkcecdeukgscgsvmrwcbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xfvlrqejvawjybzfntdcpocybggvijab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xesowoosexseabfaaqcjrbvpofryjwuj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yoajwdpahiefdnjwmaxpuihzsdjcydpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqeahqdcrjdyluscyoqqrkxgbggyfkyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqiyelgxfoaifsmkdonvrvvfdvqsuzgk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"svdvnoughgyjycnqdaesfjeepmjkzqnq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqwxvlfuokcutybtwmzpqbpbnmsdtfcg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mowqoksvynmkqyzkznabwegrydloboax","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqbcgpxgrnympejujagpnfkwwkqyykkt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twfbxzdrlfvpdsenlodueqzlmtbgagry","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lijzngjgtgbyomjglutcqivffuweenxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nltmbjozpjaopsnoxsqrdfkmjtdtlmiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phuvzwrxgsbaputqejsvsotbjgtvaiex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfchssrjtmzcdbafxnoxdzuduwtebqtz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"byrrnflzvcmemxokyqxfzdlmlacouzrt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tddwmvywnhbilijwfydmoqxybuoumers","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"attlmypswzmhucxuxawsahijxqcpydjm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ippkaykkaeuvxgxgfgrzxhjamrdvtika","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqhlzdftsdyjrpnthrqeynddvrulqwcl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dinytqyjtswttrgjburpsxchdeslmdvw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mytopzzqbhhadixmdwmzwmkckkcdaolo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggluncvagmrmszhlkvcyhvpmhpnhmall","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wpycdkzszxqqhtejfktvtaknljntjgdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocmnrsxvlaxtodhddiwmvuwoycfanmhl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wccowwaoawjqefnhrnuzsmbhwffnooxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oircdevbsmmbiflpbheravmbcrqjblhn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbxfgcsogbnvxiokiuvftprdbyprnmna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"myvmbvzirpbxmzihwtfswaxothdsexhl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqpvfmpjafowafoogkjjappfvguqpofl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zcqadbchyzcrmcosgtapqcsrdtugzvrn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vcabtnenkiafhsqkvoddxhdzccetngiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"onfmwkizlcpvnhaaibwwsgrocadveaae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skjcsvcdwhcvazliszjmtfwfwnwlyxzr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmdibtetcqjfebeijcgvsalmnkcpytam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjzepkawwnoqealhmajgpuuxqqohtxvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkdepjcovazmufdhfmctsistzffcewyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yikdadweymxwpngmgftfdvzihvphnqjc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjiyimfpaosmcacuxwtvxinonlhlyawb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tdzvkdgkplxxqscstcwrtymdfbhtosdc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpqzphhmmrkaducbqnkgkrfeodlxxmbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlaabrqhfcuowcxdomiunrqhdaivzpyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxoimballsspkjhwkdqrmdrqitgixgdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ckkecgnmanzjpxvqxlelyabjdodmmlby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdkwoqbgpogngocghzjelkvaedhkkijn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjjpddwvvilkksvjxabwgrmikhokiwgo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iufdjcflhghspvgavgfbshlwuexfjiiy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzdrnwozygbkiaaakosypxtsywavgmci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dnycnewrkdcrkvgvvqkthcfujduqqaqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nsdpkdjbvhdkouwoqjozjiptyaenankm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwamzykmdsuaswbokyylquoacwrihmbb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upfewpeqpqzxpgjyjosvvenfonddogwl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wasixipmbmcuaknojplpotrdovhzfzhg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"chyvgtlceksxzysrvfvufhghhxvycdfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"reyaqeesnoxgriuhnefaqwxxiyynqhsk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eobjcwfugqaymofiwlzmepzauhtshpiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ngpzbrnrvrmbxjaoheqfcrepjcrffwix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cjjyxwheztaaruitlodtqjovlnlniblz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjznujthkcpcaffdgrpdogszdtntngcy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpnlpvavgyqiqrnjyypxknjyanifnijy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqywelwcwbsdifxdozlfxdruzjllsjja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmqyvlhwljvgfhhtzstkdxtgszdekuup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"psjtgqywwbmgawrilnklwiwtegsqeuvt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjraaatqqpgiilphwpctvzbuoiytblgu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gatwiomoiymkfgqydhugqycehzilmwlq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtfbdcbxnzcxcaiftunqokamrqcipbub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjzpurowyamoviejvlnxnutjdazgoznd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tledpcuhobbizqachkrzdtqnuioevoxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlcehsusqdkwnookamnzebhlbvsqooie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"leaklhqrhklrbaqeclcxlqgbmexxpmnd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxtdlgwjzggrecghuulkvjtlpvmyiiob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rboxvkejjumosfpxjyccdxpxincamyft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"esbfuvximnbhchyqmwdtaaqwfyvvisuz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbscgklplpqcdmbrmmcxyxphamfdnhuo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqypvbrogcgxxhqkwqtbskjqgygmrany","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqnbgdrwobtwvtabvkzcsfaijrmokkws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpfqoknsiyytusazmyncikbopiqlhfvs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vzciinqswreohhbyrbmrnqypupphrxhk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idioqhssbulafoewhdnkhpqdbgtuhcmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orqhfxfsjymmtvjiryveaklbgfltsyyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xipiteiskqevtfbactvpoxlzhnwgpuhb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqcpuusqgddpcmitqkangxingdoltpuw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekyupujweztqnrecjjoksoutnpkqktol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"khomsuxgoludnzrnfcdlfhcqjwkgxskt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xszjejedlkomrksovenhqhpsxdubuizt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjphtuheloluicbwhujwwssszlweckbx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwzzfdqotzvpxsphpviorcwnjwelfthi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"averveantsgkahwbpetlqlcayjhktvju","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnsozpazxkynxhhwixeprfxuklzrypgq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oppdmwvmiyvppgobnxgawocbntqlhwwy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbnwkrsskrufknszwlyxlxrcnktditau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842671964,"databaseName":"models_schema","ddl":"CREATE TABLE `uzfkyntmiqwwfluspuhyvetjysuvdqgr` (\n `bkaprbpbvomnlbfrqlbqoslpbvkvhueq` int NOT NULL,\n `zhqwzybapekcrxpgxwcdowawubcoutlt` int DEFAULT NULL,\n `ynjukxzbqojqnbpbwoijbjwtuibmginm` int DEFAULT NULL,\n `fnimeqqirlicfizahngrazzrvypwqnwj` int DEFAULT NULL,\n `kmlkpjuzqttrwicnhlqrmnexjvgglkqz` int DEFAULT NULL,\n `eqgjlvsltqtovrjdnravzlzlmwuemmiw` int DEFAULT NULL,\n `ibcztiabrfdssdhmsqadldzmhreplvyr` int DEFAULT NULL,\n `crkwsnpgfdfemzqgumkzyleocxrryugg` int DEFAULT NULL,\n `mtzbwuigjketbdihtswzryhsgaxcmpqm` int DEFAULT NULL,\n `llvpvnzamncvymdvdceazdufqvmomxqr` int DEFAULT NULL,\n `txpsyjvyaczzvksuzfhvmhtrjqemkvjd` int DEFAULT NULL,\n `msqtrmdwhgxtloldtmpjovghumhxgvgj` int DEFAULT NULL,\n `yqofwddqdguruaueunvectgkkvwuvifb` int DEFAULT NULL,\n `iduvnipmoqymtijmklyiwabtfucjefzu` int DEFAULT NULL,\n `bjtwgrhsyzbzfdfntjmvngyljkkhloru` int DEFAULT NULL,\n `lvwpmptydtlfitdmphgmwaaxkhajkudl` int DEFAULT NULL,\n `yhcvhhvkuonhntovcsqkxwgdmursmccg` int DEFAULT NULL,\n `fcabwrbcnnuodvltovbbqusokxjdzghv` int DEFAULT NULL,\n `azbeyvscwyvmfunfyjeqvhtprwxnzklj` int DEFAULT NULL,\n `flwiabeoplhygjltuhkbvaqylrmakthq` int DEFAULT NULL,\n `bdrfjhbmexovjqculkrevdtmjrervapp` int DEFAULT NULL,\n `gxvuowpwdiknwmwfjxjeukuuzozwnstm` int DEFAULT NULL,\n `dxdzsvkqzljofqkuobovttqbngvypahe` int DEFAULT NULL,\n `favkafubrmkkcxumqpppuruxqzdgwcao` int DEFAULT NULL,\n `lroxpimihzufxfncbzuiyasftrydnqbr` int DEFAULT NULL,\n `ltazmiaggkopazvalvctsidkriesotqm` int DEFAULT NULL,\n `gpwmkbauauynvlgiyhzuqjliowwcqqlx` int DEFAULT NULL,\n `gqrkicunmodspqwtbbldzowuqdtnppqh` int DEFAULT NULL,\n `gvdgsctmlolsxayxknncktnbuztfesjj` int DEFAULT NULL,\n `mlchaejngqlvihuwgfnndhqdcoinqqxe` int DEFAULT NULL,\n `ytrdgukwvrtpnsqrkmwudsbdnwmdkonc` int DEFAULT NULL,\n `veamhkuqrnfdtzxdgbkgwsgjsrocjyqe` int DEFAULT NULL,\n `tmiylhvgbvozctjzjbqbilyfrodtzmwz` int DEFAULT NULL,\n `kdaljphejfiixujuibqfqyqiaxogqrod` int DEFAULT NULL,\n `pflvlxkxywsjijbijgkraqntqkkelskg` int DEFAULT NULL,\n `puygtijkncvlztzruwfkyyrxqqhzltlq` int DEFAULT NULL,\n `xxopwunxjtdnchtyhoiogcfobnjxijxu` int DEFAULT NULL,\n `vaaiucjrxkiolwqwpognpkmsrsfohxcq` int DEFAULT NULL,\n `dvhnvhjfglwgzhdzjkbfnyiyfrrkfqkg` int DEFAULT NULL,\n `teytorsiddfadbccojutfunufmfryrjv` int DEFAULT NULL,\n `wyphiayvscslqwazkvfrnlgagizzjfwz` int DEFAULT NULL,\n `cqxnbktqsqdtfzduzbcsxabzhfajkilb` int DEFAULT NULL,\n `zkbmdloonirnntgoubgvievbbxrdbpsa` int DEFAULT NULL,\n `ysvjawjgfvykvclsxuiwfusppsrkhdlz` int DEFAULT NULL,\n `orcroqzwruirxmgyhiolfqbtoewsshcr` int DEFAULT NULL,\n `ljwjbvudrageyufrwihyzgelzqnzqxpw` int DEFAULT NULL,\n `dxbhtidzvsrletirayveidncmpubwiop` int DEFAULT NULL,\n `ubndnrdtydfnrhkayexbveoragyalfza` int DEFAULT NULL,\n `vuxishkkcmcyaoyzaetdmcsbefzajsso` int DEFAULT NULL,\n `mbovnucnslejhmesncdqdoradmwdvvpy` int DEFAULT NULL,\n `fjubxmckvjxjnvdttxtdwpgtkcccdsug` int DEFAULT NULL,\n `qgytwfzaafhfteredvcbsimzlhfowmsy` int DEFAULT NULL,\n `cgtrupyfnkexrosxiojzrptuzuxdfkcv` int DEFAULT NULL,\n `dofvqcbvmdwqxnxahlelvejasdfjfmbn` int DEFAULT NULL,\n `zcsbevufzggjkdbcwptojxhmgapcqdlo` int DEFAULT NULL,\n `yykhzuaetlhshznfzoeakxjebcyojebt` int DEFAULT NULL,\n `qktlhoyeierngngxrwaweblbhsmynxza` int DEFAULT NULL,\n `ffzdoarqgmghpwgnjykbfzlfzfljffir` int DEFAULT NULL,\n `entwvnzzxzbwrgatzcjyfiititkgpkcy` int DEFAULT NULL,\n `vrpsqcqtxaubtrebaxlilluqtzvsiztc` int DEFAULT NULL,\n `gcumcaxxludgbyqrzgjsthtygpgmwwmh` int DEFAULT NULL,\n `kakxkmftydebgrysyypsxsieviaynipn` int DEFAULT NULL,\n `emmxboyxedisnerwxiyjolniwdnqfyvi` int DEFAULT NULL,\n `hbdsouyxtploerwjtvsuyhelnlotmkyg` int DEFAULT NULL,\n `edyoohtxfaigkfubxvmouxxtuqnbycrd` int DEFAULT NULL,\n `xpcxsaoxycumpascgpoilldjqlooojfd` int DEFAULT NULL,\n `udzfkmgxsnszewqhrltezofcnufmzrre` int DEFAULT NULL,\n `afkzfauwbzupmmtplzgtqitjatocsgxh` int DEFAULT NULL,\n `yutviqrhstrmkapveersvbzmqswjcfwb` int DEFAULT NULL,\n `sjmlylvpvltxsqgtugbljssebodalcoq` int DEFAULT NULL,\n `mfcaupdmwldoycbdaajdxubihzayxvuw` int DEFAULT NULL,\n `hopjokiacktoascbynhjbrdtsmahijvd` int DEFAULT NULL,\n `uurgddmiuxothdojrhhcpbwhmvnhwrdt` int DEFAULT NULL,\n `foxddcephewjtwbaqaahixnjljxuzpjx` int DEFAULT NULL,\n `xkxatvoowudcolvrluwqkhnqsllxmyth` int DEFAULT NULL,\n `nneeicfvhbruoofybbaxflfwlymiqpzq` int DEFAULT NULL,\n `nutcupkhivqqhyrujzzjwifjoncpasyn` int DEFAULT NULL,\n `vxygbzwlpmnrbvdullaiojasqsvfgumc` int DEFAULT NULL,\n `dwagvntigisvtunqmeahynxnrorkxfuo` int DEFAULT NULL,\n `akpyekdbodyninekmptvlqnhbuclmqyu` int DEFAULT NULL,\n `hamujzjrbwjmqvlfnzxbfklpygifnbtq` int DEFAULT NULL,\n `ejpodowciplpcnqwadgpryacippcscdi` int DEFAULT NULL,\n `uwdqmeffhvixgpuxtwtuxmpwziebdzde` int DEFAULT NULL,\n `oenfkovsbabdldrujrbbtuqasfnudhyd` int DEFAULT NULL,\n `yxlhmwtuycxrjpsznbhrpsfmzyfdgiqh` int DEFAULT NULL,\n `twcnexpajadelgihhmjjgfqivdudpqlx` int DEFAULT NULL,\n `stwyenxmytuanchfeinhhhicjicxffbc` int DEFAULT NULL,\n `vztlzufwupslaoycqylxfzxjfedbcbhz` int DEFAULT NULL,\n `ljxfvqqrosiljerpwtfximuylgyrkfng` int DEFAULT NULL,\n `sfzhipnxeridzrqvkcsalbesihqjoqfz` int DEFAULT NULL,\n `aphrjmilmmkmghtedtxudgdwlpihqnum` int DEFAULT NULL,\n `wuvfkklxvyvkuovrvqophovjpydmeiaw` int DEFAULT NULL,\n `nvlpntnqonmatihxhunctuigbnigjoht` int DEFAULT NULL,\n `oktalvrncexfghdklablogwbhpfhyoyz` int DEFAULT NULL,\n `hqhgeiervpkxdyflzdbiztsrobzpqcmf` int DEFAULT NULL,\n `fcyrjncbhylclxoyqznoodagmdliualc` int DEFAULT NULL,\n `udzxwrwmmmagjpdtgjyjtobtbbtffejw` int DEFAULT NULL,\n `nowgfbfntsgkvwvwtwvizluwzrwwlcwz` int DEFAULT NULL,\n `xrrwfnmmibqtdqwfilnrbgghfnjtdmwy` int DEFAULT NULL,\n `ryawfqfnerxkpyaisgxflmneininhlvw` int DEFAULT NULL,\n PRIMARY KEY (`bkaprbpbvomnlbfrqlbqoslpbvkvhueq`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"uzfkyntmiqwwfluspuhyvetjysuvdqgr\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["bkaprbpbvomnlbfrqlbqoslpbvkvhueq"],"columns":[{"name":"bkaprbpbvomnlbfrqlbqoslpbvkvhueq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"zhqwzybapekcrxpgxwcdowawubcoutlt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynjukxzbqojqnbpbwoijbjwtuibmginm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnimeqqirlicfizahngrazzrvypwqnwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kmlkpjuzqttrwicnhlqrmnexjvgglkqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqgjlvsltqtovrjdnravzlzlmwuemmiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibcztiabrfdssdhmsqadldzmhreplvyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"crkwsnpgfdfemzqgumkzyleocxrryugg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtzbwuigjketbdihtswzryhsgaxcmpqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llvpvnzamncvymdvdceazdufqvmomxqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txpsyjvyaczzvksuzfhvmhtrjqemkvjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"msqtrmdwhgxtloldtmpjovghumhxgvgj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqofwddqdguruaueunvectgkkvwuvifb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iduvnipmoqymtijmklyiwabtfucjefzu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjtwgrhsyzbzfdfntjmvngyljkkhloru","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvwpmptydtlfitdmphgmwaaxkhajkudl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhcvhhvkuonhntovcsqkxwgdmursmccg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcabwrbcnnuodvltovbbqusokxjdzghv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"azbeyvscwyvmfunfyjeqvhtprwxnzklj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flwiabeoplhygjltuhkbvaqylrmakthq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bdrfjhbmexovjqculkrevdtmjrervapp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gxvuowpwdiknwmwfjxjeukuuzozwnstm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxdzsvkqzljofqkuobovttqbngvypahe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"favkafubrmkkcxumqpppuruxqzdgwcao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lroxpimihzufxfncbzuiyasftrydnqbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ltazmiaggkopazvalvctsidkriesotqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gpwmkbauauynvlgiyhzuqjliowwcqqlx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqrkicunmodspqwtbbldzowuqdtnppqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gvdgsctmlolsxayxknncktnbuztfesjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mlchaejngqlvihuwgfnndhqdcoinqqxe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytrdgukwvrtpnsqrkmwudsbdnwmdkonc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"veamhkuqrnfdtzxdgbkgwsgjsrocjyqe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmiylhvgbvozctjzjbqbilyfrodtzmwz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kdaljphejfiixujuibqfqyqiaxogqrod","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pflvlxkxywsjijbijgkraqntqkkelskg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"puygtijkncvlztzruwfkyyrxqqhzltlq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxopwunxjtdnchtyhoiogcfobnjxijxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vaaiucjrxkiolwqwpognpkmsrsfohxcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvhnvhjfglwgzhdzjkbfnyiyfrrkfqkg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"teytorsiddfadbccojutfunufmfryrjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wyphiayvscslqwazkvfrnlgagizzjfwz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqxnbktqsqdtfzduzbcsxabzhfajkilb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zkbmdloonirnntgoubgvievbbxrdbpsa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ysvjawjgfvykvclsxuiwfusppsrkhdlz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orcroqzwruirxmgyhiolfqbtoewsshcr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljwjbvudrageyufrwihyzgelzqnzqxpw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxbhtidzvsrletirayveidncmpubwiop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubndnrdtydfnrhkayexbveoragyalfza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vuxishkkcmcyaoyzaetdmcsbefzajsso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbovnucnslejhmesncdqdoradmwdvvpy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjubxmckvjxjnvdttxtdwpgtkcccdsug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qgytwfzaafhfteredvcbsimzlhfowmsy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgtrupyfnkexrosxiojzrptuzuxdfkcv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dofvqcbvmdwqxnxahlelvejasdfjfmbn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zcsbevufzggjkdbcwptojxhmgapcqdlo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yykhzuaetlhshznfzoeakxjebcyojebt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qktlhoyeierngngxrwaweblbhsmynxza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffzdoarqgmghpwgnjykbfzlfzfljffir","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"entwvnzzxzbwrgatzcjyfiititkgpkcy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vrpsqcqtxaubtrebaxlilluqtzvsiztc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gcumcaxxludgbyqrzgjsthtygpgmwwmh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kakxkmftydebgrysyypsxsieviaynipn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"emmxboyxedisnerwxiyjolniwdnqfyvi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbdsouyxtploerwjtvsuyhelnlotmkyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edyoohtxfaigkfubxvmouxxtuqnbycrd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xpcxsaoxycumpascgpoilldjqlooojfd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udzfkmgxsnszewqhrltezofcnufmzrre","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afkzfauwbzupmmtplzgtqitjatocsgxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yutviqrhstrmkapveersvbzmqswjcfwb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjmlylvpvltxsqgtugbljssebodalcoq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mfcaupdmwldoycbdaajdxubihzayxvuw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hopjokiacktoascbynhjbrdtsmahijvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uurgddmiuxothdojrhhcpbwhmvnhwrdt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"foxddcephewjtwbaqaahixnjljxuzpjx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkxatvoowudcolvrluwqkhnqsllxmyth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nneeicfvhbruoofybbaxflfwlymiqpzq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nutcupkhivqqhyrujzzjwifjoncpasyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxygbzwlpmnrbvdullaiojasqsvfgumc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwagvntigisvtunqmeahynxnrorkxfuo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akpyekdbodyninekmptvlqnhbuclmqyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hamujzjrbwjmqvlfnzxbfklpygifnbtq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejpodowciplpcnqwadgpryacippcscdi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uwdqmeffhvixgpuxtwtuxmpwziebdzde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oenfkovsbabdldrujrbbtuqasfnudhyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxlhmwtuycxrjpsznbhrpsfmzyfdgiqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twcnexpajadelgihhmjjgfqivdudpqlx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"stwyenxmytuanchfeinhhhicjicxffbc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vztlzufwupslaoycqylxfzxjfedbcbhz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljxfvqqrosiljerpwtfximuylgyrkfng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfzhipnxeridzrqvkcsalbesihqjoqfz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aphrjmilmmkmghtedtxudgdwlpihqnum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wuvfkklxvyvkuovrvqophovjpydmeiaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvlpntnqonmatihxhunctuigbnigjoht","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oktalvrncexfghdklablogwbhpfhyoyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqhgeiervpkxdyflzdbiztsrobzpqcmf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcyrjncbhylclxoyqznoodagmdliualc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udzxwrwmmmagjpdtgjyjtobtbbtffejw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nowgfbfntsgkvwvwtwvizluwzrwwlcwz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xrrwfnmmibqtdqwfilnrbgghfnjtdmwy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ryawfqfnerxkpyaisgxflmneininhlvw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842671,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672003,"databaseName":"models_schema","ddl":"CREATE TABLE `uzwzfxgsmncskifwztscboirulhiccox` (\n `jrdhosbhavvgqojdwkhuvnyildycgriw` int NOT NULL,\n `bpdxcxpyvafeageyqwdwomoohmsqkobn` int DEFAULT NULL,\n `seoldpuavfvpmwfvhphqmwouqfvaecvy` int DEFAULT NULL,\n `sxpozibysdkktqstnczezwxfezixjuks` int DEFAULT NULL,\n `bjayfeggbterfunodafgzlplnqjwlfup` int DEFAULT NULL,\n `nulyeczmheuavplpagsgzoykgfkmyese` int DEFAULT NULL,\n `tuauldrywiuimvdhjznzpcwdwapuougf` int DEFAULT NULL,\n `zdlvpdlqoxsunptarnwyaiwydjljpfbn` int DEFAULT NULL,\n `jsmhikdebfcyelfnopjwftvtbhncubiq` int DEFAULT NULL,\n `ubjdxyjsspxnemekahgouzwyraqjuwpn` int DEFAULT NULL,\n `jjlbsvqgjlgqcoxikdvmuokqfkjismpl` int DEFAULT NULL,\n `nzzrxfyujxmdsbseojymebpdqehykqkd` int DEFAULT NULL,\n `rilwnalmhhpgzkodzfbfktimyoarersi` int DEFAULT NULL,\n `mdjtaksmxtvyvrkiidmrydbiinupqtnl` int DEFAULT NULL,\n `hcatbwkjrnnuudbwsqrqiiuihcomxxoi` int DEFAULT NULL,\n `cyeqzpweztvkibdgfiqegrkrypqqjqxo` int DEFAULT NULL,\n `zezkqxzqciouqaourktcomqxhichgzsu` int DEFAULT NULL,\n `ukzwwhvgieovldedqldvrytkejgdygyp` int DEFAULT NULL,\n `airszwztsswvvhhdmjhetoizwgjxabox` int DEFAULT NULL,\n `rimcjyrwpdzxphrvtgvtqatiribyithu` int DEFAULT NULL,\n `itkgtlvblwqlwbnfhvejdlbnhiplugua` int DEFAULT NULL,\n `qeqlfqxknulqtyqxwozbcyabsogzddad` int DEFAULT NULL,\n `xqixjvyxlexzbotmvfywhjvwrlqvlpvb` int DEFAULT NULL,\n `nfzfgdgnowyawijhdluhupudqhggrved` int DEFAULT NULL,\n `jlgavovgntkvtjvbptygsuarvzjnvoga` int DEFAULT NULL,\n `orcsrczltzmhssprwecxcfjqlukxwkgi` int DEFAULT NULL,\n `rubpccmltbnzfheugxmjzppzfrplszps` int DEFAULT NULL,\n `ytcnknfcujgyfegrbobqsikgumxosjqv` int DEFAULT NULL,\n `mhppcmcfibbuxhwszgcucafmsjgzxgri` int DEFAULT NULL,\n `cllovcpfzxosuxicqyteymgssxrqpuzk` int DEFAULT NULL,\n `cldpqxzatfeopoartjtnwomptgbnuwlo` int DEFAULT NULL,\n `tiudjjasxcnhchterwcfnurbfkbdokgu` int DEFAULT NULL,\n `wsekbojuxvnfvqhbjgtlxtattcfmfbbp` int DEFAULT NULL,\n `vnyydrptrpalvkenwaabpmcajwbrsulb` int DEFAULT NULL,\n `ltgipbghufnmmfowxyelpanbfxmvunzg` int DEFAULT NULL,\n `ubyjpsoruaujqwzdesjmyakwozgctska` int DEFAULT NULL,\n `nszyhdzkwoabfqgrmkyvombxblvmcebc` int DEFAULT NULL,\n `tpcjjfdohheomovrihzuscvmkotqzrhy` int DEFAULT NULL,\n `xuknszzxdipodlrbevbixfinayqjohqs` int DEFAULT NULL,\n `pnajnwtgaimnkkschlrgrdtewbjbtfsp` int DEFAULT NULL,\n `cevbxasjthlmbospqgsnqyibsyycmphy` int DEFAULT NULL,\n `kckfnfeuvgwogtjntndmgyxcwrudlfom` int DEFAULT NULL,\n `evukosdohtowjgkmcntwpjnrssmhheea` int DEFAULT NULL,\n `jjqxojhiyuwbqemsoeknxkjbqwtknerc` int DEFAULT NULL,\n `chqbjjkcyanvbbvdpfuafahlzggrtmin` int DEFAULT NULL,\n `zdbydpbyespjndphsqsrkcrrnsncadne` int DEFAULT NULL,\n `uoctkpoqorsaohglvsfmkkilurtnetsk` int DEFAULT NULL,\n `dbuvlbwvlggfdhifkmlwcutkcbfuhjdt` int DEFAULT NULL,\n `zdltfhgiswdzpiwhiwmutpvqghmiqvpy` int DEFAULT NULL,\n `osojfavgftnkmjglvhuoxuznksplslbp` int DEFAULT NULL,\n `nzakhzpwvnkkypcnsiararupozcnrzyk` int DEFAULT NULL,\n `kowclkomzsnvewiwkzuaeugvilipnsag` int DEFAULT NULL,\n `udkejngosstaublohyuaykqcbbnbovag` int DEFAULT NULL,\n `jubzuiegywfqmivwijpofimihoztnrun` int DEFAULT NULL,\n `skbrduzubmxekzzbcgefsfdmwixmqqab` int DEFAULT NULL,\n `ajoqdslekpfncyackbxfkhjibldmssdi` int DEFAULT NULL,\n `uhvvqbwmgkjskkgxouwqdfovjbqlmwcm` int DEFAULT NULL,\n `wmxbjtxmqdulbabsqxgbkmbygqtkkvxl` int DEFAULT NULL,\n `yjjorarxtckibmlngohunpnjuonljggl` int DEFAULT NULL,\n `birfpwbpfqzaejczenfdgtmnfdqycriy` int DEFAULT NULL,\n `qnerhnlpbysrarvcourljqmvmvsyrnax` int DEFAULT NULL,\n `lbrxszbpjsgnepssrptrjtcjieebqvpz` int DEFAULT NULL,\n `vrszdmycgxlqttmlegxtbuazbxpieglv` int DEFAULT NULL,\n `xqlcmbemuikfyageufaiqygaagomzcun` int DEFAULT NULL,\n `wepmyhzvfmkveytsdgrhvfwtdcmxbbgx` int DEFAULT NULL,\n `ydxtumhtqwrogcfczhwgtgwiemzorvmz` int DEFAULT NULL,\n `echnrxpsijyzpzlxmxjfnhfabfwykagg` int DEFAULT NULL,\n `yyjvedtugsptiwfzrwkluzcwscbbouge` int DEFAULT NULL,\n `ykivlgrhbskiplezuhrxpmldwxwpjtct` int DEFAULT NULL,\n `ofrayaizauvliqykiaxirbyesbdoimdc` int DEFAULT NULL,\n `hycrffslcfkppmeijuhpojkmqkraecze` int DEFAULT NULL,\n `mcmvuvvohnnxiezbgzzklqjigbiofqjg` int DEFAULT NULL,\n `qgoclrlqdvslpmegcmvlrmbkixiifoze` int DEFAULT NULL,\n `lvbosltqdhsabvmlvsdtqpwytgwllkkm` int DEFAULT NULL,\n `mcwlsibcqwvslmbfsekpcsvarwsljvks` int DEFAULT NULL,\n `vhmeygmnsgvxvaonwfhsnjgaiyulmxrj` int DEFAULT NULL,\n `ohrncoiygktpxeghabhllaqeuplswupa` int DEFAULT NULL,\n `fztobipnixytjkwrtwrdluurqonurykh` int DEFAULT NULL,\n `qymtscsrmajetaoaevvsarzuwmfrkvny` int DEFAULT NULL,\n `cocsufktbzxywcwrslyckkkhmhlhtwux` int DEFAULT NULL,\n `tsophphjogacszhojuqltvieswjntebs` int DEFAULT NULL,\n `hhrhhomkbcngbbhnzluljvjfrbdffztm` int DEFAULT NULL,\n `gojoyihxygduykunjwokizrzskioxwzi` int DEFAULT NULL,\n `umaindthctrkkgnlpdbjszzxwcvclatj` int DEFAULT NULL,\n `bvgsiyedxntyfidyvvtsrrealmhaemug` int DEFAULT NULL,\n `sjidpnuuabpzqgfxsbtvntdtpjvpxfcq` int DEFAULT NULL,\n `mkqeoqxsxwbbuquozlurhkysumxnydxj` int DEFAULT NULL,\n `auiztrmenzugogofwjvbuwlgqjzwyrre` int DEFAULT NULL,\n `mzmoqdsowrzqnlfiszmuejvmqtlymuuy` int DEFAULT NULL,\n `chkxcedvmhkrvvwgszyxreqhajfbvqyn` int DEFAULT NULL,\n `lncabrsuselrcajkantzesupohozobgw` int DEFAULT NULL,\n `fptbydqdipbkzlamvsdzzsfeoikltnwc` int DEFAULT NULL,\n `jtgnqzhyqixoczppavqjkirassjsrvnx` int DEFAULT NULL,\n `gsynjdiprjpvoxwhkuihjqetrdzzrxei` int DEFAULT NULL,\n `ljujiovgfcuscflrguslwzececytkpjd` int DEFAULT NULL,\n `agjrldkmbxuopfwzahanfbrytytljhva` int DEFAULT NULL,\n `nikqorftswrhtlsyaptyxmkaipaxxudh` int DEFAULT NULL,\n `yhbjwtrfgdxzpvhbfeeqqcdxebamlxbq` int DEFAULT NULL,\n `valaquhbwxtwypukhfogbojtyzmhwdec` int DEFAULT NULL,\n `lmnfisrwsuycncvlxoeziqkyualemafz` int DEFAULT NULL,\n PRIMARY KEY (`jrdhosbhavvgqojdwkhuvnyildycgriw`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"uzwzfxgsmncskifwztscboirulhiccox\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["jrdhosbhavvgqojdwkhuvnyildycgriw"],"columns":[{"name":"jrdhosbhavvgqojdwkhuvnyildycgriw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"bpdxcxpyvafeageyqwdwomoohmsqkobn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"seoldpuavfvpmwfvhphqmwouqfvaecvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sxpozibysdkktqstnczezwxfezixjuks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjayfeggbterfunodafgzlplnqjwlfup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nulyeczmheuavplpagsgzoykgfkmyese","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tuauldrywiuimvdhjznzpcwdwapuougf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdlvpdlqoxsunptarnwyaiwydjljpfbn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jsmhikdebfcyelfnopjwftvtbhncubiq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubjdxyjsspxnemekahgouzwyraqjuwpn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjlbsvqgjlgqcoxikdvmuokqfkjismpl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzzrxfyujxmdsbseojymebpdqehykqkd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rilwnalmhhpgzkodzfbfktimyoarersi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mdjtaksmxtvyvrkiidmrydbiinupqtnl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hcatbwkjrnnuudbwsqrqiiuihcomxxoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cyeqzpweztvkibdgfiqegrkrypqqjqxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zezkqxzqciouqaourktcomqxhichgzsu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ukzwwhvgieovldedqldvrytkejgdygyp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"airszwztsswvvhhdmjhetoizwgjxabox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rimcjyrwpdzxphrvtgvtqatiribyithu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itkgtlvblwqlwbnfhvejdlbnhiplugua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qeqlfqxknulqtyqxwozbcyabsogzddad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqixjvyxlexzbotmvfywhjvwrlqvlpvb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfzfgdgnowyawijhdluhupudqhggrved","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlgavovgntkvtjvbptygsuarvzjnvoga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orcsrczltzmhssprwecxcfjqlukxwkgi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rubpccmltbnzfheugxmjzppzfrplszps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytcnknfcujgyfegrbobqsikgumxosjqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhppcmcfibbuxhwszgcucafmsjgzxgri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cllovcpfzxosuxicqyteymgssxrqpuzk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cldpqxzatfeopoartjtnwomptgbnuwlo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tiudjjasxcnhchterwcfnurbfkbdokgu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wsekbojuxvnfvqhbjgtlxtattcfmfbbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vnyydrptrpalvkenwaabpmcajwbrsulb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ltgipbghufnmmfowxyelpanbfxmvunzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubyjpsoruaujqwzdesjmyakwozgctska","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nszyhdzkwoabfqgrmkyvombxblvmcebc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpcjjfdohheomovrihzuscvmkotqzrhy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xuknszzxdipodlrbevbixfinayqjohqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnajnwtgaimnkkschlrgrdtewbjbtfsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cevbxasjthlmbospqgsnqyibsyycmphy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kckfnfeuvgwogtjntndmgyxcwrudlfom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evukosdohtowjgkmcntwpjnrssmhheea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjqxojhiyuwbqemsoeknxkjbqwtknerc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"chqbjjkcyanvbbvdpfuafahlzggrtmin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdbydpbyespjndphsqsrkcrrnsncadne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uoctkpoqorsaohglvsfmkkilurtnetsk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbuvlbwvlggfdhifkmlwcutkcbfuhjdt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdltfhgiswdzpiwhiwmutpvqghmiqvpy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"osojfavgftnkmjglvhuoxuznksplslbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzakhzpwvnkkypcnsiararupozcnrzyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kowclkomzsnvewiwkzuaeugvilipnsag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udkejngosstaublohyuaykqcbbnbovag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jubzuiegywfqmivwijpofimihoztnrun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skbrduzubmxekzzbcgefsfdmwixmqqab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajoqdslekpfncyackbxfkhjibldmssdi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhvvqbwmgkjskkgxouwqdfovjbqlmwcm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmxbjtxmqdulbabsqxgbkmbygqtkkvxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjjorarxtckibmlngohunpnjuonljggl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"birfpwbpfqzaejczenfdgtmnfdqycriy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qnerhnlpbysrarvcourljqmvmvsyrnax","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lbrxszbpjsgnepssrptrjtcjieebqvpz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vrszdmycgxlqttmlegxtbuazbxpieglv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqlcmbemuikfyageufaiqygaagomzcun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wepmyhzvfmkveytsdgrhvfwtdcmxbbgx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydxtumhtqwrogcfczhwgtgwiemzorvmz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"echnrxpsijyzpzlxmxjfnhfabfwykagg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yyjvedtugsptiwfzrwkluzcwscbbouge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykivlgrhbskiplezuhrxpmldwxwpjtct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofrayaizauvliqykiaxirbyesbdoimdc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hycrffslcfkppmeijuhpojkmqkraecze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcmvuvvohnnxiezbgzzklqjigbiofqjg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qgoclrlqdvslpmegcmvlrmbkixiifoze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvbosltqdhsabvmlvsdtqpwytgwllkkm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcwlsibcqwvslmbfsekpcsvarwsljvks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhmeygmnsgvxvaonwfhsnjgaiyulmxrj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohrncoiygktpxeghabhllaqeuplswupa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fztobipnixytjkwrtwrdluurqonurykh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qymtscsrmajetaoaevvsarzuwmfrkvny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cocsufktbzxywcwrslyckkkhmhlhtwux","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tsophphjogacszhojuqltvieswjntebs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhrhhomkbcngbbhnzluljvjfrbdffztm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gojoyihxygduykunjwokizrzskioxwzi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umaindthctrkkgnlpdbjszzxwcvclatj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvgsiyedxntyfidyvvtsrrealmhaemug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjidpnuuabpzqgfxsbtvntdtpjvpxfcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkqeoqxsxwbbuquozlurhkysumxnydxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"auiztrmenzugogofwjvbuwlgqjzwyrre","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzmoqdsowrzqnlfiszmuejvmqtlymuuy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"chkxcedvmhkrvvwgszyxreqhajfbvqyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lncabrsuselrcajkantzesupohozobgw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fptbydqdipbkzlamvsdzzsfeoikltnwc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jtgnqzhyqixoczppavqjkirassjsrvnx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gsynjdiprjpvoxwhkuihjqetrdzzrxei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljujiovgfcuscflrguslwzececytkpjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agjrldkmbxuopfwzahanfbrytytljhva","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nikqorftswrhtlsyaptyxmkaipaxxudh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhbjwtrfgdxzpvhbfeeqqcdxebamlxbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"valaquhbwxtwypukhfogbojtyzmhwdec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmnfisrwsuycncvlxoeziqkyualemafz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672040,"databaseName":"models_schema","ddl":"CREATE TABLE `vankewnkqbxjamlctdsdjgswgeyvrjof` (\n `uvuxzbqheqcdqjmesmnceffdedytoccu` int NOT NULL,\n `mvsayisciiugdsgocbtgpozhyilmaxbf` int DEFAULT NULL,\n `hcqptpdzectidrccqxofqgrocgmdonqm` int DEFAULT NULL,\n `nqnaybwbsfshpxupqblnvpeibpbzilvy` int DEFAULT NULL,\n `muayrqxqspbpphxyqikkfuadflvwvimc` int DEFAULT NULL,\n `kfixtcqgzhcbuebxzwvqiuylzwxspmid` int DEFAULT NULL,\n `jppkbbcdbskyoostwwkrjuktjprwlhem` int DEFAULT NULL,\n `khntxwjqivpwkhddzwdivwahmbyyrlbw` int DEFAULT NULL,\n `gtcobfynnbvxlinlyblvhdrmakgditio` int DEFAULT NULL,\n `izhgjqcvshbrqbyjbgxiwselmygnulrv` int DEFAULT NULL,\n `fpujsbrdpvzaytjvxnefhiuqnkygrgpr` int DEFAULT NULL,\n `znhhfjblirdwniaxydaovmxdlwufmjxg` int DEFAULT NULL,\n `zeyvejvxkgpyszcdqqfajfticwhbhtpb` int DEFAULT NULL,\n `afntywsccvjcdentzdbxxuborhjcccry` int DEFAULT NULL,\n `kzschyfonyeebirnusfqfcmeyqrbttsp` int DEFAULT NULL,\n `vegivcbdhknofsegibjzgeulnjrlewkq` int DEFAULT NULL,\n `nczoajapcpdxqjqqwgsmmlrqntmupshs` int DEFAULT NULL,\n `ybkgnhtyufshydsxpklgohdtxcxjlhnt` int DEFAULT NULL,\n `bqvwjrevbikbcyadxgmtdayjaynbbdvv` int DEFAULT NULL,\n `cquojpfrlrdtmervzckxaenndytfygbd` int DEFAULT NULL,\n `fjozicjwvwzwcstyducdiehqyxkwqnov` int DEFAULT NULL,\n `pthuywuprhmxplcckshtjfnonloadicf` int DEFAULT NULL,\n `aakzlrhuasekfnaolgsrzdjvweplucqp` int DEFAULT NULL,\n `vrjkslvchowyuqvtaawuulcpgzuetank` int DEFAULT NULL,\n `tsirqlnhqhyrtcydwzwtbueoyxrlgezn` int DEFAULT NULL,\n `htehohvdbvpbsgwugildwxauvndmcaby` int DEFAULT NULL,\n `zdfqqwnocpzhshkwtdghzgukuvyjdzzl` int DEFAULT NULL,\n `ambhtcufanyuiabwurxplirzsqfdvbgs` int DEFAULT NULL,\n `kfzhoaswnudndmfvrjxmautuliexrvqc` int DEFAULT NULL,\n `atxfcqkrtnimiqrieijieiclntlzxwvy` int DEFAULT NULL,\n `wmimaktzpdqzxctlzcjlcblrjmykmccb` int DEFAULT NULL,\n `hynbpvljqjcngdctkuaaypvwxrzrogrv` int DEFAULT NULL,\n `vsiwuuczdihbumzbaxukylvboocceifm` int DEFAULT NULL,\n `efzbcwzilackehaihlptqnfggrbbroir` int DEFAULT NULL,\n `nzhjcczzyipndnlyeewalrgyftqscznt` int DEFAULT NULL,\n `dadttvskxnxgahoibuhsxyiiflgaejws` int DEFAULT NULL,\n `hsnjbygucuggxwbjqyxumqekfbyxqqmo` int DEFAULT NULL,\n `xoyvqhpkwuvlbakwrmkjzhyxvitsfooz` int DEFAULT NULL,\n `rclhzqqdvgzrparhbwjcycdftsppixui` int DEFAULT NULL,\n `cfbqqwwiwhdumqqaivxjjxzfkmicvpnk` int DEFAULT NULL,\n `qpwnetxmlonfbvzkdraaomjvhsorgggt` int DEFAULT NULL,\n `ofcbpveljgdlthuirqorxunrfwymyvka` int DEFAULT NULL,\n `fcivntjhthsfrtmkpnrtwermybkvbymg` int DEFAULT NULL,\n `jfawxvtzgyictdlgttwdlopgiglhuvcs` int DEFAULT NULL,\n `vxzshyxxgdufbwtpeqphuuqgqykvuorj` int DEFAULT NULL,\n `divgxsjwdiamogpvwhppjaobrcszjwuu` int DEFAULT NULL,\n `viypyzxdnvpgecgcuibtnurzgwljdday` int DEFAULT NULL,\n `ijfbjxsnwlphogsabumkevmndxdloziz` int DEFAULT NULL,\n `dnyykufgwclhjvhrvsnjdnikjwzrsllk` int DEFAULT NULL,\n `khenkiogedabnpteczlncbjcjkciqobf` int DEFAULT NULL,\n `wonopsmmvrgdwzjmflwuctusizicfpbo` int DEFAULT NULL,\n `omirkuuftvwejbprgevknxqktrhnvqfb` int DEFAULT NULL,\n `iyxjplihdjwsenxpvggecxsvnxgvyqvh` int DEFAULT NULL,\n `ilufxgthblamhxdzjqyhboyrjywilgwh` int DEFAULT NULL,\n `rgfwtrvfgitvixyznblmhfoamxoxghuy` int DEFAULT NULL,\n `pljgmohgmbltagdrwntfcmwybstzyoll` int DEFAULT NULL,\n `twvjhpdzwvzjcqhnzjvbtytxestqddzf` int DEFAULT NULL,\n `hddfqewxewbpzowlgqwqlukhubocyaik` int DEFAULT NULL,\n `jubgdrbncyxeejxfqnynyrkrixzstoaq` int DEFAULT NULL,\n `mtlqcbvuzfgnfmvxzzspourqfrrnmhnx` int DEFAULT NULL,\n `zqsjfynxpyqevfkvsllxdjxmvrnvmdmz` int DEFAULT NULL,\n `prifcpwgygvbzgbtvmpcqcupmimpxsob` int DEFAULT NULL,\n `ohgcztunyttmamkopblnfowyqhuuamrp` int DEFAULT NULL,\n `zuuubifhkcgqwjmxwxyffoxwgiocypam` int DEFAULT NULL,\n `qgfeldywhseyvqpnjkmgacinrvbpyazf` int DEFAULT NULL,\n `ulgnqxknmzkjljkyhgqecxhecmtmpgof` int DEFAULT NULL,\n `ngoqbasviuxfnftiklakspontqocirin` int DEFAULT NULL,\n `jyehhtbwpwejjoqsvjtqhvwlijiqxzhe` int DEFAULT NULL,\n `lxcpvsyjhnmqbdehfqpdfnuyztwlkycy` int DEFAULT NULL,\n `lghqukjwyreeujspufruhhnlqbfuomdt` int DEFAULT NULL,\n `apcnjcpwsnrrwvrbrvofgirrvefyndrk` int DEFAULT NULL,\n `epmjrocrbegoxpkctkvaxphqzqgwprgh` int DEFAULT NULL,\n `jqormjkhmtejgurpymisrqivvutpzprb` int DEFAULT NULL,\n `cywsyhhmcarysufrlqzidgwzobhidcdx` int DEFAULT NULL,\n `ghamxuqcfokaidcxjgvptrpehyuywgsg` int DEFAULT NULL,\n `vpmnrvmrrpdkmnkhnzorkhfxctwzvygc` int DEFAULT NULL,\n `fiaymgdfyggaawzkehccbhznmtgkgkcy` int DEFAULT NULL,\n `piikfhykuswnisjcfwrrrxxdnjuebjey` int DEFAULT NULL,\n `jqfgdfqhijzwrtsmijaivapfwyakrpgt` int DEFAULT NULL,\n `viorzfjybjftvpjdbywlyddgoomynrbq` int DEFAULT NULL,\n `zzhfqtcetlwvhlkfjcqcqxlgrnpbshqw` int DEFAULT NULL,\n `luwvupdlwiptgonrkoqyrjqbjhdcjbuz` int DEFAULT NULL,\n `wztavsijsmrjjqicugysmytcmlxhfves` int DEFAULT NULL,\n `fdqvyqqjlvukwwzzxzvjodlevfyeorcj` int DEFAULT NULL,\n `socapfxhgsgxxtgnvznhoearsfdeokch` int DEFAULT NULL,\n `sthyfztpkdlquctjmuraxtpbnrirzdzr` int DEFAULT NULL,\n `xlgkgeqxwsanmuobabpkoblcpfbkenht` int DEFAULT NULL,\n `umcemgrfsssbvwubqgiipvaywrgjcmlm` int DEFAULT NULL,\n `gsrtcjkfhnpyuynzfvgnnzdlqgrjlpxb` int DEFAULT NULL,\n `lvcbtmkesgtegwuzuwrzzajsbyfwzsts` int DEFAULT NULL,\n `cmzrrmdwdnrrkdiqtonmosbiiynedoqw` int DEFAULT NULL,\n `soheraibcqqhliryhgwpccxthguxgvsn` int DEFAULT NULL,\n `xakuxbwajlgxokbxmozxzdvdnuxxjpxq` int DEFAULT NULL,\n `uztxtyzkixopbtkxyudcbnazzibkuhst` int DEFAULT NULL,\n `oblsllmhubdovhykjkrwbfcvujpgyypc` int DEFAULT NULL,\n `exdhhihlerniklnhghpjnomavroemxln` int DEFAULT NULL,\n `fngrdvxdgqsyeusssyxyasfdotnojsqr` int DEFAULT NULL,\n `xdgrygzmhodntpmxpjjjqdobcfpmhuox` int DEFAULT NULL,\n `oiurppndjpusgclzwquazzjkzalxpjmv` int DEFAULT NULL,\n `hbqrlvkcxddozbgfrbprnvhrzanubwox` int DEFAULT NULL,\n PRIMARY KEY (`uvuxzbqheqcdqjmesmnceffdedytoccu`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"vankewnkqbxjamlctdsdjgswgeyvrjof\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["uvuxzbqheqcdqjmesmnceffdedytoccu"],"columns":[{"name":"uvuxzbqheqcdqjmesmnceffdedytoccu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"mvsayisciiugdsgocbtgpozhyilmaxbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hcqptpdzectidrccqxofqgrocgmdonqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqnaybwbsfshpxupqblnvpeibpbzilvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"muayrqxqspbpphxyqikkfuadflvwvimc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfixtcqgzhcbuebxzwvqiuylzwxspmid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jppkbbcdbskyoostwwkrjuktjprwlhem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"khntxwjqivpwkhddzwdivwahmbyyrlbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtcobfynnbvxlinlyblvhdrmakgditio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"izhgjqcvshbrqbyjbgxiwselmygnulrv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpujsbrdpvzaytjvxnefhiuqnkygrgpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znhhfjblirdwniaxydaovmxdlwufmjxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zeyvejvxkgpyszcdqqfajfticwhbhtpb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afntywsccvjcdentzdbxxuborhjcccry","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzschyfonyeebirnusfqfcmeyqrbttsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vegivcbdhknofsegibjzgeulnjrlewkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nczoajapcpdxqjqqwgsmmlrqntmupshs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ybkgnhtyufshydsxpklgohdtxcxjlhnt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bqvwjrevbikbcyadxgmtdayjaynbbdvv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cquojpfrlrdtmervzckxaenndytfygbd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjozicjwvwzwcstyducdiehqyxkwqnov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pthuywuprhmxplcckshtjfnonloadicf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aakzlrhuasekfnaolgsrzdjvweplucqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vrjkslvchowyuqvtaawuulcpgzuetank","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tsirqlnhqhyrtcydwzwtbueoyxrlgezn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"htehohvdbvpbsgwugildwxauvndmcaby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdfqqwnocpzhshkwtdghzgukuvyjdzzl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ambhtcufanyuiabwurxplirzsqfdvbgs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfzhoaswnudndmfvrjxmautuliexrvqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atxfcqkrtnimiqrieijieiclntlzxwvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmimaktzpdqzxctlzcjlcblrjmykmccb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hynbpvljqjcngdctkuaaypvwxrzrogrv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsiwuuczdihbumzbaxukylvboocceifm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"efzbcwzilackehaihlptqnfggrbbroir","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzhjcczzyipndnlyeewalrgyftqscznt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dadttvskxnxgahoibuhsxyiiflgaejws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hsnjbygucuggxwbjqyxumqekfbyxqqmo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xoyvqhpkwuvlbakwrmkjzhyxvitsfooz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rclhzqqdvgzrparhbwjcycdftsppixui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfbqqwwiwhdumqqaivxjjxzfkmicvpnk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qpwnetxmlonfbvzkdraaomjvhsorgggt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofcbpveljgdlthuirqorxunrfwymyvka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcivntjhthsfrtmkpnrtwermybkvbymg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jfawxvtzgyictdlgttwdlopgiglhuvcs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxzshyxxgdufbwtpeqphuuqgqykvuorj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"divgxsjwdiamogpvwhppjaobrcszjwuu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"viypyzxdnvpgecgcuibtnurzgwljdday","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijfbjxsnwlphogsabumkevmndxdloziz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dnyykufgwclhjvhrvsnjdnikjwzrsllk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"khenkiogedabnpteczlncbjcjkciqobf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wonopsmmvrgdwzjmflwuctusizicfpbo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omirkuuftvwejbprgevknxqktrhnvqfb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iyxjplihdjwsenxpvggecxsvnxgvyqvh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ilufxgthblamhxdzjqyhboyrjywilgwh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgfwtrvfgitvixyznblmhfoamxoxghuy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pljgmohgmbltagdrwntfcmwybstzyoll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twvjhpdzwvzjcqhnzjvbtytxestqddzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hddfqewxewbpzowlgqwqlukhubocyaik","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jubgdrbncyxeejxfqnynyrkrixzstoaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtlqcbvuzfgnfmvxzzspourqfrrnmhnx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqsjfynxpyqevfkvsllxdjxmvrnvmdmz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prifcpwgygvbzgbtvmpcqcupmimpxsob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohgcztunyttmamkopblnfowyqhuuamrp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zuuubifhkcgqwjmxwxyffoxwgiocypam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qgfeldywhseyvqpnjkmgacinrvbpyazf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ulgnqxknmzkjljkyhgqecxhecmtmpgof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ngoqbasviuxfnftiklakspontqocirin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jyehhtbwpwejjoqsvjtqhvwlijiqxzhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lxcpvsyjhnmqbdehfqpdfnuyztwlkycy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lghqukjwyreeujspufruhhnlqbfuomdt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"apcnjcpwsnrrwvrbrvofgirrvefyndrk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"epmjrocrbegoxpkctkvaxphqzqgwprgh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jqormjkhmtejgurpymisrqivvutpzprb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cywsyhhmcarysufrlqzidgwzobhidcdx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghamxuqcfokaidcxjgvptrpehyuywgsg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpmnrvmrrpdkmnkhnzorkhfxctwzvygc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fiaymgdfyggaawzkehccbhznmtgkgkcy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"piikfhykuswnisjcfwrrrxxdnjuebjey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jqfgdfqhijzwrtsmijaivapfwyakrpgt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"viorzfjybjftvpjdbywlyddgoomynrbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzhfqtcetlwvhlkfjcqcqxlgrnpbshqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"luwvupdlwiptgonrkoqyrjqbjhdcjbuz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wztavsijsmrjjqicugysmytcmlxhfves","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fdqvyqqjlvukwwzzxzvjodlevfyeorcj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"socapfxhgsgxxtgnvznhoearsfdeokch","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sthyfztpkdlquctjmuraxtpbnrirzdzr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xlgkgeqxwsanmuobabpkoblcpfbkenht","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umcemgrfsssbvwubqgiipvaywrgjcmlm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gsrtcjkfhnpyuynzfvgnnzdlqgrjlpxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvcbtmkesgtegwuzuwrzzajsbyfwzsts","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmzrrmdwdnrrkdiqtonmosbiiynedoqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"soheraibcqqhliryhgwpccxthguxgvsn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xakuxbwajlgxokbxmozxzdvdnuxxjpxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uztxtyzkixopbtkxyudcbnazzibkuhst","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oblsllmhubdovhykjkrwbfcvujpgyypc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exdhhihlerniklnhghpjnomavroemxln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fngrdvxdgqsyeusssyxyasfdotnojsqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdgrygzmhodntpmxpjjjqdobcfpmhuox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oiurppndjpusgclzwquazzjkzalxpjmv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbqrlvkcxddozbgfrbprnvhrzanubwox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672071,"databaseName":"models_schema","ddl":"CREATE TABLE `vhmohjbaalgeckwlqgznnqcvgjavlbzv` (\n `ycqqxdlzqhjijhghfjsidaqoiyrozlgg` int NOT NULL,\n `iknxbcsemjwdvcdkonlrfolzklstnxoj` int DEFAULT NULL,\n `khzkgowyrsespdsiygfvocrpfctyittg` int DEFAULT NULL,\n `sznitnznrivjvnlhrvpslksbvsltzite` int DEFAULT NULL,\n `aezraqqrrfgulwwwjsnbctrcbmzvnduk` int DEFAULT NULL,\n `pztmpfzzpithgdhfytcjeuxdhwsdjjug` int DEFAULT NULL,\n `sytzffpnnutnnaffcogznzbhbbtlfeal` int DEFAULT NULL,\n `stiojllhkqwlkztlqaldqpxsmfzckokb` int DEFAULT NULL,\n `dgzoamxpvdfqujmorofquvfnsxpozzeg` int DEFAULT NULL,\n `brejuxwhgngzfiwvfrqxkukluhtbaiyi` int DEFAULT NULL,\n `zwzdoarhlznwreinykwhmqhbabgdwlpg` int DEFAULT NULL,\n `lahmphgnferjfhzaszxagxtzxyvsrfuc` int DEFAULT NULL,\n `adhvmupufqxkigilntfjizdjplowopwu` int DEFAULT NULL,\n `jghvbchagayhuosvvxwjmtkhdwqdgylb` int DEFAULT NULL,\n `hprvmgavojskskemohpxvtoloraljszd` int DEFAULT NULL,\n `yarzbyprfogdwxctgbhwgqisbdhvndvv` int DEFAULT NULL,\n `mlhoxtbtrumeigcazmhygydjaorqqofs` int DEFAULT NULL,\n `hiszbzvbfpaufqkjxqleacbfckojuojv` int DEFAULT NULL,\n `srcbstifksyrqfzgmbvtlizloappsoiw` int DEFAULT NULL,\n `xmokrngzxdzkkmyoudzbgltqbswizvqw` int DEFAULT NULL,\n `tplpqpagueiraltmurzaumgdqmlgfqie` int DEFAULT NULL,\n `dfacobomtutmtohblcmrdnrorptqaypj` int DEFAULT NULL,\n `klgjbvofzbzqdyfqvmguubtvntwsncwk` int DEFAULT NULL,\n `jqmkaqxidhjzpnnprgtcadqzgnqgguwt` int DEFAULT NULL,\n `ubyerbzvmznzdthfrhnnffusfkqpbhvp` int DEFAULT NULL,\n `ticrcqihlxuhhzrwigrhugyeekgsrxsj` int DEFAULT NULL,\n `ihdwcqwpkrhjugscxruhccvpexgubnwl` int DEFAULT NULL,\n `jthwijcqostuzsjwfphjsyfujfotpujr` int DEFAULT NULL,\n `zhhprqwoyzutppadkzradqrqawnbonln` int DEFAULT NULL,\n `ippqqiphnfneprgaeahcrhocjnlejeof` int DEFAULT NULL,\n `jrfvrinwrkewvlgbagmwbuqwcgqkymvx` int DEFAULT NULL,\n `gngegldiydciqngdcgyocjvkmydysoxb` int DEFAULT NULL,\n `orkfaaejoksepqflymcjblahrpkyogtb` int DEFAULT NULL,\n `iilgjyewgudrbbfnjajloaqncgyihdmt` int DEFAULT NULL,\n `ttjpgdeddktoswxnlfpkwwvygrzcibfi` int DEFAULT NULL,\n `qfwgaaqtihruofeitslddcisjvfkbual` int DEFAULT NULL,\n `kxdwezfocaqpvirwgargnkrfjcsczypg` int DEFAULT NULL,\n `rvdqbbefjhfmvrdjrbtqypcekjcwadkt` int DEFAULT NULL,\n `fatcywocjlafmtgdxhhlaazhhmbyvryx` int DEFAULT NULL,\n `fxmjiqhhaiufiizffjmkifkfbqeigqtv` int DEFAULT NULL,\n `ztgqouocwlfzjmuubxmxxxjcmmzdqjfz` int DEFAULT NULL,\n `ojjkmocskusmxjdmfabqibiqxegzalnm` int DEFAULT NULL,\n `rlrtidnuexatrnallwxjqaucolkebpnn` int DEFAULT NULL,\n `wzntawcvvdzllrmgtppqawkfphlbysnp` int DEFAULT NULL,\n `tvcsynlulubbdgzyxgavjmkwchzraedm` int DEFAULT NULL,\n `kdnbkbmbwogqsygynzcylvmnqgeswntf` int DEFAULT NULL,\n `hihrucbaddtjmfdafdxqmlgomwycfzop` int DEFAULT NULL,\n `jcykpjtpgzkeulmogcnmqjpeyeqcetmi` int DEFAULT NULL,\n `snjhftjzbctayjyzpiagttpgkufegztt` int DEFAULT NULL,\n `qkpmjhujffwgpohpndbnegpwpwrpfsja` int DEFAULT NULL,\n `jlnebggoledmdbvwwevrnruniuqduugs` int DEFAULT NULL,\n `xpvnatgphfbzclrpdjgxudyvenurhhjs` int DEFAULT NULL,\n `urbwcpgbbqtkmrydzfiijgdtflfbhuup` int DEFAULT NULL,\n `ecqtzaedurbgabhxfkjhrknajnpjszyo` int DEFAULT NULL,\n `tikytruentgnehnrbkmcfeocrlfrkzgl` int DEFAULT NULL,\n `jadbsjdrljoisoiwqxmjylccyfnqnaan` int DEFAULT NULL,\n `khrqeatknocwzzerdyyozlygxxrdnmwy` int DEFAULT NULL,\n `qwnmjdzszqlzivbnnttggsucymjiulei` int DEFAULT NULL,\n `nrssbieulmnlluxmusmzbttqftwlgxrl` int DEFAULT NULL,\n `egntfjqwgylfqiaxsjnjphcaujocuzqy` int DEFAULT NULL,\n `dbgsooansolmrqazeziylxfhssestafo` int DEFAULT NULL,\n `ojwtsosisgpykwapqfhttqeyxsshjdcz` int DEFAULT NULL,\n `znrikubmnimpxthewaeepbtcsjdapsrc` int DEFAULT NULL,\n `awghhxzakstpgyfcmwpnobtquhdspngj` int DEFAULT NULL,\n `esazlewyjzsqzfqmizowlvmvfvktrquo` int DEFAULT NULL,\n `gfydwjqvcrkfqdpoykkxrtnutzbansxs` int DEFAULT NULL,\n `nffgepuiivgbraopbwnlwhhltmrisyqc` int DEFAULT NULL,\n `mxdjbetneewlotcuenduvhozvlhadmiu` int DEFAULT NULL,\n `fsdosdmqfaydxvvngdugefhjeowugupe` int DEFAULT NULL,\n `rqhghebeonuskbnidqtobpyakyumqzjj` int DEFAULT NULL,\n `yaueizynvuenzribrikslvnbvaauudxl` int DEFAULT NULL,\n `jnjxieuuenltxrhporrgjlynbnlljmcn` int DEFAULT NULL,\n `aidjhztisajxharycbkicvpqfhcsauyi` int DEFAULT NULL,\n `xmtuvmejjnyorfsgoqfblzzuleuxcwjd` int DEFAULT NULL,\n `lkrwyuzdqkkakkxgfssgrbvhwcvhnuas` int DEFAULT NULL,\n `vvluhfpwfdmnjakktvvjfgqmamdfpsoi` int DEFAULT NULL,\n `tgzymzdrwmzfhsnxwqvkvmzrnbyjewwl` int DEFAULT NULL,\n `lofqebxrlrosztpivvfaehblrpintmsh` int DEFAULT NULL,\n `afmekrpjvssodgjoyrmffqugoqvcqxke` int DEFAULT NULL,\n `inurndzzisqvixhsvfrzzkoelcapfvwi` int DEFAULT NULL,\n `kumcwfzyutfwezggpzkyrjnyshfxdnvb` int DEFAULT NULL,\n `hlefaekyqpqluctaeecngshgldzdbfwp` int DEFAULT NULL,\n `xamunxnkgmechyspjtqgmmupsfvwsqzj` int DEFAULT NULL,\n `clxnbqblmghfvzkozmcdwtwkxabgsdps` int DEFAULT NULL,\n `sjowzblakckimjzxoodyhlbxikeslxak` int DEFAULT NULL,\n `ieiphzuddsruabjkaxyzpgmhdsfzniqd` int DEFAULT NULL,\n `qrvinznjxhczjdidlursjcqrdlmnnerr` int DEFAULT NULL,\n `pvgukpaiimarvcmxzsniyuzlgajkciwk` int DEFAULT NULL,\n `xeujsmxbsgptbjovoyhhxfuujklbypch` int DEFAULT NULL,\n `vvrfxhjepslmcjigzgmumcbhofdyuivn` int DEFAULT NULL,\n `xdbbakiwedmabtappodntyxoepdxrnxt` int DEFAULT NULL,\n `zrlyxotclfbpnatmrzkjsiuvtxnkgiao` int DEFAULT NULL,\n `hwtdtsoqhinopzvyodiceflbxxbinmek` int DEFAULT NULL,\n `zskqfccqnqhanbiynybljrwzuinyjxiq` int DEFAULT NULL,\n `dmfnssuzedqrzsdqbpwxkbtqnitcetko` int DEFAULT NULL,\n `liwpjcasmudkgnzayhxugezxgkvbmgsr` int DEFAULT NULL,\n `ljnndfkkcxcqzfjxkbenetakckemfceg` int DEFAULT NULL,\n `zzptuqdwqsxrgjjdvwqpbvxmrcvcgqqz` int DEFAULT NULL,\n `dzaqrdxneyqpdpskpclimicqqifjjofc` int DEFAULT NULL,\n `lqdyxuztebnfeehpizneumtdqnnyvfiu` int DEFAULT NULL,\n PRIMARY KEY (`ycqqxdlzqhjijhghfjsidaqoiyrozlgg`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"vhmohjbaalgeckwlqgznnqcvgjavlbzv\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["ycqqxdlzqhjijhghfjsidaqoiyrozlgg"],"columns":[{"name":"ycqqxdlzqhjijhghfjsidaqoiyrozlgg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"iknxbcsemjwdvcdkonlrfolzklstnxoj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"khzkgowyrsespdsiygfvocrpfctyittg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sznitnznrivjvnlhrvpslksbvsltzite","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aezraqqrrfgulwwwjsnbctrcbmzvnduk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pztmpfzzpithgdhfytcjeuxdhwsdjjug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sytzffpnnutnnaffcogznzbhbbtlfeal","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"stiojllhkqwlkztlqaldqpxsmfzckokb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgzoamxpvdfqujmorofquvfnsxpozzeg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"brejuxwhgngzfiwvfrqxkukluhtbaiyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zwzdoarhlznwreinykwhmqhbabgdwlpg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lahmphgnferjfhzaszxagxtzxyvsrfuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"adhvmupufqxkigilntfjizdjplowopwu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jghvbchagayhuosvvxwjmtkhdwqdgylb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hprvmgavojskskemohpxvtoloraljszd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yarzbyprfogdwxctgbhwgqisbdhvndvv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mlhoxtbtrumeigcazmhygydjaorqqofs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hiszbzvbfpaufqkjxqleacbfckojuojv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"srcbstifksyrqfzgmbvtlizloappsoiw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xmokrngzxdzkkmyoudzbgltqbswizvqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tplpqpagueiraltmurzaumgdqmlgfqie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dfacobomtutmtohblcmrdnrorptqaypj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"klgjbvofzbzqdyfqvmguubtvntwsncwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jqmkaqxidhjzpnnprgtcadqzgnqgguwt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubyerbzvmznzdthfrhnnffusfkqpbhvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ticrcqihlxuhhzrwigrhugyeekgsrxsj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ihdwcqwpkrhjugscxruhccvpexgubnwl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jthwijcqostuzsjwfphjsyfujfotpujr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhhprqwoyzutppadkzradqrqawnbonln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ippqqiphnfneprgaeahcrhocjnlejeof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jrfvrinwrkewvlgbagmwbuqwcgqkymvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gngegldiydciqngdcgyocjvkmydysoxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orkfaaejoksepqflymcjblahrpkyogtb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iilgjyewgudrbbfnjajloaqncgyihdmt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ttjpgdeddktoswxnlfpkwwvygrzcibfi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfwgaaqtihruofeitslddcisjvfkbual","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxdwezfocaqpvirwgargnkrfjcsczypg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rvdqbbefjhfmvrdjrbtqypcekjcwadkt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fatcywocjlafmtgdxhhlaazhhmbyvryx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxmjiqhhaiufiizffjmkifkfbqeigqtv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ztgqouocwlfzjmuubxmxxxjcmmzdqjfz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojjkmocskusmxjdmfabqibiqxegzalnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlrtidnuexatrnallwxjqaucolkebpnn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzntawcvvdzllrmgtppqawkfphlbysnp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvcsynlulubbdgzyxgavjmkwchzraedm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kdnbkbmbwogqsygynzcylvmnqgeswntf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hihrucbaddtjmfdafdxqmlgomwycfzop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jcykpjtpgzkeulmogcnmqjpeyeqcetmi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"snjhftjzbctayjyzpiagttpgkufegztt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qkpmjhujffwgpohpndbnegpwpwrpfsja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlnebggoledmdbvwwevrnruniuqduugs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xpvnatgphfbzclrpdjgxudyvenurhhjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urbwcpgbbqtkmrydzfiijgdtflfbhuup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecqtzaedurbgabhxfkjhrknajnpjszyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tikytruentgnehnrbkmcfeocrlfrkzgl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jadbsjdrljoisoiwqxmjylccyfnqnaan","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"khrqeatknocwzzerdyyozlygxxrdnmwy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwnmjdzszqlzivbnnttggsucymjiulei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nrssbieulmnlluxmusmzbttqftwlgxrl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"egntfjqwgylfqiaxsjnjphcaujocuzqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbgsooansolmrqazeziylxfhssestafo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojwtsosisgpykwapqfhttqeyxsshjdcz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znrikubmnimpxthewaeepbtcsjdapsrc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awghhxzakstpgyfcmwpnobtquhdspngj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"esazlewyjzsqzfqmizowlvmvfvktrquo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfydwjqvcrkfqdpoykkxrtnutzbansxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nffgepuiivgbraopbwnlwhhltmrisyqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mxdjbetneewlotcuenduvhozvlhadmiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fsdosdmqfaydxvvngdugefhjeowugupe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqhghebeonuskbnidqtobpyakyumqzjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yaueizynvuenzribrikslvnbvaauudxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jnjxieuuenltxrhporrgjlynbnlljmcn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aidjhztisajxharycbkicvpqfhcsauyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xmtuvmejjnyorfsgoqfblzzuleuxcwjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lkrwyuzdqkkakkxgfssgrbvhwcvhnuas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vvluhfpwfdmnjakktvvjfgqmamdfpsoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tgzymzdrwmzfhsnxwqvkvmzrnbyjewwl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lofqebxrlrosztpivvfaehblrpintmsh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afmekrpjvssodgjoyrmffqugoqvcqxke","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"inurndzzisqvixhsvfrzzkoelcapfvwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kumcwfzyutfwezggpzkyrjnyshfxdnvb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlefaekyqpqluctaeecngshgldzdbfwp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xamunxnkgmechyspjtqgmmupsfvwsqzj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"clxnbqblmghfvzkozmcdwtwkxabgsdps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjowzblakckimjzxoodyhlbxikeslxak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ieiphzuddsruabjkaxyzpgmhdsfzniqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qrvinznjxhczjdidlursjcqrdlmnnerr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pvgukpaiimarvcmxzsniyuzlgajkciwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xeujsmxbsgptbjovoyhhxfuujklbypch","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vvrfxhjepslmcjigzgmumcbhofdyuivn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdbbakiwedmabtappodntyxoepdxrnxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zrlyxotclfbpnatmrzkjsiuvtxnkgiao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwtdtsoqhinopzvyodiceflbxxbinmek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zskqfccqnqhanbiynybljrwzuinyjxiq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dmfnssuzedqrzsdqbpwxkbtqnitcetko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"liwpjcasmudkgnzayhxugezxgkvbmgsr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljnndfkkcxcqzfjxkbenetakckemfceg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzptuqdwqsxrgjjdvwqpbvxmrcvcgqqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dzaqrdxneyqpdpskpclimicqqifjjofc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqdyxuztebnfeehpizneumtdqnnyvfiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672101,"databaseName":"models_schema","ddl":"CREATE TABLE `vlatilsnjpcfvjqannnvxnfclsppggel` (\n `rxbsitczrikwngtubbuaenvyjeggzybc` int NOT NULL,\n `tmhpscxmjlgggznvqzwytosumojmwwph` int DEFAULT NULL,\n `qtccczfkxihivelxeqkbvsqswvjlajrk` int DEFAULT NULL,\n `dsicsltnoahiiczepnybnrrfneghktrv` int DEFAULT NULL,\n `oyncqysawdavufxzgblaqbwuiumatrjg` int DEFAULT NULL,\n `wkgcvnhlyuifxirafdrxxitjsccsnamw` int DEFAULT NULL,\n `qqlceaptwzoxvmvzckmhisbfvjsbaoog` int DEFAULT NULL,\n `cansmkmjiidhvpeiynroejlrcqblfnnh` int DEFAULT NULL,\n `uiehsjfnjcydgqmkcmgtivifgghqrmav` int DEFAULT NULL,\n `foqevvfizxbiwdawzhthirbgpddiqvjq` int DEFAULT NULL,\n `pgfbtbgwhxgzowmweccqtihbloydicxw` int DEFAULT NULL,\n `geikhgpqkcixmeezcbyuqvjnlpylkene` int DEFAULT NULL,\n `jcqolgopnvxdwojgkmgniijnxbpnfrbm` int DEFAULT NULL,\n `ddcisixmjejoqwmmvryaiolnkpncqwef` int DEFAULT NULL,\n `lweuvuqgiueliymmhdfsjsdzxukxlzad` int DEFAULT NULL,\n `vdalcpbuidpfwwecbpvbnafaqtgjfobx` int DEFAULT NULL,\n `jpuktzximzdripzzojfjmvgvwuyqjnpl` int DEFAULT NULL,\n `nrvcgxpimozwtjjckmblcorgsijqhpvn` int DEFAULT NULL,\n `hkkhbjdyqzhjlqdtfilzjvjyrknsxdcf` int DEFAULT NULL,\n `totrhiodeapmxsxzefnlauhgbqiuqcmh` int DEFAULT NULL,\n `tsaujimmqqjykbwjjslqnbcbybyvjpde` int DEFAULT NULL,\n `fnrkvgprusyvnfiklapjqkvfgnvlqgyo` int DEFAULT NULL,\n `dxyyzizguskjxtxplewnhrmaafzbrrex` int DEFAULT NULL,\n `zbblujduxobfhjlgzeodsshabtjcymvk` int DEFAULT NULL,\n `gsyhectprvicbuwiifkxrtmwwukhzhui` int DEFAULT NULL,\n `wrfowlbqmegsotrnjqbduuseusqdtbqu` int DEFAULT NULL,\n `bpgvzjlohvqrehmigvibtqysazzveeyx` int DEFAULT NULL,\n `qoydfvywewiptkzvpoficyglipgznutc` int DEFAULT NULL,\n `djfztszdafrdrhzomnrgmswnqkdmcewo` int DEFAULT NULL,\n `tfdlvzxcecbpkykmrssvlgdusidginjs` int DEFAULT NULL,\n `gvbyveeusfjuthnbqprjjttwkpkgfiji` int DEFAULT NULL,\n `efvksubcmyvcielyihycxsnynncsafsj` int DEFAULT NULL,\n `qgcriztlvogoytutxjobgxevvmgbtgir` int DEFAULT NULL,\n `sacxzlkaqbftzfbflemjsqzmtxykfsed` int DEFAULT NULL,\n `vlyuffikrozxzyofraayuiwfriyhytxo` int DEFAULT NULL,\n `suykfbucfandlsqdosexgcgtbawvynif` int DEFAULT NULL,\n `zjrgrxgbyqakjbhbzxnmgwyshxbhuoyr` int DEFAULT NULL,\n `jrarauxqwcyborvpjbvvtooqxjziofpt` int DEFAULT NULL,\n `bzszxijxxujxqbyvirmucnyigklyxmkp` int DEFAULT NULL,\n `lusncvhqemkbuwgvsozzgrybitzgrrul` int DEFAULT NULL,\n `ljbehbaotpoyikwifwhkabjpsjivwqti` int DEFAULT NULL,\n `rfqbwisfthzzfvxpdngmgprilnfonzyg` int DEFAULT NULL,\n `vsgnthtimunwmlxuqeoeihnykqrbafle` int DEFAULT NULL,\n `dvqewfewmblwsglgjiixpgaqhnhjzica` int DEFAULT NULL,\n `zyvmdqpugmvtklzfdipnhgejxzykpmim` int DEFAULT NULL,\n `datrqsvafkvhvjebplbxvppeghntpstd` int DEFAULT NULL,\n `tulmkdgjobyrklcipotpmsfmmhmpjvpk` int DEFAULT NULL,\n `xvtyzqlfjchpylxmnswamkwvsodbkupb` int DEFAULT NULL,\n `cbunjwdaancuavukmdrketgzjkczsvsj` int DEFAULT NULL,\n `ikumnrmtidbypjgnhbqkyobehmlvjcft` int DEFAULT NULL,\n `uapydjeevnakculpxdbqxbuqsbnwdoil` int DEFAULT NULL,\n `jifkogrfxdxniiyrigwuflhkwicvfrbt` int DEFAULT NULL,\n `taixtgiysdgfdmaqrehpvdvhtdodcueh` int DEFAULT NULL,\n `novvmfafykfjbdiwbwieavynmmzlepag` int DEFAULT NULL,\n `anavcyrnsbzbnzsllapqebasrbgpdjqq` int DEFAULT NULL,\n `wxkqumtfovkkwatsazctxtvhxfyfrzcy` int DEFAULT NULL,\n `yynvkimexdzjsafmzzaaacgmrycdqoyr` int DEFAULT NULL,\n `mcrdmzjtqsbdcisreaulwontxwmikwmo` int DEFAULT NULL,\n `esknnolntqxealdgpudxeodamymfvays` int DEFAULT NULL,\n `xdnckluahrvlziuxqwkdrnqimmatnmwg` int DEFAULT NULL,\n `wujiwydobimftbipttxljknmjiwqsysj` int DEFAULT NULL,\n `ryoathkujemplpdknnfiupkuzvdumdvo` int DEFAULT NULL,\n `vlkbgputkowzqhqvnxhwkxqyyhjmmnqz` int DEFAULT NULL,\n `tgysynnbvbnxczznkmzjahxhdbcfxxqo` int DEFAULT NULL,\n `seiqhinogxpnztjvxokkfihjdwahbpoo` int DEFAULT NULL,\n `wzdjwaxeqiozbtcepiqjejlulkdrrgfl` int DEFAULT NULL,\n `kdulhobstflxopogvvgjgszmcfxazibq` int DEFAULT NULL,\n `gdwlprhiuujltzhlpbxhmeqxhwkaovqa` int DEFAULT NULL,\n `pqzeondqmihjznvwwcaoppmpuukonquj` int DEFAULT NULL,\n `tnoxuqxpzmnuzyubmzfvviinnktgkidc` int DEFAULT NULL,\n `jqflgvyvwwxbjpluybbayyniotiyzupp` int DEFAULT NULL,\n `sokckohyonckhgaeacsfuvjgwshazhds` int DEFAULT NULL,\n `ulfdtasjkqjbypgxbbymphogdwhlqqsi` int DEFAULT NULL,\n `phpzgfbrpfchfgwgwqhqdguarfouzchn` int DEFAULT NULL,\n `qhvxojtgtvpyvitdyckxekkqoynatktt` int DEFAULT NULL,\n `glrpheitggjxqbqrohpioaqoatqwiqvx` int DEFAULT NULL,\n `ovvvptuwpluovroeqchlczieszizwxbr` int DEFAULT NULL,\n `tfjnhmmhfxdjsnxepievylvpxsrvluup` int DEFAULT NULL,\n `izuxktgmraqpfawelmrjypkwmvmpsyyu` int DEFAULT NULL,\n `onnxvjzatneuydhvratfvgmqpippmgiq` int DEFAULT NULL,\n `mkwxldtwpyueocwcniyzbgezqcrdoubp` int DEFAULT NULL,\n `abapjshskwauokfnwyddmowyoogeunmn` int DEFAULT NULL,\n `snboysotpynankkgrblqodwcuiebeaqa` int DEFAULT NULL,\n `rxoavrnelhtyxolvjenxkeviayubqlbp` int DEFAULT NULL,\n `cdcyxemouebnreqimrhelgbnhbgfmnoe` int DEFAULT NULL,\n `tpotyofnoivfoopcfkjfjggbpufybbnk` int DEFAULT NULL,\n `bkovppineltokvimijmayzaimbnzozmc` int DEFAULT NULL,\n `rlftwmyypcgimqchppslxqqzexkwfcbv` int DEFAULT NULL,\n `rumfofflfgopbqistwobujvssdlyytat` int DEFAULT NULL,\n `unfmvuvimkhlktdagebbmlibwzgwfqrk` int DEFAULT NULL,\n `bxcbboqnpsdrwngduuovfyswiawqlcln` int DEFAULT NULL,\n `ikdiltthuonumyeopjpgqrozyegoklsj` int DEFAULT NULL,\n `pmktwypdvojwoybnsouhqkpjgsspzorp` int DEFAULT NULL,\n `lgdgnvzbbabickpmxkjavzrtibystnis` int DEFAULT NULL,\n `mmqdfbtokjowiyxycpwzdjzbqpaiiymq` int DEFAULT NULL,\n `ezcmtxonyukyhvwdtbrupbitbwjfwkdm` int DEFAULT NULL,\n `zaddvqunogkbhbewltjmwmyinhjcpfsm` int DEFAULT NULL,\n `qishhnjgoprywzbqbmtxqkjwfjxsnoxq` int DEFAULT NULL,\n `onnaqkvhamsszksovcwlngtolysazywr` int DEFAULT NULL,\n `jvyqlrigchurhsrqdxwckdyllbfbkqkl` int DEFAULT NULL,\n PRIMARY KEY (`rxbsitczrikwngtubbuaenvyjeggzybc`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"vlatilsnjpcfvjqannnvxnfclsppggel\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["rxbsitczrikwngtubbuaenvyjeggzybc"],"columns":[{"name":"rxbsitczrikwngtubbuaenvyjeggzybc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"tmhpscxmjlgggznvqzwytosumojmwwph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtccczfkxihivelxeqkbvsqswvjlajrk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dsicsltnoahiiczepnybnrrfneghktrv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oyncqysawdavufxzgblaqbwuiumatrjg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wkgcvnhlyuifxirafdrxxitjsccsnamw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqlceaptwzoxvmvzckmhisbfvjsbaoog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cansmkmjiidhvpeiynroejlrcqblfnnh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uiehsjfnjcydgqmkcmgtivifgghqrmav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"foqevvfizxbiwdawzhthirbgpddiqvjq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgfbtbgwhxgzowmweccqtihbloydicxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"geikhgpqkcixmeezcbyuqvjnlpylkene","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jcqolgopnvxdwojgkmgniijnxbpnfrbm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ddcisixmjejoqwmmvryaiolnkpncqwef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lweuvuqgiueliymmhdfsjsdzxukxlzad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdalcpbuidpfwwecbpvbnafaqtgjfobx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jpuktzximzdripzzojfjmvgvwuyqjnpl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nrvcgxpimozwtjjckmblcorgsijqhpvn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkkhbjdyqzhjlqdtfilzjvjyrknsxdcf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"totrhiodeapmxsxzefnlauhgbqiuqcmh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tsaujimmqqjykbwjjslqnbcbybyvjpde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnrkvgprusyvnfiklapjqkvfgnvlqgyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxyyzizguskjxtxplewnhrmaafzbrrex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbblujduxobfhjlgzeodsshabtjcymvk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gsyhectprvicbuwiifkxrtmwwukhzhui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wrfowlbqmegsotrnjqbduuseusqdtbqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bpgvzjlohvqrehmigvibtqysazzveeyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qoydfvywewiptkzvpoficyglipgznutc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"djfztszdafrdrhzomnrgmswnqkdmcewo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tfdlvzxcecbpkykmrssvlgdusidginjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gvbyveeusfjuthnbqprjjttwkpkgfiji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"efvksubcmyvcielyihycxsnynncsafsj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qgcriztlvogoytutxjobgxevvmgbtgir","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sacxzlkaqbftzfbflemjsqzmtxykfsed","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vlyuffikrozxzyofraayuiwfriyhytxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"suykfbucfandlsqdosexgcgtbawvynif","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjrgrxgbyqakjbhbzxnmgwyshxbhuoyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jrarauxqwcyborvpjbvvtooqxjziofpt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bzszxijxxujxqbyvirmucnyigklyxmkp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lusncvhqemkbuwgvsozzgrybitzgrrul","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljbehbaotpoyikwifwhkabjpsjivwqti","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfqbwisfthzzfvxpdngmgprilnfonzyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsgnthtimunwmlxuqeoeihnykqrbafle","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvqewfewmblwsglgjiixpgaqhnhjzica","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zyvmdqpugmvtklzfdipnhgejxzykpmim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"datrqsvafkvhvjebplbxvppeghntpstd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tulmkdgjobyrklcipotpmsfmmhmpjvpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvtyzqlfjchpylxmnswamkwvsodbkupb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbunjwdaancuavukmdrketgzjkczsvsj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikumnrmtidbypjgnhbqkyobehmlvjcft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uapydjeevnakculpxdbqxbuqsbnwdoil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jifkogrfxdxniiyrigwuflhkwicvfrbt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"taixtgiysdgfdmaqrehpvdvhtdodcueh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"novvmfafykfjbdiwbwieavynmmzlepag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"anavcyrnsbzbnzsllapqebasrbgpdjqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxkqumtfovkkwatsazctxtvhxfyfrzcy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yynvkimexdzjsafmzzaaacgmrycdqoyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcrdmzjtqsbdcisreaulwontxwmikwmo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"esknnolntqxealdgpudxeodamymfvays","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdnckluahrvlziuxqwkdrnqimmatnmwg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wujiwydobimftbipttxljknmjiwqsysj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ryoathkujemplpdknnfiupkuzvdumdvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vlkbgputkowzqhqvnxhwkxqyyhjmmnqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tgysynnbvbnxczznkmzjahxhdbcfxxqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"seiqhinogxpnztjvxokkfihjdwahbpoo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzdjwaxeqiozbtcepiqjejlulkdrrgfl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kdulhobstflxopogvvgjgszmcfxazibq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdwlprhiuujltzhlpbxhmeqxhwkaovqa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqzeondqmihjznvwwcaoppmpuukonquj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnoxuqxpzmnuzyubmzfvviinnktgkidc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jqflgvyvwwxbjpluybbayyniotiyzupp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sokckohyonckhgaeacsfuvjgwshazhds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ulfdtasjkqjbypgxbbymphogdwhlqqsi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phpzgfbrpfchfgwgwqhqdguarfouzchn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhvxojtgtvpyvitdyckxekkqoynatktt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"glrpheitggjxqbqrohpioaqoatqwiqvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovvvptuwpluovroeqchlczieszizwxbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tfjnhmmhfxdjsnxepievylvpxsrvluup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"izuxktgmraqpfawelmrjypkwmvmpsyyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"onnxvjzatneuydhvratfvgmqpippmgiq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkwxldtwpyueocwcniyzbgezqcrdoubp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"abapjshskwauokfnwyddmowyoogeunmn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"snboysotpynankkgrblqodwcuiebeaqa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxoavrnelhtyxolvjenxkeviayubqlbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cdcyxemouebnreqimrhelgbnhbgfmnoe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpotyofnoivfoopcfkjfjggbpufybbnk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkovppineltokvimijmayzaimbnzozmc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlftwmyypcgimqchppslxqqzexkwfcbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rumfofflfgopbqistwobujvssdlyytat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unfmvuvimkhlktdagebbmlibwzgwfqrk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bxcbboqnpsdrwngduuovfyswiawqlcln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikdiltthuonumyeopjpgqrozyegoklsj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmktwypdvojwoybnsouhqkpjgsspzorp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgdgnvzbbabickpmxkjavzrtibystnis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmqdfbtokjowiyxycpwzdjzbqpaiiymq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezcmtxonyukyhvwdtbrupbitbwjfwkdm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zaddvqunogkbhbewltjmwmyinhjcpfsm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qishhnjgoprywzbqbmtxqkjwfjxsnoxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"onnaqkvhamsszksovcwlngtolysazywr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvyqlrigchurhsrqdxwckdyllbfbkqkl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672142,"databaseName":"models_schema","ddl":"CREATE TABLE `vldtvucetkkwbkcoweeuxswdsnytbwak` (\n `gbregmwxtoqnlnizeokxzpjiygwzhkiy` int NOT NULL,\n `cqpkprrifvsxfzlqmgxwtlpjcrevrvdq` int DEFAULT NULL,\n `icikjgdhzxthxuvsxqlodfrezitpxzgk` int DEFAULT NULL,\n `wfjadtcchpmxtwhdsqpairvjvdkvgahj` int DEFAULT NULL,\n `zzqntsdvafmipwyopldwtpqulotgqnwm` int DEFAULT NULL,\n `bjgiphklukrhbxtwfgqkdgixegqdifur` int DEFAULT NULL,\n `ibyuvtdweffxxhyvdizeukwtormrwbca` int DEFAULT NULL,\n `fzddxfbtxrqqcftotzzrerahwpoigolj` int DEFAULT NULL,\n `pqqsxkiqzapckgyhkwxnfnrtkjflhohk` int DEFAULT NULL,\n `lbquydydypwkypubrglbbmaxlrwmehkr` int DEFAULT NULL,\n `drcfwdpnvmnwxhfzwugxhdttmiwrcbxy` int DEFAULT NULL,\n `xkdizrshrgbfuryphnngizpmpczwvbcl` int DEFAULT NULL,\n `stkulzdyngfwtnevckkgtckcfbsemeoi` int DEFAULT NULL,\n `rikodnndsqvzxhifppymqsvywsuckfag` int DEFAULT NULL,\n `tzznywzgrwglvauqhnpehphxzobpsxen` int DEFAULT NULL,\n `itvwqwdjcmzozhiovgpyrgawjmtccfpc` int DEFAULT NULL,\n `kuwwhjtfrafvwlqwtbivrjwkibsgnlbc` int DEFAULT NULL,\n `pinmlaqovsznbudvgzrdmqcgshlcdxnn` int DEFAULT NULL,\n `fhvehscnbltracthbkmjkzbtkwjlbjon` int DEFAULT NULL,\n `qjkulpojwwwwkapylnbjpagpxxptrouo` int DEFAULT NULL,\n `psropdvejltyrugpkaxobxbibsafubcf` int DEFAULT NULL,\n `jorqxxvoldfqcrtjvvntilamqeomtklq` int DEFAULT NULL,\n `ijigccejqwdiicszluvrvjjejwfqqroy` int DEFAULT NULL,\n `iuppzjaphomohmpgbxgdtiyubgjmtzyp` int DEFAULT NULL,\n `pxsqnrnzoxtjksyctopzmtviafdbwyns` int DEFAULT NULL,\n `spntgvopbpwusvsfsgsvkzfepwazmblc` int DEFAULT NULL,\n `hsbkoaeqynvnpucvyvcnetygssxmvpfl` int DEFAULT NULL,\n `elwonnsosusfmqkeqxznhqendyylccpj` int DEFAULT NULL,\n `wexhuyvkqrezgsxzuovthhjegopxlutu` int DEFAULT NULL,\n `jklfchuirvzaskhkuqqdnxwuopyxvgmj` int DEFAULT NULL,\n `dpvoakrwhusdwhzjczeeypcmwanuiuoo` int DEFAULT NULL,\n `twxpgsyxhwrmllzfikuqoqotbtngkmbn` int DEFAULT NULL,\n `njvsukmxqnneqyyxnpchxoxawymuqabr` int DEFAULT NULL,\n `ciwtbumolinkfxessuxrniprplfvmtsm` int DEFAULT NULL,\n `bffndlwjemtmjwdwzqkgcjpjrejmgfxa` int DEFAULT NULL,\n `grsunkurdryzoulyboqhwxqnsijzvhbi` int DEFAULT NULL,\n `nszwjnipdwibjcoweakwcfiaeukkezqm` int DEFAULT NULL,\n `ouzjsvkmbtkvnjatzgovtavvxtxbaldm` int DEFAULT NULL,\n `otouuynkunorjtzkmnnxpvanuzdnsjoo` int DEFAULT NULL,\n `ioftmvbnrqblsjgicmlxoaqayvavgeep` int DEFAULT NULL,\n `dlftwgwfjuyxeyswxnuvtztpmbsxpmsz` int DEFAULT NULL,\n `fpgohlvlzerxohahzvxkqzhaptjrskvp` int DEFAULT NULL,\n `ioanlivbkbbksycuyeizcpryosisutjk` int DEFAULT NULL,\n `blljjsnwdxqosrmofyhrzderzforccdp` int DEFAULT NULL,\n `nzubxgcuocqyynuoxajdohdquibxfvtg` int DEFAULT NULL,\n `mdkifexaurzxyplohnamemdwakmycmas` int DEFAULT NULL,\n `jzjwleiwslcbwtdpmzeavcexvnnphqwp` int DEFAULT NULL,\n `zajsdisnsitqerbuyshezvaeddyeqkyl` int DEFAULT NULL,\n `flhefltoghuzframlpjorwfvjdrvmxgy` int DEFAULT NULL,\n `uayimflqkhzamyddwtnsptgxvhbpcewi` int DEFAULT NULL,\n `vpgsxtixuhaiseupwrjzkznzsxrggred` int DEFAULT NULL,\n `xqgjjilihdlnpylixbptdowpozmdjcmc` int DEFAULT NULL,\n `zegmtopqlrcjctjiytxgybvljjbruxkp` int DEFAULT NULL,\n `xbyxyyaandcnudkmmlvmxylfvcokoeen` int DEFAULT NULL,\n `tbvldmdogjxwsbtmnvpfqecjgvoawuuo` int DEFAULT NULL,\n `slbgrcneslieivwhyikmgbluuiyagsbj` int DEFAULT NULL,\n `fdocagoiysldveadbavwntvpjlkgenmv` int DEFAULT NULL,\n `bykjjoqkkwxogbxnocequskaoejbbzqj` int DEFAULT NULL,\n `dwwsfhpkljrhdfodapzwrxpleouhhgac` int DEFAULT NULL,\n `daerpwhusmubpngueidwsmoaawtnenik` int DEFAULT NULL,\n `wknenscyyvysyjfxbmbejstzvziencbk` int DEFAULT NULL,\n `bldkajqljzeuylfocgtsblpuvvlxadzs` int DEFAULT NULL,\n `czogxthmermolzhxlcjgxspygbmfufni` int DEFAULT NULL,\n `lehwkjdugficolxegrybhaacyerdpzvj` int DEFAULT NULL,\n `ntrfwknnrpwgjuppteejgkibtdumwjrh` int DEFAULT NULL,\n `gulqgiqmzqalvxcckrpwgcenoptaaegk` int DEFAULT NULL,\n `etwdjxnlupkwrxoevxlhidbyzorvnpta` int DEFAULT NULL,\n `cqujvqjxohxvvdmcmdqfurlvbmmrxtct` int DEFAULT NULL,\n `jxddhsshxswjhjswhivewupixetkjmrw` int DEFAULT NULL,\n `usnxhdjxpdmragigetbdozqybhsmxrvi` int DEFAULT NULL,\n `oojvqwuzhglipzllsmqwzcrjwvzmnuqw` int DEFAULT NULL,\n `yudqwwkrutcyunsqbimjedzrdzxmvpaa` int DEFAULT NULL,\n `dnvcmgedbvwrfuetguvqbjsuaxczfgdj` int DEFAULT NULL,\n `urwvhbhzquzeuhqiweuoutcvcxowwhgo` int DEFAULT NULL,\n `afjcxfkcwdatkbqdjerjolmefqblpfsv` int DEFAULT NULL,\n `kxdprtotpptigrujuazfndzcxtadqunx` int DEFAULT NULL,\n `clqamppcxmlmlxrkoodrijxcnvdugemt` int DEFAULT NULL,\n `lnndkvyzbgttqujvxghrhsofdnzxpzic` int DEFAULT NULL,\n `rnwfolebqfuhfwmtodpfkiiywgqoaktm` int DEFAULT NULL,\n `rvagtwpshjcmgjfuosfsgjqaexjmlnfy` int DEFAULT NULL,\n `rpgdtmypllnvftqrbktnceqwvsqpxkca` int DEFAULT NULL,\n `qutrmrykwoctzxmzpwxigyutnipyguyx` int DEFAULT NULL,\n `esnaeitsdsernsdqumacziaruyenczit` int DEFAULT NULL,\n `jqpbjrmzmwtracotgthklcavgoaaynro` int DEFAULT NULL,\n `vdvhphrongtflkaemfxdcwguctadfugz` int DEFAULT NULL,\n `ywvxctmsrvruroetvfmvtmvdvtzfjbsd` int DEFAULT NULL,\n `lkvvwbnvsflanplajkzjpvdbvdhhruju` int DEFAULT NULL,\n `ufeksqgujoeynhyzldazhbzatiujcbpv` int DEFAULT NULL,\n `dkzbbwzepvhtcekwzqjdirtvbwlkwmok` int DEFAULT NULL,\n `aampbsyjcmzibovqaaplnqkyfmpdhpqp` int DEFAULT NULL,\n `iqecosowrngvacunospfefknbkipeoxw` int DEFAULT NULL,\n `tdszivatknybdqdscpsqwsmbnrvuptxi` int DEFAULT NULL,\n `kydsgzgxqpqfiybsmvuqrxoidfvjhnhh` int DEFAULT NULL,\n `jjquqkpteggzptomdolcauimffmfjjyj` int DEFAULT NULL,\n `xjrishkfehqpheppaylbowvgtygouyga` int DEFAULT NULL,\n `pcmxgscxpvoezqtzapkkpjkwrtvxpvat` int DEFAULT NULL,\n `etxgxrirnjkhzlhoxmboixldxocnagip` int DEFAULT NULL,\n `sblelbslyfeasdyqtbxrdyuyfzvjrxef` int DEFAULT NULL,\n `rdvlizrynuiorqhhjurzapftrvdrkbag` int DEFAULT NULL,\n `bxxjaelpflintslzmcwvszqjvjepwmog` int DEFAULT NULL,\n PRIMARY KEY (`gbregmwxtoqnlnizeokxzpjiygwzhkiy`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"vldtvucetkkwbkcoweeuxswdsnytbwak\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["gbregmwxtoqnlnizeokxzpjiygwzhkiy"],"columns":[{"name":"gbregmwxtoqnlnizeokxzpjiygwzhkiy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"cqpkprrifvsxfzlqmgxwtlpjcrevrvdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icikjgdhzxthxuvsxqlodfrezitpxzgk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfjadtcchpmxtwhdsqpairvjvdkvgahj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzqntsdvafmipwyopldwtpqulotgqnwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjgiphklukrhbxtwfgqkdgixegqdifur","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibyuvtdweffxxhyvdizeukwtormrwbca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzddxfbtxrqqcftotzzrerahwpoigolj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqqsxkiqzapckgyhkwxnfnrtkjflhohk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lbquydydypwkypubrglbbmaxlrwmehkr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drcfwdpnvmnwxhfzwugxhdttmiwrcbxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkdizrshrgbfuryphnngizpmpczwvbcl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"stkulzdyngfwtnevckkgtckcfbsemeoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rikodnndsqvzxhifppymqsvywsuckfag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tzznywzgrwglvauqhnpehphxzobpsxen","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itvwqwdjcmzozhiovgpyrgawjmtccfpc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kuwwhjtfrafvwlqwtbivrjwkibsgnlbc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pinmlaqovsznbudvgzrdmqcgshlcdxnn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhvehscnbltracthbkmjkzbtkwjlbjon","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjkulpojwwwwkapylnbjpagpxxptrouo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"psropdvejltyrugpkaxobxbibsafubcf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jorqxxvoldfqcrtjvvntilamqeomtklq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijigccejqwdiicszluvrvjjejwfqqroy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iuppzjaphomohmpgbxgdtiyubgjmtzyp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxsqnrnzoxtjksyctopzmtviafdbwyns","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"spntgvopbpwusvsfsgsvkzfepwazmblc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hsbkoaeqynvnpucvyvcnetygssxmvpfl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"elwonnsosusfmqkeqxznhqendyylccpj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wexhuyvkqrezgsxzuovthhjegopxlutu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jklfchuirvzaskhkuqqdnxwuopyxvgmj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpvoakrwhusdwhzjczeeypcmwanuiuoo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twxpgsyxhwrmllzfikuqoqotbtngkmbn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njvsukmxqnneqyyxnpchxoxawymuqabr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ciwtbumolinkfxessuxrniprplfvmtsm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bffndlwjemtmjwdwzqkgcjpjrejmgfxa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grsunkurdryzoulyboqhwxqnsijzvhbi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nszwjnipdwibjcoweakwcfiaeukkezqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ouzjsvkmbtkvnjatzgovtavvxtxbaldm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otouuynkunorjtzkmnnxpvanuzdnsjoo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ioftmvbnrqblsjgicmlxoaqayvavgeep","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dlftwgwfjuyxeyswxnuvtztpmbsxpmsz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpgohlvlzerxohahzvxkqzhaptjrskvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ioanlivbkbbksycuyeizcpryosisutjk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blljjsnwdxqosrmofyhrzderzforccdp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzubxgcuocqyynuoxajdohdquibxfvtg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mdkifexaurzxyplohnamemdwakmycmas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jzjwleiwslcbwtdpmzeavcexvnnphqwp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zajsdisnsitqerbuyshezvaeddyeqkyl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flhefltoghuzframlpjorwfvjdrvmxgy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uayimflqkhzamyddwtnsptgxvhbpcewi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpgsxtixuhaiseupwrjzkznzsxrggred","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqgjjilihdlnpylixbptdowpozmdjcmc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zegmtopqlrcjctjiytxgybvljjbruxkp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbyxyyaandcnudkmmlvmxylfvcokoeen","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbvldmdogjxwsbtmnvpfqecjgvoawuuo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"slbgrcneslieivwhyikmgbluuiyagsbj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fdocagoiysldveadbavwntvpjlkgenmv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bykjjoqkkwxogbxnocequskaoejbbzqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwwsfhpkljrhdfodapzwrxpleouhhgac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"daerpwhusmubpngueidwsmoaawtnenik","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wknenscyyvysyjfxbmbejstzvziencbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bldkajqljzeuylfocgtsblpuvvlxadzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"czogxthmermolzhxlcjgxspygbmfufni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lehwkjdugficolxegrybhaacyerdpzvj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntrfwknnrpwgjuppteejgkibtdumwjrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gulqgiqmzqalvxcckrpwgcenoptaaegk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"etwdjxnlupkwrxoevxlhidbyzorvnpta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqujvqjxohxvvdmcmdqfurlvbmmrxtct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jxddhsshxswjhjswhivewupixetkjmrw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"usnxhdjxpdmragigetbdozqybhsmxrvi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oojvqwuzhglipzllsmqwzcrjwvzmnuqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yudqwwkrutcyunsqbimjedzrdzxmvpaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dnvcmgedbvwrfuetguvqbjsuaxczfgdj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urwvhbhzquzeuhqiweuoutcvcxowwhgo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afjcxfkcwdatkbqdjerjolmefqblpfsv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxdprtotpptigrujuazfndzcxtadqunx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"clqamppcxmlmlxrkoodrijxcnvdugemt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lnndkvyzbgttqujvxghrhsofdnzxpzic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnwfolebqfuhfwmtodpfkiiywgqoaktm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rvagtwpshjcmgjfuosfsgjqaexjmlnfy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpgdtmypllnvftqrbktnceqwvsqpxkca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qutrmrykwoctzxmzpwxigyutnipyguyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"esnaeitsdsernsdqumacziaruyenczit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jqpbjrmzmwtracotgthklcavgoaaynro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdvhphrongtflkaemfxdcwguctadfugz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywvxctmsrvruroetvfmvtmvdvtzfjbsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lkvvwbnvsflanplajkzjpvdbvdhhruju","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ufeksqgujoeynhyzldazhbzatiujcbpv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkzbbwzepvhtcekwzqjdirtvbwlkwmok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aampbsyjcmzibovqaaplnqkyfmpdhpqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqecosowrngvacunospfefknbkipeoxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tdszivatknybdqdscpsqwsmbnrvuptxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kydsgzgxqpqfiybsmvuqrxoidfvjhnhh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjquqkpteggzptomdolcauimffmfjjyj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjrishkfehqpheppaylbowvgtygouyga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pcmxgscxpvoezqtzapkkpjkwrtvxpvat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"etxgxrirnjkhzlhoxmboixldxocnagip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sblelbslyfeasdyqtbxrdyuyfzvjrxef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdvlizrynuiorqhhjurzapftrvdrkbag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bxxjaelpflintslzmcwvszqjvjepwmog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672174,"databaseName":"models_schema","ddl":"CREATE TABLE `vqxcfvfvkfrjtrlfeabxtnndjgrileqz` (\n `ihtdicgwfiginzjsvmlofoiaovagtgzo` int NOT NULL,\n `opjkjabmhyozienpwqcfxoruqcqlnbob` int DEFAULT NULL,\n `prxbjlqyuvgxaljfenojaehonmwtbyeu` int DEFAULT NULL,\n `hqomrjajvdosajkcfptwlnyatggauxoe` int DEFAULT NULL,\n `samxnkcxrhknloyfflndbygbrhzpoqye` int DEFAULT NULL,\n `rxrvmszspegvfrwwuxpffejpykfgkeyk` int DEFAULT NULL,\n `tkvslkuqncrxegzekwnqwdplvzxvrwcv` int DEFAULT NULL,\n `lcaiwudzmzjbkksvbzxsehubswtsarmz` int DEFAULT NULL,\n `exqptjlremwaodlwjczgvmorgylkhxrl` int DEFAULT NULL,\n `xidkuqfalhowsvwmjyqpbsdgegyjxlgk` int DEFAULT NULL,\n `csunvntsqzaydobxskyuxuzvxnfiiupe` int DEFAULT NULL,\n `okwzwwgdokeuysjbtrtbzdwoixzwaxem` int DEFAULT NULL,\n `vkxxbornffrazmqgnkpbwgoluqhugzzy` int DEFAULT NULL,\n `tipnypzettcheiozolcqfulwyodccmbo` int DEFAULT NULL,\n `xmqabqyguzgpuseuwikyayzzekpkixzi` int DEFAULT NULL,\n `mrmegkaxjyjpxesmpfbffxbncbhhxseb` int DEFAULT NULL,\n `hudotngmibneskjzkaxkvywjoerxxfic` int DEFAULT NULL,\n `dpvjfhdpxyxlxuclldftrmwdqxrulpnq` int DEFAULT NULL,\n `gnthdinqjmfhoyisykwelvzddnaooygb` int DEFAULT NULL,\n `zmaonqvzrshmaajptleomloyodooaalb` int DEFAULT NULL,\n `xjsxnlvifgtyggtyezhpryibugnwkmfu` int DEFAULT NULL,\n `siuqawpymggbqfwgsdktktoyevxiqpes` int DEFAULT NULL,\n `romxfcxdubyclxtlkxgihjhnxrhzvnan` int DEFAULT NULL,\n `efmoujdsfuxuvpjtawrbqijukysprgax` int DEFAULT NULL,\n `wpetfpfnfasyuiqotbpunubttezldkja` int DEFAULT NULL,\n `yajihgppmzcrdqhakkknqjsqpxxvxnww` int DEFAULT NULL,\n `fczmsoxssnkjvzzeuzxntranxnnpsoak` int DEFAULT NULL,\n `qzpuxpwuabalktjmhzjjgifayvmysgno` int DEFAULT NULL,\n `xpspebfnrhzkzyzsytxznzzxojshfmci` int DEFAULT NULL,\n `duljnumtelgtngkxgktyknxgxceksaie` int DEFAULT NULL,\n `kquawkcgonhmoptowallcxbqpzarrnhf` int DEFAULT NULL,\n `trycfhfvmiajvjrnfoputzxrjyfzcnbr` int DEFAULT NULL,\n `stqgnfplhncirriljpkyqcfgpsptlgkx` int DEFAULT NULL,\n `rxldhqzsdqoqrusnvxbeemwjmbeuqkro` int DEFAULT NULL,\n `ufbkpcfsviaidobrjzuytrmqprfpxqlz` int DEFAULT NULL,\n `ruzlllikhvuixxnwqtjiohlhmfzugrtg` int DEFAULT NULL,\n `hzumdexfwdfkoulqhqjgygvowlfjnbim` int DEFAULT NULL,\n `xtnezsfbgaliylsjygysqpjqxrjnpvgp` int DEFAULT NULL,\n `rpspdmihmlhfysbtiyrbuyholcophhdz` int DEFAULT NULL,\n `icrzuchoogrtyyfavjkgdojunwswxiyj` int DEFAULT NULL,\n `mnjksyxagjixpoucvugtlpdtakspnolr` int DEFAULT NULL,\n `vdanfgchitqzahnoowynaxyadnbrvicf` int DEFAULT NULL,\n `zlxinjdnohhvwurgzirxfmongcvmbisk` int DEFAULT NULL,\n `tjrkpizpbjwkjtobxfjejniaukjgyhba` int DEFAULT NULL,\n `avbskvrhktlvtqqjlxyjrnjhlvujvzbz` int DEFAULT NULL,\n `yybkcldwtqsuuvdgntsclbfrhkegmpgz` int DEFAULT NULL,\n `osbvvalppejlffvppkaavceoaqxczwng` int DEFAULT NULL,\n `flzbitntjtjbhzfvnvswnmyxzxlbjbjm` int DEFAULT NULL,\n `exsuuzzemlejfbmrhuoolwnpdlzfvwkt` int DEFAULT NULL,\n `jmnsvfqeioheppwcgpivpunarlnyyvjk` int DEFAULT NULL,\n `cgwlkcpppskufdxxrzqdoswcewxdklgm` int DEFAULT NULL,\n `fxqnszujzcdrgejeltjghimswbrxguox` int DEFAULT NULL,\n `znjwvrxcwroripqbdfuhseyqgynyznvx` int DEFAULT NULL,\n `imtjomubgbftsdtxclwxatorqtheuvla` int DEFAULT NULL,\n `mpftropqdywcbysqfxamzvcurqwxztuw` int DEFAULT NULL,\n `hlnmeevvhkvvpvtzsdwgrdplnbirlcrd` int DEFAULT NULL,\n `rijqoufpioswfuhdwplhdwwafwjuerxz` int DEFAULT NULL,\n `qdcsgtzcjozsxmkpqdycjmixbrsvpajm` int DEFAULT NULL,\n `jwhrgepuihlpddsvempwanytttuhuikp` int DEFAULT NULL,\n `nwnrndlxvdivsaegkkaecfyzxizxklcg` int DEFAULT NULL,\n `kltrurqsfyogragdtrlzekksghkkehmk` int DEFAULT NULL,\n `daetacpjawcjwxoefijeznmtmsaenkyz` int DEFAULT NULL,\n `ugvnbngesalyhzvofbyzfizydcwnqabx` int DEFAULT NULL,\n `yjdwbaudtxfmrvwfbzgxaljtzzxrznel` int DEFAULT NULL,\n `tbbvcjsswiucjkrzqfzkoglrinnuvurm` int DEFAULT NULL,\n `ibfahoufobblwnvgknwmuytwrdqiqttk` int DEFAULT NULL,\n `jccrnnxpyllcmitorktaxpoewqrtgbep` int DEFAULT NULL,\n `zkhbasfnvoxcwjlwovoblobqihktxpiq` int DEFAULT NULL,\n `hhqzxrmfzfpnikyancdrmfsymitrnhui` int DEFAULT NULL,\n `omvirkwnwnsynbruverkujylqqzlszdr` int DEFAULT NULL,\n `jbmietbafieilgzofxvdnfoifckyqumh` int DEFAULT NULL,\n `vokeocbkftqodvjhhympbrsgngyzuzhw` int DEFAULT NULL,\n `trbmpglbrypuwgbsfsimwpqqhnrsdixa` int DEFAULT NULL,\n `gskuzptpdatfdqyrninelajkarsipsnv` int DEFAULT NULL,\n `ztbkpwcgzmcgpjqaglkhfbgpjzrvjsvw` int DEFAULT NULL,\n `jekvjtvymekbznpkzkaaalojvogfntjm` int DEFAULT NULL,\n `zxapbqshubpwtoasnfqbgzjlmufxpnzg` int DEFAULT NULL,\n `cnrokqfelcgzbmiolxslvciyugaxwean` int DEFAULT NULL,\n `mnchfaxvkmlqegnyhsyycpmsjtiygfqr` int DEFAULT NULL,\n `lwrkaguyznaisszubypetfcgrzueyxtg` int DEFAULT NULL,\n `taqevqjvhnetdfiewzmjcpymlfobfcyr` int DEFAULT NULL,\n `imyluwjdhzibahbisfxzvzlfndvjqwpj` int DEFAULT NULL,\n `wqpdevbxwxyifytwmwtvtuaucwelvuzp` int DEFAULT NULL,\n `rkogprwsjgdalweadogwzkrvihahqesl` int DEFAULT NULL,\n `doejxfydpjxgbozlgfuxliiiwoodoiwn` int DEFAULT NULL,\n `vffcrnbkjuncjmteltzgvqrohwstcpvc` int DEFAULT NULL,\n `hfcbofsywkwooqqrccpfmnepanxmkvwi` int DEFAULT NULL,\n `yhwlmtnzabfcrkmwlkxpztdqfbrfhkam` int DEFAULT NULL,\n `ikanoztushvmjplwwvlyzkmpwxcjjuxh` int DEFAULT NULL,\n `gtywbkifoduxzfeuugydkizhhqeokepo` int DEFAULT NULL,\n `nuxhiubggscidckksgannfusgkxaylfy` int DEFAULT NULL,\n `pxueggelmakfritcobgtwlfnswseooee` int DEFAULT NULL,\n `smgoolxvlgaosfaxqfsnrnvcskersksm` int DEFAULT NULL,\n `fgtyfnlvukwmxypsbmsiudcggjgusfgx` int DEFAULT NULL,\n `divaoutfwkvmenhwqjxbvlsveelonjro` int DEFAULT NULL,\n `zydodueylwkyoanstcxwhfyjlzliazgj` int DEFAULT NULL,\n `fyzflzjkeupyjpijvwtccnjracexicts` int DEFAULT NULL,\n `vzpghedkpsgnkpolbwdcsfmvfhdseeis` int DEFAULT NULL,\n `hnjwvcwqpyixogxqupieukdqzbztlqwl` int DEFAULT NULL,\n `vnfdgpesmxwwkgolwttxshmyxaupirye` int DEFAULT NULL,\n PRIMARY KEY (`ihtdicgwfiginzjsvmlofoiaovagtgzo`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"vqxcfvfvkfrjtrlfeabxtnndjgrileqz\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["ihtdicgwfiginzjsvmlofoiaovagtgzo"],"columns":[{"name":"ihtdicgwfiginzjsvmlofoiaovagtgzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"opjkjabmhyozienpwqcfxoruqcqlnbob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prxbjlqyuvgxaljfenojaehonmwtbyeu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqomrjajvdosajkcfptwlnyatggauxoe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"samxnkcxrhknloyfflndbygbrhzpoqye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxrvmszspegvfrwwuxpffejpykfgkeyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkvslkuqncrxegzekwnqwdplvzxvrwcv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lcaiwudzmzjbkksvbzxsehubswtsarmz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exqptjlremwaodlwjczgvmorgylkhxrl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xidkuqfalhowsvwmjyqpbsdgegyjxlgk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"csunvntsqzaydobxskyuxuzvxnfiiupe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"okwzwwgdokeuysjbtrtbzdwoixzwaxem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkxxbornffrazmqgnkpbwgoluqhugzzy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tipnypzettcheiozolcqfulwyodccmbo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xmqabqyguzgpuseuwikyayzzekpkixzi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrmegkaxjyjpxesmpfbffxbncbhhxseb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hudotngmibneskjzkaxkvywjoerxxfic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpvjfhdpxyxlxuclldftrmwdqxrulpnq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnthdinqjmfhoyisykwelvzddnaooygb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmaonqvzrshmaajptleomloyodooaalb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjsxnlvifgtyggtyezhpryibugnwkmfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"siuqawpymggbqfwgsdktktoyevxiqpes","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"romxfcxdubyclxtlkxgihjhnxrhzvnan","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"efmoujdsfuxuvpjtawrbqijukysprgax","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wpetfpfnfasyuiqotbpunubttezldkja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yajihgppmzcrdqhakkknqjsqpxxvxnww","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fczmsoxssnkjvzzeuzxntranxnnpsoak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qzpuxpwuabalktjmhzjjgifayvmysgno","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xpspebfnrhzkzyzsytxznzzxojshfmci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"duljnumtelgtngkxgktyknxgxceksaie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kquawkcgonhmoptowallcxbqpzarrnhf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"trycfhfvmiajvjrnfoputzxrjyfzcnbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"stqgnfplhncirriljpkyqcfgpsptlgkx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxldhqzsdqoqrusnvxbeemwjmbeuqkro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ufbkpcfsviaidobrjzuytrmqprfpxqlz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ruzlllikhvuixxnwqtjiohlhmfzugrtg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hzumdexfwdfkoulqhqjgygvowlfjnbim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xtnezsfbgaliylsjygysqpjqxrjnpvgp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpspdmihmlhfysbtiyrbuyholcophhdz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icrzuchoogrtyyfavjkgdojunwswxiyj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnjksyxagjixpoucvugtlpdtakspnolr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdanfgchitqzahnoowynaxyadnbrvicf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zlxinjdnohhvwurgzirxfmongcvmbisk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjrkpizpbjwkjtobxfjejniaukjgyhba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avbskvrhktlvtqqjlxyjrnjhlvujvzbz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yybkcldwtqsuuvdgntsclbfrhkegmpgz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"osbvvalppejlffvppkaavceoaqxczwng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flzbitntjtjbhzfvnvswnmyxzxlbjbjm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exsuuzzemlejfbmrhuoolwnpdlzfvwkt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmnsvfqeioheppwcgpivpunarlnyyvjk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgwlkcpppskufdxxrzqdoswcewxdklgm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxqnszujzcdrgejeltjghimswbrxguox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znjwvrxcwroripqbdfuhseyqgynyznvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"imtjomubgbftsdtxclwxatorqtheuvla","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpftropqdywcbysqfxamzvcurqwxztuw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlnmeevvhkvvpvtzsdwgrdplnbirlcrd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rijqoufpioswfuhdwplhdwwafwjuerxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdcsgtzcjozsxmkpqdycjmixbrsvpajm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwhrgepuihlpddsvempwanytttuhuikp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nwnrndlxvdivsaegkkaecfyzxizxklcg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kltrurqsfyogragdtrlzekksghkkehmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"daetacpjawcjwxoefijeznmtmsaenkyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugvnbngesalyhzvofbyzfizydcwnqabx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjdwbaudtxfmrvwfbzgxaljtzzxrznel","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbbvcjsswiucjkrzqfzkoglrinnuvurm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibfahoufobblwnvgknwmuytwrdqiqttk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jccrnnxpyllcmitorktaxpoewqrtgbep","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zkhbasfnvoxcwjlwovoblobqihktxpiq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhqzxrmfzfpnikyancdrmfsymitrnhui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omvirkwnwnsynbruverkujylqqzlszdr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jbmietbafieilgzofxvdnfoifckyqumh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vokeocbkftqodvjhhympbrsgngyzuzhw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"trbmpglbrypuwgbsfsimwpqqhnrsdixa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gskuzptpdatfdqyrninelajkarsipsnv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ztbkpwcgzmcgpjqaglkhfbgpjzrvjsvw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jekvjtvymekbznpkzkaaalojvogfntjm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxapbqshubpwtoasnfqbgzjlmufxpnzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnrokqfelcgzbmiolxslvciyugaxwean","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnchfaxvkmlqegnyhsyycpmsjtiygfqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwrkaguyznaisszubypetfcgrzueyxtg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"taqevqjvhnetdfiewzmjcpymlfobfcyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"imyluwjdhzibahbisfxzvzlfndvjqwpj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqpdevbxwxyifytwmwtvtuaucwelvuzp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkogprwsjgdalweadogwzkrvihahqesl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"doejxfydpjxgbozlgfuxliiiwoodoiwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vffcrnbkjuncjmteltzgvqrohwstcpvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfcbofsywkwooqqrccpfmnepanxmkvwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhwlmtnzabfcrkmwlkxpztdqfbrfhkam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikanoztushvmjplwwvlyzkmpwxcjjuxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtywbkifoduxzfeuugydkizhhqeokepo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nuxhiubggscidckksgannfusgkxaylfy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxueggelmakfritcobgtwlfnswseooee","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smgoolxvlgaosfaxqfsnrnvcskersksm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fgtyfnlvukwmxypsbmsiudcggjgusfgx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"divaoutfwkvmenhwqjxbvlsveelonjro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zydodueylwkyoanstcxwhfyjlzliazgj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fyzflzjkeupyjpijvwtccnjracexicts","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vzpghedkpsgnkpolbwdcsfmvfhdseeis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hnjwvcwqpyixogxqupieukdqzbztlqwl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vnfdgpesmxwwkgolwttxshmyxaupirye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672204,"databaseName":"models_schema","ddl":"CREATE TABLE `vrbvigqupjgsaeqqwingjxtcxidpztuo` (\n `alekucgiztvxyoaqbankbkjzhlkaswvy` int NOT NULL,\n `bmsdtydntxeyjawmoyhnwwblxwzjdrkf` int DEFAULT NULL,\n `gxejfbpmmuzbqjpejeznjcdrxwcoggbu` int DEFAULT NULL,\n `vwskwxlomywltmlscsrulqifcduijtzd` int DEFAULT NULL,\n `vpsdxrooaysakmxtapadygiufgevgtam` int DEFAULT NULL,\n `vofdmxukrkkugtbengzsjleehdoidtmg` int DEFAULT NULL,\n `rbwwbtjhjzgrxwhhfjpfcubnkgictskf` int DEFAULT NULL,\n `ocbkgmhhclevslrofuentevoavzojrtz` int DEFAULT NULL,\n `adyazvmvfzpslifojlhshlgqaeypszhm` int DEFAULT NULL,\n `cimvqothycqtojfquuvidgoucoyujywy` int DEFAULT NULL,\n `dgyliysfaqnnymrqtpmypvbkxobeztmc` int DEFAULT NULL,\n `dcczyweqhuljksgqnmsqhiuzbwbcjtil` int DEFAULT NULL,\n `bztwbxjnqafosatcmakiosgeyxmqvgln` int DEFAULT NULL,\n `tnovnsxkiiekufhzlhmlenplwmjrebvt` int DEFAULT NULL,\n `tbyhmgfshrrvohphozeqbvffflqsilnr` int DEFAULT NULL,\n `wwqbwrphgdzmyryhuhnaqzgjsraragod` int DEFAULT NULL,\n `cnbbbncukiildlxgnvnbqcuptwjskhjy` int DEFAULT NULL,\n `dwtyhujeafcjnrrkmszqqznzwewgskjc` int DEFAULT NULL,\n `taujlwwtvwrutstpgyvtptehnovjawgk` int DEFAULT NULL,\n `yuafvjivflrevawrdcvnarywbfffkugw` int DEFAULT NULL,\n `luflqjgkzjruzsoplmdfjgwcnqzhbfap` int DEFAULT NULL,\n `odsebqoyadakzshagcvivuooenentuir` int DEFAULT NULL,\n `atvgfwoqkfuizmakxhsfrhzbxmcbaurc` int DEFAULT NULL,\n `ysszanhczeqvrbkqofgtavjdvbrggmab` int DEFAULT NULL,\n `hlibnhicmbkkrmhmeltrgmghmpiigrwp` int DEFAULT NULL,\n `tqklmvvusvsdihlwpapmcngedqitaogl` int DEFAULT NULL,\n `gijotnepaliqkfzplzyogsnjprhweigq` int DEFAULT NULL,\n `krmolrfvpngfpsrbkbnbnordjljmjrjo` int DEFAULT NULL,\n `nzutuwnrgwnrxraohwjjypqmlukkyvla` int DEFAULT NULL,\n `agrymhvbjtemfdveawpqlygdredluxnp` int DEFAULT NULL,\n `eecexeicnfmjujeleygrejprbbbwnokk` int DEFAULT NULL,\n `wtxmkvxgmawysxnmiqiksamvogqqqnnr` int DEFAULT NULL,\n `ulyffyteadohizpzjlxtrmpqypwsrrnb` int DEFAULT NULL,\n `rfybkiklzzdzfsbywdyylykugpnhkgaj` int DEFAULT NULL,\n `qljqmcrdvlkaxlqfoceaozbhuurpaxvg` int DEFAULT NULL,\n `ifcjufjpyrhclmzagaylzumbirsqrgks` int DEFAULT NULL,\n `lexwpxziqiewjbhdhgpbvuadffkhqdby` int DEFAULT NULL,\n `uwezgivelewblxjlrhijzxgovnfzxksr` int DEFAULT NULL,\n `tvrwludsbhbptelekuubdxtbekywadqb` int DEFAULT NULL,\n `lfemensbhzzfhbbqzqgdwqhdrbktrvyo` int DEFAULT NULL,\n `yvafbqdmiiackdqsyxxspptontjxutks` int DEFAULT NULL,\n `jlrjcebxcsuabbynqkkvmizgsucfripr` int DEFAULT NULL,\n `pknkodsqajeapicvosltcexfyqcxmziq` int DEFAULT NULL,\n `slwclvreufbnaddqcjlfgyvxhowkizdo` int DEFAULT NULL,\n `sppugvmioxyvlbngrdhitvusckfrdmvz` int DEFAULT NULL,\n `jqpaymmrlnotjmlbpjpafjkhihxpewch` int DEFAULT NULL,\n `beuwgwuglfhzyoukemiupqhawquenxkk` int DEFAULT NULL,\n `qwbmrewomldrmdjjqygagczkuzcwdzdn` int DEFAULT NULL,\n `qvsgydxguwwjvhfcctbrjxtmxibhigbp` int DEFAULT NULL,\n `rxwggjvfebcspvxkjdwwbnnxtzhpysgk` int DEFAULT NULL,\n `smdkmgwxozxidgxqhpleclmbedyldvin` int DEFAULT NULL,\n `oistfhndwaasbiumsirancreafpasljm` int DEFAULT NULL,\n `fmxeddawffjcdvaacwthptjhbwzxpvpi` int DEFAULT NULL,\n `qxrplupogodgavyzircgipctehrfhtti` int DEFAULT NULL,\n `hkstfsdpsmeevxsawuaxsmxppacktbpj` int DEFAULT NULL,\n `bwjcnocssyrpaerrhfbfupluhotoxhlk` int DEFAULT NULL,\n `kxgwxhqjdumopsogwgyjvunxuqyzprlt` int DEFAULT NULL,\n `vtbyhbywgypvrzynbwwfemfipownakkq` int DEFAULT NULL,\n `rcedbkcjuxiwmrzrtwosbyubjdyzmawu` int DEFAULT NULL,\n `vnthvdsnsnvajssrkpaqymosqhsigpht` int DEFAULT NULL,\n `maadxvdtczvqkfqkqigpmdmxiwxnqmcb` int DEFAULT NULL,\n `ywnlcofxxykblvvmakpakmmvffylyapk` int DEFAULT NULL,\n `vwvwttxzmfkuzsxvdiqjzonsvgqwyqlq` int DEFAULT NULL,\n `vxzftkdqrtujpywzhyjmlxebqsedttft` int DEFAULT NULL,\n `uukuylxjkczfrlyrkqfqctfafhlaisvi` int DEFAULT NULL,\n `rndfsyoiwmizcvtcqwlstizzotrpmbrv` int DEFAULT NULL,\n `viparsmasydsczhbdanwjjqmckitrvku` int DEFAULT NULL,\n `wghihlglahhyqgkfgppuxliplwkrxzst` int DEFAULT NULL,\n `pyykejaiuattzzhjypuyshzbkimxivin` int DEFAULT NULL,\n `xmwgsnvyeyegfbcordcafjrezxyjzxpn` int DEFAULT NULL,\n `mwyljjyayvmegjpffkbqjennwzcrqqfs` int DEFAULT NULL,\n `usfrqbrhlopaovqtlzyfyewjamzqouex` int DEFAULT NULL,\n `ahytajcmwoarecmtfsrgbiunvjikqqgg` int DEFAULT NULL,\n `jnzwlrbudsqmmwccwfxdevhzhlibxxqd` int DEFAULT NULL,\n `zqoyjgenxmsqmmiixqyriyiotlelitni` int DEFAULT NULL,\n `jvuofuxzvlovoytwrlmafeabveyfjwtj` int DEFAULT NULL,\n `nvopaewvdxwvtmshjxwpcxeljvmumxxz` int DEFAULT NULL,\n `uurserznrdupdvbavcwdypxlkdplblrs` int DEFAULT NULL,\n `nyqvqrfycwodsmpfuxdofmuualbccqwy` int DEFAULT NULL,\n `ejptuiblfebkthcguearqwekliddnckz` int DEFAULT NULL,\n `znyefvlhloqjfkppcxboefafnnrmgzub` int DEFAULT NULL,\n `ekmyxyaqighvhdvswaabozuzqhcuszdp` int DEFAULT NULL,\n `ednejtggfbsvmjitlnrvghbsddyamhei` int DEFAULT NULL,\n `ynluinwcwmsqcpnttyvmqnnpdjpiithx` int DEFAULT NULL,\n `ufpdwigzglybcrvhxrlgkbimkfbaajdz` int DEFAULT NULL,\n `plauekzralcalgiubqeuqtmloojzjhfe` int DEFAULT NULL,\n `gefromgwfbwhwhkctyobdcyhnnvwcmvr` int DEFAULT NULL,\n `dgwqdxpzuwlxdtcosxcsxnybcwleqnwg` int DEFAULT NULL,\n `hdqxmgcmjympexdggmkznddvhdjqerkm` int DEFAULT NULL,\n `mldlzokyiuhautdqzobfvivcxzuzgvig` int DEFAULT NULL,\n `zbfugkaqljxlnlyvzyagnznhqmsioglg` int DEFAULT NULL,\n `zhwatwqqlmscngtncpobyfllkjomgphf` int DEFAULT NULL,\n `lkvtaplzwzxcqeqknxthvmfrjtwgmnuv` int DEFAULT NULL,\n `qffvzpoeahmkewnyvxrtuqgpwacxxjli` int DEFAULT NULL,\n `keavxwuxkpneyjwjeqsflqcafielpujy` int DEFAULT NULL,\n `cqsrrzjzupkacfddwzljppzjsrfqgcdt` int DEFAULT NULL,\n `gjfihdcducbipvidbhszsyveelsnvpph` int DEFAULT NULL,\n `tksvzwpbhohpmsmipzejdbfaxseanznb` int DEFAULT NULL,\n `vtfytirxbtjrfyrlwmdffqytzwkrgpds` int DEFAULT NULL,\n `lkyvsivxmoertqqiyaizviesggzomvtl` int DEFAULT NULL,\n PRIMARY KEY (`alekucgiztvxyoaqbankbkjzhlkaswvy`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"vrbvigqupjgsaeqqwingjxtcxidpztuo\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["alekucgiztvxyoaqbankbkjzhlkaswvy"],"columns":[{"name":"alekucgiztvxyoaqbankbkjzhlkaswvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"bmsdtydntxeyjawmoyhnwwblxwzjdrkf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gxejfbpmmuzbqjpejeznjcdrxwcoggbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vwskwxlomywltmlscsrulqifcduijtzd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpsdxrooaysakmxtapadygiufgevgtam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vofdmxukrkkugtbengzsjleehdoidtmg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbwwbtjhjzgrxwhhfjpfcubnkgictskf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocbkgmhhclevslrofuentevoavzojrtz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"adyazvmvfzpslifojlhshlgqaeypszhm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cimvqothycqtojfquuvidgoucoyujywy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgyliysfaqnnymrqtpmypvbkxobeztmc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcczyweqhuljksgqnmsqhiuzbwbcjtil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bztwbxjnqafosatcmakiosgeyxmqvgln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnovnsxkiiekufhzlhmlenplwmjrebvt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbyhmgfshrrvohphozeqbvffflqsilnr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwqbwrphgdzmyryhuhnaqzgjsraragod","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnbbbncukiildlxgnvnbqcuptwjskhjy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwtyhujeafcjnrrkmszqqznzwewgskjc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"taujlwwtvwrutstpgyvtptehnovjawgk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yuafvjivflrevawrdcvnarywbfffkugw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"luflqjgkzjruzsoplmdfjgwcnqzhbfap","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"odsebqoyadakzshagcvivuooenentuir","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atvgfwoqkfuizmakxhsfrhzbxmcbaurc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ysszanhczeqvrbkqofgtavjdvbrggmab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlibnhicmbkkrmhmeltrgmghmpiigrwp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqklmvvusvsdihlwpapmcngedqitaogl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gijotnepaliqkfzplzyogsnjprhweigq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"krmolrfvpngfpsrbkbnbnordjljmjrjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzutuwnrgwnrxraohwjjypqmlukkyvla","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agrymhvbjtemfdveawpqlygdredluxnp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eecexeicnfmjujeleygrejprbbbwnokk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wtxmkvxgmawysxnmiqiksamvogqqqnnr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ulyffyteadohizpzjlxtrmpqypwsrrnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfybkiklzzdzfsbywdyylykugpnhkgaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qljqmcrdvlkaxlqfoceaozbhuurpaxvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ifcjufjpyrhclmzagaylzumbirsqrgks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lexwpxziqiewjbhdhgpbvuadffkhqdby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uwezgivelewblxjlrhijzxgovnfzxksr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvrwludsbhbptelekuubdxtbekywadqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfemensbhzzfhbbqzqgdwqhdrbktrvyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yvafbqdmiiackdqsyxxspptontjxutks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlrjcebxcsuabbynqkkvmizgsucfripr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pknkodsqajeapicvosltcexfyqcxmziq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"slwclvreufbnaddqcjlfgyvxhowkizdo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sppugvmioxyvlbngrdhitvusckfrdmvz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jqpaymmrlnotjmlbpjpafjkhihxpewch","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"beuwgwuglfhzyoukemiupqhawquenxkk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwbmrewomldrmdjjqygagczkuzcwdzdn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvsgydxguwwjvhfcctbrjxtmxibhigbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxwggjvfebcspvxkjdwwbnnxtzhpysgk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smdkmgwxozxidgxqhpleclmbedyldvin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oistfhndwaasbiumsirancreafpasljm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmxeddawffjcdvaacwthptjhbwzxpvpi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxrplupogodgavyzircgipctehrfhtti","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkstfsdpsmeevxsawuaxsmxppacktbpj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bwjcnocssyrpaerrhfbfupluhotoxhlk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxgwxhqjdumopsogwgyjvunxuqyzprlt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtbyhbywgypvrzynbwwfemfipownakkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcedbkcjuxiwmrzrtwosbyubjdyzmawu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vnthvdsnsnvajssrkpaqymosqhsigpht","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"maadxvdtczvqkfqkqigpmdmxiwxnqmcb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywnlcofxxykblvvmakpakmmvffylyapk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vwvwttxzmfkuzsxvdiqjzonsvgqwyqlq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxzftkdqrtujpywzhyjmlxebqsedttft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uukuylxjkczfrlyrkqfqctfafhlaisvi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rndfsyoiwmizcvtcqwlstizzotrpmbrv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"viparsmasydsczhbdanwjjqmckitrvku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wghihlglahhyqgkfgppuxliplwkrxzst","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pyykejaiuattzzhjypuyshzbkimxivin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xmwgsnvyeyegfbcordcafjrezxyjzxpn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwyljjyayvmegjpffkbqjennwzcrqqfs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"usfrqbrhlopaovqtlzyfyewjamzqouex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ahytajcmwoarecmtfsrgbiunvjikqqgg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jnzwlrbudsqmmwccwfxdevhzhlibxxqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqoyjgenxmsqmmiixqyriyiotlelitni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvuofuxzvlovoytwrlmafeabveyfjwtj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvopaewvdxwvtmshjxwpcxeljvmumxxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uurserznrdupdvbavcwdypxlkdplblrs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nyqvqrfycwodsmpfuxdofmuualbccqwy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejptuiblfebkthcguearqwekliddnckz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znyefvlhloqjfkppcxboefafnnrmgzub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekmyxyaqighvhdvswaabozuzqhcuszdp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ednejtggfbsvmjitlnrvghbsddyamhei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynluinwcwmsqcpnttyvmqnnpdjpiithx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ufpdwigzglybcrvhxrlgkbimkfbaajdz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"plauekzralcalgiubqeuqtmloojzjhfe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gefromgwfbwhwhkctyobdcyhnnvwcmvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgwqdxpzuwlxdtcosxcsxnybcwleqnwg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdqxmgcmjympexdggmkznddvhdjqerkm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mldlzokyiuhautdqzobfvivcxzuzgvig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbfugkaqljxlnlyvzyagnznhqmsioglg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhwatwqqlmscngtncpobyfllkjomgphf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lkvtaplzwzxcqeqknxthvmfrjtwgmnuv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qffvzpoeahmkewnyvxrtuqgpwacxxjli","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"keavxwuxkpneyjwjeqsflqcafielpujy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqsrrzjzupkacfddwzljppzjsrfqgcdt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjfihdcducbipvidbhszsyveelsnvpph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tksvzwpbhohpmsmipzejdbfaxseanznb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtfytirxbtjrfyrlwmdffqytzwkrgpds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lkyvsivxmoertqqiyaizviesggzomvtl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672235,"databaseName":"models_schema","ddl":"CREATE TABLE `vvukznvxvqlrpqvbrbvlexzlwndtibeh` (\n `mdctvtvtjqjuthhlvtudzjbqeoguwyzb` int NOT NULL,\n `gcaoyaqjgpjhgfjmldkfbvjtifhxwpeq` int DEFAULT NULL,\n `ytofztdtiqlzfbmqniubffpcyqufzxie` int DEFAULT NULL,\n `zikesmixirncxrwyphhhamgaacdnuoui` int DEFAULT NULL,\n `yhvhwhmcethnrhcjejxyrphtcxzdsvhs` int DEFAULT NULL,\n `eafuylrrpkcaeautmsqhqivmvqienhbv` int DEFAULT NULL,\n `nsoxlglriljqmuwniwhakmegqjzaowfo` int DEFAULT NULL,\n `yslijnqgvdmjeohrrlutqszvvfcbuity` int DEFAULT NULL,\n `zesknbibqewdsqeyftculoslqovhygnb` int DEFAULT NULL,\n `hdxqyznzjwkmsctvgfyjjufvkyclskqq` int DEFAULT NULL,\n `pahbwcaoxgrvunxsbjeixpdwhufngfan` int DEFAULT NULL,\n `hdfuirddmcqirrwlqyixqcsjfxdjemeq` int DEFAULT NULL,\n `smbwgrtbpwlpcbrblixkgcktydsqlekf` int DEFAULT NULL,\n `yjospdlsblyvllctengoqucujpoqpkfx` int DEFAULT NULL,\n `znfzxnpjkwzicntdcthkksoqcltfjjbl` int DEFAULT NULL,\n `innllzgqfmfkqkxwsoofckasyewykqsj` int DEFAULT NULL,\n `evulmrpiyhpnhfufxzdyadjpebtdfmbf` int DEFAULT NULL,\n `oyabfbtgvjvzzvfanbhqpctcjbgjlloi` int DEFAULT NULL,\n `anmgqvjruzlwaesavpjtswlyctzpgfqk` int DEFAULT NULL,\n `lsunupxulancgunrrxdlnhmysvkidogt` int DEFAULT NULL,\n `tnpwvrnxfjlulrhwpmhetjelzfwihefw` int DEFAULT NULL,\n `wekjakucgufnsliygbkekdqvkztybcbu` int DEFAULT NULL,\n `hirfdntpfjlpcdsdottorizgwajyonbe` int DEFAULT NULL,\n `defdbrmtgvnwudtrhzeebvitjocevbit` int DEFAULT NULL,\n `uelcrukrkquprrmtozctltyabpukkzxy` int DEFAULT NULL,\n `pgyqtnjdbhezkhoyrzhgxfjqopveheud` int DEFAULT NULL,\n `nblghyqgsumifchagjrrxdjvtqjhuswn` int DEFAULT NULL,\n `ergqntibvqavtughecnsppcqfzuqenpi` int DEFAULT NULL,\n `ntqjgbznobjtiiqbuipiudvhqrznxusj` int DEFAULT NULL,\n `zehcfsoufhmuhpxppawqsyzrxcgszgra` int DEFAULT NULL,\n `nbqitdoklypbmheoduedrtgtlnhcokga` int DEFAULT NULL,\n `bkuxjpyxuavvxdvlqzjyjxpekanowvhz` int DEFAULT NULL,\n `rcaxtgzafvvrpinyjxcmhtlydshwiucy` int DEFAULT NULL,\n `uoolonlkntaumxeckeioowarxmtyqole` int DEFAULT NULL,\n `regwiqmwmberljaiauihoxxusmcyigef` int DEFAULT NULL,\n `iuxidbhaachychevjioocdajxklinvrr` int DEFAULT NULL,\n `juiufsxyqafenelabaldrkqbbamunzbz` int DEFAULT NULL,\n `zejjwjcxutuvlsnadbecnkvrzkazpvqo` int DEFAULT NULL,\n `mgyjdimludfwkfvgescztymvjperhnjv` int DEFAULT NULL,\n `bbyndjcyeyoqinkkdyqdnrsmvgfokxem` int DEFAULT NULL,\n `nrqpauqwjkapmummllmjykrsiwtgrssh` int DEFAULT NULL,\n `yuxzkzerlnlrtonbnroqqbkexzpexiqr` int DEFAULT NULL,\n `tyrvvbqybeaunokiruhtanmzkbxbkbac` int DEFAULT NULL,\n `eqcamtatukrivzanoohyukvwlalxzbrz` int DEFAULT NULL,\n `ggyyujheihnmfzjdmkkkyldyfcqyiuev` int DEFAULT NULL,\n `quyajwbxamgyrmyqopsxqrnotexugiif` int DEFAULT NULL,\n `jhrcxkzpthcbflarpigqidhsycaczxwr` int DEFAULT NULL,\n `yzqkfixrbwocgyyvkzkvrxhfetdiaeld` int DEFAULT NULL,\n `durhcifjukbscjvpbrkjctvzqohciyib` int DEFAULT NULL,\n `myemuvfjjfndkbryxxafxpjrfgevympl` int DEFAULT NULL,\n `gnbpxboqbfspecukfseabkoueyblguie` int DEFAULT NULL,\n `hgtyrlagayhsuagbwtpzoiyfzprvffta` int DEFAULT NULL,\n `ajsvobeocvlrzissuotwgngdxytajrvu` int DEFAULT NULL,\n `beottpftlqrbmdkmxlbkvwyrnypdfpqb` int DEFAULT NULL,\n `sdzmutzfxzmehtgnnaskznaphalhyqwd` int DEFAULT NULL,\n `rouedbfsptkmybanjadheynhfjhphtej` int DEFAULT NULL,\n `mmxqhacuvdhvhtlrjhiqyybrukubdvqp` int DEFAULT NULL,\n `oozsjsggcuywvsuwhcffwmjptjqpsnpg` int DEFAULT NULL,\n `nunzsxdawafuxnvxbjdpctjwqejjjzdl` int DEFAULT NULL,\n `rihpafyydmjlhpyftfylhrxxnfkkktci` int DEFAULT NULL,\n `jmlygiciszbbwawygkedgppdavchfdsx` int DEFAULT NULL,\n `zaimirmugtkwdkdmlbhvamjazqfgslvc` int DEFAULT NULL,\n `nkmslyeogsvekbqqunbnogwrbvdysohi` int DEFAULT NULL,\n `jfvjeuyubfzyvrjcpeygaymhoimlpkkc` int DEFAULT NULL,\n `bsnlaxkkzdxbqumjdswjtkvboivpzzxb` int DEFAULT NULL,\n `slkkiodenchewkrjqurlilhrxhosecbj` int DEFAULT NULL,\n `eirmfkagzlusiibhbrdcrfrgnlgwxfal` int DEFAULT NULL,\n `dcsrqljfjgcvomhhgwaggbhppgvimjmh` int DEFAULT NULL,\n `aqcjuybfnyrenwfcqxauvdmcjktauzyt` int DEFAULT NULL,\n `wxhipxblpokmbvugzeeyemihjrcbcmgb` int DEFAULT NULL,\n `btaucrufmzvmfuhhbtqlsfdevyxrniei` int DEFAULT NULL,\n `hnyrcgdeuolqqutxndnqhisnhcwttnut` int DEFAULT NULL,\n `aoiqbrnctxcpsowryovibrvbxzavmbao` int DEFAULT NULL,\n `zwwishlujdrkbpiwcuakjmmrllfjvrlw` int DEFAULT NULL,\n `hnbpuyfjkypfzeqshqglotcrlfdypigb` int DEFAULT NULL,\n `uiegbqgbujvypoyhpbhgvuynmcvpxhxt` int DEFAULT NULL,\n `kvxzxquttkhzvfymmigacddpnjxhtvqc` int DEFAULT NULL,\n `mpiasiyepqycyvhtltjbqcpohosrceyu` int DEFAULT NULL,\n `nvnlbzkcaifghrickzpwiwmkcupneblg` int DEFAULT NULL,\n `glmqqzmktmeyitfjsbirauzxcfdxjrll` int DEFAULT NULL,\n `rhwgyyezlhqjyclenrtsfuuejlauttds` int DEFAULT NULL,\n `eajnmzdmeosdrntqidopfukuvavxtcoh` int DEFAULT NULL,\n `mrwpachhwgoqzfbyqudlsxszvxadxwmh` int DEFAULT NULL,\n `fnvzyvhbvxqekqsavpxkyvoithajdkly` int DEFAULT NULL,\n `plktqrrgrhadvdoioknyhkzfbmnrkbqg` int DEFAULT NULL,\n `vgahvkksppwpbumekojskqgfkottdqxs` int DEFAULT NULL,\n `rkwmzijtuqwusemdhloqjtgsepngtmsn` int DEFAULT NULL,\n `enheojilidvztsbrigfroycklekqfsds` int DEFAULT NULL,\n `xqmegyvnxuaricnhnhghgklhyiqfwjqu` int DEFAULT NULL,\n `yqrxmuikptzckvmcupmmlgzifacjmmwi` int DEFAULT NULL,\n `cgtoihsjjzfmwxqammdsmethaqnzbbyy` int DEFAULT NULL,\n `krguwozhmnyjafedmypprgkurnkdqmfx` int DEFAULT NULL,\n `kfsaxlbuswadtnatdhmwsaiaxxxniwml` int DEFAULT NULL,\n `hogqbbsyipeaexbvjrnclelqrcosmcjk` int DEFAULT NULL,\n `ssctlwteizemqwyntawduesoshmhibie` int DEFAULT NULL,\n `edpgdxiyqheqkcagsqoqovcrlfsxjhhm` int DEFAULT NULL,\n `zdhxprrkavvqocmucikodzqlpnmmrypa` int DEFAULT NULL,\n `cvnisurkaaxqwlhpjffjthpdcembkgzf` int DEFAULT NULL,\n `yhcgmhqhtzrcsznchemitlbfhmdyhqcf` int DEFAULT NULL,\n `jmbtgghjhmwcbpktwnbejauyvhzsprwa` int DEFAULT NULL,\n PRIMARY KEY (`mdctvtvtjqjuthhlvtudzjbqeoguwyzb`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"vvukznvxvqlrpqvbrbvlexzlwndtibeh\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["mdctvtvtjqjuthhlvtudzjbqeoguwyzb"],"columns":[{"name":"mdctvtvtjqjuthhlvtudzjbqeoguwyzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"gcaoyaqjgpjhgfjmldkfbvjtifhxwpeq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytofztdtiqlzfbmqniubffpcyqufzxie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zikesmixirncxrwyphhhamgaacdnuoui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhvhwhmcethnrhcjejxyrphtcxzdsvhs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eafuylrrpkcaeautmsqhqivmvqienhbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nsoxlglriljqmuwniwhakmegqjzaowfo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yslijnqgvdmjeohrrlutqszvvfcbuity","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zesknbibqewdsqeyftculoslqovhygnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdxqyznzjwkmsctvgfyjjufvkyclskqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pahbwcaoxgrvunxsbjeixpdwhufngfan","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdfuirddmcqirrwlqyixqcsjfxdjemeq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smbwgrtbpwlpcbrblixkgcktydsqlekf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjospdlsblyvllctengoqucujpoqpkfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znfzxnpjkwzicntdcthkksoqcltfjjbl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"innllzgqfmfkqkxwsoofckasyewykqsj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evulmrpiyhpnhfufxzdyadjpebtdfmbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oyabfbtgvjvzzvfanbhqpctcjbgjlloi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"anmgqvjruzlwaesavpjtswlyctzpgfqk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lsunupxulancgunrrxdlnhmysvkidogt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnpwvrnxfjlulrhwpmhetjelzfwihefw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wekjakucgufnsliygbkekdqvkztybcbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hirfdntpfjlpcdsdottorizgwajyonbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"defdbrmtgvnwudtrhzeebvitjocevbit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uelcrukrkquprrmtozctltyabpukkzxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgyqtnjdbhezkhoyrzhgxfjqopveheud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nblghyqgsumifchagjrrxdjvtqjhuswn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ergqntibvqavtughecnsppcqfzuqenpi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntqjgbznobjtiiqbuipiudvhqrznxusj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zehcfsoufhmuhpxppawqsyzrxcgszgra","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbqitdoklypbmheoduedrtgtlnhcokga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkuxjpyxuavvxdvlqzjyjxpekanowvhz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcaxtgzafvvrpinyjxcmhtlydshwiucy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uoolonlkntaumxeckeioowarxmtyqole","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"regwiqmwmberljaiauihoxxusmcyigef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iuxidbhaachychevjioocdajxklinvrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"juiufsxyqafenelabaldrkqbbamunzbz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zejjwjcxutuvlsnadbecnkvrzkazpvqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mgyjdimludfwkfvgescztymvjperhnjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbyndjcyeyoqinkkdyqdnrsmvgfokxem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nrqpauqwjkapmummllmjykrsiwtgrssh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yuxzkzerlnlrtonbnroqqbkexzpexiqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tyrvvbqybeaunokiruhtanmzkbxbkbac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqcamtatukrivzanoohyukvwlalxzbrz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggyyujheihnmfzjdmkkkyldyfcqyiuev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"quyajwbxamgyrmyqopsxqrnotexugiif","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jhrcxkzpthcbflarpigqidhsycaczxwr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzqkfixrbwocgyyvkzkvrxhfetdiaeld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"durhcifjukbscjvpbrkjctvzqohciyib","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"myemuvfjjfndkbryxxafxpjrfgevympl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnbpxboqbfspecukfseabkoueyblguie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hgtyrlagayhsuagbwtpzoiyfzprvffta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajsvobeocvlrzissuotwgngdxytajrvu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"beottpftlqrbmdkmxlbkvwyrnypdfpqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdzmutzfxzmehtgnnaskznaphalhyqwd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rouedbfsptkmybanjadheynhfjhphtej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmxqhacuvdhvhtlrjhiqyybrukubdvqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oozsjsggcuywvsuwhcffwmjptjqpsnpg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nunzsxdawafuxnvxbjdpctjwqejjjzdl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rihpafyydmjlhpyftfylhrxxnfkkktci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmlygiciszbbwawygkedgppdavchfdsx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zaimirmugtkwdkdmlbhvamjazqfgslvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nkmslyeogsvekbqqunbnogwrbvdysohi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jfvjeuyubfzyvrjcpeygaymhoimlpkkc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bsnlaxkkzdxbqumjdswjtkvboivpzzxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"slkkiodenchewkrjqurlilhrxhosecbj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eirmfkagzlusiibhbrdcrfrgnlgwxfal","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcsrqljfjgcvomhhgwaggbhppgvimjmh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqcjuybfnyrenwfcqxauvdmcjktauzyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxhipxblpokmbvugzeeyemihjrcbcmgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"btaucrufmzvmfuhhbtqlsfdevyxrniei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hnyrcgdeuolqqutxndnqhisnhcwttnut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aoiqbrnctxcpsowryovibrvbxzavmbao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zwwishlujdrkbpiwcuakjmmrllfjvrlw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hnbpuyfjkypfzeqshqglotcrlfdypigb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uiegbqgbujvypoyhpbhgvuynmcvpxhxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvxzxquttkhzvfymmigacddpnjxhtvqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpiasiyepqycyvhtltjbqcpohosrceyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvnlbzkcaifghrickzpwiwmkcupneblg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"glmqqzmktmeyitfjsbirauzxcfdxjrll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhwgyyezlhqjyclenrtsfuuejlauttds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eajnmzdmeosdrntqidopfukuvavxtcoh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrwpachhwgoqzfbyqudlsxszvxadxwmh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnvzyvhbvxqekqsavpxkyvoithajdkly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"plktqrrgrhadvdoioknyhkzfbmnrkbqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgahvkksppwpbumekojskqgfkottdqxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkwmzijtuqwusemdhloqjtgsepngtmsn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"enheojilidvztsbrigfroycklekqfsds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqmegyvnxuaricnhnhghgklhyiqfwjqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqrxmuikptzckvmcupmmlgzifacjmmwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgtoihsjjzfmwxqammdsmethaqnzbbyy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"krguwozhmnyjafedmypprgkurnkdqmfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfsaxlbuswadtnatdhmwsaiaxxxniwml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hogqbbsyipeaexbvjrnclelqrcosmcjk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ssctlwteizemqwyntawduesoshmhibie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edpgdxiyqheqkcagsqoqovcrlfsxjhhm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdhxprrkavvqocmucikodzqlpnmmrypa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvnisurkaaxqwlhpjffjthpdcembkgzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhcgmhqhtzrcsznchemitlbfhmdyhqcf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmbtgghjhmwcbpktwnbejauyvhzsprwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672267,"databaseName":"models_schema","ddl":"CREATE TABLE `wchuegpxotggojpmappheurpxfrcivka` (\n `trqbqtburynwdzamokaftzhytjymdyhw` int NOT NULL,\n `kamunjhnasyejoulaiurvrffbbikwtfc` int DEFAULT NULL,\n `cpyncfjqeqrxwwuboeycclqgcvptryql` int DEFAULT NULL,\n `bisobjttedwpkwylusarfiwodftnlduu` int DEFAULT NULL,\n `wagyeznsqlhnvsikfegrblrpxxfieuas` int DEFAULT NULL,\n `wirgbojhctbzdluuwsgcmwugsxuepbld` int DEFAULT NULL,\n `wqrswkdyrgjpqcyiptvksjwectbhfxbk` int DEFAULT NULL,\n `byzfjcaxhhklsntrahvpkeefqsliiujh` int DEFAULT NULL,\n `bzwbyxsyxxurqhiogavxxszfbkbrtnus` int DEFAULT NULL,\n `vlehyownqkqkqwqsuangcemdnbavmdfu` int DEFAULT NULL,\n `fkahhrhhmrzwaunxbmqkawggnffloyzj` int DEFAULT NULL,\n `jwlwallycumlycvxufndlzoedlhqptup` int DEFAULT NULL,\n `bvfudxhymzhdzfzdkeraxclmpptmqzwh` int DEFAULT NULL,\n `ahocmewiheqeeaqlcnjhhhmfttubjwce` int DEFAULT NULL,\n `sxlslkhfymoyhizxfyqzqrmddakzyguw` int DEFAULT NULL,\n `nmzyzzzfdebeobckemyozewsbpsiaemc` int DEFAULT NULL,\n `qpydqreanxihguylhttnzdxvzsrmbcwy` int DEFAULT NULL,\n `gteqfvqdkwgxzqiknsrlgalzznjoipjk` int DEFAULT NULL,\n `zmgitshqypraqlbgklrsqaeqoatmnvdi` int DEFAULT NULL,\n `ytgeetiyhwcsurmxmifcqbfaoqlvbhfu` int DEFAULT NULL,\n `tpyemxugvjgwkmgiztomwxlixhodltpz` int DEFAULT NULL,\n `dhkhrgdkdgbktomduachzsiykorhiqny` int DEFAULT NULL,\n `yogwuubuxjtkjuzbhxuoaprnfxzzyadw` int DEFAULT NULL,\n `wjmknhinanipqyhagndciaxgrdctqyyb` int DEFAULT NULL,\n `gssbvdenmqomvkdtgdhqbwpmceeewrrr` int DEFAULT NULL,\n `hkmnkgohxzprziewyljlvxipwefxodkx` int DEFAULT NULL,\n `trlyinnzizrgkheqsjkscnhimqrkxwfw` int DEFAULT NULL,\n `reqnljfmjsiqocsfxnvjiavibgryfueq` int DEFAULT NULL,\n `rnnvmrlqlmxxhpchbxejdfzhzgfxgswc` int DEFAULT NULL,\n `ipxbyfczksjznkhwopenypxyrbpatlbv` int DEFAULT NULL,\n `thudxinfgcyaxrfhgoerxtconcfxyfio` int DEFAULT NULL,\n `xkjsaudshzuobawafqstxzdtthbgmplc` int DEFAULT NULL,\n `zjextsggnnrjfgwchsywfnvblvukzqxr` int DEFAULT NULL,\n `qsjmjgnttlqhxdrrktvrazzwztuzqtyq` int DEFAULT NULL,\n `esaeptpummjdiblnkadgblqtapcqeeji` int DEFAULT NULL,\n `cogvwonwqselffpnfnzaajywrmbylmny` int DEFAULT NULL,\n `sovrtwfhysgfqlixvirglwgzrwtjjajw` int DEFAULT NULL,\n `bkjdnymavxgdtgchoolucblnofcvpwvb` int DEFAULT NULL,\n `alyepffdvyvdwrkyjskykscpzhpbjmxi` int DEFAULT NULL,\n `uofyhjblewnxkcamlbaddhdbggzcxqto` int DEFAULT NULL,\n `eihmwyzykdtxgzranthlmdakhffwwjhd` int DEFAULT NULL,\n `vvcighhgeyplnzooyvsdjbbwgccmkvux` int DEFAULT NULL,\n `scfkknxlaowaqhqxfqtudhuygrmixasp` int DEFAULT NULL,\n `ifwqocixudurxeywyncrvnonzptlaalf` int DEFAULT NULL,\n `onnahdhtncmaknddjgnjadpjmqamkmsv` int DEFAULT NULL,\n `xubgbktgfzvbneoxvvviekzvmkgmfdqi` int DEFAULT NULL,\n `nlddyuiancrqpcosqzakutscqjapmzwa` int DEFAULT NULL,\n `xioesqfupnsokmxyaathvrhcvzpglwsx` int DEFAULT NULL,\n `kisfbgpjmoupsziixtaoshfhephuxlgp` int DEFAULT NULL,\n `qolpstnvsbaitgqnklxdrepbhcnoocpl` int DEFAULT NULL,\n `wgtgxdtlbyzeyljnddveawbqlmabydxc` int DEFAULT NULL,\n `lqyxbteiomwdrgskztocuozjdcrypnvq` int DEFAULT NULL,\n `nngdjurtqhnoqqwtpnwxsgqjmpymqivp` int DEFAULT NULL,\n `eijljflxspchwgnnxznsrccwxfmrsvhe` int DEFAULT NULL,\n `mqgoggjvtnrduomuxbicpluomlbxmcid` int DEFAULT NULL,\n `mnpxacgttkbczphqogqawxemkcvxrngo` int DEFAULT NULL,\n `uvktafrqehxgijwibvpuzcfskeoenryw` int DEFAULT NULL,\n `kkldtvcuoqftuzqophoriufnkkacwywm` int DEFAULT NULL,\n `yanmjiwpormyrhbrwqugzgbsbqcgvmfu` int DEFAULT NULL,\n `oeqpwyvfxhtwxawticmxdxlxozuocatq` int DEFAULT NULL,\n `wjeklxcizrsgmntipsqpnhkncylqygyw` int DEFAULT NULL,\n `urgkxgpvuojrarbeuxqbmacxtlwtaxpd` int DEFAULT NULL,\n `ikeckcffkurhooebnagnxvkashltuowg` int DEFAULT NULL,\n `alrwxslpwwgjyvduxgkgmpdjmbmxmmxx` int DEFAULT NULL,\n `jpqylgcqnpsymxmdfoqffuapwzpacngg` int DEFAULT NULL,\n `ozadavxmlxdbmoolrolaslunxzigcyvr` int DEFAULT NULL,\n `vmekeennuttxaajgswxblymjrjqkcuwb` int DEFAULT NULL,\n `xsdgwcxyetzxqnwwdbdwxdtjeevdtrpi` int DEFAULT NULL,\n `zzezxnugykhidheoixozzmtzlbluflie` int DEFAULT NULL,\n `ydrdgupxmxkrxidgwctbtstneupbvgra` int DEFAULT NULL,\n `qfrowoznhcjabuvlzrdaogkgwlqqpokl` int DEFAULT NULL,\n `uilasjnzsnydwfdvhhdlqttonpebpdtf` int DEFAULT NULL,\n `qblzmugxnmmwakezzgmuebendcvpnqwc` int DEFAULT NULL,\n `bffcmkgsnlwvlmvxzugdxirknuiplkdl` int DEFAULT NULL,\n `mfrxamxmgpdptexvdljjhegbifapoutq` int DEFAULT NULL,\n `nnuornqigjjhmipaulekzhdllxtjofqa` int DEFAULT NULL,\n `hqvhoyysafesspobpetmkjdluemxuisf` int DEFAULT NULL,\n `uskrwembkzfazretrspyyppqmdwkoeir` int DEFAULT NULL,\n `xffgwlucmidvruycvrqgyplvelhoadnx` int DEFAULT NULL,\n `kvxzsruonrlbwprofcqjsvtqdrneerql` int DEFAULT NULL,\n `ecefjqvuzfvkuidalicxdtxmdeozjwqz` int DEFAULT NULL,\n `rsdnphglgcmdmufrdwdecswunimwzbqg` int DEFAULT NULL,\n `gsgikkotdwdvambivgzrxhxrfugennco` int DEFAULT NULL,\n `nnpdcunfgouzoclahpcsjhcidgbcbbor` int DEFAULT NULL,\n `sagbyharjoaapjwsplhxebncpsjjmzdr` int DEFAULT NULL,\n `vgtqzzfxnjugladmyvnwcyztfarpltny` int DEFAULT NULL,\n `qgomtfllkaxvzuyganxunasmnumtorpq` int DEFAULT NULL,\n `wwtsjehqdzjlptbrwwjlauxhqbxcviwm` int DEFAULT NULL,\n `fpoiijyvgtuwhlfywbprkjnfgnlcygze` int DEFAULT NULL,\n `prbijrjjpvaoijbknuiwzdqouhsaygnb` int DEFAULT NULL,\n `vkrqtjwebhxlnauuymyqvzvlwfvyhlth` int DEFAULT NULL,\n `raxqcmjsivcqnemwjwnmoyurrhcnfllr` int DEFAULT NULL,\n `pzvugwojewkatfpeazxrpqyemaldoheb` int DEFAULT NULL,\n `dirkyxsbwqwxqyyhjckafxxhdximpnxa` int DEFAULT NULL,\n `pkpoacbxjrjxdfqffwwbzoauiczsxzev` int DEFAULT NULL,\n `fdxoevimdbttyzlqynhovydtmqpucexo` int DEFAULT NULL,\n `zvpgzluzwqejbmrjlacwjcwrqhfiqnex` int DEFAULT NULL,\n `muuypyscnliwadmtzyypatfeqnbbiciz` int DEFAULT NULL,\n `vaskqyugdtisvammbnkjangpuhelhbhq` int DEFAULT NULL,\n `mwbzqbmpuvejpvnaxayyqolfddyempig` int DEFAULT NULL,\n PRIMARY KEY (`trqbqtburynwdzamokaftzhytjymdyhw`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"wchuegpxotggojpmappheurpxfrcivka\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["trqbqtburynwdzamokaftzhytjymdyhw"],"columns":[{"name":"trqbqtburynwdzamokaftzhytjymdyhw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"kamunjhnasyejoulaiurvrffbbikwtfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cpyncfjqeqrxwwuboeycclqgcvptryql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bisobjttedwpkwylusarfiwodftnlduu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wagyeznsqlhnvsikfegrblrpxxfieuas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wirgbojhctbzdluuwsgcmwugsxuepbld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqrswkdyrgjpqcyiptvksjwectbhfxbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"byzfjcaxhhklsntrahvpkeefqsliiujh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bzwbyxsyxxurqhiogavxxszfbkbrtnus","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vlehyownqkqkqwqsuangcemdnbavmdfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fkahhrhhmrzwaunxbmqkawggnffloyzj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwlwallycumlycvxufndlzoedlhqptup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvfudxhymzhdzfzdkeraxclmpptmqzwh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ahocmewiheqeeaqlcnjhhhmfttubjwce","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sxlslkhfymoyhizxfyqzqrmddakzyguw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmzyzzzfdebeobckemyozewsbpsiaemc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qpydqreanxihguylhttnzdxvzsrmbcwy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gteqfvqdkwgxzqiknsrlgalzznjoipjk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmgitshqypraqlbgklrsqaeqoatmnvdi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytgeetiyhwcsurmxmifcqbfaoqlvbhfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpyemxugvjgwkmgiztomwxlixhodltpz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhkhrgdkdgbktomduachzsiykorhiqny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yogwuubuxjtkjuzbhxuoaprnfxzzyadw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjmknhinanipqyhagndciaxgrdctqyyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gssbvdenmqomvkdtgdhqbwpmceeewrrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkmnkgohxzprziewyljlvxipwefxodkx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"trlyinnzizrgkheqsjkscnhimqrkxwfw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"reqnljfmjsiqocsfxnvjiavibgryfueq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnnvmrlqlmxxhpchbxejdfzhzgfxgswc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ipxbyfczksjznkhwopenypxyrbpatlbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thudxinfgcyaxrfhgoerxtconcfxyfio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkjsaudshzuobawafqstxzdtthbgmplc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjextsggnnrjfgwchsywfnvblvukzqxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qsjmjgnttlqhxdrrktvrazzwztuzqtyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"esaeptpummjdiblnkadgblqtapcqeeji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cogvwonwqselffpnfnzaajywrmbylmny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sovrtwfhysgfqlixvirglwgzrwtjjajw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkjdnymavxgdtgchoolucblnofcvpwvb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"alyepffdvyvdwrkyjskykscpzhpbjmxi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uofyhjblewnxkcamlbaddhdbggzcxqto","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eihmwyzykdtxgzranthlmdakhffwwjhd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vvcighhgeyplnzooyvsdjbbwgccmkvux","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"scfkknxlaowaqhqxfqtudhuygrmixasp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ifwqocixudurxeywyncrvnonzptlaalf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"onnahdhtncmaknddjgnjadpjmqamkmsv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xubgbktgfzvbneoxvvviekzvmkgmfdqi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nlddyuiancrqpcosqzakutscqjapmzwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xioesqfupnsokmxyaathvrhcvzpglwsx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kisfbgpjmoupsziixtaoshfhephuxlgp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qolpstnvsbaitgqnklxdrepbhcnoocpl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wgtgxdtlbyzeyljnddveawbqlmabydxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqyxbteiomwdrgskztocuozjdcrypnvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nngdjurtqhnoqqwtpnwxsgqjmpymqivp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eijljflxspchwgnnxznsrccwxfmrsvhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqgoggjvtnrduomuxbicpluomlbxmcid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnpxacgttkbczphqogqawxemkcvxrngo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvktafrqehxgijwibvpuzcfskeoenryw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kkldtvcuoqftuzqophoriufnkkacwywm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yanmjiwpormyrhbrwqugzgbsbqcgvmfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oeqpwyvfxhtwxawticmxdxlxozuocatq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjeklxcizrsgmntipsqpnhkncylqygyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urgkxgpvuojrarbeuxqbmacxtlwtaxpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikeckcffkurhooebnagnxvkashltuowg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"alrwxslpwwgjyvduxgkgmpdjmbmxmmxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jpqylgcqnpsymxmdfoqffuapwzpacngg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ozadavxmlxdbmoolrolaslunxzigcyvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vmekeennuttxaajgswxblymjrjqkcuwb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsdgwcxyetzxqnwwdbdwxdtjeevdtrpi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzezxnugykhidheoixozzmtzlbluflie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydrdgupxmxkrxidgwctbtstneupbvgra","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfrowoznhcjabuvlzrdaogkgwlqqpokl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uilasjnzsnydwfdvhhdlqttonpebpdtf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qblzmugxnmmwakezzgmuebendcvpnqwc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bffcmkgsnlwvlmvxzugdxirknuiplkdl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mfrxamxmgpdptexvdljjhegbifapoutq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nnuornqigjjhmipaulekzhdllxtjofqa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqvhoyysafesspobpetmkjdluemxuisf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uskrwembkzfazretrspyyppqmdwkoeir","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xffgwlucmidvruycvrqgyplvelhoadnx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvxzsruonrlbwprofcqjsvtqdrneerql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecefjqvuzfvkuidalicxdtxmdeozjwqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rsdnphglgcmdmufrdwdecswunimwzbqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gsgikkotdwdvambivgzrxhxrfugennco","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nnpdcunfgouzoclahpcsjhcidgbcbbor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sagbyharjoaapjwsplhxebncpsjjmzdr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgtqzzfxnjugladmyvnwcyztfarpltny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qgomtfllkaxvzuyganxunasmnumtorpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwtsjehqdzjlptbrwwjlauxhqbxcviwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpoiijyvgtuwhlfywbprkjnfgnlcygze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prbijrjjpvaoijbknuiwzdqouhsaygnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkrqtjwebhxlnauuymyqvzvlwfvyhlth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"raxqcmjsivcqnemwjwnmoyurrhcnfllr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pzvugwojewkatfpeazxrpqyemaldoheb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dirkyxsbwqwxqyyhjckafxxhdximpnxa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkpoacbxjrjxdfqffwwbzoauiczsxzev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fdxoevimdbttyzlqynhovydtmqpucexo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvpgzluzwqejbmrjlacwjcwrqhfiqnex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"muuypyscnliwadmtzyypatfeqnbbiciz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vaskqyugdtisvammbnkjangpuhelhbhq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwbzqbmpuvejpvnaxayyqolfddyempig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672301,"databaseName":"models_schema","ddl":"CREATE TABLE `wcvjylwqhadvqltmecxwsuarjnpxvtmi` (\n `hwoioengswxhaousojdmujwdgvnsopyh` int NOT NULL,\n `ygbqztvjtloqokcbjyirnwwbsokopzgo` int DEFAULT NULL,\n `feuwuqeviwyjflxzyqkqehzvzbxgkepi` int DEFAULT NULL,\n `htyrtlqymuijmtqwuhtrdcylstthbdjz` int DEFAULT NULL,\n `kdcyppphiyydjcwdeszamfhxlmyjpagx` int DEFAULT NULL,\n `bzrlkizngsxanpdaeiuygkegkwnpdcud` int DEFAULT NULL,\n `thfachmzoldxuxmvruvejemfycatffea` int DEFAULT NULL,\n `irqxyveshnihmyrfvqgepnmdsfwgcyeh` int DEFAULT NULL,\n `ctexmhdheowplqxglhhuzgexbcmsfzxu` int DEFAULT NULL,\n `fcfvhcggwgxjwubtsqsftwdmdjvuzsvs` int DEFAULT NULL,\n `qhekmvrulfzwhqomtonpqxrjwfecehjj` int DEFAULT NULL,\n `cooghbotyseqoqjxkswtrzubuiketwkv` int DEFAULT NULL,\n `lalojbdcseyuurniymwiladhefvmjmyr` int DEFAULT NULL,\n `nfkxrvbiplyjemyaivmvjtzpzbnwsnbj` int DEFAULT NULL,\n `aceabxehfkmhkzlxqgtjdgrnikjzyexf` int DEFAULT NULL,\n `tjoeapuddyxofdmtjvojtmurohvyzlsq` int DEFAULT NULL,\n `qfllyddgextczsbjcushulttyemnhsor` int DEFAULT NULL,\n `bpnvlypsyeqlrjkjljztkvdeifharapl` int DEFAULT NULL,\n `llaxkrtsikhsipgkgraqmldvxratspac` int DEFAULT NULL,\n `atfatwgkaoioewevtdhpbdcrvpbufzbq` int DEFAULT NULL,\n `tibionnivktavrcmbvdgmqgwlkumnbdw` int DEFAULT NULL,\n `zivtchdhlmmgkknsvfdtvgksripxaxdm` int DEFAULT NULL,\n `dcvxwuurkvbxhhhxrirwooxyqntfpyda` int DEFAULT NULL,\n `vdhszuhuhdkwejejrwnoaumzcemnyyyv` int DEFAULT NULL,\n `cgiiygdpnxkjshmeyigwpdyqarfsdrlm` int DEFAULT NULL,\n `ivwqepkqurbgcvjoclcedrrmunbwzgcc` int DEFAULT NULL,\n `aoydzuijqgdrrkovehbazlhahdylrysb` int DEFAULT NULL,\n `efqwwrfqeudiccbdfyfvqxqbtoquxdfc` int DEFAULT NULL,\n `qymbfbekrirftzxqxwkkhbunwzpgowly` int DEFAULT NULL,\n `ubieewgdbssyyipcfdyronqqtxaszugz` int DEFAULT NULL,\n `tvndjshgrdnsylnqlusrogvgwnuhxfot` int DEFAULT NULL,\n `ekgepsgzmehkwimqhijdpfkguhsuvrju` int DEFAULT NULL,\n `nugfijbcchbapcxviwvtajlxsqninkvv` int DEFAULT NULL,\n `bmisuoqernejjwotpabuptjxgxvmiuaf` int DEFAULT NULL,\n `orstxtgkmjfujkzdfezzzgurxjjnnrsx` int DEFAULT NULL,\n `ldmqrojxwfegpswwjyfhsvmoodlfhysk` int DEFAULT NULL,\n `guueyudwagfpywuqwebhwlwedswipvyz` int DEFAULT NULL,\n `dmynfoeovrampfosgfzbgiijquqrzffj` int DEFAULT NULL,\n `qrlfjniwancjsmmzzllytirlxzyklnhe` int DEFAULT NULL,\n `ciismtfakyogfrgmnopyyvoljnxpcfok` int DEFAULT NULL,\n `ydlvvtscunvlkjcboiyvpxfdufkvicnt` int DEFAULT NULL,\n `cjqojygzceqcxzsjrnlqnbdjppfzieez` int DEFAULT NULL,\n `gigqtzinxcujsfcyilfuilbebugfxfrx` int DEFAULT NULL,\n `arfubkvatkammcgrvmsxpkmufirrnwtn` int DEFAULT NULL,\n `umvvthxbhpwexcveeizfqzdbpymkbmwr` int DEFAULT NULL,\n `rnqqwnstcqenldhbrqxevwlqncqxpcjd` int DEFAULT NULL,\n `oaevbujhmdcfciwjnzqvlvxpwywgkkmh` int DEFAULT NULL,\n `rsdkhcfwevzqrhejwcpvqjvmhhqxwagw` int DEFAULT NULL,\n `xqkcbrjsjarwjqhtiuovrdknhwhxbzzc` int DEFAULT NULL,\n `wxfdvsdqycregiqjcluvwqovcljpdhwm` int DEFAULT NULL,\n `ewdmaueswsnvtamnvyrjpzzsvkusmlhx` int DEFAULT NULL,\n `iglydquyfpwuzzcmtuxsxbgxfjoygslt` int DEFAULT NULL,\n `xemelbrvukgxgotflodumkwbijugkmuj` int DEFAULT NULL,\n `ansvojrejxjxpmxzbqaykeajptwukzzd` int DEFAULT NULL,\n `evvmwxonaeljshtoakhlqxupnmhgfqyi` int DEFAULT NULL,\n `gkbvkgeivyonlqdwpjnfrfjlkpabaitb` int DEFAULT NULL,\n `fcardrwvqxxknxbwgwjmnyptmlrgoefk` int DEFAULT NULL,\n `ptznegdptdmusfgybzxouonmazshnqiu` int DEFAULT NULL,\n `clhgzduwohmaestjvztplikzbkjogyrn` int DEFAULT NULL,\n `vzipwkisxihdbosmizhvwheqfsdsbkzm` int DEFAULT NULL,\n `vupdrleouoksarjennetiwahcbyajvan` int DEFAULT NULL,\n `jmcvzfpwtsmnlznqnemxfwhlikpaepcc` int DEFAULT NULL,\n `ttuczbmjtrsdzuoimwamqmiufbakuctp` int DEFAULT NULL,\n `hkdoqlsvqzuxluaegoftjwlvqtvqsipa` int DEFAULT NULL,\n `ufphkvkpysonzjzcifwzvvkkapjduiiu` int DEFAULT NULL,\n `iwtirasozsqpuhrgyznvoztxwnkqjqee` int DEFAULT NULL,\n `rpvgittpylqbkwjmhgyftaooapiihdyd` int DEFAULT NULL,\n `vmbudvewhuupybaaenxvfdiiosmpnkqx` int DEFAULT NULL,\n `ziydaskwmbmzqzndepahnzhxkcugbpau` int DEFAULT NULL,\n `indslcrvnykjqybhggrmvkaalooecnyr` int DEFAULT NULL,\n `nmqvageavaziigihslzyhupjwdffmhxr` int DEFAULT NULL,\n `mwjbvnzgkjtgbdiuyvtyriylwsqiavji` int DEFAULT NULL,\n `chetikcyrvpzdtrxkhcxzwdikoifkrpy` int DEFAULT NULL,\n `ffdrgxhihlcwcqhbfqkbblrqkxtbuorc` int DEFAULT NULL,\n `ttcczsqeehuqdqvyshztehqcbnwpvywo` int DEFAULT NULL,\n `ekzclyosbktznklbmqakiylllqajkryf` int DEFAULT NULL,\n `wfebxidsjujlxbhricjsldxjhayaounf` int DEFAULT NULL,\n `uascfyeeiiwtltjjkdtokmgehxwrkcdk` int DEFAULT NULL,\n `dtgzsrsxfrtloakyouzxipvtumatebcz` int DEFAULT NULL,\n `rkokbsqvurbfhlqinzkubdwecwdbkloc` int DEFAULT NULL,\n `wftsktxuksnjooupcswrgbkdxsebabdf` int DEFAULT NULL,\n `vitcxfaumbxhmqxolzouflyfjvukqqpu` int DEFAULT NULL,\n `bwfyvozmahoyzktvgbrgcgmcuwjsmvna` int DEFAULT NULL,\n `mfwoslwjydguhakdqszibvmtnwwawxhd` int DEFAULT NULL,\n `lrehbsnttsjikwmghljoavzsblntwgzk` int DEFAULT NULL,\n `nxpwmzxmavtvgvzwmjbmvhnmovyhsnsn` int DEFAULT NULL,\n `otntcgipufmxhnfznoivtaxmzlgefapl` int DEFAULT NULL,\n `zmztthnesyrfspevnbqzwmtdpuyezono` int DEFAULT NULL,\n `xzdtdbpzznetmqfmbltobifsgtwunauv` int DEFAULT NULL,\n `qtesgwthyvurcuivzumkjalozyoexztj` int DEFAULT NULL,\n `ymllbqepbwydpnbhcwfxvgkzmwtegeys` int DEFAULT NULL,\n `tzltastygoiuxdxepxtuikajmvtnxdrz` int DEFAULT NULL,\n `cdvbduswwyjdmaexhdbgsxbgpvtmjasn` int DEFAULT NULL,\n `htfaxdanncjomxzpiolwovrvlpyfjoku` int DEFAULT NULL,\n `ntpaclusbqhreukppwkofpgmjnmhvfyt` int DEFAULT NULL,\n `hlxngrpefhcfnfdiylayduskfopkdwum` int DEFAULT NULL,\n `hxvsqkgskhdyeafzawexyqmlqrzmmlbk` int DEFAULT NULL,\n `bzaaykqpphyiozxfsprqakpcytnohshq` int DEFAULT NULL,\n `zkzkdvzxojxuddueqjsgxwmrwrjygyre` int DEFAULT NULL,\n `vppbxuhfjhgjwaaeprbsdtgsyvyzvosx` int DEFAULT NULL,\n PRIMARY KEY (`hwoioengswxhaousojdmujwdgvnsopyh`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"wcvjylwqhadvqltmecxwsuarjnpxvtmi\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["hwoioengswxhaousojdmujwdgvnsopyh"],"columns":[{"name":"hwoioengswxhaousojdmujwdgvnsopyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"ygbqztvjtloqokcbjyirnwwbsokopzgo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"feuwuqeviwyjflxzyqkqehzvzbxgkepi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"htyrtlqymuijmtqwuhtrdcylstthbdjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kdcyppphiyydjcwdeszamfhxlmyjpagx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bzrlkizngsxanpdaeiuygkegkwnpdcud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thfachmzoldxuxmvruvejemfycatffea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"irqxyveshnihmyrfvqgepnmdsfwgcyeh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctexmhdheowplqxglhhuzgexbcmsfzxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcfvhcggwgxjwubtsqsftwdmdjvuzsvs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhekmvrulfzwhqomtonpqxrjwfecehjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cooghbotyseqoqjxkswtrzubuiketwkv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lalojbdcseyuurniymwiladhefvmjmyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfkxrvbiplyjemyaivmvjtzpzbnwsnbj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aceabxehfkmhkzlxqgtjdgrnikjzyexf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjoeapuddyxofdmtjvojtmurohvyzlsq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfllyddgextczsbjcushulttyemnhsor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bpnvlypsyeqlrjkjljztkvdeifharapl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llaxkrtsikhsipgkgraqmldvxratspac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atfatwgkaoioewevtdhpbdcrvpbufzbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tibionnivktavrcmbvdgmqgwlkumnbdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zivtchdhlmmgkknsvfdtvgksripxaxdm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcvxwuurkvbxhhhxrirwooxyqntfpyda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdhszuhuhdkwejejrwnoaumzcemnyyyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgiiygdpnxkjshmeyigwpdyqarfsdrlm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivwqepkqurbgcvjoclcedrrmunbwzgcc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aoydzuijqgdrrkovehbazlhahdylrysb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"efqwwrfqeudiccbdfyfvqxqbtoquxdfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qymbfbekrirftzxqxwkkhbunwzpgowly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubieewgdbssyyipcfdyronqqtxaszugz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvndjshgrdnsylnqlusrogvgwnuhxfot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekgepsgzmehkwimqhijdpfkguhsuvrju","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nugfijbcchbapcxviwvtajlxsqninkvv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bmisuoqernejjwotpabuptjxgxvmiuaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orstxtgkmjfujkzdfezzzgurxjjnnrsx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ldmqrojxwfegpswwjyfhsvmoodlfhysk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"guueyudwagfpywuqwebhwlwedswipvyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dmynfoeovrampfosgfzbgiijquqrzffj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qrlfjniwancjsmmzzllytirlxzyklnhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ciismtfakyogfrgmnopyyvoljnxpcfok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydlvvtscunvlkjcboiyvpxfdufkvicnt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cjqojygzceqcxzsjrnlqnbdjppfzieez","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gigqtzinxcujsfcyilfuilbebugfxfrx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"arfubkvatkammcgrvmsxpkmufirrnwtn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umvvthxbhpwexcveeizfqzdbpymkbmwr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnqqwnstcqenldhbrqxevwlqncqxpcjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oaevbujhmdcfciwjnzqvlvxpwywgkkmh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rsdkhcfwevzqrhejwcpvqjvmhhqxwagw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqkcbrjsjarwjqhtiuovrdknhwhxbzzc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxfdvsdqycregiqjcluvwqovcljpdhwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ewdmaueswsnvtamnvyrjpzzsvkusmlhx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iglydquyfpwuzzcmtuxsxbgxfjoygslt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xemelbrvukgxgotflodumkwbijugkmuj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ansvojrejxjxpmxzbqaykeajptwukzzd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evvmwxonaeljshtoakhlqxupnmhgfqyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkbvkgeivyonlqdwpjnfrfjlkpabaitb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcardrwvqxxknxbwgwjmnyptmlrgoefk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ptznegdptdmusfgybzxouonmazshnqiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"clhgzduwohmaestjvztplikzbkjogyrn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vzipwkisxihdbosmizhvwheqfsdsbkzm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vupdrleouoksarjennetiwahcbyajvan","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmcvzfpwtsmnlznqnemxfwhlikpaepcc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ttuczbmjtrsdzuoimwamqmiufbakuctp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkdoqlsvqzuxluaegoftjwlvqtvqsipa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ufphkvkpysonzjzcifwzvvkkapjduiiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwtirasozsqpuhrgyznvoztxwnkqjqee","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpvgittpylqbkwjmhgyftaooapiihdyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vmbudvewhuupybaaenxvfdiiosmpnkqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ziydaskwmbmzqzndepahnzhxkcugbpau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"indslcrvnykjqybhggrmvkaalooecnyr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmqvageavaziigihslzyhupjwdffmhxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwjbvnzgkjtgbdiuyvtyriylwsqiavji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"chetikcyrvpzdtrxkhcxzwdikoifkrpy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffdrgxhihlcwcqhbfqkbblrqkxtbuorc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ttcczsqeehuqdqvyshztehqcbnwpvywo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekzclyosbktznklbmqakiylllqajkryf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfebxidsjujlxbhricjsldxjhayaounf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uascfyeeiiwtltjjkdtokmgehxwrkcdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtgzsrsxfrtloakyouzxipvtumatebcz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkokbsqvurbfhlqinzkubdwecwdbkloc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wftsktxuksnjooupcswrgbkdxsebabdf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vitcxfaumbxhmqxolzouflyfjvukqqpu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bwfyvozmahoyzktvgbrgcgmcuwjsmvna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mfwoslwjydguhakdqszibvmtnwwawxhd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lrehbsnttsjikwmghljoavzsblntwgzk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxpwmzxmavtvgvzwmjbmvhnmovyhsnsn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otntcgipufmxhnfznoivtaxmzlgefapl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmztthnesyrfspevnbqzwmtdpuyezono","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xzdtdbpzznetmqfmbltobifsgtwunauv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtesgwthyvurcuivzumkjalozyoexztj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ymllbqepbwydpnbhcwfxvgkzmwtegeys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tzltastygoiuxdxepxtuikajmvtnxdrz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cdvbduswwyjdmaexhdbgsxbgpvtmjasn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"htfaxdanncjomxzpiolwovrvlpyfjoku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntpaclusbqhreukppwkofpgmjnmhvfyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlxngrpefhcfnfdiylayduskfopkdwum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hxvsqkgskhdyeafzawexyqmlqrzmmlbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bzaaykqpphyiozxfsprqakpcytnohshq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zkzkdvzxojxuddueqjsgxwmrwrjygyre","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vppbxuhfjhgjwaaeprbsdtgsyvyzvosx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672331,"databaseName":"models_schema","ddl":"CREATE TABLE `wgkwfskbehhqasowhsdegiiatybhbuvq` (\n `wngtjidkzbxyqfvnbhsplsvmbaakaowi` int NOT NULL,\n `idnbjufpztlxenejintqgwlueduzeimu` int DEFAULT NULL,\n `qhipawwsephogoavtbjjecmdjlxwbigx` int DEFAULT NULL,\n `avncxxgyiemwnwazmmfhzzwvnmymndcf` int DEFAULT NULL,\n `pbxlayfwcwuyieqwewbtmybdwyxemdhg` int DEFAULT NULL,\n `aclzfelsumlqcsttliytaqcpvqwbgmzf` int DEFAULT NULL,\n `ijzuseyymrwvfezdjffmittfvmidncay` int DEFAULT NULL,\n `uctahhaypnbtzsgnxxicloqzczxorhfy` int DEFAULT NULL,\n `fccdyueesgyxidhhytydmuhkcrwevveb` int DEFAULT NULL,\n `ojryabeloinapvyrllobrfyxmjlqttou` int DEFAULT NULL,\n `ykuorlcqrkuihkdpozhlzxxtnzsbpgkd` int DEFAULT NULL,\n `jsvfxivrnyhknotpwafqtponxqnzutwv` int DEFAULT NULL,\n `atykownfaftuhsolxxkferlnvhvbzjpi` int DEFAULT NULL,\n `vtdevtprceyidyvqppjoeylgycluldny` int DEFAULT NULL,\n `ykqavxnfxtiflsxshwkxpzwsjbzgiaqz` int DEFAULT NULL,\n `rgncvtyucrnklacmuqpsamvpdwjenfsu` int DEFAULT NULL,\n `yvaipssaizqzylunsjjnncuyhkqjrlrj` int DEFAULT NULL,\n `ygmrhxftjqzrxssqdjbgbdzkhgsvynno` int DEFAULT NULL,\n `qtcxcodzuudnedkqbclpodlcuqxgwwgx` int DEFAULT NULL,\n `pwmzdxkhpjssxwqocjigrfzgamxbstvn` int DEFAULT NULL,\n `hbqjjrryjwjoncnifnucdeplsxumosaj` int DEFAULT NULL,\n `cozhasgpqxctksyostboogzqarusbnil` int DEFAULT NULL,\n `iugnowxfoqlcmpdtnqwpztrzgbbyimfd` int DEFAULT NULL,\n `npkxxzhfeisfjpyywzslieeuminbclnf` int DEFAULT NULL,\n `iigoubmfwgaxbwoyntptcgscmydoxnot` int DEFAULT NULL,\n `shumctmjlviqbmqrguprcwgffmkbezli` int DEFAULT NULL,\n `kvqdhnduxlmnkpprrxtktehcolntnntj` int DEFAULT NULL,\n `bwnzwxowngzxqlzmcqwkyyndvtfsezeh` int DEFAULT NULL,\n `qgboqplszuqzmvyfhrgeuakefatttygx` int DEFAULT NULL,\n `pjvbnhcxrrgwxkfwimgvykpxaeafcdjg` int DEFAULT NULL,\n `idqexatvemyyjkqaaaxajifagirywric` int DEFAULT NULL,\n `lqmyqkojllwryubabspqshnfqmmssvcq` int DEFAULT NULL,\n `ruioebylapawmynxcobojzvshygudkit` int DEFAULT NULL,\n `bukbelzqqysdblzuuezydbgzjgcynydz` int DEFAULT NULL,\n `nwebqnqwfzvamhdxyihsishtwdjrbrzd` int DEFAULT NULL,\n `xoyrusggrrxkpfuznwnpqmwdfulmqhko` int DEFAULT NULL,\n `tifjvhiauhphbjtcbqhemmburmwdnrai` int DEFAULT NULL,\n `wbnbmkfkhdcjqqbbwlsmtimrcmtgbiyz` int DEFAULT NULL,\n `qmiihnyjrbdwygaplaigwzlcvlapkxcg` int DEFAULT NULL,\n `ojpftajeeuzvewdpvjmpvlzsroscjjuj` int DEFAULT NULL,\n `fxqeopxznmbvbbkdnwuwoujitkbfmchh` int DEFAULT NULL,\n `jbjeskbipmrioslqdxamkmagcxugbxcn` int DEFAULT NULL,\n `yhlfavzfeeurdavchlllggoieglffscn` int DEFAULT NULL,\n `hqjkzkoiyqepbirgosfsvxiovwdumenw` int DEFAULT NULL,\n `unfwniyatrnnxcteygbcunsjwbgvtzik` int DEFAULT NULL,\n `icccxtisvfivgsjgffvsicwgpkprkwtz` int DEFAULT NULL,\n `kfxvhkgzgxopdnnovobylolabnyhkezc` int DEFAULT NULL,\n `iusqtdsmprdjbywddqfzixxczsjcnxqt` int DEFAULT NULL,\n `nddxipbyoxllvlbkwltdhzovlkoybxac` int DEFAULT NULL,\n `fbjyzjfiuamvakbdicdgpealgsvpzavi` int DEFAULT NULL,\n `rhhvsocwkhdoxvrruguykwtxifwyyoub` int DEFAULT NULL,\n `ctcygqmfvletgqrykiakhhxkhxuqwltm` int DEFAULT NULL,\n `xoderbzxkkyzvhetmbpjapsptnaoluox` int DEFAULT NULL,\n `wnuionqtjpnzvrfndkvkoofzelzutqgr` int DEFAULT NULL,\n `muqelelqojexbdqjoyvwwonuufbrllky` int DEFAULT NULL,\n `udunvovzequlajmcqjkfqgbiicfzcthx` int DEFAULT NULL,\n `kjkkjhlfuifwdvezwwvsaorvtpafnmwx` int DEFAULT NULL,\n `hguzoyeewjnhjvbdlfvtahlysuoyeler` int DEFAULT NULL,\n `dihkaujxykcjqlvalychgdyrskqbivje` int DEFAULT NULL,\n `bkyoqxsywszjalfskggsyuqbtruxwgfz` int DEFAULT NULL,\n `uvbxszqnmxhwrfecbjmskbnyacetnzcb` int DEFAULT NULL,\n `flluenxkmqtbfcovwxazadqnktmsmtdr` int DEFAULT NULL,\n `xmzpjxjwlmvoogbxiovjfjlpfggbgvwr` int DEFAULT NULL,\n `itwatstdacgkqsamqoqlkjnqywqezmue` int DEFAULT NULL,\n `esmtaochigskysjbjhhlnxuqmdxemhyk` int DEFAULT NULL,\n `eumahjifujiadmepqakplblwvorhobeu` int DEFAULT NULL,\n `nvvrmjkoiyrhqdgrqoemfyrihmduhmkh` int DEFAULT NULL,\n `gtimunxvilzraeehifbebblvdkhpzuzh` int DEFAULT NULL,\n `mdbuanrlmnmkjnujyjnrnyjidmglhrdy` int DEFAULT NULL,\n `jvhuqwzlzaeorgoxezvhyvvktfdynuit` int DEFAULT NULL,\n `abdxjjlxyuttrjmtpyjlcwufsxntcawe` int DEFAULT NULL,\n `eqycfwvjepbvcadassdapiicrnrbntrc` int DEFAULT NULL,\n `sowbrqfbgrguefspixrifawgmutsussk` int DEFAULT NULL,\n `jenvrwtokefndwzlwhewvtxlyhuatefk` int DEFAULT NULL,\n `wmtmqygrjdbuahhxiftpwykhuhgelgnr` int DEFAULT NULL,\n `hqwujevhtvyxillznibclybhxnqadjxf` int DEFAULT NULL,\n `sqrisnspgcqjdeoanresgdfjitrlwfdh` int DEFAULT NULL,\n `fnyqmmelcvzsbokmvqzzlqhvwruusqvx` int DEFAULT NULL,\n `gnuyvygkwrjqcsvkehdpuatcvbshpviz` int DEFAULT NULL,\n `szegdjazeqewnbisjkvggyoizrggoahg` int DEFAULT NULL,\n `vrkemjbxkwtldlxfqgnsasinuwbeuxga` int DEFAULT NULL,\n `rphivoooubkscppyoigakpoepbkwryrz` int DEFAULT NULL,\n `ijvwoehbifwmczejkwyewjgrypeabyxy` int DEFAULT NULL,\n `jtftlhvuapstsixflyychtgnytcoizuv` int DEFAULT NULL,\n `zqichlqhrnjsduvibbiikpcrnnsaecol` int DEFAULT NULL,\n `ihxtcxkatyslxwfbzrvmlmetyhujgmlg` int DEFAULT NULL,\n `iigwtzrkxqurlxntkerfkbbotxwoadwf` int DEFAULT NULL,\n `hotgsvlvxfizunlgvlwsvesizcsrrtbk` int DEFAULT NULL,\n `pjwzxnwwxcpkvmeikfzhtlqzxbfhoykz` int DEFAULT NULL,\n `bzphjmlneqenwmwkogosdouugfjolzhu` int DEFAULT NULL,\n `bzchskzwyxakgzclqpahmzeyquxtqwfw` int DEFAULT NULL,\n `nmmvwdpotcyrjcxloalbujzclxiudqub` int DEFAULT NULL,\n `csqhfoxfnwovkchocvgfjbynuwrvizai` int DEFAULT NULL,\n `qvklpvlyjhilckmapsvuanizauuzxbxv` int DEFAULT NULL,\n `vsxybpwwaxmglvydhrcesludrkqzypcx` int DEFAULT NULL,\n `zbpobsbwzjdmndpbqrybmfyeztbgvcvd` int DEFAULT NULL,\n `fmdpjcgapfvxrekxlxjqexegxtppuagu` int DEFAULT NULL,\n `qofkfbxjrmadytikokokwrnbtorvkcap` int DEFAULT NULL,\n `tndvfvqotdxowrqzztedevgnzuwgnrwu` int DEFAULT NULL,\n `enwdqwotsozabhrtcjdrnzhmdpjspzfu` int DEFAULT NULL,\n PRIMARY KEY (`wngtjidkzbxyqfvnbhsplsvmbaakaowi`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"wgkwfskbehhqasowhsdegiiatybhbuvq\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["wngtjidkzbxyqfvnbhsplsvmbaakaowi"],"columns":[{"name":"wngtjidkzbxyqfvnbhsplsvmbaakaowi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"idnbjufpztlxenejintqgwlueduzeimu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhipawwsephogoavtbjjecmdjlxwbigx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avncxxgyiemwnwazmmfhzzwvnmymndcf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbxlayfwcwuyieqwewbtmybdwyxemdhg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aclzfelsumlqcsttliytaqcpvqwbgmzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijzuseyymrwvfezdjffmittfvmidncay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uctahhaypnbtzsgnxxicloqzczxorhfy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fccdyueesgyxidhhytydmuhkcrwevveb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojryabeloinapvyrllobrfyxmjlqttou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykuorlcqrkuihkdpozhlzxxtnzsbpgkd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jsvfxivrnyhknotpwafqtponxqnzutwv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atykownfaftuhsolxxkferlnvhvbzjpi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtdevtprceyidyvqppjoeylgycluldny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykqavxnfxtiflsxshwkxpzwsjbzgiaqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgncvtyucrnklacmuqpsamvpdwjenfsu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yvaipssaizqzylunsjjnncuyhkqjrlrj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ygmrhxftjqzrxssqdjbgbdzkhgsvynno","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtcxcodzuudnedkqbclpodlcuqxgwwgx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwmzdxkhpjssxwqocjigrfzgamxbstvn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbqjjrryjwjoncnifnucdeplsxumosaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cozhasgpqxctksyostboogzqarusbnil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iugnowxfoqlcmpdtnqwpztrzgbbyimfd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"npkxxzhfeisfjpyywzslieeuminbclnf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iigoubmfwgaxbwoyntptcgscmydoxnot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shumctmjlviqbmqrguprcwgffmkbezli","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvqdhnduxlmnkpprrxtktehcolntnntj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bwnzwxowngzxqlzmcqwkyyndvtfsezeh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qgboqplszuqzmvyfhrgeuakefatttygx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjvbnhcxrrgwxkfwimgvykpxaeafcdjg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idqexatvemyyjkqaaaxajifagirywric","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqmyqkojllwryubabspqshnfqmmssvcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ruioebylapawmynxcobojzvshygudkit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bukbelzqqysdblzuuezydbgzjgcynydz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nwebqnqwfzvamhdxyihsishtwdjrbrzd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xoyrusggrrxkpfuznwnpqmwdfulmqhko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tifjvhiauhphbjtcbqhemmburmwdnrai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbnbmkfkhdcjqqbbwlsmtimrcmtgbiyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmiihnyjrbdwygaplaigwzlcvlapkxcg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojpftajeeuzvewdpvjmpvlzsroscjjuj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxqeopxznmbvbbkdnwuwoujitkbfmchh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jbjeskbipmrioslqdxamkmagcxugbxcn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhlfavzfeeurdavchlllggoieglffscn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqjkzkoiyqepbirgosfsvxiovwdumenw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unfwniyatrnnxcteygbcunsjwbgvtzik","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icccxtisvfivgsjgffvsicwgpkprkwtz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfxvhkgzgxopdnnovobylolabnyhkezc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iusqtdsmprdjbywddqfzixxczsjcnxqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nddxipbyoxllvlbkwltdhzovlkoybxac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbjyzjfiuamvakbdicdgpealgsvpzavi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhhvsocwkhdoxvrruguykwtxifwyyoub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctcygqmfvletgqrykiakhhxkhxuqwltm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xoderbzxkkyzvhetmbpjapsptnaoluox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnuionqtjpnzvrfndkvkoofzelzutqgr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"muqelelqojexbdqjoyvwwonuufbrllky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udunvovzequlajmcqjkfqgbiicfzcthx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjkkjhlfuifwdvezwwvsaorvtpafnmwx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hguzoyeewjnhjvbdlfvtahlysuoyeler","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dihkaujxykcjqlvalychgdyrskqbivje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkyoqxsywszjalfskggsyuqbtruxwgfz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvbxszqnmxhwrfecbjmskbnyacetnzcb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flluenxkmqtbfcovwxazadqnktmsmtdr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xmzpjxjwlmvoogbxiovjfjlpfggbgvwr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itwatstdacgkqsamqoqlkjnqywqezmue","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"esmtaochigskysjbjhhlnxuqmdxemhyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eumahjifujiadmepqakplblwvorhobeu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvvrmjkoiyrhqdgrqoemfyrihmduhmkh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtimunxvilzraeehifbebblvdkhpzuzh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mdbuanrlmnmkjnujyjnrnyjidmglhrdy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvhuqwzlzaeorgoxezvhyvvktfdynuit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"abdxjjlxyuttrjmtpyjlcwufsxntcawe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqycfwvjepbvcadassdapiicrnrbntrc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sowbrqfbgrguefspixrifawgmutsussk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jenvrwtokefndwzlwhewvtxlyhuatefk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmtmqygrjdbuahhxiftpwykhuhgelgnr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqwujevhtvyxillznibclybhxnqadjxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sqrisnspgcqjdeoanresgdfjitrlwfdh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnyqmmelcvzsbokmvqzzlqhvwruusqvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnuyvygkwrjqcsvkehdpuatcvbshpviz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"szegdjazeqewnbisjkvggyoizrggoahg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vrkemjbxkwtldlxfqgnsasinuwbeuxga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rphivoooubkscppyoigakpoepbkwryrz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijvwoehbifwmczejkwyewjgrypeabyxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jtftlhvuapstsixflyychtgnytcoizuv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqichlqhrnjsduvibbiikpcrnnsaecol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ihxtcxkatyslxwfbzrvmlmetyhujgmlg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iigwtzrkxqurlxntkerfkbbotxwoadwf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hotgsvlvxfizunlgvlwsvesizcsrrtbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjwzxnwwxcpkvmeikfzhtlqzxbfhoykz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bzphjmlneqenwmwkogosdouugfjolzhu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bzchskzwyxakgzclqpahmzeyquxtqwfw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmmvwdpotcyrjcxloalbujzclxiudqub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"csqhfoxfnwovkchocvgfjbynuwrvizai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvklpvlyjhilckmapsvuanizauuzxbxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsxybpwwaxmglvydhrcesludrkqzypcx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbpobsbwzjdmndpbqrybmfyeztbgvcvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmdpjcgapfvxrekxlxjqexegxtppuagu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qofkfbxjrmadytikokokwrnbtorvkcap","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tndvfvqotdxowrqzztedevgnzuwgnrwu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"enwdqwotsozabhrtcjdrnzhmdpjspzfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672362,"databaseName":"models_schema","ddl":"CREATE TABLE `wgxcetmtjwvmrtdbuchydagtylsvtsga` (\n `gqzqnjjgsqkiyalyawyyfmekkcnzjvuy` int NOT NULL,\n `inmqwklxqocieqgakzwoisdxdkfrgkws` int DEFAULT NULL,\n `pziazvkohclbfsglwcavbhsgasavareg` int DEFAULT NULL,\n `fjltkcirxbtdwsjqzjpyvrmdisqqzvki` int DEFAULT NULL,\n `xdyaotrrazcvbcptwtomkiwmjwlszlln` int DEFAULT NULL,\n `lgqsolmlscebqadvbopkjmojoevrlxpk` int DEFAULT NULL,\n `bmqpcqxhejcisybzbkgpibtrqlmosdwm` int DEFAULT NULL,\n `fghulyfoucmwrfcfgqeyoxhvtjechywg` int DEFAULT NULL,\n `lijtfygdmtvqcrubdgjozfxreqawagkp` int DEFAULT NULL,\n `kcemdhtcthfvertknwrfdreqwqahwoxd` int DEFAULT NULL,\n `xyqytpzavrhplxxughnpzhromhhhwfgh` int DEFAULT NULL,\n `oudznhuyguuvomjtibvinnjepkilffhx` int DEFAULT NULL,\n `heviqfogruqzockmnrkdjrvgvxnbrjhf` int DEFAULT NULL,\n `qczdrjfscdfgrvczwyilqsswrczyczwx` int DEFAULT NULL,\n `jjrxgbmnvhegaaupqkptiopevicudscw` int DEFAULT NULL,\n `fyudlauckweorkcjgexbxvcjpaejxlnq` int DEFAULT NULL,\n `lleiektpilqxgvifcyinsjfemkecrqhj` int DEFAULT NULL,\n `jivfspszznyhfoqbdzokkbtwhdphivxg` int DEFAULT NULL,\n `nmpvekckqpeeyydstphamlvcqmqcxzmu` int DEFAULT NULL,\n `llpjarrrxnskmzsqszahagexczrqemqq` int DEFAULT NULL,\n `xydblwakmaezllsxhraotadcctitfmdu` int DEFAULT NULL,\n `mubfkjnlkkzwctpknecioltotplylzve` int DEFAULT NULL,\n `irjlklxkqhpizoikbmnusulcirceroxw` int DEFAULT NULL,\n `ydfjsicdlnkiabcawmkedgnnlcfvewxu` int DEFAULT NULL,\n `oczfwydeyhnbpundsdjtpbujlxndhkhm` int DEFAULT NULL,\n `cmlqxruytwqzdskpfsbhorwyhdcqjfna` int DEFAULT NULL,\n `fofwrxsnpysukcnshtcdxqgdtnnrkwbh` int DEFAULT NULL,\n `wsrasyfhxwprpfbfeqsadniqacxoaqxx` int DEFAULT NULL,\n `iylebdnmcpxuzfwmhjsaymhligzqielj` int DEFAULT NULL,\n `czbuexwcgrekffwavimwgiypkazsemxc` int DEFAULT NULL,\n `jzwhuisgyycskpcsfnybgnlqgagnoqjm` int DEFAULT NULL,\n `fzucglaerqyubjhnoxjldrepnyiapazd` int DEFAULT NULL,\n `tkzosqwlnavcnfalutewkgefzuhqcnuw` int DEFAULT NULL,\n `lhdeczcrxuffkfmfuoygeafjwqkmorxw` int DEFAULT NULL,\n `ksgvfpmxxflruularghecmpagiqivebr` int DEFAULT NULL,\n `bnlwuulakxtkxqfajtjgczfdjjvlirlr` int DEFAULT NULL,\n `gffzhewvzhogjawfedirezbeesjysryp` int DEFAULT NULL,\n `yufjdbalqpxtcjttddayqldihxfpkqul` int DEFAULT NULL,\n `wnbruwoitsjnxcxfzglkbinmtyienhwe` int DEFAULT NULL,\n `whpszpidmrjaerabjqijpvhwlliqzijv` int DEFAULT NULL,\n `ruucbaotcphcgfosknukjrlkkqwfwyti` int DEFAULT NULL,\n `xcvandoirxnwlyovhjbfsefocibzdxvy` int DEFAULT NULL,\n `dwwuehghbtsmzecgcdklzterfntxgfcy` int DEFAULT NULL,\n `shfvsyiylwhazlpnmpzdndnmpqfeignd` int DEFAULT NULL,\n `uvhjsarhuyvfyqqsjfohjhxahvshmvnt` int DEFAULT NULL,\n `foruycpxrwirdkkaqnwyplxiegyypyex` int DEFAULT NULL,\n `gbxbgibgtubvqkiktyqpuiyrkfcpbzcz` int DEFAULT NULL,\n `oiwlzyunpdinfjdwodrlembvrqzdmdig` int DEFAULT NULL,\n `rnztrhqlnnruofghmftqqvtpsalwwlis` int DEFAULT NULL,\n `lsbprvfhibbffksylusvxvfidlwavoim` int DEFAULT NULL,\n `qjnaqucyvvnfoaveidxbopekunodbxkn` int DEFAULT NULL,\n `yktrfbsxccbbuyvvboqwoeidfkgspnyd` int DEFAULT NULL,\n `gbwcpvvjjtovpiykkusqehloqqcwkzve` int DEFAULT NULL,\n `xyhzrzmgarjgvkmifehldmxtavvemzfx` int DEFAULT NULL,\n `mzjjflzmmlsbhcwsxsmvqxitdvhqklja` int DEFAULT NULL,\n `uchuvhxbqycgvpltwxbzqnsggeaqcqta` int DEFAULT NULL,\n `vqmgbnpwzoaxmqmcybssapwkzvdooyqc` int DEFAULT NULL,\n `zujjuvrazfvbkpadjpxcpbjyfcgniyak` int DEFAULT NULL,\n `kpgccoadlaupgwtkxtnykovhhgjuegos` int DEFAULT NULL,\n `wwohvgjvqczawxxzkpqvytkpbzuvqcxc` int DEFAULT NULL,\n `kadvprstslnekefqsotrovnsmnyukccg` int DEFAULT NULL,\n `wnhwfwurzrkxmkxtlevvkfvxbxpjbghs` int DEFAULT NULL,\n `ovgsupkalbtbxddxlzphkzbcqkyvrews` int DEFAULT NULL,\n `daxaoubfjdeqtxfquklaajjwmlwnmbpo` int DEFAULT NULL,\n `hmzqiebzeplhcwwjgelcbfsgdqtdqxsk` int DEFAULT NULL,\n `shthpieaisrfvvrpcltqbfkigawsjgsm` int DEFAULT NULL,\n `gzelyobenwyrhklqlxqwzikvjglwlyjt` int DEFAULT NULL,\n `aggnhrogowbstaonkmjjctxrlhzswigb` int DEFAULT NULL,\n `wjeuhkqwcrtdjonzccfczzxzwefwueqm` int DEFAULT NULL,\n `vgalwkhbscwrialcsnfariwbzkayemat` int DEFAULT NULL,\n `rmxmubpvgnxpwgydgshjbuyufxwszzpq` int DEFAULT NULL,\n `qyzrvtgubqjaqvwyfkratrseotlwoufx` int DEFAULT NULL,\n `fdyobnlfgiovhsxigxbkwuesgyabjrus` int DEFAULT NULL,\n `fzuzzhdghfudnpnjyypefnnylylaekae` int DEFAULT NULL,\n `vojftggkcgeszbjmhioobehzbejgliis` int DEFAULT NULL,\n `fquzccoybnyvtmyxmebihupjrpelerrv` int DEFAULT NULL,\n `kbcavvbqajylolfjmxggpfnnfzolebed` int DEFAULT NULL,\n `oirfndhwxwoxgmvgwehmdhlodbgmtoia` int DEFAULT NULL,\n `exxfbtoujnwrwpdilacccctwztqajrdx` int DEFAULT NULL,\n `yptiuovplpjiwplddpexdjnjyjaigvko` int DEFAULT NULL,\n `mtkfxdsnbfkcecinhdhvsudkszguzqmo` int DEFAULT NULL,\n `eblpgqpxynsrjoiptadozbonrfijdnzw` int DEFAULT NULL,\n `jjuymmlkbnunlkgrumqiimdzxvfjisim` int DEFAULT NULL,\n `umfromnuaeidhayjdhyahsbioulysxxd` int DEFAULT NULL,\n `hgcjrpdwqaxjfkgrmjntbdcfhozomebi` int DEFAULT NULL,\n `vtotscolthvywjxklqywnncqsngpmbxu` int DEFAULT NULL,\n `melqehberdqmxwatcyypghrdjsnkbqmf` int DEFAULT NULL,\n `pdshvotjxuyysmlmtujtmkhhczoznwul` int DEFAULT NULL,\n `fqimowuevdcydwgpuzzicgygqbfiaozi` int DEFAULT NULL,\n `acekuxpogvbuguxfikucgfrpzyztnxec` int DEFAULT NULL,\n `ubqjfemeiefhrguspalzunecektwnfai` int DEFAULT NULL,\n `ljbzehftrxduxehjaraicjgilnvyueeo` int DEFAULT NULL,\n `vpnrmjwxjdrswzfxtuwabggfwgnjxofw` int DEFAULT NULL,\n `gxwtdbzvnfwgawuvmdeveypiuhpwkqbi` int DEFAULT NULL,\n `urzkbsabiodtnekjzvkodvedurionchu` int DEFAULT NULL,\n `rolyjighhqbtpkzzvdlsieazfoiyfdbu` int DEFAULT NULL,\n `pccpohfhvyifmuwzubrsgmrarryroqxt` int DEFAULT NULL,\n `miscpeidpwahcioeixryngtciaquytio` int DEFAULT NULL,\n `hlmqayqhbldlirnruchpxubkvfahvozs` int DEFAULT NULL,\n `pqoqruozzjbuxzfaemovefagicrmkand` int DEFAULT NULL,\n PRIMARY KEY (`gqzqnjjgsqkiyalyawyyfmekkcnzjvuy`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"wgxcetmtjwvmrtdbuchydagtylsvtsga\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["gqzqnjjgsqkiyalyawyyfmekkcnzjvuy"],"columns":[{"name":"gqzqnjjgsqkiyalyawyyfmekkcnzjvuy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"inmqwklxqocieqgakzwoisdxdkfrgkws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pziazvkohclbfsglwcavbhsgasavareg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjltkcirxbtdwsjqzjpyvrmdisqqzvki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdyaotrrazcvbcptwtomkiwmjwlszlln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgqsolmlscebqadvbopkjmojoevrlxpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bmqpcqxhejcisybzbkgpibtrqlmosdwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fghulyfoucmwrfcfgqeyoxhvtjechywg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lijtfygdmtvqcrubdgjozfxreqawagkp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kcemdhtcthfvertknwrfdreqwqahwoxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyqytpzavrhplxxughnpzhromhhhwfgh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oudznhuyguuvomjtibvinnjepkilffhx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"heviqfogruqzockmnrkdjrvgvxnbrjhf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qczdrjfscdfgrvczwyilqsswrczyczwx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjrxgbmnvhegaaupqkptiopevicudscw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fyudlauckweorkcjgexbxvcjpaejxlnq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lleiektpilqxgvifcyinsjfemkecrqhj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jivfspszznyhfoqbdzokkbtwhdphivxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nmpvekckqpeeyydstphamlvcqmqcxzmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llpjarrrxnskmzsqszahagexczrqemqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xydblwakmaezllsxhraotadcctitfmdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mubfkjnlkkzwctpknecioltotplylzve","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"irjlklxkqhpizoikbmnusulcirceroxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydfjsicdlnkiabcawmkedgnnlcfvewxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oczfwydeyhnbpundsdjtpbujlxndhkhm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmlqxruytwqzdskpfsbhorwyhdcqjfna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fofwrxsnpysukcnshtcdxqgdtnnrkwbh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wsrasyfhxwprpfbfeqsadniqacxoaqxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iylebdnmcpxuzfwmhjsaymhligzqielj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"czbuexwcgrekffwavimwgiypkazsemxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jzwhuisgyycskpcsfnybgnlqgagnoqjm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzucglaerqyubjhnoxjldrepnyiapazd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkzosqwlnavcnfalutewkgefzuhqcnuw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhdeczcrxuffkfmfuoygeafjwqkmorxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ksgvfpmxxflruularghecmpagiqivebr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnlwuulakxtkxqfajtjgczfdjjvlirlr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gffzhewvzhogjawfedirezbeesjysryp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yufjdbalqpxtcjttddayqldihxfpkqul","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnbruwoitsjnxcxfzglkbinmtyienhwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"whpszpidmrjaerabjqijpvhwlliqzijv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ruucbaotcphcgfosknukjrlkkqwfwyti","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xcvandoirxnwlyovhjbfsefocibzdxvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwwuehghbtsmzecgcdklzterfntxgfcy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shfvsyiylwhazlpnmpzdndnmpqfeignd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvhjsarhuyvfyqqsjfohjhxahvshmvnt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"foruycpxrwirdkkaqnwyplxiegyypyex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gbxbgibgtubvqkiktyqpuiyrkfcpbzcz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oiwlzyunpdinfjdwodrlembvrqzdmdig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnztrhqlnnruofghmftqqvtpsalwwlis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lsbprvfhibbffksylusvxvfidlwavoim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjnaqucyvvnfoaveidxbopekunodbxkn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yktrfbsxccbbuyvvboqwoeidfkgspnyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gbwcpvvjjtovpiykkusqehloqqcwkzve","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyhzrzmgarjgvkmifehldmxtavvemzfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzjjflzmmlsbhcwsxsmvqxitdvhqklja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uchuvhxbqycgvpltwxbzqnsggeaqcqta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqmgbnpwzoaxmqmcybssapwkzvdooyqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zujjuvrazfvbkpadjpxcpbjyfcgniyak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kpgccoadlaupgwtkxtnykovhhgjuegos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwohvgjvqczawxxzkpqvytkpbzuvqcxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kadvprstslnekefqsotrovnsmnyukccg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnhwfwurzrkxmkxtlevvkfvxbxpjbghs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovgsupkalbtbxddxlzphkzbcqkyvrews","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"daxaoubfjdeqtxfquklaajjwmlwnmbpo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmzqiebzeplhcwwjgelcbfsgdqtdqxsk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shthpieaisrfvvrpcltqbfkigawsjgsm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzelyobenwyrhklqlxqwzikvjglwlyjt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aggnhrogowbstaonkmjjctxrlhzswigb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjeuhkqwcrtdjonzccfczzxzwefwueqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgalwkhbscwrialcsnfariwbzkayemat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rmxmubpvgnxpwgydgshjbuyufxwszzpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qyzrvtgubqjaqvwyfkratrseotlwoufx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fdyobnlfgiovhsxigxbkwuesgyabjrus","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzuzzhdghfudnpnjyypefnnylylaekae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vojftggkcgeszbjmhioobehzbejgliis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fquzccoybnyvtmyxmebihupjrpelerrv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kbcavvbqajylolfjmxggpfnnfzolebed","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oirfndhwxwoxgmvgwehmdhlodbgmtoia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exxfbtoujnwrwpdilacccctwztqajrdx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yptiuovplpjiwplddpexdjnjyjaigvko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtkfxdsnbfkcecinhdhvsudkszguzqmo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eblpgqpxynsrjoiptadozbonrfijdnzw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjuymmlkbnunlkgrumqiimdzxvfjisim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umfromnuaeidhayjdhyahsbioulysxxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hgcjrpdwqaxjfkgrmjntbdcfhozomebi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtotscolthvywjxklqywnncqsngpmbxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"melqehberdqmxwatcyypghrdjsnkbqmf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdshvotjxuyysmlmtujtmkhhczoznwul","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqimowuevdcydwgpuzzicgygqbfiaozi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"acekuxpogvbuguxfikucgfrpzyztnxec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubqjfemeiefhrguspalzunecektwnfai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljbzehftrxduxehjaraicjgilnvyueeo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpnrmjwxjdrswzfxtuwabggfwgnjxofw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gxwtdbzvnfwgawuvmdeveypiuhpwkqbi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urzkbsabiodtnekjzvkodvedurionchu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rolyjighhqbtpkzzvdlsieazfoiyfdbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pccpohfhvyifmuwzubrsgmrarryroqxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"miscpeidpwahcioeixryngtciaquytio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlmqayqhbldlirnruchpxubkvfahvozs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqoqruozzjbuxzfaemovefagicrmkand","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672395,"databaseName":"models_schema","ddl":"CREATE TABLE `whclbatdragfegfzxazuownrpaxqfwpq` (\n `aukcupquqkatrkvndesesmsotrpeuldq` int NOT NULL,\n `bkozgtxyculpzgflbzgeubhpchcetzgd` int DEFAULT NULL,\n `udymdrcewuuhexgvbywimxzkksakowbz` int DEFAULT NULL,\n `daicibtbcpjvnwnzjjnmsicrvpjslqak` int DEFAULT NULL,\n `vyosfefzvyczaeecucalakpmnquavtsn` int DEFAULT NULL,\n `eyeztuzqrtcttszibtkfmkzvwmenixpx` int DEFAULT NULL,\n `mxxylpeskuancrhzqaodowghwcomwruu` int DEFAULT NULL,\n `nhxtevsbocdhernhcbqdlisagptguzxh` int DEFAULT NULL,\n `lcdfybueqypycaceojcokbgejumdrqtl` int DEFAULT NULL,\n `hxqglvlbmdjhzvmmuiehqefeoeraapfh` int DEFAULT NULL,\n `xxenrmhsjvdncnwssmgrvyxwijvlvlie` int DEFAULT NULL,\n `ldcahfrgwozfcrllmueyqcbsnttsyurw` int DEFAULT NULL,\n `ujeyryukfpocdppkukbpwqcirzwamokv` int DEFAULT NULL,\n `jkhpdmyxysnnnjueqqfbnankzmjowgmr` int DEFAULT NULL,\n `pperlsjeajckzdtqjdocvziomopnsqhd` int DEFAULT NULL,\n `yeaenborjvuzizvnrlcvvczdmsjcaxcx` int DEFAULT NULL,\n `uvjckfzdkhkvhzumnsmbnarbqzgifjxr` int DEFAULT NULL,\n `mwucscwfqkpzmwkunelajmfsamrcisdn` int DEFAULT NULL,\n `bajqskhomnaupwzqxwyqfmrdpwnmjqer` int DEFAULT NULL,\n `vjzlbpoyfdvfrfflqpjlbhgwatkbvumr` int DEFAULT NULL,\n `aeehsnbxscyhtswnhiuhiwqbvrjxtckn` int DEFAULT NULL,\n `grdudbnwedalboafumeflxiymzvjdkxa` int DEFAULT NULL,\n `xriawbvwkuikxtspwoexjpzikqmosjto` int DEFAULT NULL,\n `fhjwuibbpjmazbodwtlvmmgtflrxcgys` int DEFAULT NULL,\n `vsmqkxdaodofdpuwhyexqqdwreznxhsn` int DEFAULT NULL,\n `tuirlwgvshubnbvmikrznxabdjpsojyb` int DEFAULT NULL,\n `azfjclopfpxbttpdwtopsscbkufgqzwd` int DEFAULT NULL,\n `rmqdukhvzozdylyuottohignmaprxitj` int DEFAULT NULL,\n `dkpcdfsfbhbapgveqfnfxmiizbizseyz` int DEFAULT NULL,\n `bayqzntukfqjznycaunyvavtboohvhlw` int DEFAULT NULL,\n `jdfmpiqlkpktgfgeapawfyuuofhnixwt` int DEFAULT NULL,\n `ndxqpfngqlnzpkcgntfotrmnzbkgwpvu` int DEFAULT NULL,\n `pwyexpdtjrczwigtvaezjkwlkuirqssj` int DEFAULT NULL,\n `pfnrqrmqdpnltateoulbtouybdbzwfjn` int DEFAULT NULL,\n `uzzfxngyfkcjisuvgmatqfamfkacfqzm` int DEFAULT NULL,\n `cetymylhlgpucmqwkiqlmksjfafafrux` int DEFAULT NULL,\n `rqhfkwolhnunimnfdmlrxhewcopdnwnm` int DEFAULT NULL,\n `ssnitaxdqtusfmgwnnjtedmgikmbyrqk` int DEFAULT NULL,\n `wsepahrlgtfbitwtcelowvvkemwzmqoe` int DEFAULT NULL,\n `ucovxfuaiguknvphpnlriqdiqbeiaipk` int DEFAULT NULL,\n `dxdymsatbdafdmigxkfpllkhyxfjhdeo` int DEFAULT NULL,\n `toaiccfcwomtnbznrgesodkmbckdumyh` int DEFAULT NULL,\n `fpbyelvfaclopebajksulripriakjqqk` int DEFAULT NULL,\n `mttgubncnvxhbjttetfmgrlerickhcxq` int DEFAULT NULL,\n `asdcvfirfpcbfperhergtcvbyjzfzybj` int DEFAULT NULL,\n `fjdsjyyxnpwfcfjgvhjmxlsxhljrsglg` int DEFAULT NULL,\n `szhjejizackdsskdrfrpaecwlwqbukwf` int DEFAULT NULL,\n `vgjnfjfaczcmdiyxlagnkctzkxbcppge` int DEFAULT NULL,\n `fsgjlafvojsvxpxpmxuebxnmbqoehpte` int DEFAULT NULL,\n `jmqwrtshnzzxprrtkmdkbnyjfznttujh` int DEFAULT NULL,\n `aopodzyhmparbidbibzwufbnixmyrdsg` int DEFAULT NULL,\n `rnxwuaxvauvxscxejesmtwqmbcqyoweu` int DEFAULT NULL,\n `wodotfhlmmddqbzomfoyoikuzjtdibzg` int DEFAULT NULL,\n `gphhswkqpxovxzprkqdjcxstaauyzlds` int DEFAULT NULL,\n `swznlrghgdchxiduveopgbftgoquqlun` int DEFAULT NULL,\n `zuqwvcbsadlxjwtkhaiynciyziwccycf` int DEFAULT NULL,\n `jylytmzctqridvldopokjkltbjbcoywt` int DEFAULT NULL,\n `fedmfqrdcgxqfqpnggwncutyihcntxxf` int DEFAULT NULL,\n `gbsiskiigujffomhfyzpemttakypsekj` int DEFAULT NULL,\n `criufnjvgqdehuvvlqcpvwlsfgevmgqg` int DEFAULT NULL,\n `xjltipxrogqymektemaqjrwvsafywvvq` int DEFAULT NULL,\n `mpoayifakbdtkzcpgkienhcbbllzmwdj` int DEFAULT NULL,\n `hhpvsljliclednspczaikjhpznhfpkgg` int DEFAULT NULL,\n `ieeajschzsyamhtythjxwsosnfposlms` int DEFAULT NULL,\n `xdocgfuodosarcxacpkxzixomtyeiuho` int DEFAULT NULL,\n `lsbgnfeqgljsihlvxrmtzakxdzotpjwj` int DEFAULT NULL,\n `wuvdcioxdrfgaegebexwcswtcpvaekbr` int DEFAULT NULL,\n `udtxfcayvbnaglmleesgwyuxllejidwj` int DEFAULT NULL,\n `ugcmrxhkvtvkhnkcquoptcitinauxdyd` int DEFAULT NULL,\n `nytyoqqasxblxcnmfpmnhrflffkjkfyf` int DEFAULT NULL,\n `bwbvcgnlrxasioochbwruwohctpophct` int DEFAULT NULL,\n `bnxgnviezzbnbzrmlbqtzhfwidgjwodl` int DEFAULT NULL,\n `fjfzuflgpnmqociagjwcrteidsymggld` int DEFAULT NULL,\n `npjauaydtnyxjjhpetihqjderaozwgbv` int DEFAULT NULL,\n `njtjddibmlzmiafjpfqlurqwlvyinauw` int DEFAULT NULL,\n `exxgefrobgrjrqhbptcbzmgrfcwercyj` int DEFAULT NULL,\n `rlpsgmnrevfzyndwjapmfzifvjvnlxdr` int DEFAULT NULL,\n `gdfjnyzeisjrqtwkmosrmootpshwwcqr` int DEFAULT NULL,\n `rhyppwvoewtwlrmgvvrqkasnaqzcpbat` int DEFAULT NULL,\n `eurdrabevaqvstiebyahjfgposjqqwmv` int DEFAULT NULL,\n `xojzftnrzhcuhbcqpicuqbfpfdaapkrz` int DEFAULT NULL,\n `bgsrgafpcumfvszkqsinxrijhrmomwbi` int DEFAULT NULL,\n `vfereuqsfhrsmuqszndbyhnqechqpdes` int DEFAULT NULL,\n `jbfnecxhltfqssyevkswskjpqtymapaw` int DEFAULT NULL,\n `ppxesugfiraspwqkcuupcbyskdfovpvd` int DEFAULT NULL,\n `kbeqbffhqifmunjeoprtfbpaqyybcevd` int DEFAULT NULL,\n `ghkbxkdlfgpqvtukewyltwmrfilkmsld` int DEFAULT NULL,\n `edqyvhhfbswwvaslsuvpovrdxejwdihl` int DEFAULT NULL,\n `mkevffpayiwpbgeszgfgkrlwlvceedcu` int DEFAULT NULL,\n `amajoyshhfekvzidpubhwgukdpzuzcrv` int DEFAULT NULL,\n `obpqhnwthzzjgwkdcbqtphregfnnonoe` int DEFAULT NULL,\n `otefbioanilpvimianhnioumqrswdiby` int DEFAULT NULL,\n `phpzvashnxgqklbqpazjxpvpybbbroyc` int DEFAULT NULL,\n `quzyexvvnpjdxnndvdccmypticlvukrm` int DEFAULT NULL,\n `prgfihqjjrohziwusiryzfyrprantclk` int DEFAULT NULL,\n `aygjebgmxzpdqozcaboaaxwcuujwfwbl` int DEFAULT NULL,\n `bivzgzbcrlbqhphcxopngjwzkyjuiuls` int DEFAULT NULL,\n `nfdhhicphoplfnksefxfxozxzfmrzegk` int DEFAULT NULL,\n `mlrbyecmvhhkiyfsetcbjvvnpknailii` int DEFAULT NULL,\n `nvjpnnzqkgvmffkvlmiwdlzfhiajqvaf` int DEFAULT NULL,\n PRIMARY KEY (`aukcupquqkatrkvndesesmsotrpeuldq`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"whclbatdragfegfzxazuownrpaxqfwpq\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["aukcupquqkatrkvndesesmsotrpeuldq"],"columns":[{"name":"aukcupquqkatrkvndesesmsotrpeuldq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"bkozgtxyculpzgflbzgeubhpchcetzgd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udymdrcewuuhexgvbywimxzkksakowbz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"daicibtbcpjvnwnzjjnmsicrvpjslqak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vyosfefzvyczaeecucalakpmnquavtsn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eyeztuzqrtcttszibtkfmkzvwmenixpx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mxxylpeskuancrhzqaodowghwcomwruu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhxtevsbocdhernhcbqdlisagptguzxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lcdfybueqypycaceojcokbgejumdrqtl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hxqglvlbmdjhzvmmuiehqefeoeraapfh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxenrmhsjvdncnwssmgrvyxwijvlvlie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ldcahfrgwozfcrllmueyqcbsnttsyurw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujeyryukfpocdppkukbpwqcirzwamokv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jkhpdmyxysnnnjueqqfbnankzmjowgmr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pperlsjeajckzdtqjdocvziomopnsqhd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yeaenborjvuzizvnrlcvvczdmsjcaxcx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvjckfzdkhkvhzumnsmbnarbqzgifjxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwucscwfqkpzmwkunelajmfsamrcisdn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bajqskhomnaupwzqxwyqfmrdpwnmjqer","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjzlbpoyfdvfrfflqpjlbhgwatkbvumr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aeehsnbxscyhtswnhiuhiwqbvrjxtckn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grdudbnwedalboafumeflxiymzvjdkxa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xriawbvwkuikxtspwoexjpzikqmosjto","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhjwuibbpjmazbodwtlvmmgtflrxcgys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsmqkxdaodofdpuwhyexqqdwreznxhsn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tuirlwgvshubnbvmikrznxabdjpsojyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"azfjclopfpxbttpdwtopsscbkufgqzwd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rmqdukhvzozdylyuottohignmaprxitj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkpcdfsfbhbapgveqfnfxmiizbizseyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bayqzntukfqjznycaunyvavtboohvhlw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdfmpiqlkpktgfgeapawfyuuofhnixwt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ndxqpfngqlnzpkcgntfotrmnzbkgwpvu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwyexpdtjrczwigtvaezjkwlkuirqssj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pfnrqrmqdpnltateoulbtouybdbzwfjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzzfxngyfkcjisuvgmatqfamfkacfqzm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cetymylhlgpucmqwkiqlmksjfafafrux","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqhfkwolhnunimnfdmlrxhewcopdnwnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ssnitaxdqtusfmgwnnjtedmgikmbyrqk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wsepahrlgtfbitwtcelowvvkemwzmqoe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ucovxfuaiguknvphpnlriqdiqbeiaipk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxdymsatbdafdmigxkfpllkhyxfjhdeo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"toaiccfcwomtnbznrgesodkmbckdumyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpbyelvfaclopebajksulripriakjqqk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mttgubncnvxhbjttetfmgrlerickhcxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"asdcvfirfpcbfperhergtcvbyjzfzybj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjdsjyyxnpwfcfjgvhjmxlsxhljrsglg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"szhjejizackdsskdrfrpaecwlwqbukwf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgjnfjfaczcmdiyxlagnkctzkxbcppge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fsgjlafvojsvxpxpmxuebxnmbqoehpte","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmqwrtshnzzxprrtkmdkbnyjfznttujh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aopodzyhmparbidbibzwufbnixmyrdsg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rnxwuaxvauvxscxejesmtwqmbcqyoweu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wodotfhlmmddqbzomfoyoikuzjtdibzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gphhswkqpxovxzprkqdjcxstaauyzlds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swznlrghgdchxiduveopgbftgoquqlun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zuqwvcbsadlxjwtkhaiynciyziwccycf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jylytmzctqridvldopokjkltbjbcoywt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fedmfqrdcgxqfqpnggwncutyihcntxxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gbsiskiigujffomhfyzpemttakypsekj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"criufnjvgqdehuvvlqcpvwlsfgevmgqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjltipxrogqymektemaqjrwvsafywvvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpoayifakbdtkzcpgkienhcbbllzmwdj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhpvsljliclednspczaikjhpznhfpkgg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ieeajschzsyamhtythjxwsosnfposlms","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdocgfuodosarcxacpkxzixomtyeiuho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lsbgnfeqgljsihlvxrmtzakxdzotpjwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wuvdcioxdrfgaegebexwcswtcpvaekbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udtxfcayvbnaglmleesgwyuxllejidwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugcmrxhkvtvkhnkcquoptcitinauxdyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nytyoqqasxblxcnmfpmnhrflffkjkfyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bwbvcgnlrxasioochbwruwohctpophct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnxgnviezzbnbzrmlbqtzhfwidgjwodl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjfzuflgpnmqociagjwcrteidsymggld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"npjauaydtnyxjjhpetihqjderaozwgbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njtjddibmlzmiafjpfqlurqwlvyinauw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exxgefrobgrjrqhbptcbzmgrfcwercyj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlpsgmnrevfzyndwjapmfzifvjvnlxdr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdfjnyzeisjrqtwkmosrmootpshwwcqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhyppwvoewtwlrmgvvrqkasnaqzcpbat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eurdrabevaqvstiebyahjfgposjqqwmv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xojzftnrzhcuhbcqpicuqbfpfdaapkrz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bgsrgafpcumfvszkqsinxrijhrmomwbi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vfereuqsfhrsmuqszndbyhnqechqpdes","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jbfnecxhltfqssyevkswskjpqtymapaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ppxesugfiraspwqkcuupcbyskdfovpvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kbeqbffhqifmunjeoprtfbpaqyybcevd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghkbxkdlfgpqvtukewyltwmrfilkmsld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edqyvhhfbswwvaslsuvpovrdxejwdihl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkevffpayiwpbgeszgfgkrlwlvceedcu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"amajoyshhfekvzidpubhwgukdpzuzcrv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obpqhnwthzzjgwkdcbqtphregfnnonoe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otefbioanilpvimianhnioumqrswdiby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phpzvashnxgqklbqpazjxpvpybbbroyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"quzyexvvnpjdxnndvdccmypticlvukrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prgfihqjjrohziwusiryzfyrprantclk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aygjebgmxzpdqozcaboaaxwcuujwfwbl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bivzgzbcrlbqhphcxopngjwzkyjuiuls","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfdhhicphoplfnksefxfxozxzfmrzegk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mlrbyecmvhhkiyfsetcbjvvnpknailii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvjpnnzqkgvmffkvlmiwdlzfhiajqvaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672428,"databaseName":"models_schema","ddl":"CREATE TABLE `whemkduelgfkfynwcciloonbigfttakk` (\n `dmowheaddeitnezpzaidrcdcjspfhqzv` int NOT NULL,\n `rdwerlbyilwngyodcuyvnzldqjntkrxy` int DEFAULT NULL,\n `bngdrrmguwfmnzephabjvnzkbsokhags` int DEFAULT NULL,\n `iylhssxxenofitlilsixjecugjggfiaq` int DEFAULT NULL,\n `kacumyrbjmydofkzrffrzwejxwcbewvs` int DEFAULT NULL,\n `uhqhadoywjnknyubrrqunmtqjanrmgbu` int DEFAULT NULL,\n `fcwidezpexmpuzpzdeorgpqrbfigruki` int DEFAULT NULL,\n `nopnuplfsxmtoaoxqwpkkjgnacgwhqxt` int DEFAULT NULL,\n `pocdpttszwcprswegslxoezqjktfxtzk` int DEFAULT NULL,\n `dhhazdqehbaffhmcdkpalafjvdcvwqgq` int DEFAULT NULL,\n `zxmzhqfupqxumjzyutxwnziwxdpjrsft` int DEFAULT NULL,\n `hgogwhxbcphedxednayoddansmvysmmn` int DEFAULT NULL,\n `ckhsagzpovbxfpspyyodtjxepuinwutn` int DEFAULT NULL,\n `jsaxlgtywcimwwvvfeukwmibgjxrgizg` int DEFAULT NULL,\n `pddwjgvoihkblzynvpzybcnvmhsokhlq` int DEFAULT NULL,\n `anbxykzskwljlfewgplrikyttaywyfme` int DEFAULT NULL,\n `gpnmmluvwyypoxfrflyjtzdjhvctvgtu` int DEFAULT NULL,\n `sthrytkiugspjrqfkoqtrzixzpdixqpu` int DEFAULT NULL,\n `erkrchejtnhiizbidmuqnfcabvkdzawc` int DEFAULT NULL,\n `taeoodxvqcvuggtbvzvjsebjccrcdfwg` int DEFAULT NULL,\n `zmydyojxrfkhggiyzsnxmnywmhgvnrid` int DEFAULT NULL,\n `csenvdtvfeawnrvdlhmnqcfnxmbavvav` int DEFAULT NULL,\n `ronqkdsoergokzlojfgtujteaglnxlts` int DEFAULT NULL,\n `lolmpazprvfpzbheafpedxerfpeylway` int DEFAULT NULL,\n `ezxhsgcvnubnbwbsknqcnuxieqibzxgx` int DEFAULT NULL,\n `gbocvvpybvixcvqebowfsralreqioctf` int DEFAULT NULL,\n `alvjapudbiseoropjishdifvmfumvppm` int DEFAULT NULL,\n `ljlexhwhpefrsufkhyoeszopbgpsinjy` int DEFAULT NULL,\n `gugercakyowqogopdyqpjoiqtjcbbabz` int DEFAULT NULL,\n `eusucfhfhtlhvrqddwyhhsvfyyqpvqvo` int DEFAULT NULL,\n `xyjhzorqjlezqwlmpjgnxtjepjxgruui` int DEFAULT NULL,\n `nkjelqtbzwdpmdryturbmfbecfwlozdc` int DEFAULT NULL,\n `rhhpvzioaqtjcmebqqkfzsxitjfmgufv` int DEFAULT NULL,\n `zjugjyzbzrfyneqelfzdmlinbrtzubaj` int DEFAULT NULL,\n `ctgecfjqblljqmbnhxcrozmsqifoonos` int DEFAULT NULL,\n `eenhtafhmqztdhzcvxskgooohvqmvlxg` int DEFAULT NULL,\n `wmlpfmocodxetkwpocimrrxkgmyptqap` int DEFAULT NULL,\n `raqmrugcrjghupctnpotflahidbcdcwn` int DEFAULT NULL,\n `ecnpxfonppszwqdzrmwqxwrfqldxgody` int DEFAULT NULL,\n `djczlvqiggwetbeycltcmnoqoqhjwiod` int DEFAULT NULL,\n `hmwyxiketbixspmtgukdppdqyzakklpb` int DEFAULT NULL,\n `jjgwuplexxumiacrkvwlkzzatsvomliz` int DEFAULT NULL,\n `uvwvmsrzpzeslsgrydbrifhydzaqpiop` int DEFAULT NULL,\n `uijtutbvcdwkevozlmwinwynqmwmbdbq` int DEFAULT NULL,\n `hrzemehbeslrnpnqziijhaphqadoqrpp` int DEFAULT NULL,\n `kyauapkubzrporprmteqeywsmmbyqylt` int DEFAULT NULL,\n `dagbanjnlkooadymiibycxhjzhveddih` int DEFAULT NULL,\n `aawslolqpjnsxxgcmydfllazqlvhpmps` int DEFAULT NULL,\n `fyokmbrdzlwujrxazvcvwwdehqzbmeis` int DEFAULT NULL,\n `gactstgxcenclrqykurasfcrkcgkejbv` int DEFAULT NULL,\n `zzxqcmwntqlbitcurnelppynmdbfzbrv` int DEFAULT NULL,\n `dexahwkzqdcrbsuuyvkrsqvxyxdsglab` int DEFAULT NULL,\n `mnglzyqawbnozgatgrnephxyuwajmavx` int DEFAULT NULL,\n `lozidckvkdsgkblvhbgwhohkogqsokhk` int DEFAULT NULL,\n `foimsblrztkzinnxhvyzdnjzsvyfehex` int DEFAULT NULL,\n `shgbrugciztcnhsijjnfdnwsgcgxelsi` int DEFAULT NULL,\n `kejwztievjnyluoggjdmffxcxwobsbri` int DEFAULT NULL,\n `xwmgbcuspvkhjfcrcsxnkhipnwqjkqss` int DEFAULT NULL,\n `txundzcsovmirenoekmqzlzsifnzsqgh` int DEFAULT NULL,\n `dpwzblqibtpuwqlbzqsgcgcpxyelspmj` int DEFAULT NULL,\n `beprgicngpmjzpkxwmqumagzxzcvtxar` int DEFAULT NULL,\n `vehhkprgzlarnusoxtnfnqnwufarkqfj` int DEFAULT NULL,\n `auxtvziksapznibtffedtdzrskwkllxj` int DEFAULT NULL,\n `pbwnupxldrrpsthfkmqbfvxkiuhcjnbl` int DEFAULT NULL,\n `llazqztvzpfnlbnfufuruowepxdkzhxk` int DEFAULT NULL,\n `avrcyudrvcyrkabsdxdybwcmpbzmkglf` int DEFAULT NULL,\n `vfufxyqtwrujdcmhlsmrqcawbryarzbo` int DEFAULT NULL,\n `jcgdwmzqbuankvucuozobryqfyvzsrnm` int DEFAULT NULL,\n `asbwzhsbogdtmikkyzchktthiciuhzfr` int DEFAULT NULL,\n `wrepucrzbuafrxvsvbaodoxkzpainnqa` int DEFAULT NULL,\n `binhrcuvcjggjdbbnfrmupmoipxzpkhl` int DEFAULT NULL,\n `zhdywnonwuywvfsvxrovczjftvyfrahh` int DEFAULT NULL,\n `lsajucybptvcdbvfblgziblyqgomhmxz` int DEFAULT NULL,\n `moimnkecmvbwduuuhokcwnoeoujqkznx` int DEFAULT NULL,\n `uclfwmdsbzlypssqmdjkueipefsbtozo` int DEFAULT NULL,\n `qsrvkzbvzhbwkjcshjlaqmhlbdyiemdl` int DEFAULT NULL,\n `geuntaaieuxjppjwlhvhdompszljojfa` int DEFAULT NULL,\n `gxnadhpyjaltaohdviwkgkdppwtidypj` int DEFAULT NULL,\n `nycrmsepnqyveltfpwelsizlmdcvxvec` int DEFAULT NULL,\n `ciiowoivbftmtlksfuueasimbgkpydnd` int DEFAULT NULL,\n `aediawgxxjszufjyzjaogqtwpqnhpznj` int DEFAULT NULL,\n `dzxeavujaifasyhihwmqgrqbjagxsqjx` int DEFAULT NULL,\n `hhxelqyikoirpxurtafltxoeobvfeqpg` int DEFAULT NULL,\n `gldfnpubzgjiqxasarvtrgosnhiybyzz` int DEFAULT NULL,\n `cdiymvhgjaqxwozigkxteafxjznshmtu` int DEFAULT NULL,\n `wyavnjsvdeylcxtohtsuydublvgkvlzb` int DEFAULT NULL,\n `haqezvfqbbgdxcioesedjlmjrshkaiky` int DEFAULT NULL,\n `xjgecamxmtleunoyenfggacajzkmfwcn` int DEFAULT NULL,\n `yfamabslaqcmukmyoiuraljcbifzzdau` int DEFAULT NULL,\n `wjagfikrakzdouilcdhawbveqggillpc` int DEFAULT NULL,\n `kafgqfblhmwjvbbxydnbzyalcyldgufd` int DEFAULT NULL,\n `ofrxvdpzaedywghkkcfcfinvmsbmtess` int DEFAULT NULL,\n `frmuxvpxwtjwyjvwgdwgtjmpocslzqxw` int DEFAULT NULL,\n `znnceekwvhsmiqhhalwedeoyzkzozmji` int DEFAULT NULL,\n `wqlqpxpjkktbjtttzcvefygurdabkkck` int DEFAULT NULL,\n `uxqpqugytmkmoschelmdpfycfmdwaivt` int DEFAULT NULL,\n `dmpugtvwiembzfftwmddqrhdmwjjifsh` int DEFAULT NULL,\n `gobtvefghfuowrfwftllrhzqsnmbacld` int DEFAULT NULL,\n `rsnfavqjwzfepzptyltxerohqpurfbog` int DEFAULT NULL,\n `mlmmezchvkcnwezduocdewcicvmohbvz` int DEFAULT NULL,\n PRIMARY KEY (`dmowheaddeitnezpzaidrcdcjspfhqzv`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"whemkduelgfkfynwcciloonbigfttakk\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["dmowheaddeitnezpzaidrcdcjspfhqzv"],"columns":[{"name":"dmowheaddeitnezpzaidrcdcjspfhqzv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"rdwerlbyilwngyodcuyvnzldqjntkrxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bngdrrmguwfmnzephabjvnzkbsokhags","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iylhssxxenofitlilsixjecugjggfiaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kacumyrbjmydofkzrffrzwejxwcbewvs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhqhadoywjnknyubrrqunmtqjanrmgbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcwidezpexmpuzpzdeorgpqrbfigruki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nopnuplfsxmtoaoxqwpkkjgnacgwhqxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pocdpttszwcprswegslxoezqjktfxtzk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhhazdqehbaffhmcdkpalafjvdcvwqgq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxmzhqfupqxumjzyutxwnziwxdpjrsft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hgogwhxbcphedxednayoddansmvysmmn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ckhsagzpovbxfpspyyodtjxepuinwutn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jsaxlgtywcimwwvvfeukwmibgjxrgizg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pddwjgvoihkblzynvpzybcnvmhsokhlq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"anbxykzskwljlfewgplrikyttaywyfme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gpnmmluvwyypoxfrflyjtzdjhvctvgtu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sthrytkiugspjrqfkoqtrzixzpdixqpu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"erkrchejtnhiizbidmuqnfcabvkdzawc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"taeoodxvqcvuggtbvzvjsebjccrcdfwg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmydyojxrfkhggiyzsnxmnywmhgvnrid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"csenvdtvfeawnrvdlhmnqcfnxmbavvav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ronqkdsoergokzlojfgtujteaglnxlts","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lolmpazprvfpzbheafpedxerfpeylway","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezxhsgcvnubnbwbsknqcnuxieqibzxgx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gbocvvpybvixcvqebowfsralreqioctf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"alvjapudbiseoropjishdifvmfumvppm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljlexhwhpefrsufkhyoeszopbgpsinjy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gugercakyowqogopdyqpjoiqtjcbbabz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eusucfhfhtlhvrqddwyhhsvfyyqpvqvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyjhzorqjlezqwlmpjgnxtjepjxgruui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nkjelqtbzwdpmdryturbmfbecfwlozdc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhhpvzioaqtjcmebqqkfzsxitjfmgufv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjugjyzbzrfyneqelfzdmlinbrtzubaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctgecfjqblljqmbnhxcrozmsqifoonos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eenhtafhmqztdhzcvxskgooohvqmvlxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmlpfmocodxetkwpocimrrxkgmyptqap","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"raqmrugcrjghupctnpotflahidbcdcwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecnpxfonppszwqdzrmwqxwrfqldxgody","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"djczlvqiggwetbeycltcmnoqoqhjwiod","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmwyxiketbixspmtgukdppdqyzakklpb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjgwuplexxumiacrkvwlkzzatsvomliz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvwvmsrzpzeslsgrydbrifhydzaqpiop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uijtutbvcdwkevozlmwinwynqmwmbdbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hrzemehbeslrnpnqziijhaphqadoqrpp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kyauapkubzrporprmteqeywsmmbyqylt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dagbanjnlkooadymiibycxhjzhveddih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aawslolqpjnsxxgcmydfllazqlvhpmps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fyokmbrdzlwujrxazvcvwwdehqzbmeis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gactstgxcenclrqykurasfcrkcgkejbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzxqcmwntqlbitcurnelppynmdbfzbrv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dexahwkzqdcrbsuuyvkrsqvxyxdsglab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnglzyqawbnozgatgrnephxyuwajmavx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lozidckvkdsgkblvhbgwhohkogqsokhk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"foimsblrztkzinnxhvyzdnjzsvyfehex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shgbrugciztcnhsijjnfdnwsgcgxelsi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kejwztievjnyluoggjdmffxcxwobsbri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xwmgbcuspvkhjfcrcsxnkhipnwqjkqss","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txundzcsovmirenoekmqzlzsifnzsqgh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpwzblqibtpuwqlbzqsgcgcpxyelspmj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"beprgicngpmjzpkxwmqumagzxzcvtxar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vehhkprgzlarnusoxtnfnqnwufarkqfj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"auxtvziksapznibtffedtdzrskwkllxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbwnupxldrrpsthfkmqbfvxkiuhcjnbl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llazqztvzpfnlbnfufuruowepxdkzhxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avrcyudrvcyrkabsdxdybwcmpbzmkglf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vfufxyqtwrujdcmhlsmrqcawbryarzbo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jcgdwmzqbuankvucuozobryqfyvzsrnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"asbwzhsbogdtmikkyzchktthiciuhzfr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wrepucrzbuafrxvsvbaodoxkzpainnqa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"binhrcuvcjggjdbbnfrmupmoipxzpkhl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhdywnonwuywvfsvxrovczjftvyfrahh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lsajucybptvcdbvfblgziblyqgomhmxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"moimnkecmvbwduuuhokcwnoeoujqkznx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uclfwmdsbzlypssqmdjkueipefsbtozo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qsrvkzbvzhbwkjcshjlaqmhlbdyiemdl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"geuntaaieuxjppjwlhvhdompszljojfa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gxnadhpyjaltaohdviwkgkdppwtidypj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nycrmsepnqyveltfpwelsizlmdcvxvec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ciiowoivbftmtlksfuueasimbgkpydnd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aediawgxxjszufjyzjaogqtwpqnhpznj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dzxeavujaifasyhihwmqgrqbjagxsqjx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhxelqyikoirpxurtafltxoeobvfeqpg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gldfnpubzgjiqxasarvtrgosnhiybyzz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cdiymvhgjaqxwozigkxteafxjznshmtu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wyavnjsvdeylcxtohtsuydublvgkvlzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"haqezvfqbbgdxcioesedjlmjrshkaiky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjgecamxmtleunoyenfggacajzkmfwcn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfamabslaqcmukmyoiuraljcbifzzdau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjagfikrakzdouilcdhawbveqggillpc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kafgqfblhmwjvbbxydnbzyalcyldgufd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofrxvdpzaedywghkkcfcfinvmsbmtess","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"frmuxvpxwtjwyjvwgdwgtjmpocslzqxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znnceekwvhsmiqhhalwedeoyzkzozmji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqlqpxpjkktbjtttzcvefygurdabkkck","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxqpqugytmkmoschelmdpfycfmdwaivt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dmpugtvwiembzfftwmddqrhdmwjjifsh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gobtvefghfuowrfwftllrhzqsnmbacld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rsnfavqjwzfepzptyltxerohqpurfbog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mlmmezchvkcnwezduocdewcicvmohbvz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672463,"databaseName":"models_schema","ddl":"CREATE TABLE `wjejvuvpihwabfbueufasjexzxfdfwxr` (\n `pufirulfcfxzxdrpshbulerqeuorzcbe` int NOT NULL,\n `okhqnubaozbefbjnlaetuxtnsppqqsxl` int DEFAULT NULL,\n `sqdtdpqombudlniwhnwxvazfahwvgech` int DEFAULT NULL,\n `qhbibfomcpaduushofskrcmydxyhzhpa` int DEFAULT NULL,\n `lsaqcfbrnoccdcvfmdowgqljflgnqelm` int DEFAULT NULL,\n `hqxolvtyescuepokpilgxmkipgwcuxof` int DEFAULT NULL,\n `dobyvuafrwwriiiotlvstniosxcnynbk` int DEFAULT NULL,\n `cephqjdvpmewczbfrpjstckwufgvssjq` int DEFAULT NULL,\n `zuyayyyvvsskuqvtgynsjqutqxfbtfad` int DEFAULT NULL,\n `igtdmvchqyzjcplulzsslsbbtnjxvibv` int DEFAULT NULL,\n `wbdejtuoruftauzhcppnwyvxczscpjxz` int DEFAULT NULL,\n `cufhklpjzpmuzcrqyhsshffviastcujk` int DEFAULT NULL,\n `fuziarusudzpsazhevnopprckyyvalzl` int DEFAULT NULL,\n `yomqmnuzszqxvoqdboahmwlsqhoaoyjj` int DEFAULT NULL,\n `ovedgtfyxozxasonzdrqcwbzfrykiwbw` int DEFAULT NULL,\n `kbwgvbrewzyzlysrppqhjyijpqweokko` int DEFAULT NULL,\n `tzwulqumhcurpiqvnfgipiajoplywion` int DEFAULT NULL,\n `relagtzgdtoevpahtmvloetqmplzthkz` int DEFAULT NULL,\n `vwxdmzejaqkpeiymrhokbgpdbchtjfaq` int DEFAULT NULL,\n `jwwhalizzumrfpamdskfcmbdanhrzdnw` int DEFAULT NULL,\n `ejxblmqaayhxdhsucvabxtyteshcvbov` int DEFAULT NULL,\n `jdtqgljtpelowfkboraxxbzboghihxse` int DEFAULT NULL,\n `dvjzbipdpwtbjlvvmtlazzmuwavgmpja` int DEFAULT NULL,\n `wyicmbmcsotfwiwxkgiffervapczsgbz` int DEFAULT NULL,\n `ocrnkbecpklnodlhgnknotdqoigyimut` int DEFAULT NULL,\n `umrgkzctokxcmnpbvycuavylshocctxn` int DEFAULT NULL,\n `ozicgscvxlsglwfuiwbxqcgffefjubtf` int DEFAULT NULL,\n `yoqnosteuspozqudidfyhqutumictoeo` int DEFAULT NULL,\n `aqivsjzckgdeltvsogiickpykydwvxyk` int DEFAULT NULL,\n `zfkrkobjtvmtwzpngewfuyommzkgssia` int DEFAULT NULL,\n `lsfzwypeteifxixjzrusphjrbwjimzmi` int DEFAULT NULL,\n `ssgxamymcchelftuenmhbtqcqkokevgy` int DEFAULT NULL,\n `hbujapmbxzrlplyesyvxmmwitfcquuxb` int DEFAULT NULL,\n `mcejgslxkukdwafnoshwvmgkpcitccar` int DEFAULT NULL,\n `yxowmmmpwqvzlwepxmhuqwdveqacrzmo` int DEFAULT NULL,\n `pnjoelmcwqbbkyzyvxlhzpaxqfrkgrjc` int DEFAULT NULL,\n `filyldcukublcsbplrybhkojvmwtgwlv` int DEFAULT NULL,\n `wtpbocuhaigmwjrdsuildvkbqppvdhfa` int DEFAULT NULL,\n `pcrixxwxfqgdlfxcnjnxerzvpdydepwp` int DEFAULT NULL,\n `bxyxiqskapxybbsjrodkiewxpklxygqh` int DEFAULT NULL,\n `aadrlpuddzsveqwerzptzrvlhvrxcqvd` int DEFAULT NULL,\n `ypebckaifetrsvibrrqpdrarwhrhliye` int DEFAULT NULL,\n `wltrpkbelhupijsbrjgbdbgrmcjgeged` int DEFAULT NULL,\n `vgtfwmkjrntgtvadlscmvouhqrffqksd` int DEFAULT NULL,\n `vzhexktslrphxyogyoyldpehntxoalae` int DEFAULT NULL,\n `xatiqpluevainjgtchzhuigbklicmkcu` int DEFAULT NULL,\n `lflcipkbrdehctrijwvzcmueanizdgeh` int DEFAULT NULL,\n `cilnqdnsizjztxvihaoigcpomtbjseix` int DEFAULT NULL,\n `xncuwkcgtmwtxrnsritudwckuaoaunsd` int DEFAULT NULL,\n `zylukygjjmddjonogdfhsheulkpdomcb` int DEFAULT NULL,\n `okqypqeqbbkuqjmnashmorofrxopdyhr` int DEFAULT NULL,\n `yqrlaziteifsxkwwcipkgyvgfcebigxs` int DEFAULT NULL,\n `ozuhwyvyvwjnopfruzupkoicktwixcde` int DEFAULT NULL,\n `bsbmkmiulnhpwxmatnexuzcxoypeoxfg` int DEFAULT NULL,\n `lfelexsgeiglywvzkoxozdtkxdosjcpq` int DEFAULT NULL,\n `xwdsicoxyihlwifldmusqgqhybujaapp` int DEFAULT NULL,\n `yhhfzmyaxrsdpkauxhczkmwkztcntcwj` int DEFAULT NULL,\n `iirexqntqdzkmymwcxujuoywqyngbuuf` int DEFAULT NULL,\n `upbpbystmlunxuxlknnlgkuwvkbmynmj` int DEFAULT NULL,\n `ooiyhslbtcgxsyjqkhemqntggxjyvojr` int DEFAULT NULL,\n `hsssmpilqwyhbfprmfxhnokqxdtzyjlj` int DEFAULT NULL,\n `zvcplpcdzpvgtizdjotzwekdtypygvio` int DEFAULT NULL,\n `nnhnlklgacjfqnrikhvewnmyrlwkrweg` int DEFAULT NULL,\n `bviinxfwsisxvnqxnaqzatqzquuwjced` int DEFAULT NULL,\n `evupbquadhlrenhkyviathwdsvtmabws` int DEFAULT NULL,\n `ohlcwkeebjahobzgtommvtmjbgphokwy` int DEFAULT NULL,\n `kxfzvyqevapekemwwshdzzfepopmpjub` int DEFAULT NULL,\n `wjqgchzyaphecnjgooujgzbburpsathj` int DEFAULT NULL,\n `nihtjbvalfydushdzqhkwehlvvdvfvmh` int DEFAULT NULL,\n `yjjuappwknmqmyvvksksidohqaftwbqx` int DEFAULT NULL,\n `jsgaywcryuncaolrganqspkzbopchlsk` int DEFAULT NULL,\n `omiamvpxfxsthyalxpzzbyiaziorecwo` int DEFAULT NULL,\n `pihvcavvvsnuidzkyeoaywnfqjjcwfwn` int DEFAULT NULL,\n `ksstivywnqaqmqorhxxdvtirhkbbqeaw` int DEFAULT NULL,\n `lbqglnhrinmmznshcygghjkmjlrylqia` int DEFAULT NULL,\n `xxryrixtkegjxbwczaljaybpcfnbqwaa` int DEFAULT NULL,\n `kkamdstfbhpvzjdiliklyivkljfpwmyx` int DEFAULT NULL,\n `xwaqbtnddxrgxomfkoziqbjkcxfkfjsm` int DEFAULT NULL,\n `itoewcbqnwmatbzfmnimrevcytnjmfhv` int DEFAULT NULL,\n `vycndgmvbqhnmuubetyaozsrcmtqnoja` int DEFAULT NULL,\n `sikbffyddymyzqnittkbccyggjzgaamj` int DEFAULT NULL,\n `omtrotetmqydueechtkcpzsdidmtzeio` int DEFAULT NULL,\n `nuwroedfufijsrfkcavdivfxrpqydsje` int DEFAULT NULL,\n `qnqrnorbruftgvefnqskdlfrdmhahnzl` int DEFAULT NULL,\n `pvtyybrliurozizbqxujanoflpcemezz` int DEFAULT NULL,\n `jxhssqbjcxpxnytgpujwgqduquesadqb` int DEFAULT NULL,\n `teiehkjzsoxburqobpkriaosweuctcxr` int DEFAULT NULL,\n `pknlxavplmapdnygyumehnsysflszyzp` int DEFAULT NULL,\n `kurrigyxtrfrbqvpjkbkwfwzqglcydmf` int DEFAULT NULL,\n `rxhwhppynffmnwmtzypvzbthoringubs` int DEFAULT NULL,\n `slepzegrxxgqmhjspnpbklzcprzdtqex` int DEFAULT NULL,\n `yowdwcanbpdevkbnudcjplhkbfkbwjol` int DEFAULT NULL,\n `vuzaglnmbqckvcufnyuyujyvnlxpwpzl` int DEFAULT NULL,\n `otcofkvsucusccdssnpbbevcjqngtwlw` int DEFAULT NULL,\n `dlbtdvvsqqinxggfagbmanmgxqfztmqg` int DEFAULT NULL,\n `nzrpdvvuopvbppdfmhwvyspuljbjayqm` int DEFAULT NULL,\n `wvvnuwkummpnaoagawmbcokthyyncwbr` int DEFAULT NULL,\n `jtlngezsasaxindeuusnpxovywwetspl` int DEFAULT NULL,\n `inkmthtilwikezlzngbenpkygftpvnsz` int DEFAULT NULL,\n `ejtdsivqjbhqgozqgigqphqsvqctyolv` int DEFAULT NULL,\n PRIMARY KEY (`pufirulfcfxzxdrpshbulerqeuorzcbe`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"wjejvuvpihwabfbueufasjexzxfdfwxr\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["pufirulfcfxzxdrpshbulerqeuorzcbe"],"columns":[{"name":"pufirulfcfxzxdrpshbulerqeuorzcbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"okhqnubaozbefbjnlaetuxtnsppqqsxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sqdtdpqombudlniwhnwxvazfahwvgech","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhbibfomcpaduushofskrcmydxyhzhpa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lsaqcfbrnoccdcvfmdowgqljflgnqelm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqxolvtyescuepokpilgxmkipgwcuxof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dobyvuafrwwriiiotlvstniosxcnynbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cephqjdvpmewczbfrpjstckwufgvssjq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zuyayyyvvsskuqvtgynsjqutqxfbtfad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igtdmvchqyzjcplulzsslsbbtnjxvibv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbdejtuoruftauzhcppnwyvxczscpjxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cufhklpjzpmuzcrqyhsshffviastcujk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fuziarusudzpsazhevnopprckyyvalzl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yomqmnuzszqxvoqdboahmwlsqhoaoyjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ovedgtfyxozxasonzdrqcwbzfrykiwbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kbwgvbrewzyzlysrppqhjyijpqweokko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tzwulqumhcurpiqvnfgipiajoplywion","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"relagtzgdtoevpahtmvloetqmplzthkz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vwxdmzejaqkpeiymrhokbgpdbchtjfaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwwhalizzumrfpamdskfcmbdanhrzdnw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejxblmqaayhxdhsucvabxtyteshcvbov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdtqgljtpelowfkboraxxbzboghihxse","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvjzbipdpwtbjlvvmtlazzmuwavgmpja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wyicmbmcsotfwiwxkgiffervapczsgbz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocrnkbecpklnodlhgnknotdqoigyimut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umrgkzctokxcmnpbvycuavylshocctxn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ozicgscvxlsglwfuiwbxqcgffefjubtf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yoqnosteuspozqudidfyhqutumictoeo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqivsjzckgdeltvsogiickpykydwvxyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zfkrkobjtvmtwzpngewfuyommzkgssia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lsfzwypeteifxixjzrusphjrbwjimzmi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ssgxamymcchelftuenmhbtqcqkokevgy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbujapmbxzrlplyesyvxmmwitfcquuxb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcejgslxkukdwafnoshwvmgkpcitccar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxowmmmpwqvzlwepxmhuqwdveqacrzmo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnjoelmcwqbbkyzyvxlhzpaxqfrkgrjc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"filyldcukublcsbplrybhkojvmwtgwlv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wtpbocuhaigmwjrdsuildvkbqppvdhfa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pcrixxwxfqgdlfxcnjnxerzvpdydepwp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bxyxiqskapxybbsjrodkiewxpklxygqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aadrlpuddzsveqwerzptzrvlhvrxcqvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypebckaifetrsvibrrqpdrarwhrhliye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wltrpkbelhupijsbrjgbdbgrmcjgeged","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgtfwmkjrntgtvadlscmvouhqrffqksd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vzhexktslrphxyogyoyldpehntxoalae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xatiqpluevainjgtchzhuigbklicmkcu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lflcipkbrdehctrijwvzcmueanizdgeh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cilnqdnsizjztxvihaoigcpomtbjseix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xncuwkcgtmwtxrnsritudwckuaoaunsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zylukygjjmddjonogdfhsheulkpdomcb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"okqypqeqbbkuqjmnashmorofrxopdyhr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqrlaziteifsxkwwcipkgyvgfcebigxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ozuhwyvyvwjnopfruzupkoicktwixcde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bsbmkmiulnhpwxmatnexuzcxoypeoxfg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfelexsgeiglywvzkoxozdtkxdosjcpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xwdsicoxyihlwifldmusqgqhybujaapp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhhfzmyaxrsdpkauxhczkmwkztcntcwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iirexqntqdzkmymwcxujuoywqyngbuuf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upbpbystmlunxuxlknnlgkuwvkbmynmj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ooiyhslbtcgxsyjqkhemqntggxjyvojr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hsssmpilqwyhbfprmfxhnokqxdtzyjlj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvcplpcdzpvgtizdjotzwekdtypygvio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nnhnlklgacjfqnrikhvewnmyrlwkrweg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bviinxfwsisxvnqxnaqzatqzquuwjced","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evupbquadhlrenhkyviathwdsvtmabws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohlcwkeebjahobzgtommvtmjbgphokwy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxfzvyqevapekemwwshdzzfepopmpjub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjqgchzyaphecnjgooujgzbburpsathj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nihtjbvalfydushdzqhkwehlvvdvfvmh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjjuappwknmqmyvvksksidohqaftwbqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jsgaywcryuncaolrganqspkzbopchlsk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omiamvpxfxsthyalxpzzbyiaziorecwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pihvcavvvsnuidzkyeoaywnfqjjcwfwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ksstivywnqaqmqorhxxdvtirhkbbqeaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lbqglnhrinmmznshcygghjkmjlrylqia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxryrixtkegjxbwczaljaybpcfnbqwaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kkamdstfbhpvzjdiliklyivkljfpwmyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xwaqbtnddxrgxomfkoziqbjkcxfkfjsm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itoewcbqnwmatbzfmnimrevcytnjmfhv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vycndgmvbqhnmuubetyaozsrcmtqnoja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sikbffyddymyzqnittkbccyggjzgaamj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omtrotetmqydueechtkcpzsdidmtzeio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nuwroedfufijsrfkcavdivfxrpqydsje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qnqrnorbruftgvefnqskdlfrdmhahnzl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pvtyybrliurozizbqxujanoflpcemezz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jxhssqbjcxpxnytgpujwgqduquesadqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"teiehkjzsoxburqobpkriaosweuctcxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pknlxavplmapdnygyumehnsysflszyzp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kurrigyxtrfrbqvpjkbkwfwzqglcydmf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxhwhppynffmnwmtzypvzbthoringubs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"slepzegrxxgqmhjspnpbklzcprzdtqex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yowdwcanbpdevkbnudcjplhkbfkbwjol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vuzaglnmbqckvcufnyuyujyvnlxpwpzl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otcofkvsucusccdssnpbbevcjqngtwlw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dlbtdvvsqqinxggfagbmanmgxqfztmqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzrpdvvuopvbppdfmhwvyspuljbjayqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wvvnuwkummpnaoagawmbcokthyyncwbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jtlngezsasaxindeuusnpxovywwetspl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"inkmthtilwikezlzngbenpkygftpvnsz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejtdsivqjbhqgozqgigqphqsvqctyolv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672496,"databaseName":"models_schema","ddl":"CREATE TABLE `wjrpbvixffhcxmgwdtqlaaeddrzznowk` (\n `sgzzaiiuhndpqaaqesgbskamjobcwcnw` int NOT NULL,\n `haxjwvkzfmrztbapsvbquuaonjcaxwvk` int DEFAULT NULL,\n `vfhuyybyfukxonukgoleeuqqjgjpbwji` int DEFAULT NULL,\n `kbgfeszdigcvtxauqybjzkxvlzmfyqye` int DEFAULT NULL,\n `dwkyfpchjnxduwvclknvefniexfsxgcg` int DEFAULT NULL,\n `myhtqglwuawzrpuqsaloiywziwdtjnmy` int DEFAULT NULL,\n `qqepqdvbfwibejtpmdhxasqcewpwqezu` int DEFAULT NULL,\n `mxkxxthvpbkhmmwdjlrrhjikafsiasbn` int DEFAULT NULL,\n `pdtkqnhlwhajzwavzpsanepcmwxforum` int DEFAULT NULL,\n `upxmujzovsprhvlmwflpxovgvozawpjq` int DEFAULT NULL,\n `zbtyknpguhuvvaqyuhsgoqsinqjkaxjl` int DEFAULT NULL,\n `lugkfgswwyruchqxvgpccuizplzoozpy` int DEFAULT NULL,\n `spvuoqvzpyhohhejhbtipbatctiodfio` int DEFAULT NULL,\n `vphhkbkcofzuparwtgvrzsqqnfxkwhdc` int DEFAULT NULL,\n `ciofgdbbfrcpltdxiuigcxltvgjanapc` int DEFAULT NULL,\n `pmoeulwpwatljkdfhegzkkjjefjnlnrj` int DEFAULT NULL,\n `ppcuvkqsecyngdwsczfaexdbvvbtqabi` int DEFAULT NULL,\n `wwrahfwqnehsmtreyuiqowdrvztqentj` int DEFAULT NULL,\n `fcuktmynfbucpbmzgugewbuhfbtuvtfy` int DEFAULT NULL,\n `fepmqcwscoblfnvlyeswnfytdducwgaa` int DEFAULT NULL,\n `klzpedtlmbjdxooutzvxbieeorekwlhp` int DEFAULT NULL,\n `jytfeuailhgyybejouhhdacwduajprst` int DEFAULT NULL,\n `stmavzmrlkmtarlfhmszywionqalcyvy` int DEFAULT NULL,\n `fivbxxungmdykgqjncqdaepqzijrmfnw` int DEFAULT NULL,\n `wgjbvusyxljcfvaumblqgqzmteknjjuo` int DEFAULT NULL,\n `gjnriuxkbadlsoxgzeasxrknzuxevtag` int DEFAULT NULL,\n `wruzktlmknlumupijitnyxhtibqxiizm` int DEFAULT NULL,\n `dkjlpktmmhauyiiglkdqkjtyvifufjal` int DEFAULT NULL,\n `edjmrmjmskojgauilcwmmbdyzifbbdbr` int DEFAULT NULL,\n `pcxdmrvzfnhptgpfuppgserdqcnjmgre` int DEFAULT NULL,\n `vqkyleehrrlimikxphypymcthievkgdw` int DEFAULT NULL,\n `qrpxulvzqvbiwrtjjbsbmoyzehwdrqvp` int DEFAULT NULL,\n `duvrtwkxnhwlsacthhxwfkhehwgumapc` int DEFAULT NULL,\n `bbqrwymtiihwgzqkjsbndhgwuzmdffdk` int DEFAULT NULL,\n `wmosgsdrcerbyudcmbjwonrfmulfxrvz` int DEFAULT NULL,\n `lludufntstglodqlmokjryaftviyggkq` int DEFAULT NULL,\n `jpwxfljuwjhuhloiaxxanwqnewexmmzk` int DEFAULT NULL,\n `avwvcizvustowclllyfopnwoohrwwlge` int DEFAULT NULL,\n `yajleyxhsuadzgcvvmexapvyecqgezkb` int DEFAULT NULL,\n `learhcycbqkdkgbktprxylhupqdvpaot` int DEFAULT NULL,\n `klgwghcmnsdqbirptyrgewdkwcajlobv` int DEFAULT NULL,\n `kmbsdcmhpxnesjaazxqdlnzjffyfzuga` int DEFAULT NULL,\n `xkgvierufimfgjnnbvtyuqcmxxkozpke` int DEFAULT NULL,\n `mfyzbghhkuslgiagdrfhsusenjmanadn` int DEFAULT NULL,\n `jmtvzoglaovytirpqwgwhxyhbvbgtilj` int DEFAULT NULL,\n `guoqyilcyosvnlfgivxhlzoaoaxwdown` int DEFAULT NULL,\n `vugfeberfpftxazgzaeiaitwkyngccrg` int DEFAULT NULL,\n `swjhjrbrzgqnwfsrpgzmombrnnpuiqaz` int DEFAULT NULL,\n `xworfwnozcezybqnbtstgzetvybxlfki` int DEFAULT NULL,\n `omzwdcgklbxxidmdqufbdexkgctiqbth` int DEFAULT NULL,\n `kefdaehbwhjtmtmslxolxlbdevymtwik` int DEFAULT NULL,\n `ujizfvykuhjgurfwcruyybhbxnbqsrrw` int DEFAULT NULL,\n `xcjjegrqpqotpnhvatucdvgygbkynrbm` int DEFAULT NULL,\n `sggfzmlxbtsfvdtshcgcjfqnavvdhkwk` int DEFAULT NULL,\n `iqzlvscafzwjxvshcgwbgypjeguwecbh` int DEFAULT NULL,\n `sezeaezmddaaftrjfvpwwbcsxbrepjkt` int DEFAULT NULL,\n `vbtinkmvbbytoaacornhphkmowoikksq` int DEFAULT NULL,\n `wejhmaqsnaofzmxhthbgcpyozvstwarx` int DEFAULT NULL,\n `cytrcqamtwenvqcsljblwsgxyqxpaxsd` int DEFAULT NULL,\n `mzhxzvegbcgyhwjjrxixwdmepoheerqr` int DEFAULT NULL,\n `mpixjsmvhzypgszpqtojiyearafeoxdk` int DEFAULT NULL,\n `hojbivvafyvisxfnpmsauhjbkqosmtyw` int DEFAULT NULL,\n `acnjdoryeyajolbehtofsxizfdoqcrry` int DEFAULT NULL,\n `xkegsfpnwmlufplfrwtewgnzqbelvwwe` int DEFAULT NULL,\n `pxiblabxucoiuxmvclgsnwrtqivxvddg` int DEFAULT NULL,\n `cbdqabtafesehvikhhzlnvuetdelqwdj` int DEFAULT NULL,\n `erxkmctvlctuslshrxdipfiiciywnfsr` int DEFAULT NULL,\n `dqbydrjwnniedvmkmkklhzekqungaqwm` int DEFAULT NULL,\n `gdkjmuqfyrfygmdbzeqyzexjlhmmdrxh` int DEFAULT NULL,\n `gekaajxpeggbxjyxcqzezsviwohgglgz` int DEFAULT NULL,\n `vowvsbhqctrjyaarlfuitssttdfmlpzm` int DEFAULT NULL,\n `kzgxozaifezqsrjzsjljakssfqyhktdq` int DEFAULT NULL,\n `vctoxyawoujeroyghvdhiquisfeehwmt` int DEFAULT NULL,\n `giririlhzbrbkdcdtoofnaiettikujyw` int DEFAULT NULL,\n `pfqjucelrujdssenxyyprbkdxmwlgdfv` int DEFAULT NULL,\n `anrptmjmvvipwjzyjkskampqdyqadtsv` int DEFAULT NULL,\n `afxflipopovwawiwfdgyoinxloclevum` int DEFAULT NULL,\n `equgripnuxbokzaauimxjugrbrwpndlu` int DEFAULT NULL,\n `hiiehcgfsflznmeyqqyilprqstsygqeo` int DEFAULT NULL,\n `jkdxxfqacyjilcvrnaqgdaqanapbdgff` int DEFAULT NULL,\n `kqkplnxoraseazpnovwryfouazfbhpfz` int DEFAULT NULL,\n `pozgsboisqipbfxeerbrmusrojmreoev` int DEFAULT NULL,\n `lfhlncjixgzbkdrlkpthipwfjcdzquhb` int DEFAULT NULL,\n `sgnmxbzlwrpjpvobtfbskloametwfdzo` int DEFAULT NULL,\n `gcmnazqqxbreplolieqwjggmfabtgcwz` int DEFAULT NULL,\n `jvsttmoqtwjgvtrqnujmsyiemguzyswu` int DEFAULT NULL,\n `nzwddvkwqqsryjnecljcsejifsvnmzxz` int DEFAULT NULL,\n `vbmragipwpackdbiewnlkzltdkkaaasc` int DEFAULT NULL,\n `kxlkxyyoyjlbvkezrhwvcigyumxiqjgw` int DEFAULT NULL,\n `pmngkxupiwvdfdamunqpzggrmuybfwov` int DEFAULT NULL,\n `mgagegxnrtmhetlsnbtztrripijuvtri` int DEFAULT NULL,\n `daxvmgvvrdfvsadoeypezgfnmxlmifxw` int DEFAULT NULL,\n `eteuxegrcjzpiesqefwvgietrzlgomqm` int DEFAULT NULL,\n `fjfefqmqqbycqfcykjrxheqkdfizoywp` int DEFAULT NULL,\n `ospwpefgeqtdgaqredvlmmqmjcdkdojv` int DEFAULT NULL,\n `ezghjvtpuwrhaloolywltpalzdkeafra` int DEFAULT NULL,\n `hburnuyykbbrwxtkfmkbkzszqpinjoev` int DEFAULT NULL,\n `qadaqaxdkfptzxxqrefqwahqyfrudjrh` int DEFAULT NULL,\n `gecbzwwqqljbdduljadjcgcrwqxmoign` int DEFAULT NULL,\n `nkbiouqzyvmrmdzkykivjpcmstignhsy` int DEFAULT NULL,\n PRIMARY KEY (`sgzzaiiuhndpqaaqesgbskamjobcwcnw`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"wjrpbvixffhcxmgwdtqlaaeddrzznowk\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["sgzzaiiuhndpqaaqesgbskamjobcwcnw"],"columns":[{"name":"sgzzaiiuhndpqaaqesgbskamjobcwcnw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"haxjwvkzfmrztbapsvbquuaonjcaxwvk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vfhuyybyfukxonukgoleeuqqjgjpbwji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kbgfeszdigcvtxauqybjzkxvlzmfyqye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwkyfpchjnxduwvclknvefniexfsxgcg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"myhtqglwuawzrpuqsaloiywziwdtjnmy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqepqdvbfwibejtpmdhxasqcewpwqezu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mxkxxthvpbkhmmwdjlrrhjikafsiasbn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdtkqnhlwhajzwavzpsanepcmwxforum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upxmujzovsprhvlmwflpxovgvozawpjq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbtyknpguhuvvaqyuhsgoqsinqjkaxjl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lugkfgswwyruchqxvgpccuizplzoozpy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"spvuoqvzpyhohhejhbtipbatctiodfio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vphhkbkcofzuparwtgvrzsqqnfxkwhdc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ciofgdbbfrcpltdxiuigcxltvgjanapc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmoeulwpwatljkdfhegzkkjjefjnlnrj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ppcuvkqsecyngdwsczfaexdbvvbtqabi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwrahfwqnehsmtreyuiqowdrvztqentj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcuktmynfbucpbmzgugewbuhfbtuvtfy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fepmqcwscoblfnvlyeswnfytdducwgaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"klzpedtlmbjdxooutzvxbieeorekwlhp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jytfeuailhgyybejouhhdacwduajprst","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"stmavzmrlkmtarlfhmszywionqalcyvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fivbxxungmdykgqjncqdaepqzijrmfnw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wgjbvusyxljcfvaumblqgqzmteknjjuo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjnriuxkbadlsoxgzeasxrknzuxevtag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wruzktlmknlumupijitnyxhtibqxiizm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkjlpktmmhauyiiglkdqkjtyvifufjal","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edjmrmjmskojgauilcwmmbdyzifbbdbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pcxdmrvzfnhptgpfuppgserdqcnjmgre","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqkyleehrrlimikxphypymcthievkgdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qrpxulvzqvbiwrtjjbsbmoyzehwdrqvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"duvrtwkxnhwlsacthhxwfkhehwgumapc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbqrwymtiihwgzqkjsbndhgwuzmdffdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmosgsdrcerbyudcmbjwonrfmulfxrvz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lludufntstglodqlmokjryaftviyggkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jpwxfljuwjhuhloiaxxanwqnewexmmzk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avwvcizvustowclllyfopnwoohrwwlge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yajleyxhsuadzgcvvmexapvyecqgezkb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"learhcycbqkdkgbktprxylhupqdvpaot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"klgwghcmnsdqbirptyrgewdkwcajlobv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kmbsdcmhpxnesjaazxqdlnzjffyfzuga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkgvierufimfgjnnbvtyuqcmxxkozpke","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mfyzbghhkuslgiagdrfhsusenjmanadn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmtvzoglaovytirpqwgwhxyhbvbgtilj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"guoqyilcyosvnlfgivxhlzoaoaxwdown","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vugfeberfpftxazgzaeiaitwkyngccrg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swjhjrbrzgqnwfsrpgzmombrnnpuiqaz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xworfwnozcezybqnbtstgzetvybxlfki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omzwdcgklbxxidmdqufbdexkgctiqbth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kefdaehbwhjtmtmslxolxlbdevymtwik","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujizfvykuhjgurfwcruyybhbxnbqsrrw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xcjjegrqpqotpnhvatucdvgygbkynrbm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sggfzmlxbtsfvdtshcgcjfqnavvdhkwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqzlvscafzwjxvshcgwbgypjeguwecbh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sezeaezmddaaftrjfvpwwbcsxbrepjkt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbtinkmvbbytoaacornhphkmowoikksq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wejhmaqsnaofzmxhthbgcpyozvstwarx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cytrcqamtwenvqcsljblwsgxyqxpaxsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzhxzvegbcgyhwjjrxixwdmepoheerqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpixjsmvhzypgszpqtojiyearafeoxdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hojbivvafyvisxfnpmsauhjbkqosmtyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"acnjdoryeyajolbehtofsxizfdoqcrry","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkegsfpnwmlufplfrwtewgnzqbelvwwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxiblabxucoiuxmvclgsnwrtqivxvddg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbdqabtafesehvikhhzlnvuetdelqwdj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"erxkmctvlctuslshrxdipfiiciywnfsr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqbydrjwnniedvmkmkklhzekqungaqwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdkjmuqfyrfygmdbzeqyzexjlhmmdrxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gekaajxpeggbxjyxcqzezsviwohgglgz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vowvsbhqctrjyaarlfuitssttdfmlpzm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzgxozaifezqsrjzsjljakssfqyhktdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vctoxyawoujeroyghvdhiquisfeehwmt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"giririlhzbrbkdcdtoofnaiettikujyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pfqjucelrujdssenxyyprbkdxmwlgdfv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"anrptmjmvvipwjzyjkskampqdyqadtsv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afxflipopovwawiwfdgyoinxloclevum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"equgripnuxbokzaauimxjugrbrwpndlu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hiiehcgfsflznmeyqqyilprqstsygqeo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jkdxxfqacyjilcvrnaqgdaqanapbdgff","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kqkplnxoraseazpnovwryfouazfbhpfz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pozgsboisqipbfxeerbrmusrojmreoev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfhlncjixgzbkdrlkpthipwfjcdzquhb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sgnmxbzlwrpjpvobtfbskloametwfdzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gcmnazqqxbreplolieqwjggmfabtgcwz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvsttmoqtwjgvtrqnujmsyiemguzyswu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzwddvkwqqsryjnecljcsejifsvnmzxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbmragipwpackdbiewnlkzltdkkaaasc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxlkxyyoyjlbvkezrhwvcigyumxiqjgw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmngkxupiwvdfdamunqpzggrmuybfwov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mgagegxnrtmhetlsnbtztrripijuvtri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"daxvmgvvrdfvsadoeypezgfnmxlmifxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eteuxegrcjzpiesqefwvgietrzlgomqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjfefqmqqbycqfcykjrxheqkdfizoywp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ospwpefgeqtdgaqredvlmmqmjcdkdojv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezghjvtpuwrhaloolywltpalzdkeafra","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hburnuyykbbrwxtkfmkbkzszqpinjoev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qadaqaxdkfptzxxqrefqwahqyfrudjrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gecbzwwqqljbdduljadjcgcrwqxmoign","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nkbiouqzyvmrmdzkykivjpcmstignhsy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672531,"databaseName":"models_schema","ddl":"CREATE TABLE `wnbrzqlwqabujjsfpielvqcwmrnmuqwu` (\n `tcgvabuohjlyelwzaatpcdhgjbnnbspv` int NOT NULL,\n `bogcbuytxwntoujfwgfbemrlkqhnglpi` int DEFAULT NULL,\n `bemvmqhnsgpxogtpsevysihudxtunykn` int DEFAULT NULL,\n `tknlzhzijygvlnmxonzpmmkozsqcsshf` int DEFAULT NULL,\n `sjperkfvbtkplmgaaolbmehwsknxccex` int DEFAULT NULL,\n `lfmdtslsoauqqsxnuwpzwcuypgskqliu` int DEFAULT NULL,\n `tkzuizlxzccqhgkasjtgjlexudzwxzyw` int DEFAULT NULL,\n `tvwkfddcjloknskgvttchgfznkkmanut` int DEFAULT NULL,\n `ghsjxdravznotaobbreniiwmzgregobp` int DEFAULT NULL,\n `kohwcmarzzjbtmsbfledknapdieurgbj` int DEFAULT NULL,\n `wvpaxhewpfuphgloclsvndxccvqostnf` int DEFAULT NULL,\n `yqdskazsrfzgvfquxvdjjdwqzrbhklqv` int DEFAULT NULL,\n `cljvtwfxgdnoxgyfrjmtmcpyskmkbmdo` int DEFAULT NULL,\n `asrxnggztnvqxgmyikadiqhdggvhvhpm` int DEFAULT NULL,\n `gyszzdtcfpmzadvdrhcsbnzqkrmierxz` int DEFAULT NULL,\n `mludmoqslmalodtivwsrnsrebqvlxdsv` int DEFAULT NULL,\n `ewwgypvrobdysqvdmsmpqhdtikcgakpu` int DEFAULT NULL,\n `qpfhxjrapguefvtccmtfzyrgaoogdpmp` int DEFAULT NULL,\n `dpcosagzbhltumgxjrigyipwquvcgayc` int DEFAULT NULL,\n `wjtjmfmnysexedxmskpvvyhzyymuymyn` int DEFAULT NULL,\n `pwvvehvtmzwmdhrysnhibxzcbdyiccsw` int DEFAULT NULL,\n `gybpglkeuiwepbduptwzrguvfeqqsgyk` int DEFAULT NULL,\n `smajcyjqabbuhwpdrxxpmuvgvkxvpjnf` int DEFAULT NULL,\n `kjtfwtvyhcpiuoqexnacytjklnddnrwo` int DEFAULT NULL,\n `gdjykmopbylszxcrdpwfqxpfrgtgsdly` int DEFAULT NULL,\n `vqbcwiymtaawzegnwleqvqllmhndpkig` int DEFAULT NULL,\n `tjvivnomgftnlhrlhznlpspgzescuzye` int DEFAULT NULL,\n `rdtzgvwyqvrelseamqpwgunefhxylkag` int DEFAULT NULL,\n `fwzbsbmjcampwkkanpychkthtujnrhiu` int DEFAULT NULL,\n `styopsyrycfsebddaqgiyzcpjwdipdes` int DEFAULT NULL,\n `ktpvtfzuptmjbalplmtvrjharcmirfec` int DEFAULT NULL,\n `lryzrpuomffnqqyirmuwpgrwxlkmgyyi` int DEFAULT NULL,\n `wkecpvkplpstlwosajzobwmatmwdfvuc` int DEFAULT NULL,\n `gqbgkcndqgyugwgoollrmgxrittleflk` int DEFAULT NULL,\n `cfkescndgfynmyfiazcqddrsczsaudqp` int DEFAULT NULL,\n `jsaoznhnffggsneqaoxjtmcwynxvjfuw` int DEFAULT NULL,\n `omtodycvpcobpclpbmnflxlqevlyjlxr` int DEFAULT NULL,\n `lhwodzqmylmmbhglfnuvnaagqxknecrp` int DEFAULT NULL,\n `xdvroczszliwozrvqcicjsbhttfcsedx` int DEFAULT NULL,\n `kfxztyuuazofpgztjitijhdbloomvchj` int DEFAULT NULL,\n `tnvkxpygpovolemftkxplxczfpvwwjhi` int DEFAULT NULL,\n `qfpegdqgqkkvljpowxjfbmlzckhmqmbf` int DEFAULT NULL,\n `xloypeqlfauyhqtyrfkrsghscylvnrkh` int DEFAULT NULL,\n `vgfcyfgpywdznkrhnpavinsfwywwflzd` int DEFAULT NULL,\n `bjtfdosjfaebzfegzmzvihkbmaioyfln` int DEFAULT NULL,\n `evghluwwkbsqxcgmbijekgsisosmbihw` int DEFAULT NULL,\n `wswimufbcmrakycvdggqyklfbfpsfbpz` int DEFAULT NULL,\n `bxdizbqnovkcoshjhxfjvhiwoljjnxth` int DEFAULT NULL,\n `ucwkxryitjcvdxxzdelbohvjyevalwoa` int DEFAULT NULL,\n `tslqceddxgfvmpuywyjgbizgxveveelh` int DEFAULT NULL,\n `zsypjxviqrcmiwaqeruodrnqzbiurmcn` int DEFAULT NULL,\n `ccasqsoopjyajirycxmvhteigoyfkrrn` int DEFAULT NULL,\n `jkyrjbhcodywrqqhwmhzatnpestpiwjd` int DEFAULT NULL,\n `pyqvnaucpxgsnwpnfdmncpsdfelsvuir` int DEFAULT NULL,\n `upnlkmiylqveflcwxhyplrfvodynebxr` int DEFAULT NULL,\n `yizhwnonwwfvliyhaedcfhgqeqqkjyhj` int DEFAULT NULL,\n `bwogczhvkwvvtorllczskjhpwbhwahtz` int DEFAULT NULL,\n `rezcjrpdxcwfiwpleifclrprgebokcqm` int DEFAULT NULL,\n `gzfquhduiizwbzwhihruacfmrdpjrigq` int DEFAULT NULL,\n `ezujmgpqdclbavushkyywybzvjrlljtq` int DEFAULT NULL,\n `skulrcrbckqvmoohnkpvbhmzjkkwnhfg` int DEFAULT NULL,\n `xltqhbpntqvzckdwjxcmempuykkvknmc` int DEFAULT NULL,\n `achlmslvawgulcgzzojdlzpeebsqdvqv` int DEFAULT NULL,\n `anlixkdslqhmeoipbagkhrbkrhvkdcmw` int DEFAULT NULL,\n `cfcwvawexcrquhjmafmgzrwfxollaeta` int DEFAULT NULL,\n `ibnehwpxryemjpdstguwgjactpjrsqfs` int DEFAULT NULL,\n `sszgejwaybqbkevzpyudvlawgdgaupwc` int DEFAULT NULL,\n `ecqknlrwsxbbqzeffqlqjzusprlqtfwo` int DEFAULT NULL,\n `wdcbyccyfaftbrxvluuiyhiutzbnprpw` int DEFAULT NULL,\n `sqqwktaksjoqfwxejwdgpvmmnhqzdcfc` int DEFAULT NULL,\n `woivzqjoxjccawkoyxdejrpmuysngosk` int DEFAULT NULL,\n `udivhdrhnnpkvpfspvbstzffgyzinyom` int DEFAULT NULL,\n `qtnpbmxdtysaprcfllmwrzlttqcvxjcq` int DEFAULT NULL,\n `hizsajzuxjrfksxzojtyqwwdslrwifnp` int DEFAULT NULL,\n `zuvgblycwkywmyvvrvlxgeaqmbuwwzgh` int DEFAULT NULL,\n `kgubynzkgfangucjkfwerqdxrhwzgcrx` int DEFAULT NULL,\n `nebufcyfocxvrkkjgrfqetalxvbupwdx` int DEFAULT NULL,\n `cuovxgxhfzemhiyactialoladnfnooaq` int DEFAULT NULL,\n `iavoglsolmcqyqjcatzjcmljlsjptkyv` int DEFAULT NULL,\n `nnwnacxrjyfoswbdsycszgrqysmfqkgj` int DEFAULT NULL,\n `ccephapsqoboyqkbxewzikhogblmindq` int DEFAULT NULL,\n `lfmfpmxicwgrnmmhsdwbifzehdfbzzej` int DEFAULT NULL,\n `rvksnhytbcvtcopmtpecclnoikzlgwhz` int DEFAULT NULL,\n `easruyyrknwigklottzdbkptsynnqyoh` int DEFAULT NULL,\n `sflbtojiljbfypdhetstjflpeohxiipl` int DEFAULT NULL,\n `uqsehgidnakfnjxvijcyvlraziowxjdp` int DEFAULT NULL,\n `yqnvzffvfuhivczbklaukvvbhzcehbqo` int DEFAULT NULL,\n `tpwkqrrsgfedfdeorftfiobhlrzezdmv` int DEFAULT NULL,\n `wfprkyabdbwwisraeijwuwihzddnlkts` int DEFAULT NULL,\n `spruwrjlagtgbyuxdyayaebwihvnueim` int DEFAULT NULL,\n `doughngvhrpaejzhlffgyvieslgplelt` int DEFAULT NULL,\n `xkpzdaowrksyostrojgrcvptotldppml` int DEFAULT NULL,\n `mwojpeerltqapdljbrzaypjtoiufuzcw` int DEFAULT NULL,\n `qfrsgogudxkmbiqxueponilnzrpbhokw` int DEFAULT NULL,\n `dpxbczfqqwzcpbraswpcipujdtfwrspk` int DEFAULT NULL,\n `lpvjkhuhmagxyprxrdhlyvqdqhrjuddu` int DEFAULT NULL,\n `pnfoyhrobitdemnqubjzoyxqhmefyxwp` int DEFAULT NULL,\n `uttotcsycnlrbipaibkhhufgpribubzm` int DEFAULT NULL,\n `yyvkzmkhbzhcgjcopquqngiocfutolna` int DEFAULT NULL,\n `vqahrylugsvnzbemsqwfrmzddhkfuuwr` int DEFAULT NULL,\n PRIMARY KEY (`tcgvabuohjlyelwzaatpcdhgjbnnbspv`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"wnbrzqlwqabujjsfpielvqcwmrnmuqwu\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["tcgvabuohjlyelwzaatpcdhgjbnnbspv"],"columns":[{"name":"tcgvabuohjlyelwzaatpcdhgjbnnbspv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"bogcbuytxwntoujfwgfbemrlkqhnglpi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bemvmqhnsgpxogtpsevysihudxtunykn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tknlzhzijygvlnmxonzpmmkozsqcsshf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjperkfvbtkplmgaaolbmehwsknxccex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfmdtslsoauqqsxnuwpzwcuypgskqliu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkzuizlxzccqhgkasjtgjlexudzwxzyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvwkfddcjloknskgvttchgfznkkmanut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghsjxdravznotaobbreniiwmzgregobp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kohwcmarzzjbtmsbfledknapdieurgbj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wvpaxhewpfuphgloclsvndxccvqostnf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqdskazsrfzgvfquxvdjjdwqzrbhklqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cljvtwfxgdnoxgyfrjmtmcpyskmkbmdo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"asrxnggztnvqxgmyikadiqhdggvhvhpm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gyszzdtcfpmzadvdrhcsbnzqkrmierxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mludmoqslmalodtivwsrnsrebqvlxdsv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ewwgypvrobdysqvdmsmpqhdtikcgakpu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qpfhxjrapguefvtccmtfzyrgaoogdpmp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpcosagzbhltumgxjrigyipwquvcgayc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjtjmfmnysexedxmskpvvyhzyymuymyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwvvehvtmzwmdhrysnhibxzcbdyiccsw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gybpglkeuiwepbduptwzrguvfeqqsgyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smajcyjqabbuhwpdrxxpmuvgvkxvpjnf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjtfwtvyhcpiuoqexnacytjklnddnrwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdjykmopbylszxcrdpwfqxpfrgtgsdly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqbcwiymtaawzegnwleqvqllmhndpkig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjvivnomgftnlhrlhznlpspgzescuzye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdtzgvwyqvrelseamqpwgunefhxylkag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwzbsbmjcampwkkanpychkthtujnrhiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"styopsyrycfsebddaqgiyzcpjwdipdes","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ktpvtfzuptmjbalplmtvrjharcmirfec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lryzrpuomffnqqyirmuwpgrwxlkmgyyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wkecpvkplpstlwosajzobwmatmwdfvuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqbgkcndqgyugwgoollrmgxrittleflk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfkescndgfynmyfiazcqddrsczsaudqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jsaoznhnffggsneqaoxjtmcwynxvjfuw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omtodycvpcobpclpbmnflxlqevlyjlxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhwodzqmylmmbhglfnuvnaagqxknecrp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdvroczszliwozrvqcicjsbhttfcsedx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfxztyuuazofpgztjitijhdbloomvchj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnvkxpygpovolemftkxplxczfpvwwjhi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfpegdqgqkkvljpowxjfbmlzckhmqmbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xloypeqlfauyhqtyrfkrsghscylvnrkh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgfcyfgpywdznkrhnpavinsfwywwflzd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjtfdosjfaebzfegzmzvihkbmaioyfln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evghluwwkbsqxcgmbijekgsisosmbihw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wswimufbcmrakycvdggqyklfbfpsfbpz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bxdizbqnovkcoshjhxfjvhiwoljjnxth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ucwkxryitjcvdxxzdelbohvjyevalwoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tslqceddxgfvmpuywyjgbizgxveveelh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zsypjxviqrcmiwaqeruodrnqzbiurmcn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ccasqsoopjyajirycxmvhteigoyfkrrn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jkyrjbhcodywrqqhwmhzatnpestpiwjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pyqvnaucpxgsnwpnfdmncpsdfelsvuir","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upnlkmiylqveflcwxhyplrfvodynebxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yizhwnonwwfvliyhaedcfhgqeqqkjyhj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bwogczhvkwvvtorllczskjhpwbhwahtz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rezcjrpdxcwfiwpleifclrprgebokcqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzfquhduiizwbzwhihruacfmrdpjrigq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezujmgpqdclbavushkyywybzvjrlljtq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skulrcrbckqvmoohnkpvbhmzjkkwnhfg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xltqhbpntqvzckdwjxcmempuykkvknmc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"achlmslvawgulcgzzojdlzpeebsqdvqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"anlixkdslqhmeoipbagkhrbkrhvkdcmw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfcwvawexcrquhjmafmgzrwfxollaeta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibnehwpxryemjpdstguwgjactpjrsqfs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sszgejwaybqbkevzpyudvlawgdgaupwc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecqknlrwsxbbqzeffqlqjzusprlqtfwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wdcbyccyfaftbrxvluuiyhiutzbnprpw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sqqwktaksjoqfwxejwdgpvmmnhqzdcfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"woivzqjoxjccawkoyxdejrpmuysngosk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udivhdrhnnpkvpfspvbstzffgyzinyom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtnpbmxdtysaprcfllmwrzlttqcvxjcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hizsajzuxjrfksxzojtyqwwdslrwifnp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zuvgblycwkywmyvvrvlxgeaqmbuwwzgh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kgubynzkgfangucjkfwerqdxrhwzgcrx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nebufcyfocxvrkkjgrfqetalxvbupwdx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cuovxgxhfzemhiyactialoladnfnooaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iavoglsolmcqyqjcatzjcmljlsjptkyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nnwnacxrjyfoswbdsycszgrqysmfqkgj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ccephapsqoboyqkbxewzikhogblmindq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfmfpmxicwgrnmmhsdwbifzehdfbzzej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rvksnhytbcvtcopmtpecclnoikzlgwhz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"easruyyrknwigklottzdbkptsynnqyoh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sflbtojiljbfypdhetstjflpeohxiipl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqsehgidnakfnjxvijcyvlraziowxjdp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqnvzffvfuhivczbklaukvvbhzcehbqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpwkqrrsgfedfdeorftfiobhlrzezdmv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfprkyabdbwwisraeijwuwihzddnlkts","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"spruwrjlagtgbyuxdyayaebwihvnueim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"doughngvhrpaejzhlffgyvieslgplelt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkpzdaowrksyostrojgrcvptotldppml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwojpeerltqapdljbrzaypjtoiufuzcw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfrsgogudxkmbiqxueponilnzrpbhokw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpxbczfqqwzcpbraswpcipujdtfwrspk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lpvjkhuhmagxyprxrdhlyvqdqhrjuddu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnfoyhrobitdemnqubjzoyxqhmefyxwp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uttotcsycnlrbipaibkhhufgpribubzm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yyvkzmkhbzhcgjcopquqngiocfutolna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqahrylugsvnzbemsqwfrmzddhkfuuwr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672562,"databaseName":"models_schema","ddl":"CREATE TABLE `wouewinkcurfknfxilwfeellhzmeqtjq` (\n `yjicwzyqezwskgcjloupynhpfbjcykgc` int NOT NULL,\n `jkbubojqlzeutratfmckybrlnchfsbui` int DEFAULT NULL,\n `enfnqvkggpgjvpimkyhkkblodragnzla` int DEFAULT NULL,\n `rlsofoiwrkobytiggpcpmrsnbdtobtjq` int DEFAULT NULL,\n `xqddajwwqzwjdpsncxaxjlrbvtiicuxj` int DEFAULT NULL,\n `zttumzfvmiejemdfonzfbibdfriiquwt` int DEFAULT NULL,\n `irkpyjzxtyurfokloisttjccvvbcbzhe` int DEFAULT NULL,\n `chakfykvdihheflcshkxldzyncslxreb` int DEFAULT NULL,\n `sjzwvkcrwqebbtflcrvjcrvnnszazwsg` int DEFAULT NULL,\n `zqrsnwsfrnejkpjoularayxdxjuohoqq` int DEFAULT NULL,\n `uoiucritqwatpgurlmszyjejpublngoy` int DEFAULT NULL,\n `qmskkaidybpzkeuwgplhikbascsrapyn` int DEFAULT NULL,\n `ecreswbiyttiiacwuyvkanymwshfirkf` int DEFAULT NULL,\n `gkpubsqufjsmlvyzykdjprpusoysyuyp` int DEFAULT NULL,\n `ihjkasvvwjkhpjiyvmmmdgsjfdfzqega` int DEFAULT NULL,\n `yphixgiquelnmfnpkhofpakwrjcabdzb` int DEFAULT NULL,\n `beopodfmssvzlquvdwgqooqnwerxjsmm` int DEFAULT NULL,\n `zjzgsdkjtrxbucocytfasassjuagbpju` int DEFAULT NULL,\n `hoidjsyrmfozaozvtbacqfecoxzopfpu` int DEFAULT NULL,\n `dqawgxyluybzyzslgndmmnakxfullidx` int DEFAULT NULL,\n `lbszgstegibvljuyqorenihbpjhwvaug` int DEFAULT NULL,\n `hsxjlpawsfcnkvsglpzwxjzsntmwldvl` int DEFAULT NULL,\n `vlotbqovzkxryxtfxcvqyfkilaffynfk` int DEFAULT NULL,\n `fjpoyrooyvzepnaaywbqukuqmentgjkf` int DEFAULT NULL,\n `ugdmdppctackdnywxpvhvpzylyryhrcn` int DEFAULT NULL,\n `ebwgpouzriltztxtyfdedrkwhvmebzfi` int DEFAULT NULL,\n `immewtbxqgwspweiqvmtvenxqitvvpsa` int DEFAULT NULL,\n `nligsqaovauhegnjnufytgovyngyooei` int DEFAULT NULL,\n `tmyupfinxbdvlugwvvqghxlhnutiairz` int DEFAULT NULL,\n `zlxoeuqnvwjudnfwkvdzterqnywltlmf` int DEFAULT NULL,\n `ywxrwgjdvsyfbaonfrcxxaqlrbnzydbs` int DEFAULT NULL,\n `kzrvrjzrvyhbrcyqullbsvxuksdyxmnd` int DEFAULT NULL,\n `uthixbrcivxcptpsljaoeclnesjxyebw` int DEFAULT NULL,\n `hkwnipgdwojngphbnmbwjmghcxdmyoom` int DEFAULT NULL,\n `dgteqyxobllcviddhwocjuhrawpwhrlr` int DEFAULT NULL,\n `pnfdmpeikladiyafqpsvracsifnmkqtk` int DEFAULT NULL,\n `swkfxmuazogonhnjhpsbsfmrcceokfom` int DEFAULT NULL,\n `avbotpdmazrgxarfrgrbiwhsjbszncua` int DEFAULT NULL,\n `opkcssiwaddugyqxblesnaampuggmfwm` int DEFAULT NULL,\n `swzkiawnoixucgwohfmhyicjwzajtrvd` int DEFAULT NULL,\n `bsdtzgxzgylhdkloteoxdhrysxzqnikx` int DEFAULT NULL,\n `gtcgbgvjblxnozxrxjvlwqqujmfsdhbd` int DEFAULT NULL,\n `wzaxygxdmlfuvnoujccmwjulgugmeaen` int DEFAULT NULL,\n `wupumkhwyivkchuducaupjgipfkgytlw` int DEFAULT NULL,\n `tnfkoykqmjoywlctsbojvedtdfhxnyzs` int DEFAULT NULL,\n `thjkzivsodnjktbhqqtlofqgzhfngffo` int DEFAULT NULL,\n `qwmffuauclqfqqvdrtsvgirnybswpdoi` int DEFAULT NULL,\n `qfesucdhmruerwvncfzvolbjjsoktefr` int DEFAULT NULL,\n `ixncahmztyfsbqjmsetctiygqahjgwsi` int DEFAULT NULL,\n `tbopeptcsxnmthxkskiolauvyufsmqyz` int DEFAULT NULL,\n `gmrefnegbefhvgqlekevulslkjooqupa` int DEFAULT NULL,\n `pickyrnwnbaezmxklqzyamzfwernsnvx` int DEFAULT NULL,\n `ozxtrarhzovuuiemclitvoxqlukoqrws` int DEFAULT NULL,\n `fszxskpkqirmrnjrsmsmtyknpsnbyyyi` int DEFAULT NULL,\n `zgwqiptrvpsdechugyvhbhnicbiwadda` int DEFAULT NULL,\n `lqfskcpvxzheomupptxbscwsegyxeeuz` int DEFAULT NULL,\n `jgrzdgnrrwfuilsufozfhinwmdgdqjrn` int DEFAULT NULL,\n `etzxedclgmhdqhxgnnoodgegmcanjkzh` int DEFAULT NULL,\n `xntttgpcwxifgbkiprnghfuiuciigtlt` int DEFAULT NULL,\n `suegeortpvmoflpynqmtdencfoqdqqbe` int DEFAULT NULL,\n `msyphgqpcsvgurxbvosodwhaitdlabba` int DEFAULT NULL,\n `hmwloececrjwueokncemhxrpynvdcjpo` int DEFAULT NULL,\n `lhblvkvgusrmeublfnbacthjoewfbtmt` int DEFAULT NULL,\n `wshedvupauauucvymoplfcolelawkmtv` int DEFAULT NULL,\n `wrsvfzgbvheqwnfhtncdajhxiqajqics` int DEFAULT NULL,\n `nwasfouzcxvnfzmhaygclfjacnnbptup` int DEFAULT NULL,\n `bbcbffdzjdqhfajlppjaajhvxcgwhpez` int DEFAULT NULL,\n `gumbfcebfvvsbolzuzpuuiapasrhwvvy` int DEFAULT NULL,\n `ryqxfjpxiiaeuvdbkcedqrmzigthpqaa` int DEFAULT NULL,\n `budxftaetvgpzlbiicuomozcewhelxxq` int DEFAULT NULL,\n `nelchkbhtlpvprpiukiypykdsyczpibt` int DEFAULT NULL,\n `ognnrsdzbzopircysxsqdttnsgxiavii` int DEFAULT NULL,\n `eqobfaonfbumzowidiwzfxdabtvljdhb` int DEFAULT NULL,\n `obosyqkenfptbksfvuekclxpxhuxmezg` int DEFAULT NULL,\n `btaazgplnjxyikfslzuopqjipzvsxmks` int DEFAULT NULL,\n `rgirhkcalevonsqymyxmlubmihjbriav` int DEFAULT NULL,\n `geowsjnsleuvhjizxmsjgzhecruqpthl` int DEFAULT NULL,\n `ljlypdivxjtgqqxjxurepatighmolgun` int DEFAULT NULL,\n `nawowsalsvayfumgynlxoexrxcwlxnbf` int DEFAULT NULL,\n `gfoclbkdyfqzlahpqetppgldlpylqlfy` int DEFAULT NULL,\n `jtvtecqzmugzrempjluetqqqxqjnwlsh` int DEFAULT NULL,\n `jdgmzjcjdmlzyjatckshyeusebcwbaqz` int DEFAULT NULL,\n `lrhtohzxqkftqptaqwpbnouloluohomn` int DEFAULT NULL,\n `vqmnbruhsdycroenzvavqfyqjcyiilnw` int DEFAULT NULL,\n `uuvicghowskpuxqzfvjhmeonvsgvnmzs` int DEFAULT NULL,\n `edjmamghpktmbxfgzlhimwknxjhtuhok` int DEFAULT NULL,\n `mzpfkmoqolgpjwstdkyhaguqvxdcjstv` int DEFAULT NULL,\n `rohpxosazrerjitvhbtyimvqdgrhvdky` int DEFAULT NULL,\n `zqwooxdktjmbspgsnngkkawapnyiqyao` int DEFAULT NULL,\n `uvfpxjglwzrdejnehmcstdefyksfnfwi` int DEFAULT NULL,\n `hfqondpqwkozxlqdnhmjtelbrfccuknq` int DEFAULT NULL,\n `naqzfccggnfqakjjzhcpwgcbgmhqtnlh` int DEFAULT NULL,\n `xvvshguvsciaecwoabeotpmaujypfknm` int DEFAULT NULL,\n `wotqdzmoepvljmyqhqgcppllfxqicapl` int DEFAULT NULL,\n `bnywcgifjgaptuqszjaukyybppnwvrzd` int DEFAULT NULL,\n `jnkzvokkebtczfalozctkdrbppugeiqw` int DEFAULT NULL,\n `tsnhdpqufijylordwyevlntrnswywgbe` int DEFAULT NULL,\n `xcmkydttjhbicbdvmyutblthwpuvaqtv` int DEFAULT NULL,\n `rbflnqekaqmynnxvseelmtbnhgllotfd` int DEFAULT NULL,\n `xwqwxwlkqjpdjrehvxznxtptamxfccik` int DEFAULT NULL,\n PRIMARY KEY (`yjicwzyqezwskgcjloupynhpfbjcykgc`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"wouewinkcurfknfxilwfeellhzmeqtjq\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["yjicwzyqezwskgcjloupynhpfbjcykgc"],"columns":[{"name":"yjicwzyqezwskgcjloupynhpfbjcykgc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"jkbubojqlzeutratfmckybrlnchfsbui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"enfnqvkggpgjvpimkyhkkblodragnzla","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlsofoiwrkobytiggpcpmrsnbdtobtjq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqddajwwqzwjdpsncxaxjlrbvtiicuxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zttumzfvmiejemdfonzfbibdfriiquwt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"irkpyjzxtyurfokloisttjccvvbcbzhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"chakfykvdihheflcshkxldzyncslxreb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjzwvkcrwqebbtflcrvjcrvnnszazwsg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqrsnwsfrnejkpjoularayxdxjuohoqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uoiucritqwatpgurlmszyjejpublngoy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmskkaidybpzkeuwgplhikbascsrapyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecreswbiyttiiacwuyvkanymwshfirkf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkpubsqufjsmlvyzykdjprpusoysyuyp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ihjkasvvwjkhpjiyvmmmdgsjfdfzqega","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yphixgiquelnmfnpkhofpakwrjcabdzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"beopodfmssvzlquvdwgqooqnwerxjsmm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjzgsdkjtrxbucocytfasassjuagbpju","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hoidjsyrmfozaozvtbacqfecoxzopfpu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqawgxyluybzyzslgndmmnakxfullidx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lbszgstegibvljuyqorenihbpjhwvaug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hsxjlpawsfcnkvsglpzwxjzsntmwldvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vlotbqovzkxryxtfxcvqyfkilaffynfk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjpoyrooyvzepnaaywbqukuqmentgjkf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugdmdppctackdnywxpvhvpzylyryhrcn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebwgpouzriltztxtyfdedrkwhvmebzfi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"immewtbxqgwspweiqvmtvenxqitvvpsa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nligsqaovauhegnjnufytgovyngyooei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmyupfinxbdvlugwvvqghxlhnutiairz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zlxoeuqnvwjudnfwkvdzterqnywltlmf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywxrwgjdvsyfbaonfrcxxaqlrbnzydbs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzrvrjzrvyhbrcyqullbsvxuksdyxmnd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uthixbrcivxcptpsljaoeclnesjxyebw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkwnipgdwojngphbnmbwjmghcxdmyoom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgteqyxobllcviddhwocjuhrawpwhrlr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnfdmpeikladiyafqpsvracsifnmkqtk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swkfxmuazogonhnjhpsbsfmrcceokfom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avbotpdmazrgxarfrgrbiwhsjbszncua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opkcssiwaddugyqxblesnaampuggmfwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swzkiawnoixucgwohfmhyicjwzajtrvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bsdtzgxzgylhdkloteoxdhrysxzqnikx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtcgbgvjblxnozxrxjvlwqqujmfsdhbd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzaxygxdmlfuvnoujccmwjulgugmeaen","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wupumkhwyivkchuducaupjgipfkgytlw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnfkoykqmjoywlctsbojvedtdfhxnyzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thjkzivsodnjktbhqqtlofqgzhfngffo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwmffuauclqfqqvdrtsvgirnybswpdoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfesucdhmruerwvncfzvolbjjsoktefr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixncahmztyfsbqjmsetctiygqahjgwsi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbopeptcsxnmthxkskiolauvyufsmqyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmrefnegbefhvgqlekevulslkjooqupa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pickyrnwnbaezmxklqzyamzfwernsnvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ozxtrarhzovuuiemclitvoxqlukoqrws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fszxskpkqirmrnjrsmsmtyknpsnbyyyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zgwqiptrvpsdechugyvhbhnicbiwadda","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lqfskcpvxzheomupptxbscwsegyxeeuz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgrzdgnrrwfuilsufozfhinwmdgdqjrn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"etzxedclgmhdqhxgnnoodgegmcanjkzh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xntttgpcwxifgbkiprnghfuiuciigtlt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"suegeortpvmoflpynqmtdencfoqdqqbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"msyphgqpcsvgurxbvosodwhaitdlabba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmwloececrjwueokncemhxrpynvdcjpo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhblvkvgusrmeublfnbacthjoewfbtmt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wshedvupauauucvymoplfcolelawkmtv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wrsvfzgbvheqwnfhtncdajhxiqajqics","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nwasfouzcxvnfzmhaygclfjacnnbptup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbcbffdzjdqhfajlppjaajhvxcgwhpez","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gumbfcebfvvsbolzuzpuuiapasrhwvvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ryqxfjpxiiaeuvdbkcedqrmzigthpqaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"budxftaetvgpzlbiicuomozcewhelxxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nelchkbhtlpvprpiukiypykdsyczpibt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ognnrsdzbzopircysxsqdttnsgxiavii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqobfaonfbumzowidiwzfxdabtvljdhb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obosyqkenfptbksfvuekclxpxhuxmezg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"btaazgplnjxyikfslzuopqjipzvsxmks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgirhkcalevonsqymyxmlubmihjbriav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"geowsjnsleuvhjizxmsjgzhecruqpthl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljlypdivxjtgqqxjxurepatighmolgun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nawowsalsvayfumgynlxoexrxcwlxnbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfoclbkdyfqzlahpqetppgldlpylqlfy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jtvtecqzmugzrempjluetqqqxqjnwlsh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdgmzjcjdmlzyjatckshyeusebcwbaqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lrhtohzxqkftqptaqwpbnouloluohomn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqmnbruhsdycroenzvavqfyqjcyiilnw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uuvicghowskpuxqzfvjhmeonvsgvnmzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edjmamghpktmbxfgzlhimwknxjhtuhok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzpfkmoqolgpjwstdkyhaguqvxdcjstv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rohpxosazrerjitvhbtyimvqdgrhvdky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqwooxdktjmbspgsnngkkawapnyiqyao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvfpxjglwzrdejnehmcstdefyksfnfwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfqondpqwkozxlqdnhmjtelbrfccuknq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"naqzfccggnfqakjjzhcpwgcbgmhqtnlh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvvshguvsciaecwoabeotpmaujypfknm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wotqdzmoepvljmyqhqgcppllfxqicapl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnywcgifjgaptuqszjaukyybppnwvrzd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jnkzvokkebtczfalozctkdrbppugeiqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tsnhdpqufijylordwyevlntrnswywgbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xcmkydttjhbicbdvmyutblthwpuvaqtv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbflnqekaqmynnxvseelmtbnhgllotfd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xwqwxwlkqjpdjrehvxznxtptamxfccik","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672591,"databaseName":"models_schema","ddl":"CREATE TABLE `wqdandhuzkcuajvglffrvuwqfxsfunjn` (\n `uiwtfchkgeetmsrbvopdiasjiyggyrms` int NOT NULL,\n `lxvkxukqoafsppuqggaifzjilendovgw` int DEFAULT NULL,\n `qjtrgjmcuwatdhijachimdhafamikjff` int DEFAULT NULL,\n `wjarvommzwtrbplgyfgcfzinllirynit` int DEFAULT NULL,\n `kxsrdizuojljscijkebyusuqiavytdaf` int DEFAULT NULL,\n `ikagnmjcdmyvoffngolwzbzdjudquatj` int DEFAULT NULL,\n `tethaxeqcilfkfrwqifqtdgitkbyxaxx` int DEFAULT NULL,\n `avkndaalczbqmsnuwmecdqdigeuhmksn` int DEFAULT NULL,\n `owshymzrezmjoaiorajbcfvjcmbubrrv` int DEFAULT NULL,\n `puqpikutypcgumusmfqwqbfgiomijpsy` int DEFAULT NULL,\n `jazpefwvngrmvtawsaplckicdoeeafen` int DEFAULT NULL,\n `meqkmxgfiirpyjuoslwexrercwqorlcr` int DEFAULT NULL,\n `hmihlmsvcwabvkfxqndskzwrrtruwghj` int DEFAULT NULL,\n `bnmnhuwqqoqyevekzluyguhkrghifqqq` int DEFAULT NULL,\n `axcevbjlaivoenkavegxtcnrxumthocn` int DEFAULT NULL,\n `xquephrqxwtfdvblxclitttahiqgsuxr` int DEFAULT NULL,\n `wljchrbgdajnqrcotbqemuhhwctpvzyo` int DEFAULT NULL,\n `ibdybdkdrifkpktmrcpbfjdmvmsepibz` int DEFAULT NULL,\n `gwgvjyqxhzhbnxlgrufnstwihpwkuqrh` int DEFAULT NULL,\n `wftofimyxdbazyitdjutvumoqaxojbsv` int DEFAULT NULL,\n `tgvmudcmjdylggkpfsextnnqqyftksui` int DEFAULT NULL,\n `isakhcevzsyrswecgzvynirwyqwmwpak` int DEFAULT NULL,\n `ilgtkmodphvmphdkigecntyyjcofabvv` int DEFAULT NULL,\n `jfrfwuhkorabqsdppsczpposbjehisbf` int DEFAULT NULL,\n `bffsftgzghfllvczttfosnuzjuukckrt` int DEFAULT NULL,\n `xxzrdnmjrdtlmcuyjggybyhzwplcdkcj` int DEFAULT NULL,\n `pnvjnxxieooyrzfnxhiyqobqzbzgklfp` int DEFAULT NULL,\n `kxterqtmzkswvvdfgazcoozllcidsbbe` int DEFAULT NULL,\n `zzjeoahgzqdzcosjzgojnadmwmgpbbgk` int DEFAULT NULL,\n `mtetwpttviinvmizmzekznwuzcffbjfl` int DEFAULT NULL,\n `uqsnvokmwamnxsmhetmlfudzbphnzkaq` int DEFAULT NULL,\n `fwyrugjxhswzydmqbsxqvxpbfsipdcug` int DEFAULT NULL,\n `vkdejxvdsvgwxqfwqanfzkzleuqlyxwv` int DEFAULT NULL,\n `nfkmftkmxwafxqlibzxmikvnrmzmswqb` int DEFAULT NULL,\n `mqcmuktevnokntxqbzazvcgpskhbzbtc` int DEFAULT NULL,\n `fdxopngpllvhsmepwftkcewgbidrglje` int DEFAULT NULL,\n `xrtwijbasuiapdentieezfdjxylhmypp` int DEFAULT NULL,\n `dnuyyuwvctoqelvxlkopkvlnzftdhygc` int DEFAULT NULL,\n `sxwhdqhxqsgbqesazaeeoilkmviwspay` int DEFAULT NULL,\n `sjsmoqkrlkzsxfihuirdcyccrvwxywvt` int DEFAULT NULL,\n `izlimagrqtnsuwfqnqckiwkelhtqpxzl` int DEFAULT NULL,\n `pwvbsaggcgzhzbblhvjgivtwsrplfryg` int DEFAULT NULL,\n `jyxcuqlxwadjglppblnexcorpicwrueo` int DEFAULT NULL,\n `zssfefkykfbtzzgmoaovfaefmxvdugpk` int DEFAULT NULL,\n `titjxacwkqxnlrirvohrnmwhvmoyucji` int DEFAULT NULL,\n `pqcokuegdfxlswfeeuplktpmjnhhhkrs` int DEFAULT NULL,\n `wotunpxhpibkjvavhnlxsbfuvsuwugao` int DEFAULT NULL,\n `wkojdknhircppykajjswsbrmwfetreyv` int DEFAULT NULL,\n `kiojvzcfuayncjkpygquqjmugmuflfvf` int DEFAULT NULL,\n `cpxpwbgymdzpbizjazdapwjrwghehnvc` int DEFAULT NULL,\n `jcjmyptdlpnesmbksqjylcxsrajdsjrf` int DEFAULT NULL,\n `higmpfvjxyvgxexeuxiuhhmdncdynvoh` int DEFAULT NULL,\n `ugehobueizzeulewqpmwnrrkcshzpdkk` int DEFAULT NULL,\n `elknfgflyqlodwtdpggekowkpwvfsohe` int DEFAULT NULL,\n `wwnccxdyyiruxqlnggkslbmmbulfadps` int DEFAULT NULL,\n `sxidtkgwrpmgpzocfpzjmxuyxfjkblvf` int DEFAULT NULL,\n `stznkdmhzufwwzrcsskzeyxbqegijvwz` int DEFAULT NULL,\n `kzcowebcnavonjzvxblrjskwzbefezvu` int DEFAULT NULL,\n `nlowhbwbyvcyltdyubvnmxzwrpdmsrog` int DEFAULT NULL,\n `jrpnzezfppuskxkgrhffbsvrbwixzgbd` int DEFAULT NULL,\n `fbdeicvymlypqohkmmixlqdmxwkriefw` int DEFAULT NULL,\n `mogkgpdrwnnellunqgbcnlohjdgdeozs` int DEFAULT NULL,\n `kgncahnymghuainmjfwxukseiwrddrma` int DEFAULT NULL,\n `dmdrimpubeuhozcywcadmugpifmpkwne` int DEFAULT NULL,\n `jmihinimicgbyqytbfceurwjltxsxybg` int DEFAULT NULL,\n `iefntsnqjdpzvxqfiwhuanwhnsxjsztg` int DEFAULT NULL,\n `fseklqxhtlrbyuonnbaggnavrfbbomyw` int DEFAULT NULL,\n `irufzwtrwcupkvjmhgcqohgsketmpwzg` int DEFAULT NULL,\n `lficsqibbtiabumkvebeekdyqjlqqgjv` int DEFAULT NULL,\n `zlwgcaxdyxhlyrfpvjitemjoulgwmyhe` int DEFAULT NULL,\n `mfxnekivqnehwndiekinyorngyjhnviw` int DEFAULT NULL,\n `zaqprwazwpgeonchqdffmxcqrqxxhtmv` int DEFAULT NULL,\n `sjkbcocemkeqxunhdewiscojwlfrungd` int DEFAULT NULL,\n `egtvzeuwzohqfycrwejnoihwsjyzluik` int DEFAULT NULL,\n `ruwniizxbughsjynofjctgpzgaczfiyw` int DEFAULT NULL,\n `rvefjtaqompgfhpgwjqwymxxeivezpxj` int DEFAULT NULL,\n `mzigkxryumikuytsfweirwibqlfwztbs` int DEFAULT NULL,\n `ktdilacuqqfllmsrdyptcgzjouywtbob` int DEFAULT NULL,\n `eavxfikyonhydsyuhkgmrvhphkwwuifj` int DEFAULT NULL,\n `glnjbxksmgjvdmmucvcwolpkzpmyckzt` int DEFAULT NULL,\n `lbzlpcalnczkxswnaxuippmrcfvpvomq` int DEFAULT NULL,\n `uyychhefbygwcrlbvabacaptczlhzblc` int DEFAULT NULL,\n `hnhiiinfkcjmtrzusxdhitogugpjwegp` int DEFAULT NULL,\n `moejislfjlettxlsvpiyoccurfvmvnoy` int DEFAULT NULL,\n `sfuhmpprkdgwltrctrqrgyxkvxlfwldj` int DEFAULT NULL,\n `pnnyctufyijtzkaarzypmdmgkruhwlkp` int DEFAULT NULL,\n `tyevqxwruqlrbyazpjsoggbzgbthzvmf` int DEFAULT NULL,\n `buzberjpshtubzyexsnkzowfcxznecof` int DEFAULT NULL,\n `ksqytmoafxmkeagmmlxagwyrqwwrpvqd` int DEFAULT NULL,\n `vjfoizfloksyaznjkztacwiecunseyak` int DEFAULT NULL,\n `tkmxpmfcvadiluwdssmzfzmoyqaunufp` int DEFAULT NULL,\n `pxpqvbkbjhmgxnybqrfgyehwspuqkrru` int DEFAULT NULL,\n `xnlmmheuvexymnybxhghtezioopcybyi` int DEFAULT NULL,\n `foywvxbtvnhqdmchiwfuylduyxrmzzkq` int DEFAULT NULL,\n `eexbmeqypygdtmqjhgrnaezelztkyxoz` int DEFAULT NULL,\n `qujwiehzjuxjzcvthndyvwlffyufboky` int DEFAULT NULL,\n `xldvzvcgptnifzhoeicizrfufvjjkjmi` int DEFAULT NULL,\n `ypphvhmhwgimapqfvwvtukmpkwmetpwe` int DEFAULT NULL,\n `nsqxwvvbtkatchkevwbirfdjraqnmppg` int DEFAULT NULL,\n `fvwdaevfrpwxpdrvmbaqkfmeofbzdhck` int DEFAULT NULL,\n PRIMARY KEY (`uiwtfchkgeetmsrbvopdiasjiyggyrms`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"wqdandhuzkcuajvglffrvuwqfxsfunjn\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["uiwtfchkgeetmsrbvopdiasjiyggyrms"],"columns":[{"name":"uiwtfchkgeetmsrbvopdiasjiyggyrms","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"lxvkxukqoafsppuqggaifzjilendovgw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjtrgjmcuwatdhijachimdhafamikjff","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjarvommzwtrbplgyfgcfzinllirynit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxsrdizuojljscijkebyusuqiavytdaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikagnmjcdmyvoffngolwzbzdjudquatj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tethaxeqcilfkfrwqifqtdgitkbyxaxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avkndaalczbqmsnuwmecdqdigeuhmksn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owshymzrezmjoaiorajbcfvjcmbubrrv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"puqpikutypcgumusmfqwqbfgiomijpsy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jazpefwvngrmvtawsaplckicdoeeafen","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"meqkmxgfiirpyjuoslwexrercwqorlcr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmihlmsvcwabvkfxqndskzwrrtruwghj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnmnhuwqqoqyevekzluyguhkrghifqqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axcevbjlaivoenkavegxtcnrxumthocn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xquephrqxwtfdvblxclitttahiqgsuxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wljchrbgdajnqrcotbqemuhhwctpvzyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibdybdkdrifkpktmrcpbfjdmvmsepibz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gwgvjyqxhzhbnxlgrufnstwihpwkuqrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wftofimyxdbazyitdjutvumoqaxojbsv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tgvmudcmjdylggkpfsextnnqqyftksui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"isakhcevzsyrswecgzvynirwyqwmwpak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ilgtkmodphvmphdkigecntyyjcofabvv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jfrfwuhkorabqsdppsczpposbjehisbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bffsftgzghfllvczttfosnuzjuukckrt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxzrdnmjrdtlmcuyjggybyhzwplcdkcj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnvjnxxieooyrzfnxhiyqobqzbzgklfp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxterqtmzkswvvdfgazcoozllcidsbbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzjeoahgzqdzcosjzgojnadmwmgpbbgk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtetwpttviinvmizmzekznwuzcffbjfl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqsnvokmwamnxsmhetmlfudzbphnzkaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwyrugjxhswzydmqbsxqvxpbfsipdcug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkdejxvdsvgwxqfwqanfzkzleuqlyxwv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfkmftkmxwafxqlibzxmikvnrmzmswqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqcmuktevnokntxqbzazvcgpskhbzbtc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fdxopngpllvhsmepwftkcewgbidrglje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xrtwijbasuiapdentieezfdjxylhmypp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dnuyyuwvctoqelvxlkopkvlnzftdhygc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sxwhdqhxqsgbqesazaeeoilkmviwspay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjsmoqkrlkzsxfihuirdcyccrvwxywvt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"izlimagrqtnsuwfqnqckiwkelhtqpxzl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwvbsaggcgzhzbblhvjgivtwsrplfryg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jyxcuqlxwadjglppblnexcorpicwrueo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zssfefkykfbtzzgmoaovfaefmxvdugpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"titjxacwkqxnlrirvohrnmwhvmoyucji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqcokuegdfxlswfeeuplktpmjnhhhkrs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wotunpxhpibkjvavhnlxsbfuvsuwugao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wkojdknhircppykajjswsbrmwfetreyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kiojvzcfuayncjkpygquqjmugmuflfvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cpxpwbgymdzpbizjazdapwjrwghehnvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jcjmyptdlpnesmbksqjylcxsrajdsjrf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"higmpfvjxyvgxexeuxiuhhmdncdynvoh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugehobueizzeulewqpmwnrrkcshzpdkk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"elknfgflyqlodwtdpggekowkpwvfsohe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwnccxdyyiruxqlnggkslbmmbulfadps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sxidtkgwrpmgpzocfpzjmxuyxfjkblvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"stznkdmhzufwwzrcsskzeyxbqegijvwz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzcowebcnavonjzvxblrjskwzbefezvu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nlowhbwbyvcyltdyubvnmxzwrpdmsrog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jrpnzezfppuskxkgrhffbsvrbwixzgbd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbdeicvymlypqohkmmixlqdmxwkriefw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mogkgpdrwnnellunqgbcnlohjdgdeozs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kgncahnymghuainmjfwxukseiwrddrma","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dmdrimpubeuhozcywcadmugpifmpkwne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmihinimicgbyqytbfceurwjltxsxybg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iefntsnqjdpzvxqfiwhuanwhnsxjsztg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fseklqxhtlrbyuonnbaggnavrfbbomyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"irufzwtrwcupkvjmhgcqohgsketmpwzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lficsqibbtiabumkvebeekdyqjlqqgjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zlwgcaxdyxhlyrfpvjitemjoulgwmyhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mfxnekivqnehwndiekinyorngyjhnviw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zaqprwazwpgeonchqdffmxcqrqxxhtmv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sjkbcocemkeqxunhdewiscojwlfrungd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"egtvzeuwzohqfycrwejnoihwsjyzluik","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ruwniizxbughsjynofjctgpzgaczfiyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rvefjtaqompgfhpgwjqwymxxeivezpxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzigkxryumikuytsfweirwibqlfwztbs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ktdilacuqqfllmsrdyptcgzjouywtbob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eavxfikyonhydsyuhkgmrvhphkwwuifj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"glnjbxksmgjvdmmucvcwolpkzpmyckzt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lbzlpcalnczkxswnaxuippmrcfvpvomq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uyychhefbygwcrlbvabacaptczlhzblc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hnhiiinfkcjmtrzusxdhitogugpjwegp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"moejislfjlettxlsvpiyoccurfvmvnoy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfuhmpprkdgwltrctrqrgyxkvxlfwldj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnnyctufyijtzkaarzypmdmgkruhwlkp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tyevqxwruqlrbyazpjsoggbzgbthzvmf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"buzberjpshtubzyexsnkzowfcxznecof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ksqytmoafxmkeagmmlxagwyrqwwrpvqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjfoizfloksyaznjkztacwiecunseyak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkmxpmfcvadiluwdssmzfzmoyqaunufp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxpqvbkbjhmgxnybqrfgyehwspuqkrru","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnlmmheuvexymnybxhghtezioopcybyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"foywvxbtvnhqdmchiwfuylduyxrmzzkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eexbmeqypygdtmqjhgrnaezelztkyxoz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qujwiehzjuxjzcvthndyvwlffyufboky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xldvzvcgptnifzhoeicizrfufvjjkjmi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypphvhmhwgimapqfvwvtukmpkwmetpwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nsqxwvvbtkatchkevwbirfdjraqnmppg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fvwdaevfrpwxpdrvmbaqkfmeofbzdhck","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672622,"databaseName":"models_schema","ddl":"CREATE TABLE `wrlrqixavhpautdnbanimexxwqddrvmn` (\n `nowyjlvamdozmheealefybkjmbqgvofn` int NOT NULL,\n `uvomucuqrkxangdhtlmesotebiinacjv` int DEFAULT NULL,\n `qijvdzakeoetyedvkjpexzrkniofphrt` int DEFAULT NULL,\n `gjvkhqrxwozbvwbtasachvdjdlzmfltd` int DEFAULT NULL,\n `ffjnjbtnboeoefdgmrvmofglrmwmuhtc` int DEFAULT NULL,\n `zbktcdsgrwdiyigunuuylcfowxiipwob` int DEFAULT NULL,\n `kmnkowbxyuiqbdrhialkbvcacagqpkof` int DEFAULT NULL,\n `qzxabghgcojztmalgazhyygfdhuriwys` int DEFAULT NULL,\n `pxskwplniouiduxtzhliogjpkaruuhzh` int DEFAULT NULL,\n `jpkfzdxbcrhzlrtmdyndqzrltyiblsbr` int DEFAULT NULL,\n `rxhnhkekvvcqeuxjhylrosbqspabdsoc` int DEFAULT NULL,\n `qmseuslerlakzxdixfxnstmxobjcsorl` int DEFAULT NULL,\n `erccupyvpbpmrtxentqyqebxpcrnlivs` int DEFAULT NULL,\n `pmeftyykrsjpnnupsbmtexizpyqwdtri` int DEFAULT NULL,\n `omtkvefagwfubelvfahsgfdcxftuzrwu` int DEFAULT NULL,\n `nzixdndqnftnmoxgpvxiyacsufrdocpz` int DEFAULT NULL,\n `flkltzexewmmhykiddoybpvzfsjkyppf` int DEFAULT NULL,\n `jjgytfcrrokdgrjodxxwwdibdvzfvexb` int DEFAULT NULL,\n `yvrwjnxasebkqkxowggyfcjysyldwwnd` int DEFAULT NULL,\n `ujitbtvzyxcebftgbwsgrjvyghpgeygu` int DEFAULT NULL,\n `zxydtmrmqftktyvgctdcfsphuhpgoyxt` int DEFAULT NULL,\n `gzfvuuxyngavnwuucngcfbvsvvzhgbne` int DEFAULT NULL,\n `wzcjszybydtkwlgdolaclrctjuyzqulm` int DEFAULT NULL,\n `jjzeeoiwabobnmeiinwzpmlgycgjayud` int DEFAULT NULL,\n `pceuzpppdzbapgdawpyicqavprrfhxzl` int DEFAULT NULL,\n `flobkojafgjicflueqqvvvukslvgdcrb` int DEFAULT NULL,\n `txiertrunqjyretbjakbacoanywybvyk` int DEFAULT NULL,\n `alnidutkznjwfgahzetwjcvyznntnsgh` int DEFAULT NULL,\n `bunonfczdcjjmphagqjprlxirauhcpgg` int DEFAULT NULL,\n `uotgttpwozknvjbayomlsgckpoahvjfr` int DEFAULT NULL,\n `euncftoygntxznmhwvkmbqdvrxhsizux` int DEFAULT NULL,\n `yampbowqekvbllkryyyieeuldawzvjft` int DEFAULT NULL,\n `huhdbdsettwzkqmmuczyiwucmzcrmhwd` int DEFAULT NULL,\n `kjvlapcbljxjffopjbttufepmupnlost` int DEFAULT NULL,\n `mhzrmyhzikpijyzhsskztegdhtxtwdpf` int DEFAULT NULL,\n `joeuakdzrvblcnfcxjasdlofwysaohlf` int DEFAULT NULL,\n `xqryfjrhcwfsztnelcyenzsekedagfyi` int DEFAULT NULL,\n `ueugfkwckulhfhgcyitsbnrnopozudih` int DEFAULT NULL,\n `txaxuyquxhjgoxilrdubkkgnaqpkwpxe` int DEFAULT NULL,\n `rxblvlycpziqbakwudhbsrekjqwzkvsx` int DEFAULT NULL,\n `cbedqldibhpebqscfatloirsenuxsznp` int DEFAULT NULL,\n `xvfetioqzysavasthwrwdpwwtdqnnhpx` int DEFAULT NULL,\n `umbheqwdtmyrvwfmqvczirgtrxonqdbl` int DEFAULT NULL,\n `vfscydnaerglmluvddmidmxaiydmbict` int DEFAULT NULL,\n `rcxtxbeqhvmvvvdcgpsusrkzezigilyk` int DEFAULT NULL,\n `zdgchksklrxgrcnlyuvnixbzogqhojum` int DEFAULT NULL,\n `awsruvkvnukwnwbzytcnyqnooojgeayy` int DEFAULT NULL,\n `ssqwgvvqsucvrhcspsuaaphbisyrbqok` int DEFAULT NULL,\n `ujpsjfqcmypqghnaniwzgpsniyibfnfp` int DEFAULT NULL,\n `dpnbnsunflgnmnsqjbxncasrogyeykpu` int DEFAULT NULL,\n `qzereihgqhiyjirsfvyadgejsinhpurs` int DEFAULT NULL,\n `labuvmotxrugwqtomlsrsqbabevzsdgd` int DEFAULT NULL,\n `nnnknkdojyoshtagsnqxcaotjmlosqpo` int DEFAULT NULL,\n `auzgnlquisdpttmguentpkxortxsxhti` int DEFAULT NULL,\n `tvthfwlkpoeryykeatpqxwoftkxibnqq` int DEFAULT NULL,\n `abamtytacsfdqpmzisljavhqhluwtijx` int DEFAULT NULL,\n `sgevkpnywlofaiiauryfwypvecedahcj` int DEFAULT NULL,\n `geyhdoxtnxiemyyaxjzmbpijwqaljkuw` int DEFAULT NULL,\n `lzwobnjvizveunmzdxlxnjsmicjkndqh` int DEFAULT NULL,\n `fpgcwnfgognlfixjijeoynipdxexyfis` int DEFAULT NULL,\n `wscfbmpadlloxhkyfxlervimnouqufcs` int DEFAULT NULL,\n `mqnywaeajqoivqivfhoaysgbeecutgvb` int DEFAULT NULL,\n `wxyxftbzriakzwegpwmwbbqpwuabjyuw` int DEFAULT NULL,\n `bntupxipowaymcjofkwrfwfpgsfjaysw` int DEFAULT NULL,\n `bvlcusruqpqxvphjtgjbtyqtdbxpzfqb` int DEFAULT NULL,\n `vcuwaycyjoxquawmhnbddwgrivqzglzw` int DEFAULT NULL,\n `xpaiychgzuiqmpmqgbafamwcyfbuovlg` int DEFAULT NULL,\n `imwigtmztulqocaoamdgafdlaoxiokbt` int DEFAULT NULL,\n `labaecxmpnusyvozczrsnipkpwuzhufw` int DEFAULT NULL,\n `uloxxgxorfmzvvqderhjrrzwrtucodkt` int DEFAULT NULL,\n `tnkacdzjrpqxldemluhfwfafaushbnvv` int DEFAULT NULL,\n `ejxjqafkucghdsicivabujnjvcrlabfl` int DEFAULT NULL,\n `omxaqffgjxujcrfbnzbjvkuyjphkyjkb` int DEFAULT NULL,\n `pbjdchiadxcobzxdaarqozvcdyohfsop` int DEFAULT NULL,\n `blnybegndpktfzmutjhpjizebzpebhvw` int DEFAULT NULL,\n `fphaslgypqqftcvwyxtwerszvdpklqgy` int DEFAULT NULL,\n `zpgtilnfagywayacygrhbbswdbdyqyzq` int DEFAULT NULL,\n `nnighiuxiukktriiuwnjciykkvgkxoiz` int DEFAULT NULL,\n `fteapvctynkkcwgxzvbyvpfdcbxuvmta` int DEFAULT NULL,\n `mzbxbzjwcfflnulunmylcxeirfwxlnwm` int DEFAULT NULL,\n `sujghakhgsircedtavauxqmxvdbprbbo` int DEFAULT NULL,\n `msupyqxcinsmssnpkltzgzkskfazwqil` int DEFAULT NULL,\n `ifrsjkedjjiwmrpsvmnkoaagfavuhkwz` int DEFAULT NULL,\n `hjugcixbxxnkpaqbjyabuegepbisipjs` int DEFAULT NULL,\n `whqvkzkirjtyevzvjnvzokfjbwoklxxh` int DEFAULT NULL,\n `vtihhfqykzhkggipjawscchblxllwerz` int DEFAULT NULL,\n `uspozkasrgtkmntqxbtxxecjxbsgwrng` int DEFAULT NULL,\n `zkkcujjpwmxnqxxhvdyshbuuwtikhfsk` int DEFAULT NULL,\n `wpaltjzkeuccciltzbawhcsaivvrgded` int DEFAULT NULL,\n `ysimtocvctgjmxhxorroiujyurwwcgrb` int DEFAULT NULL,\n `bxrerorgdbwooceknmkxylcmhdsradwk` int DEFAULT NULL,\n `swxgfyjvcbvzdnocpcvnwydsrecxtibn` int DEFAULT NULL,\n `uciprevzjxasvpmxycagexdbmtpxigub` int DEFAULT NULL,\n `sskmhrfbslzqxujfnljilzdstflqzcst` int DEFAULT NULL,\n `cachoygneuhnppyupprzjksvokkbawuj` int DEFAULT NULL,\n `gfaxnbfjqitsjyegjgbeifladtpbgazc` int DEFAULT NULL,\n `edgywhzuoghbbxexafewxslwipzohaav` int DEFAULT NULL,\n `yvfgnnaoptlndmihlrmygbghxjqlewdq` int DEFAULT NULL,\n `fufhvidfctpgznxwtkzbjdumejmgmmgo` int DEFAULT NULL,\n `ohjzjvvhiqmabmicejnzfjqhaoaknxtn` int DEFAULT NULL,\n PRIMARY KEY (`nowyjlvamdozmheealefybkjmbqgvofn`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"wrlrqixavhpautdnbanimexxwqddrvmn\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["nowyjlvamdozmheealefybkjmbqgvofn"],"columns":[{"name":"nowyjlvamdozmheealefybkjmbqgvofn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"uvomucuqrkxangdhtlmesotebiinacjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qijvdzakeoetyedvkjpexzrkniofphrt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjvkhqrxwozbvwbtasachvdjdlzmfltd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffjnjbtnboeoefdgmrvmofglrmwmuhtc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbktcdsgrwdiyigunuuylcfowxiipwob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kmnkowbxyuiqbdrhialkbvcacagqpkof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qzxabghgcojztmalgazhyygfdhuriwys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxskwplniouiduxtzhliogjpkaruuhzh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jpkfzdxbcrhzlrtmdyndqzrltyiblsbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxhnhkekvvcqeuxjhylrosbqspabdsoc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmseuslerlakzxdixfxnstmxobjcsorl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"erccupyvpbpmrtxentqyqebxpcrnlivs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmeftyykrsjpnnupsbmtexizpyqwdtri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omtkvefagwfubelvfahsgfdcxftuzrwu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzixdndqnftnmoxgpvxiyacsufrdocpz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flkltzexewmmhykiddoybpvzfsjkyppf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjgytfcrrokdgrjodxxwwdibdvzfvexb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yvrwjnxasebkqkxowggyfcjysyldwwnd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujitbtvzyxcebftgbwsgrjvyghpgeygu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxydtmrmqftktyvgctdcfsphuhpgoyxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzfvuuxyngavnwuucngcfbvsvvzhgbne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzcjszybydtkwlgdolaclrctjuyzqulm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjzeeoiwabobnmeiinwzpmlgycgjayud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pceuzpppdzbapgdawpyicqavprrfhxzl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flobkojafgjicflueqqvvvukslvgdcrb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txiertrunqjyretbjakbacoanywybvyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"alnidutkznjwfgahzetwjcvyznntnsgh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bunonfczdcjjmphagqjprlxirauhcpgg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uotgttpwozknvjbayomlsgckpoahvjfr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"euncftoygntxznmhwvkmbqdvrxhsizux","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yampbowqekvbllkryyyieeuldawzvjft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"huhdbdsettwzkqmmuczyiwucmzcrmhwd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjvlapcbljxjffopjbttufepmupnlost","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhzrmyhzikpijyzhsskztegdhtxtwdpf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"joeuakdzrvblcnfcxjasdlofwysaohlf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqryfjrhcwfsztnelcyenzsekedagfyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ueugfkwckulhfhgcyitsbnrnopozudih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txaxuyquxhjgoxilrdubkkgnaqpkwpxe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxblvlycpziqbakwudhbsrekjqwzkvsx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbedqldibhpebqscfatloirsenuxsznp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvfetioqzysavasthwrwdpwwtdqnnhpx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umbheqwdtmyrvwfmqvczirgtrxonqdbl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vfscydnaerglmluvddmidmxaiydmbict","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcxtxbeqhvmvvvdcgpsusrkzezigilyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdgchksklrxgrcnlyuvnixbzogqhojum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awsruvkvnukwnwbzytcnyqnooojgeayy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ssqwgvvqsucvrhcspsuaaphbisyrbqok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujpsjfqcmypqghnaniwzgpsniyibfnfp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpnbnsunflgnmnsqjbxncasrogyeykpu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qzereihgqhiyjirsfvyadgejsinhpurs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"labuvmotxrugwqtomlsrsqbabevzsdgd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nnnknkdojyoshtagsnqxcaotjmlosqpo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"auzgnlquisdpttmguentpkxortxsxhti","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvthfwlkpoeryykeatpqxwoftkxibnqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"abamtytacsfdqpmzisljavhqhluwtijx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sgevkpnywlofaiiauryfwypvecedahcj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"geyhdoxtnxiemyyaxjzmbpijwqaljkuw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lzwobnjvizveunmzdxlxnjsmicjkndqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpgcwnfgognlfixjijeoynipdxexyfis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wscfbmpadlloxhkyfxlervimnouqufcs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqnywaeajqoivqivfhoaysgbeecutgvb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxyxftbzriakzwegpwmwbbqpwuabjyuw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bntupxipowaymcjofkwrfwfpgsfjaysw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvlcusruqpqxvphjtgjbtyqtdbxpzfqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vcuwaycyjoxquawmhnbddwgrivqzglzw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xpaiychgzuiqmpmqgbafamwcyfbuovlg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"imwigtmztulqocaoamdgafdlaoxiokbt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"labaecxmpnusyvozczrsnipkpwuzhufw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uloxxgxorfmzvvqderhjrrzwrtucodkt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnkacdzjrpqxldemluhfwfafaushbnvv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejxjqafkucghdsicivabujnjvcrlabfl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omxaqffgjxujcrfbnzbjvkuyjphkyjkb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbjdchiadxcobzxdaarqozvcdyohfsop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blnybegndpktfzmutjhpjizebzpebhvw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fphaslgypqqftcvwyxtwerszvdpklqgy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zpgtilnfagywayacygrhbbswdbdyqyzq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nnighiuxiukktriiuwnjciykkvgkxoiz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fteapvctynkkcwgxzvbyvpfdcbxuvmta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzbxbzjwcfflnulunmylcxeirfwxlnwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sujghakhgsircedtavauxqmxvdbprbbo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"msupyqxcinsmssnpkltzgzkskfazwqil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ifrsjkedjjiwmrpsvmnkoaagfavuhkwz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjugcixbxxnkpaqbjyabuegepbisipjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"whqvkzkirjtyevzvjnvzokfjbwoklxxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtihhfqykzhkggipjawscchblxllwerz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uspozkasrgtkmntqxbtxxecjxbsgwrng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zkkcujjpwmxnqxxhvdyshbuuwtikhfsk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wpaltjzkeuccciltzbawhcsaivvrgded","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ysimtocvctgjmxhxorroiujyurwwcgrb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bxrerorgdbwooceknmkxylcmhdsradwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swxgfyjvcbvzdnocpcvnwydsrecxtibn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uciprevzjxasvpmxycagexdbmtpxigub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sskmhrfbslzqxujfnljilzdstflqzcst","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cachoygneuhnppyupprzjksvokkbawuj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfaxnbfjqitsjyegjgbeifladtpbgazc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edgywhzuoghbbxexafewxslwipzohaav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yvfgnnaoptlndmihlrmygbghxjqlewdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fufhvidfctpgznxwtkzbjdumejmgmmgo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohjzjvvhiqmabmicejnzfjqhaoaknxtn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672653,"databaseName":"models_schema","ddl":"CREATE TABLE `wzjzwsynaunsloezfpugchitwewtoxto` (\n `mbwyvszuhkhnzdyesplqbrbmaxpcxoml` int NOT NULL,\n `xdtipslwgoxjzapvtmtkwwnowjxxxjtd` int DEFAULT NULL,\n `cwxleldnhqrlseamnzfkcffiayblcaey` int DEFAULT NULL,\n `vgalgkcjxywzfjwephdixwlntjdhfpnd` int DEFAULT NULL,\n `crpuzdedbbxvhqlooakkvitjmmhymhaj` int DEFAULT NULL,\n `lvueblzikqzvwhkrttfjqqboyotanxln` int DEFAULT NULL,\n `ximfqbjzobvogzxfeocidtbweazxcxct` int DEFAULT NULL,\n `quzxnxpbglmdvrarjxsytolpcecrzvjl` int DEFAULT NULL,\n `hnasitepxgpoocanwjniusrgynuglylf` int DEFAULT NULL,\n `rqneyydtjpnyynznxdtfwsfpqgfgiglz` int DEFAULT NULL,\n `qdytmiytkgxmgoagyztupsslzhdgermj` int DEFAULT NULL,\n `gplhkyvslkpzghaqudmgyutuuodhtien` int DEFAULT NULL,\n `qomwpkuovdfmfrrfbvkwwgdfyuwyvusi` int DEFAULT NULL,\n `boemfejdcfwskxmtytlgxmnfyzmmeyqf` int DEFAULT NULL,\n `xbestcqeabtqqstcmbdmoouriuoeucuz` int DEFAULT NULL,\n `xgbtymtcokdieuhtbykypizowkmzizae` int DEFAULT NULL,\n `wnlvtpmfabilxekbptpijxbnkdbvppsq` int DEFAULT NULL,\n `wjrgaicxmowygpmjbnegrxeuaisjijmh` int DEFAULT NULL,\n `dvlnidegslbdfqqhcxfsidclhmwbudgb` int DEFAULT NULL,\n `gpiymstctibsdjlpwalsnhkbtmfxmzer` int DEFAULT NULL,\n `xyvlxwrophrsufvrckjiwugjtztxzxhe` int DEFAULT NULL,\n `kolzsjxsnkdqkwgxiesabwahzejgzrle` int DEFAULT NULL,\n `mzygcocphpyqnwbowizldrvhskvzprrc` int DEFAULT NULL,\n `mnwzicnultbgvhnpowklnbayxohowogz` int DEFAULT NULL,\n `vlahxiepabtlvwuesoepohqehfnpwvnm` int DEFAULT NULL,\n `vjxshzfiutpqdyktzuifttzacznoowtw` int DEFAULT NULL,\n `dlhewonurdfjjvgtltngbbkcmogucrwv` int DEFAULT NULL,\n `kzrzahstdvkkohtnmvegousrclzvhldb` int DEFAULT NULL,\n `shcipahwhaueallwpspciirridttqqrf` int DEFAULT NULL,\n `zhvexugopvoxeubxwvayhgraywonpfln` int DEFAULT NULL,\n `bzzgotcwixgdgtskmmyqprfgqeeywabs` int DEFAULT NULL,\n `nrfyyhggqjctqavjtkldktbnwrcrbywv` int DEFAULT NULL,\n `phlwnmrerivjnkzxpgqopfprpxsbujzi` int DEFAULT NULL,\n `fqmymhlmexcgukfpqgonfoprelzhgkjv` int DEFAULT NULL,\n `rjeqqxwlsbkpyeolatfmnpeomfqkggam` int DEFAULT NULL,\n `axwtddxeshvwrgqovytfsnklzyygxyzg` int DEFAULT NULL,\n `bbymbvdfizgrtjwvggturyyzvppeivos` int DEFAULT NULL,\n `dqyelfiuarbqbdmpjxysoixjylrpdazf` int DEFAULT NULL,\n `yryibazuzvnxkhbamwncvyfjuoraibiu` int DEFAULT NULL,\n `xnspdozkvnkduebmkhoqiqptrjmhzcvx` int DEFAULT NULL,\n `ukcnxcmtqurijtekdqayedssehxrkehv` int DEFAULT NULL,\n `rrgzsssbmddrinkxkqccmyhflbmhpoiz` int DEFAULT NULL,\n `pdbsokngfzceshvvsokcvcvokfimqsna` int DEFAULT NULL,\n `wgrhwvlbpxyczhbmtkfaibvnnkeivgii` int DEFAULT NULL,\n `kvgplryqwdkzwjwwiilfaabdivfpmakt` int DEFAULT NULL,\n `otlneplehijqmovgorayumkirmngvbis` int DEFAULT NULL,\n `zssrvnzhaqdqejsscgeitsidttlmyeuu` int DEFAULT NULL,\n `zzyezhuontzrrpzmxmjbfbsesbjbgzox` int DEFAULT NULL,\n `aaezehgtdixlrqwowrxhhiwuhijuxyor` int DEFAULT NULL,\n `saittkzeqcozqzhhvpejuorrgibbhlqj` int DEFAULT NULL,\n `bgtagtsqnzjjttbbqyfpyafkxloctvoi` int DEFAULT NULL,\n `cnvbpcqabwxuhjmwdyciykcmllzkgrsm` int DEFAULT NULL,\n `ljydvzhkudajlyentpjpboiszwdmwntt` int DEFAULT NULL,\n `hkfhxvmmtaxqctcmkwvrshinlrnuzcem` int DEFAULT NULL,\n `yythkgnqnxoirfejkqfrzlurietdvlip` int DEFAULT NULL,\n `smvktqwjwvkircetrasfzdnjttujpyom` int DEFAULT NULL,\n `qevnzfglvqdzrznjhaujwqqkvajgzaxl` int DEFAULT NULL,\n `fzuuxktcbarmhventomhvpsvvbocwhge` int DEFAULT NULL,\n `fpcxhnoeyndvdtxmiuqaguwntexlmxlj` int DEFAULT NULL,\n `aqqpxyrgydxvqauwmkopdlxeuqdiuxzk` int DEFAULT NULL,\n `yusnjohenfvpwndqxwbxsiusmjaxfpms` int DEFAULT NULL,\n `ypsgzuwrsfnjsurwsrqgmmlfwuuafaqu` int DEFAULT NULL,\n `upgcfqoeqtdnqulwzjmfsxqvbtsdrmqd` int DEFAULT NULL,\n `uijpgjvqrjdzduvapgjmongsfbfxtcbg` int DEFAULT NULL,\n `almxjxybdiwajxmsrwztplvqhycwiruk` int DEFAULT NULL,\n `bswmeeplkqqkfrcxrtteuvswmejoslyz` int DEFAULT NULL,\n `slpgevhdpvrccthpljwptcrhkihrwwlg` int DEFAULT NULL,\n `gtyaldqrigrbhqgovvqdgnyieawhqpsj` int DEFAULT NULL,\n `rbwrqvsngdlacivqyxyxwochwmnydaen` int DEFAULT NULL,\n `psvxjaodtuawydngwyvrgnixhbdcidki` int DEFAULT NULL,\n `xyekpfpijbexaqxjutafkutrajibhwfd` int DEFAULT NULL,\n `mfxgbhzssfojkuzzdtpgslpyxjqgiipb` int DEFAULT NULL,\n `qjrqoqxpymqrrgfinhbjsoyhrtnyfvhd` int DEFAULT NULL,\n `apwurvcaawfmuvdonhsousuhetzszpom` int DEFAULT NULL,\n `atgeffikkbrhscndgvetszkwsxrwxuff` int DEFAULT NULL,\n `pmketeuqmtdhbcoyewjanqcepfvlnltw` int DEFAULT NULL,\n `cpfvskskandvtqhlezvbsgnhguoainsq` int DEFAULT NULL,\n `ictnenuptlzwlpwdmrhfmphrqaaeosey` int DEFAULT NULL,\n `ceyaaiucjlecbvefdbzkowgedhqdmcqk` int DEFAULT NULL,\n `sgpahztpalgraoauhyqzfpqhkopxmazo` int DEFAULT NULL,\n `mvmouglfsngifxwsesyaphhelgjhugqw` int DEFAULT NULL,\n `rsgutchfnxnmxceoefbhjqcbhunnlnyy` int DEFAULT NULL,\n `kbdfxuynsflwqsqwpahlykiilapfawwn` int DEFAULT NULL,\n `jgzmxwudzrmscljkhjmkwwlrfrwzmnst` int DEFAULT NULL,\n `tefkdkaasvyaknsoscvkbgqetosfvzou` int DEFAULT NULL,\n `yymkrqjehuphfatvbqezpqpasghneleq` int DEFAULT NULL,\n `yatjsljqhhtokylndiprdfrpfaroznot` int DEFAULT NULL,\n `cbnyvzucakzaqxowdrzxzcqmpmipxznq` int DEFAULT NULL,\n `mwkppiffggxrpisddkefxezseppndgfh` int DEFAULT NULL,\n `wdswalaorrhvfcqmaykrtrgsmyusckxx` int DEFAULT NULL,\n `dtygnaguenqaatqwnyjpsqmyvmagtfde` int DEFAULT NULL,\n `xsjvfnizhytibupdvjyyxpnxnevfqwoz` int DEFAULT NULL,\n `fyugjnrzrmewkpmgniyxslpjfnsvwnfl` int DEFAULT NULL,\n `fikgdmkvmzfbcitrtinhacvxvwoeefup` int DEFAULT NULL,\n `qwxlkjdmhqkihupaktitbzrqznmcdolb` int DEFAULT NULL,\n `cxzbvhshinxhsnxkqtfbdwplwuhaplvf` int DEFAULT NULL,\n `skdulmzelyriwpubutwzktpmoivswpbr` int DEFAULT NULL,\n `uzivhetwtjvsgprtbvmzrahavssgkigc` int DEFAULT NULL,\n `ekkzkuxolaoyqwbkunjcbtojxfhswejt` int DEFAULT NULL,\n `bjsqtcjeydtyeohymwbkigcimausrwpw` int DEFAULT NULL,\n PRIMARY KEY (`mbwyvszuhkhnzdyesplqbrbmaxpcxoml`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"wzjzwsynaunsloezfpugchitwewtoxto\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["mbwyvszuhkhnzdyesplqbrbmaxpcxoml"],"columns":[{"name":"mbwyvszuhkhnzdyesplqbrbmaxpcxoml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"xdtipslwgoxjzapvtmtkwwnowjxxxjtd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwxleldnhqrlseamnzfkcffiayblcaey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgalgkcjxywzfjwephdixwlntjdhfpnd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"crpuzdedbbxvhqlooakkvitjmmhymhaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvueblzikqzvwhkrttfjqqboyotanxln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ximfqbjzobvogzxfeocidtbweazxcxct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"quzxnxpbglmdvrarjxsytolpcecrzvjl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hnasitepxgpoocanwjniusrgynuglylf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqneyydtjpnyynznxdtfwsfpqgfgiglz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdytmiytkgxmgoagyztupsslzhdgermj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gplhkyvslkpzghaqudmgyutuuodhtien","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qomwpkuovdfmfrrfbvkwwgdfyuwyvusi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"boemfejdcfwskxmtytlgxmnfyzmmeyqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbestcqeabtqqstcmbdmoouriuoeucuz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xgbtymtcokdieuhtbykypizowkmzizae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnlvtpmfabilxekbptpijxbnkdbvppsq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjrgaicxmowygpmjbnegrxeuaisjijmh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvlnidegslbdfqqhcxfsidclhmwbudgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gpiymstctibsdjlpwalsnhkbtmfxmzer","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyvlxwrophrsufvrckjiwugjtztxzxhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kolzsjxsnkdqkwgxiesabwahzejgzrle","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzygcocphpyqnwbowizldrvhskvzprrc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnwzicnultbgvhnpowklnbayxohowogz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vlahxiepabtlvwuesoepohqehfnpwvnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjxshzfiutpqdyktzuifttzacznoowtw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dlhewonurdfjjvgtltngbbkcmogucrwv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzrzahstdvkkohtnmvegousrclzvhldb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shcipahwhaueallwpspciirridttqqrf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zhvexugopvoxeubxwvayhgraywonpfln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bzzgotcwixgdgtskmmyqprfgqeeywabs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nrfyyhggqjctqavjtkldktbnwrcrbywv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phlwnmrerivjnkzxpgqopfprpxsbujzi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqmymhlmexcgukfpqgonfoprelzhgkjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjeqqxwlsbkpyeolatfmnpeomfqkggam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axwtddxeshvwrgqovytfsnklzyygxyzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbymbvdfizgrtjwvggturyyzvppeivos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqyelfiuarbqbdmpjxysoixjylrpdazf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yryibazuzvnxkhbamwncvyfjuoraibiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnspdozkvnkduebmkhoqiqptrjmhzcvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ukcnxcmtqurijtekdqayedssehxrkehv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrgzsssbmddrinkxkqccmyhflbmhpoiz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdbsokngfzceshvvsokcvcvokfimqsna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wgrhwvlbpxyczhbmtkfaibvnnkeivgii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvgplryqwdkzwjwwiilfaabdivfpmakt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otlneplehijqmovgorayumkirmngvbis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zssrvnzhaqdqejsscgeitsidttlmyeuu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzyezhuontzrrpzmxmjbfbsesbjbgzox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aaezehgtdixlrqwowrxhhiwuhijuxyor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"saittkzeqcozqzhhvpejuorrgibbhlqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bgtagtsqnzjjttbbqyfpyafkxloctvoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnvbpcqabwxuhjmwdyciykcmllzkgrsm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljydvzhkudajlyentpjpboiszwdmwntt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkfhxvmmtaxqctcmkwvrshinlrnuzcem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yythkgnqnxoirfejkqfrzlurietdvlip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smvktqwjwvkircetrasfzdnjttujpyom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qevnzfglvqdzrznjhaujwqqkvajgzaxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzuuxktcbarmhventomhvpsvvbocwhge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpcxhnoeyndvdtxmiuqaguwntexlmxlj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqqpxyrgydxvqauwmkopdlxeuqdiuxzk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yusnjohenfvpwndqxwbxsiusmjaxfpms","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypsgzuwrsfnjsurwsrqgmmlfwuuafaqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upgcfqoeqtdnqulwzjmfsxqvbtsdrmqd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uijpgjvqrjdzduvapgjmongsfbfxtcbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"almxjxybdiwajxmsrwztplvqhycwiruk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bswmeeplkqqkfrcxrtteuvswmejoslyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"slpgevhdpvrccthpljwptcrhkihrwwlg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtyaldqrigrbhqgovvqdgnyieawhqpsj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbwrqvsngdlacivqyxyxwochwmnydaen","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"psvxjaodtuawydngwyvrgnixhbdcidki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyekpfpijbexaqxjutafkutrajibhwfd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mfxgbhzssfojkuzzdtpgslpyxjqgiipb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjrqoqxpymqrrgfinhbjsoyhrtnyfvhd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"apwurvcaawfmuvdonhsousuhetzszpom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atgeffikkbrhscndgvetszkwsxrwxuff","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmketeuqmtdhbcoyewjanqcepfvlnltw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cpfvskskandvtqhlezvbsgnhguoainsq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ictnenuptlzwlpwdmrhfmphrqaaeosey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ceyaaiucjlecbvefdbzkowgedhqdmcqk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sgpahztpalgraoauhyqzfpqhkopxmazo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvmouglfsngifxwsesyaphhelgjhugqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rsgutchfnxnmxceoefbhjqcbhunnlnyy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kbdfxuynsflwqsqwpahlykiilapfawwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgzmxwudzrmscljkhjmkwwlrfrwzmnst","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tefkdkaasvyaknsoscvkbgqetosfvzou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yymkrqjehuphfatvbqezpqpasghneleq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yatjsljqhhtokylndiprdfrpfaroznot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbnyvzucakzaqxowdrzxzcqmpmipxznq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwkppiffggxrpisddkefxezseppndgfh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wdswalaorrhvfcqmaykrtrgsmyusckxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtygnaguenqaatqwnyjpsqmyvmagtfde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsjvfnizhytibupdvjyyxpnxnevfqwoz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fyugjnrzrmewkpmgniyxslpjfnsvwnfl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fikgdmkvmzfbcitrtinhacvxvwoeefup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwxlkjdmhqkihupaktitbzrqznmcdolb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cxzbvhshinxhsnxkqtfbdwplwuhaplvf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skdulmzelyriwpubutwzktpmoivswpbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzivhetwtjvsgprtbvmzrahavssgkigc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekkzkuxolaoyqwbkunjcbtojxfhswejt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjsqtcjeydtyeohymwbkigcimausrwpw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672683,"databaseName":"models_schema","ddl":"CREATE TABLE `wzskeeofxzgrcdxuehzyhdhmmlzyxqxo` (\n `cdyaahsfoywvvnifdjqsqndwjkbrlgme` int NOT NULL,\n `cseixoliiylnhxwoaqibefxhakoejhxp` int DEFAULT NULL,\n `vmypacziptmmacthmfmanepvkzxhyawu` int DEFAULT NULL,\n `uohajgvtewwvmfhgpgjoybssyhacoyko` int DEFAULT NULL,\n `nneoxltoyvnqwzlirssrdjppfozgouzy` int DEFAULT NULL,\n `mwvnlmivqsomjhnjbgilicwubszjlakd` int DEFAULT NULL,\n `cvxstehieavrdiazgbyyozcjpskllrcw` int DEFAULT NULL,\n `qdljnvwrcqaropvaitsipjcwunmwiicz` int DEFAULT NULL,\n `dfcqcecqtnplhqhtpsbomonmcnpqeurt` int DEFAULT NULL,\n `noyhpgcuhvwpnunbaqkegypcmatgnkua` int DEFAULT NULL,\n `mzivpbvfixaciwluvmxsjoggdvwbdelc` int DEFAULT NULL,\n `tmqecjrfbenugmankxfwsvpzpgbraeni` int DEFAULT NULL,\n `gwcrryjmzxlzdzlayrugwdqsnufkiwnm` int DEFAULT NULL,\n `oidguynrodrstqynyygkdlferxcheqns` int DEFAULT NULL,\n `padivievkkjpasixykqglefeivaaioyq` int DEFAULT NULL,\n `blhcvbdfpvkajrwydzfzjqenzcrbrnmt` int DEFAULT NULL,\n `wcnfwiwhvinofnhdxhzykqymubgkbbvn` int DEFAULT NULL,\n `blmteijniyzdtxmvpydlhpwveisgvkzb` int DEFAULT NULL,\n `iplgmxoutngugzijlltwsrwdaudatgbb` int DEFAULT NULL,\n `lvuianfheuszfdupjkeplcdwwmgjxgyw` int DEFAULT NULL,\n `qcnjpvmzrkxvuodtrtaffwcdvpiyqwnt` int DEFAULT NULL,\n `qizkgphdlvengelyqtngsuobinhybtlw` int DEFAULT NULL,\n `rpkeawkcuysasfqprzjitdfhqpztfzrt` int DEFAULT NULL,\n `ejxxozjghbuhwkjvhuriwrwhlwwlmcuk` int DEFAULT NULL,\n `bccyenlrpkukedcghzjbhqxmhkdvumnt` int DEFAULT NULL,\n `vkhodioqjcffowpbxflbstxlzlqhcrpr` int DEFAULT NULL,\n `ahrykedtoiihaxlpuwkqmjelkdzebrhl` int DEFAULT NULL,\n `kchfhdsomyzemngwoladimvywzyjsglc` int DEFAULT NULL,\n `bmlyaiitrfdbypdamjnurmiqvvhrluxp` int DEFAULT NULL,\n `hpbdzwzfsurzpqrnfzwoxocvkioqxkud` int DEFAULT NULL,\n `swhspdgrhjdkyygyrazlvjdocifmtjyz` int DEFAULT NULL,\n `bxlsudodjplvhhxqzyqqoxfltoxcmyxc` int DEFAULT NULL,\n `fspmdwyzmlvuanmzxqebucqkdrfnuyub` int DEFAULT NULL,\n `cfipfkfgpernduxrxdmcfyzanlnouwan` int DEFAULT NULL,\n `lwdosrfktqyfdbsizfbtnhxkapowvmvm` int DEFAULT NULL,\n `zoggzudhmzoqrbjhwgxejfyguwxjhbns` int DEFAULT NULL,\n `snkqrqyejwrwyrphgfcqbvfctondyjlb` int DEFAULT NULL,\n `mrhetdummkcqmnseevizikqwpusqlxbh` int DEFAULT NULL,\n `jbtlhbmgjeykfoqmtszinbgsrajuqkaa` int DEFAULT NULL,\n `clmjxtthqpuaqomaeuqfmbpinkxidvtr` int DEFAULT NULL,\n `ojxlcrutvipcnugknhevdjxirctgdxqc` int DEFAULT NULL,\n `lkaffnuwvbpvwpmchrhebxutggokecro` int DEFAULT NULL,\n `wvrrcgclfupwjqjxjesfdxtvddleyqrd` int DEFAULT NULL,\n `vbkkrfpvioekpvxoujajsaakwvmklljz` int DEFAULT NULL,\n `ecxlfyxcotmeffbmzdpshxnmeuccmtaz` int DEFAULT NULL,\n `dkqgidznvqeghqtnuvhkcoqnwwiyvroh` int DEFAULT NULL,\n `xttpfsykumncztilvupbwbhbnzyzteew` int DEFAULT NULL,\n `iqrsdcilohnrgcoqglhfqvlamlnaetcg` int DEFAULT NULL,\n `xromuwzxnlfgscdauvykjaqphazkeoys` int DEFAULT NULL,\n `azjaesfjfzudkemfuwraprhninslkfjo` int DEFAULT NULL,\n `cmxswmzuzdprldhnefeyzanjjnqnmkbr` int DEFAULT NULL,\n `mbhwnhipewoxoqkauhevjmbqeyyoebgg` int DEFAULT NULL,\n `arfvqmeyfcohkelbuoarpqfgkvgcsvmq` int DEFAULT NULL,\n `knlalkpxatljabxbqaohjuigybotvhwt` int DEFAULT NULL,\n `wffexsbkvxggcdpqbzwqgxugakdpvwji` int DEFAULT NULL,\n `ktozzobjzvbdptceowbkodiwjoporplb` int DEFAULT NULL,\n `gbjrfmlzwywpcimqxykphhrckqaezczl` int DEFAULT NULL,\n `rbdbtckiqhqtyporztxhcolzhhmkobvk` int DEFAULT NULL,\n `vqxlofbofwhhshdwmclgeygwcuaaqijq` int DEFAULT NULL,\n `oxeutjrskwfzoddebcoeleifibxirwlz` int DEFAULT NULL,\n `bbyleocgakcxoehddwwzwmgzzhgrnfdl` int DEFAULT NULL,\n `vrentalhkjfimdgydtqzbwhwmanztyns` int DEFAULT NULL,\n `exdodowheqrmrdpnprozzbbuslapviuq` int DEFAULT NULL,\n `irtqtjbmvhqntisdhdoptwbbbubzukez` int DEFAULT NULL,\n `hhwjxmwmpxqgrouyprotiixcczmsueng` int DEFAULT NULL,\n `dhknpkqrpgzdkzegtghhdbwgdmigxfdn` int DEFAULT NULL,\n `idsbcgpttroclsybyvnlqdfajfswhkut` int DEFAULT NULL,\n `mjxhexdssjzvwnksblxmefuanbgtxbwm` int DEFAULT NULL,\n `gneyiyfxptztybceopfqiuzlvtoepkdv` int DEFAULT NULL,\n `jvwcwntxtxratbzuqqbwfmwqaacedqxm` int DEFAULT NULL,\n `jzrjnvcnarefjyvuuwuzijtsabpkibsq` int DEFAULT NULL,\n `qntreppgevjmbmrpdkbdwdvzoebhsjdq` int DEFAULT NULL,\n `bgmkxkbszdhaxtklrxlddxsxkuqbodkl` int DEFAULT NULL,\n `mpvijrdkoxbcfnsobljwrkvmdtvdxswn` int DEFAULT NULL,\n `xdepjcsbgcsckzchxrnvkkvjvhnrnxnk` int DEFAULT NULL,\n `kpxutcqymgqlyqourlytqtissztfmnhn` int DEFAULT NULL,\n `mrirvmbzqbqgcopojsnvehvdkfokqzuv` int DEFAULT NULL,\n `aombcmltukxczxcghaokflgsewphvnac` int DEFAULT NULL,\n `tehxaunxvowsbchdfrghbejvztaaxwdz` int DEFAULT NULL,\n `wpmbjvgqcddurstwbpluvztstlutifws` int DEFAULT NULL,\n `lmkfoalfytrzcafvktukswpzojvicvuf` int DEFAULT NULL,\n `hrimempxstttgfcvozvvnjzsgkpthzhn` int DEFAULT NULL,\n `piymxgtejyqxjpvosqvzvlsyhjejiprb` int DEFAULT NULL,\n `dfcelgjkuamtteaapdsarwydroslvlab` int DEFAULT NULL,\n `kihfmoemutbazqwbnpybuftahzzpudcr` int DEFAULT NULL,\n `tveclkejyqygpyxfolvxkuuswpdvceij` int DEFAULT NULL,\n `ibohjgiljpntdlrhrvamjdnafxnmenko` int DEFAULT NULL,\n `gcummniwcgkjyclxpbvunetzjuwdrgbu` int DEFAULT NULL,\n `sqcvhdkplmkcchqmqfxztinqrjzpcxxl` int DEFAULT NULL,\n `osskfdmhjglpyqhafzbbwvtxxhlcqvkn` int DEFAULT NULL,\n `ukyqykgriqprmmhcfouhlswpcymnedpk` int DEFAULT NULL,\n `cbceoxjygbuyflerfqbsgzjpyvskvtgb` int DEFAULT NULL,\n `lpbhbjevmadnhnjhckdmryzvxyxebtko` int DEFAULT NULL,\n `ydpfmgppnbsnqxmkvttolzqkxkbfpvkk` int DEFAULT NULL,\n `cwtofpbyclkqzyprxyttyteiviqaliuq` int DEFAULT NULL,\n `vpuaiuxptuyyrxhgaqaoqlmgunnfcdfu` int DEFAULT NULL,\n `oogakwzihdcsinujtdailnzdyncplbva` int DEFAULT NULL,\n `wmrshshmjjpxfvyevwgclnwodpxzfyat` int DEFAULT NULL,\n `takarauhjcbawngwxftddntrorfuvuwv` int DEFAULT NULL,\n `iquyqlosbtpfmwckdlhyapeonjltyujf` int DEFAULT NULL,\n PRIMARY KEY (`cdyaahsfoywvvnifdjqsqndwjkbrlgme`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"wzskeeofxzgrcdxuehzyhdhmmlzyxqxo\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["cdyaahsfoywvvnifdjqsqndwjkbrlgme"],"columns":[{"name":"cdyaahsfoywvvnifdjqsqndwjkbrlgme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"cseixoliiylnhxwoaqibefxhakoejhxp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vmypacziptmmacthmfmanepvkzxhyawu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uohajgvtewwvmfhgpgjoybssyhacoyko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nneoxltoyvnqwzlirssrdjppfozgouzy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwvnlmivqsomjhnjbgilicwubszjlakd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvxstehieavrdiazgbyyozcjpskllrcw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdljnvwrcqaropvaitsipjcwunmwiicz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dfcqcecqtnplhqhtpsbomonmcnpqeurt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"noyhpgcuhvwpnunbaqkegypcmatgnkua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzivpbvfixaciwluvmxsjoggdvwbdelc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmqecjrfbenugmankxfwsvpzpgbraeni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gwcrryjmzxlzdzlayrugwdqsnufkiwnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oidguynrodrstqynyygkdlferxcheqns","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"padivievkkjpasixykqglefeivaaioyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blhcvbdfpvkajrwydzfzjqenzcrbrnmt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcnfwiwhvinofnhdxhzykqymubgkbbvn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blmteijniyzdtxmvpydlhpwveisgvkzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iplgmxoutngugzijlltwsrwdaudatgbb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvuianfheuszfdupjkeplcdwwmgjxgyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qcnjpvmzrkxvuodtrtaffwcdvpiyqwnt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qizkgphdlvengelyqtngsuobinhybtlw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpkeawkcuysasfqprzjitdfhqpztfzrt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejxxozjghbuhwkjvhuriwrwhlwwlmcuk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bccyenlrpkukedcghzjbhqxmhkdvumnt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkhodioqjcffowpbxflbstxlzlqhcrpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ahrykedtoiihaxlpuwkqmjelkdzebrhl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kchfhdsomyzemngwoladimvywzyjsglc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bmlyaiitrfdbypdamjnurmiqvvhrluxp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hpbdzwzfsurzpqrnfzwoxocvkioqxkud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swhspdgrhjdkyygyrazlvjdocifmtjyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bxlsudodjplvhhxqzyqqoxfltoxcmyxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fspmdwyzmlvuanmzxqebucqkdrfnuyub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cfipfkfgpernduxrxdmcfyzanlnouwan","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwdosrfktqyfdbsizfbtnhxkapowvmvm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zoggzudhmzoqrbjhwgxejfyguwxjhbns","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"snkqrqyejwrwyrphgfcqbvfctondyjlb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrhetdummkcqmnseevizikqwpusqlxbh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jbtlhbmgjeykfoqmtszinbgsrajuqkaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"clmjxtthqpuaqomaeuqfmbpinkxidvtr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojxlcrutvipcnugknhevdjxirctgdxqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lkaffnuwvbpvwpmchrhebxutggokecro","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wvrrcgclfupwjqjxjesfdxtvddleyqrd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbkkrfpvioekpvxoujajsaakwvmklljz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecxlfyxcotmeffbmzdpshxnmeuccmtaz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkqgidznvqeghqtnuvhkcoqnwwiyvroh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xttpfsykumncztilvupbwbhbnzyzteew","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqrsdcilohnrgcoqglhfqvlamlnaetcg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xromuwzxnlfgscdauvykjaqphazkeoys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"azjaesfjfzudkemfuwraprhninslkfjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmxswmzuzdprldhnefeyzanjjnqnmkbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbhwnhipewoxoqkauhevjmbqeyyoebgg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"arfvqmeyfcohkelbuoarpqfgkvgcsvmq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knlalkpxatljabxbqaohjuigybotvhwt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wffexsbkvxggcdpqbzwqgxugakdpvwji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ktozzobjzvbdptceowbkodiwjoporplb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gbjrfmlzwywpcimqxykphhrckqaezczl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbdbtckiqhqtyporztxhcolzhhmkobvk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqxlofbofwhhshdwmclgeygwcuaaqijq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oxeutjrskwfzoddebcoeleifibxirwlz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbyleocgakcxoehddwwzwmgzzhgrnfdl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vrentalhkjfimdgydtqzbwhwmanztyns","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exdodowheqrmrdpnprozzbbuslapviuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"irtqtjbmvhqntisdhdoptwbbbubzukez","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhwjxmwmpxqgrouyprotiixcczmsueng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhknpkqrpgzdkzegtghhdbwgdmigxfdn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idsbcgpttroclsybyvnlqdfajfswhkut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjxhexdssjzvwnksblxmefuanbgtxbwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gneyiyfxptztybceopfqiuzlvtoepkdv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvwcwntxtxratbzuqqbwfmwqaacedqxm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jzrjnvcnarefjyvuuwuzijtsabpkibsq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qntreppgevjmbmrpdkbdwdvzoebhsjdq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bgmkxkbszdhaxtklrxlddxsxkuqbodkl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mpvijrdkoxbcfnsobljwrkvmdtvdxswn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdepjcsbgcsckzchxrnvkkvjvhnrnxnk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kpxutcqymgqlyqourlytqtissztfmnhn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrirvmbzqbqgcopojsnvehvdkfokqzuv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aombcmltukxczxcghaokflgsewphvnac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tehxaunxvowsbchdfrghbejvztaaxwdz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wpmbjvgqcddurstwbpluvztstlutifws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmkfoalfytrzcafvktukswpzojvicvuf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hrimempxstttgfcvozvvnjzsgkpthzhn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"piymxgtejyqxjpvosqvzvlsyhjejiprb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dfcelgjkuamtteaapdsarwydroslvlab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kihfmoemutbazqwbnpybuftahzzpudcr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tveclkejyqygpyxfolvxkuuswpdvceij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibohjgiljpntdlrhrvamjdnafxnmenko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gcummniwcgkjyclxpbvunetzjuwdrgbu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sqcvhdkplmkcchqmqfxztinqrjzpcxxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"osskfdmhjglpyqhafzbbwvtxxhlcqvkn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ukyqykgriqprmmhcfouhlswpcymnedpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbceoxjygbuyflerfqbsgzjpyvskvtgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lpbhbjevmadnhnjhckdmryzvxyxebtko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydpfmgppnbsnqxmkvttolzqkxkbfpvkk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwtofpbyclkqzyprxyttyteiviqaliuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpuaiuxptuyyrxhgaqaoqlmgunnfcdfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oogakwzihdcsinujtdailnzdyncplbva","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmrshshmjjpxfvyevwgclnwodpxzfyat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"takarauhjcbawngwxftddntrorfuvuwv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iquyqlosbtpfmwckdlhyapeonjltyujf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672713,"databaseName":"models_schema","ddl":"CREATE TABLE `xkjqfzysfnzfwcmrzcgjzonrwhldoesm` (\n `bzwfhlcqizawzfgqqsafuidzkqsdjjmm` int NOT NULL,\n `mbrrtlftqzavpkcgwrwtkytmpypugmvg` int DEFAULT NULL,\n `lvuwfndktzsctauarmaajbcsgxghstwg` int DEFAULT NULL,\n `lgbabymlefvouriyluxffvuxcravpely` int DEFAULT NULL,\n `qrajestlwfestiwabjdmgoyzrugfzntb` int DEFAULT NULL,\n `pkrgeuvbopmcyimhpktrpcbsjpeocdpe` int DEFAULT NULL,\n `zciowroqqtrimmocyydnchhbyhuhdaow` int DEFAULT NULL,\n `mfdwumnxijygztbaliiuzjcrfpinvpkx` int DEFAULT NULL,\n `opsypevosdyftjazpcssqwsogvblyriw` int DEFAULT NULL,\n `revgzbkdfuvnotdlvbeqkuwtkadkfnwi` int DEFAULT NULL,\n `tuqylowyzvgvbewrukduxpxndxoznjmn` int DEFAULT NULL,\n `cexfsheptbdfwmnzfwrsfgxhofeygjtj` int DEFAULT NULL,\n `nfmejzriztyhxbjwqcozuywequfxeana` int DEFAULT NULL,\n `ckxbnuandktvicrzeoitqyifocetqvnr` int DEFAULT NULL,\n `tlrktldjyiwllcctqieaozzsqjjtmphs` int DEFAULT NULL,\n `juvdeiygynzjntdjmmgvhcsrgcskkzce` int DEFAULT NULL,\n `lhzmnqtesayduskpgcusjwtuimdacftx` int DEFAULT NULL,\n `zsnqibohryazswoosricuauxjpdimdeu` int DEFAULT NULL,\n `ixxjvdtculwjwcvgcvihudfrhshqnlad` int DEFAULT NULL,\n `umtqukdgyqwnoporfkaqqlncjtnmkkly` int DEFAULT NULL,\n `ncwldpwssakpzrhqisxxrlmdrnmgtwup` int DEFAULT NULL,\n `akkwjdjcspdqxxwehqtntfoctkstlsgs` int DEFAULT NULL,\n `tttpqtjhhfrwdutpyaagikmgrphqxqcm` int DEFAULT NULL,\n `tmjyjvvriofdgdzvfrkrtjrrvshssgpo` int DEFAULT NULL,\n `ffrookcgzlwlgooybiscqtlxckuoyrpg` int DEFAULT NULL,\n `aqgiukbwahdaniadyvcihoygxtpjvung` int DEFAULT NULL,\n `xetfbzaefbnflwwuuzqdrjzndleklxwk` int DEFAULT NULL,\n `lwwdxcfrxbxzyoxxyxkqxzgallirainr` int DEFAULT NULL,\n `hwcsssiibhqzxoeqsdqfzdbmjasbgplz` int DEFAULT NULL,\n `nvwhphehcyhsbkpppnjawygcesuouxkx` int DEFAULT NULL,\n `dhwagfdajsqswkovqevqyguyjncxgfmb` int DEFAULT NULL,\n `bzxlkpcsovojvqmjeifzsqevqmoyyjac` int DEFAULT NULL,\n `lgybpkqylkgcrgzcgetsirjypjtfuxme` int DEFAULT NULL,\n `eoeyoqqtiivpscotedurgqlolrubhjpb` int DEFAULT NULL,\n `jsfbtdfbbubhlncuycwpwkebeqxnoanp` int DEFAULT NULL,\n `xeslvbjulvjnjuryskrfeipvxznwrsxy` int DEFAULT NULL,\n `lzoyydiupibaeuyejrrbpoqhhgzzojfo` int DEFAULT NULL,\n `gygwwtjsecfeqxxyehxtlmpqinnofmji` int DEFAULT NULL,\n `fvfluplyjutpjphinlxvuipyjhocqugj` int DEFAULT NULL,\n `sduqsvatkuwrxeqwhsmkgjfuwghzirrj` int DEFAULT NULL,\n `bjyfkoscmsrhiceqheytpaplwoaekhos` int DEFAULT NULL,\n `foayhkddhufwqszmmpycsqvdzqxyiwgr` int DEFAULT NULL,\n `otqbkcnuzervyxxhoidhpuvvkpdaorgt` int DEFAULT NULL,\n `leojhydttycsalptbminmjvgazgvdigp` int DEFAULT NULL,\n `sscoqzcccaomygjcviavvpqmthzhbunv` int DEFAULT NULL,\n `igmnyedjsgrqbxhpustzpiphviqnzgce` int DEFAULT NULL,\n `uoiiulsqzswjxzorhmridtazcijkxeyx` int DEFAULT NULL,\n `wyfkvsavhyqrjznjpwkxjfzfpzbkdvjp` int DEFAULT NULL,\n `naudwczyqecbmveiryedkfuutnebcajr` int DEFAULT NULL,\n `rjoqocxeqlekktwboqnemwhpnufyrsfl` int DEFAULT NULL,\n `rdmhbhwxgxzkoyrgwnyystwtuujjyoej` int DEFAULT NULL,\n `yjwehsgrzpjrapupcnhkrheptjpspjox` int DEFAULT NULL,\n `xrkahgekizmhqzigqpfcowemqsgkcvly` int DEFAULT NULL,\n `eljjtfqbwotcsxewtvivnbgeyaxjuzsm` int DEFAULT NULL,\n `blphosvkketfydummfnuaxpxuyxfpfhu` int DEFAULT NULL,\n `omfrlfemalspvfwgpjubrmcljuwsipzc` int DEFAULT NULL,\n `wzhjukxbtkzrebbjjfbvprnanyfkyzhn` int DEFAULT NULL,\n `dbpesrtdiggxwapebtpthgzuwrnsxpzj` int DEFAULT NULL,\n `jwdaleaggrotiwesvxrsfyiqosiowqti` int DEFAULT NULL,\n `gmexddvcwfubbjqjnbvqfkvvikjsnypy` int DEFAULT NULL,\n `obnhendztorihgreumkruagvxukqxieq` int DEFAULT NULL,\n `fczpzfpmdwdkbtmvwnrmclbsymtbrhth` int DEFAULT NULL,\n `dfifeztqvfiotvwznfkebmnpixnzmlvs` int DEFAULT NULL,\n `hflcyyobczrqpefjnxdvrhenkswylrgs` int DEFAULT NULL,\n `xycvwueetqgihqatsftswqknkakvhfwt` int DEFAULT NULL,\n `bjcygkqhumzxergwktwcxgjpdpkawfjs` int DEFAULT NULL,\n `dpjeqncwqrdpkvxblpfnimzvztzvcovj` int DEFAULT NULL,\n `kpbllsbsyvvanfcjigafohvhaoiowcgq` int DEFAULT NULL,\n `hbxshrjjwqeescfqbvjgsqnjhktilsnh` int DEFAULT NULL,\n `cwytopitmczcxvqlblcxbdedchuenamv` int DEFAULT NULL,\n `dbocfzxewrdpvwlkgfwheydgchulvblp` int DEFAULT NULL,\n `revvysczkjlhuaphzzccnxeyxopwxzkd` int DEFAULT NULL,\n `jlphfbofmjyoleulmttisqigjtpmljaq` int DEFAULT NULL,\n `dkrcuivnggwpcyjfwpqtytvrinswjfhy` int DEFAULT NULL,\n `fcjeqewvgeikbybfuyitsnusqokwunga` int DEFAULT NULL,\n `wrklemapzwffzhhyipkcfymznyvsmcyv` int DEFAULT NULL,\n `oqqyuhgfpvhowekpfdmebeyhgbiaxszl` int DEFAULT NULL,\n `esetzcmeghkmlvupipkiffimhherfvta` int DEFAULT NULL,\n `ooixirbyybdyyjihvycjmiqwzmlvqedi` int DEFAULT NULL,\n `sbtblmtdmlhexyswbbwbailqpatvobqb` int DEFAULT NULL,\n `anrlcotybgggiriyvfwywzcbfskoucnj` int DEFAULT NULL,\n `cvyrxafzwihsiumkqrrtrixtkjhlqtmp` int DEFAULT NULL,\n `zyjhgftpbnkoqyeckeyschgktfzpxlwr` int DEFAULT NULL,\n `uivcticvloikskkjfdagjpuqqqwbxuod` int DEFAULT NULL,\n `hhqqoqmkfopqokasdxzlxgmeesltcfdw` int DEFAULT NULL,\n `jdwcaurupkhnctcnnuedobjeivhwqays` int DEFAULT NULL,\n `bwzzhwimbafczjnhdvfaimyuboajfuaj` int DEFAULT NULL,\n `uaomjhzlabuwprpawzxxfjptewtochfg` int DEFAULT NULL,\n `yxxyhlbvtnajryxsigfedgysblxwtmxj` int DEFAULT NULL,\n `eiyvlkgsofppvbceqjtrriheajzddzmv` int DEFAULT NULL,\n `eyqbzeafppjghcmpqkicnzzjudleakhi` int DEFAULT NULL,\n `aemzmyuwkpcmnocgwkdrqvbluvgmhxef` int DEFAULT NULL,\n `mzzuxcpqylgixusvrilwlulvqjylfkai` int DEFAULT NULL,\n `shaoaupealxkmugisjowpqycqccjfsep` int DEFAULT NULL,\n `awvfsupzyvjslshteylvmaseiuzzmmuc` int DEFAULT NULL,\n `wzuddlhzfcnlrherfzmvcauimifhzzqp` int DEFAULT NULL,\n `meswddfukfunkmgvzssevhezdoppxkyc` int DEFAULT NULL,\n `ckfeabrqgmooegkxgfowwehbryiyyquh` int DEFAULT NULL,\n `qtpovsirrexfvmxmyubjzxpkivagdyfu` int DEFAULT NULL,\n `ypkpunwvhhcqrjayieuxkdixzfwtmovc` int DEFAULT NULL,\n PRIMARY KEY (`bzwfhlcqizawzfgqqsafuidzkqsdjjmm`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"xkjqfzysfnzfwcmrzcgjzonrwhldoesm\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["bzwfhlcqizawzfgqqsafuidzkqsdjjmm"],"columns":[{"name":"bzwfhlcqizawzfgqqsafuidzkqsdjjmm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"mbrrtlftqzavpkcgwrwtkytmpypugmvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvuwfndktzsctauarmaajbcsgxghstwg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgbabymlefvouriyluxffvuxcravpely","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qrajestlwfestiwabjdmgoyzrugfzntb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkrgeuvbopmcyimhpktrpcbsjpeocdpe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zciowroqqtrimmocyydnchhbyhuhdaow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mfdwumnxijygztbaliiuzjcrfpinvpkx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opsypevosdyftjazpcssqwsogvblyriw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"revgzbkdfuvnotdlvbeqkuwtkadkfnwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tuqylowyzvgvbewrukduxpxndxoznjmn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cexfsheptbdfwmnzfwrsfgxhofeygjtj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfmejzriztyhxbjwqcozuywequfxeana","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ckxbnuandktvicrzeoitqyifocetqvnr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlrktldjyiwllcctqieaozzsqjjtmphs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"juvdeiygynzjntdjmmgvhcsrgcskkzce","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhzmnqtesayduskpgcusjwtuimdacftx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zsnqibohryazswoosricuauxjpdimdeu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixxjvdtculwjwcvgcvihudfrhshqnlad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umtqukdgyqwnoporfkaqqlncjtnmkkly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ncwldpwssakpzrhqisxxrlmdrnmgtwup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akkwjdjcspdqxxwehqtntfoctkstlsgs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tttpqtjhhfrwdutpyaagikmgrphqxqcm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmjyjvvriofdgdzvfrkrtjrrvshssgpo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffrookcgzlwlgooybiscqtlxckuoyrpg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqgiukbwahdaniadyvcihoygxtpjvung","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xetfbzaefbnflwwuuzqdrjzndleklxwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwwdxcfrxbxzyoxxyxkqxzgallirainr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwcsssiibhqzxoeqsdqfzdbmjasbgplz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvwhphehcyhsbkpppnjawygcesuouxkx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dhwagfdajsqswkovqevqyguyjncxgfmb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bzxlkpcsovojvqmjeifzsqevqmoyyjac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgybpkqylkgcrgzcgetsirjypjtfuxme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eoeyoqqtiivpscotedurgqlolrubhjpb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jsfbtdfbbubhlncuycwpwkebeqxnoanp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xeslvbjulvjnjuryskrfeipvxznwrsxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lzoyydiupibaeuyejrrbpoqhhgzzojfo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gygwwtjsecfeqxxyehxtlmpqinnofmji","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fvfluplyjutpjphinlxvuipyjhocqugj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sduqsvatkuwrxeqwhsmkgjfuwghzirrj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjyfkoscmsrhiceqheytpaplwoaekhos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"foayhkddhufwqszmmpycsqvdzqxyiwgr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otqbkcnuzervyxxhoidhpuvvkpdaorgt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"leojhydttycsalptbminmjvgazgvdigp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sscoqzcccaomygjcviavvpqmthzhbunv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igmnyedjsgrqbxhpustzpiphviqnzgce","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uoiiulsqzswjxzorhmridtazcijkxeyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wyfkvsavhyqrjznjpwkxjfzfpzbkdvjp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"naudwczyqecbmveiryedkfuutnebcajr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjoqocxeqlekktwboqnemwhpnufyrsfl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdmhbhwxgxzkoyrgwnyystwtuujjyoej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjwehsgrzpjrapupcnhkrheptjpspjox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xrkahgekizmhqzigqpfcowemqsgkcvly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eljjtfqbwotcsxewtvivnbgeyaxjuzsm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blphosvkketfydummfnuaxpxuyxfpfhu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omfrlfemalspvfwgpjubrmcljuwsipzc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzhjukxbtkzrebbjjfbvprnanyfkyzhn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbpesrtdiggxwapebtpthgzuwrnsxpzj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwdaleaggrotiwesvxrsfyiqosiowqti","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmexddvcwfubbjqjnbvqfkvvikjsnypy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obnhendztorihgreumkruagvxukqxieq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fczpzfpmdwdkbtmvwnrmclbsymtbrhth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dfifeztqvfiotvwznfkebmnpixnzmlvs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hflcyyobczrqpefjnxdvrhenkswylrgs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xycvwueetqgihqatsftswqknkakvhfwt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjcygkqhumzxergwktwcxgjpdpkawfjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpjeqncwqrdpkvxblpfnimzvztzvcovj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kpbllsbsyvvanfcjigafohvhaoiowcgq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbxshrjjwqeescfqbvjgsqnjhktilsnh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwytopitmczcxvqlblcxbdedchuenamv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbocfzxewrdpvwlkgfwheydgchulvblp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"revvysczkjlhuaphzzccnxeyxopwxzkd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlphfbofmjyoleulmttisqigjtpmljaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkrcuivnggwpcyjfwpqtytvrinswjfhy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcjeqewvgeikbybfuyitsnusqokwunga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wrklemapzwffzhhyipkcfymznyvsmcyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqqyuhgfpvhowekpfdmebeyhgbiaxszl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"esetzcmeghkmlvupipkiffimhherfvta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ooixirbyybdyyjihvycjmiqwzmlvqedi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbtblmtdmlhexyswbbwbailqpatvobqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"anrlcotybgggiriyvfwywzcbfskoucnj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvyrxafzwihsiumkqrrtrixtkjhlqtmp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zyjhgftpbnkoqyeckeyschgktfzpxlwr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uivcticvloikskkjfdagjpuqqqwbxuod","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhqqoqmkfopqokasdxzlxgmeesltcfdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdwcaurupkhnctcnnuedobjeivhwqays","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bwzzhwimbafczjnhdvfaimyuboajfuaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uaomjhzlabuwprpawzxxfjptewtochfg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxxyhlbvtnajryxsigfedgysblxwtmxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eiyvlkgsofppvbceqjtrriheajzddzmv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eyqbzeafppjghcmpqkicnzzjudleakhi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aemzmyuwkpcmnocgwkdrqvbluvgmhxef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzzuxcpqylgixusvrilwlulvqjylfkai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shaoaupealxkmugisjowpqycqccjfsep","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awvfsupzyvjslshteylvmaseiuzzmmuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzuddlhzfcnlrherfzmvcauimifhzzqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"meswddfukfunkmgvzssevhezdoppxkyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ckfeabrqgmooegkxgfowwehbryiyyquh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtpovsirrexfvmxmyubjzxpkivagdyfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypkpunwvhhcqrjayieuxkdixzfwtmovc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672743,"databaseName":"models_schema","ddl":"CREATE TABLE `xkwxygabgxrruwrhxqbyhhgahhzdbnwg` (\n `fxbacykfttbojgbzvukowtihwkutxdjn` int NOT NULL,\n `dnjjflcxvxsstievgxizlotzlscjupmu` int DEFAULT NULL,\n `rgtkljsezjthboyzhagwoxxezzbxrybb` int DEFAULT NULL,\n `zrmoyjzmeqohqrbimkzqjssoqecsfzpq` int DEFAULT NULL,\n `gnlyxpdhegmntyiygrpwmpvfptuuhqmo` int DEFAULT NULL,\n `fnhqjldojjarkckaoftjcihuvwwarbge` int DEFAULT NULL,\n `atcsjjyxdubyinkkeynlgviphtnnhlke` int DEFAULT NULL,\n `yggpnjbxpcerdxrthaogbdjzidccaaio` int DEFAULT NULL,\n `mbxikxqrvwejwhgviwmnirskvfemvfgr` int DEFAULT NULL,\n `vhmdtnatbjnalyodoisairytdzjxzxal` int DEFAULT NULL,\n `sylyihbpyxxxkuccauuzlgfhwovehgve` int DEFAULT NULL,\n `elmtfyjyjjloopugjiuksnsugeitktql` int DEFAULT NULL,\n `microtocuxzsuvwhqewgdbmsqgolownb` int DEFAULT NULL,\n `tjjgxlrrjhfdxljonaqhmbnvstkmmnsl` int DEFAULT NULL,\n `lehwrsbmfzwwppqifulhsnyelcmdfhwv` int DEFAULT NULL,\n `ylvuassxycczlhhznizvfsnwyipwukpx` int DEFAULT NULL,\n `xpacjcnhhkbqxfxojxydrcxsdelzhule` int DEFAULT NULL,\n `llstzmefqmgyqdelirqyhzmycwzekdjo` int DEFAULT NULL,\n `isycxwbdkltkkjswojvhyvcbkkirtike` int DEFAULT NULL,\n `qdvbsdbaxjloqdocosswxpzkqqagxhzy` int DEFAULT NULL,\n `mzdlulkxgxzngsxbxhlrvovsvpyedelp` int DEFAULT NULL,\n `fudtdagzgmwebluapaunineoddzavuwj` int DEFAULT NULL,\n `mloiocjiemybyctrqbqlbtabxffutgne` int DEFAULT NULL,\n `leevhtqchwdzsvkkrooidioqrwzrsykw` int DEFAULT NULL,\n `eqjpkiloclcdtuvjgvahbtgbjrdrcanj` int DEFAULT NULL,\n `tiywomhicznltcaodzovrzoxunlofhsb` int DEFAULT NULL,\n `uhhpjszwmtzzuviumuyykghybrxidhqg` int DEFAULT NULL,\n `ndvojtziknxgnyrkzsknegxztvruxchs` int DEFAULT NULL,\n `vfjnesrtxyanpuvfwgajgkrjhlrfeztj` int DEFAULT NULL,\n `cyhruygoylvbnnwhxdhtkonyrhtehhug` int DEFAULT NULL,\n `vboxxjauhsehvpotmycdhxqxypsbqcnb` int DEFAULT NULL,\n `zmmpqhrqkixgsziejhexosbsebkhfjup` int DEFAULT NULL,\n `njvinwotujrdquwjfvreufzeguzqtocv` int DEFAULT NULL,\n `ksnwepclfsvwlcjjafbbkbyxjfeyybeu` int DEFAULT NULL,\n `jwajlgacsdhvfpadtzzvwiesyimqoibz` int DEFAULT NULL,\n `wqexzprsfwxeucbaxmtjccqdzgbeixkw` int DEFAULT NULL,\n `kipfahduslocfobecgaubyscnpvzeerm` int DEFAULT NULL,\n `lizbvfuebgcunyentzqguuqrjuwxlfcf` int DEFAULT NULL,\n `ynszerouiagouqqimvcmqdruwiamwngd` int DEFAULT NULL,\n `onqtdybshqqqbddvfflfdqaezdrpncen` int DEFAULT NULL,\n `zmoakcuubumneropwmivqulisaoarisn` int DEFAULT NULL,\n `swwzimmkpsnfniolctsqccxvxqfrqsbj` int DEFAULT NULL,\n `rwhtfjwaexepcircyhwcqpaygsrkdfql` int DEFAULT NULL,\n `ujbooputhqtditngxyxnojkzlnvijykb` int DEFAULT NULL,\n `cgfjkabpmnsfrsivreblryaacozgetkw` int DEFAULT NULL,\n `cijarweftopblwcueibbtrvygzausnqh` int DEFAULT NULL,\n `vbwggelxpohptlbcnofevhaxgafkgxhl` int DEFAULT NULL,\n `fwsqimylllrijfqwxruusictfkeedqat` int DEFAULT NULL,\n `jwbztrauekmnavaistoyptkuwvnvmqrk` int DEFAULT NULL,\n `idceouyqcavnetecjhplyglioxthnqgh` int DEFAULT NULL,\n `ywrirsuidgrgonuowavzfmywkmupmnij` int DEFAULT NULL,\n `ffpsypsvcmmvupgkfxmfvtvwynsoqygz` int DEFAULT NULL,\n `ccfcwxbfahkbkmocltkzbvjtyeltefmk` int DEFAULT NULL,\n `gfhhqawytqzzphwwtngolzelnpvjrojn` int DEFAULT NULL,\n `cutrsichcfxicpkriuylhsrpklmvuxvk` int DEFAULT NULL,\n `fmfqbxxggptvqfeqbqnthtwvqqyfgoqk` int DEFAULT NULL,\n `fwcjaiffyetjinpcqljiplfoihpqdwfu` int DEFAULT NULL,\n `cjravxhdeaflcsxkewrhibixwyfcllte` int DEFAULT NULL,\n `ctwfruogbgtvbycyybrrqoegwxoopcvq` int DEFAULT NULL,\n `suilndzkpfjhaimnlomwmtzjxviatezc` int DEFAULT NULL,\n `grryqolqavtmhrnoxnsgaahmpkwvzgaq` int DEFAULT NULL,\n `cmzgpophkzwdiulloaykfujcwivzione` int DEFAULT NULL,\n `yeushopmkchuqbecbfvxzqbdvqswupgz` int DEFAULT NULL,\n `sdzkavfparmhlxgelcssjsnvfadqvpjy` int DEFAULT NULL,\n `yeipxrphrmjpqbtqorqbmhquxczvjeln` int DEFAULT NULL,\n `nxpcvgqzwiqqazylxfajtlswntimpjma` int DEFAULT NULL,\n `lvuaxbczvvrdapvwjnrqbkbjnabrlqzn` int DEFAULT NULL,\n `pdyuywxrmhpsgqjavvnahyyajmrudxtr` int DEFAULT NULL,\n `gtunoyjaevybuangovmzbvunudcxcyno` int DEFAULT NULL,\n `hdubcegnzzjapwoqncesyevolnnqfqyb` int DEFAULT NULL,\n `pnwedrklbkfmbemqhjsosuoewvetxlyh` int DEFAULT NULL,\n `lgvqgvtgsrjafsgbfgojtjhtmdwbzqhd` int DEFAULT NULL,\n `awvikdnoafsrzagctqpgvcskbqkogsud` int DEFAULT NULL,\n `fsyohxdyqlldzwzuilfqrclzipdbcina` int DEFAULT NULL,\n `npmfxeafepmmgribkmchjidkjzuatdpt` int DEFAULT NULL,\n `ixlxntlzgcaglamjvtcuaueupwgaznwx` int DEFAULT NULL,\n `fwixsbatxxvlqohpxvpcuckzsexyizny` int DEFAULT NULL,\n `psgtpiqlgnlnhgamrlpvkjzpppplocbm` int DEFAULT NULL,\n `bpmtqnthxanrgoudgvyfkcvulrxlyhvt` int DEFAULT NULL,\n `eoswwwouimgdvghtasdzqhopghxnjhed` int DEFAULT NULL,\n `bvgjhnrvmwhkfrlvqvwyeyslwnhmmndm` int DEFAULT NULL,\n `clyphvaqkqlkueibnoifuhgfphwnhaxg` int DEFAULT NULL,\n `bsfxatxetxqxzwwenmykmphljhccijth` int DEFAULT NULL,\n `kcnyqueswwmjutwgrnijkiosarbnmxiz` int DEFAULT NULL,\n `jtyozxqryjqqfacitnhbdkrwfdhtnlrx` int DEFAULT NULL,\n `ikvwjscmisqgleumnniaqqupfssjsejw` int DEFAULT NULL,\n `grtaqrljizgolkwepmevqeumksvsavnd` int DEFAULT NULL,\n `pqvpawihroucthbslfcmfmiqqnemskvl` int DEFAULT NULL,\n `ydxviwkcqnhvrvzofazaormaqlzxosqz` int DEFAULT NULL,\n `gfmcvkfwhlufjfucfdrijjatpiozyndl` int DEFAULT NULL,\n `ealrhkieuuprpngqsvugcpeymuzvtnfr` int DEFAULT NULL,\n `ljmblnvxqvjfpogvxkwfvyuoiyykerbt` int DEFAULT NULL,\n `quezzqewyjkvutaulghxlxrhhkchakrq` int DEFAULT NULL,\n `ecihpkzibkltvwpanafelqbtihaoxbqj` int DEFAULT NULL,\n `fzyiuawqpycktsreyxzikqxztkxujolv` int DEFAULT NULL,\n `rcorjpzekfeenczhzedzqrzmuvikbpij` int DEFAULT NULL,\n `bcmmaxagrigktifyctmabqvuibujgewn` int DEFAULT NULL,\n `vharyedsmyzcmkmpszyolzlzheksmcaj` int DEFAULT NULL,\n `nzgkblemwefrgorjmvkxnoyrajdmutqe` int DEFAULT NULL,\n `igcnkoyxzqqvdnewxuiutifjitczodnj` int DEFAULT NULL,\n PRIMARY KEY (`fxbacykfttbojgbzvukowtihwkutxdjn`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"xkwxygabgxrruwrhxqbyhhgahhzdbnwg\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["fxbacykfttbojgbzvukowtihwkutxdjn"],"columns":[{"name":"fxbacykfttbojgbzvukowtihwkutxdjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"dnjjflcxvxsstievgxizlotzlscjupmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgtkljsezjthboyzhagwoxxezzbxrybb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zrmoyjzmeqohqrbimkzqjssoqecsfzpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnlyxpdhegmntyiygrpwmpvfptuuhqmo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnhqjldojjarkckaoftjcihuvwwarbge","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atcsjjyxdubyinkkeynlgviphtnnhlke","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yggpnjbxpcerdxrthaogbdjzidccaaio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbxikxqrvwejwhgviwmnirskvfemvfgr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhmdtnatbjnalyodoisairytdzjxzxal","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sylyihbpyxxxkuccauuzlgfhwovehgve","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"elmtfyjyjjloopugjiuksnsugeitktql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"microtocuxzsuvwhqewgdbmsqgolownb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjjgxlrrjhfdxljonaqhmbnvstkmmnsl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lehwrsbmfzwwppqifulhsnyelcmdfhwv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ylvuassxycczlhhznizvfsnwyipwukpx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xpacjcnhhkbqxfxojxydrcxsdelzhule","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llstzmefqmgyqdelirqyhzmycwzekdjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"isycxwbdkltkkjswojvhyvcbkkirtike","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdvbsdbaxjloqdocosswxpzkqqagxhzy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzdlulkxgxzngsxbxhlrvovsvpyedelp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fudtdagzgmwebluapaunineoddzavuwj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mloiocjiemybyctrqbqlbtabxffutgne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"leevhtqchwdzsvkkrooidioqrwzrsykw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqjpkiloclcdtuvjgvahbtgbjrdrcanj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tiywomhicznltcaodzovrzoxunlofhsb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhhpjszwmtzzuviumuyykghybrxidhqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ndvojtziknxgnyrkzsknegxztvruxchs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vfjnesrtxyanpuvfwgajgkrjhlrfeztj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cyhruygoylvbnnwhxdhtkonyrhtehhug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vboxxjauhsehvpotmycdhxqxypsbqcnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmmpqhrqkixgsziejhexosbsebkhfjup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njvinwotujrdquwjfvreufzeguzqtocv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ksnwepclfsvwlcjjafbbkbyxjfeyybeu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwajlgacsdhvfpadtzzvwiesyimqoibz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqexzprsfwxeucbaxmtjccqdzgbeixkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kipfahduslocfobecgaubyscnpvzeerm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lizbvfuebgcunyentzqguuqrjuwxlfcf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynszerouiagouqqimvcmqdruwiamwngd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"onqtdybshqqqbddvfflfdqaezdrpncen","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmoakcuubumneropwmivqulisaoarisn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swwzimmkpsnfniolctsqccxvxqfrqsbj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rwhtfjwaexepcircyhwcqpaygsrkdfql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujbooputhqtditngxyxnojkzlnvijykb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgfjkabpmnsfrsivreblryaacozgetkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cijarweftopblwcueibbtrvygzausnqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbwggelxpohptlbcnofevhaxgafkgxhl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwsqimylllrijfqwxruusictfkeedqat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwbztrauekmnavaistoyptkuwvnvmqrk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idceouyqcavnetecjhplyglioxthnqgh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywrirsuidgrgonuowavzfmywkmupmnij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffpsypsvcmmvupgkfxmfvtvwynsoqygz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ccfcwxbfahkbkmocltkzbvjtyeltefmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfhhqawytqzzphwwtngolzelnpvjrojn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cutrsichcfxicpkriuylhsrpklmvuxvk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmfqbxxggptvqfeqbqnthtwvqqyfgoqk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwcjaiffyetjinpcqljiplfoihpqdwfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cjravxhdeaflcsxkewrhibixwyfcllte","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctwfruogbgtvbycyybrrqoegwxoopcvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"suilndzkpfjhaimnlomwmtzjxviatezc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grryqolqavtmhrnoxnsgaahmpkwvzgaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmzgpophkzwdiulloaykfujcwivzione","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yeushopmkchuqbecbfvxzqbdvqswupgz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdzkavfparmhlxgelcssjsnvfadqvpjy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yeipxrphrmjpqbtqorqbmhquxczvjeln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxpcvgqzwiqqazylxfajtlswntimpjma","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvuaxbczvvrdapvwjnrqbkbjnabrlqzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdyuywxrmhpsgqjavvnahyyajmrudxtr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gtunoyjaevybuangovmzbvunudcxcyno","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdubcegnzzjapwoqncesyevolnnqfqyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnwedrklbkfmbemqhjsosuoewvetxlyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgvqgvtgsrjafsgbfgojtjhtmdwbzqhd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awvikdnoafsrzagctqpgvcskbqkogsud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fsyohxdyqlldzwzuilfqrclzipdbcina","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"npmfxeafepmmgribkmchjidkjzuatdpt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixlxntlzgcaglamjvtcuaueupwgaznwx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwixsbatxxvlqohpxvpcuckzsexyizny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"psgtpiqlgnlnhgamrlpvkjzpppplocbm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bpmtqnthxanrgoudgvyfkcvulrxlyhvt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eoswwwouimgdvghtasdzqhopghxnjhed","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvgjhnrvmwhkfrlvqvwyeyslwnhmmndm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"clyphvaqkqlkueibnoifuhgfphwnhaxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bsfxatxetxqxzwwenmykmphljhccijth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kcnyqueswwmjutwgrnijkiosarbnmxiz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jtyozxqryjqqfacitnhbdkrwfdhtnlrx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikvwjscmisqgleumnniaqqupfssjsejw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grtaqrljizgolkwepmevqeumksvsavnd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqvpawihroucthbslfcmfmiqqnemskvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydxviwkcqnhvrvzofazaormaqlzxosqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfmcvkfwhlufjfucfdrijjatpiozyndl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ealrhkieuuprpngqsvugcpeymuzvtnfr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ljmblnvxqvjfpogvxkwfvyuoiyykerbt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"quezzqewyjkvutaulghxlxrhhkchakrq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecihpkzibkltvwpanafelqbtihaoxbqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzyiuawqpycktsreyxzikqxztkxujolv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcorjpzekfeenczhzedzqrzmuvikbpij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bcmmaxagrigktifyctmabqvuibujgewn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vharyedsmyzcmkmpszyolzlzheksmcaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzgkblemwefrgorjmvkxnoyrajdmutqe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igcnkoyxzqqvdnewxuiutifjitczodnj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672773,"databaseName":"models_schema","ddl":"CREATE TABLE `xlbwxatoglvtzyxuzszybrvskcdgicob` (\n `rhksazdkejqohgdodwvmktywriwtdcwl` int NOT NULL,\n `jcwskcmtbdonxsqhsvbqxpwuazyxvroy` int DEFAULT NULL,\n `cdfwddpzywiqtcbhbqecdjscvgftdgsa` int DEFAULT NULL,\n `wzeijkxhuldtbskwidovzlyrxptilqfu` int DEFAULT NULL,\n `dpxopsmjahlbnlnmqiujfcpsrwdctfth` int DEFAULT NULL,\n `ezzjkngjcajzcqtrkthtrirucmqughoq` int DEFAULT NULL,\n `aipaxzeyqbjspbuucschcybnpxsmixce` int DEFAULT NULL,\n `lewqqqglqyqjpgbzjdzhbshegbxgtqta` int DEFAULT NULL,\n `qbdatyqfecsnwmupmsimzzyluiwdktmm` int DEFAULT NULL,\n `rhwgftkswvjudnmxrmxlxtbyowmwgehm` int DEFAULT NULL,\n `cnagtesajabqxxplqqddewxcfmsplqqh` int DEFAULT NULL,\n `wjypcotvmtfvpzayxwpswwpttcgdfkvq` int DEFAULT NULL,\n `zacwepsbmsfbgfzancnzfvrseveyccyi` int DEFAULT NULL,\n `dylhfcnujqbrkwtinrmphbqripbhzbdz` int DEFAULT NULL,\n `qjdyzgwfazygammakorwfzyvjzulprjj` int DEFAULT NULL,\n `ikmzqikeyrtrwaupkomfyxetwfqnxlwo` int DEFAULT NULL,\n `crcvzyjqzpaaacihzldsvgwmrbvudtpq` int DEFAULT NULL,\n `ssxginhevvjufrcyfltzjzdibtizlzhs` int DEFAULT NULL,\n `sspxrqtugdcszfhnyqatkpibcioakvpq` int DEFAULT NULL,\n `xqktyvntkjyvkorjcktjwpjvbanamkuu` int DEFAULT NULL,\n `sfiumqigatmujkzrurfdizioxulrklyz` int DEFAULT NULL,\n `bbrupdbcyciqmtwmwhsxdfqrvvkmrqnb` int DEFAULT NULL,\n `itzrvqnehpzyuxhhflhrylcjsdwlduec` int DEFAULT NULL,\n `bwblsmcrfqueleicngziezeigbjowgwa` int DEFAULT NULL,\n `hsirbivqdpgaxudxpghqhmfhlhbadiko` int DEFAULT NULL,\n `rxqprstpnvgriovtxinwehnxlfjurrwx` int DEFAULT NULL,\n `bjarcxceopznvuryfntenmlyixhmeyzc` int DEFAULT NULL,\n `txrstlkwvizlgztexbilmffadcmyuvnk` int DEFAULT NULL,\n `vbuztpvtesqasdqkufbvjuvejxdxfedw` int DEFAULT NULL,\n `hogydfqmadxhyntotkolhcpuzwkpfydy` int DEFAULT NULL,\n `jkloiwneqwayemnazahtnbnuadzizbzb` int DEFAULT NULL,\n `kbptgdmyxxjgovduhtpwhloyuocuimwg` int DEFAULT NULL,\n `ghbwoyvsnbjmuoskpyfyscaocswowsxm` int DEFAULT NULL,\n `qdkwcagmuddygkvlqhpvpgexbhvckxav` int DEFAULT NULL,\n `vbtwfaqrbqksiofldhfgubmhfmuglfnd` int DEFAULT NULL,\n `itxbkiabadnvxivriennptdojamjczhh` int DEFAULT NULL,\n `myzpvnwhaolhclaxsfsyryifdqutqnnz` int DEFAULT NULL,\n `icefpqmogceyayxxpekrrwlxpqftwwgd` int DEFAULT NULL,\n `mcoxpebxvbxsnafcivmqruvksfgbnthk` int DEFAULT NULL,\n `ykgxzuywynmruvlvfqnypkoundwactjn` int DEFAULT NULL,\n `bntcykfaiztxxzgscibfovjqqapcfllq` int DEFAULT NULL,\n `nghxxpxgqyggmuwwiptqcblzxfmqbuqz` int DEFAULT NULL,\n `xcjjlmovoeitclqrlkiconblqehgwwzj` int DEFAULT NULL,\n `mnumhlfpwjragzxejyrxsmbqooxscqxq` int DEFAULT NULL,\n `dkbfqmeaagdomzncxnfmwernstbkcplo` int DEFAULT NULL,\n `ecocxxfpdjisuxjspzumfoufmhsmqlxt` int DEFAULT NULL,\n `etcdqsuivgxyicafdzqjyiqgycaumdal` int DEFAULT NULL,\n `zwcxrqnmxzevpqbawgjncqlhcneamfxq` int DEFAULT NULL,\n `pqzfftwwddfdfgthocuxipolezhkisqb` int DEFAULT NULL,\n `wlheegggzfnqrjetptjmhilbokpwdceq` int DEFAULT NULL,\n `qbnchuceprsyyzygxbeiilfzxyhkuwej` int DEFAULT NULL,\n `jtuxwkairmoakvwxvohzkeheyysatlks` int DEFAULT NULL,\n `ivitqsgjyedbnvcsltukkkpktebeuunv` int DEFAULT NULL,\n `pjzlbnbgbqiditxpdfrgdtupcqkadlfd` int DEFAULT NULL,\n `bmodkxkzagmpnqfroccdqtsgsthwfnea` int DEFAULT NULL,\n `unmnvhsucdxjvxjaefiefaqthvgvoczt` int DEFAULT NULL,\n `qfexybxvkovxjeartetsfxdkadknovne` int DEFAULT NULL,\n `qenrxvbrsgzkhhetyukxojlgnbndslkd` int DEFAULT NULL,\n `johcmpxtcjfcxbvbyocznbmdqtormyvi` int DEFAULT NULL,\n `cosrrbxmwvdjdaccawutdzipjpnebugn` int DEFAULT NULL,\n `ejcpotnowbnzycpxlemwyfnlpnaifywe` int DEFAULT NULL,\n `xvcnmyebsvsldfgmfioscduwywxcwlnx` int DEFAULT NULL,\n `iveqestoqjtcdhqjwawjibhnaytpyuum` int DEFAULT NULL,\n `vvqcfjrevvabqaeumbfxrmsopiwcxhfo` int DEFAULT NULL,\n `wgbvasmoqfluvwbhavcbrfzcolmlnuxy` int DEFAULT NULL,\n `mbhbquesajgwaubzwkxixxlftdrbyjcg` int DEFAULT NULL,\n `iljaoyhpoeylbjijpqzsbdwmglybicxv` int DEFAULT NULL,\n `txlhyqrcfystoaeyhtddhojsnegwwhqp` int DEFAULT NULL,\n `uqkjkweohwbwusxecuddmyqumptponkh` int DEFAULT NULL,\n `nkbsfrvblwxwcyqbfbfdkwckgxwnvwzq` int DEFAULT NULL,\n `fnfycgweiwrzfgyjugpbpbrtpbeukpjm` int DEFAULT NULL,\n `veyoxcjaoswwealnqefdwdoclvipmyjo` int DEFAULT NULL,\n `ktwchvyqarxttmsjveliycaaltdiirxo` int DEFAULT NULL,\n `yuesvowovdlipdqpwikoqyzwwotsefay` int DEFAULT NULL,\n `bkppdhbckitpkbimcdopczapazgfsurf` int DEFAULT NULL,\n `enpufnkacrmwesdkfdjdhcdyyuezyqob` int DEFAULT NULL,\n `dsizysovqipnhwcwmlwsdebcieqgfiax` int DEFAULT NULL,\n `mbfzucdmvsxgfiybioudjocqxolyaxpa` int DEFAULT NULL,\n `puycezcprdyyunuabdfuyzftenwyyvnl` int DEFAULT NULL,\n `rbuyyiufkzxqpvxhyqkjilqyefkbqsbq` int DEFAULT NULL,\n `kshkrbkghwlhprmoledgpbkbbnoklexi` int DEFAULT NULL,\n `hsqikgzvshwjcknaqpnayziplbwhxten` int DEFAULT NULL,\n `hfcfmpohswuhllrprpomlxxsyznbcklf` int DEFAULT NULL,\n `ytzjcnrysdnptnkgppthxlxmqtegxbmt` int DEFAULT NULL,\n `mvtdvttiygpjtpizwmwbwyccizbvqnol` int DEFAULT NULL,\n `eegwmtudhwokzmrbvhcuwvgornahetud` int DEFAULT NULL,\n `npsvxcrcwhdpzawtyhdungkveekxnvrk` int DEFAULT NULL,\n `cqezhuoxdaxcijthdareoesxbktabaam` int DEFAULT NULL,\n `iycqkyzuoxkszomkmpuskmoxkssvwmua` int DEFAULT NULL,\n `oqufxgbyqxgyoxzoatissayqyhglbnmy` int DEFAULT NULL,\n `dovnthkdnhsrjnbfxddyxaeugprwadcp` int DEFAULT NULL,\n `txzchlpgmzfyvaatkniorffhvougszal` int DEFAULT NULL,\n `othiwoqycrcearhzctdiixycoxzpawyw` int DEFAULT NULL,\n `vypqozuwzrhjtngxafjbzthstkfliemv` int DEFAULT NULL,\n `ncfgciymkpzsnczzuesbztowhcsvhxbt` int DEFAULT NULL,\n `uchrcohzyoazsjrkofneljvydiyjlsrq` int DEFAULT NULL,\n `eiuefkqwjbnlsjjkyppgjwpnevnicyrq` int DEFAULT NULL,\n `jzmqesyihiwzmslthdwltewuvfybvjfb` int DEFAULT NULL,\n `offkdeqeebpbaqacpndkfcmkjmyukcam` int DEFAULT NULL,\n `tivfqjnzvqdeeomfcxrtyysnabyfphmo` int DEFAULT NULL,\n PRIMARY KEY (`rhksazdkejqohgdodwvmktywriwtdcwl`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"xlbwxatoglvtzyxuzszybrvskcdgicob\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["rhksazdkejqohgdodwvmktywriwtdcwl"],"columns":[{"name":"rhksazdkejqohgdodwvmktywriwtdcwl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"jcwskcmtbdonxsqhsvbqxpwuazyxvroy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cdfwddpzywiqtcbhbqecdjscvgftdgsa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzeijkxhuldtbskwidovzlyrxptilqfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpxopsmjahlbnlnmqiujfcpsrwdctfth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ezzjkngjcajzcqtrkthtrirucmqughoq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aipaxzeyqbjspbuucschcybnpxsmixce","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lewqqqglqyqjpgbzjdzhbshegbxgtqta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qbdatyqfecsnwmupmsimzzyluiwdktmm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhwgftkswvjudnmxrmxlxtbyowmwgehm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnagtesajabqxxplqqddewxcfmsplqqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjypcotvmtfvpzayxwpswwpttcgdfkvq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zacwepsbmsfbgfzancnzfvrseveyccyi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dylhfcnujqbrkwtinrmphbqripbhzbdz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjdyzgwfazygammakorwfzyvjzulprjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikmzqikeyrtrwaupkomfyxetwfqnxlwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"crcvzyjqzpaaacihzldsvgwmrbvudtpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ssxginhevvjufrcyfltzjzdibtizlzhs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sspxrqtugdcszfhnyqatkpibcioakvpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqktyvntkjyvkorjcktjwpjvbanamkuu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfiumqigatmujkzrurfdizioxulrklyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbrupdbcyciqmtwmwhsxdfqrvvkmrqnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itzrvqnehpzyuxhhflhrylcjsdwlduec","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bwblsmcrfqueleicngziezeigbjowgwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hsirbivqdpgaxudxpghqhmfhlhbadiko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxqprstpnvgriovtxinwehnxlfjurrwx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjarcxceopznvuryfntenmlyixhmeyzc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txrstlkwvizlgztexbilmffadcmyuvnk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbuztpvtesqasdqkufbvjuvejxdxfedw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hogydfqmadxhyntotkolhcpuzwkpfydy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jkloiwneqwayemnazahtnbnuadzizbzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kbptgdmyxxjgovduhtpwhloyuocuimwg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghbwoyvsnbjmuoskpyfyscaocswowsxm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdkwcagmuddygkvlqhpvpgexbhvckxav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbtwfaqrbqksiofldhfgubmhfmuglfnd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itxbkiabadnvxivriennptdojamjczhh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"myzpvnwhaolhclaxsfsyryifdqutqnnz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icefpqmogceyayxxpekrrwlxpqftwwgd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcoxpebxvbxsnafcivmqruvksfgbnthk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykgxzuywynmruvlvfqnypkoundwactjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bntcykfaiztxxzgscibfovjqqapcfllq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nghxxpxgqyggmuwwiptqcblzxfmqbuqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xcjjlmovoeitclqrlkiconblqehgwwzj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnumhlfpwjragzxejyrxsmbqooxscqxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkbfqmeaagdomzncxnfmwernstbkcplo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecocxxfpdjisuxjspzumfoufmhsmqlxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"etcdqsuivgxyicafdzqjyiqgycaumdal","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zwcxrqnmxzevpqbawgjncqlhcneamfxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqzfftwwddfdfgthocuxipolezhkisqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wlheegggzfnqrjetptjmhilbokpwdceq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qbnchuceprsyyzygxbeiilfzxyhkuwej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jtuxwkairmoakvwxvohzkeheyysatlks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivitqsgjyedbnvcsltukkkpktebeuunv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjzlbnbgbqiditxpdfrgdtupcqkadlfd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bmodkxkzagmpnqfroccdqtsgsthwfnea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unmnvhsucdxjvxjaefiefaqthvgvoczt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfexybxvkovxjeartetsfxdkadknovne","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qenrxvbrsgzkhhetyukxojlgnbndslkd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"johcmpxtcjfcxbvbyocznbmdqtormyvi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cosrrbxmwvdjdaccawutdzipjpnebugn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejcpotnowbnzycpxlemwyfnlpnaifywe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvcnmyebsvsldfgmfioscduwywxcwlnx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iveqestoqjtcdhqjwawjibhnaytpyuum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vvqcfjrevvabqaeumbfxrmsopiwcxhfo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wgbvasmoqfluvwbhavcbrfzcolmlnuxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbhbquesajgwaubzwkxixxlftdrbyjcg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iljaoyhpoeylbjijpqzsbdwmglybicxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txlhyqrcfystoaeyhtddhojsnegwwhqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqkjkweohwbwusxecuddmyqumptponkh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nkbsfrvblwxwcyqbfbfdkwckgxwnvwzq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnfycgweiwrzfgyjugpbpbrtpbeukpjm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"veyoxcjaoswwealnqefdwdoclvipmyjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ktwchvyqarxttmsjveliycaaltdiirxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yuesvowovdlipdqpwikoqyzwwotsefay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkppdhbckitpkbimcdopczapazgfsurf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"enpufnkacrmwesdkfdjdhcdyyuezyqob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dsizysovqipnhwcwmlwsdebcieqgfiax","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbfzucdmvsxgfiybioudjocqxolyaxpa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"puycezcprdyyunuabdfuyzftenwyyvnl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbuyyiufkzxqpvxhyqkjilqyefkbqsbq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kshkrbkghwlhprmoledgpbkbbnoklexi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hsqikgzvshwjcknaqpnayziplbwhxten","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfcfmpohswuhllrprpomlxxsyznbcklf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytzjcnrysdnptnkgppthxlxmqtegxbmt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvtdvttiygpjtpizwmwbwyccizbvqnol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eegwmtudhwokzmrbvhcuwvgornahetud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"npsvxcrcwhdpzawtyhdungkveekxnvrk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqezhuoxdaxcijthdareoesxbktabaam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iycqkyzuoxkszomkmpuskmoxkssvwmua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqufxgbyqxgyoxzoatissayqyhglbnmy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dovnthkdnhsrjnbfxddyxaeugprwadcp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txzchlpgmzfyvaatkniorffhvougszal","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"othiwoqycrcearhzctdiixycoxzpawyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vypqozuwzrhjtngxafjbzthstkfliemv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ncfgciymkpzsnczzuesbztowhcsvhxbt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uchrcohzyoazsjrkofneljvydiyjlsrq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eiuefkqwjbnlsjjkyppgjwpnevnicyrq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jzmqesyihiwzmslthdwltewuvfybvjfb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"offkdeqeebpbaqacpndkfcmkjmyukcam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tivfqjnzvqdeeomfcxrtyysnabyfphmo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672806,"databaseName":"models_schema","ddl":"CREATE TABLE `xmcvrffbufzmyibhrgpsdxwjjojyvegg` (\n `obakmlsnluiljdrxpabhhltidgvjvpub` int NOT NULL,\n `apmyauzkjurvljxaoklrccjvwjewlvma` int DEFAULT NULL,\n `xjiitydwososqszxtdelpysqrlfzflez` int DEFAULT NULL,\n `cgtiyozdreuhvxxvbbeizmruwdwuyrkb` int DEFAULT NULL,\n `wfpyncjbsxizvueusvneqeqdocwmhylu` int DEFAULT NULL,\n `jypbjcrxyvegvsnypokdnoxljsdnywnf` int DEFAULT NULL,\n `arucmhzujdfhhclqsbnhwipoiuoxcura` int DEFAULT NULL,\n `uaouydujspsbihtsamfvkwxjeengscnf` int DEFAULT NULL,\n `luuuyoldtjrtsgkzctevffuzszseleli` int DEFAULT NULL,\n `dxaznbpowvldvpgidxksdjauglykpygo` int DEFAULT NULL,\n `mnlvsmjzrkcigvdtwpyysedzrpjbizai` int DEFAULT NULL,\n `deilbgteanoknuxfvcbhaivinkfaymyc` int DEFAULT NULL,\n `cauivdhbmhockmbvziqcwdaqnnvkqose` int DEFAULT NULL,\n `ylzllfqesdkdvfeiqricayfahidkzppd` int DEFAULT NULL,\n `crjacpsxkbrsjiqkdkkurwsixnvhpxiv` int DEFAULT NULL,\n `gcswhoabodjewqttcsyqbcpfmecojcoq` int DEFAULT NULL,\n `obxqgxdqoxqeqdbhznfamlvwcblwnmlt` int DEFAULT NULL,\n `baudfiiyhjoncqdgvdqngmsqaizowaae` int DEFAULT NULL,\n `jnlcflsidsskbtalkzidyuzztylyghkg` int DEFAULT NULL,\n `hdmivwiuefxizbhrlagmziscpxrrwdek` int DEFAULT NULL,\n `bayjanxisforsdwiuqhiadkikwdezske` int DEFAULT NULL,\n `shdowsvuyqcsmftwjramexxdrxidvdhk` int DEFAULT NULL,\n `ecwitcvppwqgsvdxpgxivtunemfebxov` int DEFAULT NULL,\n `gzakjpiceyqwjrcudyhtyiuzeenjsiev` int DEFAULT NULL,\n `eaumpuqrubzpxovjcvsfnjdlkxjwwxqa` int DEFAULT NULL,\n `lyfveyzgblaovrcyfyhpivqgaemgwgzz` int DEFAULT NULL,\n `topckeaxpznibsaqhulipaqxjeihngva` int DEFAULT NULL,\n `ynyudpgfilquaqputtnibplnstvenbse` int DEFAULT NULL,\n `zulschiabjvdpzqsijygsknmnyhyfnmr` int DEFAULT NULL,\n `ebyivjyfxgdytcltrkikludknugqkbrx` int DEFAULT NULL,\n `rbsokegedppramwnfgjldbelofpzuctt` int DEFAULT NULL,\n `abbotjmxfqzzhdziwcaquargregujnyu` int DEFAULT NULL,\n `dkyxjbsdaqdasihqytcncfpaofcwguky` int DEFAULT NULL,\n `ktvywfolaanzgmydggatcupevnwdjgrj` int DEFAULT NULL,\n `uovushekhplvvxaeyrmutmznfdjvdbnp` int DEFAULT NULL,\n `pbgsmnurlpynoyoizjuynmblncyksybk` int DEFAULT NULL,\n `nikajceubshwddtwhwdmfwuerzayclrf` int DEFAULT NULL,\n `fxyyzoizgpfrmeanblkhyamqirwrkcct` int DEFAULT NULL,\n `qyfsxvrvdyxqusuxnfyuhvzhdannhfjg` int DEFAULT NULL,\n `ozanehzdxrdikvumgmcqdodvbcidkbpu` int DEFAULT NULL,\n `rehvwscvjxzmwswmbrpvesgbvfzuvjhr` int DEFAULT NULL,\n `jyrxxrjuvtnzhgasjjivgrrnepsqdfru` int DEFAULT NULL,\n `efihzyfhackjxfsevjeidcvufrlpheoi` int DEFAULT NULL,\n `zpujkbpvwsblrqovoybtzluehadeuadh` int DEFAULT NULL,\n `sklfervbmifcdfbsmdhqgjwigxmyxcnw` int DEFAULT NULL,\n `vjggietzjkcnejalyhlkawbbnhkzlsze` int DEFAULT NULL,\n `tmainapuiraqadnfubldlcuefvsoceqw` int DEFAULT NULL,\n `kzafcsjywtxykuapftiexywstnehgyxg` int DEFAULT NULL,\n `adbnbhppsfhxqfuxzzrfjepmrfgqmtbw` int DEFAULT NULL,\n `lgddbffdkdwnypzzktitkgyxagymrydb` int DEFAULT NULL,\n `zflralknyosqsajhkgwvbspvnkrxzgpt` int DEFAULT NULL,\n `wxtspwgvhyyuxbbssrisnslywvenqjqe` int DEFAULT NULL,\n `bpivjovhwagngueydibcjrjwbxsomwrb` int DEFAULT NULL,\n `xddynvdxrfljatxeldwntculwakyrlfs` int DEFAULT NULL,\n `imvimdypmvetcjccuowbgxdpulomzcjb` int DEFAULT NULL,\n `jdrkhaxlhamgxwyclyzdqfirdwhrgdhi` int DEFAULT NULL,\n `zoqgghdxsvpmwlclyfmwfnhaydumzbfe` int DEFAULT NULL,\n `hzskugxsqsykucnsskxqvytsydeosvvg` int DEFAULT NULL,\n `jmyifrephnouczoyaeuprqvjyhvskkyx` int DEFAULT NULL,\n `rfawylshlqdcxdtotvoaqfuzvevipexx` int DEFAULT NULL,\n `ngyaycsgyvblwizlerbzyyrwtjhhhvxk` int DEFAULT NULL,\n `okolqdockjqjvblcmguterhhtmkkngzl` int DEFAULT NULL,\n `coefmkfeznitmhdupqgwptufgkjzxkaq` int DEFAULT NULL,\n `pchcgsoviqnacggnsromictyllghchzy` int DEFAULT NULL,\n `fjwsljhqdevcusssifydgvtqkzjkahwx` int DEFAULT NULL,\n `dcqevydlxgopnnqlmjdkmhprzxtmwdim` int DEFAULT NULL,\n `mqdeguyaavhmficcsuhgysdjlaacaafn` int DEFAULT NULL,\n `tkbsleracexybtyiiwkxojfbdtixcjrx` int DEFAULT NULL,\n `kndeclwlgquhjpovevsrhnoxcqhekuxn` int DEFAULT NULL,\n `gqtftcdgcfudhlkiwwnxblwdsiwagaka` int DEFAULT NULL,\n `mwkjxtchjvtdqexjgfbknjaibylsisjd` int DEFAULT NULL,\n `vexwqdjuznihnfjvgflajsinyouxsdgk` int DEFAULT NULL,\n `euvcddphoyacnwebsfwcmznkgmhmfqta` int DEFAULT NULL,\n `froghlodlrfhnwxlvpgvsgmcswctytqc` int DEFAULT NULL,\n `rcjlqjbmfpauhsvxnoltvfeinjdyahyw` int DEFAULT NULL,\n `aspfbgkcituscjqrldvyycywawmcwoud` int DEFAULT NULL,\n `buerovrhysifetybagkfhdvidyjqvonc` int DEFAULT NULL,\n `zqesgisanotuzjvoybutrhbgbdxfbzrj` int DEFAULT NULL,\n `hgihazitujdakhmdzdwonyqmqwyjpxgg` int DEFAULT NULL,\n `unxtlfudovflrugmtxvfgvrvgxbbjtur` int DEFAULT NULL,\n `pvocdqonyentexaklxsmlmpfdxkjsige` int DEFAULT NULL,\n `jumrmzyudnzqpivqkavswnvxfqdixcoh` int DEFAULT NULL,\n `fohednuuksmtwamdjgtylvdwsurtdsby` int DEFAULT NULL,\n `tbgfhdtdmrlrccrtwqhhlkkludtbdnac` int DEFAULT NULL,\n `esejmnsmpopclgsvfbamkkbsqptcvhyg` int DEFAULT NULL,\n `higvgggikntwnkmbhlgapkhbisbxvebn` int DEFAULT NULL,\n `ingissunhynxhgctcqvitijdjvmriirv` int DEFAULT NULL,\n `iszpttofmlgzaoaffnufejsmhvzmgpfe` int DEFAULT NULL,\n `uphmwzpbfsqvhaucweajbyugcrcjalwm` int DEFAULT NULL,\n `ddyqoffbaadhoslrvtdvnaarmcosxqkh` int DEFAULT NULL,\n `uxfgoroafsfbyoashiwphsxfutosmyhl` int DEFAULT NULL,\n `xzucgbxqgtzvemegesolmnrlfwowoaqv` int DEFAULT NULL,\n `inudmfjuehechxmsybbcwkiqklpkaumy` int DEFAULT NULL,\n `euoycydotikqwxoyuuvyvhmsgpehsyme` int DEFAULT NULL,\n `quxqedswkplykkyzzwcrfacydczuwqpd` int DEFAULT NULL,\n `oueiyfgbswsjxobjbnfjmoyzfoydwsio` int DEFAULT NULL,\n `yhynwsnbpflgnmhotgfurgkrkhatiprg` int DEFAULT NULL,\n `tsrwmarhuqpxoloidvhpigycydsxxqmr` int DEFAULT NULL,\n `nohzzphjaqzugkxeevwiawohrpqjkxsz` int DEFAULT NULL,\n `vdpngqdzlbcgwnyznkezfglnuqfupoip` int DEFAULT NULL,\n PRIMARY KEY (`obakmlsnluiljdrxpabhhltidgvjvpub`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"xmcvrffbufzmyibhrgpsdxwjjojyvegg\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["obakmlsnluiljdrxpabhhltidgvjvpub"],"columns":[{"name":"obakmlsnluiljdrxpabhhltidgvjvpub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"apmyauzkjurvljxaoklrccjvwjewlvma","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjiitydwososqszxtdelpysqrlfzflez","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgtiyozdreuhvxxvbbeizmruwdwuyrkb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfpyncjbsxizvueusvneqeqdocwmhylu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jypbjcrxyvegvsnypokdnoxljsdnywnf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"arucmhzujdfhhclqsbnhwipoiuoxcura","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uaouydujspsbihtsamfvkwxjeengscnf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"luuuyoldtjrtsgkzctevffuzszseleli","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxaznbpowvldvpgidxksdjauglykpygo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnlvsmjzrkcigvdtwpyysedzrpjbizai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"deilbgteanoknuxfvcbhaivinkfaymyc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cauivdhbmhockmbvziqcwdaqnnvkqose","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ylzllfqesdkdvfeiqricayfahidkzppd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"crjacpsxkbrsjiqkdkkurwsixnvhpxiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gcswhoabodjewqttcsyqbcpfmecojcoq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obxqgxdqoxqeqdbhznfamlvwcblwnmlt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"baudfiiyhjoncqdgvdqngmsqaizowaae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jnlcflsidsskbtalkzidyuzztylyghkg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdmivwiuefxizbhrlagmziscpxrrwdek","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bayjanxisforsdwiuqhiadkikwdezske","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shdowsvuyqcsmftwjramexxdrxidvdhk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecwitcvppwqgsvdxpgxivtunemfebxov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzakjpiceyqwjrcudyhtyiuzeenjsiev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eaumpuqrubzpxovjcvsfnjdlkxjwwxqa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lyfveyzgblaovrcyfyhpivqgaemgwgzz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"topckeaxpznibsaqhulipaqxjeihngva","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ynyudpgfilquaqputtnibplnstvenbse","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zulschiabjvdpzqsijygsknmnyhyfnmr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebyivjyfxgdytcltrkikludknugqkbrx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rbsokegedppramwnfgjldbelofpzuctt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"abbotjmxfqzzhdziwcaquargregujnyu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkyxjbsdaqdasihqytcncfpaofcwguky","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ktvywfolaanzgmydggatcupevnwdjgrj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uovushekhplvvxaeyrmutmznfdjvdbnp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbgsmnurlpynoyoizjuynmblncyksybk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nikajceubshwddtwhwdmfwuerzayclrf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxyyzoizgpfrmeanblkhyamqirwrkcct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qyfsxvrvdyxqusuxnfyuhvzhdannhfjg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ozanehzdxrdikvumgmcqdodvbcidkbpu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rehvwscvjxzmwswmbrpvesgbvfzuvjhr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jyrxxrjuvtnzhgasjjivgrrnepsqdfru","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"efihzyfhackjxfsevjeidcvufrlpheoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zpujkbpvwsblrqovoybtzluehadeuadh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sklfervbmifcdfbsmdhqgjwigxmyxcnw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjggietzjkcnejalyhlkawbbnhkzlsze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmainapuiraqadnfubldlcuefvsoceqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzafcsjywtxykuapftiexywstnehgyxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"adbnbhppsfhxqfuxzzrfjepmrfgqmtbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgddbffdkdwnypzzktitkgyxagymrydb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zflralknyosqsajhkgwvbspvnkrxzgpt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxtspwgvhyyuxbbssrisnslywvenqjqe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bpivjovhwagngueydibcjrjwbxsomwrb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xddynvdxrfljatxeldwntculwakyrlfs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"imvimdypmvetcjccuowbgxdpulomzcjb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdrkhaxlhamgxwyclyzdqfirdwhrgdhi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zoqgghdxsvpmwlclyfmwfnhaydumzbfe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hzskugxsqsykucnsskxqvytsydeosvvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmyifrephnouczoyaeuprqvjyhvskkyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfawylshlqdcxdtotvoaqfuzvevipexx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ngyaycsgyvblwizlerbzyyrwtjhhhvxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"okolqdockjqjvblcmguterhhtmkkngzl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"coefmkfeznitmhdupqgwptufgkjzxkaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pchcgsoviqnacggnsromictyllghchzy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjwsljhqdevcusssifydgvtqkzjkahwx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcqevydlxgopnnqlmjdkmhprzxtmwdim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqdeguyaavhmficcsuhgysdjlaacaafn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkbsleracexybtyiiwkxojfbdtixcjrx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kndeclwlgquhjpovevsrhnoxcqhekuxn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqtftcdgcfudhlkiwwnxblwdsiwagaka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mwkjxtchjvtdqexjgfbknjaibylsisjd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vexwqdjuznihnfjvgflajsinyouxsdgk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"euvcddphoyacnwebsfwcmznkgmhmfqta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"froghlodlrfhnwxlvpgvsgmcswctytqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcjlqjbmfpauhsvxnoltvfeinjdyahyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aspfbgkcituscjqrldvyycywawmcwoud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"buerovrhysifetybagkfhdvidyjqvonc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqesgisanotuzjvoybutrhbgbdxfbzrj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hgihazitujdakhmdzdwonyqmqwyjpxgg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unxtlfudovflrugmtxvfgvrvgxbbjtur","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pvocdqonyentexaklxsmlmpfdxkjsige","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jumrmzyudnzqpivqkavswnvxfqdixcoh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fohednuuksmtwamdjgtylvdwsurtdsby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbgfhdtdmrlrccrtwqhhlkkludtbdnac","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"esejmnsmpopclgsvfbamkkbsqptcvhyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"higvgggikntwnkmbhlgapkhbisbxvebn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ingissunhynxhgctcqvitijdjvmriirv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iszpttofmlgzaoaffnufejsmhvzmgpfe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uphmwzpbfsqvhaucweajbyugcrcjalwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ddyqoffbaadhoslrvtdvnaarmcosxqkh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxfgoroafsfbyoashiwphsxfutosmyhl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xzucgbxqgtzvemegesolmnrlfwowoaqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"inudmfjuehechxmsybbcwkiqklpkaumy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"euoycydotikqwxoyuuvyvhmsgpehsyme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"quxqedswkplykkyzzwcrfacydczuwqpd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oueiyfgbswsjxobjbnfjmoyzfoydwsio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhynwsnbpflgnmhotgfurgkrkhatiprg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tsrwmarhuqpxoloidvhpigycydsxxqmr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nohzzphjaqzugkxeevwiawohrpqjkxsz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdpngqdzlbcgwnyznkezfglnuqfupoip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672837,"databaseName":"models_schema","ddl":"CREATE TABLE `xrghycskudhhtjoegkkgwoksolissqht` (\n `zydbyjayktfvhoeyqdbnxbnrbizoaxyq` int NOT NULL,\n `vrnrrkoixzbvhthfjiuotzxmwkjecise` int DEFAULT NULL,\n `pqtphrpwyafifghzedbpkyemizrnzrai` int DEFAULT NULL,\n `hxoiunrpzmubwjzneeafnqsaderhvopv` int DEFAULT NULL,\n `abqwyzszosgwqnitgpeefutefparxzlb` int DEFAULT NULL,\n `kyryvnubuvafainohwutnvqpvjicrnmg` int DEFAULT NULL,\n `oirbivlmhaklxmrgyfneemslnlstujtu` int DEFAULT NULL,\n `kvdppaimmcvsntdhuqsytivuqkqaxcvv` int DEFAULT NULL,\n `xhmhczbqjmnjncbqqlgnxipumqytnnlf` int DEFAULT NULL,\n `jayeooqtwmvawcvldifheqawihaazdgj` int DEFAULT NULL,\n `sgwzuxpinzrwipkybaxbwaaxindaxzbt` int DEFAULT NULL,\n `ihnnzsahkqxbayhtutyaxftxorbnuome` int DEFAULT NULL,\n `axftfsjhwezuxdveslngslnsuhubaqrf` int DEFAULT NULL,\n `essifetzhlkxryhvuftpzlulfzplzfzf` int DEFAULT NULL,\n `ejtivnzvmncznrwbgvnmvqjdbhasyrlw` int DEFAULT NULL,\n `ryednrwuqmcgktxozxobkeplvmvhlhsi` int DEFAULT NULL,\n `ofnryclnhcbsmffoauqyjjmyfwsdffgc` int DEFAULT NULL,\n `hmxkbxadiobmrnfbikcuabmxrunhstqs` int DEFAULT NULL,\n `nvnozcqsasbubuwtqygkexaoxkfzthjj` int DEFAULT NULL,\n `ikaaxboypwqrtpqghzqhuczjmizztibv` int DEFAULT NULL,\n `gdchaezemlbcnyeqjcfnthwuadjrsqgw` int DEFAULT NULL,\n `famqrnbhesaalenvdliesbpexbqtwhxv` int DEFAULT NULL,\n `jjvnenucsmfvkmmlxhphjgnqymuvlbqj` int DEFAULT NULL,\n `msudouvferyaiqzhgddhnubnjsgtuaqo` int DEFAULT NULL,\n `sqmitdslyqqxgmlgtdufwfeztmqnqosf` int DEFAULT NULL,\n `ihoslklwzbfnkwktimavsusmaybxuati` int DEFAULT NULL,\n `udwoduiyakcqxcdxmrtmbsgkoakeuufd` int DEFAULT NULL,\n `jppgjhgpvbnlnlsdugododausocvdezs` int DEFAULT NULL,\n `sosojgvbakalalhlmanpujasazowcbos` int DEFAULT NULL,\n `sfdaoxobqabuhcecngwrffdvhvbtmoue` int DEFAULT NULL,\n `cicsitymgyarrbbhzmgqdmqtxlztyhce` int DEFAULT NULL,\n `xixogkrlflypqtmbxktkavhmogwihdvt` int DEFAULT NULL,\n `ejrulsadnslvqstxwlranbmonewvvdzv` int DEFAULT NULL,\n `wzfvrrbaponovixgerprucpzyojbmxlj` int DEFAULT NULL,\n `rlyhmzozbezcgpzfeopyrwdarhorgond` int DEFAULT NULL,\n `jdrbnzxceqfmmzhckjqylxggikltweqv` int DEFAULT NULL,\n `qjdexgbsqnuulthbtabmeraalbsyccev` int DEFAULT NULL,\n `pzsbbqgmjmujummhfbzrpsqnovoqzsgk` int DEFAULT NULL,\n `bkpqcoqwxcgyvjkiglzqwwogcectvkuu` int DEFAULT NULL,\n `dtmkbjkhtdmlrpkxyqqbdrovtqtogjfb` int DEFAULT NULL,\n `znovwekwrqspzcvmknzfhegsphbfopwt` int DEFAULT NULL,\n `elhxjldfodnebvtpfakpzxbowsrxefqs` int DEFAULT NULL,\n `cnolsfxqhjbplgngrvcncfamhqeexrez` int DEFAULT NULL,\n `gxsvayjbdcgzbjnlgelzqvygksxjpeix` int DEFAULT NULL,\n `uhtgmffhqqqznwemzavarelzugnhymlv` int DEFAULT NULL,\n `ejtavwxcsaobiotatapjdcxvcivxccqw` int DEFAULT NULL,\n `tlwzultwskhojwketysbrotvalsjvnjs` int DEFAULT NULL,\n `ifhtpggkjssqvetahzwyoorsaiivkvzp` int DEFAULT NULL,\n `wtscphjegtavlofdbmziodzypunbzudb` int DEFAULT NULL,\n `dlmzthiguszehcnvnofolkcjlxsupqhx` int DEFAULT NULL,\n `lelpxdivmulolncjnbqexufxggdtmpdu` int DEFAULT NULL,\n `pqcosvdkttpnmoojqymaxmketfsimsqq` int DEFAULT NULL,\n `cnlzjbbslmqwtxtiuehbbwruoigatdch` int DEFAULT NULL,\n `mqloadlxrumcfompzvvnwbbxtccxmerr` int DEFAULT NULL,\n `gjvwyhqklsyxotmxtjwfjtvlepzavlsk` int DEFAULT NULL,\n `tdamdcpsdkuhrzfpwhlkqwdimsseqein` int DEFAULT NULL,\n `eirlvpsiyavzpynogpaarlbgjyewbdkm` int DEFAULT NULL,\n `nfpjdlivlhydfggfwthncxcqocxmjqcu` int DEFAULT NULL,\n `oxmwdneebxxfngfowtrqzmomzsbkqclr` int DEFAULT NULL,\n `yroyctteqmsssihykkcesnixqevynlps` int DEFAULT NULL,\n `kjbsfutbxvqilzwpujexxupdyjoozper` int DEFAULT NULL,\n `mhnvakirgdhkkmapjpotglzhojopbcdw` int DEFAULT NULL,\n `hxlaitsesjfdkdeqqjiqmtufvppfxcnz` int DEFAULT NULL,\n `ujtfqncqaykpubyhmludeeqisybvegmc` int DEFAULT NULL,\n `upsfimluhuccqtuorczonsetreljawfo` int DEFAULT NULL,\n `wikhrbakhnaykprtzzndgrseocrhtvnt` int DEFAULT NULL,\n `zwhyddrqlcooucciolubuwekyscwiozx` int DEFAULT NULL,\n `hanvytmbwktujquxffnkkuzgxfiuhagq` int DEFAULT NULL,\n `bsincmguimodonsibwptwzyakblyccqz` int DEFAULT NULL,\n `ylcpyhpggajawdcwroomskqjvmywrwwv` int DEFAULT NULL,\n `wouleocgmuajclangmxhdkvvmsxicivz` int DEFAULT NULL,\n `rjvisasumywnjvanngvdafehzhddxwja` int DEFAULT NULL,\n `ijjszodknbdvovmfrfjborgldkdgpnlo` int DEFAULT NULL,\n `agxwimitbwbbuuhosoxtldsfticepmzg` int DEFAULT NULL,\n `bvmynflsqvmqkwdbvdzgjhfgwahetknk` int DEFAULT NULL,\n `jlnkbfchavpkwdiiubouemshpwsdzcyh` int DEFAULT NULL,\n `zbetiqsrqaqqsmvkhpjkshavlzbtlswk` int DEFAULT NULL,\n `yapmtjfoetxdglbpmdhkmikssipcusre` int DEFAULT NULL,\n `esgczftmnqmtiqlsqssnrieejeejvhcg` int DEFAULT NULL,\n `xjupzcwrxdkcuwdbvqusbzefozfszhte` int DEFAULT NULL,\n `tkjhnuwcxyvsyrubwhvdtyspsssolycp` int DEFAULT NULL,\n `xklymzdcfujyvtomrgctxyhfezuldtdn` int DEFAULT NULL,\n `weodvwhlmhkorujwgmxaoaduiucskzvh` int DEFAULT NULL,\n `ywzyifvbgctmbfrqrwxbzpsfnalyzipx` int DEFAULT NULL,\n `mddjikmoobosfjqddupsdtdwtsjbohlr` int DEFAULT NULL,\n `uaupuwgtifanghjllrapgkigrehepcds` int DEFAULT NULL,\n `nrsxwwkfjrblzoiymnfjkzhdyxipzvua` int DEFAULT NULL,\n `fukaheerrolywsintsvorcxwylixfgux` int DEFAULT NULL,\n `beizgzqgxrtzkshimhommsugmgzbhvmk` int DEFAULT NULL,\n `pxsqrxwrxbwknwvtyegdddciprrbzpyv` int DEFAULT NULL,\n `xjzjxhxlsfmrdhgvbtwdirkvkxmdzjkb` int DEFAULT NULL,\n `fjunrcmqnznqxasamzqsnryaaysrinvo` int DEFAULT NULL,\n `tvynhzizqcffaklojlaokdqtljwtxsvs` int DEFAULT NULL,\n `zsfduvdaibtvqllzmoghnqvsnetfnlbw` int DEFAULT NULL,\n `egtkdfcbkszuicymquaeavqkxuhjarde` int DEFAULT NULL,\n `dpcqtgihnujvcegitomwhdzgbacndhye` int DEFAULT NULL,\n `hlxzxxpqxvwvecklsxaolhedcqzyzofv` int DEFAULT NULL,\n `gbxrmzelbjbhkxswcaqffnsxojelfieg` int DEFAULT NULL,\n `ttbcfjxtlxgmlxrqhpcddkeecagnyuwh` int DEFAULT NULL,\n `ghtcenmqwxtkwuosprkqvuodjcbhodsc` int DEFAULT NULL,\n PRIMARY KEY (`zydbyjayktfvhoeyqdbnxbnrbizoaxyq`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"xrghycskudhhtjoegkkgwoksolissqht\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["zydbyjayktfvhoeyqdbnxbnrbizoaxyq"],"columns":[{"name":"zydbyjayktfvhoeyqdbnxbnrbizoaxyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"vrnrrkoixzbvhthfjiuotzxmwkjecise","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqtphrpwyafifghzedbpkyemizrnzrai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hxoiunrpzmubwjzneeafnqsaderhvopv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"abqwyzszosgwqnitgpeefutefparxzlb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kyryvnubuvafainohwutnvqpvjicrnmg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oirbivlmhaklxmrgyfneemslnlstujtu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvdppaimmcvsntdhuqsytivuqkqaxcvv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xhmhczbqjmnjncbqqlgnxipumqytnnlf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jayeooqtwmvawcvldifheqawihaazdgj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sgwzuxpinzrwipkybaxbwaaxindaxzbt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ihnnzsahkqxbayhtutyaxftxorbnuome","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axftfsjhwezuxdveslngslnsuhubaqrf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"essifetzhlkxryhvuftpzlulfzplzfzf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejtivnzvmncznrwbgvnmvqjdbhasyrlw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ryednrwuqmcgktxozxobkeplvmvhlhsi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofnryclnhcbsmffoauqyjjmyfwsdffgc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmxkbxadiobmrnfbikcuabmxrunhstqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvnozcqsasbubuwtqygkexaoxkfzthjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikaaxboypwqrtpqghzqhuczjmizztibv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdchaezemlbcnyeqjcfnthwuadjrsqgw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"famqrnbhesaalenvdliesbpexbqtwhxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jjvnenucsmfvkmmlxhphjgnqymuvlbqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"msudouvferyaiqzhgddhnubnjsgtuaqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sqmitdslyqqxgmlgtdufwfeztmqnqosf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ihoslklwzbfnkwktimavsusmaybxuati","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udwoduiyakcqxcdxmrtmbsgkoakeuufd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jppgjhgpvbnlnlsdugododausocvdezs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sosojgvbakalalhlmanpujasazowcbos","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfdaoxobqabuhcecngwrffdvhvbtmoue","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cicsitymgyarrbbhzmgqdmqtxlztyhce","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xixogkrlflypqtmbxktkavhmogwihdvt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejrulsadnslvqstxwlranbmonewvvdzv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzfvrrbaponovixgerprucpzyojbmxlj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlyhmzozbezcgpzfeopyrwdarhorgond","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdrbnzxceqfmmzhckjqylxggikltweqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjdexgbsqnuulthbtabmeraalbsyccev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pzsbbqgmjmujummhfbzrpsqnovoqzsgk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkpqcoqwxcgyvjkiglzqwwogcectvkuu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtmkbjkhtdmlrpkxyqqbdrovtqtogjfb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znovwekwrqspzcvmknzfhegsphbfopwt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"elhxjldfodnebvtpfakpzxbowsrxefqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnolsfxqhjbplgngrvcncfamhqeexrez","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gxsvayjbdcgzbjnlgelzqvygksxjpeix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhtgmffhqqqznwemzavarelzugnhymlv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ejtavwxcsaobiotatapjdcxvcivxccqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlwzultwskhojwketysbrotvalsjvnjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ifhtpggkjssqvetahzwyoorsaiivkvzp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wtscphjegtavlofdbmziodzypunbzudb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dlmzthiguszehcnvnofolkcjlxsupqhx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lelpxdivmulolncjnbqexufxggdtmpdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqcosvdkttpnmoojqymaxmketfsimsqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnlzjbbslmqwtxtiuehbbwruoigatdch","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mqloadlxrumcfompzvvnwbbxtccxmerr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjvwyhqklsyxotmxtjwfjtvlepzavlsk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tdamdcpsdkuhrzfpwhlkqwdimsseqein","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eirlvpsiyavzpynogpaarlbgjyewbdkm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfpjdlivlhydfggfwthncxcqocxmjqcu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oxmwdneebxxfngfowtrqzmomzsbkqclr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yroyctteqmsssihykkcesnixqevynlps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjbsfutbxvqilzwpujexxupdyjoozper","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhnvakirgdhkkmapjpotglzhojopbcdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hxlaitsesjfdkdeqqjiqmtufvppfxcnz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujtfqncqaykpubyhmludeeqisybvegmc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upsfimluhuccqtuorczonsetreljawfo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wikhrbakhnaykprtzzndgrseocrhtvnt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zwhyddrqlcooucciolubuwekyscwiozx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hanvytmbwktujquxffnkkuzgxfiuhagq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bsincmguimodonsibwptwzyakblyccqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ylcpyhpggajawdcwroomskqjvmywrwwv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wouleocgmuajclangmxhdkvvmsxicivz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rjvisasumywnjvanngvdafehzhddxwja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijjszodknbdvovmfrfjborgldkdgpnlo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"agxwimitbwbbuuhosoxtldsfticepmzg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvmynflsqvmqkwdbvdzgjhfgwahetknk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlnkbfchavpkwdiiubouemshpwsdzcyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbetiqsrqaqqsmvkhpjkshavlzbtlswk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yapmtjfoetxdglbpmdhkmikssipcusre","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"esgczftmnqmtiqlsqssnrieejeejvhcg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjupzcwrxdkcuwdbvqusbzefozfszhte","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkjhnuwcxyvsyrubwhvdtyspsssolycp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xklymzdcfujyvtomrgctxyhfezuldtdn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"weodvwhlmhkorujwgmxaoaduiucskzvh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywzyifvbgctmbfrqrwxbzpsfnalyzipx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mddjikmoobosfjqddupsdtdwtsjbohlr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uaupuwgtifanghjllrapgkigrehepcds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nrsxwwkfjrblzoiymnfjkzhdyxipzvua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fukaheerrolywsintsvorcxwylixfgux","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"beizgzqgxrtzkshimhommsugmgzbhvmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxsqrxwrxbwknwvtyegdddciprrbzpyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjzjxhxlsfmrdhgvbtwdirkvkxmdzjkb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjunrcmqnznqxasamzqsnryaaysrinvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvynhzizqcffaklojlaokdqtljwtxsvs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zsfduvdaibtvqllzmoghnqvsnetfnlbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"egtkdfcbkszuicymquaeavqkxuhjarde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dpcqtgihnujvcegitomwhdzgbacndhye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlxzxxpqxvwvecklsxaolhedcqzyzofv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gbxrmzelbjbhkxswcaqffnsxojelfieg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ttbcfjxtlxgmlxrqhpcddkeecagnyuwh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghtcenmqwxtkwuosprkqvuodjcbhodsc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672869,"databaseName":"models_schema","ddl":"CREATE TABLE `xyfheiynhztwfzchczoqkoazqlkqybll` (\n `twegkxbgcloxlzdjocsxagondlseofhd` int NOT NULL,\n `qlsfytsnaptrqppeetbolgpidfugiuyy` int DEFAULT NULL,\n `vaarwttbgxdgbghqqabzmstdcqygqidf` int DEFAULT NULL,\n `eemiczvkmiyxzbuknqoisbhdomkzrwku` int DEFAULT NULL,\n `cqtgjkzryrseindopavrxihrlvlmqctf` int DEFAULT NULL,\n `qcghahcpkmehoiqiqjhfpnnizhsdxdrz` int DEFAULT NULL,\n `cnjgiawcvnuxbhgfqoomkuyfehvowhfm` int DEFAULT NULL,\n `cmapcvjsjivtsdmrkbcagnnnmpozunzl` int DEFAULT NULL,\n `wtlbesjytrnzacaiphwrboqmwbicyaaw` int DEFAULT NULL,\n `ojtnvhipkuixucyhmmrgrukhsmtaoduj` int DEFAULT NULL,\n `dxqkawrybijqhpktctyqeinhykiqqbau` int DEFAULT NULL,\n `rkwbtmbogjrodvfcufvhpyikgdrmdqyf` int DEFAULT NULL,\n `togwtsxlpomcwyoquvttowvbveywdoau` int DEFAULT NULL,\n `uvtpqciuxygdgsfyumbekazzwcljpbzo` int DEFAULT NULL,\n `mztweaxjkbzphjanrloloijrwvutrtfp` int DEFAULT NULL,\n `aqcvvdqwivvfxyzooblwugqyxfekbxnm` int DEFAULT NULL,\n `nfjcmhjvxeykfxkjbzcvaoduqamcmjna` int DEFAULT NULL,\n `llljtqzrdendfvrfbrihvhnimihyrime` int DEFAULT NULL,\n `nawscootczfhbjcyystljtvrcojbbzuy` int DEFAULT NULL,\n `yaivwkkszehkujzdxckgasqqizpffjic` int DEFAULT NULL,\n `zdlwlflzgehmnlmohqeylsyvtzkusgfk` int DEFAULT NULL,\n `axnlqdtzyepcwkmfbzvyarfkmuaoeoof` int DEFAULT NULL,\n `ahgfyihlhvwudwbohvlkxxjlqgovgdvd` int DEFAULT NULL,\n `vhqlnalmijayitbkvfuwkpeikesmioms` int DEFAULT NULL,\n `ozuqkxlbhymhpahmqamzpmxpojjkezmv` int DEFAULT NULL,\n `wcqzocujrnmbjdtbjhfqaidvhzlksqxs` int DEFAULT NULL,\n `isvqpufzfrsjblfosqtlsnipktkxtghn` int DEFAULT NULL,\n `aolhqvnucrvkegneslufwyayszmrltom` int DEFAULT NULL,\n `drlzhnotlunmqgsuupoqoqdykjbozawg` int DEFAULT NULL,\n `lurrbtkbtgakcgothuxevfgjtgvubows` int DEFAULT NULL,\n `szuqevasfcpwuehmwaldgedvsfubnyon` int DEFAULT NULL,\n `beebqyaiadbrhnpcwwmfgtzzauehfitw` int DEFAULT NULL,\n `mxaskmmujyagyxmqwdfabmrwaidxqlxk` int DEFAULT NULL,\n `bcgwsxrwnweyznlmlvrifpwzunifxxpj` int DEFAULT NULL,\n `mhzijzwpyzvxbtsnqypfvoniukjlzeux` int DEFAULT NULL,\n `aohmppobksnucimfbzncxhgayrjaysxt` int DEFAULT NULL,\n `moxhzkukhzotkxejqvmkawkhbsaqgvpx` int DEFAULT NULL,\n `dvddgocvyjegjwfewaermifklvedmohb` int DEFAULT NULL,\n `ksbfzuiwfcxprpuhkwmwwgfppekzuxqg` int DEFAULT NULL,\n `twyhxxkqpjwvawlxfpvcrysqnmyjssqb` int DEFAULT NULL,\n `cwdyyrujtevsxbxfswjaookkgwtrselw` int DEFAULT NULL,\n `qhkwkjhvqqnidmwojcpnamhjnoiibuss` int DEFAULT NULL,\n `yqkxjvrbbjevozkdwphyelybqvjbjajb` int DEFAULT NULL,\n `fxdotivtbtoriuwuirkkxfqtwzckyrko` int DEFAULT NULL,\n `aegonfxxqaqtmyurpnlqiomhhejrjiak` int DEFAULT NULL,\n `ncumphqiqqykliygfydzokoukbmvpatx` int DEFAULT NULL,\n `xzjzaxjkfjdolmhpmqgqygmcxhshmfqz` int DEFAULT NULL,\n `mukskjhracajlojznivvxemmbtohutay` int DEFAULT NULL,\n `wocxfjsongjtbozwcqronueuslixjmbf` int DEFAULT NULL,\n `gyhizjfeskgnxcowfftsftusxlwhujms` int DEFAULT NULL,\n `zstssxspgjbqllzofkbdbbpicttnrhdn` int DEFAULT NULL,\n `pxbujpsvqmfaanvzghnaopnuugyfvgwl` int DEFAULT NULL,\n `olfmwxhlljgorzgjbuvhopirubtkvekh` int DEFAULT NULL,\n `aoeazuzhlqnnxcqmadcdbhwhelmhricl` int DEFAULT NULL,\n `nnfjmnesnapjctnyoelwnoerinodbush` int DEFAULT NULL,\n `nscpihieyuunitfbfkunvohlrpwqswkq` int DEFAULT NULL,\n `vlkysanmdqsqbjgmfmfccmwczxkagelt` int DEFAULT NULL,\n `mhjvpvjrruebxivvhjicexhrxghnbfyh` int DEFAULT NULL,\n `qcwaxephzulsxipaskadgydgvnbzytqt` int DEFAULT NULL,\n `wxzfhnbmwomptdoaikbwomphcljnzqir` int DEFAULT NULL,\n `udnaebxvuoijlprtlkpywxmkbeddkokb` int DEFAULT NULL,\n `czkqcyevvjpongezuvvpreuacntaklyh` int DEFAULT NULL,\n `gefxhwlbjjdtblpthrtuixtakzrpbnaq` int DEFAULT NULL,\n `xwylmqvcmdawlmxnmuyfkxcihwpbfceu` int DEFAULT NULL,\n `ishmowlpgcwaypbialmyniwpcvyxvvnr` int DEFAULT NULL,\n `gzpcvzhrglzvrndkqtsjdmjpsycvkbja` int DEFAULT NULL,\n `isiunilqlsdcirvzmirfjiggtyoxgxlh` int DEFAULT NULL,\n `tkqvilqeonwioihskiceyzjzxvmsofld` int DEFAULT NULL,\n `ojmjswuworntfviicjtqullopypszfms` int DEFAULT NULL,\n `sysqphkjdkuhqpcmrdpciditjhnrazrn` int DEFAULT NULL,\n `gchyvxvrywbiugazmvanebygnevmifob` int DEFAULT NULL,\n `xxdgjywwmcvkwesnzapzrrrmwpwbjpzo` int DEFAULT NULL,\n `ukmmhsmvdqvgibmkipskghfwfgbixfcz` int DEFAULT NULL,\n `bogrhguthujhtrlnevtyqfnmpbasbjwe` int DEFAULT NULL,\n `tmnukyuvcqupttmuxgxnwrorzpusegln` int DEFAULT NULL,\n `npeotaelllswdyofvyjqyexsiiozkbtm` int DEFAULT NULL,\n `hhrhecxnklgshkmvhbwdvgudxlxjbcyw` int DEFAULT NULL,\n `mbufduhmdkygyaglnudtdobfveevbvoh` int DEFAULT NULL,\n `bpsaohuonttaqajaxqdyykkkxdntzrws` int DEFAULT NULL,\n `wzfrhzodomupaqbrpdcpiudcvkawlknp` int DEFAULT NULL,\n `rslkxuaosyvlistxycmckibzgqxteukm` int DEFAULT NULL,\n `ctjtcallkvnxbgkxfptduguoplkepayj` int DEFAULT NULL,\n `ujfrbgcgcclmgasmjpvzdprrjvwuvbqo` int DEFAULT NULL,\n `dghjaswzdyymhrmxdlcijwaouecssgpp` int DEFAULT NULL,\n `edueboetlxpmyhyozwboridwkawmpxlv` int DEFAULT NULL,\n `egaghufrmudqydtdayadsudwztpkrjzv` int DEFAULT NULL,\n `eplodwrmqqbitpryisdnogndgapgaqzb` int DEFAULT NULL,\n `mrgxfvxojujkvrqidzglgvzguspwhdut` int DEFAULT NULL,\n `uuxyhibcezbcvkwhsqnekfefssrvaoqf` int DEFAULT NULL,\n `nrjbgxymiqmlwijtuotbmzpwytxtfqjm` int DEFAULT NULL,\n `xzxnnmzxxeubrmratnkmlukjmdtoyapd` int DEFAULT NULL,\n `ofulrwwbvhjrgsqcnszcxbnxpgsqmucr` int DEFAULT NULL,\n `wabmcaejovnklxbgsciobzxiqcjgtalm` int DEFAULT NULL,\n `ihmkbjklbrfpokzazoeqflrasxrgbeot` int DEFAULT NULL,\n `pfooyktjyubtmdwcdkvnpygskgvcfzey` int DEFAULT NULL,\n `norepkyxpnvdbcrbedwnrmcjybefbfeb` int DEFAULT NULL,\n `fvohyqowjxowqggfoamuixnzdnazffmr` int DEFAULT NULL,\n `sxczhwgzyrtaksuvwvupehvczxtsefgi` int DEFAULT NULL,\n `xdidxtgxekyhfhifwgmhfdvaxgwahayo` int DEFAULT NULL,\n `otfiddellmwkpqyprmusijfzfrprtmfu` int DEFAULT NULL,\n PRIMARY KEY (`twegkxbgcloxlzdjocsxagondlseofhd`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"xyfheiynhztwfzchczoqkoazqlkqybll\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["twegkxbgcloxlzdjocsxagondlseofhd"],"columns":[{"name":"twegkxbgcloxlzdjocsxagondlseofhd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"qlsfytsnaptrqppeetbolgpidfugiuyy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vaarwttbgxdgbghqqabzmstdcqygqidf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eemiczvkmiyxzbuknqoisbhdomkzrwku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqtgjkzryrseindopavrxihrlvlmqctf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qcghahcpkmehoiqiqjhfpnnizhsdxdrz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnjgiawcvnuxbhgfqoomkuyfehvowhfm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmapcvjsjivtsdmrkbcagnnnmpozunzl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wtlbesjytrnzacaiphwrboqmwbicyaaw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojtnvhipkuixucyhmmrgrukhsmtaoduj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxqkawrybijqhpktctyqeinhykiqqbau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkwbtmbogjrodvfcufvhpyikgdrmdqyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"togwtsxlpomcwyoquvttowvbveywdoau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvtpqciuxygdgsfyumbekazzwcljpbzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mztweaxjkbzphjanrloloijrwvutrtfp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqcvvdqwivvfxyzooblwugqyxfekbxnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfjcmhjvxeykfxkjbzcvaoduqamcmjna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"llljtqzrdendfvrfbrihvhnimihyrime","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nawscootczfhbjcyystljtvrcojbbzuy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yaivwkkszehkujzdxckgasqqizpffjic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdlwlflzgehmnlmohqeylsyvtzkusgfk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axnlqdtzyepcwkmfbzvyarfkmuaoeoof","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ahgfyihlhvwudwbohvlkxxjlqgovgdvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhqlnalmijayitbkvfuwkpeikesmioms","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ozuqkxlbhymhpahmqamzpmxpojjkezmv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcqzocujrnmbjdtbjhfqaidvhzlksqxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"isvqpufzfrsjblfosqtlsnipktkxtghn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aolhqvnucrvkegneslufwyayszmrltom","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drlzhnotlunmqgsuupoqoqdykjbozawg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lurrbtkbtgakcgothuxevfgjtgvubows","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"szuqevasfcpwuehmwaldgedvsfubnyon","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"beebqyaiadbrhnpcwwmfgtzzauehfitw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mxaskmmujyagyxmqwdfabmrwaidxqlxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bcgwsxrwnweyznlmlvrifpwzunifxxpj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhzijzwpyzvxbtsnqypfvoniukjlzeux","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aohmppobksnucimfbzncxhgayrjaysxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"moxhzkukhzotkxejqvmkawkhbsaqgvpx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvddgocvyjegjwfewaermifklvedmohb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ksbfzuiwfcxprpuhkwmwwgfppekzuxqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twyhxxkqpjwvawlxfpvcrysqnmyjssqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwdyyrujtevsxbxfswjaookkgwtrselw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhkwkjhvqqnidmwojcpnamhjnoiibuss","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqkxjvrbbjevozkdwphyelybqvjbjajb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxdotivtbtoriuwuirkkxfqtwzckyrko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aegonfxxqaqtmyurpnlqiomhhejrjiak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ncumphqiqqykliygfydzokoukbmvpatx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xzjzaxjkfjdolmhpmqgqygmcxhshmfqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mukskjhracajlojznivvxemmbtohutay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wocxfjsongjtbozwcqronueuslixjmbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gyhizjfeskgnxcowfftsftusxlwhujms","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zstssxspgjbqllzofkbdbbpicttnrhdn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxbujpsvqmfaanvzghnaopnuugyfvgwl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"olfmwxhlljgorzgjbuvhopirubtkvekh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aoeazuzhlqnnxcqmadcdbhwhelmhricl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nnfjmnesnapjctnyoelwnoerinodbush","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nscpihieyuunitfbfkunvohlrpwqswkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vlkysanmdqsqbjgmfmfccmwczxkagelt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhjvpvjrruebxivvhjicexhrxghnbfyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qcwaxephzulsxipaskadgydgvnbzytqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxzfhnbmwomptdoaikbwomphcljnzqir","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udnaebxvuoijlprtlkpywxmkbeddkokb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"czkqcyevvjpongezuvvpreuacntaklyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gefxhwlbjjdtblpthrtuixtakzrpbnaq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xwylmqvcmdawlmxnmuyfkxcihwpbfceu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ishmowlpgcwaypbialmyniwpcvyxvvnr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzpcvzhrglzvrndkqtsjdmjpsycvkbja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"isiunilqlsdcirvzmirfjiggtyoxgxlh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkqvilqeonwioihskiceyzjzxvmsofld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojmjswuworntfviicjtqullopypszfms","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sysqphkjdkuhqpcmrdpciditjhnrazrn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gchyvxvrywbiugazmvanebygnevmifob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxdgjywwmcvkwesnzapzrrrmwpwbjpzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ukmmhsmvdqvgibmkipskghfwfgbixfcz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bogrhguthujhtrlnevtyqfnmpbasbjwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmnukyuvcqupttmuxgxnwrorzpusegln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"npeotaelllswdyofvyjqyexsiiozkbtm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhrhecxnklgshkmvhbwdvgudxlxjbcyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbufduhmdkygyaglnudtdobfveevbvoh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bpsaohuonttaqajaxqdyykkkxdntzrws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzfrhzodomupaqbrpdcpiudcvkawlknp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rslkxuaosyvlistxycmckibzgqxteukm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ctjtcallkvnxbgkxfptduguoplkepayj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujfrbgcgcclmgasmjpvzdprrjvwuvbqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dghjaswzdyymhrmxdlcijwaouecssgpp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edueboetlxpmyhyozwboridwkawmpxlv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"egaghufrmudqydtdayadsudwztpkrjzv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eplodwrmqqbitpryisdnogndgapgaqzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrgxfvxojujkvrqidzglgvzguspwhdut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uuxyhibcezbcvkwhsqnekfefssrvaoqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nrjbgxymiqmlwijtuotbmzpwytxtfqjm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xzxnnmzxxeubrmratnkmlukjmdtoyapd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofulrwwbvhjrgsqcnszcxbnxpgsqmucr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wabmcaejovnklxbgsciobzxiqcjgtalm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ihmkbjklbrfpokzazoeqflrasxrgbeot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pfooyktjyubtmdwcdkvnpygskgvcfzey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"norepkyxpnvdbcrbedwnrmcjybefbfeb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fvohyqowjxowqggfoamuixnzdnazffmr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sxczhwgzyrtaksuvwvupehvczxtsefgi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdidxtgxekyhfhifwgmhfdvaxgwahayo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otfiddellmwkpqyprmusijfzfrprtmfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672900,"databaseName":"models_schema","ddl":"CREATE TABLE `ydfgmjyjnfakxnzitneuzhmydvouvjes` (\n `exgfxqkbuolnqcuifozhxmerkeiinkrz` int NOT NULL,\n `dirindxkeqpzrcjuuoydmypoendgeybm` int DEFAULT NULL,\n `wnqahvcwcozdyconlmlmpwwcxtteizzd` int DEFAULT NULL,\n `kkjefnndobcjppdejewpgxacudhtklti` int DEFAULT NULL,\n `fzzvxrapkvihuddhqibpyrujhfpwmwgg` int DEFAULT NULL,\n `owqmsipjzesiwappzmtocurxuanwspsu` int DEFAULT NULL,\n `ircfiwppdkpnevkmeevmuyfoxnekgrob` int DEFAULT NULL,\n `vrkehpdithirnyebygtfvtpqsuzdunlu` int DEFAULT NULL,\n `zuismbcyhliuyjjfjgwwjagxlynwpcrt` int DEFAULT NULL,\n `ufuwassncwmudzyhpvxzyozyzzrtstau` int DEFAULT NULL,\n `dtfbrqopbvxfocwrtowbgmwkbndbfftv` int DEFAULT NULL,\n `thyzsimvolvawvjkxyrzuumcmywsdxhg` int DEFAULT NULL,\n `njtnibxdsotkeetklimekyiarfkiuesc` int DEFAULT NULL,\n `ifoguvljcaurhmhzxxpymqxrwaycrggd` int DEFAULT NULL,\n `usvicamkluzvknpgcfcukbxtufgsaxkf` int DEFAULT NULL,\n `eeoxrlamkwmshdkhkulxfrqvmwiouohu` int DEFAULT NULL,\n `tcnepranvfsrcozqxxoldhzuqwkpewrr` int DEFAULT NULL,\n `kckppxlfmermkzwiivppmfgxatqppfyb` int DEFAULT NULL,\n `xikbfjcdjhommtjhrzyzmnaovqfusokk` int DEFAULT NULL,\n `aimcerdgwfvkffxgzbbljevsxguwayel` int DEFAULT NULL,\n `cpuibhzdrkslpnngkxsmnxkiefkinnkt` int DEFAULT NULL,\n `cquafcfovkqzspvrxlekfpwmijecexde` int DEFAULT NULL,\n `uhhwjnpezerhpvgwodqoskwyvncoexqo` int DEFAULT NULL,\n `jbnmuqwwigncoajnznrrbamirifrvwvc` int DEFAULT NULL,\n `wiijgkvswnhnhtzkljxdxuqefllcassb` int DEFAULT NULL,\n `olobqzfwdhfprryqarrdvofgwtapvyme` int DEFAULT NULL,\n `xliioaxbbenddrcoyxnrncwregiytqef` int DEFAULT NULL,\n `tsnrvctdortjeflcgqcwjbdnlevtrfmk` int DEFAULT NULL,\n `kpnstssgqazltzjjvcbgqfjjibtqvoff` int DEFAULT NULL,\n `erorfswoylfjkntdubhhcklfhvfrrdyp` int DEFAULT NULL,\n `gmpvlkltwdmjnsppsijqmeqcvudqraob` int DEFAULT NULL,\n `qkriwlqpehziftzploypkkdmtksztkdy` int DEFAULT NULL,\n `aiszpjctmrxzanqztdjjgfgwgwusuozw` int DEFAULT NULL,\n `wdlnakaxnsgsitsvwrzbcyedfacefdtl` int DEFAULT NULL,\n `xyjreljrhadicowgrguigvsuioicnsde` int DEFAULT NULL,\n `bprkdyxjsftwrnurltsjchnvdlbrikvz` int DEFAULT NULL,\n `blpsnrckdobqpokdbspfjlruclarpbnk` int DEFAULT NULL,\n `ghsbwbsizdmjgnsqervztvkfdxiivosi` int DEFAULT NULL,\n `qiblwsqnwnkezsxyllttaczqdypsdwjc` int DEFAULT NULL,\n `bhssflokceyisexugslfhklsjmismjfs` int DEFAULT NULL,\n `edfekohemjhmkiikqpjawaochrhznfzm` int DEFAULT NULL,\n `pvtwcihznnsnqyizumbioifgwdxtdjsw` int DEFAULT NULL,\n `usaaryvnxnnaejzzewsmfbdsdcyfumah` int DEFAULT NULL,\n `zskohnlytfypyokmybyfrksfoigqdzis` int DEFAULT NULL,\n `jmebqdzpycbenzyeujvzkngjdmhxoxcw` int DEFAULT NULL,\n `mbpyminwqdihfjztfwzmiylhxgxknygw` int DEFAULT NULL,\n `lgkcozflcfrwyhmkrybviugxmrzgvtdn` int DEFAULT NULL,\n `ocscrpdoehtrgpfkjlslcuxkeuxtdizd` int DEFAULT NULL,\n `peqigpqhxggrvbkfogvglvmhbxbpaynz` int DEFAULT NULL,\n `scxxhcxjmteigvwoaslbyxbjrmeezeld` int DEFAULT NULL,\n `kllllkuwcbbpjteryllbwqemgsazxsvl` int DEFAULT NULL,\n `zncjvtyxvluldzzhgwuhsfrpkcajjmbe` int DEFAULT NULL,\n `cclclqgxcvfjysykhrlpvjkxghazexfl` int DEFAULT NULL,\n `whtbqbjrpqoaajbmlconkjbfkxphzuwo` int DEFAULT NULL,\n `mukzltrrydbuatzfzrvosyfiinwiechc` int DEFAULT NULL,\n `tttnqhettsyrkjzsfqdysklrwzptffqk` int DEFAULT NULL,\n `vepharxnpikgnnjvarreutakakcfbzgc` int DEFAULT NULL,\n `ibookcfkchczjhlwgaewkqvpvzhgyisd` int DEFAULT NULL,\n `yswknmzhfshclprwybbdugdcaeavfblb` int DEFAULT NULL,\n `zjdgmmcyvzhfnwudbudoumxpefwifnfr` int DEFAULT NULL,\n `whpypgtreqranixvjkoobvimpsibjghy` int DEFAULT NULL,\n `qzkluydsuqhzlxvqrstbvvvlhdutmqba` int DEFAULT NULL,\n `xrsuvtuimbliqrabfnvgdcxwbnkhkpqa` int DEFAULT NULL,\n `ulsgcfwqiufxzfxhrudjjwkhpoxrjrna` int DEFAULT NULL,\n `sollrkusvnrqbbiaglbkskdsfmkpljua` int DEFAULT NULL,\n `latdxwwaidpehjnysohfsdusxrzedmye` int DEFAULT NULL,\n `zmrnuraqtrmzjtqqdxfgnhzmwlrbbcpo` int DEFAULT NULL,\n `sokrxcpprymidbyoerpthbycgrsajnnn` int DEFAULT NULL,\n `xyywqtmhhnwzahhctnknrkxvthqspwwi` int DEFAULT NULL,\n `yhlqezjzjfadirtcboxmsrcmviispnox` int DEFAULT NULL,\n `luuhmegjwcpgzwzqnbfjdlvfekjemrtp` int DEFAULT NULL,\n `tswzjfkknzistqjidpqkvwklvozafjmn` int DEFAULT NULL,\n `nqhctjsoejlevpeudebsltwnekagwaqh` int DEFAULT NULL,\n `fenuowhxyvypzekmhwyevigejmvqoxqx` int DEFAULT NULL,\n `wpifbimffasqdqkckghuengxyzejguxm` int DEFAULT NULL,\n `kxlhpmalbunkwyykgtkjsejpuuvvctvi` int DEFAULT NULL,\n `rqqzcxlckywbyyoqjazuxfcatxpkeexb` int DEFAULT NULL,\n `gdahbyaudzjupxxlgefnltvwplkihglh` int DEFAULT NULL,\n `htpehfjeicbynncvobnzkphcvwggtpmp` int DEFAULT NULL,\n `yrhmwzhrkforpaoxftmcfsmftpptrelx` int DEFAULT NULL,\n `xlbqmbjlzsokfelxccvbotzuevujsmzm` int DEFAULT NULL,\n `pffwjzoolkwsztajqhoriiaeovmxsgor` int DEFAULT NULL,\n `bbyrcfciquaenqcwoomfehtfvfcttjgr` int DEFAULT NULL,\n `fcffnvcjzqgcqhcsvdpoahaxswmatqmp` int DEFAULT NULL,\n `bvklssbqutlhxhppxpptigvnzvttthtm` int DEFAULT NULL,\n `xecixfbldsgsvgkajmagasmolyehqbit` int DEFAULT NULL,\n `kjyzhdxduqsreziymiquqxmhumujpchd` int DEFAULT NULL,\n `eoqmwwpjrewcfimpeewcmdebuviuxukl` int DEFAULT NULL,\n `aruwbditvfnaiejsplflppsvaacgkmhg` int DEFAULT NULL,\n `hfxmcagtkrpywwbhdbjdbrqjrzyybclf` int DEFAULT NULL,\n `gpxvayctxyeaetokyjredracvytfkbvi` int DEFAULT NULL,\n `qevfyaubjjqjcjpqzxufjvundrczkhbo` int DEFAULT NULL,\n `pdgennvpdyztqkeagossdqkzqzvethme` int DEFAULT NULL,\n `fqoptdailqdzqjsczgqivkfcbaunbrbv` int DEFAULT NULL,\n `fiveyaqzknfyjayykzzzjvkdpdcsuxid` int DEFAULT NULL,\n `vehaxkaizsxftwnciaopgzpmwbcfpcpb` int DEFAULT NULL,\n `bkciqfsssataeaacizwsnbhblfiotxlc` int DEFAULT NULL,\n `xlayqavehzuwcheagzqldzhnrptsyozm` int DEFAULT NULL,\n `tieuhvdowzqynajndchmrkgbonzvnbkl` int DEFAULT NULL,\n `zkaeusfxgejaecdtnsquvlmitqajkbmn` int DEFAULT NULL,\n PRIMARY KEY (`exgfxqkbuolnqcuifozhxmerkeiinkrz`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"ydfgmjyjnfakxnzitneuzhmydvouvjes\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["exgfxqkbuolnqcuifozhxmerkeiinkrz"],"columns":[{"name":"exgfxqkbuolnqcuifozhxmerkeiinkrz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"dirindxkeqpzrcjuuoydmypoendgeybm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnqahvcwcozdyconlmlmpwwcxtteizzd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kkjefnndobcjppdejewpgxacudhtklti","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzzvxrapkvihuddhqibpyrujhfpwmwgg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"owqmsipjzesiwappzmtocurxuanwspsu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ircfiwppdkpnevkmeevmuyfoxnekgrob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vrkehpdithirnyebygtfvtpqsuzdunlu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zuismbcyhliuyjjfjgwwjagxlynwpcrt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ufuwassncwmudzyhpvxzyozyzzrtstau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtfbrqopbvxfocwrtowbgmwkbndbfftv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thyzsimvolvawvjkxyrzuumcmywsdxhg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njtnibxdsotkeetklimekyiarfkiuesc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ifoguvljcaurhmhzxxpymqxrwaycrggd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"usvicamkluzvknpgcfcukbxtufgsaxkf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eeoxrlamkwmshdkhkulxfrqvmwiouohu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tcnepranvfsrcozqxxoldhzuqwkpewrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kckppxlfmermkzwiivppmfgxatqppfyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xikbfjcdjhommtjhrzyzmnaovqfusokk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aimcerdgwfvkffxgzbbljevsxguwayel","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cpuibhzdrkslpnngkxsmnxkiefkinnkt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cquafcfovkqzspvrxlekfpwmijecexde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhhwjnpezerhpvgwodqoskwyvncoexqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jbnmuqwwigncoajnznrrbamirifrvwvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wiijgkvswnhnhtzkljxdxuqefllcassb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"olobqzfwdhfprryqarrdvofgwtapvyme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xliioaxbbenddrcoyxnrncwregiytqef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tsnrvctdortjeflcgqcwjbdnlevtrfmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kpnstssgqazltzjjvcbgqfjjibtqvoff","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"erorfswoylfjkntdubhhcklfhvfrrdyp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmpvlkltwdmjnsppsijqmeqcvudqraob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qkriwlqpehziftzploypkkdmtksztkdy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aiszpjctmrxzanqztdjjgfgwgwusuozw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wdlnakaxnsgsitsvwrzbcyedfacefdtl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyjreljrhadicowgrguigvsuioicnsde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bprkdyxjsftwrnurltsjchnvdlbrikvz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blpsnrckdobqpokdbspfjlruclarpbnk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ghsbwbsizdmjgnsqervztvkfdxiivosi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qiblwsqnwnkezsxyllttaczqdypsdwjc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bhssflokceyisexugslfhklsjmismjfs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edfekohemjhmkiikqpjawaochrhznfzm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pvtwcihznnsnqyizumbioifgwdxtdjsw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"usaaryvnxnnaejzzewsmfbdsdcyfumah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zskohnlytfypyokmybyfrksfoigqdzis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmebqdzpycbenzyeujvzkngjdmhxoxcw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbpyminwqdihfjztfwzmiylhxgxknygw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgkcozflcfrwyhmkrybviugxmrzgvtdn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocscrpdoehtrgpfkjlslcuxkeuxtdizd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"peqigpqhxggrvbkfogvglvmhbxbpaynz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"scxxhcxjmteigvwoaslbyxbjrmeezeld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kllllkuwcbbpjteryllbwqemgsazxsvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zncjvtyxvluldzzhgwuhsfrpkcajjmbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cclclqgxcvfjysykhrlpvjkxghazexfl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"whtbqbjrpqoaajbmlconkjbfkxphzuwo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mukzltrrydbuatzfzrvosyfiinwiechc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tttnqhettsyrkjzsfqdysklrwzptffqk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vepharxnpikgnnjvarreutakakcfbzgc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibookcfkchczjhlwgaewkqvpvzhgyisd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yswknmzhfshclprwybbdugdcaeavfblb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zjdgmmcyvzhfnwudbudoumxpefwifnfr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"whpypgtreqranixvjkoobvimpsibjghy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qzkluydsuqhzlxvqrstbvvvlhdutmqba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xrsuvtuimbliqrabfnvgdcxwbnkhkpqa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ulsgcfwqiufxzfxhrudjjwkhpoxrjrna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sollrkusvnrqbbiaglbkskdsfmkpljua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"latdxwwaidpehjnysohfsdusxrzedmye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmrnuraqtrmzjtqqdxfgnhzmwlrbbcpo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sokrxcpprymidbyoerpthbycgrsajnnn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyywqtmhhnwzahhctnknrkxvthqspwwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhlqezjzjfadirtcboxmsrcmviispnox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"luuhmegjwcpgzwzqnbfjdlvfekjemrtp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tswzjfkknzistqjidpqkvwklvozafjmn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqhctjsoejlevpeudebsltwnekagwaqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fenuowhxyvypzekmhwyevigejmvqoxqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wpifbimffasqdqkckghuengxyzejguxm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxlhpmalbunkwyykgtkjsejpuuvvctvi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rqqzcxlckywbyyoqjazuxfcatxpkeexb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdahbyaudzjupxxlgefnltvwplkihglh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"htpehfjeicbynncvobnzkphcvwggtpmp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yrhmwzhrkforpaoxftmcfsmftpptrelx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xlbqmbjlzsokfelxccvbotzuevujsmzm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pffwjzoolkwsztajqhoriiaeovmxsgor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbyrcfciquaenqcwoomfehtfvfcttjgr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcffnvcjzqgcqhcsvdpoahaxswmatqmp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvklssbqutlhxhppxpptigvnzvttthtm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xecixfbldsgsvgkajmagasmolyehqbit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kjyzhdxduqsreziymiquqxmhumujpchd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eoqmwwpjrewcfimpeewcmdebuviuxukl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aruwbditvfnaiejsplflppsvaacgkmhg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfxmcagtkrpywwbhdbjdbrqjrzyybclf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gpxvayctxyeaetokyjredracvytfkbvi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qevfyaubjjqjcjpqzxufjvundrczkhbo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdgennvpdyztqkeagossdqkzqzvethme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqoptdailqdzqjsczgqivkfcbaunbrbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fiveyaqzknfyjayykzzzjvkdpdcsuxid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vehaxkaizsxftwnciaopgzpmwbcfpcpb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkciqfsssataeaacizwsnbhblfiotxlc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xlayqavehzuwcheagzqldzhnrptsyozm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tieuhvdowzqynajndchmrkgbonzvnbkl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zkaeusfxgejaecdtnsquvlmitqajkbmn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672931,"databaseName":"models_schema","ddl":"CREATE TABLE `yfcmxhvqnfmsqbirfafqjuymmgluegpl` (\n `epafeffqwmxlbfpwbbfcdhilsmpidwyk` int NOT NULL,\n `apawbsldulqruydqgbykjgpiboxclwpr` int DEFAULT NULL,\n `kubzzymdgnybexahufeagdxnttdsmghw` int DEFAULT NULL,\n `qgnexavtndummbzjqekakpjrxwjjyckh` int DEFAULT NULL,\n `lnysccxhjgdweyfgxpghoszgbwxwwiua` int DEFAULT NULL,\n `wjyvowalfzjujbxmrxpnrlqweiwpgvzb` int DEFAULT NULL,\n `cyzawndjflvxnbqidnenorfdbiglvmvc` int DEFAULT NULL,\n `uzosxiteebkcxqmoiigxtukzcxktpxqp` int DEFAULT NULL,\n `logalkcwhpiaprypcypjppkpuwiuaxol` int DEFAULT NULL,\n `vvtomqytlkvvmrfkdhgmcyimmazcsfvo` int DEFAULT NULL,\n `rxrrikseyuunoagyhmwiyooqdeetcjli` int DEFAULT NULL,\n `bjpudwcafxxzsqvlhwmxpghlrsffjoik` int DEFAULT NULL,\n `kuwvhnxacqtsckfgalocgsiufoasgcch` int DEFAULT NULL,\n `bnqvsgypvxxvcnqvssjvtahhmprdeyjs` int DEFAULT NULL,\n `lmbaujekrmijkkkacqslitjbxhxqkncx` int DEFAULT NULL,\n `uwrmuricmxttasiygvosljzigcwcrwnp` int DEFAULT NULL,\n `sbohpsxnyqyxnfrdwhjveespfezmzldb` int DEFAULT NULL,\n `ufxgbzilaahzwazfacjslerhvwcdxzkq` int DEFAULT NULL,\n `bkkmchsfvwyugntjkrxjypzvckjhtdtb` int DEFAULT NULL,\n `kpuefswqcewkzhrbficwksctjrbuvkiy` int DEFAULT NULL,\n `fcuecckzfwdpqihgdaxpjmeizohafgag` int DEFAULT NULL,\n `xyibkiiggcdekksguljspvllnriqzrti` int DEFAULT NULL,\n `ipjsxvisvuxkxyypdlwsjgkzbhbutrhb` int DEFAULT NULL,\n `xlrmvsagkzywplyhrexzhvcpyatspfsz` int DEFAULT NULL,\n `fvtmpongznzraopjmlosmfojczvifazx` int DEFAULT NULL,\n `pqblvupetrckdwjriimfdxuuarllkuwv` int DEFAULT NULL,\n `ujplugmirbylypoduqlrzrdpttoytqvy` int DEFAULT NULL,\n `ojssnvhckglhtubnkqsfkwjqxivrcnpc` int DEFAULT NULL,\n `evhozwrluhypnuiutyfjwosnmfjxamjv` int DEFAULT NULL,\n `lgtyjebyamtvqrxedmscayseegyxrxjz` int DEFAULT NULL,\n `wmqxysibravmnsrrbpccewgvusyocvnv` int DEFAULT NULL,\n `udcmzilwdxvbrutytbpyoitjmscgknyg` int DEFAULT NULL,\n `qgdnddckomkvwxzeueizzwjhpciwxpry` int DEFAULT NULL,\n `njaxtamihduotldbpqkeftjdbxkemjkx` int DEFAULT NULL,\n `xnfapmhnqzrttexyutrigamdwsttmfln` int DEFAULT NULL,\n `gyvmqcayitgapgenbfjgptsmbacutjiz` int DEFAULT NULL,\n `mtpshdswfehqtcqskuwolybzfbykpnot` int DEFAULT NULL,\n `ubbsohvvqjoloifkuwjzqchesimdipki` int DEFAULT NULL,\n `schfsxfyuhrqmfcwplhcpelfjmzkltaf` int DEFAULT NULL,\n `wbthutenphnkrkoslqayqhmdijqvroqc` int DEFAULT NULL,\n `xgxytevcyyqdsxnaxwiprithkkdknbkf` int DEFAULT NULL,\n `azfgvqrkoudeudedktfrbukbfktaphmr` int DEFAULT NULL,\n `pdfjrxejhiurctkwtllhstfwlrdrpvsq` int DEFAULT NULL,\n `asgauganumjrwrjzfyurjsdouwnlyenb` int DEFAULT NULL,\n `gjmeukokhgtvkagzxmmtdlqfenlvpxxx` int DEFAULT NULL,\n `oaatyjhnedexcswxlzeqiatctplapzvh` int DEFAULT NULL,\n `iqjqwulbmecrgjkyjjcppdwhjhwhnnoa` int DEFAULT NULL,\n `madukajxdudapmxngycocgcwtrpmnjqz` int DEFAULT NULL,\n `lenhpkhsuhuwectikaojjzffvuqejcsb` int DEFAULT NULL,\n `rdpfeqbmvsingiyshbrwpcqkcaixowgn` int DEFAULT NULL,\n `cgbcdkjqkrdeavhdgledmwluygxqtgbp` int DEFAULT NULL,\n `zuqpyjbkjcklskrctfzogvzbietfmghx` int DEFAULT NULL,\n `mzaghjdusgzeysptehgycaazvvibmypl` int DEFAULT NULL,\n `qgnzfpqjglwijullhtvbkrnxemtyocdc` int DEFAULT NULL,\n `jzgnwfdkmbkrxgotwgarsincutogscfb` int DEFAULT NULL,\n `fuhsftemzmyakmusvyvsacsnwoqnktko` int DEFAULT NULL,\n `qxooklpoeclfefzasnfvbjziokzkqgdb` int DEFAULT NULL,\n `wfzcryrpqhkfwtvbbuiykfofbtcvvbun` int DEFAULT NULL,\n `dshagcdfcnhodovfbglbkhzvewkxvsjs` int DEFAULT NULL,\n `npnvresudfjcxgakkjffotitrvovcddn` int DEFAULT NULL,\n `ddeotoaxijhhkfotwymzngujmpzgxqfd` int DEFAULT NULL,\n `vdyyxlqmjkvmncyfzxyosgrekywybgbi` int DEFAULT NULL,\n `nzoisurivjwjodupsseiunxmdiqvvkth` int DEFAULT NULL,\n `mxydhlbvalngpcmijshireopervlwcko` int DEFAULT NULL,\n `bgyxvniiuvkxufnzpflmygiphqwelmew` int DEFAULT NULL,\n `lzibxzitzjoykqnfggzsajwzuedgkcgb` int DEFAULT NULL,\n `elarmnsbfcnuhdzykjgsbxkcvcpoqupw` int DEFAULT NULL,\n `zkujpudjuoztjcnimplxspxxtybviiau` int DEFAULT NULL,\n `faxdlwufnaskebubhgrlltciscvualdh` int DEFAULT NULL,\n `qyrhoxqgzzlrcswwercrqdjqdyibzlke` int DEFAULT NULL,\n `vffsualdbfcwnifislwupmxzboqkkdbk` int DEFAULT NULL,\n `wmsgpwuwzdaqlekhvzscaltpcfgqjrez` int DEFAULT NULL,\n `vpwjhomexplmqfzmikjkdssygdikbpxh` int DEFAULT NULL,\n `qqrwluogirvzgmcwhxrlkzrhtceyqwuu` int DEFAULT NULL,\n `lsgczonkpikkevjdoiewzwockfuexzlx` int DEFAULT NULL,\n `tebwceqpmumfpntgvfcskghwdkyxdxnr` int DEFAULT NULL,\n `murwchbzmlyrhiosunipkimwnoysfeto` int DEFAULT NULL,\n `gpjedpgnbxwgtfvttjipytbpomgqbzse` int DEFAULT NULL,\n `nxcaeqyhjnqoqtzdkfluamlmyzlstitw` int DEFAULT NULL,\n `lvpbnonlzjomdzqavqknnjzeckmajegg` int DEFAULT NULL,\n `umvsakxinisaafycxlwwefcbzymyxurc` int DEFAULT NULL,\n `veoaaospfklfqyidjiwtpfoipchcmmqj` int DEFAULT NULL,\n `leantmwysgnhpdkvaebexeigsgooirwv` int DEFAULT NULL,\n `henqfphbfeifbbxuyyxazugzcjlfgscx` int DEFAULT NULL,\n `dnwgotqosatacwthkmoegykjzobycydu` int DEFAULT NULL,\n `zrgayknmwzjgrjuhyksyldykuowkauxz` int DEFAULT NULL,\n `bssvytlijryinugskditqizgdunrpazg` int DEFAULT NULL,\n `nhcsuxdakoizioriuelauscyrtpazkqi` int DEFAULT NULL,\n `euvqhgxbwtibtqwvnrzoyhzsbnkqjhrq` int DEFAULT NULL,\n `zpnraqptjksqoqzraqfujmkmvfgttsbt` int DEFAULT NULL,\n `fdsrzejomaoaylmrlvgforyvsoqiragl` int DEFAULT NULL,\n `vdtjhbkjembidlmmstzthkwugwwkvyzv` int DEFAULT NULL,\n `rrjrgleutbvpdlvsgedfkffljxzqbtey` int DEFAULT NULL,\n `zaakgxcwwsfxywewbtostjksnceibxyz` int DEFAULT NULL,\n `hfwckzlwbitddvptwntnzozmckelvdqh` int DEFAULT NULL,\n `cbnnfdqisyxagjkoedsfseayjllbbjju` int DEFAULT NULL,\n `tiyknzakqozrkezxwwsjmdyeoxtobpya` int DEFAULT NULL,\n `tnaqnzdenkhtkltfiemuxjtjvirwrety` int DEFAULT NULL,\n `aoihqeflwljatmowcnhimkagacmdrtqf` int DEFAULT NULL,\n `qjvlgwldbmfcdqypklxuuqchyisilsho` int DEFAULT NULL,\n PRIMARY KEY (`epafeffqwmxlbfpwbbfcdhilsmpidwyk`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"yfcmxhvqnfmsqbirfafqjuymmgluegpl\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["epafeffqwmxlbfpwbbfcdhilsmpidwyk"],"columns":[{"name":"epafeffqwmxlbfpwbbfcdhilsmpidwyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"apawbsldulqruydqgbykjgpiboxclwpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kubzzymdgnybexahufeagdxnttdsmghw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qgnexavtndummbzjqekakpjrxwjjyckh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lnysccxhjgdweyfgxpghoszgbwxwwiua","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wjyvowalfzjujbxmrxpnrlqweiwpgvzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cyzawndjflvxnbqidnenorfdbiglvmvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzosxiteebkcxqmoiigxtukzcxktpxqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"logalkcwhpiaprypcypjppkpuwiuaxol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vvtomqytlkvvmrfkdhgmcyimmazcsfvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxrrikseyuunoagyhmwiyooqdeetcjli","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjpudwcafxxzsqvlhwmxpghlrsffjoik","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kuwvhnxacqtsckfgalocgsiufoasgcch","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnqvsgypvxxvcnqvssjvtahhmprdeyjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmbaujekrmijkkkacqslitjbxhxqkncx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uwrmuricmxttasiygvosljzigcwcrwnp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbohpsxnyqyxnfrdwhjveespfezmzldb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ufxgbzilaahzwazfacjslerhvwcdxzkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bkkmchsfvwyugntjkrxjypzvckjhtdtb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kpuefswqcewkzhrbficwksctjrbuvkiy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcuecckzfwdpqihgdaxpjmeizohafgag","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyibkiiggcdekksguljspvllnriqzrti","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ipjsxvisvuxkxyypdlwsjgkzbhbutrhb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xlrmvsagkzywplyhrexzhvcpyatspfsz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fvtmpongznzraopjmlosmfojczvifazx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pqblvupetrckdwjriimfdxuuarllkuwv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujplugmirbylypoduqlrzrdpttoytqvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojssnvhckglhtubnkqsfkwjqxivrcnpc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evhozwrluhypnuiutyfjwosnmfjxamjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgtyjebyamtvqrxedmscayseegyxrxjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmqxysibravmnsrrbpccewgvusyocvnv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"udcmzilwdxvbrutytbpyoitjmscgknyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qgdnddckomkvwxzeueizzwjhpciwxpry","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njaxtamihduotldbpqkeftjdbxkemjkx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnfapmhnqzrttexyutrigamdwsttmfln","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gyvmqcayitgapgenbfjgptsmbacutjiz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mtpshdswfehqtcqskuwolybzfbykpnot","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ubbsohvvqjoloifkuwjzqchesimdipki","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"schfsxfyuhrqmfcwplhcpelfjmzkltaf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbthutenphnkrkoslqayqhmdijqvroqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xgxytevcyyqdsxnaxwiprithkkdknbkf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"azfgvqrkoudeudedktfrbukbfktaphmr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdfjrxejhiurctkwtllhstfwlrdrpvsq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"asgauganumjrwrjzfyurjsdouwnlyenb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjmeukokhgtvkagzxmmtdlqfenlvpxxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oaatyjhnedexcswxlzeqiatctplapzvh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqjqwulbmecrgjkyjjcppdwhjhwhnnoa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"madukajxdudapmxngycocgcwtrpmnjqz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lenhpkhsuhuwectikaojjzffvuqejcsb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdpfeqbmvsingiyshbrwpcqkcaixowgn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgbcdkjqkrdeavhdgledmwluygxqtgbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zuqpyjbkjcklskrctfzogvzbietfmghx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzaghjdusgzeysptehgycaazvvibmypl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qgnzfpqjglwijullhtvbkrnxemtyocdc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jzgnwfdkmbkrxgotwgarsincutogscfb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fuhsftemzmyakmusvyvsacsnwoqnktko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxooklpoeclfefzasnfvbjziokzkqgdb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfzcryrpqhkfwtvbbuiykfofbtcvvbun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dshagcdfcnhodovfbglbkhzvewkxvsjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"npnvresudfjcxgakkjffotitrvovcddn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ddeotoaxijhhkfotwymzngujmpzgxqfd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdyyxlqmjkvmncyfzxyosgrekywybgbi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzoisurivjwjodupsseiunxmdiqvvkth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mxydhlbvalngpcmijshireopervlwcko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bgyxvniiuvkxufnzpflmygiphqwelmew","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lzibxzitzjoykqnfggzsajwzuedgkcgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"elarmnsbfcnuhdzykjgsbxkcvcpoqupw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zkujpudjuoztjcnimplxspxxtybviiau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"faxdlwufnaskebubhgrlltciscvualdh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qyrhoxqgzzlrcswwercrqdjqdyibzlke","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vffsualdbfcwnifislwupmxzboqkkdbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmsgpwuwzdaqlekhvzscaltpcfgqjrez","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpwjhomexplmqfzmikjkdssygdikbpxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqrwluogirvzgmcwhxrlkzrhtceyqwuu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lsgczonkpikkevjdoiewzwockfuexzlx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tebwceqpmumfpntgvfcskghwdkyxdxnr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"murwchbzmlyrhiosunipkimwnoysfeto","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gpjedpgnbxwgtfvttjipytbpomgqbzse","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxcaeqyhjnqoqtzdkfluamlmyzlstitw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvpbnonlzjomdzqavqknnjzeckmajegg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umvsakxinisaafycxlwwefcbzymyxurc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"veoaaospfklfqyidjiwtpfoipchcmmqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"leantmwysgnhpdkvaebexeigsgooirwv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"henqfphbfeifbbxuyyxazugzcjlfgscx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dnwgotqosatacwthkmoegykjzobycydu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zrgayknmwzjgrjuhyksyldykuowkauxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bssvytlijryinugskditqizgdunrpazg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhcsuxdakoizioriuelauscyrtpazkqi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"euvqhgxbwtibtqwvnrzoyhzsbnkqjhrq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zpnraqptjksqoqzraqfujmkmvfgttsbt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fdsrzejomaoaylmrlvgforyvsoqiragl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdtjhbkjembidlmmstzthkwugwwkvyzv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrjrgleutbvpdlvsgedfkffljxzqbtey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zaakgxcwwsfxywewbtostjksnceibxyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfwckzlwbitddvptwntnzozmckelvdqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbnnfdqisyxagjkoedsfseayjllbbjju","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tiyknzakqozrkezxwwsjmdyeoxtobpya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnaqnzdenkhtkltfiemuxjtjvirwrety","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aoihqeflwljatmowcnhimkagacmdrtqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjvlgwldbmfcdqypklxuuqchyisilsho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672962,"databaseName":"models_schema","ddl":"CREATE TABLE `ygbhxqnxduzibovvetyxidhqtnuizvhi` (\n `isfuznhnzgraumzforeffkggjcoirkwa` int NOT NULL,\n `sydcmumjtnsfcneqleczrbikxktvkxgk` int DEFAULT NULL,\n `wsooasrsvplaxdzybrrpufwzzxrnbzii` int DEFAULT NULL,\n `cudvycxulonhisqfjaybjbbdkjxrcjms` int DEFAULT NULL,\n `prmephzvcriehigzyjdlkcfiouhwrtrq` int DEFAULT NULL,\n `clrzybhoajdurwiamsywedcvebdogeem` int DEFAULT NULL,\n `gkxyhggiwfqyjztjegbimbibjayadrqy` int DEFAULT NULL,\n `akhehmwqtqahcjxepylxelexxsarqvxs` int DEFAULT NULL,\n `lgzzgufuaejlvfijhmyabgxgxktgkfql` int DEFAULT NULL,\n `rcxonegnvplubvgccupgkxfaoomohyrv` int DEFAULT NULL,\n `jmmcustnwsmfckqnhwkdctqnvmszcvnm` int DEFAULT NULL,\n `vuysbnwsgjgonloqizzcsoxjrlaozorv` int DEFAULT NULL,\n `xttewemnojamjkkesdzzulizkixpinfx` int DEFAULT NULL,\n `shvxopabgtrapibjyefxhfjkknwcyhzi` int DEFAULT NULL,\n `lljaipkzearewrbbuoiiklyrewndwwkz` int DEFAULT NULL,\n `vglztvqimrnyqyvoqihslpaiedagxfkm` int DEFAULT NULL,\n `xkmtmegwnqpnhlghgxvhfybwelrtauuf` int DEFAULT NULL,\n `xugenhjqtthkqmczrtrjewwzpejyjiaa` int DEFAULT NULL,\n `isrjlxpdttsstvjxrhwmdzlolezxghvx` int DEFAULT NULL,\n `xrmzsckbgyfrcnmfmjxpxhvhzczhmrga` int DEFAULT NULL,\n `wpnmhiynhmbfewgsycocnuroarzmkzba` int DEFAULT NULL,\n `xsvvigknordzufvfjkdfkzqxgpgawpcj` int DEFAULT NULL,\n `xoomxmvxkwolmpyxclvyuepleqwdttlb` int DEFAULT NULL,\n `xrylsroknsmpopakyicvlzxblfsxreks` int DEFAULT NULL,\n `yjeipsjmehxfeugqkpjddcawsvcgpqsq` int DEFAULT NULL,\n `rkrtkqjffycybssnulgpzieejqzairhg` int DEFAULT NULL,\n `zstlcfvujsfwybbqtpcyozpqfnjzqtrw` int DEFAULT NULL,\n `ykriofhfmgivyqeatxptcwloxtyjokry` int DEFAULT NULL,\n `wkybopxwkkcpviheoheqtuoioooktiuh` int DEFAULT NULL,\n `pbdtkntpnmvrxxphcvqxccxdvrqislbd` int DEFAULT NULL,\n `ukdvkcotbhxmifhiwktkqaivhsqqjsew` int DEFAULT NULL,\n `nvyemfubusuxcygtkwqbydbkszhduift` int DEFAULT NULL,\n `ivqowfcjwbdphvlwowczplpifutbqmyd` int DEFAULT NULL,\n `uhenfxppwxxppndsqqfomhpjxmbmrnad` int DEFAULT NULL,\n `yhgsmdbyejazgtharjdrhdtypjrhosam` int DEFAULT NULL,\n `nfgsezhspnwxsdpsrmmlgiavrpdwzxtm` int DEFAULT NULL,\n `pzdopdmepkritqssuqmgytoofubdjgdk` int DEFAULT NULL,\n `nvaahrexsscnmifoqobqghatpmmqefqn` int DEFAULT NULL,\n `hnxqsrljqojgtreutszuobskqisbcdkn` int DEFAULT NULL,\n `fhimryvmyeglkehyrwwwxwqmdzjdxlhv` int DEFAULT NULL,\n `shnwicbbqjfayhvdbtxqeoruwylhvoqk` int DEFAULT NULL,\n `kgycayoxgjrdcmsixhvjcrsrdmlywjsd` int DEFAULT NULL,\n `nnmqhiabcmnswvpzdtrjzavfgapzzsde` int DEFAULT NULL,\n `ehrkjxtlwecrmicfhgdnkigoegcurbwp` int DEFAULT NULL,\n `uuitwriajhtllaaadqrohvtkibeqmvps` int DEFAULT NULL,\n `tuwnanwlvqzenyfxniedglwfkeayxbga` int DEFAULT NULL,\n `tujqcufoeqksrzumhfcflcotiznvdaiy` int DEFAULT NULL,\n `xrdehlnmvxkipsgspjvjptnndmdinrjl` int DEFAULT NULL,\n `swwyxzuxgawdcinugsefbqbrsvoskdyx` int DEFAULT NULL,\n `bwzvswjsbrmzdwculnzpgthlayegmeih` int DEFAULT NULL,\n `xpwoyostazwfxqugbreezntlkzritqrv` int DEFAULT NULL,\n `oydfwazfwziqjmyybmobwvgivxliwiyo` int DEFAULT NULL,\n `kvquiuyezclypmfpppqsscpktuqhaydr` int DEFAULT NULL,\n `fmouexceohiebjfoaihfvdzvqvwysukw` int DEFAULT NULL,\n `jlailoqeinbuioyonsyetwgyqeqvgoor` int DEFAULT NULL,\n `ppnxwkqampxjyvhymeznklhxfsdxudmv` int DEFAULT NULL,\n `znnznjpotbewdvdcxfvdouvgatygqgvu` int DEFAULT NULL,\n `uzheuvurjxmyrztvikxbkmvojvopgcuj` int DEFAULT NULL,\n `qmhughwniwocsydpibkdikcnfhdwqzsj` int DEFAULT NULL,\n `eshspchslyombvgcfdwekxtolouxmvdm` int DEFAULT NULL,\n `lfvkivgysnnjkwkegcgqfckgontyjidf` int DEFAULT NULL,\n `dodlsvcrbilvcrukgjibmtkhlivlaovw` int DEFAULT NULL,\n `bvlzmadrslizpqwlqifdnoypepyefaba` int DEFAULT NULL,\n `eaqphaedfpxxiekelwfgtwkehesxxgxg` int DEFAULT NULL,\n `wyvmdnxivwoooxsdnmzrazpmwnuieufk` int DEFAULT NULL,\n `swseypbraalvmlyxpccqoulcgjzbkoeq` int DEFAULT NULL,\n `yocanxstzwqfgbsyffsqxgsbggifmjhj` int DEFAULT NULL,\n `ueodfnufohbhjhuxutephkxixbimjxwm` int DEFAULT NULL,\n `facmnnmwjxhpzlapdgrozgvffuiethkn` int DEFAULT NULL,\n `tdphvyaiqzmhiqehxavfeqavcdsmpvie` int DEFAULT NULL,\n `ryxsmuutvlwnecfbdyzwhngmskjgqlrq` int DEFAULT NULL,\n `zqyytizflhigacklhrrmsczjqahxcxxe` int DEFAULT NULL,\n `vjqavsqyhwtvnmtgkjuomwqbaccgmbwq` int DEFAULT NULL,\n `bucqltdssclcjntsszifguitdxlcqegm` int DEFAULT NULL,\n `fzjsjryxjjkgijxnawomlfxifwbvqtef` int DEFAULT NULL,\n `ygtnxjppzmzobpfzmkhpqtigabvkxbla` int DEFAULT NULL,\n `uxeqpobemkpoamtxbtnbkcbevwvvfoqg` int DEFAULT NULL,\n `tlzvcdlrwejrravoppxqzptkmenietem` int DEFAULT NULL,\n `psbgmynmcmrenixrmfxiuljlpcjdxvir` int DEFAULT NULL,\n `ofqlbrhbryunyvhpszljwpbjfkeciwox` int DEFAULT NULL,\n `tjmijsipiczuivvavprsydvqehveqtet` int DEFAULT NULL,\n `gjalwkxspasndtubrvqgxwtgleiqngym` int DEFAULT NULL,\n `tuuewhvsagisryyoxkickmarsksjgwkz` int DEFAULT NULL,\n `uuvdugnqncbivpdgdxjcfiyqcaaehozv` int DEFAULT NULL,\n `pznupfxwpmqtaqhqzrodgpvjfecbsrvm` int DEFAULT NULL,\n `tkbrtkzjszuuqghxalplqbyzoyhtemdo` int DEFAULT NULL,\n `njfckhxxlzhptliiieagancxdukqbglc` int DEFAULT NULL,\n `lywkjujpedjqokjndvzewjrqpnplicyt` int DEFAULT NULL,\n `uiecsxhpocwfizapcyvvrgcgsbewykqh` int DEFAULT NULL,\n `mmzoxtwbrdhxvbpbotjecxvfuvymvmzv` int DEFAULT NULL,\n `kaerragwutsvdkkoylumrwymrpepckik` int DEFAULT NULL,\n `lyepluxztxcgfresjojpuauenicwoqkt` int DEFAULT NULL,\n `hacutabvhcijhglhijfmbuknsnlflpni` int DEFAULT NULL,\n `nsehfjhitazeaehnoiwlqmcpjhqplsnm` int DEFAULT NULL,\n `oomhbvmodgyshncunktjjgknvqkmsyht` int DEFAULT NULL,\n `blwkfscrkutsjludfzxamakvirrbmgel` int DEFAULT NULL,\n `hzmrcfesvlvofrzglzvelbkxrifixsyh` int DEFAULT NULL,\n `aigoxiwklncvjzhfxauuvjqihatynwif` int DEFAULT NULL,\n `iyicwqbhxtzmnobdrwgbpublzsbpiiql` int DEFAULT NULL,\n `zlzehpgvwjdjghtnscwbguiyyatvgirh` int DEFAULT NULL,\n PRIMARY KEY (`isfuznhnzgraumzforeffkggjcoirkwa`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"ygbhxqnxduzibovvetyxidhqtnuizvhi\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["isfuznhnzgraumzforeffkggjcoirkwa"],"columns":[{"name":"isfuznhnzgraumzforeffkggjcoirkwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"sydcmumjtnsfcneqleczrbikxktvkxgk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wsooasrsvplaxdzybrrpufwzzxrnbzii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cudvycxulonhisqfjaybjbbdkjxrcjms","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prmephzvcriehigzyjdlkcfiouhwrtrq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"clrzybhoajdurwiamsywedcvebdogeem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkxyhggiwfqyjztjegbimbibjayadrqy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akhehmwqtqahcjxepylxelexxsarqvxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgzzgufuaejlvfijhmyabgxgxktgkfql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcxonegnvplubvgccupgkxfaoomohyrv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmmcustnwsmfckqnhwkdctqnvmszcvnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vuysbnwsgjgonloqizzcsoxjrlaozorv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xttewemnojamjkkesdzzulizkixpinfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shvxopabgtrapibjyefxhfjkknwcyhzi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lljaipkzearewrbbuoiiklyrewndwwkz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vglztvqimrnyqyvoqihslpaiedagxfkm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkmtmegwnqpnhlghgxvhfybwelrtauuf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xugenhjqtthkqmczrtrjewwzpejyjiaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"isrjlxpdttsstvjxrhwmdzlolezxghvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xrmzsckbgyfrcnmfmjxpxhvhzczhmrga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wpnmhiynhmbfewgsycocnuroarzmkzba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsvvigknordzufvfjkdfkzqxgpgawpcj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xoomxmvxkwolmpyxclvyuepleqwdttlb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xrylsroknsmpopakyicvlzxblfsxreks","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjeipsjmehxfeugqkpjddcawsvcgpqsq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rkrtkqjffycybssnulgpzieejqzairhg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zstlcfvujsfwybbqtpcyozpqfnjzqtrw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykriofhfmgivyqeatxptcwloxtyjokry","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wkybopxwkkcpviheoheqtuoioooktiuh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbdtkntpnmvrxxphcvqxccxdvrqislbd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ukdvkcotbhxmifhiwktkqaivhsqqjsew","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvyemfubusuxcygtkwqbydbkszhduift","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivqowfcjwbdphvlwowczplpifutbqmyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhenfxppwxxppndsqqfomhpjxmbmrnad","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhgsmdbyejazgtharjdrhdtypjrhosam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfgsezhspnwxsdpsrmmlgiavrpdwzxtm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pzdopdmepkritqssuqmgytoofubdjgdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvaahrexsscnmifoqobqghatpmmqefqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hnxqsrljqojgtreutszuobskqisbcdkn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhimryvmyeglkehyrwwwxwqmdzjdxlhv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"shnwicbbqjfayhvdbtxqeoruwylhvoqk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kgycayoxgjrdcmsixhvjcrsrdmlywjsd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nnmqhiabcmnswvpzdtrjzavfgapzzsde","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehrkjxtlwecrmicfhgdnkigoegcurbwp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uuitwriajhtllaaadqrohvtkibeqmvps","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tuwnanwlvqzenyfxniedglwfkeayxbga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tujqcufoeqksrzumhfcflcotiznvdaiy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xrdehlnmvxkipsgspjvjptnndmdinrjl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swwyxzuxgawdcinugsefbqbrsvoskdyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bwzvswjsbrmzdwculnzpgthlayegmeih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xpwoyostazwfxqugbreezntlkzritqrv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oydfwazfwziqjmyybmobwvgivxliwiyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvquiuyezclypmfpppqsscpktuqhaydr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmouexceohiebjfoaihfvdzvqvwysukw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlailoqeinbuioyonsyetwgyqeqvgoor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ppnxwkqampxjyvhymeznklhxfsdxudmv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znnznjpotbewdvdcxfvdouvgatygqgvu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uzheuvurjxmyrztvikxbkmvojvopgcuj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmhughwniwocsydpibkdikcnfhdwqzsj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eshspchslyombvgcfdwekxtolouxmvdm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfvkivgysnnjkwkegcgqfckgontyjidf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dodlsvcrbilvcrukgjibmtkhlivlaovw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvlzmadrslizpqwlqifdnoypepyefaba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eaqphaedfpxxiekelwfgtwkehesxxgxg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wyvmdnxivwoooxsdnmzrazpmwnuieufk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"swseypbraalvmlyxpccqoulcgjzbkoeq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yocanxstzwqfgbsyffsqxgsbggifmjhj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ueodfnufohbhjhuxutephkxixbimjxwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"facmnnmwjxhpzlapdgrozgvffuiethkn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tdphvyaiqzmhiqehxavfeqavcdsmpvie","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ryxsmuutvlwnecfbdyzwhngmskjgqlrq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqyytizflhigacklhrrmsczjqahxcxxe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjqavsqyhwtvnmtgkjuomwqbaccgmbwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bucqltdssclcjntsszifguitdxlcqegm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzjsjryxjjkgijxnawomlfxifwbvqtef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ygtnxjppzmzobpfzmkhpqtigabvkxbla","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxeqpobemkpoamtxbtnbkcbevwvvfoqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlzvcdlrwejrravoppxqzptkmenietem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"psbgmynmcmrenixrmfxiuljlpcjdxvir","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofqlbrhbryunyvhpszljwpbjfkeciwox","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjmijsipiczuivvavprsydvqehveqtet","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gjalwkxspasndtubrvqgxwtgleiqngym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tuuewhvsagisryyoxkickmarsksjgwkz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uuvdugnqncbivpdgdxjcfiyqcaaehozv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pznupfxwpmqtaqhqzrodgpvjfecbsrvm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkbrtkzjszuuqghxalplqbyzoyhtemdo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njfckhxxlzhptliiieagancxdukqbglc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lywkjujpedjqokjndvzewjrqpnplicyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uiecsxhpocwfizapcyvvrgcgsbewykqh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mmzoxtwbrdhxvbpbotjecxvfuvymvmzv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kaerragwutsvdkkoylumrwymrpepckik","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lyepluxztxcgfresjojpuauenicwoqkt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hacutabvhcijhglhijfmbuknsnlflpni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nsehfjhitazeaehnoiwlqmcpjhqplsnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oomhbvmodgyshncunktjjgknvqkmsyht","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blwkfscrkutsjludfzxamakvirrbmgel","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hzmrcfesvlvofrzglzvelbkxrifixsyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aigoxiwklncvjzhfxauuvjqihatynwif","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iyicwqbhxtzmnobdrwgbpublzsbpiiql","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zlzehpgvwjdjghtnscwbguiyyatvgirh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842672,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842672992,"databaseName":"models_schema","ddl":"CREATE TABLE `ynchpzshvnthrfykxjbnnndevivsthen` (\n `hxxggtbbzacuciupgovsksmwjdfubwwd` int NOT NULL,\n `kmxztddbbzoeafzwyhqmzxqgbmgzgkds` int DEFAULT NULL,\n `pfdrnczczbzbsmvglvxygtptrudbmiss` int DEFAULT NULL,\n `gujuygchkqkbkljlsrufnghpxdufyuhl` int DEFAULT NULL,\n `fkgkvfmujgwfvopfkjimthdspkcpfolh` int DEFAULT NULL,\n `dbwsrvkcorgbhzwrbpkmsfrmdtbkopbk` int DEFAULT NULL,\n `glxnpxukmghumggcxwjebcefjqehlerj` int DEFAULT NULL,\n `jxtkrgaohaitkzsrsbuejsqnlqsqhmgu` int DEFAULT NULL,\n `liotkbczqwmtxbpavostuhheajqiqryu` int DEFAULT NULL,\n `wfhfqzcipywkkapwwolnjndbroihwdso` int DEFAULT NULL,\n `oblormbfyexclptkhxxtkjwipmtgiejw` int DEFAULT NULL,\n `mjfxxfffowjamlatliymramesbfajgba` int DEFAULT NULL,\n `mukfoefmtkcemylvpaertjeocvxqnict` int DEFAULT NULL,\n `kxlgochfissvrayaxtgxspjhbakcfnfr` int DEFAULT NULL,\n `zuiiiurnuriptaeyvdiaployuqihlorz` int DEFAULT NULL,\n `kvfoqaqsvzgksktbqpojkqwtorlpozwi` int DEFAULT NULL,\n `kizojvstfsovcnileldsmshqsgedtvvl` int DEFAULT NULL,\n `ojhtgqjbrdesktlqzbxqpxubytcnlkrp` int DEFAULT NULL,\n `povaltsobchuoormbdhctvmeoqeennfc` int DEFAULT NULL,\n `gfsvhacfefdvzyuvhzvfxgotxbgkmdpy` int DEFAULT NULL,\n `dorblhtildxxrwcuycwhlanqonftgxdl` int DEFAULT NULL,\n `tpiulkmyryzkjjuygelnzkwjcogzzrzx` int DEFAULT NULL,\n `zxfcvemtqxchfbhwlftucghfsjmojcpg` int DEFAULT NULL,\n `vepcbaolchjgykbcgffbhcbtcrkaxdpp` int DEFAULT NULL,\n `qotucdpmelqomijolvjpdkgzqmvwwkdp` int DEFAULT NULL,\n `kzasojaypuymvkleqyyhfeogaazyyhih` int DEFAULT NULL,\n `pcsuwdoqlagnsvghjdhxkorhkonxbapw` int DEFAULT NULL,\n `vtambfdoamtfdmvrhubfqhopucfizfvo` int DEFAULT NULL,\n `dqfoewycwnnbkqtweqhllylbtldprgcv` int DEFAULT NULL,\n `uryaccowupwwuospsgaokpbjkasxedct` int DEFAULT NULL,\n `xtcevakozrrucvgzwisykcpuqkirivem` int DEFAULT NULL,\n `pooilytepxhbvmvhqlqxiwzhtbommuvk` int DEFAULT NULL,\n `gvaufzozsugipliceweollmeetrniwxn` int DEFAULT NULL,\n `zlfdzzgkjktiolbhhtpiqsryqjeopmwn` int DEFAULT NULL,\n `jzantvawvkzerodzvsryaywmgvuhllpq` int DEFAULT NULL,\n `ckdjpcoyfmefsgezblvgahmmbkipncls` int DEFAULT NULL,\n `zeixeglzhwzxmrbwbiyjnjkbssdmpxis` int DEFAULT NULL,\n `pjhaokxihfmlqvnhcdhtdkugiomuvgqp` int DEFAULT NULL,\n `boxzlzkcpulhgndwldunqnlpwxlhqgyb` int DEFAULT NULL,\n `tvwipxandtejivpiedexfbtfupdifznq` int DEFAULT NULL,\n `razzvcaidoarvbifyqxiypnqiogsqwmv` int DEFAULT NULL,\n `itoehyljfyczjnryunvmlwhzbyyvgoly` int DEFAULT NULL,\n `prnaqsvokswzdbcwusllynjplmbfuswg` int DEFAULT NULL,\n `tganwabirohkznpgnexkzworeisrxvym` int DEFAULT NULL,\n `hkrkpqcaeroobllazgbiwtcpstkprlij` int DEFAULT NULL,\n `xjnmnsudjczfzyllgsukntcrxjrmvima` int DEFAULT NULL,\n `lvkqdomhxfohppfeqofyfpfmfvdcqllq` int DEFAULT NULL,\n `grsrhhfbhrmqecvtekselhzljbaqixqq` int DEFAULT NULL,\n `biwylmwvyancrtqecqhokhwdbuqdvkbv` int DEFAULT NULL,\n `vqeqrddudnpymujghgxjftgwfnqjhhxr` int DEFAULT NULL,\n `tibikfotaqdhnwssgztodtkunycxodpg` int DEFAULT NULL,\n `cmfsjvqsntktnmcxmlwiwprxmpatzrlv` int DEFAULT NULL,\n `hpbpkovtnllnnkyznuwpgegxxalwpsle` int DEFAULT NULL,\n `wrspqaobdymknnrjpoqqrezhkhfdrlzo` int DEFAULT NULL,\n `ttmskwqsbinellcrjqlswnfzjpicgrak` int DEFAULT NULL,\n `srgkzoasqzlfxnuruyucwxjzshmarocd` int DEFAULT NULL,\n `ijxszfnhwvquewftrysxslvfyxjpohvn` int DEFAULT NULL,\n `znndrdlscwuxwmvhxeqstonsjswgavzl` int DEFAULT NULL,\n `kagehizwzzokjujifzjrasubymktwyiq` int DEFAULT NULL,\n `yxktglbrezjeuvkcaldzsudmduumciid` int DEFAULT NULL,\n `nugcbtmjhwkjxqdlqlvbnetoadckpqxh` int DEFAULT NULL,\n `uqryssmnrmhuzalpaskfbsqvoksmtitg` int DEFAULT NULL,\n `bwigeijlbcerbkycycrcdzqctoenngzp` int DEFAULT NULL,\n `hhvwbwauyfhxfirssmxymrtjqsdblyoy` int DEFAULT NULL,\n `txokmvjmqcbmstwwxoumixjtnujyogby` int DEFAULT NULL,\n `qzvxrfnndkxwubjcmuibihaimayiwfes` int DEFAULT NULL,\n `zzsxpiqsipofecwezxvohbdsefadqnxv` int DEFAULT NULL,\n `jmmlyykiguznimtrdrsxbkpftjzynqrp` int DEFAULT NULL,\n `jmjictkjehssxzldllqegnlhxqfurprj` int DEFAULT NULL,\n `qctivtiukeozmducaymhaprnwhafwlso` int DEFAULT NULL,\n `yrzavniqhtekpikjhyqnaaedtqqfstux` int DEFAULT NULL,\n `mcpwahsrtbdiscccimbtptfaqgqhrhsw` int DEFAULT NULL,\n `cgvutvgjffbfyknmjifplvcznieaifyj` int DEFAULT NULL,\n `hlyrkvrcpfwjelbohjevqoevspyfuzha` int DEFAULT NULL,\n `usutvvynpskslbmvvdfafzbvszwgyxbi` int DEFAULT NULL,\n `fjvmcwytkvrpcgvkqmaxdmazattrhhnk` int DEFAULT NULL,\n `vkxibvhhxjrfqncnfbgayarraxwdmpje` int DEFAULT NULL,\n `uoftgrquclotxpbimpnnnwbkxacbuxml` int DEFAULT NULL,\n `fkqaurifkqtpnqeyywnufsynhwapnlqu` int DEFAULT NULL,\n `emhoacgcgjzkiwmxorebicjexxvtljvw` int DEFAULT NULL,\n `ppahvlgznkzcytkwxrzrxfasfjmqsovb` int DEFAULT NULL,\n `vxptcidxdmqsqnwjzsplcxsyergbnhsv` int DEFAULT NULL,\n `ibaqdheblxjxpouwaaibxhhjpfguvypp` int DEFAULT NULL,\n `qmoefgdtifsiqoirftmfmkehzfqsbvab` int DEFAULT NULL,\n `rhwkajxklollxypmctjnypgqkljiodgs` int DEFAULT NULL,\n `reionryxlzfbyvbxeiusppnwyhgqufkb` int DEFAULT NULL,\n `wkdmpiqqxyfmgevgjbbqkxoyfcnxngbj` int DEFAULT NULL,\n `idmmwiroqyudcmqyzhqloykjtjvrragu` int DEFAULT NULL,\n `pjbrbgmvubhtekaqjntjhfusrubvampo` int DEFAULT NULL,\n `jhluitwpmhghrqalelqqqcqjkmivwpqp` int DEFAULT NULL,\n `venzhcvkisgkidkdsnmhydrfplyctism` int DEFAULT NULL,\n `nveolhwwicqhavvdsozsvzdcqtzbdsgw` int DEFAULT NULL,\n `nofzbddrzefolihncmwpwubvsbvtisar` int DEFAULT NULL,\n `pkpdrtqrljgpkvdowahlpzrxzphmdtbt` int DEFAULT NULL,\n `uibsihoybjezzwnfnmguqayvthetqvcs` int DEFAULT NULL,\n `zuimdfauxfqthgcoftickobsrkbjinin` int DEFAULT NULL,\n `blolfupnxewsststumahbazilojiwdyn` int DEFAULT NULL,\n `hjukidgkwfiokbrqccoypbczewlrbipd` int DEFAULT NULL,\n `afdpuxopymlwshrejbzmkfpucdvofvwe` int DEFAULT NULL,\n `yvlcxxgsxdzkwevhwhxytagwpqfhvyiu` int DEFAULT NULL,\n PRIMARY KEY (`hxxggtbbzacuciupgovsksmwjdfubwwd`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"ynchpzshvnthrfykxjbnnndevivsthen\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["hxxggtbbzacuciupgovsksmwjdfubwwd"],"columns":[{"name":"hxxggtbbzacuciupgovsksmwjdfubwwd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"kmxztddbbzoeafzwyhqmzxqgbmgzgkds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pfdrnczczbzbsmvglvxygtptrudbmiss","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gujuygchkqkbkljlsrufnghpxdufyuhl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fkgkvfmujgwfvopfkjimthdspkcpfolh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbwsrvkcorgbhzwrbpkmsfrmdtbkopbk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"glxnpxukmghumggcxwjebcefjqehlerj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jxtkrgaohaitkzsrsbuejsqnlqsqhmgu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"liotkbczqwmtxbpavostuhheajqiqryu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfhfqzcipywkkapwwolnjndbroihwdso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oblormbfyexclptkhxxtkjwipmtgiejw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mjfxxfffowjamlatliymramesbfajgba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mukfoefmtkcemylvpaertjeocvxqnict","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxlgochfissvrayaxtgxspjhbakcfnfr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zuiiiurnuriptaeyvdiaployuqihlorz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvfoqaqsvzgksktbqpojkqwtorlpozwi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kizojvstfsovcnileldsmshqsgedtvvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ojhtgqjbrdesktlqzbxqpxubytcnlkrp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"povaltsobchuoormbdhctvmeoqeennfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfsvhacfefdvzyuvhzvfxgotxbgkmdpy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dorblhtildxxrwcuycwhlanqonftgxdl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tpiulkmyryzkjjuygelnzkwjcogzzrzx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxfcvemtqxchfbhwlftucghfsjmojcpg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vepcbaolchjgykbcgffbhcbtcrkaxdpp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qotucdpmelqomijolvjpdkgzqmvwwkdp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzasojaypuymvkleqyyhfeogaazyyhih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pcsuwdoqlagnsvghjdhxkorhkonxbapw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtambfdoamtfdmvrhubfqhopucfizfvo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqfoewycwnnbkqtweqhllylbtldprgcv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uryaccowupwwuospsgaokpbjkasxedct","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xtcevakozrrucvgzwisykcpuqkirivem","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pooilytepxhbvmvhqlqxiwzhtbommuvk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gvaufzozsugipliceweollmeetrniwxn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zlfdzzgkjktiolbhhtpiqsryqjeopmwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jzantvawvkzerodzvsryaywmgvuhllpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ckdjpcoyfmefsgezblvgahmmbkipncls","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zeixeglzhwzxmrbwbiyjnjkbssdmpxis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjhaokxihfmlqvnhcdhtdkugiomuvgqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"boxzlzkcpulhgndwldunqnlpwxlhqgyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvwipxandtejivpiedexfbtfupdifznq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"razzvcaidoarvbifyqxiypnqiogsqwmv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"itoehyljfyczjnryunvmlwhzbyyvgoly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"prnaqsvokswzdbcwusllynjplmbfuswg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tganwabirohkznpgnexkzworeisrxvym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkrkpqcaeroobllazgbiwtcpstkprlij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjnmnsudjczfzyllgsukntcrxjrmvima","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lvkqdomhxfohppfeqofyfpfmfvdcqllq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grsrhhfbhrmqecvtekselhzljbaqixqq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"biwylmwvyancrtqecqhokhwdbuqdvkbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqeqrddudnpymujghgxjftgwfnqjhhxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tibikfotaqdhnwssgztodtkunycxodpg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cmfsjvqsntktnmcxmlwiwprxmpatzrlv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hpbpkovtnllnnkyznuwpgegxxalwpsle","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wrspqaobdymknnrjpoqqrezhkhfdrlzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ttmskwqsbinellcrjqlswnfzjpicgrak","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"srgkzoasqzlfxnuruyucwxjzshmarocd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijxszfnhwvquewftrysxslvfyxjpohvn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znndrdlscwuxwmvhxeqstonsjswgavzl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kagehizwzzokjujifzjrasubymktwyiq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxktglbrezjeuvkcaldzsudmduumciid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nugcbtmjhwkjxqdlqlvbnetoadckpqxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqryssmnrmhuzalpaskfbsqvoksmtitg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bwigeijlbcerbkycycrcdzqctoenngzp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhvwbwauyfhxfirssmxymrtjqsdblyoy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txokmvjmqcbmstwwxoumixjtnujyogby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qzvxrfnndkxwubjcmuibihaimayiwfes","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzsxpiqsipofecwezxvohbdsefadqnxv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmmlyykiguznimtrdrsxbkpftjzynqrp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmjictkjehssxzldllqegnlhxqfurprj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qctivtiukeozmducaymhaprnwhafwlso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yrzavniqhtekpikjhyqnaaedtqqfstux","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcpwahsrtbdiscccimbtptfaqgqhrhsw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cgvutvgjffbfyknmjifplvcznieaifyj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlyrkvrcpfwjelbohjevqoevspyfuzha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"usutvvynpskslbmvvdfafzbvszwgyxbi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjvmcwytkvrpcgvkqmaxdmazattrhhnk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkxibvhhxjrfqncnfbgayarraxwdmpje","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uoftgrquclotxpbimpnnnwbkxacbuxml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fkqaurifkqtpnqeyywnufsynhwapnlqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"emhoacgcgjzkiwmxorebicjexxvtljvw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ppahvlgznkzcytkwxrzrxfasfjmqsovb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxptcidxdmqsqnwjzsplcxsyergbnhsv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibaqdheblxjxpouwaaibxhhjpfguvypp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmoefgdtifsiqoirftmfmkehzfqsbvab","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhwkajxklollxypmctjnypgqkljiodgs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"reionryxlzfbyvbxeiusppnwyhgqufkb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wkdmpiqqxyfmgevgjbbqkxoyfcnxngbj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idmmwiroqyudcmqyzhqloykjtjvrragu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjbrbgmvubhtekaqjntjhfusrubvampo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jhluitwpmhghrqalelqqqcqjkmivwpqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"venzhcvkisgkidkdsnmhydrfplyctism","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nveolhwwicqhavvdsozsvzdcqtzbdsgw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nofzbddrzefolihncmwpwubvsbvtisar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pkpdrtqrljgpkvdowahlpzrxzphmdtbt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uibsihoybjezzwnfnmguqayvthetqvcs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zuimdfauxfqthgcoftickobsrkbjinin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blolfupnxewsststumahbazilojiwdyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjukidgkwfiokbrqccoypbczewlrbipd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afdpuxopymlwshrejbzmkfpucdvofvwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yvlcxxgsxdzkwevhwhxytagwpqfhvyiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842673,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842673029,"databaseName":"models_schema","ddl":"CREATE TABLE `zcemsecafryitcsvmgpbhebgzwmycaiu` (\n `elbfdhhmprmbqumexljdeuhxkbssitxu` int NOT NULL,\n `rtiltnwcreecorzuelqgtepasvlpsjqa` int DEFAULT NULL,\n `jdsgsrydttrnoffbikflzuxmnldwzdax` int DEFAULT NULL,\n `jiiluepoklhunsoqlotsysgymoezareb` int DEFAULT NULL,\n `fvbfmgmjynjmrxlbzyowtootbfyuznoi` int DEFAULT NULL,\n `esirwlgzntynmgmwdtrbszyfmodxlzsj` int DEFAULT NULL,\n `ebbifkdmcpkcnzxerguncxjdrsnfrrur` int DEFAULT NULL,\n `afnzdufpxsfrmjrlrmiycuaznphskinc` int DEFAULT NULL,\n `ayrpxmrmixhkfxciwwvwlxdflyokpfnw` int DEFAULT NULL,\n `lfgxkgyvzrzhxiicrwkgnxatqznclgex` int DEFAULT NULL,\n `puyhxgizwrjdznhrieyacyvxlefvyica` int DEFAULT NULL,\n `tmacurbvqvsgwncnrlfjtdvfyrufsvzr` int DEFAULT NULL,\n `lnftfuoklfsjhqshysdhmibdpdowdpmj` int DEFAULT NULL,\n `tdyfhwqdarnjxusjkmsqjskfsqbcqljg` int DEFAULT NULL,\n `efzawrndaurrwslaztiudhmxvelhuehj` int DEFAULT NULL,\n `zcgzdyhawvjnzguhnyftkstnkzmykcdv` int DEFAULT NULL,\n `jfazmshwvzhqytljlulcyanllyigezjj` int DEFAULT NULL,\n `tkfjcxjfhyadiitkwnswurupttkqhwmj` int DEFAULT NULL,\n `gpqgpvrudqawenqnickgelrrbvoqhsiu` int DEFAULT NULL,\n `kctaqlvnvadpofnrjfcfntbhrwfqfxkr` int DEFAULT NULL,\n `sekyhjkfjaybeujnbvqipjkuxrevmvex` int DEFAULT NULL,\n `ldsdsfwspnpuxzidyysjuzxjbfxzsyfh` int DEFAULT NULL,\n `fgdpsdqitarjtziajnvmjzwhfbvlheiq` int DEFAULT NULL,\n `jsivhxudoinneycuytgmuunbcdybdjdd` int DEFAULT NULL,\n `nrzxxwbdcztaunwtkrmtcfimcjiexzug` int DEFAULT NULL,\n `ajajkxiovcfgqjpcncomjxwkyxjpaibx` int DEFAULT NULL,\n `hjirymytqqpwjzflzjivojmshyjjgwzk` int DEFAULT NULL,\n `cqmsjakkhkghsqndrhdhwgdlhjxgzjtd` int DEFAULT NULL,\n `kegvjwrwwgqgrpxqscdlyzavbaofhroo` int DEFAULT NULL,\n `vjccqpbwllxyoutwmiodopstxwyyetgl` int DEFAULT NULL,\n `djunvbbcerqjmypjlllmnjoxmkxbxvif` int DEFAULT NULL,\n `goftswwctxfgirszyorbzryszigzxgya` int DEFAULT NULL,\n `vtqkufyyemqvqqcyrxpkcguvzgjbkaok` int DEFAULT NULL,\n `fspxvhlsofwjgsbubcjbseuzyopwtafy` int DEFAULT NULL,\n `epdhdoytrprzgceyvbrahbzveironpax` int DEFAULT NULL,\n `bzrwxkegkzrzuqlprhrujfxzxekwwiey` int DEFAULT NULL,\n `zitwglzkrutmxykrsklhsucxenzanogc` int DEFAULT NULL,\n `pnyjoaygqutdwhzlkumximkdehnsyufe` int DEFAULT NULL,\n `fsctosoorrpbbdaielcifixfdmebprgl` int DEFAULT NULL,\n `dtwvouenwjyvlnoeivdgrcioowzdnedy` int DEFAULT NULL,\n `nzmdakndzqgorseoxrffvpcjvehsnhtt` int DEFAULT NULL,\n `qdzbvtlpdonfiuozzlhppuyortbrjjcp` int DEFAULT NULL,\n `tfqdxhayhtulcztwamezdqltkdfpaidn` int DEFAULT NULL,\n `rscbkemaiwpuyxuyrhctwghjpvbvmnpq` int DEFAULT NULL,\n `wwmihindaisscockicnwtihvtoccbkpt` int DEFAULT NULL,\n `avlfeduryndixwqdvqqggkjbeuvmmqqw` int DEFAULT NULL,\n `ekmtowgeaefebrgnjtqgvbamqhtjeatp` int DEFAULT NULL,\n `lsvqopruwshqxyikkwloptpteosfurny` int DEFAULT NULL,\n `tqrqtdmxezivfkggjvwuyqyvupfwpljz` int DEFAULT NULL,\n `bpcrpcpqesbgjrrcdipqciwuvuubpjjg` int DEFAULT NULL,\n `tuquhvmvjyoydquqaggaypvpkcjpexlu` int DEFAULT NULL,\n `utlbjolkjuahhuwpkqnzgtqzthwlqwgt` int DEFAULT NULL,\n `kaptyniosaewqxpkybuqqxzkxmhsdazm` int DEFAULT NULL,\n `zuinvljjzjhotkbztjkdimvytxxoblbv` int DEFAULT NULL,\n `vgbleusoeemcndrkpcwdimsmxgnvhobg` int DEFAULT NULL,\n `gftvpjvfwwyqvwdkfsxlhrxwcvlnnygy` int DEFAULT NULL,\n `hlssnvyjimrvxsnuwnrbsxlkthxzvrpj` int DEFAULT NULL,\n `aqmhupoflhdrjgcbbiilfprhoysgcflq` int DEFAULT NULL,\n `vcovsvfbzzzqgrqqipprodzbmraundlg` int DEFAULT NULL,\n `bnocrkquqwnlcvegelwwbvxcgsqirxtq` int DEFAULT NULL,\n `wufaenyvubgpiffxdjoamclowqhvgrdc` int DEFAULT NULL,\n `zaskmepgaermcsmkuxqsdmkjvvpcdhka` int DEFAULT NULL,\n `nocfhqgialfzkyvqmotihfcqllkdxozj` int DEFAULT NULL,\n `fangaffvdyzwjnmptnvsqtyetxzboekk` int DEFAULT NULL,\n `frfiigpqyfzvhpiumkfjcxvkaoryfbnq` int DEFAULT NULL,\n `cjjbktjqdgfefkdnvdojdauqcxdedszv` int DEFAULT NULL,\n `lwjgfukjchycvrqtbbwzffccqmkwzpbr` int DEFAULT NULL,\n `eamdjfzzmjbsjfesuufllwgphtpealpj` int DEFAULT NULL,\n `ofggmbtlwnrtluyzubqlldqcksxvuvzn` int DEFAULT NULL,\n `kuevkmctqskctbnkzlpynfqkjhxnropa` int DEFAULT NULL,\n `sfpyzqpdtpamylxvradfvhazgfaovood` int DEFAULT NULL,\n `xjhtspkkjhypcikbmpkzewpiezjompjr` int DEFAULT NULL,\n `vgljucnubahulznslzlufymusunqjjpf` int DEFAULT NULL,\n `npmgxykntvzjayxzavrtuyhfwkvrnsgn` int DEFAULT NULL,\n `erfroualpwggextomognokcstfaaocnd` int DEFAULT NULL,\n `cqgbyoyebmmoioulmxsqshtziwnxnryi` int DEFAULT NULL,\n `dwjxicjkagsyhngmmrhvgmlklqueqaup` int DEFAULT NULL,\n `rpxzpeozdrebevmyjdtrycwvciucayxu` int DEFAULT NULL,\n `lsqvquogsywewiqiyzevzkyrjbfykscy` int DEFAULT NULL,\n `uxgrctgigslejaeasegpxojabrkdfpho` int DEFAULT NULL,\n `qqxzxmvltbjzswjgxxcosyxzixvgtdlv` int DEFAULT NULL,\n `ilztglnrrukucpdftrwlyhvbcmwqyukd` int DEFAULT NULL,\n `auoyiggfpunhjiacedlupapmnuilphxp` int DEFAULT NULL,\n `fzavazqmligxzixnjgwddukdpyzzosug` int DEFAULT NULL,\n `ttjssnusgvigjxrjbpofncoeuswwqtri` int DEFAULT NULL,\n `qkybxuoferavnvtdptnyprvaorbcpsqi` int DEFAULT NULL,\n `iowpdtljqpwwpppqnfqgpecatdayfwmx` int DEFAULT NULL,\n `ewinijicymuxxiuvnullseldjrkhvrxh` int DEFAULT NULL,\n `zplyqcheypzrirmbiersvwqjoilhtbmk` int DEFAULT NULL,\n `hbsilgitodacmsrguyskaauepnatdasn` int DEFAULT NULL,\n `wsictuwqsawjulkglulzlyzzakenvfzj` int DEFAULT NULL,\n `lutcthykddpeqqmquaexgrpwtazhethg` int DEFAULT NULL,\n `ahzkqljrnhssiphxtypbipzegvbxdyxf` int DEFAULT NULL,\n `cpubiikmlmkqusjdzxfkwxqwqzfrssmu` int DEFAULT NULL,\n `vupfeziersykotvdgezcgpprgmrwvrrh` int DEFAULT NULL,\n `wtxdhgcxezwtycdnjucrnkjzhbidorlh` int DEFAULT NULL,\n `lhpfmgmdltnqjxeszysowofbtgsptxuk` int DEFAULT NULL,\n `lfficlpmpjrukvxcrntwhwitkiyuxxxo` int DEFAULT NULL,\n `bpeohpwrnappvrorojrzstmzitwihoep` int DEFAULT NULL,\n `hfbobhaxejbrwiupljmneowaxcwxrbdw` int DEFAULT NULL,\n PRIMARY KEY (`elbfdhhmprmbqumexljdeuhxkbssitxu`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"zcemsecafryitcsvmgpbhebgzwmycaiu\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["elbfdhhmprmbqumexljdeuhxkbssitxu"],"columns":[{"name":"elbfdhhmprmbqumexljdeuhxkbssitxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"rtiltnwcreecorzuelqgtepasvlpsjqa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdsgsrydttrnoffbikflzuxmnldwzdax","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jiiluepoklhunsoqlotsysgymoezareb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fvbfmgmjynjmrxlbzyowtootbfyuznoi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"esirwlgzntynmgmwdtrbszyfmodxlzsj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebbifkdmcpkcnzxerguncxjdrsnfrrur","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afnzdufpxsfrmjrlrmiycuaznphskinc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ayrpxmrmixhkfxciwwvwlxdflyokpfnw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfgxkgyvzrzhxiicrwkgnxatqznclgex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"puyhxgizwrjdznhrieyacyvxlefvyica","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tmacurbvqvsgwncnrlfjtdvfyrufsvzr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lnftfuoklfsjhqshysdhmibdpdowdpmj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tdyfhwqdarnjxusjkmsqjskfsqbcqljg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"efzawrndaurrwslaztiudhmxvelhuehj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zcgzdyhawvjnzguhnyftkstnkzmykcdv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jfazmshwvzhqytljlulcyanllyigezjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tkfjcxjfhyadiitkwnswurupttkqhwmj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gpqgpvrudqawenqnickgelrrbvoqhsiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kctaqlvnvadpofnrjfcfntbhrwfqfxkr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sekyhjkfjaybeujnbvqipjkuxrevmvex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ldsdsfwspnpuxzidyysjuzxjbfxzsyfh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fgdpsdqitarjtziajnvmjzwhfbvlheiq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jsivhxudoinneycuytgmuunbcdybdjdd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nrzxxwbdcztaunwtkrmtcfimcjiexzug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajajkxiovcfgqjpcncomjxwkyxjpaibx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjirymytqqpwjzflzjivojmshyjjgwzk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqmsjakkhkghsqndrhdhwgdlhjxgzjtd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kegvjwrwwgqgrpxqscdlyzavbaofhroo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjccqpbwllxyoutwmiodopstxwyyetgl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"djunvbbcerqjmypjlllmnjoxmkxbxvif","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"goftswwctxfgirszyorbzryszigzxgya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtqkufyyemqvqqcyrxpkcguvzgjbkaok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fspxvhlsofwjgsbubcjbseuzyopwtafy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"epdhdoytrprzgceyvbrahbzveironpax","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bzrwxkegkzrzuqlprhrujfxzxekwwiey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zitwglzkrutmxykrsklhsucxenzanogc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pnyjoaygqutdwhzlkumximkdehnsyufe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fsctosoorrpbbdaielcifixfdmebprgl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtwvouenwjyvlnoeivdgrcioowzdnedy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nzmdakndzqgorseoxrffvpcjvehsnhtt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdzbvtlpdonfiuozzlhppuyortbrjjcp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tfqdxhayhtulcztwamezdqltkdfpaidn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rscbkemaiwpuyxuyrhctwghjpvbvmnpq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwmihindaisscockicnwtihvtoccbkpt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avlfeduryndixwqdvqqggkjbeuvmmqqw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekmtowgeaefebrgnjtqgvbamqhtjeatp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lsvqopruwshqxyikkwloptpteosfurny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tqrqtdmxezivfkggjvwuyqyvupfwpljz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bpcrpcpqesbgjrrcdipqciwuvuubpjjg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tuquhvmvjyoydquqaggaypvpkcjpexlu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utlbjolkjuahhuwpkqnzgtqzthwlqwgt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kaptyniosaewqxpkybuqqxzkxmhsdazm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zuinvljjzjhotkbztjkdimvytxxoblbv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgbleusoeemcndrkpcwdimsmxgnvhobg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gftvpjvfwwyqvwdkfsxlhrxwcvlnnygy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlssnvyjimrvxsnuwnrbsxlkthxzvrpj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqmhupoflhdrjgcbbiilfprhoysgcflq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vcovsvfbzzzqgrqqipprodzbmraundlg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnocrkquqwnlcvegelwwbvxcgsqirxtq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wufaenyvubgpiffxdjoamclowqhvgrdc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zaskmepgaermcsmkuxqsdmkjvvpcdhka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nocfhqgialfzkyvqmotihfcqllkdxozj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fangaffvdyzwjnmptnvsqtyetxzboekk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"frfiigpqyfzvhpiumkfjcxvkaoryfbnq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cjjbktjqdgfefkdnvdojdauqcxdedszv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwjgfukjchycvrqtbbwzffccqmkwzpbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eamdjfzzmjbsjfesuufllwgphtpealpj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofggmbtlwnrtluyzubqlldqcksxvuvzn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kuevkmctqskctbnkzlpynfqkjhxnropa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sfpyzqpdtpamylxvradfvhazgfaovood","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xjhtspkkjhypcikbmpkzewpiezjompjr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgljucnubahulznslzlufymusunqjjpf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"npmgxykntvzjayxzavrtuyhfwkvrnsgn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"erfroualpwggextomognokcstfaaocnd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cqgbyoyebmmoioulmxsqshtziwnxnryi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwjxicjkagsyhngmmrhvgmlklqueqaup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpxzpeozdrebevmyjdtrycwvciucayxu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lsqvquogsywewiqiyzevzkyrjbfykscy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxgrctgigslejaeasegpxojabrkdfpho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqxzxmvltbjzswjgxxcosyxzixvgtdlv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ilztglnrrukucpdftrwlyhvbcmwqyukd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"auoyiggfpunhjiacedlupapmnuilphxp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzavazqmligxzixnjgwddukdpyzzosug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ttjssnusgvigjxrjbpofncoeuswwqtri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qkybxuoferavnvtdptnyprvaorbcpsqi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iowpdtljqpwwpppqnfqgpecatdayfwmx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ewinijicymuxxiuvnullseldjrkhvrxh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zplyqcheypzrirmbiersvwqjoilhtbmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hbsilgitodacmsrguyskaauepnatdasn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wsictuwqsawjulkglulzlyzzakenvfzj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lutcthykddpeqqmquaexgrpwtazhethg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ahzkqljrnhssiphxtypbipzegvbxdyxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cpubiikmlmkqusjdzxfkwxqwqzfrssmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vupfeziersykotvdgezcgpprgmrwvrrh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wtxdhgcxezwtycdnjucrnkjzhbidorlh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhpfmgmdltnqjxeszysowofbtgsptxuk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfficlpmpjrukvxcrntwhwitkiyuxxxo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bpeohpwrnappvrorojrzstmzitwihoep","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfbobhaxejbrwiupljmneowaxcwxrbdw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842673,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842673068,"databaseName":"models_schema","ddl":"CREATE TABLE `zfgsdjvymmttvoqeggdyoqbiudfvvjnu` (\n `icggjyszavlzpgpdwtgfjhjvgttkwlyo` int NOT NULL,\n `vkbaambjqrqhnldwgwbourdmiqxhueej` int DEFAULT NULL,\n `ikiontkkchkukfntjqyuuzpujaaatdtw` int DEFAULT NULL,\n `lfnelkbyxkxaubedgvsrzmxapxsddssg` int DEFAULT NULL,\n `jwengeqpczaegqpjrbrrhodnnhkxhjrp` int DEFAULT NULL,\n `paqgbyljydlkoaknrygniqtsnwbgyevj` int DEFAULT NULL,\n `ofbkgrqnpwwjbbqrpoqyrzcqcoiwxtvh` int DEFAULT NULL,\n `oiwdibbbswytvfxrrgjicmgkedgqmfuy` int DEFAULT NULL,\n `fupefddhcnjsgwritqfnvfwejqyyocvl` int DEFAULT NULL,\n `yntikvravudmljvfstafjpjpgehpxpkm` int DEFAULT NULL,\n `ncpnrdgmmhcphzvynexwpkjkzvvdrkhd` int DEFAULT NULL,\n `kvailtcrqffpeebyaeomrfchsxcwvexp` int DEFAULT NULL,\n `yxzgiinikurhnatyzwrhrpdxwjraiigl` int DEFAULT NULL,\n `jlaqxukuneenuiqqosooqqkrkvwtdoih` int DEFAULT NULL,\n `yavidqifxykcbdjycvaqklstjcxlmdgj` int DEFAULT NULL,\n `epwbpssciabmqaxkkrqwdqevphsihkja` int DEFAULT NULL,\n `jumylrokqwwjaczgvoobmfewjzvdsyuw` int DEFAULT NULL,\n `zbhfokboszbjcqrmbpnydhtazlmibgey` int DEFAULT NULL,\n `mkbejqdgoafimgodxuxcrcsglpfdyrar` int DEFAULT NULL,\n `zzctfxxlecvafofewgvqawmobadrouhd` int DEFAULT NULL,\n `moeonccsrzxcrqdelmcugisllcjptoor` int DEFAULT NULL,\n `wcimizpwjeckfwcvhdhphsbqggfcsyhr` int DEFAULT NULL,\n `umrdpmgawqfofqwrmggluuwzkjqdetsm` int DEFAULT NULL,\n `kfvlsrzpchnxsmwtujpuxfeszabfttye` int DEFAULT NULL,\n `pwtickxjgbhnwehsptxcwsjdmcidvhoo` int DEFAULT NULL,\n `lmqqmivetaajrethdemykoydflklbygn` int DEFAULT NULL,\n `zqrplswvfqvsnghwjhaytmhtkcghjdeg` int DEFAULT NULL,\n `fzvlflqtkyettyxxkzrgtfjyavxmctud` int DEFAULT NULL,\n `rgirhbzsqhqorcjosvvxbilzxevnnqtx` int DEFAULT NULL,\n `tbmyyvnaolfmbltkmnsrerwgmudirqhm` int DEFAULT NULL,\n `xyrpmrwgkotjdqdaaiyrzcusyhxubxzu` int DEFAULT NULL,\n `jitloswhbjkfxupeisrzfroyjdgkjheb` int DEFAULT NULL,\n `vhjxigbaxckxgszijundxncpczhmbobf` int DEFAULT NULL,\n `tlmnsquudndbowrryjaorszmaqpaeorr` int DEFAULT NULL,\n `fizzvlcbjwbrcnznhcbwmiotowfdvxwb` int DEFAULT NULL,\n `fvbbubwbrtjccfcngjbflsgnpqjiohya` int DEFAULT NULL,\n `phwjjaqzfvxhjkeczzwhlmphncawqbsp` int DEFAULT NULL,\n `arfqhmvffnjgzdfuvbcpesipitoirnyv` int DEFAULT NULL,\n `tjtfmlcuxvdtcjusijxebdoxgnzpahtu` int DEFAULT NULL,\n `vjuxlbpazqqblhgahhjwflmuynqliumr` int DEFAULT NULL,\n `ozqdxlcvdouycqvplmbytentskxuyhfk` int DEFAULT NULL,\n `wslinguirhyzcwvxcsibxlmircadmruk` int DEFAULT NULL,\n `ekxxubvjlxuntfiuqurjhyufacmxevgf` int DEFAULT NULL,\n `bxlgeixskzklbkwcvzgstudgjbbiquew` int DEFAULT NULL,\n `pwoafbosuzttgdpktssgrcxdbcfghoay` int DEFAULT NULL,\n `opmvxhykfwyjfkmcveeyheiypahkvohq` int DEFAULT NULL,\n `eiksrzctsdgdzwkwldofopjjxrzhhapd` int DEFAULT NULL,\n `hchfzbwsrxjdrgxkphauvgrwbvcsvafu` int DEFAULT NULL,\n `ounmkkvnlekickmlzuisvpvzmnoaruqn` int DEFAULT NULL,\n `wcajahmpqidfwfcsdwwqrargsieayelu` int DEFAULT NULL,\n `arrrdcdijikwoinbufoiltlesqkgaipj` int DEFAULT NULL,\n `fddhpuhhgyvikqsdpgdvjkknthyirvvl` int DEFAULT NULL,\n `clmpxrsdlbwlibnhjkwsfykioabckquu` int DEFAULT NULL,\n `frbydkrfxcjnmgttfaiuhdykwfbzckdz` int DEFAULT NULL,\n `wtatojyvudtycwaztfsisjpqrekqcity` int DEFAULT NULL,\n `ihxeuxdydmxotajaqviqythtcqwsawtq` int DEFAULT NULL,\n `fxarbnolxvexszwlwfwegayacxjvdorj` int DEFAULT NULL,\n `dbnfofssxafzrdageuouawklebrkphbc` int DEFAULT NULL,\n `gfohnrpfegjfygsulfzddatjexskjhyd` int DEFAULT NULL,\n `kilfedygkacvzrpobymgmqrgriilawcq` int DEFAULT NULL,\n `pbixuoiewitzgpuwdpcpvxoxlsmaymft` int DEFAULT NULL,\n `srpkrslwjhgdhqgfzjqdegeydqbypmhg` int DEFAULT NULL,\n `tsvshxdcaguwnlrbjyilvwvkiatnmhiy` int DEFAULT NULL,\n `lslkaeccusxvtypceqyazvvetjzivjeh` int DEFAULT NULL,\n `zmfmcrmbtxcwmlgbcakrnzaswncjnpfr` int DEFAULT NULL,\n `oxktcuxdxdesjzqucktsanecwujzwskd` int DEFAULT NULL,\n `fcfyaprektcgjfqatmihbtmcacaqkbws` int DEFAULT NULL,\n `ptpdrckksirtkkjlkywsmcahrdzrqtah` int DEFAULT NULL,\n `sqqzrkzczskjuudikannbzopsbtybmgb` int DEFAULT NULL,\n `ndnhmnfytutpomlarfyynegqbgmdgafa` int DEFAULT NULL,\n `bnzogejiiebnpduxxoybhpxnpiizhhsz` int DEFAULT NULL,\n `wwasascmwrhivrxaczldjshlwrajkvkl` int DEFAULT NULL,\n `lsltxlanystatjewmljvypyxcakkwgdb` int DEFAULT NULL,\n `pzfniasanrumlyplfhywvojvkpnfqizv` int DEFAULT NULL,\n `hwhhqqngcpoxorpvotmydhmaoozcnsip` int DEFAULT NULL,\n `ikjysgzdeubhcygyoflvcyqjthceueyv` int DEFAULT NULL,\n `lbqzvdoojwpjdeimwvytshsmvsjvqivd` int DEFAULT NULL,\n `hsvnfivgykckedfphopbjsibzbdvzqjo` int DEFAULT NULL,\n `htanmyohpeywayrqonycmmozlcpbmgrl` int DEFAULT NULL,\n `jcwvdgjznnejxzjiiwtceeauxbtymfni` int DEFAULT NULL,\n `utohmmlvtosabaebvhwvplzbcqzttnoc` int DEFAULT NULL,\n `exzzxrcikegcsxivezussvtutmkxjhpt` int DEFAULT NULL,\n `yostpgymizqrajkaxvyfugdvslsddjqf` int DEFAULT NULL,\n `yvpyrulflftjfmuqwcippanegbljyumf` int DEFAULT NULL,\n `tarcwgruawdeguepeneueqsambhvziyx` int DEFAULT NULL,\n `yqgvqedidcjlrqxzlogjzztbdfpvmytv` int DEFAULT NULL,\n `ktdrycudlpvyfbomhqocmswizugtiwys` int DEFAULT NULL,\n `smdrkjugvdbgqoygddmocbnelizuztui` int DEFAULT NULL,\n `ziaysfqrhnemvqiacenyjgycpqizgdhf` int DEFAULT NULL,\n `xqbwtqyylezxartsgmxyeumeivbqkuob` int DEFAULT NULL,\n `twqtermlthxghpcusfgvuxtxzqspiqye` int DEFAULT NULL,\n `wqvhjiskwdgvsglggnrcrxrnzrkmweta` int DEFAULT NULL,\n `edmwnzouwusbfbbzfpudymwstprkjmhk` int DEFAULT NULL,\n `rlehpkfmamcoykqrqnjfbjbtvlmhwqna` int DEFAULT NULL,\n `linojonuecmgrifkmdgoidmevrlvucba` int DEFAULT NULL,\n `hvgkdmxxjjempgpgybewyojrujgrzfhy` int DEFAULT NULL,\n `uscukustpbvlyqncucbsuasruocuwqha` int DEFAULT NULL,\n `wzbkksgxgnsmfzurlbykrqgjcfzwcwvt` int DEFAULT NULL,\n `cklzfmtawijmbhxmaafvzpddsbcwoigg` int DEFAULT NULL,\n `xypdzrvpflvkrgqzabndtyxuhtgccyar` int DEFAULT NULL,\n PRIMARY KEY (`icggjyszavlzpgpdwtgfjhjvgttkwlyo`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"zfgsdjvymmttvoqeggdyoqbiudfvvjnu\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["icggjyszavlzpgpdwtgfjhjvgttkwlyo"],"columns":[{"name":"icggjyszavlzpgpdwtgfjhjvgttkwlyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"vkbaambjqrqhnldwgwbourdmiqxhueej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikiontkkchkukfntjqyuuzpujaaatdtw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfnelkbyxkxaubedgvsrzmxapxsddssg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwengeqpczaegqpjrbrrhodnnhkxhjrp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"paqgbyljydlkoaknrygniqtsnwbgyevj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofbkgrqnpwwjbbqrpoqyrzcqcoiwxtvh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oiwdibbbswytvfxrrgjicmgkedgqmfuy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fupefddhcnjsgwritqfnvfwejqyyocvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yntikvravudmljvfstafjpjpgehpxpkm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ncpnrdgmmhcphzvynexwpkjkzvvdrkhd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvailtcrqffpeebyaeomrfchsxcwvexp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxzgiinikurhnatyzwrhrpdxwjraiigl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlaqxukuneenuiqqosooqqkrkvwtdoih","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yavidqifxykcbdjycvaqklstjcxlmdgj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"epwbpssciabmqaxkkrqwdqevphsihkja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jumylrokqwwjaczgvoobmfewjzvdsyuw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zbhfokboszbjcqrmbpnydhtazlmibgey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkbejqdgoafimgodxuxcrcsglpfdyrar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzctfxxlecvafofewgvqawmobadrouhd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"moeonccsrzxcrqdelmcugisllcjptoor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcimizpwjeckfwcvhdhphsbqggfcsyhr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umrdpmgawqfofqwrmggluuwzkjqdetsm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfvlsrzpchnxsmwtujpuxfeszabfttye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwtickxjgbhnwehsptxcwsjdmcidvhoo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmqqmivetaajrethdemykoydflklbygn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqrplswvfqvsnghwjhaytmhtkcghjdeg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzvlflqtkyettyxxkzrgtfjyavxmctud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rgirhbzsqhqorcjosvvxbilzxevnnqtx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tbmyyvnaolfmbltkmnsrerwgmudirqhm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xyrpmrwgkotjdqdaaiyrzcusyhxubxzu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jitloswhbjkfxupeisrzfroyjdgkjheb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhjxigbaxckxgszijundxncpczhmbobf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tlmnsquudndbowrryjaorszmaqpaeorr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fizzvlcbjwbrcnznhcbwmiotowfdvxwb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fvbbubwbrtjccfcngjbflsgnpqjiohya","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"phwjjaqzfvxhjkeczzwhlmphncawqbsp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"arfqhmvffnjgzdfuvbcpesipitoirnyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjtfmlcuxvdtcjusijxebdoxgnzpahtu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjuxlbpazqqblhgahhjwflmuynqliumr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ozqdxlcvdouycqvplmbytentskxuyhfk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wslinguirhyzcwvxcsibxlmircadmruk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ekxxubvjlxuntfiuqurjhyufacmxevgf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bxlgeixskzklbkwcvzgstudgjbbiquew","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pwoafbosuzttgdpktssgrcxdbcfghoay","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"opmvxhykfwyjfkmcveeyheiypahkvohq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eiksrzctsdgdzwkwldofopjjxrzhhapd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hchfzbwsrxjdrgxkphauvgrwbvcsvafu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ounmkkvnlekickmlzuisvpvzmnoaruqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcajahmpqidfwfcsdwwqrargsieayelu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"arrrdcdijikwoinbufoiltlesqkgaipj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fddhpuhhgyvikqsdpgdvjkknthyirvvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"clmpxrsdlbwlibnhjkwsfykioabckquu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"frbydkrfxcjnmgttfaiuhdykwfbzckdz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wtatojyvudtycwaztfsisjpqrekqcity","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ihxeuxdydmxotajaqviqythtcqwsawtq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fxarbnolxvexszwlwfwegayacxjvdorj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbnfofssxafzrdageuouawklebrkphbc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfohnrpfegjfygsulfzddatjexskjhyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kilfedygkacvzrpobymgmqrgriilawcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbixuoiewitzgpuwdpcpvxoxlsmaymft","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"srpkrslwjhgdhqgfzjqdegeydqbypmhg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tsvshxdcaguwnlrbjyilvwvkiatnmhiy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lslkaeccusxvtypceqyazvvetjzivjeh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zmfmcrmbtxcwmlgbcakrnzaswncjnpfr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oxktcuxdxdesjzqucktsanecwujzwskd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcfyaprektcgjfqatmihbtmcacaqkbws","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ptpdrckksirtkkjlkywsmcahrdzrqtah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sqqzrkzczskjuudikannbzopsbtybmgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ndnhmnfytutpomlarfyynegqbgmdgafa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnzogejiiebnpduxxoybhpxnpiizhhsz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwasascmwrhivrxaczldjshlwrajkvkl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lsltxlanystatjewmljvypyxcakkwgdb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pzfniasanrumlyplfhywvojvkpnfqizv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwhhqqngcpoxorpvotmydhmaoozcnsip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ikjysgzdeubhcygyoflvcyqjthceueyv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lbqzvdoojwpjdeimwvytshsmvsjvqivd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hsvnfivgykckedfphopbjsibzbdvzqjo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"htanmyohpeywayrqonycmmozlcpbmgrl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jcwvdgjznnejxzjiiwtceeauxbtymfni","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"utohmmlvtosabaebvhwvplzbcqzttnoc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exzzxrcikegcsxivezussvtutmkxjhpt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yostpgymizqrajkaxvyfugdvslsddjqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yvpyrulflftjfmuqwcippanegbljyumf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tarcwgruawdeguepeneueqsambhvziyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqgvqedidcjlrqxzlogjzztbdfpvmytv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ktdrycudlpvyfbomhqocmswizugtiwys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smdrkjugvdbgqoygddmocbnelizuztui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ziaysfqrhnemvqiacenyjgycpqizgdhf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqbwtqyylezxartsgmxyeumeivbqkuob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twqtermlthxghpcusfgvuxtxzqspiqye","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqvhjiskwdgvsglggnrcrxrnzrkmweta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edmwnzouwusbfbbzfpudymwstprkjmhk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlehpkfmamcoykqrqnjfbjbtvlmhwqna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"linojonuecmgrifkmdgoidmevrlvucba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hvgkdmxxjjempgpgybewyojrujgrzfhy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uscukustpbvlyqncucbsuasruocuwqha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wzbkksgxgnsmfzurlbykrqgjcfzwcwvt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cklzfmtawijmbhxmaafvzpddsbcwoigg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xypdzrvpflvkrgqzabndtyxuhtgccyar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842673,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842673106,"databaseName":"models_schema","ddl":"CREATE TABLE `zjynajtjehfzwlyfxrnocalgmomgzioq` (\n `mlpksasehuuvzzwcczjkjhrgtagnmpud` int NOT NULL,\n `dbuihytdrnthnfcjaseeddjjqlggerap` int DEFAULT NULL,\n `gdiornogcfaazswymtldfuzzpvvlmkph` int DEFAULT NULL,\n `tsphbpphdkjzhsaxdniuwuikhskihkgd` int DEFAULT NULL,\n `fwdkklmigwgxubmvyszrnjkudsygnvkm` int DEFAULT NULL,\n `romqgfksozbjymcnepucnqxqhjzqhdsq` int DEFAULT NULL,\n `yzjjrdonvgeahjmyevmuytxcpqzbjqdn` int DEFAULT NULL,\n `cvonomolszgwfkhoxcbqjpdydhoctvsl` int DEFAULT NULL,\n `kzipflrwlbrjhhljtsyfcekfhspjeyso` int DEFAULT NULL,\n `xsoowjzltzcewtezjevzfjirewygzfgh` int DEFAULT NULL,\n `gkyqqcatnucjvxtnskcmqfexhapvmtfu` int DEFAULT NULL,\n `kidyqkswcsnqzwnsoxtnwxxscboiavdv` int DEFAULT NULL,\n `ofsxqbhfmegzhesmbtxctfrnvqauypbg` int DEFAULT NULL,\n `wyczvaqqnoyxzyhxlaxqgfjqkxmeqhlp` int DEFAULT NULL,\n `oukdsnzkttwvicuttqjttyzwokxqzfyh` int DEFAULT NULL,\n `gxxynzgieyixcdrhxrgvomxbcjaoyjdi` int DEFAULT NULL,\n `vxijpidjfijfgmyosvjdpnozhbjuuwbw` int DEFAULT NULL,\n `exuewbwrntsnecsvtnpmqqnicwxsuoov` int DEFAULT NULL,\n `ohhdgvcerjrrzzgrszychvsanjqufqfw` int DEFAULT NULL,\n `gxcuanuvzsxopqssnozzaocgkwgnafyq` int DEFAULT NULL,\n `htctwkeiayadlvhjdicovgnjnnlddmyw` int DEFAULT NULL,\n `yxxkonzqrxquffozvrwsfjenargoycjw` int DEFAULT NULL,\n `oaqsgpcwjknbmrkhdfrgatszmohibexf` int DEFAULT NULL,\n `qdcyprztrjqdbqkbkiqyfuivsibhpdnm` int DEFAULT NULL,\n `zxecpuzobyxsziaydccdjyedenhxddxd` int DEFAULT NULL,\n `ijvcxklavjdhwrfzdhhqzzazflkmtnyd` int DEFAULT NULL,\n `fhepmrvwwyzdjalrurpnsgokvfolvqjt` int DEFAULT NULL,\n `boslotshnnqmpepthvyyavpazfskjrko` int DEFAULT NULL,\n `bhcfgwlryihzlgyyxpyxzepdqygkgwue` int DEFAULT NULL,\n `vvqrtbqacczamrgmfjhyjvxhcdyijzuh` int DEFAULT NULL,\n `toysmjmqucslxtowesqozyuhhccqzejd` int DEFAULT NULL,\n `fomyqyjfahsrzafcyzpocmcpzcfqanpr` int DEFAULT NULL,\n `lwfdaufryrfxqardwvkobbazonkljxcn` int DEFAULT NULL,\n `pzksnsvnrpbftbqziiukdnlxofeqsvoz` int DEFAULT NULL,\n `ahwetblvhgscgbaxwvqlcpmattcxgean` int DEFAULT NULL,\n `kzntzrwnyjohbbxrsbitqmfxzyfzijpa` int DEFAULT NULL,\n `uxfxpqhuuhinhxekwvneblsjkfemuanq` int DEFAULT NULL,\n `qpeizcwngdnhtinldijbtjrtleatleeq` int DEFAULT NULL,\n `bbstcudbfjcuahvnougctkmsijkwhzes` int DEFAULT NULL,\n `aaphztekzeeywjpisphtmrnyomcglrtg` int DEFAULT NULL,\n `rcrainmuoopdlkmvcyavodrkvergwkyh` int DEFAULT NULL,\n `qmpbwlikyqjexjsjuenxqnngktdsivkq` int DEFAULT NULL,\n `axlljatvcqljbtmgfzsusnuszmltxccl` int DEFAULT NULL,\n `awgylghjlhigmvvnmhjxmeaobidnegiv` int DEFAULT NULL,\n `yzcvtksmggxlizbhesxgftrgqhjackjn` int DEFAULT NULL,\n `bjmuvjqpecqiqebxczixjqakbfnairwg` int DEFAULT NULL,\n `wbdhlnwbbvwuejmvpmzissixagzyypbx` int DEFAULT NULL,\n `ypklvmbzqxvtlecuzpdakfvhajiegrgo` int DEFAULT NULL,\n `vbhhclpopsfuwyjmccdhqwooaaoegvrm` int DEFAULT NULL,\n `epedxvwivyselmwkjialczjarsrnbcxj` int DEFAULT NULL,\n `hlzbcpcmrlaixrukwxbgymfafgghlbpp` int DEFAULT NULL,\n `qwcpoooreldxxjltqdkwbukbctxunall` int DEFAULT NULL,\n `kgpgzeeladsnvvojwazuzqrnyokxyctw` int DEFAULT NULL,\n `lgkzpviveeagpqpmsqpbparmvweharbw` int DEFAULT NULL,\n `ydlewxxwsnkzaantqrkyypuhqxeaaasb` int DEFAULT NULL,\n `ddfavrblwjvbvbnatlqyzwhncfpxohxf` int DEFAULT NULL,\n `cujlcihyegcuobafzfleutmobeddsgid` int DEFAULT NULL,\n `heprkyqvmipqgdngdrzrzgrnxpaawvlb` int DEFAULT NULL,\n `kkpwnhfhnsngvphksqszljgdchhzajef` int DEFAULT NULL,\n `wawopquazevajblodnfxpputfpvqlfyz` int DEFAULT NULL,\n `jczgrovffmgdwizmltxzntppxbswycuy` int DEFAULT NULL,\n `wtmlrrdbruymmvvlfqlujgtacgktrlre` int DEFAULT NULL,\n `czmgdyzgenllnntjqjfpswtfjtdmkjdt` int DEFAULT NULL,\n `qxwzgebhrebnemisgqalbkumfquzvqcb` int DEFAULT NULL,\n `iytxnhxsmcayycfsqafcvdimuzhfbzxs` int DEFAULT NULL,\n `ykienmsemwrdfpxvvwjniyiuowewdiwq` int DEFAULT NULL,\n `mcekfxzxjfngrmnfaiaicizqcctbyesr` int DEFAULT NULL,\n `tphchxylvdnmjgzqpfkzzfwemarbpkqt` int DEFAULT NULL,\n `dtyhtyyhxorwqixksjtsfmnatmbhbyqj` int DEFAULT NULL,\n `lexjkxyitkqirirjewmbbaadyoctqalr` int DEFAULT NULL,\n `mkgrbvpymrnkhewuuwcktyanampxboaj` int DEFAULT NULL,\n `xlcoafmzpkoijmwwmvgqosvjikpijckl` int DEFAULT NULL,\n `ydhdnpzxxslxocjlzwvlflddwfmlukis` int DEFAULT NULL,\n `oirrjcckchpwgslrskiqcbhyzwnhlxng` int DEFAULT NULL,\n `gshwdimcgfulalgbdguughpzmeiziutl` int DEFAULT NULL,\n `ithlpieqclqyyxkgpddegkzxjlzxytey` int DEFAULT NULL,\n `zdbpgcogklvuqeszaagqwlxnwfrpmwhy` int DEFAULT NULL,\n `dcjltxubpweetkvmrvwetwofmmnvifjl` int DEFAULT NULL,\n `twooxknqokhnmhabtczzeewxwiuhqijp` int DEFAULT NULL,\n `oqucjgzkcsgrzykjslhlaymykivdyugi` int DEFAULT NULL,\n `bsgoxgvqqokgfhjffmlxcfmavsfusoan` int DEFAULT NULL,\n `qrhqedpkrljoqhhqxmqhponirqlhtujr` int DEFAULT NULL,\n `oxkrjzwctmxlvrfznpehystxfnwubmdd` int DEFAULT NULL,\n `twsdwyqmvlbrcjhlpxkbhzeerkkcmeud` int DEFAULT NULL,\n `psyglqxngvybgxojucrvvmqgzgaufajs` int DEFAULT NULL,\n `ukmepyhrsyuvnuefnvazadhjlpvzitjj` int DEFAULT NULL,\n `mhjrdgcosrpxemnbuhyknvckeqrylhgb` int DEFAULT NULL,\n `rewsskogxurocbxteqmirvynffmheahu` int DEFAULT NULL,\n `vhdxqlspseupcpmfcezwiuxmtaorpfrr` int DEFAULT NULL,\n `wqdievdrdirvlmrkyrkjkifytavabnza` int DEFAULT NULL,\n `abvgpvntdeufdsastkeqypqsxfrrqpwn` int DEFAULT NULL,\n `atixhijlaaqxngrwjupgvalycazpriyt` int DEFAULT NULL,\n `fitwgxanqxyshsdllirwwjvnidwqumxc` int DEFAULT NULL,\n `qqnvohygksrytbgyzupgcjhakxfohthi` int DEFAULT NULL,\n `rpslvktjyejbkaxppuiaitdbiuxwlyxj` int DEFAULT NULL,\n `hblvlmmtbwmzcbvdpnvmhicwzsgvshgj` int DEFAULT NULL,\n `kcupcfjusjrwfrdgavrjsnzahovokrlg` int DEFAULT NULL,\n `lmycljalqcsguujoglqmoierxuxuzkzr` int DEFAULT NULL,\n `hkkltkjpglfeqdpwcaibdankxjlkmkvy` int DEFAULT NULL,\n `lcujdzlnnnfbqqoyqayjohbqmyfgxkrj` int DEFAULT NULL,\n PRIMARY KEY (`mlpksasehuuvzzwcczjkjhrgtagnmpud`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"zjynajtjehfzwlyfxrnocalgmomgzioq\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["mlpksasehuuvzzwcczjkjhrgtagnmpud"],"columns":[{"name":"mlpksasehuuvzzwcczjkjhrgtagnmpud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"dbuihytdrnthnfcjaseeddjjqlggerap","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdiornogcfaazswymtldfuzzpvvlmkph","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tsphbpphdkjzhsaxdniuwuikhskihkgd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fwdkklmigwgxubmvyszrnjkudsygnvkm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"romqgfksozbjymcnepucnqxqhjzqhdsq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzjjrdonvgeahjmyevmuytxcpqzbjqdn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvonomolszgwfkhoxcbqjpdydhoctvsl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzipflrwlbrjhhljtsyfcekfhspjeyso","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsoowjzltzcewtezjevzfjirewygzfgh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkyqqcatnucjvxtnskcmqfexhapvmtfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kidyqkswcsnqzwnsoxtnwxxscboiavdv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofsxqbhfmegzhesmbtxctfrnvqauypbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wyczvaqqnoyxzyhxlaxqgfjqkxmeqhlp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oukdsnzkttwvicuttqjttyzwokxqzfyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gxxynzgieyixcdrhxrgvomxbcjaoyjdi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxijpidjfijfgmyosvjdpnozhbjuuwbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"exuewbwrntsnecsvtnpmqqnicwxsuoov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohhdgvcerjrrzzgrszychvsanjqufqfw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gxcuanuvzsxopqssnozzaocgkwgnafyq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"htctwkeiayadlvhjdicovgnjnnlddmyw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxxkonzqrxquffozvrwsfjenargoycjw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oaqsgpcwjknbmrkhdfrgatszmohibexf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdcyprztrjqdbqkbkiqyfuivsibhpdnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxecpuzobyxsziaydccdjyedenhxddxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ijvcxklavjdhwrfzdhhqzzazflkmtnyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhepmrvwwyzdjalrurpnsgokvfolvqjt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"boslotshnnqmpepthvyyavpazfskjrko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bhcfgwlryihzlgyyxpyxzepdqygkgwue","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vvqrtbqacczamrgmfjhyjvxhcdyijzuh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"toysmjmqucslxtowesqozyuhhccqzejd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fomyqyjfahsrzafcyzpocmcpzcfqanpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwfdaufryrfxqardwvkobbazonkljxcn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pzksnsvnrpbftbqziiukdnlxofeqsvoz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ahwetblvhgscgbaxwvqlcpmattcxgean","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kzntzrwnyjohbbxrsbitqmfxzyfzijpa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxfxpqhuuhinhxekwvneblsjkfemuanq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qpeizcwngdnhtinldijbtjrtleatleeq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbstcudbfjcuahvnougctkmsijkwhzes","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aaphztekzeeywjpisphtmrnyomcglrtg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcrainmuoopdlkmvcyavodrkvergwkyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmpbwlikyqjexjsjuenxqnngktdsivkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axlljatvcqljbtmgfzsusnuszmltxccl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awgylghjlhigmvvnmhjxmeaobidnegiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzcvtksmggxlizbhesxgftrgqhjackjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bjmuvjqpecqiqebxczixjqakbfnairwg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbdhlnwbbvwuejmvpmzissixagzyypbx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypklvmbzqxvtlecuzpdakfvhajiegrgo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vbhhclpopsfuwyjmccdhqwooaaoegvrm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"epedxvwivyselmwkjialczjarsrnbcxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlzbcpcmrlaixrukwxbgymfafgghlbpp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwcpoooreldxxjltqdkwbukbctxunall","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kgpgzeeladsnvvojwazuzqrnyokxyctw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lgkzpviveeagpqpmsqpbparmvweharbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydlewxxwsnkzaantqrkyypuhqxeaaasb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ddfavrblwjvbvbnatlqyzwhncfpxohxf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cujlcihyegcuobafzfleutmobeddsgid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"heprkyqvmipqgdngdrzrzgrnxpaawvlb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kkpwnhfhnsngvphksqszljgdchhzajef","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wawopquazevajblodnfxpputfpvqlfyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jczgrovffmgdwizmltxzntppxbswycuy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wtmlrrdbruymmvvlfqlujgtacgktrlre","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"czmgdyzgenllnntjqjfpswtfjtdmkjdt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxwzgebhrebnemisgqalbkumfquzvqcb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iytxnhxsmcayycfsqafcvdimuzhfbzxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykienmsemwrdfpxvvwjniyiuowewdiwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mcekfxzxjfngrmnfaiaicizqcctbyesr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tphchxylvdnmjgzqpfkzzfwemarbpkqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtyhtyyhxorwqixksjtsfmnatmbhbyqj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lexjkxyitkqirirjewmbbaadyoctqalr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mkgrbvpymrnkhewuuwcktyanampxboaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xlcoafmzpkoijmwwmvgqosvjikpijckl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydhdnpzxxslxocjlzwvlflddwfmlukis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oirrjcckchpwgslrskiqcbhyzwnhlxng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gshwdimcgfulalgbdguughpzmeiziutl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ithlpieqclqyyxkgpddegkzxjlzxytey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zdbpgcogklvuqeszaagqwlxnwfrpmwhy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcjltxubpweetkvmrvwetwofmmnvifjl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twooxknqokhnmhabtczzeewxwiuhqijp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oqucjgzkcsgrzykjslhlaymykivdyugi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bsgoxgvqqokgfhjffmlxcfmavsfusoan","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qrhqedpkrljoqhhqxmqhponirqlhtujr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oxkrjzwctmxlvrfznpehystxfnwubmdd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twsdwyqmvlbrcjhlpxkbhzeerkkcmeud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"psyglqxngvybgxojucrvvmqgzgaufajs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ukmepyhrsyuvnuefnvazadhjlpvzitjj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mhjrdgcosrpxemnbuhyknvckeqrylhgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rewsskogxurocbxteqmirvynffmheahu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vhdxqlspseupcpmfcezwiuxmtaorpfrr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wqdievdrdirvlmrkyrkjkifytavabnza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"abvgpvntdeufdsastkeqypqsxfrrqpwn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atixhijlaaqxngrwjupgvalycazpriyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fitwgxanqxyshsdllirwwjvnidwqumxc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qqnvohygksrytbgyzupgcjhakxfohthi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpslvktjyejbkaxppuiaitdbiuxwlyxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hblvlmmtbwmzcbvdpnvmhicwzsgvshgj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kcupcfjusjrwfrdgavrjsnzahovokrlg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lmycljalqcsguujoglqmoierxuxuzkzr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hkkltkjpglfeqdpwcaibdankxjlkmkvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lcujdzlnnnfbqqoyqayjohbqmyfgxkrj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842673,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842673144,"databaseName":"models_schema","ddl":"CREATE TABLE `zomwihdblysidiflhkqodbripxteqsje` (\n `kjnlgikpovwkqnkzocdzewhdovkkhjcx` int NOT NULL,\n `byhuzlgnwufookhwkmtyrevzgbnyshgo` int DEFAULT NULL,\n `zonwfhxslizwagenrcnxfkydrgbudjfc` int DEFAULT NULL,\n `ytaubiagvjfgqaljdhukitslogfclgia` int DEFAULT NULL,\n `hxxxpbagmscnimutyxjfvgflibphptfu` int DEFAULT NULL,\n `ysrnmultlulyqiclyokxpxrglhmaompa` int DEFAULT NULL,\n `fchfnfhnbuplmqvbubvymzbquttymfha` int DEFAULT NULL,\n `psbezmdfisyznxtfluqyeatatwpuscmo` int DEFAULT NULL,\n `cnspxwyrtcxftobyyzxkjkhnzhbezrkl` int DEFAULT NULL,\n `aiahbuicuprcwkcgjsqjkgbjuaekefdd` int DEFAULT NULL,\n `afllirgoepalikcyjwinzbbftmufjjvm` int DEFAULT NULL,\n `ujzckfhctxqbxkduvfrajqfbdurfwunj` int DEFAULT NULL,\n `dltjrmrtaqioiweyemweylvbjiohtggj` int DEFAULT NULL,\n `tdyvpmenffpbyxysgkcrrptqhgzimion` int DEFAULT NULL,\n `iajqvojcdhuomcozrmzmbxxxoqcptplc` int DEFAULT NULL,\n `pyhohklwkhmaxvmmlihmavsvlmpvzwjt` int DEFAULT NULL,\n `goqqmrpfxmjztlcwtvocoqivobunycpp` int DEFAULT NULL,\n `atlxwuqcghecizirdmilwbuoqoxbnvew` int DEFAULT NULL,\n `yjqtiadxxwhagefiwdlxisdybyjrtyfk` int DEFAULT NULL,\n `tycnsrumbhtclskgyyhntobckexbjmjn` int DEFAULT NULL,\n `hhlhakvjsvlqjwjrkoczenxsneecopxr` int DEFAULT NULL,\n `vovwxennxyuygwolrmgkzdsykpfmwdtd` int DEFAULT NULL,\n `zxzoaeynztastnjailmqjvdjhbcghzwr` int DEFAULT NULL,\n `rxuaqwrejeabkqwlegwnalifktifvnsk` int DEFAULT NULL,\n `pfnebbbfehxpxqrfxhrquklfberhvqts` int DEFAULT NULL,\n `skvykqhslottedonxaqtxesnfdrbbvej` int DEFAULT NULL,\n `epthxsrdphbarucwbsjvvtecakmzlptu` int DEFAULT NULL,\n `hmfxrvhfsqbbiiyeltrlaqkloxzpvjzb` int DEFAULT NULL,\n `kqtytjbpskaifeiwmgjhbdkxhutjufyh` int DEFAULT NULL,\n `vedeozibwnsigdwgizyjfextznmjhruk` int DEFAULT NULL,\n `kkphugjgxvqihvifrlepbmrihsdwqwyk` int DEFAULT NULL,\n `hfymhydfjnzzrinmrgwwyuxufteuxzjg` int DEFAULT NULL,\n `bdwylzmyrpkfikxprjythbbfhkfpzqzo` int DEFAULT NULL,\n `nirntjvitxoyqyblxkgbceodmpaapukx` int DEFAULT NULL,\n `ggbkynwqnvyxtftxhcblszhqqrhygtfn` int DEFAULT NULL,\n `bijcnuwrsrkwvgcdgizscrmkkxfpfzht` int DEFAULT NULL,\n `wvpyyoplobxqkhsmeppqeobcurysmaok` int DEFAULT NULL,\n `gwzqpuwrovxvqimfyyvnxhsjptuscuvk` int DEFAULT NULL,\n `iyfgdjefbxncgfnqndgzonggrisfmtin` int DEFAULT NULL,\n `wxhyxeysgptjiqaatrpqnymidaioiooq` int DEFAULT NULL,\n `jwbemgkfadafylqceqpckcmzchcpsxow` int DEFAULT NULL,\n `fnrolaqmcamoapwfqpjcifdwupaumspj` int DEFAULT NULL,\n `lbbtcccsudyukdvpmiotiewcejpwemvx` int DEFAULT NULL,\n `odkqjnkdosxnjjudgfcjcmnsmedpydnh` int DEFAULT NULL,\n `cifzebfmqtymihomeakkayhyvegzvcnu` int DEFAULT NULL,\n `cestnezmfphmsvsubftsotlvxglkfpqs` int DEFAULT NULL,\n `cbkdgyjipxniyccxgoolshwvwxjpyzaz` int DEFAULT NULL,\n `wbaowyslkkxtbsqafaswgdoniqeoukim` int DEFAULT NULL,\n `xxjqpesoaudukhtyoxlenvqijnxzqvyx` int DEFAULT NULL,\n `iqamkjusfmnncziqfauigsmkocynicdm` int DEFAULT NULL,\n `qasqymyephmsrzpmxpztfiyydvnycqzb` int DEFAULT NULL,\n `xgaocghdkcruzipajbpwelznjftlgnut` int DEFAULT NULL,\n `qwwjqiqiiiqeqiqjlonqexsamigtoddw` int DEFAULT NULL,\n `tozutjtetdbuynrtpsoellnyszgxwyik` int DEFAULT NULL,\n `syzqwamtrjdhgawwiylnjuoefbaffitb` int DEFAULT NULL,\n `zeqmnbudqvfdmbfrukoeqjyomxmgtofi` int DEFAULT NULL,\n `hrgxypwemzruekjhlbykbkpdtkvtjoau` int DEFAULT NULL,\n `bnugvetjgdrusulgivnmsiqmwzpztuzh` int DEFAULT NULL,\n `xeiyawvfelarmtsxulgpffjwxqyvelhx` int DEFAULT NULL,\n `xfvunplkgkmiggyopqtxadlobptokgqs` int DEFAULT NULL,\n `edrvvvxkstrrpynwmbucsvtxfihzcflt` int DEFAULT NULL,\n `yemlljfpybnnlzgoyquccqsgrtqmrfjv` int DEFAULT NULL,\n `skkrktvrukrawhsrdzmvpyniapyqcniw` int DEFAULT NULL,\n `ymfdycuncfwyeshmptrxhyftckntegbg` int DEFAULT NULL,\n `oraffxmnhxvanohrplovcoyumceicywb` int DEFAULT NULL,\n `nhzddhxucjntuhtszeqfqhcxckrjbcxz` int DEFAULT NULL,\n `cpxkkxwzjjdwqotvdriqagnkszkryegi` int DEFAULT NULL,\n `deqtaivxjmomzojsloalxmfdkkesgfqk` int DEFAULT NULL,\n `dkbbqsiwjocrhwjionyjubaiujdxbxdu` int DEFAULT NULL,\n `ntzjqhuwuxstncddwmpzrcmpesbldimd` int DEFAULT NULL,\n `wiwsfzoayoqiaprsjpmcjfpftceoccwa` int DEFAULT NULL,\n `dbhtpcsaclqojciyjhumlnpzvovbfmbd` int DEFAULT NULL,\n `rfhnnopijzssnmqcfzvxrvcoirqafdco` int DEFAULT NULL,\n `fmipjunhocoswopqixkyhnpdyrjigsxp` int DEFAULT NULL,\n `jglcdupkehmpgwvoglkllplnfjrbxrbj` int DEFAULT NULL,\n `fclwlpicjmckuehmbecjhotqwskmrxxy` int DEFAULT NULL,\n `ixjeemtsvwroldefpwtegpsjbfxazrhy` int DEFAULT NULL,\n `xgzgmtwwcawwflvzirsbaicqbkqaoaci` int DEFAULT NULL,\n `aafaprvvxuswjavgpwyhtfcfqugzimbt` int DEFAULT NULL,\n `dvzsxspbrvxcjgwmfkxynjtwuqjvezcp` int DEFAULT NULL,\n `wxjinfdvapcbcjskqmvvezeyxeebuyxk` int DEFAULT NULL,\n `qdesjcbmovujsrqkoglpfnslyiyvqsoz` int DEFAULT NULL,\n `gpcokwsvmfaqmotpiaiairzeabyzzxon` int DEFAULT NULL,\n `gunvcrmdesefozajwzcfwmlbtlhjiqcf` int DEFAULT NULL,\n `fivuemqgbycdufrkxvebhvotfxgrgioa` int DEFAULT NULL,\n `tfjliienlqjlshvocujzhiqxiclgfsuh` int DEFAULT NULL,\n `tsupqdpbqlyunvqjkdnpsnohnujsquon` int DEFAULT NULL,\n `rzgzleynrpehggxhfaoziwhfmjffoycz` int DEFAULT NULL,\n `ykumrdxzbdlihbibxqjfjtywixpthewr` int DEFAULT NULL,\n `teirgoaggkmilqkxnwxnhftyacafgraq` int DEFAULT NULL,\n `ivhpkxursjcuztromvbxkwkgiomxaigi` int DEFAULT NULL,\n `enkjnuoqoywhcxxaayetwlrpkatwabkj` int DEFAULT NULL,\n `viwspnotrfokzptpbmwnvdkcvzkzmwsn` int DEFAULT NULL,\n `aobbmrpsyiedqrdiofrprfisrvcnkdeu` int DEFAULT NULL,\n `whgjdszemfvnisqobqjviibooyptouiv` int DEFAULT NULL,\n `sshktyxudsqpftaktrxpkeqfqsdlxmlq` int DEFAULT NULL,\n `eomezqepjgxhrnjaqvptzxjgcrxzyqja` int DEFAULT NULL,\n `aewlkqkeizgbytizzmttgepnroneques` int DEFAULT NULL,\n `viijhbdnqxqrblableckfahbxdpkxddt` int DEFAULT NULL,\n `hvizzqcewzuotsrclmnvwwftqynamjhw` int DEFAULT NULL,\n PRIMARY KEY (`kjnlgikpovwkqnkzocdzewhdovkkhjcx`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"zomwihdblysidiflhkqodbripxteqsje\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["kjnlgikpovwkqnkzocdzewhdovkkhjcx"],"columns":[{"name":"kjnlgikpovwkqnkzocdzewhdovkkhjcx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"byhuzlgnwufookhwkmtyrevzgbnyshgo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zonwfhxslizwagenrcnxfkydrgbudjfc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ytaubiagvjfgqaljdhukitslogfclgia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hxxxpbagmscnimutyxjfvgflibphptfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ysrnmultlulyqiclyokxpxrglhmaompa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fchfnfhnbuplmqvbubvymzbquttymfha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"psbezmdfisyznxtfluqyeatatwpuscmo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnspxwyrtcxftobyyzxkjkhnzhbezrkl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aiahbuicuprcwkcgjsqjkgbjuaekefdd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afllirgoepalikcyjwinzbbftmufjjvm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ujzckfhctxqbxkduvfrajqfbdurfwunj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dltjrmrtaqioiweyemweylvbjiohtggj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tdyvpmenffpbyxysgkcrrptqhgzimion","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iajqvojcdhuomcozrmzmbxxxoqcptplc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pyhohklwkhmaxvmmlihmavsvlmpvzwjt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"goqqmrpfxmjztlcwtvocoqivobunycpp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"atlxwuqcghecizirdmilwbuoqoxbnvew","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yjqtiadxxwhagefiwdlxisdybyjrtyfk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tycnsrumbhtclskgyyhntobckexbjmjn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hhlhakvjsvlqjwjrkoczenxsneecopxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vovwxennxyuygwolrmgkzdsykpfmwdtd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zxzoaeynztastnjailmqjvdjhbcghzwr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rxuaqwrejeabkqwlegwnalifktifvnsk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pfnebbbfehxpxqrfxhrquklfberhvqts","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skvykqhslottedonxaqtxesnfdrbbvej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"epthxsrdphbarucwbsjvvtecakmzlptu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmfxrvhfsqbbiiyeltrlaqkloxzpvjzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kqtytjbpskaifeiwmgjhbdkxhutjufyh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vedeozibwnsigdwgizyjfextznmjhruk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kkphugjgxvqihvifrlepbmrihsdwqwyk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfymhydfjnzzrinmrgwwyuxufteuxzjg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bdwylzmyrpkfikxprjythbbfhkfpzqzo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nirntjvitxoyqyblxkgbceodmpaapukx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggbkynwqnvyxtftxhcblszhqqrhygtfn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bijcnuwrsrkwvgcdgizscrmkkxfpfzht","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wvpyyoplobxqkhsmeppqeobcurysmaok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gwzqpuwrovxvqimfyyvnxhsjptuscuvk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iyfgdjefbxncgfnqndgzonggrisfmtin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxhyxeysgptjiqaatrpqnymidaioiooq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwbemgkfadafylqceqpckcmzchcpsxow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnrolaqmcamoapwfqpjcifdwupaumspj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lbbtcccsudyukdvpmiotiewcejpwemvx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"odkqjnkdosxnjjudgfcjcmnsmedpydnh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cifzebfmqtymihomeakkayhyvegzvcnu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cestnezmfphmsvsubftsotlvxglkfpqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cbkdgyjipxniyccxgoolshwvwxjpyzaz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wbaowyslkkxtbsqafaswgdoniqeoukim","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxjqpesoaudukhtyoxlenvqijnxzqvyx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqamkjusfmnncziqfauigsmkocynicdm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qasqymyephmsrzpmxpztfiyydvnycqzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xgaocghdkcruzipajbpwelznjftlgnut","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qwwjqiqiiiqeqiqjlonqexsamigtoddw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tozutjtetdbuynrtpsoellnyszgxwyik","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"syzqwamtrjdhgawwiylnjuoefbaffitb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zeqmnbudqvfdmbfrukoeqjyomxmgtofi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hrgxypwemzruekjhlbykbkpdtkvtjoau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bnugvetjgdrusulgivnmsiqmwzpztuzh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xeiyawvfelarmtsxulgpffjwxqyvelhx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xfvunplkgkmiggyopqtxadlobptokgqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edrvvvxkstrrpynwmbucsvtxfihzcflt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yemlljfpybnnlzgoyquccqsgrtqmrfjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skkrktvrukrawhsrdzmvpyniapyqcniw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ymfdycuncfwyeshmptrxhyftckntegbg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oraffxmnhxvanohrplovcoyumceicywb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhzddhxucjntuhtszeqfqhcxckrjbcxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cpxkkxwzjjdwqotvdriqagnkszkryegi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"deqtaivxjmomzojsloalxmfdkkesgfqk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dkbbqsiwjocrhwjionyjubaiujdxbxdu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntzjqhuwuxstncddwmpzrcmpesbldimd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wiwsfzoayoqiaprsjpmcjfpftceoccwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dbhtpcsaclqojciyjhumlnpzvovbfmbd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rfhnnopijzssnmqcfzvxrvcoirqafdco","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fmipjunhocoswopqixkyhnpdyrjigsxp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jglcdupkehmpgwvoglkllplnfjrbxrbj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fclwlpicjmckuehmbecjhotqwskmrxxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixjeemtsvwroldefpwtegpsjbfxazrhy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xgzgmtwwcawwflvzirsbaicqbkqaoaci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aafaprvvxuswjavgpwyhtfcfqugzimbt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dvzsxspbrvxcjgwmfkxynjtwuqjvezcp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wxjinfdvapcbcjskqmvvezeyxeebuyxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qdesjcbmovujsrqkoglpfnslyiyvqsoz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gpcokwsvmfaqmotpiaiairzeabyzzxon","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gunvcrmdesefozajwzcfwmlbtlhjiqcf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fivuemqgbycdufrkxvebhvotfxgrgioa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tfjliienlqjlshvocujzhiqxiclgfsuh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tsupqdpbqlyunvqjkdnpsnohnujsquon","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rzgzleynrpehggxhfaoziwhfmjffoycz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ykumrdxzbdlihbibxqjfjtywixpthewr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"teirgoaggkmilqkxnwxnhftyacafgraq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ivhpkxursjcuztromvbxkwkgiomxaigi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"enkjnuoqoywhcxxaayetwlrpkatwabkj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"viwspnotrfokzptpbmwnvdkcvzkzmwsn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aobbmrpsyiedqrdiofrprfisrvcnkdeu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"whgjdszemfvnisqobqjviibooyptouiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sshktyxudsqpftaktrxpkeqfqsdlxmlq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eomezqepjgxhrnjaqvptzxjgcrxzyqja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aewlkqkeizgbytizzmttgepnroneques","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"viijhbdnqxqrblableckfahbxdpkxddt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hvizzqcewzuotsrclmnvwwftqynamjhw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842673,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842673182,"databaseName":"models_schema","ddl":"CREATE TABLE `zrjhsxwmexkwyntdmqgzgaxcjzqahncz` (\n `ngjtlhadnjojrphyvxhzifevgnmbavzx` int NOT NULL,\n `dxlmojkgtnpzukcrobbevddplqpmaejo` int DEFAULT NULL,\n `qfsekmflpsgrrrwxmmsbsepayeejsafq` int DEFAULT NULL,\n `gayypdaoqfgbcefpxbludpuijaeeuopq` int DEFAULT NULL,\n `jydkzapndeosyxcknjlsnzxikiaimyhp` int DEFAULT NULL,\n `pfmzolskqnnrmdgbfqdjmgbqcjuncjdb` int DEFAULT NULL,\n `ukvivzzacmzvvamfbomxlputxsqfvobo` int DEFAULT NULL,\n `pttoixqyshoeqfsnjkpwxepntsxwschl` int DEFAULT NULL,\n `lwrfrrqfsaebcybltkvceummlgksffys` int DEFAULT NULL,\n `lbyhizdmgaghmflgchwzrsgrjxabdmkq` int DEFAULT NULL,\n `pdnsrxveagqubxxrcxxcfhrekjbogcum` int DEFAULT NULL,\n `lfjhrzzinqlpbtlhlojqlrsbnfucmjvl` int DEFAULT NULL,\n `qmgqmabfurnwwdqxobhnnjrnawunbuwz` int DEFAULT NULL,\n `lszsytlutraumtmwzacjwsgbxobhrris` int DEFAULT NULL,\n `fqnmlxscvremypzmszrklqcnqhwdgjjh` int DEFAULT NULL,\n `xxdzbmisakatqzqpozzzfatycbhslhtb` int DEFAULT NULL,\n `drkguhvrsrmuqexdwuuogodvciguynqp` int DEFAULT NULL,\n `smzslrdiyrefhkvggqbgwgjtldfwdsnj` int DEFAULT NULL,\n `xpmmfmbkukxjvrnrakjvthvubmcpeylg` int DEFAULT NULL,\n `avlqnhspbnyrcpmmkfptnjxwfhkwnjoj` int DEFAULT NULL,\n `sanxgjqfbrvikfthhzwuzmkvkoeccsvs` int DEFAULT NULL,\n `fskwvpubnntasqjoyhkyaoazogmcwxdl` int DEFAULT NULL,\n `zqtzowpakjlzazdvirvpahsekywwyaai` int DEFAULT NULL,\n `tnembildewywrwvmtivjstrzgifsegka` int DEFAULT NULL,\n `yeplqicogsdiwbtbsigirqakzbjixoiv` int DEFAULT NULL,\n `qtpevrrlfvpymzclbxmllwptoetdicvd` int DEFAULT NULL,\n `uxhaalyaykhcarfplytppihgvxvrlvhk` int DEFAULT NULL,\n `togzwaixlktmpurwalgxfccnolwthwvy` int DEFAULT NULL,\n `gihcjkynutedtorruphzkgroguwoxrov` int DEFAULT NULL,\n `dqxrljixlstkrasvhgsfauxoecmfifia` int DEFAULT NULL,\n `eccbawzucejsdietzhkptnffbqxgdyuy` int DEFAULT NULL,\n `wvnxphbnxkgnfdxihtugetpkeazacbqn` int DEFAULT NULL,\n `vtdokgxmxkvcpxascvhnqlqutdpmxxhr` int DEFAULT NULL,\n `rihgjengisatxexysgscbtcihircavuc` int DEFAULT NULL,\n `yfccnnksaydkdndfnupvtdqeuepagvce` int DEFAULT NULL,\n `pyrgmcjfbfqatjemmobzmnuginyybmym` int DEFAULT NULL,\n `vgpfixifkaaqxryziokrsvbxqedfdlup` int DEFAULT NULL,\n `szzzsyszrtjsirmgbslvtefxrdepzett` int DEFAULT NULL,\n `szrllqkvmhxcsxsdvktdksgxghfxisxj` int DEFAULT NULL,\n `vkdszenimiimktsekphtzmspxlnhgzwa` int DEFAULT NULL,\n `heyubmjhydclottdirdkfkgzmreuoaob` int DEFAULT NULL,\n `sioibictbscoazpmeyvxsfalqgcxvlgw` int DEFAULT NULL,\n `rdsuqejghlycvclbphzmkctypcimqzdv` int DEFAULT NULL,\n `jbexrpoxovrqkgqhxagjvnmpaqmtgfiu` int DEFAULT NULL,\n `msdrvxdcvtjrjyiwwymyupncshoyzfui` int DEFAULT NULL,\n `bxzgjodahohwwaggffevxdhicjpsenlc` int DEFAULT NULL,\n `qvfhajuikhsxoheuuiuviyamhwvnbcyj` int DEFAULT NULL,\n `knjykvvbmxwbkyjqhxyvhxekqeburhxl` int DEFAULT NULL,\n `luefpkorhmercqtqxzumkyxewcvdgros` int DEFAULT NULL,\n `mlpwwkifqbhizhuutwyauserbvrjhciq` int DEFAULT NULL,\n `aayjprmdrrhdwjphzeelohdgpkexiuud` int DEFAULT NULL,\n `mnfvsibogdcxugbadjzcxzqpkoczaofm` int DEFAULT NULL,\n `dknkqfydzaosiqfuuxwewylamxxxhpci` int DEFAULT NULL,\n `amrvbuispugrfxspbnffkcbjtvcwcbvi` int DEFAULT NULL,\n `ntadevpbkmjrgglrijabqajqwuppxlig` int DEFAULT NULL,\n `unabjokjujnqsmvtryjpxivxzgkbppny` int DEFAULT NULL,\n `ffxvgkugrhvkhyyaayzylnxznamurbfg` int DEFAULT NULL,\n `orgwnccmqilksewncqgeozkribqfaumu` int DEFAULT NULL,\n `eyjqhyfmoppijtvlcbbhjphgfnzxhqas` int DEFAULT NULL,\n `vxrpvylbpzigvyiyozafpzscpszsdlsg` int DEFAULT NULL,\n `whyfrvyfazogfajoqxolplzlibvhbbub` int DEFAULT NULL,\n `zvraouqvhygttyfdmxrqdxrrerqmlqxz` int DEFAULT NULL,\n `vxrewugestedajexctlwmdgupebxieoc` int DEFAULT NULL,\n `cuokhvbiexcoorittimgwurmopaxqhpt` int DEFAULT NULL,\n `vcbogezzpgkumorhfuqltuvwatwaekpk` int DEFAULT NULL,\n `vsmtrofjresifmoacuuvnzwltsubkrbe` int DEFAULT NULL,\n `bbtonwlkxjcvcasjptietgphgzmweift` int DEFAULT NULL,\n `idxrwmbmvtnogvjckgrlqcmsmntwlpvk` int DEFAULT NULL,\n `zyuuulcaqxichlsldkfmjybbxoiebdcj` int DEFAULT NULL,\n `txhihuzextbwplifrqlsrhqlezoafmtu` int DEFAULT NULL,\n `vvpywzshgmthwqzqrvhzrermuutjtkip` int DEFAULT NULL,\n `jkhlcaxkqrbwqvdroytjqlvkbfkleuqu` int DEFAULT NULL,\n `gsbkqhrvqugakxbtndqcgzzfgoexozsy` int DEFAULT NULL,\n `ehezlllesnwabczhoxmsjlfivjevuoam` int DEFAULT NULL,\n `wprqdhxtdxcfcmmjavsxtqwnaefochlg` int DEFAULT NULL,\n `hdznfnbsyplymbdpdnrnfhchyqzdmoxn` int DEFAULT NULL,\n `wudqpdsgscqyppzohenqwtbauglppdtp` int DEFAULT NULL,\n `aqsdyazwvzgxunfsrizbuoxurbabeuus` int DEFAULT NULL,\n `gkgphkfuwaebmlzrsvflhdlloidualzw` int DEFAULT NULL,\n `qtbhvhpnogwpodivufpwwabpvcxwyrzp` int DEFAULT NULL,\n `blitubckmikspvqxqjzkdsbbscwwsxvg` int DEFAULT NULL,\n `nvzytwwdjxbhhqtwsaiaokhsfqqxzgng` int DEFAULT NULL,\n `cscbokkyufwzvcjdmtogslutbwyxojdh` int DEFAULT NULL,\n `useogmquznrsoiqbclnlxuzzcbieeokd` int DEFAULT NULL,\n `vdqqqzzwjbucrsdpnrvhotfbqceklvgr` int DEFAULT NULL,\n `gvsewgqrauhoklawbfxfiwyvktrgiayy` int DEFAULT NULL,\n `wwtkujmcmakqapydgkfjujeirmdcyexs` int DEFAULT NULL,\n `pprwbltkfqaruhuqxqshcwlwqkufibok` int DEFAULT NULL,\n `uasyigiifhlxknwdpkfzhebbpqhfuhtk` int DEFAULT NULL,\n `kphmcxdvpssvnneawsllmdplurbbkrkw` int DEFAULT NULL,\n `dtpdutldjoojjhslrvlgnbcmtocqitcf` int DEFAULT NULL,\n `igcivbwfyjlkvxrfvkikjwztuqpjrxdo` int DEFAULT NULL,\n `yxcbjvpabjtezrkgeoxhuowucnfgnzha` int DEFAULT NULL,\n `pgrfkbqmtqingzkiajkcmowxdqsyqens` int DEFAULT NULL,\n `adjymsocronpheynmgznsublckgkjqfx` int DEFAULT NULL,\n `gpnyrkkidyruolobyecneqojymvtmcpp` int DEFAULT NULL,\n `blktuxlhtfclhazgshvulcopajxkrczr` int DEFAULT NULL,\n `zfaiczzaklegaopfsgezcliuvwdoszcm` int DEFAULT NULL,\n `gcdksobzokwjtfzhhkgbjhayvmpqoydo` int DEFAULT NULL,\n `loywlcvcmgzqquzcwpstuyscfvtgkojt` int DEFAULT NULL,\n PRIMARY KEY (`ngjtlhadnjojrphyvxhzifevgnmbavzx`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"zrjhsxwmexkwyntdmqgzgaxcjzqahncz\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["ngjtlhadnjojrphyvxhzifevgnmbavzx"],"columns":[{"name":"ngjtlhadnjojrphyvxhzifevgnmbavzx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"dxlmojkgtnpzukcrobbevddplqpmaejo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfsekmflpsgrrrwxmmsbsepayeejsafq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gayypdaoqfgbcefpxbludpuijaeeuopq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jydkzapndeosyxcknjlsnzxikiaimyhp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pfmzolskqnnrmdgbfqdjmgbqcjuncjdb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ukvivzzacmzvvamfbomxlputxsqfvobo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pttoixqyshoeqfsnjkpwxepntsxwschl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwrfrrqfsaebcybltkvceummlgksffys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lbyhizdmgaghmflgchwzrsgrjxabdmkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pdnsrxveagqubxxrcxxcfhrekjbogcum","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfjhrzzinqlpbtlhlojqlrsbnfucmjvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qmgqmabfurnwwdqxobhnnjrnawunbuwz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lszsytlutraumtmwzacjwsgbxobhrris","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqnmlxscvremypzmszrklqcnqhwdgjjh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xxdzbmisakatqzqpozzzfatycbhslhtb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drkguhvrsrmuqexdwuuogodvciguynqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smzslrdiyrefhkvggqbgwgjtldfwdsnj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xpmmfmbkukxjvrnrakjvthvubmcpeylg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"avlqnhspbnyrcpmmkfptnjxwfhkwnjoj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sanxgjqfbrvikfthhzwuzmkvkoeccsvs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fskwvpubnntasqjoyhkyaoazogmcwxdl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqtzowpakjlzazdvirvpahsekywwyaai","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tnembildewywrwvmtivjstrzgifsegka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yeplqicogsdiwbtbsigirqakzbjixoiv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtpevrrlfvpymzclbxmllwptoetdicvd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxhaalyaykhcarfplytppihgvxvrlvhk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"togzwaixlktmpurwalgxfccnolwthwvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gihcjkynutedtorruphzkgroguwoxrov","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dqxrljixlstkrasvhgsfauxoecmfifia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eccbawzucejsdietzhkptnffbqxgdyuy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wvnxphbnxkgnfdxihtugetpkeazacbqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vtdokgxmxkvcpxascvhnqlqutdpmxxhr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rihgjengisatxexysgscbtcihircavuc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfccnnksaydkdndfnupvtdqeuepagvce","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pyrgmcjfbfqatjemmobzmnuginyybmym","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgpfixifkaaqxryziokrsvbxqedfdlup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"szzzsyszrtjsirmgbslvtefxrdepzett","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"szrllqkvmhxcsxsdvktdksgxghfxisxj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vkdszenimiimktsekphtzmspxlnhgzwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"heyubmjhydclottdirdkfkgzmreuoaob","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sioibictbscoazpmeyvxsfalqgcxvlgw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rdsuqejghlycvclbphzmkctypcimqzdv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jbexrpoxovrqkgqhxagjvnmpaqmtgfiu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"msdrvxdcvtjrjyiwwymyupncshoyzfui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bxzgjodahohwwaggffevxdhicjpsenlc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qvfhajuikhsxoheuuiuviyamhwvnbcyj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knjykvvbmxwbkyjqhxyvhxekqeburhxl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"luefpkorhmercqtqxzumkyxewcvdgros","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mlpwwkifqbhizhuutwyauserbvrjhciq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aayjprmdrrhdwjphzeelohdgpkexiuud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnfvsibogdcxugbadjzcxzqpkoczaofm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dknkqfydzaosiqfuuxwewylamxxxhpci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"amrvbuispugrfxspbnffkcbjtvcwcbvi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntadevpbkmjrgglrijabqajqwuppxlig","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unabjokjujnqsmvtryjpxivxzgkbppny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffxvgkugrhvkhyyaayzylnxznamurbfg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"orgwnccmqilksewncqgeozkribqfaumu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eyjqhyfmoppijtvlcbbhjphgfnzxhqas","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxrpvylbpzigvyiyozafpzscpszsdlsg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"whyfrvyfazogfajoqxolplzlibvhbbub","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvraouqvhygttyfdmxrqdxrrerqmlqxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vxrewugestedajexctlwmdgupebxieoc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cuokhvbiexcoorittimgwurmopaxqhpt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vcbogezzpgkumorhfuqltuvwatwaekpk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsmtrofjresifmoacuuvnzwltsubkrbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bbtonwlkxjcvcasjptietgphgzmweift","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"idxrwmbmvtnogvjckgrlqcmsmntwlpvk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zyuuulcaqxichlsldkfmjybbxoiebdcj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"txhihuzextbwplifrqlsrhqlezoafmtu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vvpywzshgmthwqzqrvhzrermuutjtkip","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jkhlcaxkqrbwqvdroytjqlvkbfkleuqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gsbkqhrvqugakxbtndqcgzzfgoexozsy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ehezlllesnwabczhoxmsjlfivjevuoam","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wprqdhxtdxcfcmmjavsxtqwnaefochlg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdznfnbsyplymbdpdnrnfhchyqzdmoxn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wudqpdsgscqyppzohenqwtbauglppdtp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqsdyazwvzgxunfsrizbuoxurbabeuus","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkgphkfuwaebmlzrsvflhdlloidualzw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtbhvhpnogwpodivufpwwabpvcxwyrzp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blitubckmikspvqxqjzkdsbbscwwsxvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nvzytwwdjxbhhqtwsaiaokhsfqqxzgng","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cscbokkyufwzvcjdmtogslutbwyxojdh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"useogmquznrsoiqbclnlxuzzcbieeokd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdqqqzzwjbucrsdpnrvhotfbqceklvgr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gvsewgqrauhoklawbfxfiwyvktrgiayy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wwtkujmcmakqapydgkfjujeirmdcyexs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pprwbltkfqaruhuqxqshcwlwqkufibok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uasyigiifhlxknwdpkfzhebbpqhfuhtk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kphmcxdvpssvnneawsllmdplurbbkrkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dtpdutldjoojjhslrvlgnbcmtocqitcf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igcivbwfyjlkvxrfvkikjwztuqpjrxdo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxcbjvpabjtezrkgeoxhuowucnfgnzha","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgrfkbqmtqingzkiajkcmowxdqsyqens","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"adjymsocronpheynmgznsublckgkjqfx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gpnyrkkidyruolobyecneqojymvtmcpp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"blktuxlhtfclhazgshvulcopajxkrczr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zfaiczzaklegaopfsgezcliuvwdoszcm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gcdksobzokwjtfzhhkgbjhayvmpqoydo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"loywlcvcmgzqquzcwpstuyscfvtgkojt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842673,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842673214,"databaseName":"models_schema","ddl":"CREATE TABLE `zrpahurtunmdbumraxjhiqvfumrdlnjn` (\n `roxanjtnahjmktgfcehelycoiajqqebq` int NOT NULL,\n `mbaiuflvreyyywvwhtpkaktuwtvtlquo` int DEFAULT NULL,\n `uqnbcscnzwghjiqwjdduoupgogrnhdpm` int DEFAULT NULL,\n `nomefwdkivynrxedjkscjquougyoowiy` int DEFAULT NULL,\n `ffeopoaqgmhufoanrktesycmnndootby` int DEFAULT NULL,\n `ypsqveaaqtvojgblvhsjgoiqkzcirgtl` int DEFAULT NULL,\n `vqvzrvrqfeajbcmoycntevavxgfoddpr` int DEFAULT NULL,\n `liutpvmdieywhegwgvxiejqjugtkempp` int DEFAULT NULL,\n `hxtjhkcyfuqtukgggwzspxanfhquczmu` int DEFAULT NULL,\n `seauomwxamzadjlpddzwgphmcrjjxcjp` int DEFAULT NULL,\n `hvjhnyqxdrvtntphqmmayeurqjroyurm` int DEFAULT NULL,\n `veyrmheajdfawiwevmjgcminxynssynl` int DEFAULT NULL,\n `odcyldrdffypbrjqkucsvtukeftrhoax` int DEFAULT NULL,\n `hxyfrgobjcccqhtqwdvfyrvcuvemqckq` int DEFAULT NULL,\n `ebdofjhynfuimlqtgpoaiyeeghemruor` int DEFAULT NULL,\n `ndrmqrhltyspwcobtfguborgceohaqvk` int DEFAULT NULL,\n `hmvwbmpgjjrhlkejeucubfgobhqufpdv` int DEFAULT NULL,\n `ttfutgtunaqmovartqkdagsiooptcxhy` int DEFAULT NULL,\n `ietreqmscwjbhwdtphzboffqhbobuuqp` int DEFAULT NULL,\n `crlfnkjkpkiypzkgwmtrktqplejvwgnc` int DEFAULT NULL,\n `wyntwydpxldiubmjyuzkedlqdsuwhrqm` int DEFAULT NULL,\n `ncmbkjqdpulwkermwubwsixndltvmxhe` int DEFAULT NULL,\n `wpznenicoazndaretrbkhibjdbmyxevs` int DEFAULT NULL,\n `znmnkrxrzhinkzxldvuofoxqlfqmorsv` int DEFAULT NULL,\n `wfokdvzbpcivyjlilrcvykkmwmvsoyaj` int DEFAULT NULL,\n `gzgntsugaxdkqlvprupovfrgklnqtdbo` int DEFAULT NULL,\n `hzlzlkpfxhsjdtfjqbibanqttbhlyhfd` int DEFAULT NULL,\n `uhlvlmzdbsqqrmiqectxpciorbpazald` int DEFAULT NULL,\n `tvyuerpllzgbdyatxilswzdeqgykghqx` int DEFAULT NULL,\n `ocvkwtlpxfudrzwtsjekglcogqwehwqc` int DEFAULT NULL,\n `vdxlvesrxbvfopnbgawlrjjjhweezwed` int DEFAULT NULL,\n `qfnuljcahwkdgvfgyukcgbyfxlwwqsff` int DEFAULT NULL,\n `pgfutylxrjdegildmiyggzgolbwhdpmw` int DEFAULT NULL,\n `gugqwplhspseaoruanjqvojeptbilost` int DEFAULT NULL,\n `czhgtfehhacaikxvqifrrlmyvcldqfxd` int DEFAULT NULL,\n `wavlvkdzxfduvjifatmqxlbzniirbuqo` int DEFAULT NULL,\n `wnbmkstdieaxfrhuehztlqgsluculwod` int DEFAULT NULL,\n `edbtsgrwkwqgcmiivlyhewxkgaiiqrys` int DEFAULT NULL,\n `pmffwmtwfeamgmkyehwhqzxeaqmzfqlo` int DEFAULT NULL,\n `jdrwddlcazcmqcwjxlcvjkjzogwadaun` int DEFAULT NULL,\n `nhkyxpgxjjaihvadbsvumpjeeekvranr` int DEFAULT NULL,\n `zvvvvsftavllkfjujydvszasuncovxdp` int DEFAULT NULL,\n `wfniisuqmxbjscvqkbszqlkzjdovuzir` int DEFAULT NULL,\n `hiibfncaedfrqsrgtaeqwhdhaaiqxqqs` int DEFAULT NULL,\n `ajlnuzkkzzwtavqojhcvfwihtivatzqu` int DEFAULT NULL,\n `hiatmmhatnbgmixabgpyjokznfgwgpqc` int DEFAULT NULL,\n `bfrukcrqyqvbmxipktqkrxfvxoqeausc` int DEFAULT NULL,\n `ueimfjbrknunzuilmyxhaghnljtukcbf` int DEFAULT NULL,\n `ohnffagzscnfqdfitesbyukbrvtbwomp` int DEFAULT NULL,\n `hjzukdixlcnmjuaaxhkszgylrkenxrwb` int DEFAULT NULL,\n `dxfwlqekdphazezwdestzicfqdyeibco` int DEFAULT NULL,\n `nkgojkidjmtrmdwchxrclosviyykigcu` int DEFAULT NULL,\n `ppzlziccdzegtsaeklblhzndtbkatxug` int DEFAULT NULL,\n `qtdzeaenosmghvguqmeyphwelqfkhtud` int DEFAULT NULL,\n `ilgyvhitkgrikxrfytyqmxfemkgnbegt` int DEFAULT NULL,\n `lhhywwtkyqleyyjjyayaqgwsledzgani` int DEFAULT NULL,\n `hwfzyczbhldvrpycuqnotoyoebetbavj` int DEFAULT NULL,\n `nbphhvpocrdmmdvxzjphwwjuvakptldy` int DEFAULT NULL,\n `upoimkyzcdbvpudgpawwzentguuklrjq` int DEFAULT NULL,\n `whtuieqbeibfdgwftpupnojixrbwroyn` int DEFAULT NULL,\n `awsvyluxzojzzvqbhsuoznhkwabofzvr` int DEFAULT NULL,\n `pafjwrisvkaihnxvizqgukodgreqevbs` int DEFAULT NULL,\n `fbkgkemmjcxupktohvewhwxwhiktfmfh` int DEFAULT NULL,\n `ocjzfdveptybfparybsngvupiavfeoga` int DEFAULT NULL,\n `krakignjkcjtacnzzxdlpnmsalzubowe` int DEFAULT NULL,\n `xdqweirhuoapbeytoowlioylztrevbkq` int DEFAULT NULL,\n `pftjqacwwhditfgdzdguulgxszmlgymz` int DEFAULT NULL,\n `sptkbtzndvthkjzglbiiaxzowvduunwk` int DEFAULT NULL,\n `yzxhxbosvvyxdncobzcbervxrlodwzwm` int DEFAULT NULL,\n `yxtarhzlfhfhzyobpoqjjzvpvdgslors` int DEFAULT NULL,\n `yzqtnekkmoueoxpirxughktqtthdzxxq` int DEFAULT NULL,\n `cdnlofwbyefmgfrmhvpkextxsksslvbi` int DEFAULT NULL,\n `kqkraciroaebbrotygmxwmxkcpndrhze` int DEFAULT NULL,\n `riwmcqlufnhtswdztknxlogwckougoqv` int DEFAULT NULL,\n `lwlwluxiiwsixixusrqiqfmibjtpaqbe` int DEFAULT NULL,\n `uvxwupkabnotbrwsgyoaiekhldaabazp` int DEFAULT NULL,\n `cjolnnjifetajrcveeyhxwdoeecavkvb` int DEFAULT NULL,\n `qhicttemkonovhglvxuadcouvyzasett` int DEFAULT NULL,\n `wuicjozijswcrncanvkbxhlheguiphwq` int DEFAULT NULL,\n `corlidbeeneapjbarkupystzalggauri` int DEFAULT NULL,\n `zlnvrbgggjzkmipllyxdnwjsnlhpajug` int DEFAULT NULL,\n `nxemxvsnytuffvjxwtllbokceqvdiler` int DEFAULT NULL,\n `hnapwuarkzeyfwbjxduvvvirgiuqasbe` int DEFAULT NULL,\n `sajkhdwfcjjkelwdazngiclmlovmhcvc` int DEFAULT NULL,\n `zoggxjmnqallzqfykesrpmrwxoilfkow` int DEFAULT NULL,\n `frqjcezhhftysoxiynzvwltwdmzztcpc` int DEFAULT NULL,\n `kiaitasfwwjbxoifrgmbxcpnwzejhwtn` int DEFAULT NULL,\n `zyklwscbeuefmbgfivpcydeqocrhgkvs` int DEFAULT NULL,\n `yyultlzifxrdhufnzvypjdzpzmlwblla` int DEFAULT NULL,\n `rlthasgfmixuyrsqodxpviutejmisrzu` int DEFAULT NULL,\n `qocitaaixjyqhtflgficbmuitfdxewue` int DEFAULT NULL,\n `jfmfknowjepwhehpobjywyzlohomlxcp` int DEFAULT NULL,\n `obtdsbpjlnkximzwsteqgzlehqkdpbeg` int DEFAULT NULL,\n `hjzkrdjlkcjnqerrougmuqaozzxcifgp` int DEFAULT NULL,\n `frpuayvbzrxjgypkorgaztnyjgyvtnhn` int DEFAULT NULL,\n `mnfvhuifklwyasfttakyiwtwgogntaui` int DEFAULT NULL,\n `hoiubrtzoxfkacjvrqvtezycgoevcdko` int DEFAULT NULL,\n `sumffyiqkzjcvleeaiptzpmgmxrfbomf` int DEFAULT NULL,\n `qlwmiinawbhswacwpqqdwfueypxapzna` int DEFAULT NULL,\n `wmypcogelquatnowlvrbktgibcqslpbr` int DEFAULT NULL,\n PRIMARY KEY (`roxanjtnahjmktgfcehelycoiajqqebq`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"zrpahurtunmdbumraxjhiqvfumrdlnjn\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["roxanjtnahjmktgfcehelycoiajqqebq"],"columns":[{"name":"roxanjtnahjmktgfcehelycoiajqqebq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"mbaiuflvreyyywvwhtpkaktuwtvtlquo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uqnbcscnzwghjiqwjdduoupgogrnhdpm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nomefwdkivynrxedjkscjquougyoowiy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffeopoaqgmhufoanrktesycmnndootby","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypsqveaaqtvojgblvhsjgoiqkzcirgtl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqvzrvrqfeajbcmoycntevavxgfoddpr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"liutpvmdieywhegwgvxiejqjugtkempp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hxtjhkcyfuqtukgggwzspxanfhquczmu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"seauomwxamzadjlpddzwgphmcrjjxcjp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hvjhnyqxdrvtntphqmmayeurqjroyurm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"veyrmheajdfawiwevmjgcminxynssynl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"odcyldrdffypbrjqkucsvtukeftrhoax","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hxyfrgobjcccqhtqwdvfyrvcuvemqckq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ebdofjhynfuimlqtgpoaiyeeghemruor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ndrmqrhltyspwcobtfguborgceohaqvk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmvwbmpgjjrhlkejeucubfgobhqufpdv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ttfutgtunaqmovartqkdagsiooptcxhy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ietreqmscwjbhwdtphzboffqhbobuuqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"crlfnkjkpkiypzkgwmtrktqplejvwgnc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wyntwydpxldiubmjyuzkedlqdsuwhrqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ncmbkjqdpulwkermwubwsixndltvmxhe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wpznenicoazndaretrbkhibjdbmyxevs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"znmnkrxrzhinkzxldvuofoxqlfqmorsv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfokdvzbpcivyjlilrcvykkmwmvsoyaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gzgntsugaxdkqlvprupovfrgklnqtdbo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hzlzlkpfxhsjdtfjqbibanqttbhlyhfd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhlvlmzdbsqqrmiqectxpciorbpazald","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tvyuerpllzgbdyatxilswzdeqgykghqx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocvkwtlpxfudrzwtsjekglcogqwehwqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdxlvesrxbvfopnbgawlrjjjhweezwed","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qfnuljcahwkdgvfgyukcgbyfxlwwqsff","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pgfutylxrjdegildmiyggzgolbwhdpmw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gugqwplhspseaoruanjqvojeptbilost","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"czhgtfehhacaikxvqifrrlmyvcldqfxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wavlvkdzxfduvjifatmqxlbzniirbuqo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wnbmkstdieaxfrhuehztlqgsluculwod","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edbtsgrwkwqgcmiivlyhewxkgaiiqrys","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pmffwmtwfeamgmkyehwhqzxeaqmzfqlo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdrwddlcazcmqcwjxlcvjkjzogwadaun","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nhkyxpgxjjaihvadbsvumpjeeekvranr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvvvvsftavllkfjujydvszasuncovxdp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wfniisuqmxbjscvqkbszqlkzjdovuzir","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hiibfncaedfrqsrgtaeqwhdhaaiqxqqs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ajlnuzkkzzwtavqojhcvfwihtivatzqu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hiatmmhatnbgmixabgpyjokznfgwgpqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bfrukcrqyqvbmxipktqkrxfvxoqeausc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ueimfjbrknunzuilmyxhaghnljtukcbf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohnffagzscnfqdfitesbyukbrvtbwomp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjzukdixlcnmjuaaxhkszgylrkenxrwb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxfwlqekdphazezwdestzicfqdyeibco","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nkgojkidjmtrmdwchxrclosviyykigcu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ppzlziccdzegtsaeklblhzndtbkatxug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qtdzeaenosmghvguqmeyphwelqfkhtud","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ilgyvhitkgrikxrfytyqmxfemkgnbegt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lhhywwtkyqleyyjjyayaqgwsledzgani","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hwfzyczbhldvrpycuqnotoyoebetbavj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbphhvpocrdmmdvxzjphwwjuvakptldy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"upoimkyzcdbvpudgpawwzentguuklrjq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"whtuieqbeibfdgwftpupnojixrbwroyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"awsvyluxzojzzvqbhsuoznhkwabofzvr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pafjwrisvkaihnxvizqgukodgreqevbs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fbkgkemmjcxupktohvewhwxwhiktfmfh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ocjzfdveptybfparybsngvupiavfeoga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"krakignjkcjtacnzzxdlpnmsalzubowe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xdqweirhuoapbeytoowlioylztrevbkq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pftjqacwwhditfgdzdguulgxszmlgymz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sptkbtzndvthkjzglbiiaxzowvduunwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzxhxbosvvyxdncobzcbervxrlodwzwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxtarhzlfhfhzyobpoqjjzvpvdgslors","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yzqtnekkmoueoxpirxughktqtthdzxxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cdnlofwbyefmgfrmhvpkextxsksslvbi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kqkraciroaebbrotygmxwmxkcpndrhze","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"riwmcqlufnhtswdztknxlogwckougoqv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwlwluxiiwsixixusrqiqfmibjtpaqbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uvxwupkabnotbrwsgyoaiekhldaabazp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cjolnnjifetajrcveeyhxwdoeecavkvb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qhicttemkonovhglvxuadcouvyzasett","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wuicjozijswcrncanvkbxhlheguiphwq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"corlidbeeneapjbarkupystzalggauri","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zlnvrbgggjzkmipllyxdnwjsnlhpajug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nxemxvsnytuffvjxwtllbokceqvdiler","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hnapwuarkzeyfwbjxduvvvirgiuqasbe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sajkhdwfcjjkelwdazngiclmlovmhcvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zoggxjmnqallzqfykesrpmrwxoilfkow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"frqjcezhhftysoxiynzvwltwdmzztcpc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kiaitasfwwjbxoifrgmbxcpnwzejhwtn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zyklwscbeuefmbgfivpcydeqocrhgkvs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yyultlzifxrdhufnzvypjdzpzmlwblla","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rlthasgfmixuyrsqodxpviutejmisrzu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qocitaaixjyqhtflgficbmuitfdxewue","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jfmfknowjepwhehpobjywyzlohomlxcp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obtdsbpjlnkximzwsteqgzlehqkdpbeg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjzkrdjlkcjnqerrougmuqaozzxcifgp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"frpuayvbzrxjgypkorgaztnyjgyvtnhn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnfvhuifklwyasfttakyiwtwgogntaui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hoiubrtzoxfkacjvrqvtezycgoevcdko","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sumffyiqkzjcvleeaiptzpmgmxrfbomf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qlwmiinawbhswacwpqqdwfueypxapzna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmypcogelquatnowlvrbktgibcqslpbr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842673,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842673245,"databaseName":"models_schema","ddl":"CREATE TABLE `ztpttwzzkgyxsjgpkltayosfjkjwfgok` (\n `sjijcqukjwqtrlepctptghamkgvqlccm` int NOT NULL,\n `ikgcgjgvbjqnscveqxyhqeikwmtpghaa` int DEFAULT NULL,\n `fpyhjdwcmzuggsabjeckrtscmhddjtvp` int DEFAULT NULL,\n `mvjjezpnswfpqlebjcyxfcziplofbjuh` int DEFAULT NULL,\n `mgktzobdmzxlooiudknqprnuleypyuma` int DEFAULT NULL,\n `cjfoaylbssctwzwsrrnvxnlhgzupvthq` int DEFAULT NULL,\n `akzihcollnevtzwhhdkpcdvwbwolhshq` int DEFAULT NULL,\n `kfpnvumgvuoclgmtyqgonvnhaxyuvqok` int DEFAULT NULL,\n `civtzxsqmkljvbgotzokhsrxzvayetxd` int DEFAULT NULL,\n `gcdrbavehknzogtwqjjakgrzszsxgdme` int DEFAULT NULL,\n `ambjhmpyvkcnzilzsbwtdqrrbrrfzubg` int DEFAULT NULL,\n `hlaaeagbwlvoztgjaenqpmxnlapbqlgl` int DEFAULT NULL,\n `optgeetfopshsbecrpebojdrxfifvval` int DEFAULT NULL,\n `axjtwrtqmvkbjojkskxijrfnynagquza` int DEFAULT NULL,\n `cdvkszwopqliftxziibkhpnqtzxmguvl` int DEFAULT NULL,\n `ltijkxfkxlmntizixtwmhtrqaxcyosae` int DEFAULT NULL,\n `fyixelstaxewnbewiymnhcujrdhgizqm` int DEFAULT NULL,\n `fsouugetrnazvhuhafefsriylguwoegs` int DEFAULT NULL,\n `qencallxftqpzdnocjkjuevltlzkpjmb` int DEFAULT NULL,\n `kaytxeifswtjqcxvhnasnmdosyewwnax` int DEFAULT NULL,\n `vjubulxkuhvclnpolchgdwnwtmeauvin` int DEFAULT NULL,\n `saxsjtvbiosqmncrvurbcdsuyhbkhrvc` int DEFAULT NULL,\n `eulvcejwggwyrmfolieovtvcmpqruutj` int DEFAULT NULL,\n `ncgaxogousrsalbwngodvzdiztxladix` int DEFAULT NULL,\n `dwkncjqitggnoqbcwiunyhisiwfsyizc` int DEFAULT NULL,\n `rodlxiofhhngrxczpqeuudmuiafsujav` int DEFAULT NULL,\n `qnpedpmydzrhipcmxodzpfltthgrnfbp` int DEFAULT NULL,\n `skeldnntuftdqhjkdmkzduuepyffyrzj` int DEFAULT NULL,\n `fhoxznryehjrjjdekmputmujhzrxhtvw` int DEFAULT NULL,\n `spaummsredvcfjabslxapmgwaegruwld` int DEFAULT NULL,\n `rrgfnusbbbxprmeknyeevrfomcamnlxx` int DEFAULT NULL,\n `uiveahqsjeypvmdgwgriimozlqispfil` int DEFAULT NULL,\n `ofbjypvfoelyrqxlesaerqchgggtorid` int DEFAULT NULL,\n `zapogdjppgogzkkuhkmexrmmqiimosti` int DEFAULT NULL,\n `iovdhqclbboesfiwufiniyeqrglzfdka` int DEFAULT NULL,\n `bvownwrjwxkyxkunefqgpebzbindhmru` int DEFAULT NULL,\n `eqfafezkfacfjjdrcrxwxvlpnkyxolau` int DEFAULT NULL,\n `dosedpizxnuaphotykrlmkvjdrzrvjpx` int DEFAULT NULL,\n `ouriduowmaradzpfsuvhawnfppzcqdpm` int DEFAULT NULL,\n `xvkeoxromlfboggugqxheovagrerqylq` int DEFAULT NULL,\n `deawdabhcwxldoraohnoebipzwvispup` int DEFAULT NULL,\n `euftckrumswxoxryrkwhyxqwoqpfbwkp` int DEFAULT NULL,\n `fpmgncknukdkiuyifixnradskwdmonwe` int DEFAULT NULL,\n `aauekcyfxlsprlbpujvpgvpmlootdqoo` int DEFAULT NULL,\n `hociaqkmppboodscxdgnfboozjebatme` int DEFAULT NULL,\n `cwkysagutdylpmvzlnvophdqbxgacqqi` int DEFAULT NULL,\n `ycizeloysnbzbuvadzlhklngpfmkqciu` int DEFAULT NULL,\n `xmcmbfclrkwcqdjvcccjywsgahirjudr` int DEFAULT NULL,\n `jmxnaajpptplsmgkgxrxedsmcghkdqit` int DEFAULT NULL,\n `hdkapdjfhwjmclmafnrpdirwbelhifjs` int DEFAULT NULL,\n `saatddjbvgzcmvnygcxnztkikkqnsaqt` int DEFAULT NULL,\n `dgbikmhfwyisikqhkaueqedmvcofozht` int DEFAULT NULL,\n `csdcazpngkgliqsmwteirqxdspwquibf` int DEFAULT NULL,\n `egielinbeksjfpghpymjsogikokfygor` int DEFAULT NULL,\n `ihqqwqvblsfdbexxflieockqilgspgod` int DEFAULT NULL,\n `eaxoajppthldjqjpmgltpojgslncrbyt` int DEFAULT NULL,\n `xsnbqiayjgkppahxvjkuzzyyrzfimdvg` int DEFAULT NULL,\n `bibzdfekbcofkufytmkcxxccnhjtajpn` int DEFAULT NULL,\n `wyjwvlthesogbvgkejiklqpgejckkkmt` int DEFAULT NULL,\n `oukhrsxwkpsoqzoqvanwdqemjptihrqp` int DEFAULT NULL,\n `mzomrzxlzpihjkxqkcysozkmfbhzikyj` int DEFAULT NULL,\n `sglugvdcrelqzafpjssvxkaqeelfijeq` int DEFAULT NULL,\n `fgmcztvzzdezajplrvqfnktdxzgznske` int DEFAULT NULL,\n `umozqlpumuovckrfslrrjrbtxgqbvybh` int DEFAULT NULL,\n `jlaqqaozvcfvtxbrihfsusutrlpdsltt` int DEFAULT NULL,\n `rrtxvcatknebycxrurhdormotujsbzrl` int DEFAULT NULL,\n `jcmfrwijodqgufmyqgvsotliynjrqxna` int DEFAULT NULL,\n `zieahgnvmnmxczurdbcbfiphndueapqn` int DEFAULT NULL,\n `kblugegsoagcfypxekvrekmsphslvyur` int DEFAULT NULL,\n `epvahmlsraixblgzmnxkaqkanytcebcw` int DEFAULT NULL,\n `hohvihabkztplmqvhstxnqfvgvhpclht` int DEFAULT NULL,\n `ewlumzmaiosytnmyzkezqzstlqtxqzgb` int DEFAULT NULL,\n `yhiwmxcepbocezfyfoxxosjzfplcvfqg` int DEFAULT NULL,\n `eftfmjdwwwxhooafmmqpkjiexsyqfvmg` int DEFAULT NULL,\n `egewgytulumfpuudaunqmhwuoqfufued` int DEFAULT NULL,\n `vjgnmxfzizrjjkeuvtvlypdlcuzpoipr` int DEFAULT NULL,\n `smirnwnsundlvyvacthytmqomtfmilyf` int DEFAULT NULL,\n `cwsuzuarmzpobmqjwnnkqhcrsnrcrgen` int DEFAULT NULL,\n `lkntwprtmcwyenvpakzcudrptqlcuhry` int DEFAULT NULL,\n `gggyogynmjyuefgeobmlubsrodgyefsz` int DEFAULT NULL,\n `iiobqdwjdtfjsfeqlrkeglhgkosxyhbw` int DEFAULT NULL,\n `ieeseangssdqizmxnamgvjcfiozylzca` int DEFAULT NULL,\n `ecdnfyngypvlizdfvwhbwkymbaysvcvh` int DEFAULT NULL,\n `nuefojivfemmtmkfaabmfblebpfngmho` int DEFAULT NULL,\n `ylvfecpkefmvmpdezbxmkrkzuqumgknp` int DEFAULT NULL,\n `vpsjpwnbtccuxulywbsdglbzggruxwzs` int DEFAULT NULL,\n `qjwnhqyldbultquqrgaxeikslooxhbxs` int DEFAULT NULL,\n `dxgvfhzjpskfpucrxfowrzygqffsmioo` int DEFAULT NULL,\n `wyjbdoyjlbmardgnkavtuuzpfhkdmpgs` int DEFAULT NULL,\n `vcvlwxdlncciihyqnnhyvkzewjybuert` int DEFAULT NULL,\n `smsowyazoslcipjvmilfaahxupzelejr` int DEFAULT NULL,\n `xaqplfwhzkxsicusgbwfnpaamdqtiftb` int DEFAULT NULL,\n `jdwalkjxzrwuhdwtnmbrqreyqlauptgt` int DEFAULT NULL,\n `taonfhvstqsevbfjqoroxfqolyjjaqtm` int DEFAULT NULL,\n `talogfzffepmlnsdvacdsmnkfnwwkodm` int DEFAULT NULL,\n `cvtcijensexoloidkkohgcedzoijjuia` int DEFAULT NULL,\n `lzbfzksaqqyzfwszjsopemvlkxwaelcq` int DEFAULT NULL,\n `cexbcbvwiubqjalmnaqchchfubhoisjq` int DEFAULT NULL,\n `wcmyqgtukocitnfvtiomcthbklbpuled` int DEFAULT NULL,\n `msbmxbpfqttdaglvzasswxijclitdscq` int DEFAULT NULL,\n PRIMARY KEY (`sjijcqukjwqtrlepctptghamkgvqlccm`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"ztpttwzzkgyxsjgpkltayosfjkjwfgok\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["sjijcqukjwqtrlepctptghamkgvqlccm"],"columns":[{"name":"sjijcqukjwqtrlepctptghamkgvqlccm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"ikgcgjgvbjqnscveqxyhqeikwmtpghaa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpyhjdwcmzuggsabjeckrtscmhddjtvp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvjjezpnswfpqlebjcyxfcziplofbjuh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mgktzobdmzxlooiudknqprnuleypyuma","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cjfoaylbssctwzwsrrnvxnlhgzupvthq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akzihcollnevtzwhhdkpcdvwbwolhshq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kfpnvumgvuoclgmtyqgonvnhaxyuvqok","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"civtzxsqmkljvbgotzokhsrxzvayetxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gcdrbavehknzogtwqjjakgrzszsxgdme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ambjhmpyvkcnzilzsbwtdqrrbrrfzubg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hlaaeagbwlvoztgjaenqpmxnlapbqlgl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"optgeetfopshsbecrpebojdrxfifvval","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axjtwrtqmvkbjojkskxijrfnynagquza","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cdvkszwopqliftxziibkhpnqtzxmguvl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ltijkxfkxlmntizixtwmhtrqaxcyosae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fyixelstaxewnbewiymnhcujrdhgizqm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fsouugetrnazvhuhafefsriylguwoegs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qencallxftqpzdnocjkjuevltlzkpjmb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kaytxeifswtjqcxvhnasnmdosyewwnax","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjubulxkuhvclnpolchgdwnwtmeauvin","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"saxsjtvbiosqmncrvurbcdsuyhbkhrvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eulvcejwggwyrmfolieovtvcmpqruutj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ncgaxogousrsalbwngodvzdiztxladix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwkncjqitggnoqbcwiunyhisiwfsyizc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rodlxiofhhngrxczpqeuudmuiafsujav","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qnpedpmydzrhipcmxodzpfltthgrnfbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"skeldnntuftdqhjkdmkzduuepyffyrzj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhoxznryehjrjjdekmputmujhzrxhtvw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"spaummsredvcfjabslxapmgwaegruwld","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrgfnusbbbxprmeknyeevrfomcamnlxx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uiveahqsjeypvmdgwgriimozlqispfil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ofbjypvfoelyrqxlesaerqchgggtorid","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zapogdjppgogzkkuhkmexrmmqiimosti","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iovdhqclbboesfiwufiniyeqrglzfdka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bvownwrjwxkyxkunefqgpebzbindhmru","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eqfafezkfacfjjdrcrxwxvlpnkyxolau","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dosedpizxnuaphotykrlmkvjdrzrvjpx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ouriduowmaradzpfsuvhawnfppzcqdpm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xvkeoxromlfboggugqxheovagrerqylq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"deawdabhcwxldoraohnoebipzwvispup","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"euftckrumswxoxryrkwhyxqwoqpfbwkp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fpmgncknukdkiuyifixnradskwdmonwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aauekcyfxlsprlbpujvpgvpmlootdqoo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hociaqkmppboodscxdgnfboozjebatme","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwkysagutdylpmvzlnvophdqbxgacqqi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ycizeloysnbzbuvadzlhklngpfmkqciu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xmcmbfclrkwcqdjvcccjywsgahirjudr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jmxnaajpptplsmgkgxrxedsmcghkdqit","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hdkapdjfhwjmclmafnrpdirwbelhifjs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"saatddjbvgzcmvnygcxnztkikkqnsaqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dgbikmhfwyisikqhkaueqedmvcofozht","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"csdcazpngkgliqsmwteirqxdspwquibf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"egielinbeksjfpghpymjsogikokfygor","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ihqqwqvblsfdbexxflieockqilgspgod","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eaxoajppthldjqjpmgltpojgslncrbyt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsnbqiayjgkppahxvjkuzzyyrzfimdvg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bibzdfekbcofkufytmkcxxccnhjtajpn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wyjwvlthesogbvgkejiklqpgejckkkmt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oukhrsxwkpsoqzoqvanwdqemjptihrqp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzomrzxlzpihjkxqkcysozkmfbhzikyj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sglugvdcrelqzafpjssvxkaqeelfijeq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fgmcztvzzdezajplrvqfnktdxzgznske","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"umozqlpumuovckrfslrrjrbtxgqbvybh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlaqqaozvcfvtxbrihfsusutrlpdsltt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rrtxvcatknebycxrurhdormotujsbzrl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jcmfrwijodqgufmyqgvsotliynjrqxna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zieahgnvmnmxczurdbcbfiphndueapqn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kblugegsoagcfypxekvrekmsphslvyur","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"epvahmlsraixblgzmnxkaqkanytcebcw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hohvihabkztplmqvhstxnqfvgvhpclht","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ewlumzmaiosytnmyzkezqzstlqtxqzgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yhiwmxcepbocezfyfoxxosjzfplcvfqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"eftfmjdwwwxhooafmmqpkjiexsyqfvmg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"egewgytulumfpuudaunqmhwuoqfufued","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjgnmxfzizrjjkeuvtvlypdlcuzpoipr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smirnwnsundlvyvacthytmqomtfmilyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cwsuzuarmzpobmqjwnnkqhcrsnrcrgen","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lkntwprtmcwyenvpakzcudrptqlcuhry","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gggyogynmjyuefgeobmlubsrodgyefsz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iiobqdwjdtfjsfeqlrkeglhgkosxyhbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ieeseangssdqizmxnamgvjcfiozylzca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecdnfyngypvlizdfvwhbwkymbaysvcvh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nuefojivfemmtmkfaabmfblebpfngmho","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ylvfecpkefmvmpdezbxmkrkzuqumgknp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vpsjpwnbtccuxulywbsdglbzggruxwzs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjwnhqyldbultquqrgaxeikslooxhbxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxgvfhzjpskfpucrxfowrzygqffsmioo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wyjbdoyjlbmardgnkavtuuzpfhkdmpgs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vcvlwxdlncciihyqnnhyvkzewjybuert","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"smsowyazoslcipjvmilfaahxupzelejr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xaqplfwhzkxsicusgbwfnpaamdqtiftb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jdwalkjxzrwuhdwtnmbrqreyqlauptgt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"taonfhvstqsevbfjqoroxfqolyjjaqtm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"talogfzffepmlnsdvacdsmnkfnwwkodm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cvtcijensexoloidkkohgcedzoijjuia","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lzbfzksaqqyzfwszjsopemvlkxwaelcq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cexbcbvwiubqjalmnaqchchfubhoisjq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wcmyqgtukocitnfvtiomcthbklbpuled","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"msbmxbpfqttdaglvzasswxijclitdscq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842673,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842673276,"databaseName":"models_schema","ddl":"CREATE TABLE `zvizamagjrkoamcwmhgradfhuizonrdx` (\n `tglxgxetqflgsyzersuqhnftbdccfjgm` int NOT NULL,\n `oguzqiyekzbsbmmonbjcypfrnsvsmldk` int DEFAULT NULL,\n `yobqsanjhpnlubgbqmgciopnmigudfpm` int DEFAULT NULL,\n `rtdjvhvufbterstdvttfmtqxdsmkhjcl` int DEFAULT NULL,\n `kbbgjlytoyhrhpjcaaxcnssiohobjrst` int DEFAULT NULL,\n `nqrwdbbfxmdjoehvkpkpbmupvrqfnhqt` int DEFAULT NULL,\n `lbgarzlmpovlmyygjquiyanqnmruqvoz` int DEFAULT NULL,\n `haprigyvhtekbdbsiywruguslpqnzeeo` int DEFAULT NULL,\n `fzjhjjsrqurawdysrzserxgfdwiuvywe` int DEFAULT NULL,\n `rstjkavwouazikbmfoedtdefcwbxkhtc` int DEFAULT NULL,\n `lfdwyjmdoqbcmzuayruczkicoeevbcii` int DEFAULT NULL,\n `vcligyprasbrovrycqhnysiaxwbsttur` int DEFAULT NULL,\n `kgbjmtyqekofbqinxeegmvysvdgxxrff` int DEFAULT NULL,\n `kbnrqfueyidbjdhnxzjjlxmipbkwwqex` int DEFAULT NULL,\n `ffmthqibliklwtniqkaroswtzzvxvgev` int DEFAULT NULL,\n `aqhoqzminksfvraukiwtqxbubszxwgsz` int DEFAULT NULL,\n `otzvmwnxcikemhemfjmajhgckjtimtjy` int DEFAULT NULL,\n `hnxrrvobyodrkzogqgvyuhycghrsvzrb` int DEFAULT NULL,\n `dwslnycgbgyeoykdbgcanrsqtkohzzyz` int DEFAULT NULL,\n `cipsxodhklmzfoofwdmpflumclhhtvej` int DEFAULT NULL,\n `wkoddepehgdlbzhuiutedoqpgxpndyfu` int DEFAULT NULL,\n `wacpxybkjylshfxfyragskwjrfraakdm` int DEFAULT NULL,\n `vzqwnogjgnsgsysnfsvpjdjnalttzonh` int DEFAULT NULL,\n `gsebaixlkbvdbrvklesfhuogqhuovpbc` int DEFAULT NULL,\n `yqpnymzyllsmcdfaktubhwihmlskudvy` int DEFAULT NULL,\n `tiwjpiigptdetcghfdstvymdjrvdflry` int DEFAULT NULL,\n `bzjzsapzgexhupfjcfrsbfhbvbffzrnc` int DEFAULT NULL,\n `rihtfzzrfkvymafyqagxedwgpqrofgqb` int DEFAULT NULL,\n `sbgxxizocowzcfvcbgmperkhramoqrqb` int DEFAULT NULL,\n `vfnquxstzkgmvrhymaripjkdspwpsxgp` int DEFAULT NULL,\n `ibfxcfgorvzcqsxaqjiteeamwtiscxxz` int DEFAULT NULL,\n `wmiwlzroboyiaeueetghfqufvrjevkrx` int DEFAULT NULL,\n `oazpswjlztyefevehserojtoocqbxoey` int DEFAULT NULL,\n `acxwpbiivtepuczfpdqzuynrffadoypc` int DEFAULT NULL,\n `sdkccppzrhxgtsimtwbynguyyxmendtg` int DEFAULT NULL,\n `hqfktvsgxvlccxtpbuhxuqkchezosgij` int DEFAULT NULL,\n `susdzemtgeegmdipevsawlvdqapcdukf` int DEFAULT NULL,\n `xnsvjcqdtqtprcxpuowvwzmlvbejuxey` int DEFAULT NULL,\n `liyyecipafvaykwgcphfeiizbdutiqrf` int DEFAULT NULL,\n `edryouorzbbcmlhpcpyfynyadtycpqyo` int DEFAULT NULL,\n `yoaobouxlneilknwzytjwdjaidptoizy` int DEFAULT NULL,\n `lzmwzshqswolvbaiwxivgtgepdmejpre` int DEFAULT NULL,\n `xkzynphhqenchemlirzvnowsnivwgknn` int DEFAULT NULL,\n `xtxhdudxgjrlbnrrfijtiubcuqqkzppf` int DEFAULT NULL,\n `axpylqknanveogyribkzmmudgeeebmrb` int DEFAULT NULL,\n `yqkxyveuvrumzvaeijijxfmvnapjewtv` int DEFAULT NULL,\n `vsplelbaqwgfymxgumtomkvxpyjnfzdd` int DEFAULT NULL,\n `qngyhaplvlulvkeelldjzawulamkdtwa` int DEFAULT NULL,\n `vqusnsefqlcbzjfsdcwxnkreqmzehcly` int DEFAULT NULL,\n `vencghbcizjjointyapfhkoqjpwudwxw` int DEFAULT NULL,\n `fjpayjwcwlewxuoajoxhwmvsuygzsqvs` int DEFAULT NULL,\n `jgpkdcgfjxpmfbvzktkcunnjseqiweyy` int DEFAULT NULL,\n `waicmkujnsxnwwzesyrcrhiylgfrsiar` int DEFAULT NULL,\n `rhvjbmjfyxjmlzlozhbfdovaokzviaap` int DEFAULT NULL,\n `rakhtobwrbfudsvdfkibapmohhuiyabg` int DEFAULT NULL,\n `bflzxmifvordfqyvpoufmrcjswpmpuxs` int DEFAULT NULL,\n `wdjzrnflvvkcbwpjcckqmzzbgymlzhoe` int DEFAULT NULL,\n `vqjbbvecksjnfvwgevcrvmbhoccylkmo` int DEFAULT NULL,\n `jycaaessyjuidcovgceisdzwussmtyao` int DEFAULT NULL,\n `vnjmgeyfaduxnakkorezkidqcqyjhevz` int DEFAULT NULL,\n `zunobqzybzcqmyndpdibdjebojsewoke` int DEFAULT NULL,\n `nkbvbghnmyepsxozxefhdjcbznveaamx` int DEFAULT NULL,\n `rubwxuvmeavnepthrgnbdwwfdfmsjmug` int DEFAULT NULL,\n `bdlkyewcmxqufwgbtcmlufttlpqqcnyb` int DEFAULT NULL,\n `zcucpbnrryyngncmpxtlqiuklhfgsepq` int DEFAULT NULL,\n `iscyiyunevdjziwaqbzfqqhikjojwktq` int DEFAULT NULL,\n `jrejywizwmxmaekhtzcxgbqgxyadnceq` int DEFAULT NULL,\n `hufcowvyozftgaywywiocqsgjszwffdf` int DEFAULT NULL,\n `imobkbcdcffgxakmesmrmmqqdxzunqxy` int DEFAULT NULL,\n `nseiqdjlsiolcmamqthbwzisfzbpiyqa` int DEFAULT NULL,\n `xsbwyjqffcgvkrutaqjzkqsbwcmbdeil` int DEFAULT NULL,\n `gyqvuggpwdhddxnvqpgumkyfmlfcsdrn` int DEFAULT NULL,\n `mftqljqrynonasgdyxgpmrvqxpnuimlh` int DEFAULT NULL,\n `cxlmejunfifzubpgzuzpkevtpkwoqvfl` int DEFAULT NULL,\n `oagnhperiqumiyqgtmalfowerausunta` int DEFAULT NULL,\n `roouwnyydlxyhxmmqjskccbtxgxtfsis` int DEFAULT NULL,\n `igeucqpdwequbisshjxwvjzrofsvzqwd` int DEFAULT NULL,\n `qakgmzotuxqonkgnyalyvolrseuqygow` int DEFAULT NULL,\n `astxmbskigabvhyvomkprdpuhjemuwds` int DEFAULT NULL,\n `pfpqfgrxzfsurpmncowfpctkvcedfror` int DEFAULT NULL,\n `hmgdzilscntqcdlpdndzvflvoozktkfg` int DEFAULT NULL,\n `oadjtnuvrdmeyueapekcxurprifxvqaz` int DEFAULT NULL,\n `lrswtrzesisysmbxolumwqivojubsdgb` int DEFAULT NULL,\n `tzsywfucqjuqtmfnjvtenksqozgwibik` int DEFAULT NULL,\n `puwrebgesppratljfxnbxpfghmukjfea` int DEFAULT NULL,\n `jarawgwegxfhrzqbryqmqkanfsxpuolc` int DEFAULT NULL,\n `yquhfnohmlowgxzjcxtwqrxrbigceptn` int DEFAULT NULL,\n `kdgbadzdqbcrhozuleyzkakdbhcilyyf` int DEFAULT NULL,\n `iqltpmwiulcbrsqwukyfdetlliwxdizx` int DEFAULT NULL,\n `gmqxlemhafkbfedilzicparbunobpppt` int DEFAULT NULL,\n `gsdpcdvdtspfbgpvluqgeqwjkfcoueev` int DEFAULT NULL,\n `afrizjxlfbwjfzahnkfqwzthaywfpbqr` int DEFAULT NULL,\n `svbgpypuotlvgvtkzllekhbjvsyybnmm` int DEFAULT NULL,\n `mdugbwmkkiijfegbpfjjemnplkkuljkw` int DEFAULT NULL,\n `thqmoreudkwznnqxbdnkuphtuedwnobp` int DEFAULT NULL,\n `parwbtyahtjjfnoasjkaodvjatuuweci` int DEFAULT NULL,\n `dcanembwbcrvvvzqdaiaullbvcnobjvc` int DEFAULT NULL,\n `femydlakikisxzfujvxnbicdspsbjzja` int DEFAULT NULL,\n `nbhnmrqkyucataarzmsxnhfjcreozzpg` int DEFAULT NULL,\n `ziulnlrssqryojsehpzihitbayumrgpo` int DEFAULT NULL,\n PRIMARY KEY (`tglxgxetqflgsyzersuqhnftbdccfjgm`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"zvizamagjrkoamcwmhgradfhuizonrdx\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["tglxgxetqflgsyzersuqhnftbdccfjgm"],"columns":[{"name":"tglxgxetqflgsyzersuqhnftbdccfjgm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"oguzqiyekzbsbmmonbjcypfrnsvsmldk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yobqsanjhpnlubgbqmgciopnmigudfpm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rtdjvhvufbterstdvttfmtqxdsmkhjcl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kbbgjlytoyhrhpjcaaxcnssiohobjrst","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nqrwdbbfxmdjoehvkpkpbmupvrqfnhqt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lbgarzlmpovlmyygjquiyanqnmruqvoz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"haprigyvhtekbdbsiywruguslpqnzeeo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fzjhjjsrqurawdysrzserxgfdwiuvywe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rstjkavwouazikbmfoedtdefcwbxkhtc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lfdwyjmdoqbcmzuayruczkicoeevbcii","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vcligyprasbrovrycqhnysiaxwbsttur","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kgbjmtyqekofbqinxeegmvysvdgxxrff","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kbnrqfueyidbjdhnxzjjlxmipbkwwqex","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffmthqibliklwtniqkaroswtzzvxvgev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aqhoqzminksfvraukiwtqxbubszxwgsz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"otzvmwnxcikemhemfjmajhgckjtimtjy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hnxrrvobyodrkzogqgvyuhycghrsvzrb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dwslnycgbgyeoykdbgcanrsqtkohzzyz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cipsxodhklmzfoofwdmpflumclhhtvej","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wkoddepehgdlbzhuiutedoqpgxpndyfu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wacpxybkjylshfxfyragskwjrfraakdm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vzqwnogjgnsgsysnfsvpjdjnalttzonh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gsebaixlkbvdbrvklesfhuogqhuovpbc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqpnymzyllsmcdfaktubhwihmlskudvy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tiwjpiigptdetcghfdstvymdjrvdflry","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bzjzsapzgexhupfjcfrsbfhbvbffzrnc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rihtfzzrfkvymafyqagxedwgpqrofgqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sbgxxizocowzcfvcbgmperkhramoqrqb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vfnquxstzkgmvrhymaripjkdspwpsxgp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ibfxcfgorvzcqsxaqjiteeamwtiscxxz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmiwlzroboyiaeueetghfqufvrjevkrx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oazpswjlztyefevehserojtoocqbxoey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"acxwpbiivtepuczfpdqzuynrffadoypc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sdkccppzrhxgtsimtwbynguyyxmendtg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hqfktvsgxvlccxtpbuhxuqkchezosgij","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"susdzemtgeegmdipevsawlvdqapcdukf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xnsvjcqdtqtprcxpuowvwzmlvbejuxey","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"liyyecipafvaykwgcphfeiizbdutiqrf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"edryouorzbbcmlhpcpyfynyadtycpqyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yoaobouxlneilknwzytjwdjaidptoizy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lzmwzshqswolvbaiwxivgtgepdmejpre","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xkzynphhqenchemlirzvnowsnivwgknn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xtxhdudxgjrlbnrrfijtiubcuqqkzppf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"axpylqknanveogyribkzmmudgeeebmrb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yqkxyveuvrumzvaeijijxfmvnapjewtv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vsplelbaqwgfymxgumtomkvxpyjnfzdd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qngyhaplvlulvkeelldjzawulamkdtwa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqusnsefqlcbzjfsdcwxnkreqmzehcly","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vencghbcizjjointyapfhkoqjpwudwxw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fjpayjwcwlewxuoajoxhwmvsuygzsqvs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jgpkdcgfjxpmfbvzktkcunnjseqiweyy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"waicmkujnsxnwwzesyrcrhiylgfrsiar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rhvjbmjfyxjmlzlozhbfdovaokzviaap","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rakhtobwrbfudsvdfkibapmohhuiyabg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bflzxmifvordfqyvpoufmrcjswpmpuxs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wdjzrnflvvkcbwpjcckqmzzbgymlzhoe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vqjbbvecksjnfvwgevcrvmbhoccylkmo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jycaaessyjuidcovgceisdzwussmtyao","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vnjmgeyfaduxnakkorezkidqcqyjhevz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zunobqzybzcqmyndpdibdjebojsewoke","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nkbvbghnmyepsxozxefhdjcbznveaamx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rubwxuvmeavnepthrgnbdwwfdfmsjmug","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bdlkyewcmxqufwgbtcmlufttlpqqcnyb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zcucpbnrryyngncmpxtlqiuklhfgsepq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iscyiyunevdjziwaqbzfqqhikjojwktq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jrejywizwmxmaekhtzcxgbqgxyadnceq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hufcowvyozftgaywywiocqsgjszwffdf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"imobkbcdcffgxakmesmrmmqqdxzunqxy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nseiqdjlsiolcmamqthbwzisfzbpiyqa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xsbwyjqffcgvkrutaqjzkqsbwcmbdeil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gyqvuggpwdhddxnvqpgumkyfmlfcsdrn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mftqljqrynonasgdyxgpmrvqxpnuimlh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cxlmejunfifzubpgzuzpkevtpkwoqvfl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oagnhperiqumiyqgtmalfowerausunta","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"roouwnyydlxyhxmmqjskccbtxgxtfsis","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"igeucqpdwequbisshjxwvjzrofsvzqwd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qakgmzotuxqonkgnyalyvolrseuqygow","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"astxmbskigabvhyvomkprdpuhjemuwds","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pfpqfgrxzfsurpmncowfpctkvcedfror","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hmgdzilscntqcdlpdndzvflvoozktkfg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oadjtnuvrdmeyueapekcxurprifxvqaz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lrswtrzesisysmbxolumwqivojubsdgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tzsywfucqjuqtmfnjvtenksqozgwibik","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"puwrebgesppratljfxnbxpfghmukjfea","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jarawgwegxfhrzqbryqmqkanfsxpuolc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yquhfnohmlowgxzjcxtwqrxrbigceptn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kdgbadzdqbcrhozuleyzkakdbhcilyyf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iqltpmwiulcbrsqwukyfdetlliwxdizx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gmqxlemhafkbfedilzicparbunobpppt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gsdpcdvdtspfbgpvluqgeqwjkfcoueev","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"afrizjxlfbwjfzahnkfqwzthaywfpbqr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"svbgpypuotlvgvtkzllekhbjvsyybnmm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mdugbwmkkiijfegbpfjjemnplkkuljkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"thqmoreudkwznnqxbdnkuphtuedwnobp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"parwbtyahtjjfnoasjkaodvjatuuweci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dcanembwbcrvvvzqdaiaullbvcnobjvc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"femydlakikisxzfujvxnbicdspsbjzja","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbhnmrqkyucataarzmsxnhfjcreozzpg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ziulnlrssqryojsehpzihitbayumrgpo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842673,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842673305,"databaseName":"models_schema","ddl":"CREATE TABLE `zxhltxrsmhtsyvtgrlcsbvouuzpmoisc` (\n `rlpjndrfvfzjhogvdkitpfuotzqqwxrj` int NOT NULL,\n `jfghdusmeijnxlghtmzysjyopbtopwuq` int DEFAULT NULL,\n `yyqmdhapoblcjtqucpouaeqemmnnbjzy` int DEFAULT NULL,\n `iwbponzxaexvthfpvbvqjtiokkjqmmdi` int DEFAULT NULL,\n `ngwckvrwqlpqlpvytrxrflxsflhrtire` int DEFAULT NULL,\n `hffrfddjrzeumkmroetetqmtqicopsnw` int DEFAULT NULL,\n `uwlbqivkeefuebxnbfmoefgsjhitiyuq` int DEFAULT NULL,\n `kptedffnldsyoomyrenkunshknheggcd` int DEFAULT NULL,\n `zvetntckneondtpdhfzmumzalqbvhbnz` int DEFAULT NULL,\n `nlshlbfoojwxmyoyoenkbfnjpnhtgopk` int DEFAULT NULL,\n `yfjxpoxrycggvhddskbrziduquyudldq` int DEFAULT NULL,\n `nbfrjjibupnffugipbdnprypfjymheny` int DEFAULT NULL,\n `flvohflfdyzqssjosuzlnffocnpveoxa` int DEFAULT NULL,\n `yfkbflpzwgjrjhzvwgczkwqucybysroo` int DEFAULT NULL,\n `ffrrykilbmrsxbvclfndgjbdkwggsyhu` int DEFAULT NULL,\n `jqrezzqzyoqrjiqefcwlaafocrsoswgq` int DEFAULT NULL,\n `fvyhmlwqbanhzguokonklpidskmshwku` int DEFAULT NULL,\n `cdlmpuizwqmfjglrwikfieyymkyoygeq` int DEFAULT NULL,\n `lutlbrepsaicgxqnagkuwtnoyqiqpkxp` int DEFAULT NULL,\n `cjrnegxfpaofzlwbpbsrrfnlifitexdd` int DEFAULT NULL,\n `lzfpscxgqnhqnbxwgulsqouisrmvjxre` int DEFAULT NULL,\n `poigvxvwyvrrvzuxluayfffcwpcqcpyn` int DEFAULT NULL,\n `hjlldfzrrzldwuhkyzfbldtzdoizqplh` int DEFAULT NULL,\n `ohrxcmwyvrbjipepnkdmczqfjmjitxle` int DEFAULT NULL,\n `lytghmhkqfbochjdswrfdrxijbqtlhio` int DEFAULT NULL,\n `hfpjxlsblluwtjljtptglhegnahlvbbw` int DEFAULT NULL,\n `dxysatsjpwtqphtclvuichgttivodctn` int DEFAULT NULL,\n `zekwaxnzmtvtzgtfdukdphlfpbiqlshl` int DEFAULT NULL,\n `pctcanbilwtlpxovkshmjlnllgwgbcnb` int DEFAULT NULL,\n `fthgyhpetwfiwcngvnppbjhbkpaamqbl` int DEFAULT NULL,\n `obbyprmjcidhmbbkvpwbbxaaisdmwvmg` int DEFAULT NULL,\n `icspqbgqhrknrhukvjphptnuceinsjgr` int DEFAULT NULL,\n `sluzovsmvuubqonngqnflljrhlyivicr` int DEFAULT NULL,\n `tehfcdwnncitslyiplgtncejstgxqcxn` int DEFAULT NULL,\n `oievillmjaqvhblqxindsrnaxwnkkhjz` int DEFAULT NULL,\n `gaqjelcrpuskzlicffatsakghzngccsx` int DEFAULT NULL,\n `wkvumsuxhdcrevuofdhsbgmnwrexjqlt` int DEFAULT NULL,\n `wmpsphrpveiehtfqcxwpcwdrumevpipl` int DEFAULT NULL,\n `zzofnyfbhhmwhxtnoohthxbitnmbziqc` int DEFAULT NULL,\n `galywoqevqmzddkubreeczztpxroobfi` int DEFAULT NULL,\n `ltqbknsztxvhvcqwkbdwgibmyghpylop` int DEFAULT NULL,\n `mvzqlhlkzvlwpnnfmyvahdhenkfxhevu` int DEFAULT NULL,\n `ioghxftuwhudykuaqkikxxbdasyaurui` int DEFAULT NULL,\n `lwaysakaiuomtcnzwrycojajrrezsnah` int DEFAULT NULL,\n `uxnpqtvshpanwgoisshbhttcqvmkbrtj` int DEFAULT NULL,\n `bfzophttsujirkbogtvpsibzgvzlpchk` int DEFAULT NULL,\n `ntrpfsnftvvdtzthjaoftkyousswisvj` int DEFAULT NULL,\n `klljlmfrpodvhpiuqsgebidnvoapzbyo` int DEFAULT NULL,\n `jlnwdhhpejpkxipuhiywxkfzwgtrbidn` int DEFAULT NULL,\n `uhwkowqybuetrrndpmsdhxuidrqlvrdz` int DEFAULT NULL,\n `mvgoudqqqhxcccqyogykfbgcdosihnla` int DEFAULT NULL,\n `tphljwctsnbfrbfkpbhzwmdmhqgjjxxt` int DEFAULT NULL,\n `omzyyigpkpmmuiqqahffbkcquqaqwdqf` int DEFAULT NULL,\n `ydqrlvixzdaiiogequpehnocjlxtgfmt` int DEFAULT NULL,\n `frssfbjfvrhkshqgsrydoohhllygxmyp` int DEFAULT NULL,\n `piyihvrualzfilzuvkyaeimiginpayic` int DEFAULT NULL,\n `nkuvipvedqgaqgqxdkliciizhuavpufv` int DEFAULT NULL,\n `xtpvpfwissphqgpygsxnsqnvpbbocypf` int DEFAULT NULL,\n `oticuytzjbxnxxqyglavhyimjbfbghcr` int DEFAULT NULL,\n `gndlwmrtiovdbicqvwhhrvvxllivnbkw` int DEFAULT NULL,\n `cxwxejlqtpnwqmrhlskzquegwvdpqklh` int DEFAULT NULL,\n `fhcjunflzocpwrtduaxvbdapxsocydcv` int DEFAULT NULL,\n `oiulvvgfkjpjsqwyesrengpqvmhzuqna` int DEFAULT NULL,\n `zcgttweuhllebxunlubuxtqcapbrpmwh` int DEFAULT NULL,\n `mrdtmjvdhgosmcoypfuypmnbvsmossga` int DEFAULT NULL,\n `gfdizqwocrieszyuuxykumnqzmynhxwm` int DEFAULT NULL,\n `czetfmqcnycqartptqcvorxyuazjdvsy` int DEFAULT NULL,\n `gttfxpqdkogitljoipyyezsthmkqyqlq` int DEFAULT NULL,\n `lpmwayfnjgzwqdzlvduobjmtrczhaiwf` int DEFAULT NULL,\n `xbofqnwnxupyekydccjcdxvikhwqyeoo` int DEFAULT NULL,\n `tjvoesdwbyqtdpgvdgecamgwjrcmwxwe` int DEFAULT NULL,\n `drhjrjryxklcpmydgulexcruvxfxelpe` int DEFAULT NULL,\n `fiuxvddicldozdvmsqmnqfkfaypqxqzc` int DEFAULT NULL,\n `bsbquzjqplcvzenczexijgzgfdawjtqa` int DEFAULT NULL,\n `vrqqkiuwdqdknkxqeqnjsynktwwemxzt` int DEFAULT NULL,\n `nbshuofkkbczyayyvbfwrghvogchzcyo` int DEFAULT NULL,\n `kvyfgxzvegqoxybdleohebhfcvvnqasm` int DEFAULT NULL,\n `hotyaoyqvwfjxmzynsuopdvecduhcncg` int DEFAULT NULL,\n `nacsstkwnzdmysdkyryfrbjdqfsjzheg` int DEFAULT NULL,\n `feuvngcicqudjnybvmrttrvxujeejswc` int DEFAULT NULL,\n `dnrintpajemxquaygujqkofnjifxyumc` int DEFAULT NULL,\n `njscdpddlffrhedzzplwmilpavauytmh` int DEFAULT NULL,\n `mfvilvcuopwowjwytjdwquceutxlqyyg` int DEFAULT NULL,\n `gkdfunuqdnsjyackzdevtxvyrjnetcix` int DEFAULT NULL,\n `xgmncxcinbyxxvvbqbwuolfwrbvtvtol` int DEFAULT NULL,\n `vgnrvzwxzuwpdwwgvtgzwiggvdzigire` int DEFAULT NULL,\n `gxwlbfehhgruudxkiqdxlyixjzijitwl` int DEFAULT NULL,\n `bshcctmbluukqhmefszoygcuxptkddgb` int DEFAULT NULL,\n `inkkeawmgdppeztvrzarkghyzisixaci` int DEFAULT NULL,\n `uuqdosrpicozoynnmxxtropbbqhskmzb` int DEFAULT NULL,\n `pjimsyqfnsuetymetnkmgiipmsthagxk` int DEFAULT NULL,\n `ugriyelirfvxjbydmdtlzldkprthooei` int DEFAULT NULL,\n `vdtpflwqkvlukoalmwxgcwfupyeqekkb` int DEFAULT NULL,\n `niuvmhhxesnlpaqwafyyrxarpqqrvxal` int DEFAULT NULL,\n `onixdcbaysaydhpwydxmhkmmfrukexuj` int DEFAULT NULL,\n `acutfqrhdrwqlylhfcrpwfrdtbvprgmv` int DEFAULT NULL,\n `vfpgqwadlogsxityjabnyalpgxjvzeqg` int DEFAULT NULL,\n `mloqgyoxgksakmakmegvriexydrnygry` int DEFAULT NULL,\n `pecrtaxktcuadibrdfdtdbehwwcgjrzv` int DEFAULT NULL,\n `pxpfepkmgkdlxxvfdxptecshffrykhht` int DEFAULT NULL,\n PRIMARY KEY (`rlpjndrfvfzjhogvdkitpfuotzqqwxrj`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"zxhltxrsmhtsyvtgrlcsbvouuzpmoisc\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["rlpjndrfvfzjhogvdkitpfuotzqqwxrj"],"columns":[{"name":"rlpjndrfvfzjhogvdkitpfuotzqqwxrj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"jfghdusmeijnxlghtmzysjyopbtopwuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yyqmdhapoblcjtqucpouaeqemmnnbjzy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"iwbponzxaexvthfpvbvqjtiokkjqmmdi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ngwckvrwqlpqlpvytrxrflxsflhrtire","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hffrfddjrzeumkmroetetqmtqicopsnw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uwlbqivkeefuebxnbfmoefgsjhitiyuq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kptedffnldsyoomyrenkunshknheggcd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zvetntckneondtpdhfzmumzalqbvhbnz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nlshlbfoojwxmyoyoenkbfnjpnhtgopk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfjxpoxrycggvhddskbrziduquyudldq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbfrjjibupnffugipbdnprypfjymheny","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"flvohflfdyzqssjosuzlnffocnpveoxa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfkbflpzwgjrjhzvwgczkwqucybysroo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ffrrykilbmrsxbvclfndgjbdkwggsyhu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jqrezzqzyoqrjiqefcwlaafocrsoswgq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fvyhmlwqbanhzguokonklpidskmshwku","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cdlmpuizwqmfjglrwikfieyymkyoygeq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lutlbrepsaicgxqnagkuwtnoyqiqpkxp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cjrnegxfpaofzlwbpbsrrfnlifitexdd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lzfpscxgqnhqnbxwgulsqouisrmvjxre","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"poigvxvwyvrrvzuxluayfffcwpcqcpyn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hjlldfzrrzldwuhkyzfbldtzdoizqplh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ohrxcmwyvrbjipepnkdmczqfjmjitxle","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lytghmhkqfbochjdswrfdrxijbqtlhio","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hfpjxlsblluwtjljtptglhegnahlvbbw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dxysatsjpwtqphtclvuichgttivodctn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zekwaxnzmtvtzgtfdukdphlfpbiqlshl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pctcanbilwtlpxovkshmjlnllgwgbcnb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fthgyhpetwfiwcngvnppbjhbkpaamqbl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"obbyprmjcidhmbbkvpwbbxaaisdmwvmg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"icspqbgqhrknrhukvjphptnuceinsjgr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sluzovsmvuubqonngqnflljrhlyivicr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tehfcdwnncitslyiplgtncejstgxqcxn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oievillmjaqvhblqxindsrnaxwnkkhjz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gaqjelcrpuskzlicffatsakghzngccsx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wkvumsuxhdcrevuofdhsbgmnwrexjqlt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"wmpsphrpveiehtfqcxwpcwdrumevpipl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzofnyfbhhmwhxtnoohthxbitnmbziqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"galywoqevqmzddkubreeczztpxroobfi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ltqbknsztxvhvcqwkbdwgibmyghpylop","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvzqlhlkzvlwpnnfmyvahdhenkfxhevu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ioghxftuwhudykuaqkikxxbdasyaurui","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lwaysakaiuomtcnzwrycojajrrezsnah","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uxnpqtvshpanwgoisshbhttcqvmkbrtj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bfzophttsujirkbogtvpsibzgvzlpchk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ntrpfsnftvvdtzthjaoftkyousswisvj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"klljlmfrpodvhpiuqsgebidnvoapzbyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlnwdhhpejpkxipuhiywxkfzwgtrbidn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uhwkowqybuetrrndpmsdhxuidrqlvrdz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mvgoudqqqhxcccqyogykfbgcdosihnla","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tphljwctsnbfrbfkpbhzwmdmhqgjjxxt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"omzyyigpkpmmuiqqahffbkcquqaqwdqf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ydqrlvixzdaiiogequpehnocjlxtgfmt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"frssfbjfvrhkshqgsrydoohhllygxmyp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"piyihvrualzfilzuvkyaeimiginpayic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nkuvipvedqgaqgqxdkliciizhuavpufv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xtpvpfwissphqgpygsxnsqnvpbbocypf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oticuytzjbxnxxqyglavhyimjbfbghcr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gndlwmrtiovdbicqvwhhrvvxllivnbkw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cxwxejlqtpnwqmrhlskzquegwvdpqklh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fhcjunflzocpwrtduaxvbdapxsocydcv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oiulvvgfkjpjsqwyesrengpqvmhzuqna","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zcgttweuhllebxunlubuxtqcapbrpmwh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mrdtmjvdhgosmcoypfuypmnbvsmossga","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gfdizqwocrieszyuuxykumnqzmynhxwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"czetfmqcnycqartptqcvorxyuazjdvsy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gttfxpqdkogitljoipyyezsthmkqyqlq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lpmwayfnjgzwqdzlvduobjmtrczhaiwf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xbofqnwnxupyekydccjcdxvikhwqyeoo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"tjvoesdwbyqtdpgvdgecamgwjrcmwxwe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"drhjrjryxklcpmydgulexcruvxfxelpe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fiuxvddicldozdvmsqmnqfkfaypqxqzc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bsbquzjqplcvzenczexijgzgfdawjtqa","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vrqqkiuwdqdknkxqeqnjsynktwwemxzt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbshuofkkbczyayyvbfwrghvogchzcyo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kvyfgxzvegqoxybdleohebhfcvvnqasm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hotyaoyqvwfjxmzynsuopdvecduhcncg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nacsstkwnzdmysdkyryfrbjdqfsjzheg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"feuvngcicqudjnybvmrttrvxujeejswc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dnrintpajemxquaygujqkofnjifxyumc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"njscdpddlffrhedzzplwmilpavauytmh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mfvilvcuopwowjwytjdwquceutxlqyyg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkdfunuqdnsjyackzdevtxvyrjnetcix","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xgmncxcinbyxxvvbqbwuolfwrbvtvtol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vgnrvzwxzuwpdwwgvtgzwiggvdzigire","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gxwlbfehhgruudxkiqdxlyixjzijitwl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bshcctmbluukqhmefszoygcuxptkddgb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"inkkeawmgdppeztvrzarkghyzisixaci","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"uuqdosrpicozoynnmxxtropbbqhskmzb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pjimsyqfnsuetymetnkmgiipmsthagxk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ugriyelirfvxjbydmdtlzldkprthooei","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vdtpflwqkvlukoalmwxgcwfupyeqekkb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"niuvmhhxesnlpaqwafyyrxarpqqrvxal","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"onixdcbaysaydhpwydxmhkmmfrukexuj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"acutfqrhdrwqlylhfcrpwfrdtbvprgmv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vfpgqwadlogsxityjabnyalpgxjvzeqg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mloqgyoxgksakmakmegvriexydrnygry","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pecrtaxktcuadibrdfdtdbehwwcgjrzv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pxpfepkmgkdlxxvfdxptecshffrykhht","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1693842673,"file":"binlog.000002","pos":905418,"snapshot":true},"ts_ms":1693842673339,"databaseName":"models_schema","ddl":"CREATE TABLE `zxopybvdnhidckkbrsvwijsunafkxxtb` (\n `jwprwtecglqhhhplkddbnhuoqdhibhjv` int NOT NULL,\n `jgbvbksaxmwjvsfifxgrjcmkfukkezfl` int DEFAULT NULL,\n `mbokourhenorazyrstqdiqekxmikerxq` int DEFAULT NULL,\n `ywivtsgmuvzzqoznrfwhywskknewisqc` int DEFAULT NULL,\n `knblqkozqluovtxxqhcmkpueznkzavgf` int DEFAULT NULL,\n `zutdyxxexvpzxdwptrbcoirwcfnvpurr` int DEFAULT NULL,\n `krwupchfnffvxbkengufazkrknbdroxr` int DEFAULT NULL,\n `zqwrrhenomhrhmxzqnwkjffvqbngcqvi` int DEFAULT NULL,\n `yuchgpfybawpeermnffsjicihylwjztl` int DEFAULT NULL,\n `krchlbdltzbowxedtqwbyqrvlfnzddgd` int DEFAULT NULL,\n `xuthcuxluzvkznztcrgpafnulsmxvkvk` int DEFAULT NULL,\n `kcndevgrchcybanfqwtodgnnkxshecjc` int DEFAULT NULL,\n `urxyjcinyolspxquiuhcetbdkngjtzca` int DEFAULT NULL,\n `gdeeowudnxumkorpxoalxnmcbkopjdlf` int DEFAULT NULL,\n `zuybkispqnpmqjakdgmncrwzgxgdyvog` int DEFAULT NULL,\n `yfjqxeekcefemuvvoighfqmmwcumqtdk` int DEFAULT NULL,\n `qjhcepgdnssxrdqucmsvlvbvwmzeeayl` int DEFAULT NULL,\n `luffxmjgkisdkdzxdadavvjvavxbrmnh` int DEFAULT NULL,\n `fcxmxbjceulsloskqguaimuvogdbokxp` int DEFAULT NULL,\n `mnppslxduupxtgrumujgwwukuncbihvs` int DEFAULT NULL,\n `raprazqjzphjejbsuourfncmrymapwba` int DEFAULT NULL,\n `kovjieuvmxqzrdabvhoyywifrrhwvval` int DEFAULT NULL,\n `zffejwnpaedinlkcieokythepyvzlskw` int DEFAULT NULL,\n `yokmydewpocwnejvvuwdnvezwzdiwfjb` int DEFAULT NULL,\n `irqfayiaqfwnmqyntncwldbvnquyfnca` int DEFAULT NULL,\n `akzlzxpibyjhytdvbezzrunjgggcwvms` int DEFAULT NULL,\n `ufotuobibzvcsayclwbpczqieelgmuka` int DEFAULT NULL,\n `nrvwgbdcvtinfgcehifhurndjypsznbt` int DEFAULT NULL,\n `ggqjcxgwsppqhsnzabhuiijigytuapll` int DEFAULT NULL,\n `qyhlggyryacfrpesarshlftnqdwhhhil` int DEFAULT NULL,\n `meloldpqlbuqfckcvhditnlbytusjioi` int DEFAULT NULL,\n `fnwmpjiaurfqlwgfwpipdrbreaehibus` int DEFAULT NULL,\n `lutfplyaopmzivdwplakcdxmtwujivhs` int DEFAULT NULL,\n `nugfusjriclkgbaqoenajvmjlcziopmk` int DEFAULT NULL,\n `jvglumxyovstkfnhalpdazlebibvrncl` int DEFAULT NULL,\n `pbnxruejfqyvvlvdxhooyoktevkyeaae` int DEFAULT NULL,\n `unzlyqhsichwbsjbguxfmaoromfsobal` int DEFAULT NULL,\n `cnxklxgkehqasjbmfkorfywnusybkpcb` int DEFAULT NULL,\n `arcucpwmcrceytvfbkgsxtcbzrklacnw` int DEFAULT NULL,\n `qinezuknodytfxvqdjukuohczoqfafrb` int DEFAULT NULL,\n `nghfjyyjzoegnxsvwfhrkqpcggpwcbjr` int DEFAULT NULL,\n `zzawaoseybnfsslltsbwyqknepewmojx` int DEFAULT NULL,\n `cutqyqhbfgagszrfnmlugqjmrdyuwplw` int DEFAULT NULL,\n `fqgnbiszgsktdhlpqaidevtdfdthtehq` int DEFAULT NULL,\n `isscgpodnkuxxfgzrwvjqcxwajxfnhwc` int DEFAULT NULL,\n `gnrypkntwvcmztqyqtqfnbzokiivecmw` int DEFAULT NULL,\n `ygwegngcevsxvmhgrrkbbmxgzakgazbp` int DEFAULT NULL,\n `rcxcajwcrfojwptxomsfqlqlysobkjlu` int DEFAULT NULL,\n `aweygqxhsskpsndunhawapqjmmmaufju` int DEFAULT NULL,\n `qxkccgsyjehhsoddnrcbfqcfppdzyrch` int DEFAULT NULL,\n `breorqvqlufdwssuxgvikjdbnfakpkwk` int DEFAULT NULL,\n `ixzuutkbhdhmwrtcuchqystmgsypdnnx` int DEFAULT NULL,\n `gkhplwddgbntktqntsywnecgyuqzalgx` int DEFAULT NULL,\n `ryrmmwkedlzjrdponksxxlsjhqrmjjmg` int DEFAULT NULL,\n `ltbvhzkmaonllajlvmqhtkokwcpaxfat` int DEFAULT NULL,\n `gaguncwuvzelipkjcxcjjwooonlbggyd` int DEFAULT NULL,\n `nfspiqdhnswwtdtyafqglezsicsnnfux` int DEFAULT NULL,\n `ecegocrqiryoccerxqemarxpgmhudbwm` int DEFAULT NULL,\n `ypmdwmvkqzhwkwnwgumfenwwhanaenpf` int DEFAULT NULL,\n `cdowhxycdhiwjcjpjuwztyaguesbhiuj` int DEFAULT NULL,\n `qecwtfkumalncggmkjuobicbfzhoawkh` int DEFAULT NULL,\n `rosbdmissaqxozpadwhvmdhxfytawkaz` int DEFAULT NULL,\n `yxpowxokxjtxxzuqynomfznhofefswnm` int DEFAULT NULL,\n `imablfougeamxpuwelhlyeucjruzuzdh` int DEFAULT NULL,\n `mzfydfukfyadeczskkwivwthjolayuts` int DEFAULT NULL,\n `gqaqexaajwsgxmfaclaondguyntettdd` int DEFAULT NULL,\n `nfbmwvubzuehfspuuukpqhuxxdtrgyar` int DEFAULT NULL,\n `jlrywesoazhiewqfcbtccnltjldqgudt` int DEFAULT NULL,\n `bsfzfmhktyczgnlrszzyzdfeaokrldcm` int DEFAULT NULL,\n `myspbdlglhtawchrotidfxfyyszheoaj` int DEFAULT NULL,\n `qjtonbfypzpeaikhhskpkurizsefuuce` int DEFAULT NULL,\n `gisgjlhdbkozewsoqkdmqnppryuuuazu` int DEFAULT NULL,\n `odevbgrfmjsowcdezqlvifpxgzueexkn` int DEFAULT NULL,\n `xqshwwuubijqjkcmdiedbvnvuxagvkcg` int DEFAULT NULL,\n `grkdvogrjimjbmpyyivtcqxnflvdwehp` int DEFAULT NULL,\n `jwecnphnckgjdmcvopvdysqmrupmjllv` int DEFAULT NULL,\n `mdmefkzdogxhsjqsntlmmgpvsqsunepd` int DEFAULT NULL,\n `bchcusxkqxtceworahazwhjyobxympou` int DEFAULT NULL,\n `nbstzihzpfqufqwfmkcnkjmxmyitwovf` int DEFAULT NULL,\n `vjlhylxkcwxbnhrcuujskmptycntprjy` int DEFAULT NULL,\n `twnhyvxqueieseripmiblzlksfgqbhcr` int DEFAULT NULL,\n `kicvbecvojwvvuulwvomovkpjfwhlmic` int DEFAULT NULL,\n `cdfuggudkgcvdsdkdanuqrebhsyenynd` int DEFAULT NULL,\n `fecaezvyuadergzhtabrpyawikfxxlkx` int DEFAULT NULL,\n `nbiiqezaibnnumitwubpvypgcqghuvsx` int DEFAULT NULL,\n `dsprpfyfmttgrqbftrnbgjpebybvucth` int DEFAULT NULL,\n `cjddwfcnvbigqspoeccijlhtkcngkylz` int DEFAULT NULL,\n `kxukqcrdqpbjlwnvgdwhqkwohptnjwzw` int DEFAULT NULL,\n `coqhcxldfolggermsqkcnmzerenejorh` int DEFAULT NULL,\n `usjwxflcpnnmpynssyspizqcumfsvhil` int DEFAULT NULL,\n `evpymsbbwscqqiwgritluuzroeddknml` int DEFAULT NULL,\n `joovmlezxjzfcfatuuftjxodocqroema` int DEFAULT NULL,\n `hgkidcrnamzieqovttjhbahwypgapspb` int DEFAULT NULL,\n `sgwloayfvtaziermgvbcbkqqmntbbksh` int DEFAULT NULL,\n `oaxxilpdoxiqwtyyfyhxcanpjeigdzsu` int DEFAULT NULL,\n `qkctvqcqgacmfhedpkfyxhyvvgbznboe` int DEFAULT NULL,\n `rpbrzrijxhiyddhdogdyajchvameawxd` int DEFAULT NULL,\n `bxfapfxiqerusrjjxvawucjdirtswkpo` int DEFAULT NULL,\n `fkswmxkjarvxuwrvrphbxoiryuvifsol` int DEFAULT NULL,\n `oxhvzkpidvxmensbwnbfslshyyjmkgwy` int DEFAULT NULL,\n PRIMARY KEY (`jwprwtecglqhhhplkddbnhuoqdhibhjv`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"zxopybvdnhidckkbrsvwijsunafkxxtb\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["jwprwtecglqhhhplkddbnhuoqdhibhjv"],"columns":[{"name":"jwprwtecglqhhhplkddbnhuoqdhibhjv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"jgbvbksaxmwjvsfifxgrjcmkfukkezfl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mbokourhenorazyrstqdiqekxmikerxq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ywivtsgmuvzzqoznrfwhywskknewisqc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":4,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"knblqkozqluovtxxqhcmkpueznkzavgf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":5,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zutdyxxexvpzxdwptrbcoirwcfnvpurr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":6,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"krwupchfnffvxbkengufazkrknbdroxr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":7,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zqwrrhenomhrhmxzqnwkjffvqbngcqvi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":8,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yuchgpfybawpeermnffsjicihylwjztl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":9,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"krchlbdltzbowxedtqwbyqrvlfnzddgd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":10,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xuthcuxluzvkznztcrgpafnulsmxvkvk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":11,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kcndevgrchcybanfqwtodgnnkxshecjc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":12,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"urxyjcinyolspxquiuhcetbdkngjtzca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":13,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gdeeowudnxumkorpxoalxnmcbkopjdlf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":14,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zuybkispqnpmqjakdgmncrwzgxgdyvog","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":15,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yfjqxeekcefemuvvoighfqmmwcumqtdk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":16,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjhcepgdnssxrdqucmsvlvbvwmzeeayl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":17,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"luffxmjgkisdkdzxdadavvjvavxbrmnh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":18,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fcxmxbjceulsloskqguaimuvogdbokxp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":19,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mnppslxduupxtgrumujgwwukuncbihvs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":20,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"raprazqjzphjejbsuourfncmrymapwba","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":21,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kovjieuvmxqzrdabvhoyywifrrhwvval","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":22,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zffejwnpaedinlkcieokythepyvzlskw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":23,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yokmydewpocwnejvvuwdnvezwzdiwfjb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":24,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"irqfayiaqfwnmqyntncwldbvnquyfnca","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":25,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"akzlzxpibyjhytdvbezzrunjgggcwvms","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":26,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ufotuobibzvcsayclwbpczqieelgmuka","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":27,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nrvwgbdcvtinfgcehifhurndjypsznbt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":28,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ggqjcxgwsppqhsnzabhuiijigytuapll","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":29,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qyhlggyryacfrpesarshlftnqdwhhhil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":30,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"meloldpqlbuqfckcvhditnlbytusjioi","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":31,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fnwmpjiaurfqlwgfwpipdrbreaehibus","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":32,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"lutfplyaopmzivdwplakcdxmtwujivhs","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":33,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nugfusjriclkgbaqoenajvmjlcziopmk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":34,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jvglumxyovstkfnhalpdazlebibvrncl","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":35,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"pbnxruejfqyvvlvdxhooyoktevkyeaae","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":36,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"unzlyqhsichwbsjbguxfmaoromfsobal","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":37,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cnxklxgkehqasjbmfkorfywnusybkpcb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":38,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"arcucpwmcrceytvfbkgsxtcbzrklacnw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":39,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qinezuknodytfxvqdjukuohczoqfafrb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":40,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nghfjyyjzoegnxsvwfhrkqpcggpwcbjr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":41,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"zzawaoseybnfsslltsbwyqknepewmojx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":42,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cutqyqhbfgagszrfnmlugqjmrdyuwplw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":43,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fqgnbiszgsktdhlpqaidevtdfdthtehq","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":44,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"isscgpodnkuxxfgzrwvjqcxwajxfnhwc","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":45,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gnrypkntwvcmztqyqtqfnbzokiivecmw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":46,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ygwegngcevsxvmhgrrkbbmxgzakgazbp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":47,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rcxcajwcrfojwptxomsfqlqlysobkjlu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":48,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"aweygqxhsskpsndunhawapqjmmmaufju","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":49,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qxkccgsyjehhsoddnrcbfqcfppdzyrch","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":50,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"breorqvqlufdwssuxgvikjdbnfakpkwk","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":51,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ixzuutkbhdhmwrtcuchqystmgsypdnnx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":52,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gkhplwddgbntktqntsywnecgyuqzalgx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":53,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ryrmmwkedlzjrdponksxxlsjhqrmjjmg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":54,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ltbvhzkmaonllajlvmqhtkokwcpaxfat","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":55,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gaguncwuvzelipkjcxcjjwooonlbggyd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":56,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfspiqdhnswwtdtyafqglezsicsnnfux","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":57,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ecegocrqiryoccerxqemarxpgmhudbwm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":58,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"ypmdwmvkqzhwkwnwgumfenwwhanaenpf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":59,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cdowhxycdhiwjcjpjuwztyaguesbhiuj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":60,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qecwtfkumalncggmkjuobicbfzhoawkh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":61,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rosbdmissaqxozpadwhvmdhxfytawkaz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":62,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"yxpowxokxjtxxzuqynomfznhofefswnm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":63,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"imablfougeamxpuwelhlyeucjruzuzdh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":64,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mzfydfukfyadeczskkwivwthjolayuts","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":65,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gqaqexaajwsgxmfaclaondguyntettdd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":66,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nfbmwvubzuehfspuuukpqhuxxdtrgyar","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":67,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jlrywesoazhiewqfcbtccnltjldqgudt","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":68,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bsfzfmhktyczgnlrszzyzdfeaokrldcm","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":69,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"myspbdlglhtawchrotidfxfyyszheoaj","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":70,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qjtonbfypzpeaikhhskpkurizsefuuce","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":71,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"gisgjlhdbkozewsoqkdmqnppryuuuazu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":72,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"odevbgrfmjsowcdezqlvifpxgzueexkn","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":73,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"xqshwwuubijqjkcmdiedbvnvuxagvkcg","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":74,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"grkdvogrjimjbmpyyivtcqxnflvdwehp","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":75,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"jwecnphnckgjdmcvopvdysqmrupmjllv","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":76,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"mdmefkzdogxhsjqsntlmmgpvsqsunepd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":77,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bchcusxkqxtceworahazwhjyobxympou","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":78,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbstzihzpfqufqwfmkcnkjmxmyitwovf","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":79,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"vjlhylxkcwxbnhrcuujskmptycntprjy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":80,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"twnhyvxqueieseripmiblzlksfgqbhcr","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":81,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kicvbecvojwvvuulwvomovkpjfwhlmic","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":82,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cdfuggudkgcvdsdkdanuqrebhsyenynd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":83,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fecaezvyuadergzhtabrpyawikfxxlkx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":84,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"nbiiqezaibnnumitwubpvypgcqghuvsx","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":85,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"dsprpfyfmttgrqbftrnbgjpebybvucth","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":86,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"cjddwfcnvbigqspoeccijlhtkcngkylz","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":87,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"kxukqcrdqpbjlwnvgdwhqkwohptnjwzw","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":88,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"coqhcxldfolggermsqkcnmzerenejorh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":89,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"usjwxflcpnnmpynssyspizqcumfsvhil","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":90,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"evpymsbbwscqqiwgritluuzroeddknml","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":91,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"joovmlezxjzfcfatuuftjxodocqroema","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":92,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"hgkidcrnamzieqovttjhbahwypgapspb","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":93,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"sgwloayfvtaziermgvbcbkqqmntbbksh","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":94,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oaxxilpdoxiqwtyyfyhxcanpjeigdzsu","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":95,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"qkctvqcqgacmfhedpkfyxhyvvgbznboe","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":96,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"rpbrzrijxhiyddhdogdyajchvameawxd","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":97,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"bxfapfxiqerusrjjxvawucjdirtswkpo","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":98,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"fkswmxkjarvxuwrvrphbxoiryuvifsol","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":99,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"oxhvzkpidvxmensbwnbfslshyyjmkgwy","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":100,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} diff --git a/airbyte-integrations/bases/debezium/src/test/resources/dbhistory_less_than_3_mb.dat b/airbyte-integrations/bases/debezium/src/test/resources/dbhistory_less_than_3_mb.dat new file mode 100644 index 000000000000..8299bcc09c4c --- /dev/null +++ b/airbyte-integrations/bases/debezium/src/test/resources/dbhistory_less_than_3_mb.dat @@ -0,0 +1,8 @@ +{"source":{"server":"models_schema"},"position":{"ts_sec":1694417189,"file":"binlog.000002","pos":11149,"snapshot":true},"ts_ms":1694417190273,"databaseName":"","ddl":"SET character_set_server=utf8mb4, collation_server=utf8mb4_0900_ai_ci","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1694417190,"file":"binlog.000002","pos":11149,"snapshot":true},"ts_ms":1694417190295,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`models`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1694417190,"file":"binlog.000002","pos":11149,"snapshot":true},"ts_ms":1694417190297,"databaseName":"models_schema","ddl":"DROP TABLE IF EXISTS `models_schema`.`models_random`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1694417190,"file":"binlog.000002","pos":11149,"snapshot":true},"ts_ms":1694417190307,"databaseName":"models_schema","ddl":"DROP DATABASE IF EXISTS `models_schema`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1694417190,"file":"binlog.000002","pos":11149,"snapshot":true},"ts_ms":1694417190315,"databaseName":"models_schema","ddl":"CREATE DATABASE `models_schema` CHARSET utf8mb4 COLLATE utf8mb4_0900_ai_ci","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1694417190,"file":"binlog.000002","pos":11149,"snapshot":true},"ts_ms":1694417190317,"databaseName":"models_schema","ddl":"USE `models_schema`","tableChanges":[]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1694417190,"file":"binlog.000002","pos":11149,"snapshot":true},"ts_ms":1694417190394,"databaseName":"models_schema","ddl":"CREATE TABLE `models` (\n `id` int NOT NULL,\n `make_id` int DEFAULT NULL,\n `model` varchar(200) DEFAULT NULL,\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"models\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["id"],"columns":[{"name":"id","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"make_id","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"model","jdbcType":12,"typeName":"VARCHAR","typeExpression":"VARCHAR","charsetName":"utf8mb4","length":200,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} +{"source":{"server":"models_schema"},"position":{"ts_sec":1694417190,"file":"binlog.000002","pos":11149,"snapshot":true},"ts_ms":1694417190403,"databaseName":"models_schema","ddl":"CREATE TABLE `models_random` (\n `id_random` int NOT NULL,\n `make_id_random` int DEFAULT NULL,\n `model_random` varchar(200) DEFAULT NULL,\n PRIMARY KEY (`id_random`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci","tableChanges":[{"type":"CREATE","id":"\"models_schema\".\"models_random\"","table":{"defaultCharsetName":"utf8mb4","primaryKeyColumnNames":["id_random"],"columns":[{"name":"id_random","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":1,"optional":false,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":false,"enumValues":[]},{"name":"make_id_random","jdbcType":4,"typeName":"INT","typeExpression":"INT","charsetName":null,"position":2,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]},{"name":"model_random","jdbcType":12,"typeName":"VARCHAR","typeExpression":"VARCHAR","charsetName":"utf8mb4","length":200,"position":3,"optional":true,"autoIncremented":false,"generated":false,"comment":null,"hasDefaultValue":true,"enumValues":[]}],"attributes":[]},"comment":null}]} diff --git a/airbyte-integrations/bases/debezium/src/testFixtures/java/io/airbyte/integrations/debezium/CdcSourceTest.java b/airbyte-integrations/bases/debezium/src/testFixtures/java/io/airbyte/integrations/debezium/CdcSourceTest.java index 281aeee5924b..db11ecaaf1cf 100644 --- a/airbyte-integrations/bases/debezium/src/testFixtures/java/io/airbyte/integrations/debezium/CdcSourceTest.java +++ b/airbyte-integrations/bases/debezium/src/testFixtures/java/io/airbyte/integrations/debezium/CdcSourceTest.java @@ -48,7 +48,6 @@ import java.util.Set; import java.util.stream.Collectors; import java.util.stream.Stream; -import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; import org.slf4j.Logger; @@ -306,8 +305,6 @@ protected void assertExpectedRecords(final Set expectedRecords, assertEquals(expectedRecords, actualData); } - // Failing on `source-postgres`, possibly others as well. - @Disabled("The 'testExistingData()' test is flaky. https://github.com/airbytehq/airbyte/issues/29411") @Test @DisplayName("On the first sync, produce returns records that exist in the database.") void testExistingData() throws Exception { @@ -320,13 +317,18 @@ void testExistingData() throws Exception { assertNotNull(targetPosition); recordMessages.forEach(record -> { - assertEquals(extractPosition(record.getData()), targetPosition); + compareTargetPositionFromTheRecordsWithTargetPostionGeneratedBeforeSync(targetPosition, record); }); assertExpectedRecords(new HashSet<>(MODEL_RECORDS), recordMessages); assertExpectedStateMessages(stateMessages); } + protected void compareTargetPositionFromTheRecordsWithTargetPostionGeneratedBeforeSync(final CdcTargetPosition targetPosition, + final AirbyteRecordMessage record) { + assertEquals(extractPosition(record.getData()), targetPosition); + } + @Test @DisplayName("When a record is deleted, produces a deletion record.") void testDelete() throws Exception { diff --git a/airbyte-integrations/bases/standard-source-test/.dockerignore b/airbyte-integrations/bases/standard-source-test/.dockerignore index 6145f27e93a0..7358e4c18be2 100644 --- a/airbyte-integrations/bases/standard-source-test/.dockerignore +++ b/airbyte-integrations/bases/standard-source-test/.dockerignore @@ -1,4 +1,4 @@ * !Dockerfile -!build +!build/distributions !entrypoint.sh diff --git a/airbyte-integrations/bases/standard-source-test/build.gradle b/airbyte-integrations/bases/standard-source-test/build.gradle index 5d0b24036f02..16d271453eed 100644 --- a/airbyte-integrations/bases/standard-source-test/build.gradle +++ b/airbyte-integrations/bases/standard-source-test/build.gradle @@ -41,7 +41,7 @@ def getFullPath(String className) { return pathInPackage } -task generateSourceTestDocs(type: Javadoc) { +def generateSourceTestDocs = tasks.register('generateSourceTestDocs', Javadoc) { def javadocOutputDir = project.file("${project.buildDir}/docs/javadoc") options.addStringOption('Xdoclint:none', '-quiet') @@ -75,8 +75,9 @@ task generateSourceTestDocs(type: Javadoc) { outputs.upToDateWhen { false } } - -project.build.dependsOn(generateSourceTestDocs) +tasks.register('generate').configure { + dependsOn generateSourceTestDocs +} application { mainClass = 'io.airbyte.integrations.standardtest.source.PythonSourceAcceptanceTest' diff --git a/airbyte-integrations/connector-templates/generator/README.md b/airbyte-integrations/connector-templates/generator/README.md index c16b31d2f33a..38f79f4c1bc2 100644 --- a/airbyte-integrations/connector-templates/generator/README.md +++ b/airbyte-integrations/connector-templates/generator/README.md @@ -41,6 +41,6 @@ Together, these two invariants guarantee that the templates produce a valid modu The way this is performed is as follows: -1. [in CI ](https://github.com/airbytehq/airbyte/blob/master/.github/workflows/gradle.yml) we trigger the task `:airbyte-integrations:connector-templates:generator:testScaffoldTemplates`. This task deletes the checked in `java-jdbc-scaffolding`. Then the task generates a fresh instance of the module with the same name `java-jdbc-scaffolding`. +1. [in CI ](https://github.com/airbytehq/airbyte/blob/master/.github/workflows/gradle.yml) we trigger the task `:airbyte-integrations:connector-templates:generator:generateScaffolds`. This task deletes the checked in `java-jdbc-scaffolding`. Then the task generates a fresh instance of the module with the same name `java-jdbc-scaffolding`. 1. We run a `git diff`. If there is a diff, then fail the build (this means the latest version of the templates produce code which has not been manually reviewed by someone who checked them in intentionally). Steps 1 & 2 test the first invariant. 1. Separately, in `settings.gradle`, the `java-jdbc-scaffolding` module is registered as a java submodule. This causes it to be built as part of the normal build cycle triggered in CI. If the generated code does not compile for whatever reason, the build will fail on building the `java-jdbc-scaffolding` module. diff --git a/airbyte-integrations/connector-templates/generator/build.gradle b/airbyte-integrations/connector-templates/generator/build.gradle index 53df8f43d219..2a93a2f67a08 100644 --- a/airbyte-integrations/connector-templates/generator/build.gradle +++ b/airbyte-integrations/connector-templates/generator/build.gradle @@ -1,24 +1,10 @@ -plugins { - id "base" - id "com.github.node-gradle.node" version "3.5.1" -} - -def nodeVersion = System.getenv('NODE_VERSION') ?: '16.13.0' - -node { - download = true - version = nodeVersion -} - -assemble.dependsOn(npmInstall) - -task testScaffoldTemplates +def generateScaffolds = tasks.register('generateScaffolds') def addScaffoldTemplateTask(name, packageName, outputDirName, scaffoldParams=[]) { - def taskName = "testScaffoldTemplate_${name}" + def taskName = "generateScaffold_${name}" def outputDir = "airbyte-integrations/connectors/${outputDirName}" - def task = tasks.create(taskName) { + def task = tasks.register(taskName) { inputs.files rootProject.fileTree("airbyte-integrations/connector-templates/") doLast { @@ -28,7 +14,7 @@ def addScaffoldTemplateTask(name, packageName, outputDirName, scaffoldParams=[]) } exec { workingDir rootDir - def cmd = ['./tools/integrations/manage.sh', 'scaffold', name, packageName] + def cmd = [project.file('generate.sh'), name, packageName] cmd.addAll(scaffoldParams) commandLine cmd } @@ -37,9 +23,10 @@ def addScaffoldTemplateTask(name, packageName, outputDirName, scaffoldParams=[]) outputs.dir rootProject.file(outputDir) } - testScaffoldTemplates.dependsOn task + generateScaffolds.configure { dependsOn task } } + addScaffoldTemplateTask('Python Source', 'scaffold-source-python', 'source-scaffold-source-python') addScaffoldTemplateTask('Python HTTP API Source', 'scaffold-source-http', 'source-scaffold-source-http') addScaffoldTemplateTask('Java JDBC Source', 'scaffold-java-jdbc', 'source-scaffold-java-jdbc') diff --git a/airbyte-integrations/connector-templates/source-java-jdbc/.dockerignore b/airbyte-integrations/connector-templates/source-java-jdbc/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connector-templates/source-java-jdbc/.dockerignore +++ b/airbyte-integrations/connector-templates/source-java-jdbc/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connector-templates/source-java-jdbc/build.gradle b/airbyte-integrations/connector-templates/source-java-jdbc/build.gradle index cd68e6d2ad45..72e5348d4385 100644 --- a/airbyte-integrations/connector-templates/source-java-jdbc/build.gradle +++ b/airbyte-integrations/connector-templates/source-java-jdbc/build.gradle @@ -24,7 +24,4 @@ dependencies { integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-{{dashCase name}}') integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') - - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors-performance/destination-harness/.dockerignore b/airbyte-integrations/connectors-performance/destination-harness/.dockerignore index c8f982b06349..d538024ad446 100644 --- a/airbyte-integrations/connectors-performance/destination-harness/.dockerignore +++ b/airbyte-integrations/connectors-performance/destination-harness/.dockerignore @@ -1,4 +1,4 @@ * !Dockerfile -!build +!build/distributions !base.sh diff --git a/airbyte-integrations/connectors-performance/destination-harness/build.gradle b/airbyte-integrations/connectors-performance/destination-harness/build.gradle index 1d2335a175ef..7f90fb793f1b 100644 --- a/airbyte-integrations/connectors-performance/destination-harness/build.gradle +++ b/airbyte-integrations/connectors-performance/destination-harness/build.gradle @@ -20,7 +20,6 @@ dependencies { implementation libs.airbyte.protocol implementation 'io.fabric8:kubernetes-client:5.12.2' implementation 'org.apache.commons:commons-lang3:3.11' - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation 'io.airbyte:airbyte-commons-worker:0.42.0' implementation 'io.airbyte.airbyte-config:config-models:0.42.0' implementation 'junit:junit:4.13.1' diff --git a/airbyte-integrations/connectors-performance/source-harness/.dockerignore b/airbyte-integrations/connectors-performance/source-harness/.dockerignore index c8f982b06349..d538024ad446 100644 --- a/airbyte-integrations/connectors-performance/source-harness/.dockerignore +++ b/airbyte-integrations/connectors-performance/source-harness/.dockerignore @@ -1,4 +1,4 @@ * !Dockerfile -!build +!build/distributions !base.sh diff --git a/airbyte-integrations/connectors-performance/source-harness/build.gradle b/airbyte-integrations/connectors-performance/source-harness/build.gradle index 652af6130bfa..c2baf0e8298d 100644 --- a/airbyte-integrations/connectors-performance/source-harness/build.gradle +++ b/airbyte-integrations/connectors-performance/source-harness/build.gradle @@ -19,7 +19,6 @@ dependencies { implementation libs.airbyte.protocol implementation 'io.fabric8:kubernetes-client:5.12.2' implementation 'org.apache.commons:commons-lang3:3.11' - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation 'io.airbyte:airbyte-commons-worker:0.42.0' implementation 'io.airbyte.airbyte-config:config-models:0.42.0' } diff --git a/airbyte-integrations/connectors/destination-azure-blob-storage/.dockerignore b/airbyte-integrations/connectors/destination-azure-blob-storage/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-azure-blob-storage/.dockerignore +++ b/airbyte-integrations/connectors/destination-azure-blob-storage/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-azure-blob-storage/build.gradle b/airbyte-integrations/connectors/destination-azure-blob-storage/build.gradle index f42e9b1f456e..69a850a5d49b 100644 --- a/airbyte-integrations/connectors/destination-azure-blob-storage/build.gradle +++ b/airbyte-integrations/connectors/destination-azure-blob-storage/build.gradle @@ -14,7 +14,6 @@ dependencies { implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') implementation project(':airbyte-integrations:bases:bases-destination-jdbc') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation 'com.azure:azure-storage-blob:12.20.2' implementation 'org.apache.commons:commons-csv:1.4' diff --git a/airbyte-integrations/connectors/destination-bigquery-denormalized/.dockerignore b/airbyte-integrations/connectors/destination-bigquery-denormalized/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-bigquery-denormalized/.dockerignore +++ b/airbyte-integrations/connectors/destination-bigquery-denormalized/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-bigquery-denormalized/Dockerfile b/airbyte-integrations/connectors/destination-bigquery-denormalized/Dockerfile index e0706ac44eae..d4f64cd8d07e 100644 --- a/airbyte-integrations/connectors/destination-bigquery-denormalized/Dockerfile +++ b/airbyte-integrations/connectors/destination-bigquery-denormalized/Dockerfile @@ -24,5 +24,5 @@ ENV APPLICATION destination-bigquery-denormalized COPY --from=build /airbyte /airbyte -LABEL io.airbyte.version=1.5.3 +LABEL io.airbyte.version=2.0.0 LABEL io.airbyte.name=airbyte/destination-bigquery-denormalized diff --git a/airbyte-integrations/connectors/destination-bigquery-denormalized/build.gradle b/airbyte-integrations/connectors/destination-bigquery-denormalized/build.gradle index bab42c9c7c4a..cacabdbdc24d 100644 --- a/airbyte-integrations/connectors/destination-bigquery-denormalized/build.gradle +++ b/airbyte-integrations/connectors/destination-bigquery-denormalized/build.gradle @@ -28,7 +28,6 @@ dependencies { integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-bigquery-denormalized') integrationTestJavaImplementation project(':airbyte-db:db-lib') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } configurations.all { diff --git a/airbyte-integrations/connectors/destination-bigquery-denormalized/metadata.yaml b/airbyte-integrations/connectors/destination-bigquery-denormalized/metadata.yaml index 6ce69ccbc34e..43fe4ebe8427 100644 --- a/airbyte-integrations/connectors/destination-bigquery-denormalized/metadata.yaml +++ b/airbyte-integrations/connectors/destination-bigquery-denormalized/metadata.yaml @@ -2,7 +2,7 @@ data: connectorSubtype: database connectorType: destination definitionId: 079d5540-f236-4294-ba7c-ade8fd918496 - dockerImageTag: 1.5.3 + dockerImageTag: 2.0.0 dockerRepository: airbyte/destination-bigquery-denormalized githubIssueLabel: destination-bigquery-denormalized icon: bigquery.svg @@ -13,7 +13,12 @@ data: enabled: true oss: enabled: true - releaseStage: beta + releases: + breakingChanges: + 2.0.0: + message: "`destination-bigquery-denormalized` is being retired in favor of `destination-bigquery`, and is no longer maintained. Please switch to destination-bigquery, which will produce similar tables and contains many improvements. Learn more [here](https://docs.airbyte.com/release_notes/upgrading_to_destinations_v2/)." + upgradeDeadline: "2023-11-01" + releaseStage: alpha resourceRequirements: jobSpecific: - jobType: sync diff --git a/airbyte-integrations/connectors/destination-bigquery-denormalized/src/test-integration/java/io/airbyte/integrations/destination/bigquery/BigQueryDenormalizedDestinationAcceptanceTest.java b/airbyte-integrations/connectors/destination-bigquery-denormalized/src/test-integration/java/io/airbyte/integrations/destination/bigquery/BigQueryDenormalizedDestinationAcceptanceTest.java index 7a1abff0188a..798444bf0455 100644 --- a/airbyte-integrations/connectors/destination-bigquery-denormalized/src/test-integration/java/io/airbyte/integrations/destination/bigquery/BigQueryDenormalizedDestinationAcceptanceTest.java +++ b/airbyte-integrations/connectors/destination-bigquery-denormalized/src/test-integration/java/io/airbyte/integrations/destination/bigquery/BigQueryDenormalizedDestinationAcceptanceTest.java @@ -126,7 +126,9 @@ protected void assertNamespaceNormalization(final String testCaseId, if (testCaseId.equals("S3A-1")) { // bigquery allows namespace starting with a number, and prepending underscore // will hide the dataset, so we don't do it as we do for other destinations - assertEquals("99namespace", actualNormalizedNamespace, message); + final int underscoreIndex = expectedNormalizedNamespace.indexOf("_", 1); + final String randomSuffix = expectedNormalizedNamespace.substring(underscoreIndex); + assertEquals("99namespace" + randomSuffix, actualNormalizedNamespace, message); } else { assertEquals(expectedNormalizedNamespace, actualNormalizedNamespace, message); } diff --git a/airbyte-integrations/connectors/destination-bigquery/.dockerignore b/airbyte-integrations/connectors/destination-bigquery/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-bigquery/.dockerignore +++ b/airbyte-integrations/connectors/destination-bigquery/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-bigquery/Dockerfile b/airbyte-integrations/connectors/destination-bigquery/Dockerfile index c45781c4427c..3222e52b9371 100644 --- a/airbyte-integrations/connectors/destination-bigquery/Dockerfile +++ b/airbyte-integrations/connectors/destination-bigquery/Dockerfile @@ -25,5 +25,5 @@ ENV AIRBYTE_NORMALIZATION_INTEGRATION bigquery COPY --from=build /airbyte /airbyte -LABEL io.airbyte.version=2.0.1 +LABEL io.airbyte.version=2.0.12 LABEL io.airbyte.name=airbyte/destination-bigquery diff --git a/airbyte-integrations/connectors/destination-bigquery/build.gradle b/airbyte-integrations/connectors/destination-bigquery/build.gradle index 5b0004d9e808..5590e512c866 100644 --- a/airbyte-integrations/connectors/destination-bigquery/build.gradle +++ b/airbyte-integrations/connectors/destination-bigquery/build.gradle @@ -36,7 +36,6 @@ dependencies { integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-bigquery') integrationTestJavaImplementation project(':airbyte-db:db-lib') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } configurations.all { diff --git a/airbyte-integrations/connectors/destination-bigquery/metadata.yaml b/airbyte-integrations/connectors/destination-bigquery/metadata.yaml index 6acf7af1af66..4584e6fbacee 100644 --- a/airbyte-integrations/connectors/destination-bigquery/metadata.yaml +++ b/airbyte-integrations/connectors/destination-bigquery/metadata.yaml @@ -2,7 +2,7 @@ data: connectorSubtype: database connectorType: destination definitionId: 22f6c74f-5699-40ff-833c-4a879ea40133 - dockerImageTag: 2.0.1 + dockerImageTag: 2.0.12 dockerRepository: airbyte/destination-bigquery githubIssueLabel: destination-bigquery icon: bigquery.svg diff --git a/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/BigQueryDestination.java b/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/BigQueryDestination.java index a8d075e207c5..8ccc696eac0e 100644 --- a/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/BigQueryDestination.java +++ b/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/BigQueryDestination.java @@ -36,7 +36,7 @@ import io.airbyte.integrations.destination.bigquery.typing_deduping.BigQueryDestinationHandler; import io.airbyte.integrations.destination.bigquery.typing_deduping.BigQuerySqlGenerator; import io.airbyte.integrations.destination.bigquery.typing_deduping.BigQueryV1V2Migrator; -import io.airbyte.integrations.destination.bigquery.typing_deduping.BigQueryV2RawTableMigrator; +import io.airbyte.integrations.destination.bigquery.typing_deduping.BigQueryV2TableMigrator; import io.airbyte.integrations.destination.bigquery.uploader.AbstractBigQueryUploader; import io.airbyte.integrations.destination.bigquery.uploader.BigQueryUploaderFactory; import io.airbyte.integrations.destination.bigquery.uploader.UploaderType; @@ -242,13 +242,14 @@ public AirbyteMessageConsumer getConsumer(final JsonNode config, final TyperDeduper typerDeduper; parsedCatalog = catalogParser.parseCatalog(catalog); final BigQueryV1V2Migrator migrator = new BigQueryV1V2Migrator(bigquery, namingResolver); - final BigQueryV2RawTableMigrator v2RawTableMigrator = new BigQueryV2RawTableMigrator(bigquery); + final BigQueryV2TableMigrator v2RawTableMigrator = new BigQueryV2TableMigrator(bigquery); typerDeduper = new DefaultTyperDeduper<>( sqlGenerator, new BigQueryDestinationHandler(bigquery, datasetLocation), parsedCatalog, migrator, - v2RawTableMigrator); + v2RawTableMigrator, + 8); final UploadingMethod uploadingMethod = BigQueryUtils.getLoadingMethod(config); if (uploadingMethod == UploadingMethod.STANDARD) { diff --git a/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/BigQueryRecordConsumer.java b/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/BigQueryRecordConsumer.java index 9a3894b73fdc..3bfcef96f1b9 100644 --- a/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/BigQueryRecordConsumer.java +++ b/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/BigQueryRecordConsumer.java @@ -6,7 +6,6 @@ import com.google.cloud.bigquery.BigQuery; import com.google.cloud.bigquery.TableId; -import io.airbyte.commons.string.Strings; import io.airbyte.integrations.base.AirbyteMessageConsumer; import io.airbyte.integrations.base.FailureTrackingAirbyteMessageConsumer; import io.airbyte.integrations.base.destination.typing_deduping.ParsedCatalog; @@ -15,6 +14,7 @@ import io.airbyte.integrations.base.destination.typing_deduping.TyperDeduper; import io.airbyte.integrations.destination.bigquery.formatter.DefaultBigQueryRecordFormatter; import io.airbyte.integrations.destination.bigquery.uploader.AbstractBigQueryUploader; +import io.airbyte.integrations.util.ConnectorExceptionUtil; import io.airbyte.protocol.models.v0.AirbyteMessage; import io.airbyte.protocol.models.v0.AirbyteMessage.Type; import io.airbyte.protocol.models.v0.AirbyteStreamNameNamespacePair; @@ -124,16 +124,16 @@ public void close(final boolean hasFailed) throws Exception { uploaderMap.forEach((streamId, uploader) -> { try { uploader.close(hasFailed, outputRecordCollector, lastStateMessage); - typerDeduper.typeAndDedupe(streamId.getNamespace(), streamId.getName()); + typerDeduper.typeAndDedupe(streamId.getNamespace(), streamId.getName(), true); } catch (final Exception e) { exceptionsThrown.add(e); LOGGER.error("Exception while closing uploader {}", uploader, e); } }); typerDeduper.commitFinalTables(); - if (!exceptionsThrown.isEmpty()) { - throw new RuntimeException(String.format("Exceptions thrown while closing consumer: %s", Strings.join(exceptionsThrown, "\n"))); - } + typerDeduper.cleanup(); + + ConnectorExceptionUtil.logAllAndThrowFirst("Exceptions thrown while closing consumer: ", exceptionsThrown); } } diff --git a/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/BigQueryReservedKeywords.java b/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/BigQueryReservedKeywords.java new file mode 100644 index 000000000000..308a002244b7 --- /dev/null +++ b/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/BigQueryReservedKeywords.java @@ -0,0 +1,113 @@ +package io.airbyte.integrations.destination.bigquery; + +import com.google.common.collect.ImmutableList; +import java.util.List; + +/** + * NOTE: This class is not used, but is created for completeness. + * See https://cloud.google.com/bigquery/docs/reference/standard-sql/lexical#reserved_keywords + * Copied from https://github.com/airbytehq/airbyte/blob/f226503bd1d4cd9c7412b04d47de584523988443/airbyte-integrations/bases/base-normalization/normalization/transform_catalog/reserved_keywords.py + */ +public class BigQueryReservedKeywords { + + public static final List RESERVED_KEYWORDS = ImmutableList.of( + "ALL", + "AND", + "ANY", + "ARRAY", + "AS", + "ASC", + "ASSERT_ROWS_MODIFIED", + "AT", + "BETWEEN", + "BY", + "CASE", + "CAST", + "COLLATE", + "CONTAINS", + "CREATE", + "CROSS", + "CUBE", + "CURRENT", + "CURRENT_DATE", + "CURRENT_TIME", + "CURRENT_TIMESTAMP", + "DEFAULT", + "DEFINE", + "DESC", + "DISTINCT", + "ELSE", + "END", + "ENUM", + "ESCAPE", + "EXCEPT", + "EXCLUDE", + "EXISTS", + "EXTRACT", + "FALSE", + "FETCH", + "FOLLOWING", + "FOR", + "FROM", + "FULL", + "GROUP", + "GROUPING", + "GROUPS", + "HASH", + "HAVING", + "IF", + "IGNORE", + "IN", + "INNER", + "INTERSECT", + "INTERVAL", + "INTO", + "IS", + "JOIN", + "LATERAL", + "LEFT", + "LIKE", + "LIMIT", + "LOOKUP", + "MERGE", + "NATURAL", + "NEW", + "NO", + "NOT", + "NULL", + "NULLS", + "OF", + "ON", + "OR", + "ORDER", + "OUTER", + "OVER", + "PARTITION", + "PRECEDING", + "PROTO", + "RANGE", + "RECURSIVE", + "RESPECT", + "RIGHT", + "ROLLUP", + "ROWS", + "SELECT", + "SET", + "SOME", + "STRUCT", + "TABLESAMPLE", + "THEN", + "TO", + "TREAT", + "TRUE", + "UNBOUNDED", + "UNION", + "UNNEST", + "USING", + "WHEN", + "WHERE", + "WINDOW", + "WITH", + "WITHIN"); + +} diff --git a/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/BigQueryStagingConsumerFactory.java b/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/BigQueryStagingConsumerFactory.java index fe5903c8c329..e4c95af238c6 100644 --- a/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/BigQueryStagingConsumerFactory.java +++ b/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/BigQueryStagingConsumerFactory.java @@ -30,6 +30,7 @@ import io.airbyte.protocol.models.v0.DestinationSyncMode; import java.util.List; import java.util.Map; +import java.util.concurrent.locks.Lock; import java.util.function.Consumer; import java.util.function.Function; import java.util.stream.Collectors; @@ -64,7 +65,7 @@ public AirbyteMessageConsumer create(final JsonNode config, recordFormatterCreator, tmpTableNameTransformer); - CheckedConsumer typeAndDedupeStreamFunction = + final CheckedConsumer typeAndDedupeStreamFunction = incrementalTypingAndDedupingStreamConsumer(typerDeduper); return new BufferedStreamConsumer( @@ -73,23 +74,24 @@ public AirbyteMessageConsumer create(final JsonNode config, new SerializedBufferingStrategy( onCreateBuffer, catalog, - flushBufferFunction(bigQueryGcsOperations, writeConfigs, catalog, typeAndDedupeStreamFunction)), + flushBufferFunction(bigQueryGcsOperations, writeConfigs, catalog, typeAndDedupeStreamFunction, typerDeduper)), onCloseFunction(bigQueryGcsOperations, writeConfigs, typerDeduper), catalog, json -> true, defaultNamespace); } + // TODO Commenting this out for now since it slows down syncs private CheckedConsumer incrementalTypingAndDedupingStreamConsumer(final TyperDeduper typerDeduper) { - final TypeAndDedupeOperationValve valve = new TypeAndDedupeOperationValve(); +// final TypeAndDedupeOperationValve valve = new TypeAndDedupeOperationValve(); return (streamId) -> { - if (!valve.containsKey(streamId)) { - valve.addStream(streamId); - } - if (valve.readyToTypeAndDedupe(streamId)) { - typerDeduper.typeAndDedupe(streamId.getNamespace(), streamId.getName()); - valve.updateTimeAndIncreaseInterval(streamId); - } +// if (!valve.containsKey(streamId)) { +// valve.addStream(streamId); +// } +// if (valve.readyToTypeAndDedupe(streamId)) { +// typerDeduper.typeAndDedupe(streamId.getNamespace(), streamId.getName(), false); +// valve.updateTimeAndIncreaseInterval(streamId); +// } }; } @@ -181,7 +183,8 @@ private FlushBufferFunction flushBufferFunction( final BigQueryStagingOperations bigQueryGcsOperations, final Map writeConfigs, final ConfiguredAirbyteCatalog catalog, - final CheckedConsumer incrementalTypeAndDedupeConsumer) { + final CheckedConsumer incrementalTypeAndDedupeConsumer, + final TyperDeduper typerDeduper) { return (pair, writer) -> { LOGGER.info("Flushing buffer for stream {} ({}) to staging", pair.getName(), FileUtils.byteCountToDisplaySize(writer.getByteCount())); if (!writeConfigs.containsKey(pair)) { @@ -202,8 +205,14 @@ private FlushBufferFunction flushBufferFunction( * the sync */ writeConfig.addStagedFile(stagedFile); - bigQueryGcsOperations.copyIntoTableFromStage(datasetId, stream, writeConfig.targetTableId(), writeConfig.tableSchema(), - List.of(stagedFile)); + final Lock rawTableInsertLock = typerDeduper.getRawTableInsertLock(writeConfig.namespace(), writeConfig.streamName()); + rawTableInsertLock.lock(); + try { + bigQueryGcsOperations.copyIntoTableFromStage(datasetId, stream, writeConfig.targetTableId(), writeConfig.tableSchema(), + List.of(stagedFile)); + } finally { + rawTableInsertLock.unlock(); + } incrementalTypeAndDedupeConsumer.accept(new AirbyteStreamNameNamespacePair(writeConfig.streamName(), writeConfig.namespace())); } catch (final Exception e) { LOGGER.error("Failed to flush and commit buffer data into destination's raw table:", e); @@ -227,13 +236,13 @@ private OnCloseFunction onCloseFunction(final BigQueryStagingOperations bigQuery * however, with the changes to checkpointing this will no longer be necessary since despite partial * successes, we'll be committing the target table (aka airbyte_raw) table throughout the sync */ - + typerDeduper.typeAndDedupe(); LOGGER.info("Cleaning up destination started for {} streams", writeConfigs.size()); for (final Map.Entry entry : writeConfigs.entrySet()) { - typerDeduper.typeAndDedupe(entry.getKey().getNamespace(), entry.getKey().getName()); bigQueryGcsOperations.dropStageIfExists(entry.getValue().datasetId(), entry.getValue().streamName()); } typerDeduper.commitFinalTables(); + typerDeduper.cleanup(); LOGGER.info("Cleaning up destination completed."); }; } diff --git a/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/BigQueryUtils.java b/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/BigQueryUtils.java index 2f7faf8311cf..d1419212b874 100644 --- a/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/BigQueryUtils.java +++ b/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/BigQueryUtils.java @@ -84,7 +84,7 @@ public static ImmutablePair executeQuery(final Job queryJob) { throw new RuntimeException("Job no longer exists"); } else if (completedJob.getStatus().getError() != null) { // You can also look at queryJob.getStatus().getExecutionErrors() for all - // errors, not just the latest one. + // errors and not just the latest one. return ImmutablePair.of(null, (completedJob.getStatus().getError().toString())); } diff --git a/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/typing_deduping/BigQueryDestinationHandler.java b/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/typing_deduping/BigQueryDestinationHandler.java index a9c3a2949913..7f27d5e83d6d 100644 --- a/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/typing_deduping/BigQueryDestinationHandler.java +++ b/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/typing_deduping/BigQueryDestinationHandler.java @@ -5,21 +5,25 @@ package io.airbyte.integrations.destination.bigquery.typing_deduping; import com.google.cloud.bigquery.BigQuery; +import com.google.cloud.bigquery.BigQueryException; import com.google.cloud.bigquery.Job; import com.google.cloud.bigquery.JobConfiguration; import com.google.cloud.bigquery.JobId; import com.google.cloud.bigquery.JobInfo; import com.google.cloud.bigquery.JobStatistics; +import com.google.cloud.bigquery.JobStatus; import com.google.cloud.bigquery.QueryJobConfiguration; import com.google.cloud.bigquery.Table; import com.google.cloud.bigquery.TableDefinition; import com.google.cloud.bigquery.TableId; +import com.google.common.collect.Streams; import io.airbyte.integrations.base.destination.typing_deduping.DestinationHandler; import io.airbyte.integrations.base.destination.typing_deduping.StreamId; import java.math.BigInteger; import java.util.Comparator; import java.util.Optional; import java.util.UUID; +import java.util.stream.Stream; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -31,19 +35,19 @@ public class BigQueryDestinationHandler implements DestinationHandler findExistingTable(StreamId id) { + public Optional findExistingTable(final StreamId id) { final Table table = bq.getTable(id.finalNamespace(), id.finalName()); return Optional.ofNullable(table).map(Table::getDefinition); } @Override - public boolean isFinalTableEmpty(StreamId id) { + public boolean isFinalTableEmpty(final StreamId id) { return BigInteger.ZERO.equals(bq.getTable(TableId.of(id.finalNamespace(), id.finalName())).getNumRows()); } @@ -60,14 +64,19 @@ public void execute(final String sql) throws InterruptedException { * doesn't do a good job of inferring the query location. Pass it in explicitly. */ Job job = bq.create(JobInfo.of(JobId.newBuilder().setLocation(datasetLocation).build(), QueryJobConfiguration.newBuilder(sql).build())); - job = job.waitFor(); - // waitFor() seems to throw an exception if the query failed, but javadoc says we're supposed to - // handle this case + // job.waitFor() gets stuck forever in some failure cases, so manually poll the job instead. + while (!JobStatus.State.DONE.equals(job.getStatus().getState())) { + Thread.sleep(1000L); + job = job.reload(); + } if (job.getStatus().getError() != null) { - throw new RuntimeException(job.getStatus().getError().toString()); + throw new BigQueryException(Streams.concat( + Stream.of(job.getStatus().getError()), + job.getStatus().getExecutionErrors().stream() + ).toList()); } - JobStatistics.QueryStatistics statistics = job.getStatistics(); + final JobStatistics.QueryStatistics statistics = job.getStatistics(); LOGGER.info("Root-level job {} completed in {} ms; processed {} bytes; billed for {} bytes", queryId, statistics.getEndTime() - statistics.getStartTime(), @@ -80,9 +89,9 @@ public void execute(final String sql) throws InterruptedException { bq.listJobs(BigQuery.JobListOption.parentJobId(job.getJobId().getJob())).streamAll() .sorted(Comparator.comparing(childJob -> childJob.getStatistics().getEndTime())) .forEach(childJob -> { - JobConfiguration configuration = childJob.getConfiguration(); - if (configuration instanceof QueryJobConfiguration qc) { - JobStatistics.QueryStatistics childQueryStats = childJob.getStatistics(); + final JobConfiguration configuration = childJob.getConfiguration(); + if (configuration instanceof final QueryJobConfiguration qc) { + final JobStatistics.QueryStatistics childQueryStats = childJob.getStatistics(); String truncatedQuery = qc.getQuery() .replaceAll("\n", " ") .replaceAll(" +", " ") @@ -98,7 +107,7 @@ public void execute(final String sql) throws InterruptedException { } else { // other job types are extract/copy/load // we're probably not using them, but handle just in case? - JobStatistics childJobStats = childJob.getStatistics(); + final JobStatistics childJobStats = childJob.getStatistics(); LOGGER.info("Non-query child job ({}) completed in {} ms", configuration.getType(), childJobStats.getEndTime() - childJobStats.getStartTime()); diff --git a/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/typing_deduping/BigQuerySqlGenerator.java b/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/typing_deduping/BigQuerySqlGenerator.java index 288bcd99d36b..86e9d63f089c 100644 --- a/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/typing_deduping/BigQuerySqlGenerator.java +++ b/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/typing_deduping/BigQuerySqlGenerator.java @@ -75,10 +75,11 @@ public StreamId buildStreamId(final String namespace, final String name, final S } @Override - public ColumnId buildColumnId(final String name) { + public ColumnId buildColumnId(final String name, final String suffix) { // Bigquery columns are case-insensitive, so do all our validation on the lowercased name - final String canonicalized = name.toLowerCase(); - return new ColumnId(nameTransformer.getIdentifier(name), name, canonicalized); + final String nameWithSuffix = name + suffix; + final String canonicalized = nameWithSuffix.toLowerCase(); + return new ColumnId(nameTransformer.getIdentifier(nameWithSuffix), nameWithSuffix, canonicalized); } public StandardSQLTypeName toDialectType(final AirbyteType type) { @@ -148,8 +149,14 @@ ELSE JSON_QUERY(`_airbyte_data`, '$."${column_name}"') """); } else { final StandardSQLTypeName dialectType = toDialectType(airbyteType); - return "SAFE_CAST(JSON_VALUE(`_airbyte_data`, '$.\"" + escapeColumnNameForJsonPath(column.originalName()) + "\"') as " + dialectType.name() - + ")"; + if (dialectType == StandardSQLTypeName.STRING) { + // json_value implicitly returns a string, so we don't need to cast it. + // SAFE_CAST is actually a massive performance hit, so we should skip it if we can. + return "JSON_VALUE(`_airbyte_data`, '$.\"" + escapeColumnNameForJsonPath(column.originalName()) + "\"')"; + } else { + return "SAFE_CAST(JSON_VALUE(`_airbyte_data`, '$.\"" + escapeColumnNameForJsonPath(column.originalName()) + "\"') as " + dialectType.name() + + ")"; + } } } @@ -414,28 +421,22 @@ String insertNewRecords(final StreamConfig stream, final String finalSuffix, fin final String columnCasts = streamColumns.entrySet().stream().map( col -> extractAndCast(col.getKey(), col.getValue()) + " as " + col.getKey().name(QUOTE) + ",") .collect(joining("\n")); - final String columnErrors; - if (streamColumns.isEmpty()) { - // ARRAY_CONCAT doesn't like having an empty argument list, so handle that case separately - columnErrors = "[]"; - } else { - columnErrors = "ARRAY_CONCAT(" + streamColumns.entrySet().stream().map( - col -> new StringSubstitutor(Map.of( - "raw_col_name", escapeColumnNameForJsonPath(col.getKey().originalName()), - "col_type", toDialectType(col.getValue()).name(), - "json_extract", extractAndCast(col.getKey(), col.getValue()))).replace( - // Explicitly parse json here. This is safe because we're not using the actual value anywhere, - // and necessary because json_query - """ - CASE - WHEN (JSON_QUERY(PARSE_JSON(`_airbyte_data`, wide_number_mode=>'round'), '$."${raw_col_name}"') IS NOT NULL) - AND (JSON_TYPE(JSON_QUERY(PARSE_JSON(`_airbyte_data`, wide_number_mode=>'round'), '$."${raw_col_name}"')) != 'null') - AND (${json_extract} IS NULL) - THEN ['Problem with `${raw_col_name}`'] - ELSE [] - END""")) - .collect(joining(",\n")) + ")"; - } + final String columnErrors = "[" + streamColumns.entrySet().stream().map( + col -> new StringSubstitutor(Map.of( + "raw_col_name", escapeColumnNameForJsonPath(col.getKey().originalName()), + "col_type", toDialectType(col.getValue()).name(), + "json_extract", extractAndCast(col.getKey(), col.getValue()))).replace( + // Explicitly parse json here. This is safe because we're not using the actual value anywhere, + // and necessary because json_query + """ + CASE + WHEN (JSON_QUERY(PARSE_JSON(`_airbyte_data`, wide_number_mode=>'round'), '$."${raw_col_name}"') IS NOT NULL) + AND (JSON_TYPE(JSON_QUERY(PARSE_JSON(`_airbyte_data`, wide_number_mode=>'round'), '$."${raw_col_name}"')) != 'null') + AND (${json_extract} IS NULL) + THEN 'Problem with `${raw_col_name}`' + ELSE NULL + END""")) + .collect(joining(",\n")) + "]"; final String columnList = streamColumns.keySet().stream().map(quotedColumnId -> quotedColumnId.name(QUOTE) + ",").collect(joining("\n")); String cdcConditionalOrIncludeStatement = ""; @@ -466,7 +467,7 @@ AND JSON_VALUE(`_airbyte_data`, '$._ab_cdc_deleted_at') IS NOT NULL WITH intermediate_data AS ( SELECT ${column_casts} - ${column_errors} as _airbyte_cast_errors, + ${column_errors} AS column_errors, _airbyte_raw_id, _airbyte_extracted_at FROM ${raw_table_id} @@ -476,7 +477,7 @@ WITH intermediate_data AS ( ) SELECT ${column_list} - to_json(struct(_airbyte_cast_errors AS errors)) AS _airbyte_meta, + to_json(struct(COALESCE((SELECT ARRAY_AGG(unnested_column_errors IGNORE NULLS) FROM UNNEST(column_errors) unnested_column_errors), []) AS errors)) AS _airbyte_meta, _airbyte_raw_id, _airbyte_extracted_at FROM intermediate_data;"""); diff --git a/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/typing_deduping/BigQueryV2RawTableMigrator.java b/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/typing_deduping/BigQueryV2TableMigrator.java similarity index 95% rename from airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/typing_deduping/BigQueryV2RawTableMigrator.java rename to airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/typing_deduping/BigQueryV2TableMigrator.java index cbbf5e122f37..b235e465677c 100644 --- a/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/typing_deduping/BigQueryV2RawTableMigrator.java +++ b/airbyte-integrations/connectors/destination-bigquery/src/main/java/io/airbyte/integrations/destination/bigquery/typing_deduping/BigQueryV2TableMigrator.java @@ -15,19 +15,19 @@ import com.google.cloud.bigquery.TableId; import io.airbyte.integrations.base.JavaBaseConstants; import io.airbyte.integrations.base.destination.typing_deduping.StreamConfig; -import io.airbyte.integrations.base.destination.typing_deduping.V2RawTableMigrator; +import io.airbyte.integrations.base.destination.typing_deduping.V2TableMigrator; import java.util.Map; import org.apache.commons.text.StringSubstitutor; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class BigQueryV2RawTableMigrator implements V2RawTableMigrator { +public class BigQueryV2TableMigrator implements V2TableMigrator { - private static final Logger LOGGER = LoggerFactory.getLogger(BigQueryV2RawTableMigrator.class); + private static final Logger LOGGER = LoggerFactory.getLogger(BigQueryV2TableMigrator.class); private final BigQuery bq; - public BigQueryV2RawTableMigrator(final BigQuery bq) { + public BigQueryV2TableMigrator(final BigQuery bq) { this.bq = bq; } diff --git a/airbyte-integrations/connectors/destination-bigquery/src/main/resources/spec.json b/airbyte-integrations/connectors/destination-bigquery/src/main/resources/spec.json index 70f310dca673..6183d2156724 100644 --- a/airbyte-integrations/connectors/destination-bigquery/src/main/resources/spec.json +++ b/airbyte-integrations/connectors/destination-bigquery/src/main/resources/spec.json @@ -77,16 +77,6 @@ "description": "Loading method used to send select the way data will be uploaded to BigQuery.
Standard Inserts - Direct uploading using SQL INSERT statements. This method is extremely inefficient and provided only for quick testing. In almost all cases, you should use staging.
GCS Staging - Writes large batches of records to a file, uploads the file to GCS, then uses COPY INTO table to upload the file. Recommended for most workloads for better speed and scalability. Read more about GCS Staging here.", "order": 3, "oneOf": [ - { - "title": "Standard Inserts", - "required": ["method"], - "properties": { - "method": { - "type": "string", - "const": "Standard" - } - } - }, { "title": "GCS Staging", "required": [ @@ -178,6 +168,16 @@ "order": 5 } } + }, + { + "title": "Standard Inserts", + "required": ["method"], + "properties": { + "method": { + "type": "string", + "const": "Standard" + } + } } ] }, diff --git a/airbyte-integrations/connectors/destination-bigquery/src/test-integration/java/io/airbyte/integrations/destination/bigquery/typing_deduping/AbstractBigQueryTypingDedupingTest.java b/airbyte-integrations/connectors/destination-bigquery/src/test-integration/java/io/airbyte/integrations/destination/bigquery/typing_deduping/AbstractBigQueryTypingDedupingTest.java index ffc5104f5cd7..a7d5915f67b2 100644 --- a/airbyte-integrations/connectors/destination-bigquery/src/test-integration/java/io/airbyte/integrations/destination/bigquery/typing_deduping/AbstractBigQueryTypingDedupingTest.java +++ b/airbyte-integrations/connectors/destination-bigquery/src/test-integration/java/io/airbyte/integrations/destination/bigquery/typing_deduping/AbstractBigQueryTypingDedupingTest.java @@ -13,6 +13,7 @@ import com.google.cloud.bigquery.TableResult; import io.airbyte.integrations.base.JavaBaseConstants; import io.airbyte.integrations.base.destination.typing_deduping.BaseTypingDedupingTest; +import io.airbyte.integrations.base.destination.typing_deduping.SqlGenerator; import io.airbyte.integrations.base.destination.typing_deduping.StreamId; import io.airbyte.integrations.destination.bigquery.BigQueryDestination; import io.airbyte.integrations.destination.bigquery.BigQueryDestinationTestUtils; @@ -79,6 +80,11 @@ protected void teardownStreamAndNamespace(String streamNamespace, final String s bq.delete(DatasetId.of(streamNamespace), BigQuery.DatasetDeleteOption.deleteContents()); } + @Override + protected SqlGenerator getSqlGenerator() { + return new BigQuerySqlGenerator(null); + } + /** * Run a sync using 1.9.0 (which is the highest version that still creates v2 raw tables with JSON * _airbyte_data). Then run a sync using our current version. diff --git a/airbyte-integrations/connectors/destination-bigquery/src/test-integration/resources/sqlgenerator/reservedkeywords_expectedrecords_final.jsonl b/airbyte-integrations/connectors/destination-bigquery/src/test-integration/resources/sqlgenerator/reservedkeywords_expectedrecords_final.jsonl new file mode 100644 index 000000000000..faf284d27489 --- /dev/null +++ b/airbyte-integrations/connectors/destination-bigquery/src/test-integration/resources/sqlgenerator/reservedkeywords_expectedrecords_final.jsonl @@ -0,0 +1 @@ +{"_airbyte_raw_id":"b2e0efc4-38a8-47ba-970c-8103f09f08d5","_airbyte_extracted_at":"2023-01-01T00:00:00Z","_airbyte_meta":{"errors":[]}, "current_date": "foo", "join": "bar"} diff --git a/airbyte-integrations/connectors/destination-cassandra/.dockerignore b/airbyte-integrations/connectors/destination-cassandra/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-cassandra/.dockerignore +++ b/airbyte-integrations/connectors/destination-cassandra/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-cassandra/build.gradle b/airbyte-integrations/connectors/destination-cassandra/build.gradle index 74361d3bb2cb..aba6d24fc4b1 100644 --- a/airbyte-integrations/connectors/destination-cassandra/build.gradle +++ b/airbyte-integrations/connectors/destination-cassandra/build.gradle @@ -16,7 +16,6 @@ dependencies { implementation project(':airbyte-config-oss:config-models-oss') implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation "com.datastax.oss:java-driver-core:${cassandraDriver}" implementation "com.datastax.oss:java-driver-query-builder:${cassandraDriver}" @@ -25,7 +24,7 @@ dependencies { // https://mvnrepository.com/artifact/org.assertj/assertj-core testImplementation "org.assertj:assertj-core:${assertVersion}" - testImplementation libs.connectors.testcontainers.cassandra + testImplementation libs.testcontainers.cassandra testImplementation project(':airbyte-integrations:bases:standard-destination-test') diff --git a/airbyte-integrations/connectors/destination-chroma/.dockerignore b/airbyte-integrations/connectors/destination-chroma/.dockerignore new file mode 100644 index 000000000000..f89c3a5ca804 --- /dev/null +++ b/airbyte-integrations/connectors/destination-chroma/.dockerignore @@ -0,0 +1,5 @@ +* +!Dockerfile +!main.py +!destination_chroma +!setup.py diff --git a/airbyte-integrations/connectors/destination-chroma/Dockerfile b/airbyte-integrations/connectors/destination-chroma/Dockerfile new file mode 100644 index 000000000000..74ace2021bb4 --- /dev/null +++ b/airbyte-integrations/connectors/destination-chroma/Dockerfile @@ -0,0 +1,45 @@ +FROM python:3.10-slim as base + +# build and load all requirements +FROM base as builder +WORKDIR /airbyte/integration_code + +RUN apt-get update \ + && pip install --upgrade pip \ + && apt-get install -y build-essential cmake g++ libffi-dev libstdc++6 + +# upgrade pip to the latest version +COPY setup.py ./ + +RUN pip install --upgrade pip + +# This is required because the current connector dependency is not compatible with the CDK version +# An older CDK version will be used, which depends on pyYAML 5.4, for which we need to pin Cython to <3.0 +# As of today the CDK version that satisfies the main dependency requirements, is 0.1.80 ... +RUN pip install --prefix=/install "Cython<3.0" "pyyaml~=5.4" --no-build-isolation + +# install necessary packages to a temporary folder +RUN pip install --prefix=/install . + +# build a clean environment +FROM base +WORKDIR /airbyte/integration_code + +# copy all loaded and built libraries to a pure basic image +COPY --from=builder /install /usr/local +# add default timezone settings +COPY --from=builder /usr/share/zoneinfo/Etc/UTC /etc/localtime +RUN echo "Etc/UTC" > /etc/timezone + +# bash is installed for more convenient debugging. +RUN apt-get install bash + +# copy payload code only +COPY main.py ./ +COPY destination_chroma ./destination_chroma + +ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" +ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] + +LABEL io.airbyte.version=0.0.1 +LABEL io.airbyte.name=airbyte/destination-chroma diff --git a/airbyte-integrations/connectors/destination-chroma/README.md b/airbyte-integrations/connectors/destination-chroma/README.md new file mode 100644 index 000000000000..257ac380782a --- /dev/null +++ b/airbyte-integrations/connectors/destination-chroma/README.md @@ -0,0 +1,123 @@ +# Chroma Destination + +This is the repository for the Chroma destination connector, written in Python. +For information about how to use this connector within Airbyte, see [the documentation](https://docs.airbyte.com/integrations/destinations/chroma). + +## Local development + +### Prerequisites +**To iterate on this connector, make sure to complete this prerequisites section.** + +#### Minimum Python version required `= 3.7.0` + +#### Build & Activate Virtual Environment and install dependencies +From this connector directory, create a virtual environment: +``` +python -m venv .venv +``` + +This will generate a virtualenv for this module in `.venv/`. Make sure this venv is active in your +development environment of choice. To activate it from the terminal, run: +``` +source .venv/bin/activate +pip install -r requirements.txt +``` +If you are in an IDE, follow your IDE's instructions to activate the virtualenv. + +Note that while we are installing dependencies from `requirements.txt`, you should only edit `setup.py` for your dependencies. `requirements.txt` is +used for editable installs (`pip install -e`) to pull in Python dependencies from the monorepo and will call `setup.py`. +If this is mumbo jumbo to you, don't worry about it, just put your deps in `setup.py` but install using `pip install -r requirements.txt` and everything +should work as you expect. + +#### Building via Gradle +From the Airbyte repository root, run: +``` +./gradlew :airbyte-integrations:connectors:destination-chroma:build +``` + +#### Create credentials +**If you are a community contributor**, follow the instructions in the [documentation](https://docs.airbyte.com/integrations/destinations/chroma) +to generate the necessary credentials. Then create a file `secrets/config.json` conforming to the `destination_chroma/spec.json` file. +Note that the `secrets` directory is gitignored by default, so there is no danger of accidentally checking in sensitive information. +See `integration_tests/sample_config.json` for a sample config file. + +**If you are an Airbyte core member**, copy the credentials in Lastpass under the secret name `destination chroma test creds` +and place them into `secrets/config.json`. + +### Locally running the connector +``` +python main.py spec +python main.py check --config secrets/config.json +python main.py discover --config secrets/config.json +python main.py read --config secrets/config.json --catalog integration_tests/configured_catalog.json +``` + +### Locally running the connector docker image + +#### Build +First, make sure you build the latest Docker image: +``` +docker build . -t airbyte/destination-chroma:dev +``` + +You can also build the connector image via Gradle: +``` +./gradlew :airbyte-integrations:connectors:destination-chroma:airbyteDocker +``` +When building via Gradle, the docker image name and tag, respectively, are the values of the `io.airbyte.name` and `io.airbyte.version` `LABEL`s in +the Dockerfile. + +#### Run +Then run any of the connector commands as follows: +``` +docker run --rm airbyte/destination-chroma:dev spec +docker run --rm -v $(pwd)/secrets:/secrets airbyte/destination-chroma:dev check --config /secrets/config.json +# messages.jsonl is a file containing line-separated JSON representing AirbyteMessages +cat messages.jsonl | docker run --rm -v $(pwd)/secrets:/secrets -v $(pwd)/integration_tests:/integration_tests airbyte/destination-chroma:dev write --config /secrets/config.json --catalog /integration_tests/configured_catalog.json +``` +## Testing + Make sure to familiarize yourself with [pytest test discovery](https://docs.pytest.org/en/latest/goodpractices.html#test-discovery) to know how your test files and methods should be named. +First install test dependencies into your virtual environment: +``` +pip install .[tests] +``` +### Unit Tests +To run unit tests locally, from the connector directory run: +``` +python -m pytest unit_tests +``` + +### Integration Tests +There are two types of integration tests: Acceptance Tests (Airbyte's test suite for all destination connectors) and custom integration tests (which are specific to this connector). +#### Custom Integration tests +Place custom tests inside `integration_tests/` folder, then, from the connector root, run +``` +python -m pytest integration_tests +``` +#### Acceptance Tests +Coming soon: + +### Using gradle to run tests +All commands should be run from airbyte project root. +To run unit tests: +``` +./gradlew :airbyte-integrations:connectors:destination-chroma:unitTest +``` +To run acceptance and custom integration tests: +``` +./gradlew :airbyte-integrations:connectors:destination-chroma:integrationTest +``` + +## Dependency Management +All of your dependencies should go in `setup.py`, NOT `requirements.txt`. The requirements file is only used to connect internal Airbyte dependencies in the monorepo for local development. +We split dependencies between two groups, dependencies that are: +* required for your connector to work need to go to `MAIN_REQUIREMENTS` list. +* required for the testing need to go to `TEST_REQUIREMENTS` list + +### Publishing a new version of the connector +You've checked out the repo, implemented a million dollar feature, and you're ready to share your changes with the world. Now what? +1. Make sure your changes are passing unit and integration tests. +1. Bump the connector version in `Dockerfile` -- just increment the value of the `LABEL io.airbyte.version` appropriately (we use [SemVer](https://semver.org/)). +1. Create a Pull Request. +1. Pat yourself on the back for being an awesome contributor. +1. Someone from Airbyte will take a look at your PR and iterate with you to merge it into master. diff --git a/airbyte-integrations/connectors/destination-chroma/build.gradle b/airbyte-integrations/connectors/destination-chroma/build.gradle new file mode 100644 index 000000000000..f2f56e4629aa --- /dev/null +++ b/airbyte-integrations/connectors/destination-chroma/build.gradle @@ -0,0 +1,8 @@ +plugins { + id 'airbyte-python' + id 'airbyte-docker' +} + +airbytePython { + moduleDirectory 'destination_chroma' +} diff --git a/airbyte-integrations/connectors/destination-chroma/destination_chroma/__init__.py b/airbyte-integrations/connectors/destination-chroma/destination_chroma/__init__.py new file mode 100644 index 000000000000..3ebffc51e313 --- /dev/null +++ b/airbyte-integrations/connectors/destination-chroma/destination_chroma/__init__.py @@ -0,0 +1,8 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + + +from .destination import DestinationChroma + +__all__ = ["DestinationChroma"] diff --git a/airbyte-integrations/connectors/destination-chroma/destination_chroma/config.py b/airbyte-integrations/connectors/destination-chroma/destination_chroma/config.py new file mode 100644 index 000000000000..9f60ad022cfb --- /dev/null +++ b/airbyte-integrations/connectors/destination-chroma/destination_chroma/config.py @@ -0,0 +1,101 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + +from typing import Literal, Optional, Union + +import dpath.util +from airbyte_cdk.destinations.vector_db_based.config import ( + CohereEmbeddingConfigModel, + FakeEmbeddingConfigModel, + FromFieldEmbeddingConfigModel, + OpenAIEmbeddingConfigModel, + ProcessingConfigModel, +) +from airbyte_cdk.utils.spec_schema_transformations import resolve_refs +from pydantic import BaseModel, Field + + +class HttpMode(BaseModel): + mode: Literal["http_client"] = Field("http_client", const=True) + host: str = Field(..., title="Host", description="The URL to the chromadb instance", order=0) + port: int = Field(..., title="Port", description="The port to the chromadb instance", order=1) + ssl: bool = Field(..., title="SSL", description="Whether to use SSL to connect to the Chroma server", order=2) + username: Optional[str] = Field(default="", title="Username", description="Username used in server/client mode only", order=3) + password: Optional[str] = Field( + default="", title="Password", description="Password used in server/client mode only", airbyte_secret=True, order=4 + ) + + class Config: + title = "Client/Server Mode" + schema_extra = {"description": "Authenticate using username and password (suitable for self-managed Chroma clusters)"} + + +class PersistentMode(BaseModel): + mode: Literal["persistent_client"] = Field("persistent_client", const=True) + path: str = Field(..., title="Path", description="Where Chroma will store its database files on disk, and load them on start.") + + class Config: + title = "Persistent Client Mode" + schema_extra = {"description": "Configure Chroma to save and load from your local machine"} + + +class ChromaIndexingConfigModel(BaseModel): + + auth_method: Union[PersistentMode, HttpMode] = Field( + ..., title="Connection Mode", description="Mode how to connect to Chroma", discriminator="mode", type="object", order=0 + ) + collection_name: str = Field(..., title="Collection Name", description="The collection to load data into", order=3) + + class Config: + title = "Indexing" + schema_extra = { + "group": "indexing", + "description": "Indexing configuration", + } + + +class NoEmbeddingConfigModel(BaseModel): + mode: Literal["no_embedding"] = Field("no_embedding", const=True) + + class Config: + title = "Chroma Default Embedding Function" + schema_extra = { + "description": "Do not calculate embeddings. Chromadb uses the sentence transfomer (https://www.sbert.net/index.html) as a default if an embedding function is not defined. Note that depending on your hardware, calculating embeddings locally can be very slow and is mostly suited for prototypes." + } + + +class ConfigModel(BaseModel): + processing: ProcessingConfigModel + embedding: Union[ + OpenAIEmbeddingConfigModel, + CohereEmbeddingConfigModel, + FakeEmbeddingConfigModel, + FromFieldEmbeddingConfigModel, + NoEmbeddingConfigModel, + ] = Field(..., title="Embedding", description="Embedding configuration", discriminator="mode", group="embedding", type="object") + indexing: ChromaIndexingConfigModel + + class Config: + title = "Chroma Destination Config" + schema_extra = { + "groups": [ + {"id": "processing", "title": "Processing"}, + {"id": "embedding", "title": "Embedding"}, + {"id": "indexing", "title": "Indexing"}, + ] + } + + @staticmethod + def remove_discriminator(schema: dict) -> None: + """pydantic adds "discriminator" to the schema for oneOfs, which is not treated right by the platform as we inline all references""" + dpath.util.delete(schema, "properties/*/discriminator") + dpath.util.delete(schema, "properties/**/discriminator") + + @classmethod + def schema(cls): + """we're overriding the schema classmethod to enable some post-processing""" + schema = super().schema() + schema = resolve_refs(schema) + cls.remove_discriminator(schema) + return schema diff --git a/airbyte-integrations/connectors/destination-chroma/destination_chroma/destination.py b/airbyte-integrations/connectors/destination-chroma/destination_chroma/destination.py new file mode 100644 index 000000000000..98082a6888f9 --- /dev/null +++ b/airbyte-integrations/connectors/destination-chroma/destination_chroma/destination.py @@ -0,0 +1,96 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + + +from typing import Any, Iterable, Mapping + +from airbyte_cdk import AirbyteLogger +from airbyte_cdk.destinations import Destination +from airbyte_cdk.destinations.vector_db_based.embedder import CohereEmbedder, Embedder, FakeEmbedder, FromFieldEmbedder, OpenAIEmbedder +from airbyte_cdk.destinations.vector_db_based.indexer import Indexer +from airbyte_cdk.destinations.vector_db_based.writer import Writer +from airbyte_cdk.models import ( + AirbyteConnectionStatus, + AirbyteMessage, + ConfiguredAirbyteCatalog, + ConnectorSpecification, + DestinationSyncMode, + Status, +) +from destination_chroma.config import ConfigModel +from destination_chroma.indexer import ChromaIndexer +from destination_chroma.no_embedder import NoEmbedder + +BATCH_SIZE = 128 + +embedder_map = { + "openai": OpenAIEmbedder, + "cohere": CohereEmbedder, + "fake": FakeEmbedder, + "from_field": FromFieldEmbedder, + "no_embedding": NoEmbedder, +} + + +class DestinationChroma(Destination): + + indexer: Indexer + embedder: Embedder + + def _init_indexer(self, config: ConfigModel): + self.embedder = embedder_map[config.embedding.mode](config.embedding) + self.indexer = ChromaIndexer(config.indexing) + + def write( + self, config: Mapping[str, Any], configured_catalog: ConfiguredAirbyteCatalog, input_messages: Iterable[AirbyteMessage] + ) -> Iterable[AirbyteMessage]: + + """ + Reads the input stream of messages, config, and catalog to write data to the destination. + + This method returns an iterable (typically a generator of AirbyteMessages via yield) containing state messages received + in the input message stream. Outputting a state message means that every AirbyteRecordMessage which came before it has been + successfully persisted to the destination. This is used to ensure fault tolerance in the case that a sync fails before fully completing, + then the source is given the last state message output from this method as the starting point of the next sync. + + :param config: dict of JSON configuration matching the configuration declared in spec.json + :param configured_catalog: The Configured Catalog describing the schema of the data being received and how it should be persisted in the + destination + :param input_messages: The stream of input messages received from the source + :return: Iterable of AirbyteStateMessages wrapped in AirbyteMessage structs + """ + + config_model = ConfigModel.parse_obj(config) + self._init_indexer(config_model) + writer = Writer(config_model.processing, self.indexer, self.embedder, batch_size=BATCH_SIZE) + yield from writer.write(configured_catalog, input_messages) + + def check(self, logger: AirbyteLogger, config: Mapping[str, Any]) -> AirbyteConnectionStatus: + """ + Tests if the input configuration can be used to successfully connect to the destination with the needed permissions + e.g: if a provided API token or password can be used to connect and write to the destination. + + :param logger: Logging object to display debug/info/error to the logs + (logs will not be accessible via airbyte UI if they are not passed to this logger) + :param config: Json object containing the configuration of this destination, content of this json is as specified in + the properties of the spec.json file + + :return: AirbyteConnectionStatus indicating a Success or Failure + """ + self._init_indexer(ConfigModel.parse_obj(config)) + embedder_error = self.embedder.check() + indexer_error = self.indexer.check() + errors = [error for error in [embedder_error, indexer_error] if error is not None] + if len(errors) > 0: + return AirbyteConnectionStatus(status=Status.FAILED, message="\n".join(errors)) + else: + return AirbyteConnectionStatus(status=Status.SUCCEEDED) + + def spec(self, *args: Any, **kwargs: Any) -> ConnectorSpecification: + return ConnectorSpecification( + documentationUrl="https://docs.airbyte.com/integrations/destinations/chroma", + supportsIncremental=True, + supported_destination_sync_modes=[DestinationSyncMode.overwrite, DestinationSyncMode.append, DestinationSyncMode.append_dedup], + connectionSpecification=ConfigModel.schema(), + ) diff --git a/airbyte-integrations/connectors/destination-chroma/destination_chroma/indexer.py b/airbyte-integrations/connectors/destination-chroma/destination_chroma/indexer.py new file mode 100644 index 000000000000..84d6fb24ce9c --- /dev/null +++ b/airbyte-integrations/connectors/destination-chroma/destination_chroma/indexer.py @@ -0,0 +1,122 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + +import json +import uuid +from typing import List + +import chromadb +from airbyte_cdk.destinations.vector_db_based.document_processor import METADATA_RECORD_ID_FIELD, METADATA_STREAM_FIELD, Chunk +from airbyte_cdk.destinations.vector_db_based.indexer import Indexer +from airbyte_cdk.destinations.vector_db_based.utils import format_exception +from airbyte_cdk.models import ConfiguredAirbyteCatalog +from airbyte_cdk.models.airbyte_protocol import DestinationSyncMode +from chromadb.config import Settings +from destination_chroma.config import ChromaIndexingConfigModel +from destination_chroma.utils import is_valid_collection_name + + +class ChromaIndexer(Indexer): + def __init__(self, config: ChromaIndexingConfigModel): + super().__init__(config) + self.collection_name = config.collection_name + + def check(self): + collection_name_validation_error = is_valid_collection_name(self.collection_name) + if collection_name_validation_error: + return collection_name_validation_error + + auth_method = self.config.auth_method + if auth_method.mode == "persistent_client" and not auth_method.path.startswith("/local/"): + return "Path must be prefixed with /local" + + client = self._get_client() + try: + heartbeat = client.heartbeat() + if not heartbeat: + return "Chroma client server is not alive" + collection = client.get_or_create_collection(name=self.collection_name) + count = collection.count() + if count != 0 and not count: + return f"unable to get or create collection with name {self.collection_name}" + return + except Exception as e: + return format_exception(e) + finally: + del client + + def index(self, document_chunks: List[Chunk], delete_ids: List[str]) -> None: + if len(delete_ids) > 0: + self._delete_by_filter(field_name=METADATA_RECORD_ID_FIELD, field_values=delete_ids) + entities = [] + for i in range(len(document_chunks)): + chunk = document_chunks[i] + entities.append( + { + "id": str(uuid.uuid4()), + "embedding": chunk.embedding, + "metadata": self._normalize(chunk.metadata), + "document": chunk.page_content, + } + ) + self._write_data(entities) + + def pre_sync(self, catalog: ConfiguredAirbyteCatalog) -> None: + self.client = self._get_client() + streams_to_overwrite = [ + stream.stream.name for stream in catalog.streams if stream.destination_sync_mode == DestinationSyncMode.overwrite + ] + if len(streams_to_overwrite): + self._delete_by_filter(field_name=METADATA_STREAM_FIELD, field_values=streams_to_overwrite) + + def _get_client(self): + auth_method = self.config.auth_method + if auth_method.mode == "persistent_client": + path = auth_method.path + client = chromadb.PersistentClient(path=path) + return client + + elif auth_method.mode == "http_client": + host = auth_method.host + port = auth_method.port + ssl = auth_method.ssl + username = auth_method.username + password = auth_method.password + + if username and password: + settings = Settings( + chroma_client_auth_provider="chromadb.auth.basic.BasicAuthClientProvider", + chroma_client_auth_credentials=f"{username}:{password}", + ) + client = chromadb.HttpClient(settings=settings, host=host, port=port, ssl=ssl) + else: + client = chromadb.HttpClient(host=host, port=port, ssl=ssl) + return client + return + + def _delete_by_filter(self, field_name, field_values): + collection = self.client.get_collection(name=self.collection_name) + where_filter = {field_name: {"$in": field_values}} + collection.delete(where=where_filter) + + def _normalize(self, metadata: dict) -> dict: + result = {} + for key, value in metadata.items(): + if isinstance(value, (str, int, float, bool)): + result[key] = value + else: + # JSON encode all other types + result[key] = json.dumps(value) + return result + + def _write_data(self, entities): + ids = [entity["id"] for entity in entities] + embeddings = [entity["embedding"] for entity in entities] + if not any(embeddings): + embeddings = None + metadatas = [entity["metadata"] for entity in entities] + documents = [entity["document"] for entity in entities] + + collection = self.client.get_collection(name=self.collection_name) + collection.add(ids=ids, embeddings=embeddings, metadatas=metadatas, documents=documents) diff --git a/airbyte-integrations/connectors/destination-chroma/destination_chroma/no_embedder.py b/airbyte-integrations/connectors/destination-chroma/destination_chroma/no_embedder.py new file mode 100644 index 000000000000..8cc1c7cac379 --- /dev/null +++ b/airbyte-integrations/connectors/destination-chroma/destination_chroma/no_embedder.py @@ -0,0 +1,24 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + +from typing import List, Optional + +from airbyte_cdk.destinations.vector_db_based.document_processor import Chunk +from airbyte_cdk.destinations.vector_db_based.embedder import Embedder +from destination_chroma.config import NoEmbeddingConfigModel + + +class NoEmbedder(Embedder): + def __init__(self, config: NoEmbeddingConfigModel): + super().__init__() + + def check(self) -> Optional[str]: + return None + + def embed_chunks(self, chunks: List[Chunk]) -> List[None]: + return [None for _ in chunks] + + @property + def embedding_dimensions(self) -> int: + return None diff --git a/airbyte-integrations/connectors/destination-chroma/destination_chroma/utils.py b/airbyte-integrations/connectors/destination-chroma/destination_chroma/utils.py new file mode 100644 index 000000000000..1adefb606f9d --- /dev/null +++ b/airbyte-integrations/connectors/destination-chroma/destination_chroma/utils.py @@ -0,0 +1,29 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + +import re +from ipaddress import ip_address + + +def is_valid_collection_name(stream_name: str): + # Check length constraint + if len(stream_name) < 3 or len(stream_name) > 63: + return "The length of the collection name must be between 3 and 63 characters" + # Check lowercase letter or digit at start and end + if not (stream_name[0].islower() or stream_name[0].isdigit()) or not (stream_name[-1].islower() or stream_name[-1].isdigit()): + return "The collection name must start and end with a lowercase letter or a digit" + # Check allowed characters + if not re.match("^[a-z0-9][a-zA-Z0-9._-]*[a-z0-9]$", stream_name): + return "The collection name can only contain lower case alphanumerics, dots, dashes, and underscores" + # Check consecutive dots + if ".." in stream_name: + return "The collection name must not contain two consecutive dots" + # Check for valid IP address + try: + ip_address(stream_name) + return "The collection name must not be a valid IP address." + except ValueError: + if re.match("^[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}$", stream_name): + return "The collection name must not be a valid IP address." + return diff --git a/airbyte-integrations/connectors/destination-chroma/icon.svg b/airbyte-integrations/connectors/destination-chroma/icon.svg new file mode 100644 index 000000000000..fc07764e4359 --- /dev/null +++ b/airbyte-integrations/connectors/destination-chroma/icon.svg @@ -0,0 +1,59 @@ + + + + + Chroma + + + + + + diff --git a/airbyte-integrations/connectors/destination-chroma/integration_tests/integration_test.py b/airbyte-integrations/connectors/destination-chroma/integration_tests/integration_test.py new file mode 100644 index 000000000000..d945ab6b09af --- /dev/null +++ b/airbyte-integrations/connectors/destination-chroma/integration_tests/integration_test.py @@ -0,0 +1,8 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + + +def integration_test(): + # TODO write integration tests + pass diff --git a/airbyte-integrations/connectors/destination-chroma/main.py b/airbyte-integrations/connectors/destination-chroma/main.py new file mode 100644 index 000000000000..88af98a9500c --- /dev/null +++ b/airbyte-integrations/connectors/destination-chroma/main.py @@ -0,0 +1,11 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + + +import sys + +from destination_chroma import DestinationChroma + +if __name__ == "__main__": + DestinationChroma().run(sys.argv[1:]) diff --git a/airbyte-integrations/connectors/destination-chroma/metadata.yaml b/airbyte-integrations/connectors/destination-chroma/metadata.yaml new file mode 100644 index 000000000000..9d76a96c6103 --- /dev/null +++ b/airbyte-integrations/connectors/destination-chroma/metadata.yaml @@ -0,0 +1,22 @@ +data: + registries: + oss: + enabled: true + cloud: + enabled: false + connectorSubtype: database + connectorType: destination + definitionId: 0b75218b-f702-4a28-85ac-34d3d84c0fc2 + dockerImageTag: 0.0.1 + dockerRepository: airbyte/destination-chroma + githubIssueLabel: destination-chroma + icon: chroma.svg + license: MIT + name: Chroma + releaseDate: "2023-09-13" + releaseStage: alpha + supportLevel: community + documentationUrl: https://docs.airbyte.com/integrations/destinations/chroma + tags: + - language:python +metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/destination-chroma/requirements.txt b/airbyte-integrations/connectors/destination-chroma/requirements.txt new file mode 100644 index 000000000000..d6e1198b1ab1 --- /dev/null +++ b/airbyte-integrations/connectors/destination-chroma/requirements.txt @@ -0,0 +1 @@ +-e . diff --git a/airbyte-integrations/connectors/destination-chroma/setup.py b/airbyte-integrations/connectors/destination-chroma/setup.py new file mode 100644 index 000000000000..7d10049ce79c --- /dev/null +++ b/airbyte-integrations/connectors/destination-chroma/setup.py @@ -0,0 +1,26 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + + +from setuptools import find_packages, setup + +MAIN_REQUIREMENTS = [ + "airbyte-cdk[vector-db-based]", + "chromadb", +] + +TEST_REQUIREMENTS = ["pytest~=6.2"] + +setup( + name="destination_chroma", + description="Destination implementation for Chroma.", + author="Airbyte", + author_email="contact@airbyte.io", + packages=find_packages(), + install_requires=MAIN_REQUIREMENTS, + package_data={"": ["*.json"]}, + extras_require={ + "tests": TEST_REQUIREMENTS, + }, +) diff --git a/airbyte-integrations/connectors/destination-chroma/unit_tests/__init__.py b/airbyte-integrations/connectors/destination-chroma/unit_tests/__init__.py new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/airbyte-integrations/connectors/destination-chroma/unit_tests/test_destination.py b/airbyte-integrations/connectors/destination-chroma/unit_tests/test_destination.py new file mode 100644 index 000000000000..ccc38573dce3 --- /dev/null +++ b/airbyte-integrations/connectors/destination-chroma/unit_tests/test_destination.py @@ -0,0 +1,98 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + +import unittest +from unittest.mock import MagicMock, Mock, patch + +from airbyte_cdk import AirbyteLogger +from airbyte_cdk.models import ConnectorSpecification, Status +from destination_chroma.config import ConfigModel +from destination_chroma.destination import DestinationChroma, embedder_map + + +class TestDestinationChroma(unittest.TestCase): + def setUp(self): + self.config = { + "processing": {"text_fields": ["str_col"], "metadata_fields": [], "chunk_size": 1000}, + "embedding": {"mode": "openai", "openai_key": "mykey"}, + "indexing": { + "auth_method": { + "mode": "persistent_client", + "path": "./path" + }, + "collection_name": "test2", + }, + } + self.config_model = ConfigModel.parse_obj(self.config) + self.logger = AirbyteLogger() + + @patch("destination_chroma.destination.ChromaIndexer") + @patch.dict(embedder_map, openai=MagicMock()) + def test_check(self, MockedChromaIndexer): + mock_embedder = Mock() + mock_indexer = Mock() + embedder_map["openai"].return_value = mock_embedder + MockedChromaIndexer.return_value = mock_indexer + + mock_embedder.check.return_value = None + mock_indexer.check.return_value = None + + destination = DestinationChroma() + result = destination.check(self.logger, self.config) + + self.assertEqual(result.status, Status.SUCCEEDED) + mock_embedder.check.assert_called_once() + mock_indexer.check.assert_called_once() + + @patch("destination_chroma.destination.ChromaIndexer") + @patch.dict(embedder_map, openai=MagicMock()) + def test_check_with_errors(self, MockedChromaIndexer): + mock_embedder = Mock() + mock_indexer = Mock() + embedder_map["openai"].return_value = mock_embedder + MockedChromaIndexer.return_value = mock_indexer + + embedder_error_message = "Embedder Error" + indexer_error_message = "Indexer Error" + + mock_embedder.check.return_value = embedder_error_message + mock_indexer.check.return_value = indexer_error_message + + destination = DestinationChroma() + result = destination.check(self.logger, self.config) + + self.assertEqual(result.status, Status.FAILED) + self.assertEqual(result.message, f"{embedder_error_message}\n{indexer_error_message}") + + mock_embedder.check.assert_called_once() + mock_indexer.check.assert_called_once() + + @patch("destination_chroma.destination.Writer") + @patch("destination_chroma.destination.ChromaIndexer") + @patch.dict(embedder_map, openai=MagicMock()) + def test_write(self, MockedChromaIndexer, MockedWriter): + mock_embedder = Mock() + mock_indexer = Mock() + mock_writer = Mock() + + embedder_map["openai"].return_value = mock_embedder + MockedChromaIndexer.return_value = mock_indexer + MockedWriter.return_value = mock_writer + + mock_writer.write.return_value = [] + + configured_catalog = MagicMock() + input_messages = [] + + destination = DestinationChroma() + list(destination.write(self.config, configured_catalog, input_messages)) + + MockedWriter.assert_called_once_with(self.config_model.processing, mock_indexer, mock_embedder, batch_size=128) + mock_writer.write.assert_called_once_with(configured_catalog, input_messages) + + def test_spec(self): + destination = DestinationChroma() + result = destination.spec() + + self.assertIsInstance(result, ConnectorSpecification) diff --git a/airbyte-integrations/connectors/destination-chroma/unit_tests/test_indexer.py b/airbyte-integrations/connectors/destination-chroma/unit_tests/test_indexer.py new file mode 100644 index 000000000000..63240d301fb4 --- /dev/null +++ b/airbyte-integrations/connectors/destination-chroma/unit_tests/test_indexer.py @@ -0,0 +1,128 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + +import unittest +from unittest.mock import Mock + +from airbyte_cdk.models.airbyte_protocol import AirbyteStream, DestinationSyncMode, SyncMode +from destination_chroma.config import ChromaIndexingConfigModel +from destination_chroma.indexer import ChromaIndexer + + +class TestChromaIndexer(unittest.TestCase): + def setUp(self): + self.mock_config = ChromaIndexingConfigModel( + **{ + "collection_name": "dummy-collection", + "auth_method": { + "mode": "persistent_client", + "path": "/local/path", + }, + } + ) + self.chroma_indexer = ChromaIndexer(self.mock_config) + self.chroma_indexer._get_client = Mock() + self.mock_client = self.chroma_indexer._get_client() + self.mock_client.get_or_create_collection = Mock() + self.mock_collection = self.mock_client.get_or_create_collection() + self.chroma_indexer.client = self.mock_client + self.mock_client.get_collection = Mock() + + def test_valid_collection_name(self): + + test_configs = [ + ({"collection_name": "dummy-collection", "auth_method": {"mode": "persistent_client", "path": "/local/path"}}, None), + ({"collection_name": "du", "auth_method": {"mode": "persistent_client", "path": "/local/path"}}, 'The length of the collection name must be between 3 and 63 characters'), + ({"collection_name": "dummy-collectionxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", "auth_method": {"mode": "persistent_client", "path": "/local/path"}}, 'The length of the collection name must be between 3 and 63 characters'), + ({"collection_name": "1dummy-colle..ction4", "auth_method": {"mode": "persistent_client", "path": "/local/path"}}, 'The collection name must not contain two consecutive dots'), + ({"collection_name": "Dummy-coll...ectioN", "auth_method": {"mode": "persistent_client", "path": "/local/path"}}, 'The collection name must start and end with a lowercase letter or a digit'), + ({"collection_name": "-dum?my-collection-", "auth_method": {"mode": "persistent_client", "path": "/local/path"}}, 'The collection name must start and end with a lowercase letter or a digit'), + ({"collection_name": "dummy?collection", "auth_method": {"mode": "persistent_client", "path": "/local/path"}}, 'The collection name can only contain lower case alphanumerics, dots, dashes, and underscores'), + ({"collection_name": "345.4.23.12", "auth_method": {"mode": "persistent_client", "path": "/local/path"}}, 'The collection name must not be a valid IP address.') + ] + + for config, expected_error in test_configs: + mock_config = ChromaIndexingConfigModel(**config) + chroma_indexer = ChromaIndexer(mock_config) + chroma_indexer._get_client = Mock() + + result = chroma_indexer.check() + self.assertEqual(result, expected_error) + + def test_valid_path(self): + test_configs = [ + ({"collection_name": "dummy-collection", "auth_method": {"mode": "persistent_client", "path": "/local/path"}}, None), + ({"collection_name": "dummy-collection", "auth_method": {"mode": "persistent_client", "path": "local/path"}}, 'Path must be prefixed with /local'), + ({"collection_name": "dummy-collection", "auth_method": {"mode": "persistent_client", "path": "/localpath"}}, 'Path must be prefixed with /local'), + ({"collection_name": "dummy-collection", "auth_method": {"mode": "persistent_client", "path": "./path"}}, 'Path must be prefixed with /local'), + ] + + for config, expected_error in test_configs: + mock_config = ChromaIndexingConfigModel(**config) + chroma_indexer = ChromaIndexer(mock_config) + chroma_indexer._get_client = Mock() + + result = chroma_indexer.check() + self.assertEqual(result, expected_error) + + def test_check_returns_expected_result(self): + check_result = self.chroma_indexer.check() + + self.assertIsNone(check_result) + + self.chroma_indexer._get_client.assert_called() + self.mock_client.heartbeat.assert_called() + self.mock_client.get_or_create_collection.assert_called() + self.mock_client.get_or_create_collection().count.assert_called() + + def test_check_handles_failure_conditions(self): + # Test 1: client heartbeat returns error + self.mock_client.heartbeat.side_effect = Exception("Random exception") + result = self.chroma_indexer.check() + self.assertTrue("Random exception" in result) + + # Test 2: client server is not alive + self.mock_client.heartbeat.side_effect = None + self.mock_client.heartbeat.return_value = None + result = self.chroma_indexer.check() + self.assertEqual(result, "Chroma client server is not alive") + + # Test 3: unable to get collection + self.mock_client.heartbeat.return_value = 45465 + self.mock_collection.count.return_value = None + result = self.chroma_indexer.check() + self.assertEqual(result, f"unable to get or create collection with name {self.chroma_indexer.collection_name}") + + def test_pre_sync_calls_delete(self): + self.chroma_indexer.pre_sync( + Mock( + streams=[ + Mock( + destination_sync_mode=DestinationSyncMode.overwrite, + stream=AirbyteStream(name="some_stream", json_schema={}, supported_sync_modes=[SyncMode.full_refresh]), + ) + ] + ) + ) + + self.mock_client.get_collection().delete.assert_called_with(where={'_ab_stream': {"$in": ['some_stream']}}) + + def test_pre_sync_does_not_call_delete(self): + self.chroma_indexer.pre_sync( + Mock(streams=[Mock(destination_sync_mode=DestinationSyncMode.append, stream=Mock(name="some_stream"))]) + ) + + self.mock_client.get_collection().delete.assert_not_called() + + def test_index_calls_insert(self): + self.chroma_indexer.index( + [Mock(metadata={"key": "value"}, page_content="some content", embedding=[1,2,3])], [] + ) + + self.mock_client.get_collection().add.assert_called_once() + + def test_index_calls_delete(self): + self.chroma_indexer.index([], ["some_id"]) + + self.mock_client.get_collection().delete.assert_called_with(where={'_ab_record_id': {"$in": ['some_id']}}) diff --git a/airbyte-integrations/connectors/destination-clickhouse-strict-encrypt/.dockerignore b/airbyte-integrations/connectors/destination-clickhouse-strict-encrypt/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-clickhouse-strict-encrypt/.dockerignore +++ b/airbyte-integrations/connectors/destination-clickhouse-strict-encrypt/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-clickhouse-strict-encrypt/build.gradle b/airbyte-integrations/connectors/destination-clickhouse-strict-encrypt/build.gradle index bfdc74c9a53f..104b9741627b 100644 --- a/airbyte-integrations/connectors/destination-clickhouse-strict-encrypt/build.gradle +++ b/airbyte-integrations/connectors/destination-clickhouse-strict-encrypt/build.gradle @@ -15,20 +15,14 @@ dependencies { implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:bases-destination-jdbc') implementation project(':airbyte-integrations:connectors:destination-clickhouse') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation 'com.clickhouse:clickhouse-jdbc:0.3.2-patch10:all' // https://mvnrepository.com/artifact/org.testcontainers/clickhouse - testImplementation libs.connectors.destination.testcontainers.clickhouse + testImplementation libs.testcontainers.clickhouse integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-clickhouse') // https://mvnrepository.com/artifact/org.testcontainers/clickhouse - integrationTestJavaImplementation libs.connectors.destination.testcontainers.clickhouse - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-normalization').airbyteDocker.outputs) -} - -tasks.named("airbyteDocker") { - dependsOn project(':airbyte-integrations:bases:base-normalization').airbyteDockerClickhouse -} + integrationTestJavaImplementation libs.testcontainers.clickhouse +} \ No newline at end of file diff --git a/airbyte-integrations/connectors/destination-clickhouse/.dockerignore b/airbyte-integrations/connectors/destination-clickhouse/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-clickhouse/.dockerignore +++ b/airbyte-integrations/connectors/destination-clickhouse/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-clickhouse/build.gradle b/airbyte-integrations/connectors/destination-clickhouse/build.gradle index b636c4258aed..55befff3facc 100644 --- a/airbyte-integrations/connectors/destination-clickhouse/build.gradle +++ b/airbyte-integrations/connectors/destination-clickhouse/build.gradle @@ -15,22 +15,20 @@ dependencies { implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') implementation project(':airbyte-integrations:bases:bases-destination-jdbc') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation 'com.clickhouse:clickhouse-jdbc:0.3.2-patch10:all' // https://mvnrepository.com/artifact/org.testcontainers/clickhouse - testImplementation libs.connectors.destination.testcontainers.clickhouse + testImplementation libs.testcontainers.clickhouse testImplementation project(":airbyte-json-validation") integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-clickhouse') integrationTestJavaImplementation project(':airbyte-connector-test-harnesses:acceptance-test-harness') // https://mvnrepository.com/artifact/org.testcontainers/clickhouse - integrationTestJavaImplementation libs.connectors.destination.testcontainers.clickhouse - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-normalization').airbyteDocker.outputs) + integrationTestJavaImplementation libs.testcontainers.clickhouse } -tasks.named("airbyteDocker") { - dependsOn project(':airbyte-integrations:bases:base-normalization').airbyteDockerClickhouse +tasks.named("airbyteDocker").configure { + dependsOn project(':airbyte-integrations:bases:base-normalization').tasks.named('airbyteDockerClickhouse') } diff --git a/airbyte-integrations/connectors/destination-csv/.dockerignore b/airbyte-integrations/connectors/destination-csv/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-csv/.dockerignore +++ b/airbyte-integrations/connectors/destination-csv/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-csv/build.gradle b/airbyte-integrations/connectors/destination-csv/build.gradle index 126d47b6e8a3..dcb1bda9b2f4 100644 --- a/airbyte-integrations/connectors/destination-csv/build.gradle +++ b/airbyte-integrations/connectors/destination-csv/build.gradle @@ -14,7 +14,6 @@ dependencies { implementation project(':airbyte-config-oss:config-models-oss') implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') } diff --git a/airbyte-integrations/connectors/destination-databricks/.dockerignore b/airbyte-integrations/connectors/destination-databricks/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-databricks/.dockerignore +++ b/airbyte-integrations/connectors/destination-databricks/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-databricks/build.gradle b/airbyte-integrations/connectors/destination-databricks/build.gradle index 139a62525516..8f04b10c165a 100644 --- a/airbyte-integrations/connectors/destination-databricks/build.gradle +++ b/airbyte-integrations/connectors/destination-databricks/build.gradle @@ -30,7 +30,6 @@ dependencies { implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') implementation project(':airbyte-integrations:bases:base-java-s3') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation project(':airbyte-integrations:bases:bases-destination-jdbc') implementation project(':airbyte-integrations:connectors:destination-s3') implementation project(':airbyte-integrations:connectors:destination-azure-blob-storage') diff --git a/airbyte-integrations/connectors/destination-dev-null/.dockerignore b/airbyte-integrations/connectors/destination-dev-null/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-dev-null/.dockerignore +++ b/airbyte-integrations/connectors/destination-dev-null/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-dev-null/build.gradle b/airbyte-integrations/connectors/destination-dev-null/build.gradle index acf9a2a93545..3c26df400a74 100644 --- a/airbyte-integrations/connectors/destination-dev-null/build.gradle +++ b/airbyte-integrations/connectors/destination-dev-null/build.gradle @@ -14,7 +14,6 @@ dependencies { implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') implementation project(':airbyte-integrations:connectors:destination-e2e-test') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-dev-null') diff --git a/airbyte-integrations/connectors/destination-doris/.dockerignore b/airbyte-integrations/connectors/destination-doris/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-doris/.dockerignore +++ b/airbyte-integrations/connectors/destination-doris/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-doris/build.gradle b/airbyte-integrations/connectors/destination-doris/build.gradle index c3d8bd520b8c..763a0810e611 100644 --- a/airbyte-integrations/connectors/destination-doris/build.gradle +++ b/airbyte-integrations/connectors/destination-doris/build.gradle @@ -14,7 +14,6 @@ dependencies { implementation project(':airbyte-config-oss:config-models-oss') implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-doris') diff --git a/airbyte-integrations/connectors/destination-dynamodb/.dockerignore b/airbyte-integrations/connectors/destination-dynamodb/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-dynamodb/.dockerignore +++ b/airbyte-integrations/connectors/destination-dynamodb/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-dynamodb/build.gradle b/airbyte-integrations/connectors/destination-dynamodb/build.gradle index a2388073580e..1871bb9eda1c 100644 --- a/airbyte-integrations/connectors/destination-dynamodb/build.gradle +++ b/airbyte-integrations/connectors/destination-dynamodb/build.gradle @@ -14,7 +14,6 @@ dependencies { implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') implementation project(':airbyte-integrations:bases:bases-destination-jdbc') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation 'com.amazonaws:aws-java-sdk-dynamodb:1.12.47' testImplementation project(':airbyte-integrations:bases:standard-destination-test') diff --git a/airbyte-integrations/connectors/destination-e2e-test/.dockerignore b/airbyte-integrations/connectors/destination-e2e-test/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-e2e-test/.dockerignore +++ b/airbyte-integrations/connectors/destination-e2e-test/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-e2e-test/build.gradle b/airbyte-integrations/connectors/destination-e2e-test/build.gradle index 4253ce8ddd7b..a761a10d28ab 100644 --- a/airbyte-integrations/connectors/destination-e2e-test/build.gradle +++ b/airbyte-integrations/connectors/destination-e2e-test/build.gradle @@ -12,7 +12,6 @@ dependencies { implementation project(':airbyte-config-oss:config-models-oss') implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-e2e-test') diff --git a/airbyte-integrations/connectors/destination-elasticsearch-strict-encrypt/.dockerignore b/airbyte-integrations/connectors/destination-elasticsearch-strict-encrypt/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-elasticsearch-strict-encrypt/.dockerignore +++ b/airbyte-integrations/connectors/destination-elasticsearch-strict-encrypt/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-elasticsearch-strict-encrypt/build.gradle b/airbyte-integrations/connectors/destination-elasticsearch-strict-encrypt/build.gradle index 875387ec2622..992e0c49f785 100644 --- a/airbyte-integrations/connectors/destination-elasticsearch-strict-encrypt/build.gradle +++ b/airbyte-integrations/connectors/destination-elasticsearch-strict-encrypt/build.gradle @@ -13,7 +13,6 @@ dependencies { implementation project(':airbyte-config-oss:config-models-oss') implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation 'co.elastic.clients:elasticsearch-java:7.15.0' implementation 'com.fasterxml.jackson.core:jackson-databind:2.12.3' @@ -30,8 +29,8 @@ dependencies { // MIT // https://www.testcontainers.org/ - testImplementation libs.connectors.testcontainers.elasticsearch - integrationTestJavaImplementation libs.connectors.testcontainers.elasticsearch + testImplementation libs.testcontainers.elasticsearch + integrationTestJavaImplementation libs.testcontainers.elasticsearch integrationTestJavaImplementation project(':airbyte-connector-test-harnesses:acceptance-test-harness') integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') diff --git a/airbyte-integrations/connectors/destination-elasticsearch/.dockerignore b/airbyte-integrations/connectors/destination-elasticsearch/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-elasticsearch/.dockerignore +++ b/airbyte-integrations/connectors/destination-elasticsearch/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-elasticsearch/build.gradle b/airbyte-integrations/connectors/destination-elasticsearch/build.gradle index 0c6a3be8d24e..4caa13a9889e 100644 --- a/airbyte-integrations/connectors/destination-elasticsearch/build.gradle +++ b/airbyte-integrations/connectors/destination-elasticsearch/build.gradle @@ -14,7 +14,6 @@ dependencies { implementation project(':airbyte-config-oss:config-models-oss') implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation 'co.elastic.clients:elasticsearch-java:7.15.0' implementation 'com.fasterxml.jackson.core:jackson-databind:2.12.3' @@ -30,8 +29,8 @@ dependencies { // MIT // https://www.testcontainers.org/ - testImplementation libs.connectors.testcontainers.elasticsearch - integrationTestJavaImplementation libs.connectors.testcontainers.elasticsearch + testImplementation libs.testcontainers.elasticsearch + integrationTestJavaImplementation libs.testcontainers.elasticsearch integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-elasticsearch') diff --git a/airbyte-integrations/connectors/destination-exasol/.dockerignore b/airbyte-integrations/connectors/destination-exasol/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-exasol/.dockerignore +++ b/airbyte-integrations/connectors/destination-exasol/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-exasol/build.gradle b/airbyte-integrations/connectors/destination-exasol/build.gradle index 73b46b771573..1b6c7b7722c1 100644 --- a/airbyte-integrations/connectors/destination-exasol/build.gradle +++ b/airbyte-integrations/connectors/destination-exasol/build.gradle @@ -12,7 +12,6 @@ dependencies { implementation project(':airbyte-db:db-lib') implementation project(':airbyte-integrations:bases:base-java') implementation libs.airbyte.protocol - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation project(':airbyte-integrations:bases:bases-destination-jdbc') implementation 'com.exasol:exasol-jdbc:7.1.17' diff --git a/airbyte-integrations/connectors/destination-gcs/.dockerignore b/airbyte-integrations/connectors/destination-gcs/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-gcs/.dockerignore +++ b/airbyte-integrations/connectors/destination-gcs/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-gcs/build.gradle b/airbyte-integrations/connectors/destination-gcs/build.gradle index fe7fa51f3eb9..7c39aadfbfea 100644 --- a/airbyte-integrations/connectors/destination-gcs/build.gradle +++ b/airbyte-integrations/connectors/destination-gcs/build.gradle @@ -15,7 +15,6 @@ dependencies { implementation project(':airbyte-integrations:bases:base-java') implementation project(':airbyte-integrations:bases:base-java-s3') implementation project(':airbyte-integrations:bases:bases-destination-jdbc') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation platform('com.amazonaws:aws-java-sdk-bom:1.12.14') implementation 'com.google.cloud.bigdataoss:gcs-connector:hadoop3-2.2.1' diff --git a/airbyte-integrations/connectors/destination-iceberg/.dockerignore b/airbyte-integrations/connectors/destination-iceberg/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-iceberg/.dockerignore +++ b/airbyte-integrations/connectors/destination-iceberg/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-iceberg/build.gradle b/airbyte-integrations/connectors/destination-iceberg/build.gradle index a16bb53aa73f..6383134ebd5c 100644 --- a/airbyte-integrations/connectors/destination-iceberg/build.gradle +++ b/airbyte-integrations/connectors/destination-iceberg/build.gradle @@ -12,7 +12,6 @@ dependencies { implementation project(':airbyte-config-oss:config-models-oss') implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation('org.apache.spark:spark-sql_2.13:3.3.2') { exclude(group: 'org.apache.hadoop', module: 'hadoop-common') @@ -39,8 +38,8 @@ dependencies { implementation "org.postgresql:postgresql:42.5.0" implementation "commons-collections:commons-collections:3.2.2" - testImplementation libs.connectors.testcontainers.postgresql - integrationTestJavaImplementation libs.connectors.testcontainers.postgresql + testImplementation libs.testcontainers.postgresql + integrationTestJavaImplementation libs.testcontainers.postgresql integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-iceberg') @@ -57,7 +56,3 @@ dependencies { test { jvmArgs = ['--add-opens=java.base/sun.nio.ch=ALL-UNNAMED', '--add-opens=java.base/java.nio=ALL-UNNAMED'] } - -task prepareKotlinBuildScriptModel { - -} diff --git a/airbyte-integrations/connectors/destination-kafka/.dockerignore b/airbyte-integrations/connectors/destination-kafka/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-kafka/.dockerignore +++ b/airbyte-integrations/connectors/destination-kafka/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-kafka/build.gradle b/airbyte-integrations/connectors/destination-kafka/build.gradle index 5865a6ac97e2..63bb446294c3 100644 --- a/airbyte-integrations/connectors/destination-kafka/build.gradle +++ b/airbyte-integrations/connectors/destination-kafka/build.gradle @@ -21,7 +21,6 @@ dependencies { integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-kafka') - integrationTestJavaImplementation libs.connectors.testcontainers.kafka + integrationTestJavaImplementation libs.testcontainers.kafka - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors/destination-keen/.dockerignore b/airbyte-integrations/connectors/destination-keen/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-keen/.dockerignore +++ b/airbyte-integrations/connectors/destination-keen/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-keen/build.gradle b/airbyte-integrations/connectors/destination-keen/build.gradle index eba011e214d8..37da919cbb19 100644 --- a/airbyte-integrations/connectors/destination-keen/build.gradle +++ b/airbyte-integrations/connectors/destination-keen/build.gradle @@ -22,5 +22,4 @@ dependencies { integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-keen') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors/destination-kinesis/.dockerignore b/airbyte-integrations/connectors/destination-kinesis/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-kinesis/.dockerignore +++ b/airbyte-integrations/connectors/destination-kinesis/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-kinesis/build.gradle b/airbyte-integrations/connectors/destination-kinesis/build.gradle index 298dd90a9543..2676a38db903 100644 --- a/airbyte-integrations/connectors/destination-kinesis/build.gradle +++ b/airbyte-integrations/connectors/destination-kinesis/build.gradle @@ -17,7 +17,6 @@ dependencies { implementation project(':airbyte-config-oss:config-models-oss') implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) // https://mvnrepository.com/artifact/software.amazon.awssdk/kinesis implementation "software.amazon.awssdk:kinesis:${kinesisVersion}" diff --git a/airbyte-integrations/connectors/destination-langchain/Dockerfile b/airbyte-integrations/connectors/destination-langchain/Dockerfile index 1472c50f57d4..b4b48cdd04c2 100644 --- a/airbyte-integrations/connectors/destination-langchain/Dockerfile +++ b/airbyte-integrations/connectors/destination-langchain/Dockerfile @@ -42,5 +42,5 @@ COPY destination_langchain ./destination_langchain ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=0.0.8 +LABEL io.airbyte.version=0.1.1 LABEL io.airbyte.name=airbyte/destination-langchain diff --git a/airbyte-integrations/connectors/destination-langchain/destination_langchain/config.py b/airbyte-integrations/connectors/destination-langchain/destination_langchain/config.py index a5b00b0cfeaf..375595d2907d 100644 --- a/airbyte-integrations/connectors/destination-langchain/destination_langchain/config.py +++ b/airbyte-integrations/connectors/destination-langchain/destination_langchain/config.py @@ -7,6 +7,7 @@ from typing import List, Literal, Optional, Union import dpath.util +from airbyte_cdk.destinations.vector_db_based.embedder import FakeEmbeddingConfigModel, OpenAIEmbeddingConfigModel from jsonschema import RefResolver from pydantic import BaseModel, Field @@ -35,27 +36,6 @@ class Config: schema_extra = {"group": "processing"} -class OpenAIEmbeddingConfigModel(BaseModel): - mode: Literal["openai"] = Field("openai", const=True) - openai_key: str = Field(..., title="OpenAI API key", airbyte_secret=True) - - class Config: - title = "OpenAI" - schema_extra = { - "description": "Use the OpenAI API to embed text. This option is using the text-embedding-ada-002 model with 1536 embedding dimensions." - } - - -class FakeEmbeddingConfigModel(BaseModel): - mode: Literal["fake"] = Field("fake", const=True) - - class Config: - title = "Fake" - schema_extra = { - "description": "Use a fake embedding made out of random vectors with 1536 embedding dimensions. This is useful for testing the data pipeline without incurring any costs." - } - - class PineconeIndexingModel(BaseModel): mode: Literal["pinecone"] = Field("pinecone", const=True) pinecone_key: str = Field(..., title="Pinecone API key", airbyte_secret=True) diff --git a/airbyte-integrations/connectors/destination-langchain/destination_langchain/destination.py b/airbyte-integrations/connectors/destination-langchain/destination_langchain/destination.py index 94e3ade7b8d4..f6e3ea4446ed 100644 --- a/airbyte-integrations/connectors/destination-langchain/destination_langchain/destination.py +++ b/airbyte-integrations/connectors/destination-langchain/destination_langchain/destination.py @@ -7,6 +7,7 @@ from airbyte_cdk import AirbyteLogger from airbyte_cdk.destinations import Destination +from airbyte_cdk.destinations.vector_db_based import Embedder, FakeEmbedder, OpenAIEmbedder from airbyte_cdk.models import ( AirbyteConnectionStatus, AirbyteMessage, @@ -20,7 +21,6 @@ from destination_langchain.batcher import Batcher from destination_langchain.config import ConfigModel from destination_langchain.document_processor import DocumentProcessor -from destination_langchain.embedder import Embedder, FakeEmbedder, OpenAIEmbedder from destination_langchain.indexer import ChromaLocalIndexer, DocArrayHnswSearchIndexer, Indexer, PineconeIndexer from langchain.document_loaders.base import Document diff --git a/airbyte-integrations/connectors/destination-langchain/destination_langchain/document_processor.py b/airbyte-integrations/connectors/destination-langchain/destination_langchain/document_processor.py index 460a7614bf37..298de8c7dd28 100644 --- a/airbyte-integrations/connectors/destination-langchain/destination_langchain/document_processor.py +++ b/airbyte-integrations/connectors/destination-langchain/destination_langchain/document_processor.py @@ -84,7 +84,7 @@ def _extract_metadata(self, record: AirbyteRecordMessage) -> dict: metadata[METADATA_STREAM_FIELD] = stream_identifier # if the sync mode is deduping, use the primary key to upsert existing records instead of appending new ones if current_stream.primary_key and current_stream.destination_sync_mode == DestinationSyncMode.append_dedup: - metadata[METADATA_RECORD_ID_FIELD] = self._extract_primary_key(record, current_stream) + metadata[METADATA_RECORD_ID_FIELD] = f"{stream_identifier}_{self._extract_primary_key(record, current_stream)}" return metadata def _extract_primary_key(self, record: AirbyteRecordMessage, stream: ConfiguredAirbyteStream) -> dict: diff --git a/airbyte-integrations/connectors/destination-langchain/destination_langchain/embedder.py b/airbyte-integrations/connectors/destination-langchain/destination_langchain/embedder.py deleted file mode 100644 index 55e0674e88a3..000000000000 --- a/airbyte-integrations/connectors/destination-langchain/destination_langchain/embedder.py +++ /dev/null @@ -1,78 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -from abc import ABC, abstractmethod -from typing import Optional - -from destination_langchain.config import FakeEmbeddingConfigModel, OpenAIEmbeddingConfigModel -from destination_langchain.utils import format_exception -from langchain.embeddings.base import Embeddings -from langchain.embeddings.fake import FakeEmbeddings -from langchain.embeddings.openai import OpenAIEmbeddings - - -class Embedder(ABC): - def __init__(self): - pass - - @abstractmethod - def check(self) -> Optional[str]: - pass - - @property - @abstractmethod - def langchain_embeddings(self) -> Embeddings: - pass - - @property - @abstractmethod - def embedding_dimensions(self) -> int: - pass - - -OPEN_AI_VECTOR_SIZE = 1536 - - -class OpenAIEmbedder(Embedder): - def __init__(self, config: OpenAIEmbeddingConfigModel): - super().__init__() - self.embeddings = OpenAIEmbeddings(openai_api_key=config.openai_key, chunk_size=8191) - - def check(self) -> Optional[str]: - try: - self.embeddings.embed_query("test") - except Exception as e: - return format_exception(e) - return None - - @property - def langchain_embeddings(self) -> Embeddings: - return self.embeddings - - @property - def embedding_dimensions(self) -> int: - # vector size produced by text-embedding-ada-002 model - return OPEN_AI_VECTOR_SIZE - - -class FakeEmbedder(Embedder): - def __init__(self, config: FakeEmbeddingConfigModel): - super().__init__() - self.embeddings = FakeEmbeddings(size=OPEN_AI_VECTOR_SIZE) - - def check(self) -> Optional[str]: - try: - self.embeddings.embed_query("test") - except Exception as e: - return format_exception(e) - return None - - @property - def langchain_embeddings(self) -> Embeddings: - return self.embeddings - - @property - def embedding_dimensions(self) -> int: - # use same vector size as for OpenAI embeddings to keep it realistic - return OPEN_AI_VECTOR_SIZE diff --git a/airbyte-integrations/connectors/destination-langchain/destination_langchain/indexer.py b/airbyte-integrations/connectors/destination-langchain/destination_langchain/indexer.py index 6f8fbaeafb0c..d14b39ea3599 100644 --- a/airbyte-integrations/connectors/destination-langchain/destination_langchain/indexer.py +++ b/airbyte-integrations/connectors/destination-langchain/destination_langchain/indexer.py @@ -9,11 +9,11 @@ from typing import Any, List, Optional import pinecone +from airbyte_cdk.destinations.vector_db_based import Embedder from airbyte_cdk.models import ConfiguredAirbyteCatalog from airbyte_cdk.models.airbyte_protocol import AirbyteLogMessage, AirbyteMessage, DestinationSyncMode, Level, Type from destination_langchain.config import ChromaLocalIndexingModel, DocArrayHnswSearchIndexingModel, PineconeIndexingModel from destination_langchain.document_processor import METADATA_RECORD_ID_FIELD, METADATA_STREAM_FIELD -from destination_langchain.embedder import Embedder from destination_langchain.measure_time import measure_time from destination_langchain.utils import format_exception from langchain.document_loaders.base import Document @@ -66,7 +66,7 @@ def __init__(self, config: PineconeIndexingModel, embedder: Embedder): super().__init__(config, embedder) pinecone.init(api_key=config.pinecone_key, environment=config.pinecone_environment, threaded=True) self.pinecone_index = pinecone.Index(config.index, pool_threads=10) - self.embed_fn = measure_time(self.embedder.langchain_embeddings.embed_documents) + self.embed_fn = measure_time(self.embedder.embeddings.embed_documents) def pre_sync(self, catalog: ConfiguredAirbyteCatalog): index_description = pinecone.describe_index(self.config.index) @@ -134,7 +134,7 @@ def __init__(self, config: DocArrayHnswSearchIndexingModel, embedder: Embedder): def _init_vectorstore(self): self.vectorstore = DocArrayHnswSearch.from_params( - embedding=self.embedder.langchain_embeddings, work_dir=self.config.destination_path, n_dim=self.embedder.embedding_dimensions + embedding=self.embedder.embeddings, work_dir=self.config.destination_path, n_dim=self.embedder.embedding_dimensions ) def pre_sync(self, catalog: ConfiguredAirbyteCatalog): @@ -172,7 +172,7 @@ def __init__(self, config: ChromaLocalIndexingModel, embedder: Embedder): def _init_vectorstore(self): self.vectorstore = Chroma( collection_name=self.config.collection_name, - embedding_function=self.embedder.langchain_embeddings, + embedding_function=self.embedder.embeddings, persist_directory=self.config.destination_path, ) diff --git a/airbyte-integrations/connectors/destination-langchain/integration_tests/chroma_integration_test.py b/airbyte-integrations/connectors/destination-langchain/integration_tests/chroma_integration_test.py index c5fa445add06..0add90e48e64 100644 --- a/airbyte-integrations/connectors/destination-langchain/integration_tests/chroma_integration_test.py +++ b/airbyte-integrations/connectors/destination-langchain/integration_tests/chroma_integration_test.py @@ -6,10 +6,10 @@ import logging import chromadb +from airbyte_cdk.destinations.vector_db_based.embedder import OPEN_AI_VECTOR_SIZE from airbyte_cdk.models import DestinationSyncMode, Status from chromadb.api.types import QueryResult from destination_langchain.destination import DestinationLangchain -from destination_langchain.embedder import OPEN_AI_VECTOR_SIZE from integration_tests.base_integration_test import LocalIntegrationTest from langchain.embeddings import OpenAIEmbeddings from langchain.vectorstores import Chroma @@ -44,7 +44,7 @@ def test_write(self): incremental_catalog = self._get_configured_catalog(DestinationSyncMode.append_dedup) list(destination.write(self.config, incremental_catalog, [self._record("mystream", "Cats are nice", 2), first_state_message])) chroma_result: QueryResult = self.chroma_client.get_collection("langchain").query( - query_embeddings=[0] * OPEN_AI_VECTOR_SIZE, n_results=10, where={"_record_id": "2"}, include=["documents"] + query_embeddings=[0] * OPEN_AI_VECTOR_SIZE, n_results=10, where={"_record_id": "mystream_2"}, include=["documents"] ) assert len(chroma_result["documents"][0]) == 1 assert chroma_result["documents"][0] == ["str_col: Cats are nice"] @@ -53,4 +53,4 @@ def test_write(self): embeddings = OpenAIEmbeddings(openai_api_key=self.config["embedding"]["openai_key"]) vector_store = Chroma(embedding_function=embeddings, persist_directory=self.temp_dir) result = vector_store.similarity_search("feline animals", 1) - assert result[0].metadata["_record_id"] == "2" + assert result[0].metadata["_record_id"] == "mystream_2" diff --git a/airbyte-integrations/connectors/destination-langchain/integration_tests/docarray_integration_test.py b/airbyte-integrations/connectors/destination-langchain/integration_tests/docarray_integration_test.py index ba93129e02bc..8a873de5348f 100644 --- a/airbyte-integrations/connectors/destination-langchain/integration_tests/docarray_integration_test.py +++ b/airbyte-integrations/connectors/destination-langchain/integration_tests/docarray_integration_test.py @@ -4,9 +4,9 @@ import logging +from airbyte_cdk.destinations.vector_db_based.embedder import OPEN_AI_VECTOR_SIZE from airbyte_cdk.models import DestinationSyncMode, Status from destination_langchain.destination import DestinationLangchain -from destination_langchain.embedder import OPEN_AI_VECTOR_SIZE from integration_tests.base_integration_test import LocalIntegrationTest from langchain.embeddings import FakeEmbeddings from langchain.vectorstores import DocArrayHnswSearch diff --git a/airbyte-integrations/connectors/destination-langchain/integration_tests/pinecone_integration_test.py b/airbyte-integrations/connectors/destination-langchain/integration_tests/pinecone_integration_test.py index 55d6b01a98ee..0eaa7daaafec 100644 --- a/airbyte-integrations/connectors/destination-langchain/integration_tests/pinecone_integration_test.py +++ b/airbyte-integrations/connectors/destination-langchain/integration_tests/pinecone_integration_test.py @@ -7,9 +7,9 @@ from time import sleep import pinecone +from airbyte_cdk.destinations.vector_db_based.embedder import OPEN_AI_VECTOR_SIZE from airbyte_cdk.models import DestinationSyncMode, Status from destination_langchain.destination import DestinationLangchain -from destination_langchain.embedder import OPEN_AI_VECTOR_SIZE from integration_tests.base_integration_test import BaseIntegrationTest from langchain.embeddings import OpenAIEmbeddings from langchain.vectorstores import Pinecone @@ -77,7 +77,7 @@ def test_write(self): # Documents might not be available right away because Pinecone is handling them async sleep(20) result = self._index.query( - vector=[0] * OPEN_AI_VECTOR_SIZE, top_k=10, filter={"_record_id": "2"}, include_metadata=True + vector=[0] * OPEN_AI_VECTOR_SIZE, top_k=10, filter={"_record_id": "mystream_2"}, include_metadata=True ) assert len(result.matches) == 1 assert result.matches[0].metadata["text"] == "str_col: Cats are nice" @@ -87,4 +87,4 @@ def test_write(self): pinecone.init(api_key=self.config["indexing"]["pinecone_key"], environment=self.config["indexing"]["pinecone_environment"]) vector_store = Pinecone(self._index, embeddings.embed_query, "text") result = vector_store.similarity_search("feline animals", 1) - assert result[0].metadata["_record_id"] == "2" + assert result[0].metadata["_record_id"] == "mystream_2" diff --git a/airbyte-integrations/connectors/destination-langchain/metadata.yaml b/airbyte-integrations/connectors/destination-langchain/metadata.yaml index 191f9d8c8f39..a76d4126868f 100644 --- a/airbyte-integrations/connectors/destination-langchain/metadata.yaml +++ b/airbyte-integrations/connectors/destination-langchain/metadata.yaml @@ -7,7 +7,7 @@ data: connectorSubtype: database connectorType: destination definitionId: cf98d52c-ba5a-4dfd-8ada-c1baebfa6e73 - dockerImageTag: 0.0.8 + dockerImageTag: 0.1.1 dockerRepository: airbyte/destination-langchain githubIssueLabel: destination-langchain icon: langchain.svg @@ -22,4 +22,10 @@ data: sl: 100 ql: 100 supportLevel: community + releases: + breakingChanges: + 0.1.0: + message: > + This version changes the way record ids are tracked internally. If you are using a stream in **append-dedup** mode, you need to reset the connection after doing the upgrade to avoid duplicates. + upgradeDeadline: "2023-09-18" metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/destination-langchain/unit_tests/document_processor_test.py b/airbyte-integrations/connectors/destination-langchain/unit_tests/document_processor_test.py index b8076debe157..371b2632e021 100644 --- a/airbyte-integrations/connectors/destination-langchain/unit_tests/document_processor_test.py +++ b/airbyte-integrations/connectors/destination-langchain/unit_tests/document_processor_test.py @@ -210,11 +210,11 @@ def test_process_multiple_chunks_with_relevant_fields(): @pytest.mark.parametrize( "primary_key_value, stringified_primary_key, primary_key", [ - ({"id": 99}, "99", [["id"]]), - ({"id": 99, "name": "John Doe"}, "99_John Doe", [["id"], ["name"]]), - ({"id": 99, "name": "John Doe", "age": 25}, "99_John Doe_25", [["id"], ["name"], ["age"]]), - ({"nested": {"id": "abc"}, "name": "John Doe"}, "abc_John Doe", [["nested", "id"], ["name"]]), - ({"nested": {"id": "abc"}}, "abc___not_found__", [["nested", "id"], ["name"]]), + ({"id": 99}, "namespace1_stream1_99", [["id"]]), + ({"id": 99, "name": "John Doe"}, "namespace1_stream1_99_John Doe", [["id"], ["name"]]), + ({"id": 99, "name": "John Doe", "age": 25}, "namespace1_stream1_99_John Doe_25", [["id"], ["name"], ["age"]]), + ({"nested": {"id": "abc"}, "name": "John Doe"}, "namespace1_stream1_abc_John Doe", [["nested", "id"], ["name"]]), + ({"nested": {"id": "abc"}}, "namespace1_stream1_abc___not_found__", [["nested", "id"], ["name"]]), ] ) def test_process_multiple_chunks_with_dedupe_mode(primary_key_value: Mapping[str, Any], stringified_primary_key: str, primary_key: List[List[str]]): diff --git a/airbyte-integrations/connectors/destination-local-json/.dockerignore b/airbyte-integrations/connectors/destination-local-json/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-local-json/.dockerignore +++ b/airbyte-integrations/connectors/destination-local-json/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-local-json/build.gradle b/airbyte-integrations/connectors/destination-local-json/build.gradle index c1794c616de9..fabdc5209733 100644 --- a/airbyte-integrations/connectors/destination-local-json/build.gradle +++ b/airbyte-integrations/connectors/destination-local-json/build.gradle @@ -13,7 +13,6 @@ dependencies { implementation project(':airbyte-config-oss:config-models-oss') implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') } diff --git a/airbyte-integrations/connectors/destination-mariadb-columnstore/.dockerignore b/airbyte-integrations/connectors/destination-mariadb-columnstore/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-mariadb-columnstore/.dockerignore +++ b/airbyte-integrations/connectors/destination-mariadb-columnstore/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-mariadb-columnstore/build.gradle b/airbyte-integrations/connectors/destination-mariadb-columnstore/build.gradle index 765322c42935..16554bc86740 100644 --- a/airbyte-integrations/connectors/destination-mariadb-columnstore/build.gradle +++ b/airbyte-integrations/connectors/destination-mariadb-columnstore/build.gradle @@ -15,7 +15,6 @@ dependencies { implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') implementation project(':airbyte-integrations:bases:bases-destination-jdbc') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation 'org.mariadb.jdbc:mariadb-java-client:2.7.4' implementation 'com.vdurmont:semver4j:3.1.0' @@ -24,5 +23,5 @@ dependencies { integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-mariadb-columnstore') - integrationTestJavaImplementation libs.connectors.testcontainers.mariadb + integrationTestJavaImplementation libs.testcontainers.mariadb } diff --git a/airbyte-integrations/connectors/destination-milvus/.dockerignore b/airbyte-integrations/connectors/destination-milvus/.dockerignore new file mode 100644 index 000000000000..d18815658a44 --- /dev/null +++ b/airbyte-integrations/connectors/destination-milvus/.dockerignore @@ -0,0 +1,5 @@ +* +!Dockerfile +!main.py +!destination_milvus +!setup.py diff --git a/airbyte-integrations/connectors/destination-milvus/Dockerfile b/airbyte-integrations/connectors/destination-milvus/Dockerfile new file mode 100644 index 000000000000..412bffab2583 --- /dev/null +++ b/airbyte-integrations/connectors/destination-milvus/Dockerfile @@ -0,0 +1,41 @@ +FROM python:3.10-slim as base + +# build and load all requirements +FROM base as builder +WORKDIR /airbyte/integration_code + +# upgrade pip to the latest version +COPY setup.py ./ + +RUN pip install --upgrade pip + +# This is required because the current connector dependency is not compatible with the CDK version +# An older CDK version will be used, which depends on pyYAML 5.4, for which we need to pin Cython to <3.0 +# As of today the CDK version that satisfies the main dependency requirements, is 0.1.80 ... +RUN pip install --prefix=/install "Cython<3.0" "pyyaml~=5.4" --no-build-isolation + +# install necessary packages to a temporary folder +RUN pip install --prefix=/install . + +# build a clean environment +FROM base +WORKDIR /airbyte/integration_code + +# copy all loaded and built libraries to a pure basic image +COPY --from=builder /install /usr/local +# add default timezone settings +COPY --from=builder /usr/share/zoneinfo/Etc/UTC /etc/localtime +RUN echo "Etc/UTC" > /etc/timezone + +# bash is installed for more convenient debugging. +RUN apt-get install bash + +# copy payload code only +COPY main.py ./ +COPY destination_milvus ./destination_milvus + +ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" +ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] + +LABEL io.airbyte.version=0.0.1 +LABEL io.airbyte.name=airbyte/destination-milvus diff --git a/airbyte-integrations/connectors/destination-milvus/README.md b/airbyte-integrations/connectors/destination-milvus/README.md new file mode 100644 index 000000000000..97783e18ea2e --- /dev/null +++ b/airbyte-integrations/connectors/destination-milvus/README.md @@ -0,0 +1,123 @@ +# Milvus Destination + +This is the repository for the Milvus destination connector, written in Python. +For information about how to use this connector within Airbyte, see [the documentation](https://docs.airbyte.com/integrations/destinations/milvus). + +## Local development + +### Prerequisites +**To iterate on this connector, make sure to complete this prerequisites section.** + +#### Minimum Python version required `= 3.10.0` + +#### Build & Activate Virtual Environment and install dependencies +From this connector directory, create a virtual environment: +``` +python -m venv .venv +``` + +This will generate a virtualenv for this module in `.venv/`. Make sure this venv is active in your +development environment of choice. To activate it from the terminal, run: +``` +source .venv/bin/activate +pip install -r requirements.txt +``` +If you are in an IDE, follow your IDE's instructions to activate the virtualenv. + +Note that while we are installing dependencies from `requirements.txt`, you should only edit `setup.py` for your dependencies. `requirements.txt` is +used for editable installs (`pip install -e`) to pull in Python dependencies from the monorepo and will call `setup.py`. +If this is mumbo jumbo to you, don't worry about it, just put your deps in `setup.py` but install using `pip install -r requirements.txt` and everything +should work as you expect. + +#### Building via Gradle +From the Airbyte repository root, run: +``` +./gradlew :airbyte-integrations:connectors:destination-langchain:build +``` + +#### Create credentials +**If you are a community contributor**, follow the instructions in the [documentation](https://docs.airbyte.com/integrations/destinations/milvus) +to generate the necessary credentials. Then create a file `secrets/config.json` conforming to the `destination_langchain/spec.json` file. +Note that the `secrets` directory is gitignored by default, so there is no danger of accidentally checking in sensitive information. +See `integration_tests/sample_config.json` for a sample config file. + +**If you are an Airbyte core member**, copy the credentials in Lastpass under the secret name `destination milvus test creds` +and place them into `secrets/config.json`. + +### Locally running the connector +``` +python main.py spec +python main.py check --config secrets/config.json +python main.py discover --config secrets/config.json +python main.py read --config secrets/config.json --catalog integration_tests/configured_catalog.json +``` + +### Locally running the connector docker image + +#### Build +First, make sure you build the latest Docker image: +``` +docker build . -t airbyte/destination-langchain:dev +``` + +You can also build the connector image via Gradle: +``` +./gradlew :airbyte-integrations:connectors:destination-langchain:airbyteDocker +``` +When building via Gradle, the docker image name and tag, respectively, are the values of the `io.airbyte.name` and `io.airbyte.version` `LABEL`s in +the Dockerfile. + +#### Run +Then run any of the connector commands as follows: +``` +docker run --rm airbyte/destination-langchain:dev spec +docker run --rm -v $(pwd)/secrets:/secrets airbyte/destination-langchain:dev check --config /secrets/config.json +# messages.jsonl is a file containing line-separated JSON representing AirbyteMessages +cat messages.jsonl | docker run --rm -v $(pwd)/secrets:/secrets -v $(pwd)/integration_tests:/integration_tests airbyte/destination-langchain:dev write --config /secrets/config.json --catalog /integration_tests/configured_catalog.json +``` +## Testing + Make sure to familiarize yourself with [pytest test discovery](https://docs.pytest.org/en/latest/goodpractices.html#test-discovery) to know how your test files and methods should be named. +First install test dependencies into your virtual environment: +``` +pip install .[tests] +``` +### Unit Tests +To run unit tests locally, from the connector directory run: +``` +python -m pytest unit_tests +``` + +### Integration Tests +There are two types of integration tests: Acceptance Tests (Airbyte's test suite for all destination connectors) and custom integration tests (which are specific to this connector). +#### Custom Integration tests +Place custom tests inside `integration_tests/` folder, then, from the connector root, run +``` +python -m pytest integration_tests +``` +#### Acceptance Tests +Coming soon: + +### Using gradle to run tests +All commands should be run from airbyte project root. +To run unit tests: +``` +./gradlew :airbyte-integrations:connectors:destination-milvus:unitTest +``` +To run acceptance and custom integration tests: +``` +./gradlew :airbyte-integrations:connectors:destination-milvus:integrationTest +``` + +## Dependency Management +All of your dependencies should go in `setup.py`, NOT `requirements.txt`. The requirements file is only used to connect internal Airbyte dependencies in the monorepo for local development. +We split dependencies between two groups, dependencies that are: +* required for your connector to work need to go to `MAIN_REQUIREMENTS` list. +* required for the testing need to go to `TEST_REQUIREMENTS` list + +### Publishing a new version of the connector +You've checked out the repo, implemented a million dollar feature, and you're ready to share your changes with the world. Now what? +1. Make sure your changes are passing unit and integration tests. +1. Bump the connector version in `Dockerfile` -- just increment the value of the `LABEL io.airbyte.version` appropriately (we use [SemVer](https://semver.org/)). +1. Create a Pull Request. +1. Pat yourself on the back for being an awesome contributor. +1. Someone from Airbyte will take a look at your PR and iterate with you to merge it into master. diff --git a/airbyte-integrations/connectors/destination-milvus/acceptance-test-config.yml b/airbyte-integrations/connectors/destination-milvus/acceptance-test-config.yml new file mode 100644 index 000000000000..a217ebce9c76 --- /dev/null +++ b/airbyte-integrations/connectors/destination-milvus/acceptance-test-config.yml @@ -0,0 +1,7 @@ +acceptance_tests: + spec: + tests: + - spec_path: integration_tests/spec.json + backward_compatibility_tests_config: + disable_for_version: "0.0.1" +connector_image: airbyte/destination-milvus:dev diff --git a/airbyte-integrations/connectors/destination-milvus/acceptance-test-docker.sh b/airbyte-integrations/connectors/destination-milvus/acceptance-test-docker.sh new file mode 100755 index 000000000000..5797d20fe9a7 --- /dev/null +++ b/airbyte-integrations/connectors/destination-milvus/acceptance-test-docker.sh @@ -0,0 +1,2 @@ +#!/usr/bin/env sh +source "$(git rev-parse --show-toplevel)/airbyte-integrations/bases/connector-acceptance-test/acceptance-test-docker.sh" diff --git a/airbyte-integrations/connectors/destination-milvus/bootstrap.md b/airbyte-integrations/connectors/destination-milvus/bootstrap.md new file mode 100644 index 000000000000..02a2cee7d2a2 --- /dev/null +++ b/airbyte-integrations/connectors/destination-milvus/bootstrap.md @@ -0,0 +1,12 @@ +# Milvus Destination Connector Bootstrap + +This destination does three things: +* Split records into chunks and separates metadata from text data +* Embeds text data into an embedding vector +* Stores the metadata and embedding vector in a vector database + +The record processing is using the text split components from https://python.langchain.com/docs/modules/data_connection/document_transformers/. + +There are various possible providers for generating embeddings, delivered as part of the CDK (`airbyte_cdk.destinations.vector_db_based`). + +Embedded documents are stored in the Milvus vector database. diff --git a/airbyte-integrations/connectors/destination-milvus/build.gradle b/airbyte-integrations/connectors/destination-milvus/build.gradle new file mode 100644 index 000000000000..b03f3b2e8e48 --- /dev/null +++ b/airbyte-integrations/connectors/destination-milvus/build.gradle @@ -0,0 +1,8 @@ +plugins { + id 'airbyte-python' + id 'airbyte-docker' +} + +airbytePython { + moduleDirectory 'destination_milvus' +} diff --git a/airbyte-integrations/connectors/destination-milvus/destination_milvus/__init__.py b/airbyte-integrations/connectors/destination-milvus/destination_milvus/__init__.py new file mode 100644 index 000000000000..c17e88fb8caf --- /dev/null +++ b/airbyte-integrations/connectors/destination-milvus/destination_milvus/__init__.py @@ -0,0 +1,8 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + + +from .destination import DestinationMilvus + +__all__ = ["DestinationMilvus"] diff --git a/airbyte-integrations/connectors/destination-milvus/destination_milvus/config.py b/airbyte-integrations/connectors/destination-milvus/destination_milvus/config.py new file mode 100644 index 000000000000..80f7882a89ae --- /dev/null +++ b/airbyte-integrations/connectors/destination-milvus/destination_milvus/config.py @@ -0,0 +1,101 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + +from typing import Literal, Optional, Union + +import dpath.util +from airbyte_cdk.destinations.vector_db_based.config import ( + CohereEmbeddingConfigModel, + FakeEmbeddingConfigModel, + FromFieldEmbeddingConfigModel, + OpenAIEmbeddingConfigModel, + ProcessingConfigModel, +) +from airbyte_cdk.utils.spec_schema_transformations import resolve_refs +from pydantic import BaseModel, Field + + +class UsernamePasswordAuth(BaseModel): + mode: Literal["username_password"] = Field("username_password", const=True) + username: str = Field(..., title="Username", description="Username for the Milvus instance", order=1) + password: str = Field(..., title="Password", description="Password for the Milvus instance", airbyte_secret=True, order=2) + + class Config: + title = "Username/Password" + schema_extra = {"description": "Authenticate using username and password (suitable for self-managed Milvus clusters)"} + + +class NoAuth(BaseModel): + mode: Literal["no_auth"] = Field("no_auth", const=True) + + class Config: + title = "No auth" + schema_extra = { + "description": "Do not authenticate (suitable for locally running test clusters, do not use for clusters with public IP addresses)" + } + + +class TokenAuth(BaseModel): + mode: Literal["token"] = Field("token", const=True) + token: str = Field(..., title="API Token", description="API Token for the Milvus instance", airbyte_secret=True) + + class Config: + title = "API Token" + schema_extra = {"description": "Authenticate using an API token (suitable for Zilliz Cloud)"} + + +class MilvusIndexingConfigModel(BaseModel): + host: str = Field( + ..., + title="Public Endpoint", + order=1, + description="The public endpoint of the Milvus instance. ", + examples=["https://my-instance.zone.zillizcloud.com", "tcp://host.docker.internal:19530", "tcp://my-local-milvus:19530"], + ) + db: Optional[str] = Field(title="Database Name", description="The database to connect to", default="") + collection: str = Field(..., title="Collection Name", description="The collection to load data into", order=3) + auth: Union[TokenAuth, UsernamePasswordAuth, NoAuth] = Field( + ..., title="Authentication", description="Authentication method", discriminator="mode", type="object", order=2 + ) + vector_field: str = Field(title="Vector Field", description="The field in the entity that contains the vector", default="vector") + text_field: str = Field(title="Text Field", description="The field in the entity that contains the embedded text", default="text") + + class Config: + title = "Indexing" + schema_extra = { + "group": "indexing", + "description": "Indexing configuration", + } + + +class ConfigModel(BaseModel): + processing: ProcessingConfigModel + embedding: Union[ + OpenAIEmbeddingConfigModel, CohereEmbeddingConfigModel, FakeEmbeddingConfigModel, FromFieldEmbeddingConfigModel + ] = Field(..., title="Embedding", description="Embedding configuration", discriminator="mode", group="embedding", type="object") + indexing: MilvusIndexingConfigModel + + class Config: + title = "Milvus Destination Config" + schema_extra = { + "groups": [ + {"id": "processing", "title": "Processing"}, + {"id": "embedding", "title": "Embedding"}, + {"id": "indexing", "title": "Indexing"}, + ] + } + + @staticmethod + def remove_discriminator(schema: dict) -> None: + """pydantic adds "discriminator" to the schema for oneOfs, which is not treated right by the platform as we inline all references""" + dpath.util.delete(schema, "properties/*/discriminator") + dpath.util.delete(schema, "properties/**/discriminator") + + @classmethod + def schema(cls): + """we're overriding the schema classmethod to enable some post-processing""" + schema = super().schema() + schema = resolve_refs(schema) + cls.remove_discriminator(schema) + return schema diff --git a/airbyte-integrations/connectors/destination-milvus/destination_milvus/destination.py b/airbyte-integrations/connectors/destination-milvus/destination_milvus/destination.py new file mode 100644 index 000000000000..dc476fd631e9 --- /dev/null +++ b/airbyte-integrations/connectors/destination-milvus/destination_milvus/destination.py @@ -0,0 +1,56 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + + +from typing import Any, Iterable, Mapping + +from airbyte_cdk import AirbyteLogger +from airbyte_cdk.destinations import Destination +from airbyte_cdk.destinations.vector_db_based.embedder import CohereEmbedder, Embedder, FakeEmbedder, FromFieldEmbedder, OpenAIEmbedder +from airbyte_cdk.destinations.vector_db_based.indexer import Indexer +from airbyte_cdk.destinations.vector_db_based.writer import Writer +from airbyte_cdk.models import AirbyteConnectionStatus, AirbyteMessage, ConfiguredAirbyteCatalog, ConnectorSpecification, Status +from airbyte_cdk.models.airbyte_protocol import DestinationSyncMode +from destination_milvus.config import ConfigModel +from destination_milvus.indexer import MilvusIndexer + +BATCH_SIZE = 128 + + +embedder_map = {"openai": OpenAIEmbedder, "cohere": CohereEmbedder, "fake": FakeEmbedder, "from_field": FromFieldEmbedder} + + +class DestinationMilvus(Destination): + indexer: Indexer + embedder: Embedder + + def _init_indexer(self, config: ConfigModel): + self.embedder = embedder_map[config.embedding.mode](config.embedding) + self.indexer = MilvusIndexer(config.indexing, self.embedder.embedding_dimensions) + + def write( + self, config: Mapping[str, Any], configured_catalog: ConfiguredAirbyteCatalog, input_messages: Iterable[AirbyteMessage] + ) -> Iterable[AirbyteMessage]: + config_model = ConfigModel.parse_obj(config) + self._init_indexer(config_model) + writer = Writer(config_model.processing, self.indexer, self.embedder, batch_size=BATCH_SIZE) + yield from writer.write(configured_catalog, input_messages) + + def check(self, logger: AirbyteLogger, config: Mapping[str, Any]) -> AirbyteConnectionStatus: + self._init_indexer(ConfigModel.parse_obj(config)) + embedder_error = self.embedder.check() + indexer_error = self.indexer.check() + errors = [error for error in [embedder_error, indexer_error] if error is not None] + if len(errors) > 0: + return AirbyteConnectionStatus(status=Status.FAILED, message="\n".join(errors)) + else: + return AirbyteConnectionStatus(status=Status.SUCCEEDED) + + def spec(self, *args: Any, **kwargs: Any) -> ConnectorSpecification: + return ConnectorSpecification( + documentationUrl="https://docs.airbyte.com/integrations/destinations/milvus", + supportsIncremental=True, + supported_destination_sync_modes=[DestinationSyncMode.overwrite, DestinationSyncMode.append, DestinationSyncMode.append_dedup], + connectionSpecification=ConfigModel.schema(), # type: ignore[attr-defined] + ) diff --git a/airbyte-integrations/connectors/destination-milvus/destination_milvus/indexer.py b/airbyte-integrations/connectors/destination-milvus/destination_milvus/indexer.py new file mode 100644 index 000000000000..4fec50447e93 --- /dev/null +++ b/airbyte-integrations/connectors/destination-milvus/destination_milvus/indexer.py @@ -0,0 +1,106 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + + +import os +from multiprocessing import Process +from typing import List, Optional + +from airbyte_cdk.destinations.vector_db_based.document_processor import METADATA_RECORD_ID_FIELD, METADATA_STREAM_FIELD, Chunk +from airbyte_cdk.destinations.vector_db_based.indexer import Indexer +from airbyte_cdk.destinations.vector_db_based.utils import format_exception +from airbyte_cdk.models import ConfiguredAirbyteCatalog +from airbyte_cdk.models.airbyte_protocol import DestinationSyncMode +from destination_milvus.config import MilvusIndexingConfigModel +from pymilvus import Collection, DataType, connections +from pymilvus.exceptions import DescribeCollectionException + +CLOUD_DEPLOYMENT_MODE = "cloud" + + +class MilvusIndexer(Indexer): + config: MilvusIndexingConfigModel + + def __init__(self, config: MilvusIndexingConfigModel, embedder_dimensions: int): + super().__init__(config) + self.embedder_dimensions = embedder_dimensions + + def _connect(self): + connections.connect( + uri=self.config.host, + db_name=self.config.db if self.config.db else "", + user=self.config.auth.username if self.config.auth.mode == "username_password" else "", + password=self.config.auth.password if self.config.auth.mode == "username_password" else "", + token=self.config.auth.token if self.config.auth.mode == "token" else "", + ) + + def _create_client(self): + # Run connect in a separate process as it will hang if the token is invalid. + proc = Process(target=self._connect) + proc.start() + proc.join(5) + if proc.is_alive(): + # If the process is still alive after 5 seconds, terminate it and raise an exception + proc.terminate() + proc.join() + raise Exception("Connection timed out, check your host and credentials") + + # If the process exited within 5 seconds, it's safe to connect on the main process to execute the command + self._connect() + + self._collection = Collection(self.config.collection) + self._collection.load() + + def check(self) -> Optional[str]: + deployment_mode = os.environ.get("DEPLOYMENT_MODE", "") + if deployment_mode.casefold() == CLOUD_DEPLOYMENT_MODE and not self._uses_https(): + return "Host must start with https://" + try: + self._create_client() + + description = self._collection.describe() + if not description["auto_id"]: + return "Only collections with auto_id are supported" + vector_field = next((field for field in description["fields"] if field["name"] == self.config.vector_field), None) + if vector_field is None: + return f"Vector field {self.config.vector_field} not found" + if vector_field["type"] != DataType.FLOAT_VECTOR: + return f"Vector field {self.config.vector_field} is not a vector" + if vector_field["params"]["dim"] != self.embedder_dimensions: + return f"Vector field {self.config.vector_field} is not a {self.embedder_dimensions}-dimensional vector" + except DescribeCollectionException: + return f"Collection {self.config.collection} does not exist" + except Exception as e: + return format_exception(e) + return None + + def _uses_https(self) -> bool: + return self.config.host.startswith("https://") + + def pre_sync(self, catalog: ConfiguredAirbyteCatalog) -> None: + self._create_client() + for stream in catalog.streams: + if stream.destination_sync_mode == DestinationSyncMode.overwrite: + self._delete_for_filter(f'{METADATA_STREAM_FIELD} == "{stream.stream.name}"') + + def _delete_for_filter(self, expr: str) -> None: + iterator = self._collection.query_iterator(expr=expr) + page = iterator.next() + while len(page) > 0: + id_field = next(iter(page[0].keys())) + ids = [next(iter(entity.values())) for entity in page] + id_list_expr = ", ".join([str(id) for id in ids]) + self._collection.delete(expr=f"{id_field} in [{id_list_expr}]") + page = iterator.next() + + def index(self, document_chunks: List[Chunk], delete_ids: List[str]) -> None: + if len(delete_ids) > 0: + id_list_expr = ", ".join([f'"{id}"' for id in delete_ids]) + id_expr = f"{METADATA_RECORD_ID_FIELD} in [{id_list_expr}]" + self._delete_for_filter(id_expr) + entities = [] + for i in range(len(document_chunks)): + chunk = document_chunks[i] + entities.append({**chunk.metadata, self.config.vector_field: chunk.embedding, self.config.text_field: chunk.page_content}) + self._collection.insert(entities) diff --git a/airbyte-integrations/connectors/destination-milvus/examples/configured_catalog.json b/airbyte-integrations/connectors/destination-milvus/examples/configured_catalog.json new file mode 100644 index 000000000000..acb931363d89 --- /dev/null +++ b/airbyte-integrations/connectors/destination-milvus/examples/configured_catalog.json @@ -0,0 +1,20 @@ +{ + "streams": [ + { + "stream": { + "name": "example_stream", + "json_schema": { + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": {} + }, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": false, + "default_cursor_field": ["column_name"] + }, + "sync_mode": "full_refresh", + "destination_sync_mode": "append_dedup", + "primary_key": [["pk"]] + } + ] +} diff --git a/airbyte-integrations/connectors/destination-milvus/examples/messages.jsonl b/airbyte-integrations/connectors/destination-milvus/examples/messages.jsonl new file mode 100644 index 000000000000..195d260c3ad6 --- /dev/null +++ b/airbyte-integrations/connectors/destination-milvus/examples/messages.jsonl @@ -0,0 +1 @@ +{"type": "RECORD", "record": {"stream": "example_stream", "data": { "title": "valueZXXXXXXXX1", "field2": "value2", "pk": "1" }, "emitted_at": 1625383200000}} \ No newline at end of file diff --git a/airbyte-integrations/connectors/destination-milvus/icon.svg b/airbyte-integrations/connectors/destination-milvus/icon.svg new file mode 100644 index 000000000000..b4e13796df22 --- /dev/null +++ b/airbyte-integrations/connectors/destination-milvus/icon.svg @@ -0,0 +1,60 @@ + + + + + + + milvus-icon-color + + + + + + milvus-icon-color + + + + diff --git a/airbyte-integrations/connectors/destination-milvus/integration_tests/milvus_integration_test.py b/airbyte-integrations/connectors/destination-milvus/integration_tests/milvus_integration_test.py new file mode 100644 index 000000000000..ee6e7646670e --- /dev/null +++ b/airbyte-integrations/connectors/destination-milvus/integration_tests/milvus_integration_test.py @@ -0,0 +1,110 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + +import json +import logging + +from airbyte_cdk.destinations.vector_db_based.embedder import OPEN_AI_VECTOR_SIZE +from airbyte_cdk.destinations.vector_db_based.test_utils import BaseIntegrationTest +from airbyte_cdk.models import DestinationSyncMode, Status +from destination_milvus.destination import DestinationMilvus +from langchain.embeddings import OpenAIEmbeddings +from langchain.vectorstores import Milvus +from pymilvus import Collection, connections + + +class MilvusIntegrationTest(BaseIntegrationTest): + """ + Zilliz call to create the collection: /v1/vector/collections/create + { + "collectionName": "test2", + "dimension": 1536, + "metricType": "L2", + "vectorField": "vector", + "primaryField": "pk" + } + """ + + def _init_milvus(self): + connections.connect(alias="test_driver", uri=self.config["indexing"]["host"], token=self.config["indexing"]["auth"]["token"]) + self._collection = Collection(self.config["indexing"]["collection"], using="test_driver") + + def _clean_index(self): + self._init_milvus() + entities = self._collection.query( + expr="pk != 0", + ) + if len(entities) > 0: + id_list_expr = ", ".join([str(entity["pk"]) for entity in entities]) + self._collection.delete(expr=f"pk in [{id_list_expr}]") + + def setUp(self): + with open("secrets/config.json", "r") as f: + self.config = json.loads(f.read()) + self._clean_index() + + def test_check_valid_config(self): + outcome = DestinationMilvus().check(logging.getLogger("airbyte"), self.config) + assert outcome.status == Status.SUCCEEDED + + def test_check_invalid_config(self): + outcome = DestinationMilvus().check( + logging.getLogger("airbyte"), + { + "processing": {"text_fields": ["str_col"], "metadata_fields": [], "chunk_size": 1000}, + "embedding": {"mode": "openai", "openai_key": "mykey"}, + "indexing": { + "host": "https://notmilvus.com", + "collection": "test2", + "auth": { + "mode": "token", + "token": "mytoken", + }, + "vector_field": "vector", + "text_field": "text", + }, + }, + ) + assert outcome.status == Status.FAILED + + def test_write(self): + self._init_milvus() + catalog = self._get_configured_catalog(DestinationSyncMode.overwrite) + first_state_message = self._state({"state": "1"}) + first_record_chunk = [self._record("mystream", f"Dogs are number {i}", i) for i in range(5)] + + # initial sync + destination = DestinationMilvus() + list(destination.write(self.config, catalog, [*first_record_chunk, first_state_message])) + self._collection.flush() + assert len(self._collection.query(expr="pk != 0")) == 5 + + # incrementalally update a doc + incremental_catalog = self._get_configured_catalog(DestinationSyncMode.append_dedup) + list(destination.write(self.config, incremental_catalog, [self._record("mystream", "Cats are nice", 2), first_state_message])) + self._collection.flush() + result = self._collection.search( + anns_field=self.config["indexing"]["vector_field"], + param={}, + data=[[0] * OPEN_AI_VECTOR_SIZE], + limit=10, + expr='_ab_record_id == "mystream_2"', + output_fields=["text"], + ) + assert len(result[0]) == 1 + assert result[0][0].entity.get("text") == "str_col: Cats are nice" + + # test langchain integration + embeddings = OpenAIEmbeddings(openai_api_key=self.config["embedding"]["openai_key"]) + vs = Milvus( + embedding_function=embeddings, + collection_name=self.config["indexing"]["collection"], + connection_args={"uri": self.config["indexing"]["host"], "token": self.config["indexing"]["auth"]["token"]}, + ) + vs.fields.append("text") + vs.fields.append("_ab_record_id") + # call vs.fields.append() for all fields you need in the metadata + + result = vs.similarity_search("feline animals", 1) + assert result[0].metadata["_ab_record_id"] == "mystream_2" diff --git a/airbyte-integrations/connectors/destination-milvus/integration_tests/spec.json b/airbyte-integrations/connectors/destination-milvus/integration_tests/spec.json new file mode 100644 index 000000000000..b09a011b8527 --- /dev/null +++ b/airbyte-integrations/connectors/destination-milvus/integration_tests/spec.json @@ -0,0 +1,272 @@ +{ + "documentationUrl": "https://docs.airbyte.com/integrations/destinations/milvus", + "connectionSpecification": { + "title": "Milvus Destination Config", + "type": "object", + "properties": { + "processing": { + "title": "ProcessingConfigModel", + "type": "object", + "properties": { + "chunk_size": { + "title": "Chunk size", + "description": "Size of chunks in tokens to store in vector store (make sure it is not too big for the context if your LLM)", + "maximum": 8191, + "type": "integer" + }, + "chunk_overlap": { + "title": "Chunk overlap", + "description": "Size of overlap between chunks in tokens to store in vector store to better capture relevant context", + "default": 0, + "type": "integer" + }, + "text_fields": { + "title": "Text fields to embed", + "description": "List of fields in the record that should be used to calculate the embedding. The field list is applied to all streams in the same way and non-existing fields are ignored. If none are defined, all fields are considered text fields. When specifying text fields, you can access nested fields in the record by using dot notation, e.g. `user.name` will access the `name` field in the `user` object. It's also possible to use wildcards to access all fields in an object, e.g. `users.*.name` will access all `names` fields in all entries of the `users` array.", + "default": [], + "always_show": true, + "examples": ["text", "user.name", "users.*.name"], + "type": "array", + "items": { + "type": "string" + } + }, + "metadata_fields": { + "title": "Fields to store as metadata", + "description": "List of fields in the record that should be stored as metadata. The field list is applied to all streams in the same way and non-existing fields are ignored. If none are defined, all fields are considered metadata fields. When specifying text fields, you can access nested fields in the record by using dot notation, e.g. `user.name` will access the `name` field in the `user` object. It's also possible to use wildcards to access all fields in an object, e.g. `users.*.name` will access all `names` fields in all entries of the `users` array. When specifying nested paths, all matching values are flattened into an array set to a field named by the path.", + "default": [], + "always_show": true, + "examples": ["age", "user", "user.name"], + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": ["chunk_size"], + "group": "processing" + }, + "embedding": { + "title": "Embedding", + "description": "Embedding configuration", + "group": "embedding", + "type": "object", + "oneOf": [ + { + "title": "OpenAI", + "type": "object", + "properties": { + "mode": { + "title": "Mode", + "default": "openai", + "const": "openai", + "enum": ["openai"], + "type": "string" + }, + "openai_key": { + "title": "OpenAI API key", + "airbyte_secret": true, + "type": "string" + } + }, + "required": ["openai_key"], + "description": "Use the OpenAI API to embed text. This option is using the text-embedding-ada-002 model with 1536 embedding dimensions." + }, + { + "title": "Cohere", + "type": "object", + "properties": { + "mode": { + "title": "Mode", + "default": "cohere", + "const": "cohere", + "enum": ["cohere"], + "type": "string" + }, + "cohere_key": { + "title": "Cohere API key", + "airbyte_secret": true, + "type": "string" + } + }, + "required": ["cohere_key"], + "description": "Use the Cohere API to embed text." + }, + { + "title": "Fake", + "type": "object", + "properties": { + "mode": { + "title": "Mode", + "default": "fake", + "const": "fake", + "enum": ["fake"], + "type": "string" + } + }, + "description": "Use a fake embedding made out of random vectors with 1536 embedding dimensions. This is useful for testing the data pipeline without incurring any costs." + }, + { + "title": "From Field", + "type": "object", + "properties": { + "mode": { + "title": "Mode", + "default": "from_field", + "const": "from_field", + "enum": ["from_field"], + "type": "string" + }, + "field_name": { + "title": "Field name", + "description": "Name of the field in the record that contains the embedding", + "examples": ["embedding", "vector"], + "type": "string" + }, + "dimensions": { + "title": "Embedding dimensions", + "description": "The number of dimensions the embedding model is generating", + "examples": [1536, 384], + "type": "integer" + } + }, + "required": ["field_name", "dimensions"], + "description": "Use a field in the record as the embedding. This is useful if you already have an embedding for your data and want to store it in the vector store." + } + ] + }, + "indexing": { + "title": "Indexing", + "type": "object", + "properties": { + "host": { + "title": "Public Endpoint", + "description": "The public endpoint of the Milvus instance. ", + "order": 1, + "examples": [ + "https://my-instance.zone.zillizcloud.com", + "tcp://host.docker.internal:19530", + "tcp://my-local-milvus:19530" + ], + "type": "string" + }, + "db": { + "title": "Database Name", + "description": "The database to connect to", + "default": "", + "type": "string" + }, + "collection": { + "title": "Collection Name", + "description": "The collection to load data into", + "order": 3, + "type": "string" + }, + "auth": { + "title": "Authentication", + "description": "Authentication method", + "type": "object", + "order": 2, + "oneOf": [ + { + "title": "API Token", + "type": "object", + "properties": { + "mode": { + "title": "Mode", + "default": "token", + "const": "token", + "enum": ["token"], + "type": "string" + }, + "token": { + "title": "API Token", + "description": "API Token for the Milvus instance", + "airbyte_secret": true, + "type": "string" + } + }, + "required": ["token"], + "description": "Authenticate using an API token (suitable for Zilliz Cloud)" + }, + { + "title": "Username/Password", + "type": "object", + "properties": { + "mode": { + "title": "Mode", + "default": "username_password", + "const": "username_password", + "enum": ["username_password"], + "type": "string" + }, + "username": { + "title": "Username", + "description": "Username for the Milvus instance", + "order": 1, + "type": "string" + }, + "password": { + "title": "Password", + "description": "Password for the Milvus instance", + "airbyte_secret": true, + "order": 2, + "type": "string" + } + }, + "required": ["username", "password"], + "description": "Authenticate using username and password (suitable for self-managed Milvus clusters)" + }, + { + "title": "No auth", + "type": "object", + "properties": { + "mode": { + "title": "Mode", + "default": "no_auth", + "const": "no_auth", + "enum": ["no_auth"], + "type": "string" + } + }, + "description": "Do not authenticate (suitable for locally running test clusters, do not use for clusters with public IP addresses)" + } + ] + }, + "vector_field": { + "title": "Vector Field", + "description": "The field in the entity that contains the vector", + "default": "vector", + "type": "string" + }, + "text_field": { + "title": "Text Field", + "description": "The field in the entity that contains the embedded text", + "default": "text", + "type": "string" + } + }, + "required": ["host", "collection", "auth"], + "group": "indexing", + "description": "Indexing configuration" + } + }, + "required": ["processing", "embedding", "indexing"], + "groups": [ + { + "id": "processing", + "title": "Processing" + }, + { + "id": "embedding", + "title": "Embedding" + }, + { + "id": "indexing", + "title": "Indexing" + } + ] + }, + "supportsIncremental": true, + "supported_destination_sync_modes": ["overwrite", "append", "append_dedup"] +} diff --git a/airbyte-integrations/connectors/destination-milvus/main.py b/airbyte-integrations/connectors/destination-milvus/main.py new file mode 100644 index 000000000000..ed23821ba6c3 --- /dev/null +++ b/airbyte-integrations/connectors/destination-milvus/main.py @@ -0,0 +1,11 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + + +import sys + +from destination_milvus import DestinationMilvus + +if __name__ == "__main__": + DestinationMilvus().run(sys.argv[1:]) diff --git a/airbyte-integrations/connectors/destination-milvus/metadata.yaml b/airbyte-integrations/connectors/destination-milvus/metadata.yaml new file mode 100644 index 000000000000..d9fe2dc602dd --- /dev/null +++ b/airbyte-integrations/connectors/destination-milvus/metadata.yaml @@ -0,0 +1,25 @@ +data: + registries: + cloud: + enabled: true + oss: + enabled: true + connectorSubtype: database + connectorType: destination + definitionId: 65de8962-48c9-11ee-be56-0242ac120002 + dockerImageTag: 0.0.1 + dockerRepository: airbyte/destination-milvus + githubIssueLabel: destination-milvus + icon: milvus.svg + license: MIT + name: Milvus + releaseDate: 2023-08-15 + releaseStage: alpha + documentationUrl: https://docs.airbyte.com/integrations/destinations/milvus + tags: + - language:python + ab_internal: + sl: 100 + ql: 100 + supportLevel: community +metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/destination-milvus/requirements.txt b/airbyte-integrations/connectors/destination-milvus/requirements.txt new file mode 100644 index 000000000000..d6e1198b1ab1 --- /dev/null +++ b/airbyte-integrations/connectors/destination-milvus/requirements.txt @@ -0,0 +1 @@ +-e . diff --git a/airbyte-integrations/connectors/destination-milvus/setup.py b/airbyte-integrations/connectors/destination-milvus/setup.py new file mode 100644 index 000000000000..ab1b06fc0d08 --- /dev/null +++ b/airbyte-integrations/connectors/destination-milvus/setup.py @@ -0,0 +1,23 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + + +from setuptools import find_packages, setup + +MAIN_REQUIREMENTS = ["airbyte-cdk[vector-db-based]==0.51.12", "pymilvus==2.3.0"] + +TEST_REQUIREMENTS = ["pytest~=6.2"] + +setup( + name="destination_milvus", + description="Destination implementation for Milvus.", + author="Airbyte", + author_email="contact@airbyte.io", + packages=find_packages(), + install_requires=MAIN_REQUIREMENTS, + package_data={"": ["*.json"]}, + extras_require={ + "tests": TEST_REQUIREMENTS, + }, +) diff --git a/airbyte-integrations/connectors/destination-milvus/unit_tests/destination_test.py b/airbyte-integrations/connectors/destination-milvus/unit_tests/destination_test.py new file mode 100644 index 000000000000..2919ed43a781 --- /dev/null +++ b/airbyte-integrations/connectors/destination-milvus/unit_tests/destination_test.py @@ -0,0 +1,101 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + +import unittest +from unittest.mock import MagicMock, Mock, patch + +from airbyte_cdk import AirbyteLogger +from airbyte_cdk.models import ConnectorSpecification, Status +from destination_milvus.config import ConfigModel +from destination_milvus.destination import DestinationMilvus, embedder_map + + +class TestDestinationMilvus(unittest.TestCase): + def setUp(self): + self.config = { + "processing": {"text_fields": ["str_col"], "metadata_fields": [], "chunk_size": 1000}, + "embedding": {"mode": "openai", "openai_key": "mykey"}, + "indexing": { + "host": "https://notmilvus.com", + "collection": "test2", + "auth": { + "mode": "token", + "token": "mytoken", + }, + "vector_field": "vector", + "text_field": "text", + }, + } + self.config_model = ConfigModel.parse_obj(self.config) + self.logger = AirbyteLogger() + + @patch("destination_milvus.destination.MilvusIndexer") + @patch.dict(embedder_map, openai=MagicMock()) + def test_check(self, MockedMilvusIndexer): + mock_embedder = Mock() + mock_indexer = Mock() + embedder_map["openai"].return_value = mock_embedder + MockedMilvusIndexer.return_value = mock_indexer + + mock_embedder.check.return_value = None + mock_indexer.check.return_value = None + + destination = DestinationMilvus() + result = destination.check(self.logger, self.config) + + self.assertEqual(result.status, Status.SUCCEEDED) + mock_embedder.check.assert_called_once() + mock_indexer.check.assert_called_once() + + @patch("destination_milvus.destination.MilvusIndexer") + @patch.dict(embedder_map, openai=MagicMock()) + def test_check_with_errors(self, MockedMilvusIndexer): + mock_embedder = Mock() + mock_indexer = Mock() + embedder_map["openai"].return_value = mock_embedder + MockedMilvusIndexer.return_value = mock_indexer + + embedder_error_message = "Embedder Error" + indexer_error_message = "Indexer Error" + + mock_embedder.check.return_value = embedder_error_message + mock_indexer.check.return_value = indexer_error_message + + destination = DestinationMilvus() + result = destination.check(self.logger, self.config) + + self.assertEqual(result.status, Status.FAILED) + self.assertEqual(result.message, f"{embedder_error_message}\n{indexer_error_message}") + + mock_embedder.check.assert_called_once() + mock_indexer.check.assert_called_once() + + @patch("destination_milvus.destination.Writer") + @patch("destination_milvus.destination.MilvusIndexer") + @patch.dict(embedder_map, openai=MagicMock()) + def test_write(self, MockedMilvusIndexer, MockedWriter): + mock_embedder = Mock() + mock_indexer = Mock() + mock_writer = Mock() + + embedder_map["openai"].return_value = mock_embedder + MockedMilvusIndexer.return_value = mock_indexer + MockedWriter.return_value = mock_writer + + mock_writer.write.return_value = [] + + configured_catalog = MagicMock() + input_messages = [] + + destination = DestinationMilvus() + list(destination.write(self.config, configured_catalog, input_messages)) + + MockedWriter.assert_called_once_with(self.config_model.processing, mock_indexer, mock_embedder, batch_size=128) + mock_writer.write.assert_called_once_with(configured_catalog, input_messages) + + def test_spec(self): + destination = DestinationMilvus() + result = destination.spec() + + self.assertIsInstance(result, ConnectorSpecification) diff --git a/airbyte-integrations/connectors/destination-milvus/unit_tests/indexer_test.py b/airbyte-integrations/connectors/destination-milvus/unit_tests/indexer_test.py new file mode 100644 index 000000000000..38cb7b01c55f --- /dev/null +++ b/airbyte-integrations/connectors/destination-milvus/unit_tests/indexer_test.py @@ -0,0 +1,147 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + +import os +import unittest +from unittest.mock import Mock, call + +from airbyte_cdk.models.airbyte_protocol import AirbyteStream, DestinationSyncMode, SyncMode +from destination_milvus.config import MilvusIndexingConfigModel +from destination_milvus.indexer import MilvusIndexer +from pymilvus import DataType +from pymilvus.exceptions import DescribeCollectionException + + +class TestMilvusIndexer(unittest.TestCase): + def setUp(self): + self.mock_config = MilvusIndexingConfigModel( + **{ + "host": "https://notmilvus.com", + "collection": "test2", + "auth": { + "mode": "token", + "token": "mytoken", + }, + "vector_field": "vector", + "text_field": "text", + } + ) + self.milvus_indexer = MilvusIndexer(self.mock_config, 128) + self.milvus_indexer._create_client = Mock() # This is mocked out because testing separate processes is hard + self.milvus_indexer._collection = Mock() + + def test_check_returns_expected_result(self): + self.milvus_indexer._collection.describe.return_value = { + "auto_id": True, + "fields": [{"name": "vector", "type": DataType.FLOAT_VECTOR, "params": {"dim": 128}}], + } + + result = self.milvus_indexer.check() + + self.assertIsNone(result) + + self.milvus_indexer._collection.describe.assert_called() + + def test_check_secure_endpoint(self): + self.milvus_indexer._collection.describe.return_value = { + "auto_id": True, + "fields": [{"name": "vector", "type": DataType.FLOAT_VECTOR, "params": {"dim": 128}}], + } + test_cases = [ + ("cloud", "http://example.org", "Host must start with https://"), + ("cloud", "https://example.org", None), + ("", "http://example.org", None), + ("", "https://example.org", None) + ] + for deployment_mode, uri, expected_error_message in test_cases: + os.environ["DEPLOYMENT_MODE"] = deployment_mode + self.milvus_indexer.config.host = uri + + result = self.milvus_indexer.check() + + self.assertEqual(result, expected_error_message) + + def test_check_handles_failure_conditions(self): + # Test 1: Collection does not exist + self.milvus_indexer._collection.describe.side_effect = DescribeCollectionException("Some error") + + result = self.milvus_indexer.check() + self.assertEqual(result, f"Collection {self.mock_config.collection} does not exist") + + # Test 2: General exception in describe + self.milvus_indexer._collection.describe.side_effect = Exception("Random exception") + result = self.milvus_indexer.check() + self.assertTrue("Random exception" in result) # Assuming format_exception includes the exception message + + # Test 3: auto_id is not True + self.milvus_indexer._collection.describe.return_value = {"auto_id": False} + self.milvus_indexer._collection.describe.side_effect = None + result = self.milvus_indexer.check() + self.assertEqual(result, "Only collections with auto_id are supported") + + # Test 4: Vector field not found + self.milvus_indexer._collection.describe.return_value = {"auto_id": True, "fields": [{"name": "wrong_vector_field"}]} + result = self.milvus_indexer.check() + self.assertEqual(result, f"Vector field {self.mock_config.vector_field} not found") + + # Test 5: Vector field is not a vector + self.milvus_indexer._collection.describe.return_value = { + "auto_id": True, + "fields": [{"name": self.mock_config.vector_field, "type": DataType.INT32}], + } + result = self.milvus_indexer.check() + self.assertEqual(result, f"Vector field {self.mock_config.vector_field} is not a vector") + + # Test 6: Vector field dimension mismatch + self.milvus_indexer._collection.describe.return_value = { + "auto_id": True, + "fields": [{"name": self.mock_config.vector_field, "type": DataType.FLOAT_VECTOR, "params": {"dim": 64}}], + } + result = self.milvus_indexer.check() + self.assertEqual( + result, f"Vector field {self.mock_config.vector_field} is not a 128-dimensional vector" + ) + + def test_pre_sync_calls_delete(self): + mock_iterator = Mock() + mock_iterator.next.side_effect = [[{"id": 1}], []] + self.milvus_indexer._collection.query_iterator.return_value = mock_iterator + + self.milvus_indexer.pre_sync( + Mock( + streams=[ + Mock( + destination_sync_mode=DestinationSyncMode.overwrite, + stream=AirbyteStream(name="some_stream", json_schema={}, supported_sync_modes=[SyncMode.full_refresh]), + ) + ] + ) + ) + + self.milvus_indexer._collection.query_iterator.assert_called_with(expr='_ab_stream == "some_stream"') + self.milvus_indexer._collection.delete.assert_called_with(expr="id in [1]") + + def test_pre_sync_does_not_call_delete(self): + self.milvus_indexer.pre_sync( + Mock(streams=[Mock(destination_sync_mode=DestinationSyncMode.append, stream=Mock(name="some_stream"))]) + ) + + self.milvus_indexer._collection.delete.assert_not_called() + + def test_index_calls_insert(self): + self.milvus_indexer.index([Mock(metadata={"key": "value"}, page_content="some content", embedding=[1,2,3])], []) + + self.milvus_indexer._collection.insert.assert_called_with( + [{"key": "value", "vector": [1,2,3], "text": "some content"}] + ) + + def test_index_calls_delete(self): + mock_iterator = Mock() + mock_iterator.next.side_effect = [[{"id": "123"}, {"id": "456"}], [{"id": "789"}], []] + self.milvus_indexer._collection.query_iterator.return_value = mock_iterator + + self.milvus_indexer.index([], ["some_id"]) + + self.milvus_indexer._collection.query_iterator.assert_called_with(expr='_ab_record_id in ["some_id"]') + self.milvus_indexer._collection.delete.assert_has_calls([call(expr="id in [123, 456]"), call(expr="id in [789]")], any_order=False) diff --git a/airbyte-integrations/connectors/destination-mongodb-strict-encrypt/.dockerignore b/airbyte-integrations/connectors/destination-mongodb-strict-encrypt/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-mongodb-strict-encrypt/.dockerignore +++ b/airbyte-integrations/connectors/destination-mongodb-strict-encrypt/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-mongodb-strict-encrypt/build.gradle b/airbyte-integrations/connectors/destination-mongodb-strict-encrypt/build.gradle index b6f5a089a461..e5c9623dbedd 100644 --- a/airbyte-integrations/connectors/destination-mongodb-strict-encrypt/build.gradle +++ b/airbyte-integrations/connectors/destination-mongodb-strict-encrypt/build.gradle @@ -18,10 +18,9 @@ dependencies { implementation project(':airbyte-integrations:connectors:destination-mongodb') implementation 'org.mongodb:mongodb-driver-sync:4.3.0' - testImplementation libs.connectors.testcontainers.mongodb + testImplementation libs.testcontainers.mongodb integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-mongodb-strict-encrypt') integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors/destination-mongodb/.dockerignore b/airbyte-integrations/connectors/destination-mongodb/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-mongodb/.dockerignore +++ b/airbyte-integrations/connectors/destination-mongodb/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-mongodb/build.gradle b/airbyte-integrations/connectors/destination-mongodb/build.gradle index 413cc042e780..574aaa4f9282 100644 --- a/airbyte-integrations/connectors/destination-mongodb/build.gradle +++ b/airbyte-integrations/connectors/destination-mongodb/build.gradle @@ -18,11 +18,10 @@ dependencies { implementation 'org.mongodb:mongodb-driver-sync:4.3.0' - testImplementation libs.connectors.testcontainers.mongodb + testImplementation libs.testcontainers.mongodb testImplementation project(':airbyte-integrations:bases:standard-destination-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-mongodb') integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors/destination-mqtt/.dockerignore b/airbyte-integrations/connectors/destination-mqtt/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-mqtt/.dockerignore +++ b/airbyte-integrations/connectors/destination-mqtt/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-mqtt/build.gradle b/airbyte-integrations/connectors/destination-mqtt/build.gradle index 02bf1c442610..82f1a3632ec2 100644 --- a/airbyte-integrations/connectors/destination-mqtt/build.gradle +++ b/airbyte-integrations/connectors/destination-mqtt/build.gradle @@ -14,7 +14,6 @@ dependencies { implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation 'org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.2.5' diff --git a/airbyte-integrations/connectors/destination-mssql-strict-encrypt/.dockerignore b/airbyte-integrations/connectors/destination-mssql-strict-encrypt/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-mssql-strict-encrypt/.dockerignore +++ b/airbyte-integrations/connectors/destination-mssql-strict-encrypt/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-mssql-strict-encrypt/build.gradle b/airbyte-integrations/connectors/destination-mssql-strict-encrypt/build.gradle index 45378da4cf27..6786ff0d75a1 100644 --- a/airbyte-integrations/connectors/destination-mssql-strict-encrypt/build.gradle +++ b/airbyte-integrations/connectors/destination-mssql-strict-encrypt/build.gradle @@ -21,15 +21,9 @@ dependencies { implementation 'com.microsoft.sqlserver:mssql-jdbc:8.4.1.jre14' testImplementation 'org.apache.commons:commons-lang3:3.11' - testImplementation libs.connectors.testcontainers.mssqlserver + testImplementation libs.testcontainers.mssqlserver integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-mssql-strict-encrypt') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-normalization').airbyteDocker.outputs) -} - -tasks.named("airbyteDocker") { - dependsOn project(':airbyte-integrations:bases:base-normalization').airbyteDockerMSSql } diff --git a/airbyte-integrations/connectors/destination-mssql/.dockerignore b/airbyte-integrations/connectors/destination-mssql/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-mssql/.dockerignore +++ b/airbyte-integrations/connectors/destination-mssql/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-mssql/build.gradle b/airbyte-integrations/connectors/destination-mssql/build.gradle index 300c78a44c21..4fa5bb26f545 100644 --- a/airbyte-integrations/connectors/destination-mssql/build.gradle +++ b/airbyte-integrations/connectors/destination-mssql/build.gradle @@ -19,15 +19,9 @@ dependencies { implementation 'com.microsoft.sqlserver:mssql-jdbc:8.4.1.jre14' testImplementation 'org.apache.commons:commons-lang3:3.11' - testImplementation libs.connectors.testcontainers.mssqlserver + testImplementation libs.testcontainers.mssqlserver integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-mssql') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-normalization').airbyteDocker.outputs) -} - -tasks.named("airbyteDocker") { - dependsOn project(':airbyte-integrations:bases:base-normalization').airbyteDockerMSSql } diff --git a/airbyte-integrations/connectors/destination-mysql-strict-encrypt/.dockerignore b/airbyte-integrations/connectors/destination-mysql-strict-encrypt/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-mysql-strict-encrypt/.dockerignore +++ b/airbyte-integrations/connectors/destination-mysql-strict-encrypt/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-mysql-strict-encrypt/build.gradle b/airbyte-integrations/connectors/destination-mysql-strict-encrypt/build.gradle index 489ad43d03b4..dc237b8f6124 100644 --- a/airbyte-integrations/connectors/destination-mysql-strict-encrypt/build.gradle +++ b/airbyte-integrations/connectors/destination-mysql-strict-encrypt/build.gradle @@ -20,8 +20,6 @@ dependencies { integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-mysql') - integrationTestJavaImplementation libs.connectors.testcontainers.mysql + integrationTestJavaImplementation libs.testcontainers.mysql - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-normalization').airbyteDocker.outputs) -} +} \ No newline at end of file diff --git a/airbyte-integrations/connectors/destination-mysql/.dockerignore b/airbyte-integrations/connectors/destination-mysql/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-mysql/.dockerignore +++ b/airbyte-integrations/connectors/destination-mysql/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-mysql/build.gradle b/airbyte-integrations/connectors/destination-mysql/build.gradle index ff67bf5575cb..a3650e4bfe7e 100644 --- a/airbyte-integrations/connectors/destination-mysql/build.gradle +++ b/airbyte-integrations/connectors/destination-mysql/build.gradle @@ -19,8 +19,6 @@ dependencies { integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-mysql') - integrationTestJavaImplementation libs.connectors.testcontainers.mysql + integrationTestJavaImplementation libs.testcontainers.mysql - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-normalization').airbyteDocker.outputs) -} +} \ No newline at end of file diff --git a/airbyte-integrations/connectors/destination-oracle-strict-encrypt/.dockerignore b/airbyte-integrations/connectors/destination-oracle-strict-encrypt/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-oracle-strict-encrypt/.dockerignore +++ b/airbyte-integrations/connectors/destination-oracle-strict-encrypt/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-oracle-strict-encrypt/build.gradle b/airbyte-integrations/connectors/destination-oracle-strict-encrypt/build.gradle index 9292f9d99ca8..dd0b3c30b6ec 100644 --- a/airbyte-integrations/connectors/destination-oracle-strict-encrypt/build.gradle +++ b/airbyte-integrations/connectors/destination-oracle-strict-encrypt/build.gradle @@ -25,11 +25,9 @@ dependencies { testImplementation project(':airbyte-test-utils') testImplementation 'org.apache.commons:commons-lang3:3.11' - testImplementation libs.connectors.destination.testcontainers.oracle.xe + testImplementation libs.testcontainers.oracle.xe integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-oracle') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-normalization').airbyteDocker.outputs) -} +} \ No newline at end of file diff --git a/airbyte-integrations/connectors/destination-oracle/.dockerignore b/airbyte-integrations/connectors/destination-oracle/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-oracle/.dockerignore +++ b/airbyte-integrations/connectors/destination-oracle/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-oracle/build.gradle b/airbyte-integrations/connectors/destination-oracle/build.gradle index f4676000e966..d10f97dd49e6 100644 --- a/airbyte-integrations/connectors/destination-oracle/build.gradle +++ b/airbyte-integrations/connectors/destination-oracle/build.gradle @@ -22,11 +22,9 @@ dependencies { implementation "com.oracle.database.jdbc:ojdbc8-production:19.7.0.0" testImplementation 'org.apache.commons:commons-lang3:3.11' - testImplementation libs.connectors.destination.testcontainers.oracle.xe + testImplementation libs.testcontainers.oracle.xe integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-oracle') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-normalization').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors/destination-pinecone/Dockerfile b/airbyte-integrations/connectors/destination-pinecone/Dockerfile index ab127df6c25d..bd59293aa1c8 100644 --- a/airbyte-integrations/connectors/destination-pinecone/Dockerfile +++ b/airbyte-integrations/connectors/destination-pinecone/Dockerfile @@ -38,5 +38,6 @@ COPY destination_pinecone ./destination_pinecone ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=0.0.2 +LABEL io.airbyte.version=0.0.9 + LABEL io.airbyte.name=airbyte/destination-pinecone diff --git a/airbyte-integrations/connectors/destination-pinecone/destination_pinecone/batcher.py b/airbyte-integrations/connectors/destination-pinecone/destination_pinecone/batcher.py deleted file mode 100644 index ab3ad18c83d8..000000000000 --- a/airbyte-integrations/connectors/destination-pinecone/destination_pinecone/batcher.py +++ /dev/null @@ -1,26 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -from typing import Any, Callable, List - - -class Batcher: - def __init__(self, batch_size: int, flush_handler: Callable[[List[Any]], None]): - self.batch_size = batch_size - self.buffer = [] - self.flush_handler = flush_handler - - def add(self, item: Any): - self.buffer.append(item) - self._flush_if_necessary() - - def flush(self): - if len(self.buffer) == 0: - return - self.flush_handler(list(self.buffer)) - self.buffer.clear() - - def _flush_if_necessary(self): - if len(self.buffer) >= self.batch_size: - self.flush() diff --git a/airbyte-integrations/connectors/destination-pinecone/destination_pinecone/config.py b/airbyte-integrations/connectors/destination-pinecone/destination_pinecone/config.py index d4e5d06d445d..5b0ee1797116 100644 --- a/airbyte-integrations/connectors/destination-pinecone/destination_pinecone/config.py +++ b/airbyte-integrations/connectors/destination-pinecone/destination_pinecone/config.py @@ -2,94 +2,46 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # -import json -import re -from typing import List, Literal, Optional, Union +from typing import Union import dpath.util -from jsonschema import RefResolver +from airbyte_cdk.destinations.vector_db_based.config import ( + AzureOpenAIEmbeddingConfigModel, + CohereEmbeddingConfigModel, + FakeEmbeddingConfigModel, + OpenAIEmbeddingConfigModel, + ProcessingConfigModel, +) +from airbyte_cdk.utils.spec_schema_transformations import resolve_refs from pydantic import BaseModel, Field -class ProcessingConfigModel(BaseModel): - chunk_size: int = Field( +class PineconeIndexingModel(BaseModel): + pinecone_key: str = Field( ..., - title="Chunk size", - maximum=8191, - description="Size of chunks in tokens to store in vector store (make sure it is not too big for the context if your LLM)", - ) - chunk_overlap: int = Field( - title="Chunk overlap", - description="Size of overlap between chunks in tokens to store in vector store to better capture relevant context", - default=0, + title="Pinecone API key", + airbyte_secret=True, + description="The Pinecone API key to use matching the environment (copy from Pinecone console)", ) - text_fields: Optional[List[str]] = Field( - default=[], - always_show=True, - title="Text fields to embed", - description="List of fields in the record that should be used to calculate the embedding. All other fields are passed along as meta fields. The field list is applied to all streams in the same way and non-existing fields are ignored. If none are defined, all fields are considered text fields. When specifying text fields, you can access nested fields in the record by using dot notation, e.g. `user.name` will access the `name` field in the `user` object. It's also possible to use wildcards to access all fields in an object, e.g. `users.*.name` will access all `names` fields in all entries of the `users` array.", - examples=["text", "user.name", "users.*.name"], + pinecone_environment: str = Field( + ..., title="Pinecone Environment", description="Pinecone Cloud environment to use", examples=["us-west1-gcp", "gcp-starter"] ) - metadata_fields: Optional[List[str]] = Field( - default=[], - always_show=True, - title="Metadata fields", - description="List of fields in the record that should be stored as metadata. ", - examples=["text", "user.name", "users.*.name"], - ) - - class Config: - schema_extra = {"group": "processing"} - - -class OpenAIEmbeddingConfigModel(BaseModel): - mode: Literal["openai"] = Field("openai", const=True) - openai_key: str = Field(..., title="OpenAI API key", airbyte_secret=True) + index: str = Field(..., title="Index", description="Pinecone index in your project to load data into") class Config: - title = "OpenAI" + title = "Indexing" schema_extra = { - "description": "Use the OpenAI API to embed text. This option is using the text-embedding-ada-002 model with 1536 embedding dimensions." + "description": "Pinecone is a popular vector store that can be used to store and retrieve embeddings.", + "group": "indexing", } -class CohereEmbeddingConfigModel(BaseModel): - mode: Literal["cohere"] = Field("cohere", const=True) - cohere_key: str = Field(..., title="Cohere API key", airbyte_secret=True) - - class Config: - title = "Cohere" - schema_extra = { - "description": "Use the Cohere API to embed text. This option is using the embed-english-light-v2.0 model with 1024 embedding dimensions." - } - - -class FakeEmbeddingConfigModel(BaseModel): - mode: Literal["fake"] = Field("fake", const=True) - - class Config: - title = "Fake" - schema_extra = { - "description": "Use a fake embedding made out of random vectors with 1536 embedding dimensions. This is useful for testing the data pipeline without incurring any costs." - } - - -class PineconeIndexingModel(BaseModel): - pinecone_key: str = Field(..., title="Pinecone API key", airbyte_secret=True) - pinecone_environment: str = Field(..., title="Pinecone environment", description="Pinecone environment to use") - index: str = Field(..., title="Index", description="Pinecone index to use") - - class Config: - title = "Pinecone" - schema_extra = {"description": "Pinecone is a popular vector store that can be used to store and retrieve embeddings."} - - class ConfigModel(BaseModel): indexing: PineconeIndexingModel - embedding: Union[OpenAIEmbeddingConfigModel, CohereEmbeddingConfigModel, FakeEmbeddingConfigModel] = Field( - ..., title="Embedding", description="Embedding configuration", discriminator="mode", group="embedding", type="object" - ) + embedding: Union[ + OpenAIEmbeddingConfigModel, CohereEmbeddingConfigModel, FakeEmbeddingConfigModel, AzureOpenAIEmbeddingConfigModel + ] = Field(..., title="Embedding", description="Embedding configuration", discriminator="mode", group="embedding", type="object") processing: ProcessingConfigModel class Config: @@ -102,18 +54,6 @@ class Config: ] } - @staticmethod - def resolve_refs(schema: dict) -> dict: - # config schemas can't contain references, so inline them - json_schema_ref_resolver = RefResolver.from_schema(schema) - str_schema = json.dumps(schema) - for ref_block in re.findall(r'{"\$ref": "#\/definitions\/.+?(?="})"}', str_schema): - ref = json.loads(ref_block)["$ref"] - str_schema = str_schema.replace(ref_block, json.dumps(json_schema_ref_resolver.resolve(ref)[1])) - pyschema: dict = json.loads(str_schema) - del pyschema["definitions"] - return pyschema - @staticmethod def remove_discriminator(schema: dict) -> None: """pydantic adds "discriminator" to the schema for oneOfs, which is not treated right by the platform as we inline all references""" @@ -123,6 +63,6 @@ def remove_discriminator(schema: dict) -> None: def schema(cls): """we're overriding the schema classmethod to enable some post-processing""" schema = super().schema() - schema = cls.resolve_refs(schema) + schema = resolve_refs(schema) cls.remove_discriminator(schema) return schema diff --git a/airbyte-integrations/connectors/destination-pinecone/destination_pinecone/destination.py b/airbyte-integrations/connectors/destination-pinecone/destination_pinecone/destination.py index 8481af0505fb..9f841524d60d 100644 --- a/airbyte-integrations/connectors/destination-pinecone/destination_pinecone/destination.py +++ b/airbyte-integrations/connectors/destination-pinecone/destination_pinecone/destination.py @@ -3,71 +3,39 @@ # -from typing import Any, Iterable, List, Mapping +from typing import Any, Iterable, Mapping from airbyte_cdk import AirbyteLogger from airbyte_cdk.destinations import Destination -from airbyte_cdk.models import ( - AirbyteConnectionStatus, - AirbyteMessage, - AirbyteRecordMessage, - ConfiguredAirbyteCatalog, - ConnectorSpecification, - Status, - Type, -) +from airbyte_cdk.destinations.vector_db_based.embedder import AzureOpenAIEmbedder, CohereEmbedder, Embedder, FakeEmbedder, OpenAIEmbedder +from airbyte_cdk.destinations.vector_db_based.indexer import Indexer +from airbyte_cdk.destinations.vector_db_based.writer import Writer +from airbyte_cdk.models import AirbyteConnectionStatus, AirbyteMessage, ConfiguredAirbyteCatalog, ConnectorSpecification, Status from airbyte_cdk.models.airbyte_protocol import DestinationSyncMode -from destination_pinecone.batcher import Batcher from destination_pinecone.config import ConfigModel -from destination_pinecone.document_processor import DocumentProcessor -from destination_pinecone.embedder import CohereEmbedder, Embedder, FakeEmbedder, OpenAIEmbedder -from destination_pinecone.indexer import Indexer, PineconeIndexer -from langchain.document_loaders.base import Document +from destination_pinecone.indexer import PineconeIndexer BATCH_SIZE = 128 -indexer_map = {"pinecone": PineconeIndexer} -embedder_map = {"openai": OpenAIEmbedder, "cohere": CohereEmbedder, "fake": FakeEmbedder} +embedder_map = {"openai": OpenAIEmbedder, "cohere": CohereEmbedder, "fake": FakeEmbedder, "azure_openai": AzureOpenAIEmbedder} class DestinationPinecone(Destination): indexer: Indexer - processor: DocumentProcessor embedder: Embedder def _init_indexer(self, config: ConfigModel): self.embedder = embedder_map[config.embedding.mode](config.embedding) - self.indexer = indexer_map["pinecone"](config.indexing, self.embedder) - - def _process_batch(self, batch: List[AirbyteRecordMessage]): - documents: List[Document] = [] - ids_to_delete = [] - for record in batch: - record_documents, record_id_to_delete = self.processor.process(record) - documents.extend(record_documents) - if record_id_to_delete is not None: - ids_to_delete.append(record_id_to_delete) - self.indexer.index(documents, ids_to_delete) + self.indexer = PineconeIndexer(config.indexing, self.embedder.embedding_dimensions) def write( self, config: Mapping[str, Any], configured_catalog: ConfiguredAirbyteCatalog, input_messages: Iterable[AirbyteMessage] ) -> Iterable[AirbyteMessage]: config_model = ConfigModel.parse_obj(config) self._init_indexer(config_model) - self.processor = DocumentProcessor(config_model.processing, configured_catalog, max_metadata_size=self.indexer.max_metadata_size) - batcher = Batcher(BATCH_SIZE, lambda batch: self._process_batch(batch)) - self.indexer.pre_sync(configured_catalog) - for message in input_messages: - if message.type == Type.STATE: - # Emitting a state message indicates that all records which came before it have been written to the destination. So we flush - # the queue to ensure writes happen, then output the state message to indicate it's safe to checkpoint state - batcher.flush() - yield message - elif message.type == Type.RECORD: - batcher.add(message.record) - batcher.flush() - yield from self.indexer.post_sync() + writer = Writer(config_model.processing, self.indexer, self.embedder, batch_size=BATCH_SIZE) + yield from writer.write(configured_catalog, input_messages) def check(self, logger: AirbyteLogger, config: Mapping[str, Any]) -> AirbyteConnectionStatus: self._init_indexer(ConfigModel.parse_obj(config)) diff --git a/airbyte-integrations/connectors/destination-pinecone/destination_pinecone/document_processor.py b/airbyte-integrations/connectors/destination-pinecone/destination_pinecone/document_processor.py deleted file mode 100644 index 31c795167625..000000000000 --- a/airbyte-integrations/connectors/destination-pinecone/destination_pinecone/document_processor.py +++ /dev/null @@ -1,112 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -import logging -from typing import List, Mapping, Optional, Tuple, Union - -import dpath.util -from airbyte_cdk.models import AirbyteRecordMessage, ConfiguredAirbyteCatalog, ConfiguredAirbyteStream -from airbyte_cdk.models.airbyte_protocol import AirbyteStream, DestinationSyncMode -from destination_pinecone.config import ProcessingConfigModel -from langchain.document_loaders.base import Document -from langchain.text_splitter import RecursiveCharacterTextSplitter -from langchain.utils import stringify_dict - -METADATA_STREAM_FIELD = "_ab_stream" -METADATA_RECORD_ID_FIELD = "_ab_record_id" - - -class DocumentProcessor: - streams: Mapping[str, ConfiguredAirbyteStream] - - def __init__(self, config: ProcessingConfigModel, catalog: ConfiguredAirbyteCatalog, max_metadata_size: Optional[int] = None): - self.streams = {self._stream_identifier(stream.stream): stream for stream in catalog.streams} - self.max_metadata_size = max_metadata_size - - self.splitter = RecursiveCharacterTextSplitter.from_tiktoken_encoder( - chunk_size=config.chunk_size, chunk_overlap=config.chunk_overlap - ) - self.metadata_fields = config.metadata_fields - self.text_fields = config.text_fields - self.logger = logging.getLogger("airbyte.document_processor") - - def _stream_identifier(self, stream: Union[AirbyteStream, AirbyteRecordMessage]) -> str: - if isinstance(stream, AirbyteStream): - return stream.name if stream.namespace is None else f"{stream.namespace}_{stream.name}" - else: - return stream.stream if stream.namespace is None else f"{stream.namespace}_{stream.stream}" - - def process(self, record: AirbyteRecordMessage) -> Tuple[List[Document], Optional[str]]: - """ - Generate documents from records. - :param records: List of AirbyteRecordMessages - :return: Tuple of (List of document chunks, record id to delete if a stream is in dedup mode to avoid stale documents in the vector store) - """ - doc = self._generate_document(record) - if doc is None: - raise ValueError(f"Record {str(record.data)[:250]}... does not contain any text fields.") - chunks = self._split_document(doc) - id_to_delete = doc.metadata[METADATA_RECORD_ID_FIELD] if METADATA_RECORD_ID_FIELD in doc.metadata else None - return chunks, id_to_delete - - def _generate_document(self, record: AirbyteRecordMessage) -> Optional[Document]: - relevant_fields = self._extract_relevant_fields(record, self.text_fields) - if len(relevant_fields) == 0: - return None - metadata = self._truncate_metadata(self._extract_metadata(record)) - text = stringify_dict(relevant_fields) - return Document(page_content=text, metadata=metadata) - - def _extract_relevant_fields(self, record: AirbyteRecordMessage, fields: Optional[List[str]]) -> dict: - relevant_fields = {} - if fields and len(fields) > 0: - for field in fields: - values = dpath.util.values(record.data, field, separator=".") - if values and len(values) > 0: - relevant_fields[field] = values if len(values) > 1 else values[0] - else: - relevant_fields = record.data - return relevant_fields - - def _extract_metadata(self, record: AirbyteRecordMessage) -> dict: - metadata = self._extract_relevant_fields(record, self.metadata_fields) - stream_identifier = self._stream_identifier(record) - current_stream: ConfiguredAirbyteStream = self.streams[stream_identifier] - metadata[METADATA_STREAM_FIELD] = stream_identifier - if current_stream.primary_key and current_stream.destination_sync_mode == DestinationSyncMode.append_dedup: - metadata[METADATA_RECORD_ID_FIELD] = self._extract_primary_key(record, current_stream) - - return metadata - - def _extract_primary_key(self, record: AirbyteRecordMessage, stream: ConfiguredAirbyteStream) -> dict: - primary_key = [] - for key in stream.primary_key: - try: - primary_key.append(str(dpath.util.get(record.data, key))) - except KeyError: - primary_key.append("__not_found__") - return "_".join(primary_key) - - def _truncate_metadata(self, metadata: dict) -> dict: - """ - Normalize metadata to ensure it is within the size limit and doesn't contain complex objects. - """ - result = {} - current_size = 0 - - for key, value in metadata.items(): - if isinstance(value, (str, int, float, bool)) or (isinstance(value, list) and all(isinstance(item, str) for item in value)): - # Calculate the size of the key and value - item_size = len(str(key)) + len(str(value)) - - # Check if adding the item exceeds the size limit - if self.max_metadata_size is None or current_size + item_size <= self.max_metadata_size: - result[key] = value - current_size += item_size - - return result - - def _split_document(self, doc: Document) -> List[Document]: - chunks = self.splitter.split_documents([doc]) - return chunks diff --git a/airbyte-integrations/connectors/destination-pinecone/destination_pinecone/embedder.py b/airbyte-integrations/connectors/destination-pinecone/destination_pinecone/embedder.py deleted file mode 100644 index e1b1a276f8e1..000000000000 --- a/airbyte-integrations/connectors/destination-pinecone/destination_pinecone/embedder.py +++ /dev/null @@ -1,102 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -from abc import ABC, abstractmethod -from typing import Optional - -from destination_pinecone.config import CohereEmbeddingConfigModel, FakeEmbeddingConfigModel, OpenAIEmbeddingConfigModel -from destination_pinecone.utils import format_exception -from langchain.embeddings.base import Embeddings -from langchain.embeddings.cohere import CohereEmbeddings -from langchain.embeddings.fake import FakeEmbeddings -from langchain.embeddings.openai import OpenAIEmbeddings - - -class Embedder(ABC): - def __init__(self): - pass - - @abstractmethod - def check(self) -> Optional[str]: - pass - - @property - @abstractmethod - def langchain_embeddings(self) -> Embeddings: - pass - - @property - @abstractmethod - def embedding_dimensions(self) -> int: - pass - - -OPEN_AI_VECTOR_SIZE = 1536 -COHERE_VECTOR_SIZE = 1024 - - -class OpenAIEmbedder(Embedder): - def __init__(self, config: OpenAIEmbeddingConfigModel): - super().__init__() - self.embeddings = OpenAIEmbeddings(openai_api_key=config.openai_key, chunk_size=8191) - - def check(self) -> Optional[str]: - try: - self.embeddings.embed_query("test") - except Exception as e: - return format_exception(e) - return None - - @property - def langchain_embeddings(self) -> Embeddings: - return self.embeddings - - @property - def embedding_dimensions(self) -> int: - # vector size produced by text-embedding-ada-002 model - return OPEN_AI_VECTOR_SIZE - - -class CohereEmbedder(Embedder): - def __init__(self, config: CohereEmbeddingConfigModel): - super().__init__() - self.embeddings = CohereEmbeddings(cohere_api_key=config.cohere_key, model="embed-english-light-v2.0") - - def check(self) -> Optional[str]: - try: - self.embeddings.embed_query("test") - except Exception as e: - return format_exception(e) - return None - - @property - def langchain_embeddings(self) -> Embeddings: - return self.embeddings - - @property - def embedding_dimensions(self) -> int: - # vector size produced by text-embedding-ada-002 model - return COHERE_VECTOR_SIZE - - -class FakeEmbedder(Embedder): - def __init__(self, config: FakeEmbeddingConfigModel): - super().__init__() - self.embeddings = FakeEmbeddings(size=OPEN_AI_VECTOR_SIZE) - - def check(self) -> Optional[str]: - try: - self.embeddings.embed_query("test") - except Exception as e: - return format_exception(e) - return None - - @property - def langchain_embeddings(self) -> Embeddings: - return self.embeddings - - @property - def embedding_dimensions(self) -> int: - # use same vector size as for OpenAI embeddings to keep it realistic - return OPEN_AI_VECTOR_SIZE diff --git a/airbyte-integrations/connectors/destination-pinecone/destination_pinecone/indexer.py b/airbyte-integrations/connectors/destination-pinecone/destination_pinecone/indexer.py index 14d901a34509..433bea4e7860 100644 --- a/airbyte-integrations/connectors/destination-pinecone/destination_pinecone/indexer.py +++ b/airbyte-integrations/connectors/destination-pinecone/destination_pinecone/indexer.py @@ -4,49 +4,14 @@ import itertools import uuid -from abc import ABC, abstractmethod -from typing import Any, List, Optional +from typing import Optional import pinecone -from airbyte_cdk.models.airbyte_protocol import ( - AirbyteLogMessage, - AirbyteMessage, - ConfiguredAirbyteCatalog, - DestinationSyncMode, - Level, - Type, -) +from airbyte_cdk.destinations.vector_db_based.document_processor import METADATA_RECORD_ID_FIELD, METADATA_STREAM_FIELD +from airbyte_cdk.destinations.vector_db_based.indexer import Indexer +from airbyte_cdk.destinations.vector_db_based.utils import format_exception +from airbyte_cdk.models.airbyte_protocol import ConfiguredAirbyteCatalog, DestinationSyncMode from destination_pinecone.config import PineconeIndexingModel -from destination_pinecone.document_processor import METADATA_RECORD_ID_FIELD, METADATA_STREAM_FIELD -from destination_pinecone.embedder import Embedder -from destination_pinecone.measure_time import measure_time -from destination_pinecone.utils import format_exception -from langchain.schema import Document - - -class Indexer(ABC): - def __init__(self, config: Any, embedder: Embedder): - self.config = config - self.embedder = embedder - pass - - def pre_sync(self, catalog: ConfiguredAirbyteCatalog): - pass - - def post_sync(self) -> List[AirbyteMessage]: - return [] - - @abstractmethod - def index(self, document_chunks: List[Document], delete_ids: List[str]): - pass - - @abstractmethod - def check(self) -> Optional[str]: - pass - - @property - def max_metadata_size(self) -> Optional[int]: - return None def chunks(iterable, batch_size): @@ -61,17 +26,20 @@ def chunks(iterable, batch_size): # large enough to speed up processing, small enough to not hit pinecone request limits PINECONE_BATCH_SIZE = 40 +MAX_METADATA_SIZE = 40_960 - 10_000 + +MAX_IDS_PER_DELETE = 1000 + class PineconeIndexer(Indexer): config: PineconeIndexingModel - def __init__(self, config: PineconeIndexingModel, embedder: Embedder): - super().__init__(config, embedder) + def __init__(self, config: PineconeIndexingModel, embedding_dimensions: int): + super().__init__(config) pinecone.init(api_key=config.pinecone_key, environment=config.pinecone_environment, threaded=True) - self.pinecone_index = pinecone.Index(config.index, pool_threads=10) - self.embed_fn = measure_time(self.embedder.langchain_embeddings.embed_documents) - self.embedding_dimensions = embedder.embedding_dimensions + self.pinecone_index = pinecone.GRPCIndex(config.index) + self.embedding_dimensions = embedding_dimensions def pre_sync(self, catalog: ConfiguredAirbyteCatalog): index_description = pinecone.describe_index(self.config.index) @@ -81,7 +49,7 @@ def pre_sync(self, catalog: ConfiguredAirbyteCatalog): self.delete_vectors(filter={METADATA_STREAM_FIELD: stream.stream.name}) def post_sync(self): - return [AirbyteMessage(type=Type.LOG, log=AirbyteLogMessage(level=Level.WARN, message=self.embed_fn._get_stats()))] + return [] def delete_vectors(self, filter): if self._pod_type == "starter": @@ -96,36 +64,52 @@ def delete_by_metadata(self, filter, top_k): query_result = self.pinecone_index.query(vector=zero_vector, filter=filter, top_k=top_k) vector_ids = [doc.id for doc in query_result.matches] if len(vector_ids) > 0: - self.pinecone_index.delete(ids=vector_ids) + # split into chunks of 1000 ids to avoid id limit + batches = chunks(vector_ids, batch_size=MAX_IDS_PER_DELETE) + for batch in batches: + self.pinecone_index.delete(ids=list(batch)) + + def _truncate_metadata(self, metadata: dict) -> dict: + """ + Normalize metadata to ensure it is within the size limit and doesn't contain complex objects. + """ + result = {} + current_size = 0 + + for key, value in metadata.items(): + if isinstance(value, (str, int, float, bool)) or (isinstance(value, list) and all(isinstance(item, str) for item in value)): + # Calculate the size of the key and value + item_size = len(str(key)) + len(str(value)) + + # Check if adding the item exceeds the size limit + if current_size + item_size <= MAX_METADATA_SIZE: + result[key] = value + current_size += item_size + + return result def index(self, document_chunks, delete_ids): if len(delete_ids) > 0: self.delete_vectors(filter={METADATA_RECORD_ID_FIELD: {"$in": delete_ids}}) - embedding_vectors = self.embed_fn([chunk.page_content for chunk in document_chunks]) pinecone_docs = [] for i in range(len(document_chunks)): chunk = document_chunks[i] - metadata = chunk.metadata + metadata = self._truncate_metadata(chunk.metadata) metadata["text"] = chunk.page_content - pinecone_docs.append((str(uuid.uuid4()), embedding_vectors[i], metadata)) + pinecone_docs.append((str(uuid.uuid4()), chunk.embedding, metadata)) async_results = [ self.pinecone_index.upsert(vectors=ids_vectors_chunk, async_req=True, show_progress=False) for ids_vectors_chunk in chunks(pinecone_docs, batch_size=PINECONE_BATCH_SIZE) ] # Wait for and retrieve responses (this raises in case of error) - [async_result.get() for async_result in async_results] + [async_result.result() for async_result in async_results] def check(self) -> Optional[str]: try: description = pinecone.describe_index(self.config.index) actual_dimension = int(description.dimension) - if actual_dimension != self.embedder.embedding_dimensions: - return f"Your embedding configuration will produce vectors with dimension {self.embedder.embedding_dimensions:d}, but your index is configured with dimension {actual_dimension:d}. Make sure embedding and indexing configurations match." + if actual_dimension != self.embedding_dimensions: + return f"Your embedding configuration will produce vectors with dimension {self.embedding_dimensions:d}, but your index is configured with dimension {actual_dimension:d}. Make sure embedding and indexing configurations match." except Exception as e: return format_exception(e) return None - - @property - def max_metadata_size(self) -> int: - # leave some space for the text field - return 40_960 - 10_000 diff --git a/airbyte-integrations/connectors/destination-pinecone/destination_pinecone/utils.py b/airbyte-integrations/connectors/destination-pinecone/destination_pinecone/utils.py deleted file mode 100644 index 320f400c01f9..000000000000 --- a/airbyte-integrations/connectors/destination-pinecone/destination_pinecone/utils.py +++ /dev/null @@ -1,9 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -import traceback - - -def format_exception(exception: Exception) -> str: - return str(exception) + "\n" + "".join(traceback.TracebackException.from_exception(exception).format()) diff --git a/airbyte-integrations/connectors/destination-pinecone/integration_tests/base_integration_test.py b/airbyte-integrations/connectors/destination-pinecone/integration_tests/base_integration_test.py deleted file mode 100644 index bcbcf6e49836..000000000000 --- a/airbyte-integrations/connectors/destination-pinecone/integration_tests/base_integration_test.py +++ /dev/null @@ -1,42 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -import unittest -from typing import Any, Dict - -from airbyte_cdk.models import ( - AirbyteMessage, - AirbyteRecordMessage, - AirbyteStateMessage, - AirbyteStream, - ConfiguredAirbyteCatalog, - ConfiguredAirbyteStream, - DestinationSyncMode, - SyncMode, - Type, -) - - -class BaseIntegrationTest(unittest.TestCase): - def _get_configured_catalog(self, destination_mode: DestinationSyncMode) -> ConfiguredAirbyteCatalog: - stream_schema = {"type": "object", "properties": {"str_col": {"type": "str"}, "int_col": {"type": "integer"}}} - - overwrite_stream = ConfiguredAirbyteStream( - stream=AirbyteStream( - name="mystream", json_schema=stream_schema, supported_sync_modes=[SyncMode.incremental, SyncMode.full_refresh] - ), - primary_key=[["int_col"]], - sync_mode=SyncMode.incremental, - destination_sync_mode=destination_mode, - ) - - return ConfiguredAirbyteCatalog(streams=[overwrite_stream]) - - def _state(self, data: Dict[str, Any]) -> AirbyteMessage: - return AirbyteMessage(type=Type.STATE, state=AirbyteStateMessage(data=data)) - - def _record(self, stream: str, str_value: str, int_value: int) -> AirbyteMessage: - return AirbyteMessage( - type=Type.RECORD, record=AirbyteRecordMessage(stream=stream, data={"str_col": str_value, "int_col": int_value}, emitted_at=0) - ) diff --git a/airbyte-integrations/connectors/destination-pinecone/integration_tests/pinecone_integration_test.py b/airbyte-integrations/connectors/destination-pinecone/integration_tests/pinecone_integration_test.py index c9a54e0006ed..b70232356dd8 100644 --- a/airbyte-integrations/connectors/destination-pinecone/integration_tests/pinecone_integration_test.py +++ b/airbyte-integrations/connectors/destination-pinecone/integration_tests/pinecone_integration_test.py @@ -6,10 +6,10 @@ import logging import pinecone +from airbyte_cdk.destinations.vector_db_based.embedder import OPEN_AI_VECTOR_SIZE +from airbyte_cdk.destinations.vector_db_based.test_utils import BaseIntegrationTest from airbyte_cdk.models import DestinationSyncMode, Status from destination_pinecone.destination import DestinationPinecone -from destination_pinecone.embedder import OPEN_AI_VECTOR_SIZE -from integration_tests.base_integration_test import BaseIntegrationTest from langchain.embeddings import OpenAIEmbeddings from langchain.vectorstores import Pinecone @@ -63,14 +63,16 @@ def test_write(self): incremental_catalog = self._get_configured_catalog(DestinationSyncMode.append_dedup) list(destination.write(self.config, incremental_catalog, [self._record("mystream", "Cats are nice", 2), first_state_message])) result = self.pinecone_index.query( - vector=[0] * OPEN_AI_VECTOR_SIZE, top_k=10, filter={"_ab_record_id": "2"}, include_metadata=True + vector=[0] * OPEN_AI_VECTOR_SIZE, top_k=10, filter={"_ab_record_id": "mystream_2"}, include_metadata=True ) assert len(result.matches) == 1 - assert result.matches[0].metadata["text"] == "str_col: Cats are nice" + assert ( + result.matches[0].metadata["text"] == "str_col: Cats are nice" + ), 'Ensure that "str_col" is included in the "text_fields" array under the "processing" section of /secrets/config.json.' # test langchain integration embeddings = OpenAIEmbeddings(openai_api_key=self.config["embedding"]["openai_key"]) self._init_pinecone() vector_store = Pinecone(self.pinecone_index, embeddings.embed_query, "text") result = vector_store.similarity_search("feline animals", 1) - assert result[0].metadata["_ab_record_id"] == "2" + assert result[0].metadata["_ab_record_id"] == "mystream_2" diff --git a/airbyte-integrations/connectors/destination-pinecone/integration_tests/sample_config.json b/airbyte-integrations/connectors/destination-pinecone/integration_tests/sample_config.json new file mode 100644 index 000000000000..8e8901ca5aac --- /dev/null +++ b/airbyte-integrations/connectors/destination-pinecone/integration_tests/sample_config.json @@ -0,0 +1,16 @@ +{ + "indexing": { + "pinecone_key": "mykey", + "pinecone_environment": "myenv", + "index": "myindex" + }, + "embedding": { + "mode": "openai", + "openai_key": "mykey" + }, + "processing": { + "chunk_size": 1000, + "text_fields": ["str_col"], + "metadata_fields": ["int_col"] + } +} diff --git a/airbyte-integrations/connectors/destination-pinecone/integration_tests/spec.json b/airbyte-integrations/connectors/destination-pinecone/integration_tests/spec.json index f284d73177ca..deb639a03333 100644 --- a/airbyte-integrations/connectors/destination-pinecone/integration_tests/spec.json +++ b/airbyte-integrations/connectors/destination-pinecone/integration_tests/spec.json @@ -5,27 +5,30 @@ "type": "object", "properties": { "indexing": { - "title": "Pinecone", + "title": "Indexing", "type": "object", "properties": { "pinecone_key": { "title": "Pinecone API key", + "description": "The Pinecone API key to use matching the environment (copy from Pinecone console)", "airbyte_secret": true, "type": "string" }, "pinecone_environment": { - "title": "Pinecone environment", - "description": "Pinecone environment to use", + "title": "Pinecone Environment", + "description": "Pinecone Cloud environment to use", + "examples": ["us-west1-gcp", "gcp-starter"], "type": "string" }, "index": { "title": "Index", - "description": "Pinecone index to use", + "description": "Pinecone index in your project to load data into", "type": "string" } }, "required": ["pinecone_key", "pinecone_environment", "index"], - "description": "Pinecone is a popular vector store that can be used to store and retrieve embeddings." + "description": "Pinecone is a popular vector store that can be used to store and retrieve embeddings.", + "group": "indexing" }, "embedding": { "title": "Embedding", @@ -71,7 +74,7 @@ } }, "required": ["cohere_key"], - "description": "Use the Cohere API to embed text. This option is using the embed-english-light-v2.0 model with 1024 embedding dimensions." + "description": "Use the Cohere API to embed text." }, { "title": "Fake", @@ -86,6 +89,39 @@ } }, "description": "Use a fake embedding made out of random vectors with 1536 embedding dimensions. This is useful for testing the data pipeline without incurring any costs." + }, + { + "title": "Azure OpenAI", + "type": "object", + "properties": { + "mode": { + "title": "Mode", + "default": "azure_openai", + "const": "azure_openai", + "enum": ["azure_openai"], + "type": "string" + }, + "openai_key": { + "title": "Azure OpenAI API key", + "description": "The API key for your Azure OpenAI resource. You can find this in the Azure portal under your Azure OpenAI resource", + "airbyte_secret": true, + "type": "string" + }, + "api_base": { + "title": "Resource base URL", + "description": "The base URL for your Azure OpenAI resource. You can find this in the Azure portal under your Azure OpenAI resource", + "examples": ["https://your-resource-name.openai.azure.com"], + "type": "string" + }, + "deployment": { + "title": "Deployment", + "description": "The deployment for your Azure OpenAI resource. You can find this in the Azure portal under your Azure OpenAI resource", + "examples": ["your-resource-name"], + "type": "string" + } + }, + "required": ["openai_key", "api_base", "deployment"], + "description": "Use the Azure-hosted OpenAI API to embed text. This option is using the text-embedding-ada-002 model with 1536 embedding dimensions." } ] }, @@ -107,25 +143,21 @@ }, "text_fields": { "title": "Text fields to embed", - "description": "List of fields in the record that should be used to calculate the embedding. All other fields are passed along as meta fields. The field list is applied to all streams in the same way and non-existing fields are ignored. If none are defined, all fields are considered text fields. When specifying text fields, you can access nested fields in the record by using dot notation, e.g. `user.name` will access the `name` field in the `user` object. It's also possible to use wildcards to access all fields in an object, e.g. `users.*.name` will access all `names` fields in all entries of the `users` array.", + "description": "List of fields in the record that should be used to calculate the embedding. The field list is applied to all streams in the same way and non-existing fields are ignored. If none are defined, all fields are considered text fields. When specifying text fields, you can access nested fields in the record by using dot notation, e.g. `user.name` will access the `name` field in the `user` object. It's also possible to use wildcards to access all fields in an object, e.g. `users.*.name` will access all `names` fields in all entries of the `users` array.", "default": [], "always_show": true, "examples": ["text", "user.name", "users.*.name"], "type": "array", - "items": { - "type": "string" - } + "items": { "type": "string" } }, "metadata_fields": { - "title": "Metadata fields", - "description": "List of fields in the record that should be stored as metadata. ", + "title": "Fields to store as metadata", + "description": "List of fields in the record that should be stored as metadata. The field list is applied to all streams in the same way and non-existing fields are ignored. If none are defined, all fields are considered metadata fields. When specifying text fields, you can access nested fields in the record by using dot notation, e.g. `user.name` will access the `name` field in the `user` object. It's also possible to use wildcards to access all fields in an object, e.g. `users.*.name` will access all `names` fields in all entries of the `users` array. When specifying nested paths, all matching values are flattened into an array set to a field named by the path.", "default": [], "always_show": true, - "examples": ["text", "user.name", "users.*.name"], + "examples": ["age", "user", "user.name"], "type": "array", - "items": { - "type": "string" - } + "items": { "type": "string" } } }, "required": ["chunk_size"], @@ -134,18 +166,9 @@ }, "required": ["indexing", "embedding", "processing"], "groups": [ - { - "id": "processing", - "title": "Processing" - }, - { - "id": "embedding", - "title": "Embedding" - }, - { - "id": "indexing", - "title": "Indexing" - } + { "id": "processing", "title": "Processing" }, + { "id": "embedding", "title": "Embedding" }, + { "id": "indexing", "title": "Indexing" } ] }, "supportsIncremental": true, diff --git a/airbyte-integrations/connectors/destination-pinecone/metadata.yaml b/airbyte-integrations/connectors/destination-pinecone/metadata.yaml index 309a427b4cd8..a1d35cb314b4 100644 --- a/airbyte-integrations/connectors/destination-pinecone/metadata.yaml +++ b/airbyte-integrations/connectors/destination-pinecone/metadata.yaml @@ -2,6 +2,8 @@ data: allowedHosts: hosts: - "*.${indexing.pinecone_environment}.pinecone.io" + - api.openai.com + - api.cohere.ai registries: cloud: enabled: true @@ -10,15 +12,18 @@ data: connectorSubtype: database connectorType: destination definitionId: 3d2b6f84-7f0d-4e3f-a5e5-7c7d4b50eabd - dockerImageTag: 0.0.2 + dockerImageTag: 0.0.9 dockerRepository: airbyte/destination-pinecone githubIssueLabel: destination-pinecone icon: pinecone.svg license: MIT name: Pinecone releaseDate: 2023-08-15 - releaseStage: alpha + releaseStage: beta documentationUrl: https://docs.airbyte.com/integrations/destinations/pinecone tags: - language:python + ab_internal: + sl: 200 + ql: 300 metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/destination-pinecone/setup.py b/airbyte-integrations/connectors/destination-pinecone/setup.py index a04b5022d7c0..001bdcbb9539 100644 --- a/airbyte-integrations/connectors/destination-pinecone/setup.py +++ b/airbyte-integrations/connectors/destination-pinecone/setup.py @@ -6,16 +6,8 @@ from setuptools import find_packages, setup MAIN_REQUIREMENTS = [ - "airbyte-cdk", - "langchain", - "openai", - "requests", - "tiktoken", - "pinecone-client", - "typing-inspect==0.8.0", - "typing_extensions==4.5.0", - "pydantic==1.10.8", - "cohere", + "airbyte-cdk[vector-db-based]==0.51.15", + "pinecone-client[grpc]", ] TEST_REQUIREMENTS = ["pytest~=6.2"] diff --git a/airbyte-integrations/connectors/destination-pinecone/unit_tests/batcher_test.py b/airbyte-integrations/connectors/destination-pinecone/unit_tests/batcher_test.py deleted file mode 100644 index b181123006df..000000000000 --- a/airbyte-integrations/connectors/destination-pinecone/unit_tests/batcher_test.py +++ /dev/null @@ -1,94 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -import unittest -from unittest.mock import MagicMock - -from destination_pinecone.batcher import Batcher - - -class BatcherTestCase(unittest.TestCase): - def test_add_single_item(self): - # Arrange - batch_size = 3 - flush_handler_mock = MagicMock() - batcher = Batcher(batch_size, flush_handler_mock) - - # Act - batcher.add(1) - - # Assert - self.assertFalse(flush_handler_mock.called) - - def test_add_flushes_batch(self): - # Arrange - batch_size = 3 - flush_handler_mock = MagicMock() - batcher = Batcher(batch_size, flush_handler_mock) - - # Act - batcher.add(1) - batcher.add(2) - batcher.add(3) - - # Assert - flush_handler_mock.assert_called_once_with([1, 2, 3]) - - def test_flush_empty_buffer(self): - # Arrange - batch_size = 3 - flush_handler_mock = MagicMock() - batcher = Batcher(batch_size, flush_handler_mock) - - # Act - batcher.flush() - - # Assert - self.assertFalse(flush_handler_mock.called) - - def test_flush_non_empty_buffer(self): - # Arrange - batch_size = 3 - flush_handler_mock = MagicMock() - batcher = Batcher(batch_size, flush_handler_mock) - batcher.add(1) - batcher.add(2) - - # Act - batcher.flush() - - # Assert - flush_handler_mock.assert_called_once_with([1, 2]) - self.assertEqual(len(batcher.buffer), 0) - - def test_flush_if_necessary_flushes_batch(self): - # Arrange - batch_size = 3 - flush_handler_mock = MagicMock() - batcher = Batcher(batch_size, flush_handler_mock) - batcher.add(1) - batcher.add(2) - batcher.add(3) - - # Act - batcher.add(4) - batcher.add(5) - - # Assert - flush_handler_mock.assert_called_once_with([1, 2, 3]) - self.assertEqual(len(batcher.buffer), 2) - - def test_flush_if_necessary_does_not_flush_incomplete_batch(self): - # Arrange - batch_size = 3 - flush_handler_mock = MagicMock() - batcher = Batcher(batch_size, flush_handler_mock) - batcher.add(1) - - # Act - batcher.add(2) - - # Assert - self.assertFalse(flush_handler_mock.called) - self.assertEqual(len(batcher.buffer), 2) diff --git a/airbyte-integrations/connectors/destination-pinecone/unit_tests/destination_test.py b/airbyte-integrations/connectors/destination-pinecone/unit_tests/destination_test.py index 889a71e9403b..5136097c938d 100644 --- a/airbyte-integrations/connectors/destination-pinecone/unit_tests/destination_test.py +++ b/airbyte-integrations/connectors/destination-pinecone/unit_tests/destination_test.py @@ -2,102 +2,95 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # -from unittest.mock import MagicMock, patch - -from airbyte_cdk.models.airbyte_protocol import ( - AirbyteLogMessage, - AirbyteMessage, - AirbyteRecordMessage, - AirbyteStateMessage, - ConfiguredAirbyteCatalog, - Level, - Type, -) +import unittest +from unittest.mock import MagicMock, Mock, patch + +from airbyte_cdk import AirbyteLogger +from airbyte_cdk.models import ConnectorSpecification, Status from destination_pinecone.config import ConfigModel -from destination_pinecone.destination import BATCH_SIZE, DestinationPinecone, embedder_map, indexer_map - - -def _generate_record_message(index: int): - return AirbyteMessage(type=Type.RECORD, record=AirbyteRecordMessage(stream="example_stream", emitted_at=1234, data={"column_name": f"value {index}", "id": index})) - - -@patch.dict(embedder_map, {"openai": MagicMock()}) -@patch.dict(indexer_map, {"pinecone": MagicMock()}) -def test_write(): - """ - Basic test for the write method, batcher and document processor. - """ - config = { - "processing": {"text_fields": ["column_name"], "metadata_fields": None, "chunk_size": 1000}, - "embedding": {"mode": "openai", "openai_key": "mykey"}, - "indexing": { - "mode": "pinecone", - "pinecone_key": "mykey", - "index": "myindex", - "pinecone_environment": "myenv", - }, - } - config_model = ConfigModel.parse_obj(config) - - configured_catalog: ConfiguredAirbyteCatalog = ConfiguredAirbyteCatalog.parse_obj( - { - "streams": [ - { - "stream": { - "name": "example_stream", - "json_schema": {"$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "properties": {}}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": False, - "default_cursor_field": ["column_name"], - }, - "primary_key": [["id"]], - "sync_mode": "incremental", - "destination_sync_mode": "append_dedup", - } - ] +from destination_pinecone.destination import DestinationPinecone, embedder_map + + +class TestDestinationPinecone(unittest.TestCase): + def setUp(self): + self.config = { + "processing": {"text_fields": ["str_col"], "metadata_fields": [], "chunk_size": 1000}, + "embedding": {"mode": "openai", "openai_key": "mykey"}, + "indexing": { + "pinecone_key": "mykey", + "pinecone_environment": "myenv", + "index": "myindex", + }, } - ) - # messages are flushed after 32 records or after a state message, so this will trigger two batches to be processed - input_messages = [_generate_record_message(i) for i in range(BATCH_SIZE + 5)] - state_message = AirbyteMessage(type=Type.STATE, state=AirbyteStateMessage()) - input_messages.append(state_message) - # messages are also flushed once the input messages are exhausted, so this will trigger another batch - input_messages.extend([_generate_record_message(i) for i in range(5)]) - - mock_embedder = MagicMock() - embedder_map["openai"].return_value = mock_embedder - - mock_indexer = MagicMock() - indexer_map["pinecone"].return_value = mock_indexer - mock_indexer.max_metadata_size = 1000 - post_sync_log_message = AirbyteMessage(type=Type.LOG, log=AirbyteLogMessage(level=Level.INFO, message="post sync")) - mock_indexer.post_sync.return_value = [post_sync_log_message] - - # Create the DestinationLangchain instance - destination = DestinationPinecone() - - output_messages = destination.write(config, configured_catalog, input_messages) - output_message = next(output_messages) - # assert state message is - assert output_message == state_message - - embedder_map["openai"].assert_called_with(config_model.embedding) - indexer_map["pinecone"].assert_called_with(config_model.indexing, mock_embedder) - mock_indexer.pre_sync.assert_called_with(configured_catalog) - - # 1 batches due to max batch size reached and 1 batch due to state message - assert mock_indexer.index.call_count == 2 - - output_message = next(output_messages) - assert output_message == post_sync_log_message - - try: - next(output_messages) - assert False, "Expected end of message stream" - except StopIteration: - pass - - # 1 batch due to end of message stream - assert mock_indexer.index.call_count == 3 - - mock_indexer.post_sync.assert_called() + self.config_model = ConfigModel.parse_obj(self.config) + self.logger = AirbyteLogger() + + @patch("destination_pinecone.destination.PineconeIndexer") + @patch.dict(embedder_map, openai=MagicMock()) + def test_check(self, MockedPineconeIndexer): + mock_embedder = Mock() + mock_indexer = Mock() + embedder_map["openai"].return_value = mock_embedder + MockedPineconeIndexer.return_value = mock_indexer + + mock_embedder.check.return_value = None + mock_indexer.check.return_value = None + + destination = DestinationPinecone() + result = destination.check(self.logger, self.config) + + self.assertEqual(result.status, Status.SUCCEEDED) + mock_embedder.check.assert_called_once() + mock_indexer.check.assert_called_once() + + @patch("destination_pinecone.destination.PineconeIndexer") + @patch.dict(embedder_map, openai=MagicMock()) + def test_check_with_errors(self, MockedPineconeIndexer): + mock_embedder = Mock() + mock_indexer = Mock() + embedder_map["openai"].return_value = mock_embedder + MockedPineconeIndexer.return_value = mock_indexer + + embedder_error_message = "Embedder Error" + indexer_error_message = "Indexer Error" + + mock_embedder.check.return_value = embedder_error_message + mock_indexer.check.return_value = indexer_error_message + + destination = DestinationPinecone() + result = destination.check(self.logger, self.config) + + self.assertEqual(result.status, Status.FAILED) + self.assertEqual(result.message, f"{embedder_error_message}\n{indexer_error_message}") + + mock_embedder.check.assert_called_once() + mock_indexer.check.assert_called_once() + + @patch("destination_pinecone.destination.Writer") + @patch("destination_pinecone.destination.PineconeIndexer") + @patch.dict(embedder_map, openai=MagicMock()) + def test_write(self, MockedPineconeIndexer, MockedWriter): + mock_embedder = Mock() + mock_indexer = Mock() + mock_writer = Mock() + + embedder_map["openai"].return_value = mock_embedder + MockedPineconeIndexer.return_value = mock_indexer + MockedWriter.return_value = mock_writer + + mock_writer.write.return_value = [] + + configured_catalog = MagicMock() + input_messages = [] + + destination = DestinationPinecone() + list(destination.write(self.config, configured_catalog, input_messages)) + + MockedWriter.assert_called_once_with(self.config_model.processing, mock_indexer, mock_embedder, batch_size=128) + mock_writer.write.assert_called_once_with(configured_catalog, input_messages) + + def test_spec(self): + destination = DestinationPinecone() + result = destination.spec() + + self.assertIsInstance(result, ConnectorSpecification) diff --git a/airbyte-integrations/connectors/destination-pinecone/unit_tests/document_processor_test.py b/airbyte-integrations/connectors/destination-pinecone/unit_tests/document_processor_test.py deleted file mode 100644 index f6f4d0523065..000000000000 --- a/airbyte-integrations/connectors/destination-pinecone/unit_tests/document_processor_test.py +++ /dev/null @@ -1,255 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -from typing import Any, List, Mapping - -import pytest -from airbyte_cdk.models import AirbyteStream, ConfiguredAirbyteCatalog, ConfiguredAirbyteStream -from airbyte_cdk.models.airbyte_protocol import AirbyteRecordMessage, DestinationSyncMode, SyncMode -from destination_pinecone.config import ProcessingConfigModel -from destination_pinecone.document_processor import DocumentProcessor - - -def initialize_processor(): - config = ProcessingConfigModel(chunk_size=48, chunk_overlap=0, text_fields=None, metadata_fields=None) - catalog = ConfiguredAirbyteCatalog( - streams=[ - ConfiguredAirbyteStream( - stream=AirbyteStream(name="stream1", json_schema={}, namespace="namespace1", supported_sync_modes=[SyncMode.full_refresh]), - sync_mode=SyncMode.full_refresh, - destination_sync_mode=DestinationSyncMode.overwrite, - primary_key=[["id"]], - ), - ConfiguredAirbyteStream( - stream=AirbyteStream(name="stream2", json_schema={}, supported_sync_modes=[SyncMode.full_refresh]), - sync_mode=SyncMode.full_refresh, - destination_sync_mode=DestinationSyncMode.overwrite, - ), - ] - ) - return DocumentProcessor(config=config, catalog=catalog) - - -@pytest.mark.parametrize( - "metadata_fields, expected_metadata", - [ - (None, {"_ab_stream": "namespace1_stream1", "id": 1, "text": "This is the text"}), - (["id"], {"_ab_stream": "namespace1_stream1", "id": 1}), - (["id", "non_existing"], {"_ab_stream": "namespace1_stream1", "id": 1}), - (["id", "complex.test"], {"_ab_stream": "namespace1_stream1", "id": 1, "complex.test": "abc"}), - (["id", "arr.*.test"], {"_ab_stream": "namespace1_stream1", "id": 1, "arr.*.test": ["abc", "def"]}), - ] -) -def test_process_single_chunk_with_metadata(metadata_fields, expected_metadata): - processor = initialize_processor() - processor.metadata_fields = metadata_fields - - record = AirbyteRecordMessage( - stream="stream1", - namespace="namespace1", - data={ - "id": 1, - "text": "This is the text", - "complex": {"test": "abc"}, - "arr": [{"test": "abc"}, {"test": "def"}], - }, - emitted_at=1234, - ) - - chunks, id_to_delete = processor.process(record) - - assert len(chunks) == 1 - # natural id is only set for dedup mode - assert "_ab_record_id" not in chunks[0].metadata - assert chunks[0].metadata == expected_metadata - assert id_to_delete is None - - -def test_process_single_chunk_without_namespace(): - config = ProcessingConfigModel(chunk_size=48, chunk_overlap=0, text_fields=None, metadata_fields=None) - catalog = ConfiguredAirbyteCatalog( - streams=[ - ConfiguredAirbyteStream( - stream=AirbyteStream(name="stream1", json_schema={}, supported_sync_modes=[SyncMode.full_refresh]), - sync_mode=SyncMode.full_refresh, - destination_sync_mode=DestinationSyncMode.overwrite, - ), - ] - ) - processor = DocumentProcessor(config=config, catalog=catalog) - - record = AirbyteRecordMessage( - stream="stream1", - data={ - "id": 1, - "text": "This is the text", - }, - emitted_at=1234, - ) - - chunks, _ = processor.process(record) - assert chunks[0].metadata["_ab_stream"] == "stream1" - - -def test_complex_text_fields(): - processor = initialize_processor() - processor.metadata_fields = ["non_text", "non_text_2", "id"] - - record = AirbyteRecordMessage( - stream="stream1", - namespace="namespace1", - data={ - "id": 1, - "nested": { - "texts": [ - {"text": "This is the text"}, - {"text": "And another"}, - ] - }, - "non_text": "a", - "non_text_2": 1, - "text": "This is the regular text", - "other_nested": { - "non_text": { - "a": "xyz", - "b": "abc" - } - } - }, - emitted_at=1234, - ) - - processor.text_fields = ["nested.texts.*.text", "text", "other_nested.non_text", "non.*.existing"] - - chunks, _ = processor.process(record) - - assert len(chunks) == 1 - assert chunks[0].page_content == """nested.texts.*.text: This is the text -And another -text: This is the regular text -other_nested.non_text: \na: xyz -b: abc""" - assert chunks[0].metadata == { - "id": 1, - "non_text": "a", - "non_text_2": 1, - "_ab_stream": "namespace1_stream1" - } - - -def test_no_text_fields(): - processor = initialize_processor() - - record = AirbyteRecordMessage( - stream="stream1", - namespace="namespace1", - data={ - "id": 1, - "text": "This is the regular text", - }, - emitted_at=1234, - ) - - processor.text_fields = ["another_field"] - - # assert process is throwing with no text fields found - with pytest.raises(ValueError): - processor.process(record) - - -def test_metadata_normalization(): - processor = initialize_processor() - processor.metadata_fields = ["a_complex_field", "too_big", "small", "id"] - - record = AirbyteRecordMessage( - stream="stream1", - namespace="namespace1", - data={ - "id": 1, - "a_complex_field": {"a_nested_field": "a_nested_value"}, - "too_big": "a" * 1000, - "small": "a", - "text": "This is the text", - }, - emitted_at=1234, - ) - - processor.text_fields = ["text"] - processor.max_metadata_size = 100 - - chunks, id_to_delete = processor.process(record) - - assert len(chunks) == 1 - assert chunks[0].page_content == "text: This is the text" - assert id_to_delete is None - - for chunk in chunks: - assert len(chunk.metadata) == 3 - assert "a_complex_field" not in chunk.metadata - assert "too_big" not in chunk.metadata - assert "small" in chunk.metadata - - -def test_process_multiple_chunks_with_relevant_fields(): - processor = initialize_processor() - - record = AirbyteRecordMessage( - stream="stream1", - namespace="namespace1", - data={ - "id": 1, - "name": "John Doe", - "text": "This is the text and it is long enough to be split into multiple chunks. This is the text and it is long enough to be split into multiple chunks. This is the text and it is long enough to be split into multiple chunks", - "age": 25, - }, - emitted_at=1234, - ) - - processor.text_fields = ["text"] - processor.metadata_fields = ["age"] - - chunks, id_to_delete = processor.process(record) - - assert len(chunks) == 2 - - for chunk in chunks: - assert chunk.metadata["age"] == 25 - assert id_to_delete is None - - -@pytest.mark.parametrize( - "primary_key_value, stringified_primary_key, primary_key", - [ - ({"id": 99}, "99", [["id"]]), - ({"id": 99, "name": "John Doe"}, "99_John Doe", [["id"], ["name"]]), - ({"id": 99, "name": "John Doe", "age": 25}, "99_John Doe_25", [["id"], ["name"], ["age"]]), - ({"nested": {"id": "abc"}, "name": "John Doe"}, "abc_John Doe", [["nested", "id"], ["name"]]), - ({"nested": {"id": "abc"}}, "abc___not_found__", [["nested", "id"], ["name"]]), - ] -) -def test_process_multiple_chunks_with_dedupe_mode(primary_key_value: Mapping[str, Any], stringified_primary_key: str, primary_key: List[List[str]]): - processor = initialize_processor() - - record = AirbyteRecordMessage( - stream="stream1", - namespace="namespace1", - data={ - "text": "This is the text and it is long enough to be split into multiple chunks. This is the text and it is long enough to be split into multiple chunks. This is the text and it is long enough to be split into multiple chunks", - "age": 25, - **primary_key_value - }, - emitted_at=1234, - ) - - processor.text_fields = ["text"] - - processor.streams["namespace1_stream1"].destination_sync_mode = DestinationSyncMode.append_dedup - processor.streams["namespace1_stream1"].primary_key = primary_key - - chunks, id_to_delete = processor.process(record) - - assert len(chunks) > 1 - for chunk in chunks: - assert chunk.metadata["_ab_record_id"] == stringified_primary_key - assert id_to_delete == stringified_primary_key diff --git a/airbyte-integrations/connectors/destination-pinecone/unit_tests/embedder_test.py b/airbyte-integrations/connectors/destination-pinecone/unit_tests/embedder_test.py deleted file mode 100644 index 4cf3f3223772..000000000000 --- a/airbyte-integrations/connectors/destination-pinecone/unit_tests/embedder_test.py +++ /dev/null @@ -1,34 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -from unittest.mock import MagicMock - -import pytest -from destination_pinecone.config import CohereEmbeddingConfigModel, FakeEmbeddingConfigModel, OpenAIEmbeddingConfigModel -from destination_pinecone.embedder import COHERE_VECTOR_SIZE, OPEN_AI_VECTOR_SIZE, CohereEmbedder, FakeEmbedder, OpenAIEmbedder - - -@pytest.mark.parametrize( - "embedder_class, config_model, config_data, dimensions", - ( - (OpenAIEmbedder, OpenAIEmbeddingConfigModel, {"mode": "openai", "openai_key": "abc"}, OPEN_AI_VECTOR_SIZE), - (CohereEmbedder, CohereEmbeddingConfigModel, {"mode": "cohere", "cohere_key": "abc"}, COHERE_VECTOR_SIZE), - (FakeEmbedder, FakeEmbeddingConfigModel, {"mode": "fake"}, OPEN_AI_VECTOR_SIZE), - ) -) -def test_embedder(embedder_class, config_model, config_data, dimensions): - config = config_model(**config_data) - embedder = embedder_class(config) - mock_embedding_instance = MagicMock() - embedder.embeddings = mock_embedding_instance - - mock_embedding_instance.embed_query.side_effect = Exception("Some error") - assert embedder.check().startswith("Some error") - - mock_embedding_instance.embed_query.side_effect = None - assert embedder.check() is None - - assert embedder.langchain_embeddings == mock_embedding_instance - - assert embedder.embedding_dimensions == dimensions diff --git a/airbyte-integrations/connectors/destination-pinecone/unit_tests/pinecone_indexer_test.py b/airbyte-integrations/connectors/destination-pinecone/unit_tests/pinecone_indexer_test.py index 661dc7f2d532..9fb158d0518b 100644 --- a/airbyte-integrations/connectors/destination-pinecone/unit_tests/pinecone_indexer_test.py +++ b/airbyte-integrations/connectors/destination-pinecone/unit_tests/pinecone_indexer_test.py @@ -2,24 +2,20 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # -from unittest.mock import ANY, MagicMock, patch +from unittest.mock import ANY, MagicMock, Mock, call, patch import pytest from airbyte_cdk.models import ConfiguredAirbyteCatalog from destination_pinecone.config import PineconeIndexingModel from destination_pinecone.indexer import PineconeIndexer -from langchain.document_loaders.base import Document from pinecone import IndexDescription def create_pinecone_indexer(): config = PineconeIndexingModel(mode="pinecone", pinecone_environment="myenv", pinecone_key="mykey", index="myindex") - embedder = MagicMock() - embedder.embedding_dimensions = 3 - indexer = PineconeIndexer(config, embedder) + indexer = PineconeIndexer(config, 3) indexer.pinecone_index.delete = MagicMock() - indexer.embed_fn = MagicMock(return_value=[[1, 2, 3], [4, 5, 6]]) indexer.pinecone_index.upsert = MagicMock() indexer.pinecone_index.query = MagicMock() return indexer @@ -42,7 +38,7 @@ def create_index_description(dimensions=3, pod_type="p1"): @pytest.fixture(scope="module", autouse=True) def mock_describe_index(): - with patch('pinecone.describe_index') as mock: + with patch("pinecone.describe_index") as mock: mock.return_value = create_index_description() yield mock @@ -52,8 +48,8 @@ def test_pinecone_index_upsert_and_delete(mock_describe_index): indexer._pod_type = "p1" indexer.index( [ - Document(page_content="test", metadata={"_ab_stream": "abc"}), - Document(page_content="test2", metadata={"_ab_stream": "abc"}), + Mock(page_content="test", metadata={"_ab_stream": "abc"}, embedding=[1,2,3]), + Mock(page_content="test2", metadata={"_ab_stream": "abc"}, embedding=[4,5,6]), ], ["delete_id1", "delete_id2"], ) @@ -74,12 +70,14 @@ def test_pinecone_index_upsert_and_delete_starter(mock_describe_index): indexer.pinecone_index.query.return_value = MagicMock(matches=[MagicMock(id="doc_id1"), MagicMock(id="doc_id2")]) indexer.index( [ - Document(page_content="test", metadata={"_ab_stream": "abc"}), - Document(page_content="test2", metadata={"_ab_stream": "abc"}), + Mock(page_content="test", metadata={"_ab_stream": "abc"}, embedding=[1,2,3]), + Mock(page_content="test2", metadata={"_ab_stream": "abc"}, embedding=[4,5,6]), ], ["delete_id1", "delete_id2"], ) - indexer.pinecone_index.query.assert_called_with(vector=[0,0,0],filter={"_ab_record_id": {"$in": ["delete_id1", "delete_id2"]}}, top_k=10_000) + indexer.pinecone_index.query.assert_called_with( + vector=[0, 0, 0], filter={"_ab_record_id": {"$in": ["delete_id1", "delete_id2"]}}, top_k=10_000 + ) indexer.pinecone_index.delete.assert_called_with(ids=["doc_id1", "doc_id2"]) indexer.pinecone_index.upsert.assert_called_with( vectors=( @@ -91,6 +89,17 @@ def test_pinecone_index_upsert_and_delete_starter(mock_describe_index): ) +def test_pinecone_index_delete_1k_limit(mock_describe_index): + indexer = create_pinecone_indexer() + indexer._pod_type = "starter" + indexer.pinecone_index.query.return_value = MagicMock(matches=[MagicMock(id=f"doc_id_{str(i)}") for i in range(1300)]) + indexer.index( + [], + ["delete_id1"], + ) + indexer.pinecone_index.delete.assert_has_calls([call(ids=[f"doc_id_{str(i)}" for i in range(1000)]), call(ids=[f"doc_id_{str(i+1000)}" for i in range(300)])]) + + def test_pinecone_index_empty_batch(): indexer = create_pinecone_indexer() indexer.index( @@ -103,9 +112,8 @@ def test_pinecone_index_empty_batch(): def test_pinecone_index_upsert_batching(): indexer = create_pinecone_indexer() - indexer.embed_fn = MagicMock(return_value=[[i, i, i] for i in range(50)]) indexer.index( - [Document(page_content=f"test {i}", metadata={"_ab_stream": "abc"}) for i in range(50)], + [Mock(page_content=f"test {i}", metadata={"_ab_stream": "abc"}, embedding=[i,i,i]) for i in range(50)], [], ) assert indexer.pinecone_index.upsert.call_count == 2 @@ -167,7 +175,7 @@ def test_pinecone_pre_sync_starter(mock_describe_index): indexer = create_pinecone_indexer() indexer.pinecone_index.query.return_value = MagicMock(matches=[MagicMock(id="doc_id1"), MagicMock(id="doc_id2")]) indexer.pre_sync(generate_catalog()) - indexer.pinecone_index.query.assert_called_with(vector=[0,0,0],filter={"_ab_stream": "example_stream2"}, top_k=10_000) + indexer.pinecone_index.query.assert_called_with(vector=[0, 0, 0], filter={"_ab_stream": "example_stream2"}, top_k=10_000) indexer.pinecone_index.delete.assert_called_with(ids=["doc_id1", "doc_id2"]) @@ -183,7 +191,7 @@ def test_pinecone_pre_sync_starter(mock_describe_index): @patch("pinecone.describe_index") def test_pinecone_check(describe_mock, describe_throws, reported_dimensions, check_succeeds): indexer = create_pinecone_indexer() - indexer.embedder.embedding_dimensions = 3 + indexer.embedding_dimensions = 3 if describe_throws: describe_mock.side_effect = Exception("describe failed") describe_mock.return_value = create_index_description(dimensions=reported_dimensions) @@ -192,3 +200,30 @@ def test_pinecone_check(describe_mock, describe_throws, reported_dimensions, che assert result is None else: assert result is not None + + +def test_metadata_normalization(): + indexer = create_pinecone_indexer() + + indexer._pod_type = "p1" + indexer.index( + [ + Mock( + page_content="test", + embedding=[1, 2, 3], + metadata={ + "_ab_stream": "abc", + "id": 1, + "a_complex_field": {"a_nested_field": "a_nested_value"}, + "too_big": "a" * 40_000, + "small": "a", + }, + ), + ], + [], + ) + indexer.pinecone_index.upsert.assert_called_with( + vectors=((ANY, [1, 2, 3], {"_ab_stream": "abc", "text": "test", "small": "a", "id": 1}),), + async_req=True, + show_progress=False, + ) diff --git a/airbyte-integrations/connectors/destination-postgres-strict-encrypt/.dockerignore b/airbyte-integrations/connectors/destination-postgres-strict-encrypt/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-postgres-strict-encrypt/.dockerignore +++ b/airbyte-integrations/connectors/destination-postgres-strict-encrypt/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-postgres-strict-encrypt/build.gradle b/airbyte-integrations/connectors/destination-postgres-strict-encrypt/build.gradle index 006fb163a269..f7cb11dea88d 100644 --- a/airbyte-integrations/connectors/destination-postgres-strict-encrypt/build.gradle +++ b/airbyte-integrations/connectors/destination-postgres-strict-encrypt/build.gradle @@ -18,10 +18,8 @@ dependencies { integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') - integrationTestJavaImplementation libs.connectors.testcontainers.postgresql + integrationTestJavaImplementation libs.testcontainers.postgresql - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-normalization').airbyteDocker.outputs) integrationTestJavaImplementation project(':airbyte-config-oss:config-models-oss') integrationTestJavaImplementation project(':airbyte-connector-test-harnesses:acceptance-test-harness') diff --git a/airbyte-integrations/connectors/destination-postgres/.dockerignore b/airbyte-integrations/connectors/destination-postgres/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-postgres/.dockerignore +++ b/airbyte-integrations/connectors/destination-postgres/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-postgres/build.gradle b/airbyte-integrations/connectors/destination-postgres/build.gradle index bbf2ab1b1cef..5fcd4f9aaba9 100644 --- a/airbyte-integrations/connectors/destination-postgres/build.gradle +++ b/airbyte-integrations/connectors/destination-postgres/build.gradle @@ -17,13 +17,11 @@ dependencies { testImplementation project(':airbyte-test-utils') - testImplementation libs.connectors.testcontainers.postgresql + testImplementation libs.testcontainers.postgresql integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-postgres') - integrationTestJavaImplementation libs.connectors.testcontainers.postgresql + integrationTestJavaImplementation libs.testcontainers.postgresql - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-normalization').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors/destination-pubsub/.dockerignore b/airbyte-integrations/connectors/destination-pubsub/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-pubsub/.dockerignore +++ b/airbyte-integrations/connectors/destination-pubsub/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-pubsub/build.gradle b/airbyte-integrations/connectors/destination-pubsub/build.gradle index 31f917dd0645..3df2d6c3798f 100644 --- a/airbyte-integrations/connectors/destination-pubsub/build.gradle +++ b/airbyte-integrations/connectors/destination-pubsub/build.gradle @@ -15,7 +15,6 @@ dependencies { implementation project(':airbyte-config-oss:config-models-oss') implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) testImplementation project(':airbyte-integrations:bases:standard-destination-test') diff --git a/airbyte-integrations/connectors/destination-pulsar/.dockerignore b/airbyte-integrations/connectors/destination-pulsar/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-pulsar/.dockerignore +++ b/airbyte-integrations/connectors/destination-pulsar/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-pulsar/build.gradle b/airbyte-integrations/connectors/destination-pulsar/build.gradle index 4b2d6f81a75c..763907c257a1 100644 --- a/airbyte-integrations/connectors/destination-pulsar/build.gradle +++ b/airbyte-integrations/connectors/destination-pulsar/build.gradle @@ -14,11 +14,10 @@ dependencies { implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation 'org.apache.pulsar:pulsar-client:2.8.1' - testImplementation libs.connectors.testcontainers.pulsar + testImplementation libs.testcontainers.pulsar testImplementation project(':airbyte-integrations:bases:standard-destination-test') integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') diff --git a/airbyte-integrations/connectors/destination-qdrant/.dockerignore b/airbyte-integrations/connectors/destination-qdrant/.dockerignore new file mode 100644 index 000000000000..b423c7670a8c --- /dev/null +++ b/airbyte-integrations/connectors/destination-qdrant/.dockerignore @@ -0,0 +1,6 @@ +* +!Dockerfile +!main.py +!destination_qdrant +!airbyte-cdk +!setup.py diff --git a/airbyte-integrations/connectors/destination-qdrant/.gitignore b/airbyte-integrations/connectors/destination-qdrant/.gitignore new file mode 100644 index 000000000000..ef80b1792edf --- /dev/null +++ b/airbyte-integrations/connectors/destination-qdrant/.gitignore @@ -0,0 +1 @@ +airbyte-cdk \ No newline at end of file diff --git a/airbyte-integrations/connectors/destination-qdrant/Dockerfile b/airbyte-integrations/connectors/destination-qdrant/Dockerfile new file mode 100644 index 000000000000..73f9c0e04ec7 --- /dev/null +++ b/airbyte-integrations/connectors/destination-qdrant/Dockerfile @@ -0,0 +1,45 @@ +FROM python:3.10-slim as base + +# build and load all requirements +FROM base as builder +WORKDIR /airbyte/integration_code + +RUN apt-get update \ + && pip install --upgrade pip \ + && apt-get install -y build-essential cmake g++ libffi-dev libstdc++6 + +# upgrade pip to the latest version +COPY setup.py ./ + +RUN pip install --upgrade pip + +# This is required because the current connector dependency is not compatible with the CDK version +# An older CDK version will be used, which depends on pyYAML 5.4, for which we need to pin Cython to <3.0 +# As of today the CDK version that satisfies the main dependency requirements, is 0.1.80 ... +RUN pip install --prefix=/install "Cython<3.0" "pyyaml~=5.4" --no-build-isolation + +# install necessary packages to a temporary folder +RUN pip install --prefix=/install . + +# build a clean environment +FROM base +WORKDIR /airbyte/integration_code + +# copy all loaded and built libraries to a pure basic image +COPY --from=builder /install /usr/local +# add default timezone settings +COPY --from=builder /usr/share/zoneinfo/Etc/UTC /etc/localtime +RUN echo "Etc/UTC" > /etc/timezone + +# bash is installed for more convenient debugging. +RUN apt-get install bash + +# copy payload code only +COPY main.py ./ +COPY destination_qdrant ./destination_qdrant + +ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" +ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] + +LABEL io.airbyte.version=0.0.1 +LABEL io.airbyte.name=airbyte/destination-qdrant diff --git a/airbyte-integrations/connectors/destination-qdrant/README.md b/airbyte-integrations/connectors/destination-qdrant/README.md new file mode 100644 index 000000000000..7da001d3054f --- /dev/null +++ b/airbyte-integrations/connectors/destination-qdrant/README.md @@ -0,0 +1,123 @@ +# Qdrant Destination + +This is the repository for the Qdrant destination connector, written in Python. +For information about how to use this connector within Airbyte, see [the documentation](https://docs.airbyte.com/integrations/destinations/qdrant). + +## Local development + +### Prerequisites +**To iterate on this connector, make sure to complete this prerequisites section.** + +#### Minimum Python version required `= 3.10.0` + +#### Build & Activate Virtual Environment and install dependencies +From this connector directory, create a virtual environment: +``` +python -m venv .venv +``` + +This will generate a virtualenv for this module in `.venv/`. Make sure this venv is active in your +development environment of choice. To activate it from the terminal, run: +``` +source .venv/bin/activate +pip install -r requirements.txt +``` +If you are in an IDE, follow your IDE's instructions to activate the virtualenv. + +Note that while we are installing dependencies from `requirements.txt`, you should only edit `setup.py` for your dependencies. `requirements.txt` is +used for editable installs (`pip install -e`) to pull in Python dependencies from the monorepo and will call `setup.py`. +If this is mumbo jumbo to you, don't worry about it, just put your deps in `setup.py` but install using `pip install -r requirements.txt` and everything +should work as you expect. + +#### Building via Gradle +From the Airbyte repository root, run: +``` +./gradlew :airbyte-integrations:connectors:destination-qdrant:build +``` + +#### Create credentials +**If you are a community contributor**, follow the instructions in the [documentation](https://docs.airbyte.com/integrations/destinations/qdrant) +to generate the necessary credentials. Then create a file `secrets/config.json` conforming to the `destination_qdrant/spec.json` file. +Note that the `secrets` directory is gitignored by default, so there is no danger of accidentally checking in sensitive information. +See `integration_tests/sample_config.json` for a sample config file. + +**If you are an Airbyte core member**, copy the credentials in Lastpass under the secret name `destination qdrant test creds` +and place them into `secrets/config.json`. + +### Locally running the connector +``` +python main.py spec +python main.py check --config secrets/config.json +python main.py discover --config secrets/config.json +python main.py read --config secrets/config.json --catalog integration_tests/configured_catalog.json +``` + +### Locally running the connector docker image + +#### Build +First, make sure you build the latest Docker image: +``` +docker build . -t airbyte/destination-qdrant:dev +``` + +You can also build the connector image via Gradle: +``` +./gradlew :airbyte-integrations:connectors:destination-qdrant:airbyteDocker +``` +When building via Gradle, the docker image name and tag, respectively, are the values of the `io.airbyte.name` and `io.airbyte.version` `LABEL`s in +the Dockerfile. + +#### Run +Then run any of the connector commands as follows: +``` +docker run --rm airbyte/destination-qdrant:dev spec +docker run --rm -v $(pwd)/secrets:/secrets airbyte/destination-qdrant:dev check --config /secrets/config.json +# messages.jsonl is a file containing line-separated JSON representing AirbyteMessages +cat messages.jsonl | docker run --rm -v $(pwd)/secrets:/secrets -v $(pwd)/integration_tests:/integration_tests airbyte/destination-qdrant:dev write --config /secrets/config.json --catalog /integration_tests/configured_catalog.json +``` +## Testing + Make sure to familiarize yourself with [pytest test discovery](https://docs.pytest.org/en/latest/goodpractices.html#test-discovery) to know how your test files and methods should be named. +First install test dependencies into your virtual environment: +``` +pip install .[tests] +``` +### Unit Tests +To run unit tests locally, from the connector directory run: +``` +python -m pytest unit_tests +``` + +### Integration Tests +There are two types of integration tests: Acceptance Tests (Airbyte's test suite for all destination connectors) and custom integration tests (which are specific to this connector). +#### Custom Integration tests +Place custom tests inside `integration_tests/` folder, then, from the connector root, run +``` +python -m pytest integration_tests +``` +#### Acceptance Tests +Coming soon: + +### Using gradle to run tests +All commands should be run from airbyte project root. +To run unit tests: +``` +./gradlew :airbyte-integrations:connectors:destination-qdrant:unitTest +``` +To run acceptance and custom integration tests: +``` +./gradlew :airbyte-integrations:connectors:destination-qdrant:integrationTest +``` + +## Dependency Management +All of your dependencies should go in `setup.py`, NOT `requirements.txt`. The requirements file is only used to connect internal Airbyte dependencies in the monorepo for local development. +We split dependencies between two groups, dependencies that are: +* required for your connector to work need to go to `MAIN_REQUIREMENTS` list. +* required for the testing need to go to `TEST_REQUIREMENTS` list + +### Publishing a new version of the connector +You've checked out the repo, implemented a million dollar feature, and you're ready to share your changes with the world. Now what? +1. Make sure your changes are passing unit and integration tests. +1. Bump the connector version in `Dockerfile` -- just increment the value of the `LABEL io.airbyte.version` appropriately (we use [SemVer](https://semver.org/)). +1. Create a Pull Request. +1. Pat yourself on the back for being an awesome contributor. +1. Someone from Airbyte will take a look at your PR and iterate with you to merge it into master. \ No newline at end of file diff --git a/airbyte-integrations/connectors/destination-qdrant/build.gradle b/airbyte-integrations/connectors/destination-qdrant/build.gradle new file mode 100644 index 000000000000..c2ac9174fa18 --- /dev/null +++ b/airbyte-integrations/connectors/destination-qdrant/build.gradle @@ -0,0 +1,8 @@ +plugins { + id 'airbyte-python' + id 'airbyte-docker' +} + +airbytePython { + moduleDirectory 'destination_qdrant' +} diff --git a/airbyte-integrations/connectors/destination-qdrant/destination_qdrant/__init__.py b/airbyte-integrations/connectors/destination-qdrant/destination_qdrant/__init__.py new file mode 100644 index 000000000000..b2fe4e95b0e2 --- /dev/null +++ b/airbyte-integrations/connectors/destination-qdrant/destination_qdrant/__init__.py @@ -0,0 +1,8 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + + +from .destination import DestinationQdrant + +__all__ = ["DestinationQdrant"] diff --git a/airbyte-integrations/connectors/destination-qdrant/destination_qdrant/config.py b/airbyte-integrations/connectors/destination-qdrant/destination_qdrant/config.py new file mode 100644 index 000000000000..f9e3f832369f --- /dev/null +++ b/airbyte-integrations/connectors/destination-qdrant/destination_qdrant/config.py @@ -0,0 +1,102 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + + +import json +import re +from typing import Literal, Union + +import dpath.util +from airbyte_cdk.destinations.vector_db_based.config import ( + CohereEmbeddingConfigModel, + FakeEmbeddingConfigModel, + FromFieldEmbeddingConfigModel, + OpenAIEmbeddingConfigModel, + ProcessingConfigModel, +) +from jsonschema import RefResolver +from pydantic import BaseModel, Field + + +class NoAuth(BaseModel): + mode: Literal["no_auth"] = Field("no_auth", const=True) + + +class ApiKeyAuth(BaseModel): + mode: Literal["api_key_auth"] = Field("api_key_auth", const=True) + api_key: str = Field(..., title="API Key", description="API Key for the Qdrant instance", airbyte_secret=True) + + +class QdrantIndexingConfigModel(BaseModel): + url: str = Field(..., title="Public Endpoint", description="Public Endpoint of the Qdrant cluser", order=0) + auth_method: Union[ApiKeyAuth, NoAuth] = Field( + default="api_key_auth", + title="Authentication Method", + description="Method to authenticate with the Qdrant Instance", + discriminator="mode", + type="object", + order=1, + ) + prefer_grpc: bool = Field( + title="Prefer gRPC", description="Whether to prefer gRPC over HTTP. Set to true for Qdrant cloud clusters", default=True + ) + collection: str = Field(..., title="Collection Name", description="The collection to load data into", order=2) + distance_metric: Union[Literal["dot"], Literal["cos"], Literal["euc"]] = Field( + default="cos", + title="Distance Metric", + enum=["dot", "cos", "euc"], + description="The Distance metric used to measure similarities among vectors. This field is only used if the collection defined in the does not exist yet and is created automatically by the connector.", + ) + text_field: str = Field(title="Text Field", description="The field in the payload that contains the embedded text", default="text") + + class Config: + title = "Indexing" + schema_extra = { + "group": "Indexing", + "description": "Indexing configuration", + } + + +class ConfigModel(BaseModel): + processing: ProcessingConfigModel + embedding: Union[ + OpenAIEmbeddingConfigModel, CohereEmbeddingConfigModel, FakeEmbeddingConfigModel, FromFieldEmbeddingConfigModel + ] = Field(..., title="Embedding", description="Embedding configuration", discriminator="mode", group="embedding", type="object") + indexing: QdrantIndexingConfigModel + + class Config: + title = "Qdrant Destination Config" + schema_extra = { + "groups": [ + {"id": "processing", "title": "Processing"}, + {"id": "embedding", "title": "Embedding"}, + {"id": "indexing", "title": "Indexing"}, + ] + } + + @staticmethod + def resolve_refs(schema: dict) -> dict: + # config schemas can't contain references, so inline them + json_schema_ref_resolver = RefResolver.from_schema(schema) + str_schema = json.dumps(schema) + for ref_block in re.findall(r'{"\$ref": "#\/definitions\/.+?(?="})"}', str_schema): + ref = json.loads(ref_block)["$ref"] + str_schema = str_schema.replace(ref_block, json.dumps(json_schema_ref_resolver.resolve(ref)[1])) + pyschema: dict = json.loads(str_schema) + del pyschema["definitions"] + return pyschema + + @staticmethod + def remove_discriminator(schema: dict) -> None: + """pydantic adds "discriminator" to the schema for oneOfs, which is not treated right by the platform as we inline all references""" + dpath.util.delete(schema, "properties/*/discriminator") + dpath.util.delete(schema, "properties/**/discriminator") + + @classmethod + def schema(cls): + """we're overriding the schema classmethod to enable some post-processing""" + schema = super().schema() + schema = cls.resolve_refs(schema) + cls.remove_discriminator(schema) + return schema diff --git a/airbyte-integrations/connectors/destination-qdrant/destination_qdrant/destination.py b/airbyte-integrations/connectors/destination-qdrant/destination_qdrant/destination.py new file mode 100644 index 000000000000..59ea3eddba02 --- /dev/null +++ b/airbyte-integrations/connectors/destination-qdrant/destination_qdrant/destination.py @@ -0,0 +1,62 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + +from typing import Any, Iterable, Mapping + +from airbyte_cdk import AirbyteLogger +from airbyte_cdk.destinations import Destination +from airbyte_cdk.destinations.vector_db_based.embedder import CohereEmbedder, Embedder, FakeEmbedder, FromFieldEmbedder, OpenAIEmbedder +from airbyte_cdk.destinations.vector_db_based.indexer import Indexer +from airbyte_cdk.destinations.vector_db_based.writer import Writer +from airbyte_cdk.models import AirbyteConnectionStatus, AirbyteMessage, ConfiguredAirbyteCatalog, ConnectorSpecification, Status +from airbyte_cdk.models.airbyte_protocol import DestinationSyncMode +from destination_qdrant.config import ConfigModel +from destination_qdrant.indexer import QdrantIndexer + +BATCH_SIZE = 256 + +embedder_map = { + "openai": OpenAIEmbedder, + "cohere": CohereEmbedder, + "fake": FakeEmbedder, + "from_field": FromFieldEmbedder, +} + + +class DestinationQdrant(Destination): + indexer: Indexer + embedder: Embedder + + def _init_indexer(self, config: ConfigModel): + self.embedder = embedder_map[config.embedding.mode](config.embedding) + self.indexer = QdrantIndexer(config.indexing, self.embedder.embedding_dimensions) + + def write( + self, config: Mapping[str, Any], configured_catalog: ConfiguredAirbyteCatalog, input_messages: Iterable[AirbyteMessage] + ) -> Iterable[AirbyteMessage]: + + config_model = ConfigModel.parse_obj(config) + self._init_indexer(config_model) + writer = Writer(config_model.processing, self.indexer, self.embedder, batch_size=BATCH_SIZE) + yield from writer.write(configured_catalog, input_messages) + + def check(self, logger: AirbyteLogger, config: Mapping[str, Any]) -> AirbyteConnectionStatus: + + self._init_indexer(ConfigModel.parse_obj(config)) + embedder_error = self.embedder.check() + indexer_error = self.indexer.check() + errors = [error for error in [embedder_error, indexer_error] if error is not None] + if len(errors) > 0: + return AirbyteConnectionStatus(status=Status.FAILED, message="\n".join(errors)) + else: + return AirbyteConnectionStatus(status=Status.SUCCEEDED) + + def spec(self, *args: Any, **kwargs: Any) -> ConnectorSpecification: + + return ConnectorSpecification( + documentationUrl="https://docs.airbyte.com/integrations/destinations/qdrant", + supportsIncremental=True, + supported_destination_sync_modes=[DestinationSyncMode.overwrite, DestinationSyncMode.append, DestinationSyncMode.append_dedup], + connectionSpecification=ConfigModel.schema(), # type: ignore[attr-defined] + ) diff --git a/airbyte-integrations/connectors/destination-qdrant/destination_qdrant/indexer.py b/airbyte-integrations/connectors/destination-qdrant/destination_qdrant/indexer.py new file mode 100644 index 000000000000..74a8c60dceec --- /dev/null +++ b/airbyte-integrations/connectors/destination-qdrant/destination_qdrant/indexer.py @@ -0,0 +1,136 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + + +import uuid +from typing import List, Optional + +from airbyte_cdk.destinations.vector_db_based.document_processor import METADATA_RECORD_ID_FIELD, METADATA_STREAM_FIELD, Chunk +from airbyte_cdk.destinations.vector_db_based.indexer import Indexer +from airbyte_cdk.destinations.vector_db_based.utils import format_exception +from airbyte_cdk.models import AirbyteLogMessage, AirbyteMessage, ConfiguredAirbyteCatalog, Level, Type +from airbyte_cdk.models.airbyte_protocol import DestinationSyncMode +from destination_qdrant.config import QdrantIndexingConfigModel +from qdrant_client import QdrantClient, models +from qdrant_client.conversions.common_types import PointsSelector +from qdrant_client.models import Distance, PayloadSchemaType, VectorParams + +DISTANCE_METRIC_MAP = { + "dot": Distance.DOT, + "cos": Distance.COSINE, + "euc": Distance.EUCLID, +} + + +class QdrantIndexer(Indexer): + config: QdrantIndexingConfigModel + + def __init__(self, config: QdrantIndexingConfigModel, embedding_dimensions: int): + super().__init__(config) + self.embedding_dimensions = embedding_dimensions + + def check(self) -> Optional[str]: + auth_method_mode = self.config.auth_method.mode + if auth_method_mode == "api_key_auth" and not self.config.url.startswith("https://"): + return "Host must start with https://" + + try: + self._create_client() + + if not self._client: + return "Qdrant client is not alive." + + available_collections = [collection.name for collection in self._client.get_collections().collections] + distance_metric = DISTANCE_METRIC_MAP[self.config.distance_metric] + + if self.config.collection in available_collections: + collection_info = self._client.get_collection(collection_name=self.config.collection) + assert ( + collection_info.config.params.vectors.size == self.embedding_dimensions + ), "The collection's vector's size must match the embedding dimensions" + assert ( + collection_info.config.params.vectors.distance == distance_metric + ), "The colection's vector's distance metric must match the selected distance metric option" + else: + self._client.recreate_collection( + collection_name=self.config.collection, + vectors_config=VectorParams(size=self.embedding_dimensions, distance=distance_metric), + ) + + except Exception as e: + return format_exception(e) + finally: + if self._client: + self._client.close() + + def pre_sync(self, catalog: ConfiguredAirbyteCatalog) -> None: + self._create_client() + streams_to_overwrite = [ + stream.stream.name for stream in catalog.streams if stream.destination_sync_mode == DestinationSyncMode.overwrite + ] + if streams_to_overwrite: + self._delete_for_filter( + models.FilterSelector( + filter=models.Filter( + should=[ + models.FieldCondition(key=METADATA_STREAM_FIELD, match=models.MatchValue(value=stream)) + for stream in streams_to_overwrite + ] + ) + ) + ) + for field in [METADATA_RECORD_ID_FIELD, METADATA_STREAM_FIELD]: + self._client.create_payload_index( + collection_name=self.config.collection, field_name=field, field_schema=PayloadSchemaType.KEYWORD + ) + + def index(self, document_chunks: List[Chunk], delete_ids: List[str]) -> None: + if len(delete_ids) > 0: + self._delete_for_filter( + models.FilterSelector( + filter=models.Filter( + should=[ + models.FieldCondition(key=METADATA_RECORD_ID_FIELD, match=models.MatchValue(value=_id)) for _id in delete_ids + ] + ) + ) + ) + entities = [] + for i in range(len(document_chunks)): + chunk = document_chunks[i] + payload = chunk.metadata + payload[self.config.text_field] = chunk.page_content + entities.append( + models.Record( + id=str(uuid.uuid4()), + payload=payload, + vector=chunk.embedding, + ) + ) + self._client.upload_records(collection_name=self.config.collection, records=entities) + + def post_sync(self) -> List[AirbyteMessage]: + try: + self._client.close() + return [ + AirbyteMessage( + type=Type.LOG, log=AirbyteLogMessage(level=Level.INFO, message="Qdrant Database Client has been closed successfully") + ) + ] + except Exception as e: + return [AirbyteMessage(type=Type.LOG, log=AirbyteLogMessage(level=Level.ERROR, message=format_exception(e)))] + + def _create_client(self): + auth_method = self.config.auth_method + url = self.config.url + prefer_grpc = self.config.prefer_grpc + + if auth_method.mode == "no_auth": + self._client = QdrantClient(url=url, prefer_grpc=prefer_grpc) + elif auth_method.mode == "api_key_auth": + api_key = auth_method.api_key + self._client = QdrantClient(url=url, prefer_grpc=prefer_grpc, api_key=api_key) + + def _delete_for_filter(self, selector: PointsSelector) -> None: + self._client.delete(collection_name=self.config.collection, points_selector=selector) diff --git a/airbyte-integrations/connectors/destination-qdrant/examples/configured_catalog.json b/airbyte-integrations/connectors/destination-qdrant/examples/configured_catalog.json new file mode 100644 index 000000000000..acb931363d89 --- /dev/null +++ b/airbyte-integrations/connectors/destination-qdrant/examples/configured_catalog.json @@ -0,0 +1,20 @@ +{ + "streams": [ + { + "stream": { + "name": "example_stream", + "json_schema": { + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": {} + }, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": false, + "default_cursor_field": ["column_name"] + }, + "sync_mode": "full_refresh", + "destination_sync_mode": "append_dedup", + "primary_key": [["pk"]] + } + ] +} diff --git a/airbyte-integrations/connectors/destination-qdrant/examples/messages.jsonl b/airbyte-integrations/connectors/destination-qdrant/examples/messages.jsonl new file mode 100644 index 000000000000..195d260c3ad6 --- /dev/null +++ b/airbyte-integrations/connectors/destination-qdrant/examples/messages.jsonl @@ -0,0 +1 @@ +{"type": "RECORD", "record": {"stream": "example_stream", "data": { "title": "valueZXXXXXXXX1", "field2": "value2", "pk": "1" }, "emitted_at": 1625383200000}} \ No newline at end of file diff --git a/airbyte-integrations/connectors/destination-qdrant/icon.svg b/airbyte-integrations/connectors/destination-qdrant/icon.svg new file mode 100644 index 000000000000..fbbf0f1d49fd --- /dev/null +++ b/airbyte-integrations/connectors/destination-qdrant/icon.svg @@ -0,0 +1,21 @@ + + + qdrant + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/airbyte-integrations/connectors/destination-qdrant/main.py b/airbyte-integrations/connectors/destination-qdrant/main.py new file mode 100644 index 000000000000..42c2e8492e9f --- /dev/null +++ b/airbyte-integrations/connectors/destination-qdrant/main.py @@ -0,0 +1,11 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + + +import sys + +from destination_qdrant import DestinationQdrant + +if __name__ == "__main__": + DestinationQdrant().run(sys.argv[1:]) diff --git a/airbyte-integrations/connectors/destination-qdrant/metadata.yaml b/airbyte-integrations/connectors/destination-qdrant/metadata.yaml new file mode 100644 index 000000000000..4dbfe0c5f87d --- /dev/null +++ b/airbyte-integrations/connectors/destination-qdrant/metadata.yaml @@ -0,0 +1,25 @@ +data: + registries: + cloud: + enabled: true + oss: + enabled: true + connectorSubtype: database + connectorType: destination + definitionId: 6eb1198a-6d38-43e5-aaaa-dccd8f71db2b + dockerImageTag: 0.0.1 + dockerRepository: airbyte/destination-qdrant + githubIssueLabel: destination-qdrant + icon: qdrant.svg + license: MIT + name: Qdrant + releaseDate: 2023-09-22 + releaseStage: alpha + documentationUrl: https://docs.airbyte.com/integrations/destinations/qdrant + tags: + - language:python + ab_internal: + sl: 100 + ql: 100 + supportLevel: community +metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/destination-qdrant/requirements.txt b/airbyte-integrations/connectors/destination-qdrant/requirements.txt new file mode 100644 index 000000000000..d6e1198b1ab1 --- /dev/null +++ b/airbyte-integrations/connectors/destination-qdrant/requirements.txt @@ -0,0 +1 @@ +-e . diff --git a/airbyte-integrations/connectors/destination-qdrant/setup.py b/airbyte-integrations/connectors/destination-qdrant/setup.py new file mode 100644 index 000000000000..bf795ed43c5c --- /dev/null +++ b/airbyte-integrations/connectors/destination-qdrant/setup.py @@ -0,0 +1,23 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + + +from setuptools import find_packages, setup + +MAIN_REQUIREMENTS = ["airbyte-cdk[vector-db-based]", "qdrant-client", "fastembed"] + +TEST_REQUIREMENTS = ["pytest~=6.2"] + +setup( + name="destination_qdrant", + description="Destination implementation for Qdrant.", + author="Airbyte", + author_email="contact@airbyte.io", + packages=find_packages(), + install_requires=MAIN_REQUIREMENTS, + package_data={"": ["*.json"]}, + extras_require={ + "tests": TEST_REQUIREMENTS, + }, +) diff --git a/airbyte-integrations/connectors/destination-qdrant/unit_tests/__init__.py b/airbyte-integrations/connectors/destination-qdrant/unit_tests/__init__.py new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/airbyte-integrations/connectors/destination-qdrant/unit_tests/test_destination.py b/airbyte-integrations/connectors/destination-qdrant/unit_tests/test_destination.py new file mode 100644 index 000000000000..b47846a4f9fd --- /dev/null +++ b/airbyte-integrations/connectors/destination-qdrant/unit_tests/test_destination.py @@ -0,0 +1,101 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + +import unittest +from unittest.mock import MagicMock, Mock, patch + +from airbyte_cdk import AirbyteLogger +from airbyte_cdk.models import ConnectorSpecification, Status +from destination_qdrant.config import ConfigModel +from destination_qdrant.destination import DestinationQdrant, embedder_map + + +class TestDestinationQdrant(unittest.TestCase): + def setUp(self): + self.config = { + "processing": {"text_fields": ["str_col"], "metadata_fields": [], "chunk_size": 1000}, + "embedding": {"mode": "openai", "openai_key": "mykey"}, + "indexing": { + "url": "localhost:6333", + "auth_method": { + "mode": "no_auth", + }, + "prefer_grpc": False, + "collection": "dummy-collection", + "distance_metric": "dot", + "text_field": "text" + }, + } + self.config_model = ConfigModel.parse_obj(self.config) + self.logger = AirbyteLogger() + + @patch("destination_qdrant.destination.QdrantIndexer") + @patch.dict(embedder_map, openai=MagicMock()) + def test_check(self, MockedQdrantIndexer): + mock_embedder = Mock() + mock_indexer = Mock() + embedder_map["openai"].return_value = mock_embedder + MockedQdrantIndexer.return_value = mock_indexer + + mock_embedder.check.return_value = None + mock_indexer.check.return_value = None + + destination = DestinationQdrant() + result = destination.check(self.logger, self.config) + + self.assertEqual(result.status, Status.SUCCEEDED) + mock_embedder.check.assert_called_once() + mock_indexer.check.assert_called_once() + + @patch("destination_qdrant.destination.QdrantIndexer") + @patch.dict(embedder_map, openai=MagicMock()) + def test_check_with_errors(self, MockedQdrantIndexer): + mock_embedder = Mock() + mock_indexer = Mock() + embedder_map["openai"].return_value = mock_embedder + MockedQdrantIndexer.return_value = mock_indexer + + embedder_error_message = "Embedder Error" + indexer_error_message = "Indexer Error" + + mock_embedder.check.return_value = embedder_error_message + mock_indexer.check.return_value = indexer_error_message + + destination = DestinationQdrant() + result = destination.check(self.logger, self.config) + + self.assertEqual(result.status, Status.FAILED) + self.assertEqual(result.message, f"{embedder_error_message}\n{indexer_error_message}") + + mock_embedder.check.assert_called_once() + mock_indexer.check.assert_called_once() + + @patch("destination_qdrant.destination.Writer") + @patch("destination_qdrant.destination.QdrantIndexer") + @patch.dict(embedder_map, openai=MagicMock()) + def test_write(self, MockedQdrantIndexer, MockedWriter): + mock_embedder = Mock() + mock_indexer = Mock() + mock_writer = Mock() + + embedder_map["openai"].return_value = mock_embedder + MockedQdrantIndexer.return_value = mock_indexer + MockedWriter.return_value = mock_writer + + mock_writer.write.return_value = [] + + configured_catalog = MagicMock() + input_messages = [] + + destination = DestinationQdrant() + list(destination.write(self.config, configured_catalog, input_messages)) + + MockedWriter.assert_called_once_with(self.config_model.processing, mock_indexer, mock_embedder, batch_size=256) + mock_writer.write.assert_called_once_with(configured_catalog, input_messages) + + def test_spec(self): + destination = DestinationQdrant() + result = destination.spec() + + self.assertIsInstance(result, ConnectorSpecification) diff --git a/airbyte-integrations/connectors/destination-qdrant/unit_tests/test_indexer.py b/airbyte-integrations/connectors/destination-qdrant/unit_tests/test_indexer.py new file mode 100644 index 000000000000..48762f877ad9 --- /dev/null +++ b/airbyte-integrations/connectors/destination-qdrant/unit_tests/test_indexer.py @@ -0,0 +1,178 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + +import unittest +from unittest.mock import Mock, call + +from airbyte_cdk.destinations.vector_db_based.utils import format_exception +from airbyte_cdk.models.airbyte_protocol import AirbyteLogMessage, AirbyteMessage, AirbyteStream, DestinationSyncMode, Level, SyncMode, Type +from destination_qdrant.config import QdrantIndexingConfigModel +from destination_qdrant.indexer import QdrantIndexer +from qdrant_client import models + + +class TestQdrantIndexer(unittest.TestCase): + def setUp(self): + self.mock_config = QdrantIndexingConfigModel( + **{ + "url": "https://client-url.io", + "auth_method": { + "mode": "api_key_auth", + "api_key": "api_key" + }, + "prefer_grpc": False, + "collection": "dummy-collection", + "distance_metric": "dot", + "text_field": "text" + } + ) + self.qdrant_indexer = QdrantIndexer(self.mock_config, 100) + self.qdrant_indexer._create_client = Mock() + self.qdrant_indexer._client = Mock() + + def test_check_gets_existing_collection(self): + mock_collections = Mock(collections=[Mock()]) + mock_collections.collections[0].name = "dummy-collection" + self.qdrant_indexer._client.get_collections.return_value = mock_collections + + self.qdrant_indexer._client.get_collection.return_value = Mock(config=Mock(params=Mock(vectors=Mock(size=100, distance=models.Distance.DOT)))) + + check_result = self.qdrant_indexer.check() + + self.assertIsNone(check_result) + + self.qdrant_indexer._create_client.assert_called() + self.qdrant_indexer._client.get_collections.assert_called() + self.qdrant_indexer._client.get_collection.assert_called() + self.qdrant_indexer._client.close.assert_called() + + def test_check_creates_new_collection_if_not_exists(self): + self.qdrant_indexer._client.get_collections.return_value = Mock(collections=[]) + check_result = self.qdrant_indexer.check() + + self.assertIsNone(check_result) + + self.qdrant_indexer._create_client.assert_called() + self.qdrant_indexer._client.get_collections.assert_called() + self.qdrant_indexer._client.recreate_collection.assert_called() + self.qdrant_indexer._client.close.assert_called() + + def test_check_handles_failure_conditions(self): + # Test 1: url starts with https:// + self.qdrant_indexer.config.url = "client-url.io" + result = self.qdrant_indexer.check() + self.assertEqual(result, "Host must start with https://") + + # Test 2: random exception + self.qdrant_indexer.config.url = "https://client-url.io" + self.qdrant_indexer._create_client.side_effect = Exception("Random exception") + result = self.qdrant_indexer.check() + self.assertTrue("Random exception" in result) + + # Test 3: client server is not alive + self.qdrant_indexer._create_client.side_effect = None + self.qdrant_indexer._client = None + result = self.qdrant_indexer.check() + self.assertEqual(result, "Qdrant client is not alive.") + + # Test 4: Test vector size does not match + mock_collections = Mock(collections=[Mock()]) + mock_collections.collections[0].name = "dummy-collection" + + self.qdrant_indexer._client = Mock() + self.qdrant_indexer._client.get_collections.return_value = mock_collections + self.qdrant_indexer._client.get_collection.return_value = Mock(config=Mock(params=Mock(vectors=Mock(size=10, distance=models.Distance.DOT)))) + + result = self.qdrant_indexer.check() + self.assertTrue("The collection's vector's size must match the embedding dimensions" in result) + + # Test 5: Test distance metric does not match + self.qdrant_indexer._client.get_collection.return_value = Mock(config=Mock(params=Mock(vectors=Mock(size=100, distance=models.Distance.COSINE)))) + result = self.qdrant_indexer.check() + self.assertTrue("The colection's vector's distance metric must match the selected distance metric option" in result) + + def test_pre_sync_calls_delete(self): + self.qdrant_indexer.pre_sync( + Mock( + streams=[ + Mock( + destination_sync_mode=DestinationSyncMode.overwrite, + stream=AirbyteStream(name="some_stream", json_schema={}, supported_sync_modes=[SyncMode.full_refresh]), + ), + Mock( + destination_sync_mode=DestinationSyncMode.overwrite, + stream=AirbyteStream(name="another_stream", json_schema={}, supported_sync_modes=[SyncMode.full_refresh]), + ), + Mock( + destination_sync_mode=DestinationSyncMode.append, + stream=AirbyteStream(name="incremental_stream", json_schema={}, supported_sync_modes=[SyncMode.full_refresh]), + ) + ] + ) + ) + + self.qdrant_indexer._client.delete.assert_called_with( + collection_name=self.mock_config.collection, + points_selector=models.FilterSelector( + filter=models.Filter( + should=[ + models.FieldCondition(key="_ab_stream", match=models.MatchValue(value="some_stream")), + models.FieldCondition(key="_ab_stream", match=models.MatchValue(value="another_stream")) + ] + ) + )) + + def test_pre_sync_does_not_call_delete(self): + self.qdrant_indexer.pre_sync( + Mock(streams=[Mock(destination_sync_mode=DestinationSyncMode.append, stream=Mock(name="some_stream"))]) + ) + + self.qdrant_indexer._client.delete.assert_not_called() + + def test_pre_sync_calls_create_payload_index(self): + self.qdrant_indexer.pre_sync(Mock(streams=[])) + + calls = [ + call(collection_name=self.mock_config.collection, field_name="_ab_record_id", field_schema="keyword"), + call(collection_name=self.mock_config.collection, field_name="_ab_stream", field_schema="keyword") + ] + + self.qdrant_indexer._client.create_payload_index.assert_has_calls(calls) + + def test_index_calls_insert(self): + self.qdrant_indexer.index([ + Mock(metadata={"key": "value1"}, page_content="some content", embedding=[1.,2.,3.]), + Mock(metadata={"key": "value2"}, page_content="some other content", embedding=[4.,5.,6.]) + ], + [] + ) + + self.qdrant_indexer._client.upload_records.assert_called_once() + + def test_index_calls_delete(self): + self.qdrant_indexer.index([], ["some_id", "another_id"]) + + self.qdrant_indexer._client.delete.assert_called_with( + collection_name=self.mock_config.collection, + points_selector=models.FilterSelector( + filter=models.Filter( + should=[ + models.FieldCondition(key="_ab_record_id", match=models.MatchValue(value="some_id")), + models.FieldCondition(key="_ab_record_id", match=models.MatchValue(value="another_id")) + ] + ) + )) + + def test_post_sync_calls_close(self): + result = self.qdrant_indexer.post_sync() + self.qdrant_indexer._client.close.assert_called_once() + self.assertEqual(result, [AirbyteMessage(type=Type.LOG, log=AirbyteLogMessage(level=Level.INFO, message="Qdrant Database Client has been closed successfully"))]) + + def test_post_sync_handles_failure(self): + exception = Exception("Random exception") + self.qdrant_indexer._client.close.side_effect = exception + result = self.qdrant_indexer.post_sync() + + self.qdrant_indexer._client.close.assert_called_once() + self.assertEqual(result, [AirbyteMessage(type=Type.LOG, log=AirbyteLogMessage(level=Level.ERROR, message=format_exception(exception)))]) diff --git a/airbyte-integrations/connectors/destination-r2/.dockerignore b/airbyte-integrations/connectors/destination-r2/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-r2/.dockerignore +++ b/airbyte-integrations/connectors/destination-r2/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-r2/build.gradle b/airbyte-integrations/connectors/destination-r2/build.gradle index 92194d3b7fc9..8e520a7e7027 100644 --- a/airbyte-integrations/connectors/destination-r2/build.gradle +++ b/airbyte-integrations/connectors/destination-r2/build.gradle @@ -14,7 +14,6 @@ dependencies { implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') implementation project(':airbyte-integrations:bases:base-java-s3') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) // csv implementation 'com.amazonaws:aws-java-sdk-s3:1.11.978' diff --git a/airbyte-integrations/connectors/destination-redis/.dockerignore b/airbyte-integrations/connectors/destination-redis/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-redis/.dockerignore +++ b/airbyte-integrations/connectors/destination-redis/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-redis/build.gradle b/airbyte-integrations/connectors/destination-redis/build.gradle index 1307167e4181..42e2a8fae4a0 100644 --- a/airbyte-integrations/connectors/destination-redis/build.gradle +++ b/airbyte-integrations/connectors/destination-redis/build.gradle @@ -16,7 +16,6 @@ dependencies { implementation project(':airbyte-config-oss:config-models-oss') implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) // https://mvnrepository.com/artifact/redis.clients/jedis @@ -28,7 +27,7 @@ dependencies { // https://mvnrepository.com/artifact/org.assertj/assertj-core testImplementation "org.assertj:assertj-core:${assertVersion}" // https://mvnrepository.com/artifact/org.testcontainers/testcontainers - testImplementation libs.connectors.testcontainers + testImplementation libs.testcontainers integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-redis') diff --git a/airbyte-integrations/connectors/destination-redpanda/.dockerignore b/airbyte-integrations/connectors/destination-redpanda/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-redpanda/.dockerignore +++ b/airbyte-integrations/connectors/destination-redpanda/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-redpanda/build.gradle b/airbyte-integrations/connectors/destination-redpanda/build.gradle index b6d222cc1681..64878a7333b1 100644 --- a/airbyte-integrations/connectors/destination-redpanda/build.gradle +++ b/airbyte-integrations/connectors/destination-redpanda/build.gradle @@ -12,7 +12,6 @@ dependencies { implementation project(':airbyte-config-oss:config-models-oss') implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) // https://mvnrepository.com/artifact/org.apache.kafka/kafka-clients implementation 'org.apache.kafka:kafka-clients:3.3.1' diff --git a/airbyte-integrations/connectors/destination-redshift/.dockerignore b/airbyte-integrations/connectors/destination-redshift/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-redshift/.dockerignore +++ b/airbyte-integrations/connectors/destination-redshift/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-redshift/build.gradle b/airbyte-integrations/connectors/destination-redshift/build.gradle index 98bed326e017..3e18100b0c4f 100644 --- a/airbyte-integrations/connectors/destination-redshift/build.gradle +++ b/airbyte-integrations/connectors/destination-redshift/build.gradle @@ -22,7 +22,6 @@ dependencies { implementation project(':airbyte-integrations:bases:bases-destination-jdbc') implementation project(':airbyte-integrations:bases:base-java-s3') implementation project(':airbyte-integrations:bases:base-typing-deduping') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation 'com.amazonaws:aws-java-sdk-s3:1.11.978' implementation 'com.amazon.redshift:redshift-jdbc42-no-awssdk:1.2.51.1078' // use the no-sdk library to avoid aws classpath conflicts @@ -39,12 +38,4 @@ dependencies { integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-redshift') - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-normalization').airbyteDocker.outputs) -} - -tasks.named("airbyteDocker") { - // this is really inefficent (because base-normalization:airbyteDocker builds 9 docker images) - // but it's also just simple to implement. - // this also goes away once airbyte-ci becomes a reality. - dependsOn project(':airbyte-integrations:bases:base-normalization').airbyteDockerRedshift } diff --git a/airbyte-integrations/connectors/destination-rockset/.dockerignore b/airbyte-integrations/connectors/destination-rockset/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-rockset/.dockerignore +++ b/airbyte-integrations/connectors/destination-rockset/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-rockset/build.gradle b/airbyte-integrations/connectors/destination-rockset/build.gradle index 0618e24c9599..8be8eecb9d56 100644 --- a/airbyte-integrations/connectors/destination-rockset/build.gradle +++ b/airbyte-integrations/connectors/destination-rockset/build.gradle @@ -18,7 +18,6 @@ dependencies { implementation project(':airbyte-config-oss:config-models-oss') implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation project(':airbyte-integrations:bases:bases-destination-jdbc') implementation group: 'com.rockset', name: 'rockset-java', version: '0.9.0' diff --git a/airbyte-integrations/connectors/destination-s3-glue/.dockerignore b/airbyte-integrations/connectors/destination-s3-glue/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-s3-glue/.dockerignore +++ b/airbyte-integrations/connectors/destination-s3-glue/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-s3-glue/build.gradle b/airbyte-integrations/connectors/destination-s3-glue/build.gradle index bea00ad2fdcb..7089e1cce426 100644 --- a/airbyte-integrations/connectors/destination-s3-glue/build.gradle +++ b/airbyte-integrations/connectors/destination-s3-glue/build.gradle @@ -13,7 +13,6 @@ dependencies { implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') implementation project(':airbyte-integrations:bases:base-java-s3') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) // https://mvnrepository.com/artifact/com.amazonaws/aws-java-sdk-glue implementation 'com.amazonaws:aws-java-sdk-glue:1.12.334' diff --git a/airbyte-integrations/connectors/destination-s3/.dockerignore b/airbyte-integrations/connectors/destination-s3/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-s3/.dockerignore +++ b/airbyte-integrations/connectors/destination-s3/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-s3/build.gradle b/airbyte-integrations/connectors/destination-s3/build.gradle index 928f1a0c6e5b..94b467b54e5e 100644 --- a/airbyte-integrations/connectors/destination-s3/build.gradle +++ b/airbyte-integrations/connectors/destination-s3/build.gradle @@ -14,7 +14,6 @@ dependencies { implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') implementation project(':airbyte-integrations:bases:base-java-s3') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) // csv implementation 'com.amazonaws:aws-java-sdk-s3:1.11.978' diff --git a/airbyte-integrations/connectors/destination-scylla/.dockerignore b/airbyte-integrations/connectors/destination-scylla/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-scylla/.dockerignore +++ b/airbyte-integrations/connectors/destination-scylla/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-scylla/build.gradle b/airbyte-integrations/connectors/destination-scylla/build.gradle index ef0fc27409c2..7912644d1f7c 100644 --- a/airbyte-integrations/connectors/destination-scylla/build.gradle +++ b/airbyte-integrations/connectors/destination-scylla/build.gradle @@ -16,7 +16,6 @@ dependencies { implementation project(':airbyte-config-oss:config-models-oss') implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation "com.scylladb:scylla-driver-core:${scyllaDriver}" @@ -24,7 +23,7 @@ dependencies { // https://mvnrepository.com/artifact/org.assertj/assertj-core testImplementation "org.assertj:assertj-core:${assertVersion}" // https://mvnrepository.com/artifact/org.testcontainers/testcontainers - testImplementation libs.connectors.testcontainers.scylla + testImplementation libs.testcontainers.scylla diff --git a/airbyte-integrations/connectors/destination-selectdb/.dockerignore b/airbyte-integrations/connectors/destination-selectdb/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-selectdb/.dockerignore +++ b/airbyte-integrations/connectors/destination-selectdb/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-selectdb/build.gradle b/airbyte-integrations/connectors/destination-selectdb/build.gradle index 1c8bf9e7adaf..cc41350a7121 100644 --- a/airbyte-integrations/connectors/destination-selectdb/build.gradle +++ b/airbyte-integrations/connectors/destination-selectdb/build.gradle @@ -14,7 +14,6 @@ dependencies { implementation project(':airbyte-config-oss:config-models-oss') implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-selectdb') diff --git a/airbyte-integrations/connectors/destination-snowflake/.dockerignore b/airbyte-integrations/connectors/destination-snowflake/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-snowflake/.dockerignore +++ b/airbyte-integrations/connectors/destination-snowflake/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-snowflake/Dockerfile b/airbyte-integrations/connectors/destination-snowflake/Dockerfile index b92bba992ea1..c5f4e900053c 100644 --- a/airbyte-integrations/connectors/destination-snowflake/Dockerfile +++ b/airbyte-integrations/connectors/destination-snowflake/Dockerfile @@ -29,5 +29,5 @@ RUN tar xf ${APPLICATION}.tar --strip-components=1 ENV ENABLE_SENTRY true -LABEL io.airbyte.version=3.0.1 +LABEL io.airbyte.version=3.1.10 LABEL io.airbyte.name=airbyte/destination-snowflake diff --git a/airbyte-integrations/connectors/destination-snowflake/build.gradle b/airbyte-integrations/connectors/destination-snowflake/build.gradle index 9059aeb8be09..bf0ee019906d 100644 --- a/airbyte-integrations/connectors/destination-snowflake/build.gradle +++ b/airbyte-integrations/connectors/destination-snowflake/build.gradle @@ -16,7 +16,7 @@ application { // '-Dcom.sun.management.jmxremote=true', // '-Dcom.sun.management.jmxremote.port=6000', // '-Dcom.sun.management.jmxremote.rmi.port=6000', -// '-Dcom.sun.management.jmxremote.local.only=false', +// '-Dcom.sun.management.jmxremote.local.only=false' // '-Dcom.sun.management.jmxremote.authenticate=false', // '-Dcom.sun.management.jmxremote.ssl=false', // '-agentpath:/usr/local/YourKit-JavaProfiler-2021.3/bin/linux-x86-64/libyjpagent.so=port=10001,listen=all' @@ -24,6 +24,11 @@ application { } +integrationTestJava { + // This is needed to make the destination-snowflake tests succeed - https://github.com/snowflakedb/snowflake-jdbc/issues/589#issuecomment-983944767 + jvmArgs = ["--add-opens=java.base/java.nio=ALL-UNNAMED"] +} + dependencies { implementation 'com.google.cloud:google-cloud-storage:1.113.16' implementation 'com.google.auth:google-auth-library-oauth2-http:0.25.5' @@ -58,13 +63,4 @@ dependencies { integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-snowflake') integrationTestJavaImplementation 'org.apache.commons:commons-lang3:3.11' - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-normalization').airbyteDocker.outputs) -} - -tasks.named("airbyteDocker") { - // this is really inefficent (because base-normalization:airbyteDocker builds 9 docker images) - // but it's also just simple to implement. - // this also goes away once airbyte-ci becomes a reality. - dependsOn project(':airbyte-integrations:bases:base-normalization').airbyteDocker } diff --git a/airbyte-integrations/connectors/destination-snowflake/metadata.yaml b/airbyte-integrations/connectors/destination-snowflake/metadata.yaml index e24cca10c693..a036d443e96e 100644 --- a/airbyte-integrations/connectors/destination-snowflake/metadata.yaml +++ b/airbyte-integrations/connectors/destination-snowflake/metadata.yaml @@ -2,7 +2,7 @@ data: connectorSubtype: database connectorType: destination definitionId: 424892c4-daac-4491-b35d-c6688ba547ba - dockerImageTag: 3.0.1 + dockerImageTag: 3.1.10 dockerRepository: airbyte/destination-snowflake githubIssueLabel: destination-snowflake icon: snowflake.svg diff --git a/airbyte-integrations/connectors/destination-snowflake/src/main/java/io/airbyte/integrations/destination/snowflake/SnowflakeDatabase.java b/airbyte-integrations/connectors/destination-snowflake/src/main/java/io/airbyte/integrations/destination/snowflake/SnowflakeDatabase.java index 2c315089d5c3..3a9077df6753 100644 --- a/airbyte-integrations/connectors/destination-snowflake/src/main/java/io/airbyte/integrations/destination/snowflake/SnowflakeDatabase.java +++ b/airbyte-integrations/connectors/destination-snowflake/src/main/java/io/airbyte/integrations/destination/snowflake/SnowflakeDatabase.java @@ -38,7 +38,7 @@ public class SnowflakeDatabase { private static final Logger LOGGER = LoggerFactory.getLogger(SnowflakeDatabase.class); - private static final int PAUSE_BETWEEN_TOKEN_REFRESH_MIN = 7; // snowflake access token's TTL is 10min and can't be modified + private static final int PAUSE_BETWEEN_TOKEN_REFRESH_MIN = 7; // snowflake access token TTL is 10min and can't be modified private static final Duration NETWORK_TIMEOUT = Duration.ofMinutes(1); private static final Duration QUERY_TIMEOUT = Duration.ofHours(3); diff --git a/airbyte-integrations/connectors/destination-snowflake/src/main/java/io/airbyte/integrations/destination/snowflake/SnowflakeInternalStagingDestination.java b/airbyte-integrations/connectors/destination-snowflake/src/main/java/io/airbyte/integrations/destination/snowflake/SnowflakeInternalStagingDestination.java index b7b8493fff92..24d4834c09a2 100644 --- a/airbyte-integrations/connectors/destination-snowflake/src/main/java/io/airbyte/integrations/destination/snowflake/SnowflakeInternalStagingDestination.java +++ b/airbyte-integrations/connectors/destination-snowflake/src/main/java/io/airbyte/integrations/destination/snowflake/SnowflakeInternalStagingDestination.java @@ -22,6 +22,7 @@ import io.airbyte.integrations.destination.snowflake.typing_deduping.SnowflakeDestinationHandler; import io.airbyte.integrations.destination.snowflake.typing_deduping.SnowflakeSqlGenerator; import io.airbyte.integrations.destination.snowflake.typing_deduping.SnowflakeV1V2Migrator; +import io.airbyte.integrations.destination.snowflake.typing_deduping.SnowflakeV2TableMigrator; import io.airbyte.integrations.destination.staging.StagingConsumerFactory; import io.airbyte.protocol.models.v0.AirbyteConnectionStatus; import io.airbyte.protocol.models.v0.AirbyteMessage; @@ -39,7 +40,7 @@ public class SnowflakeInternalStagingDestination extends AbstractJdbcDestination implements Destination { private static final Logger LOGGER = LoggerFactory.getLogger(SnowflakeInternalStagingDestination.class); - private static final String RAW_SCHEMA_OVERRIDE = "raw_data_schema"; + public static final String RAW_SCHEMA_OVERRIDE = "raw_data_schema"; private final String airbyteEnvironment; public SnowflakeInternalStagingDestination(final String airbyteEnvironment) { @@ -143,7 +144,8 @@ public SerializedAirbyteMessageConsumer getSerializedMessageConsumer(final JsonN } parsedCatalog = catalogParser.parseCatalog(catalog); final SnowflakeV1V2Migrator migrator = new SnowflakeV1V2Migrator(getNamingResolver(), database, databaseName); - typerDeduper = new DefaultTyperDeduper<>(sqlGenerator, snowflakeDestinationHandler, parsedCatalog, migrator); + final SnowflakeV2TableMigrator v2TableMigrator = new SnowflakeV2TableMigrator(database, databaseName, sqlGenerator, snowflakeDestinationHandler); + typerDeduper = new DefaultTyperDeduper<>(sqlGenerator, snowflakeDestinationHandler, parsedCatalog, migrator, v2TableMigrator, 8); return new StagingConsumerFactory().createAsync( outputRecordCollector, diff --git a/airbyte-integrations/connectors/destination-snowflake/src/main/java/io/airbyte/integrations/destination/snowflake/SnowflakeReservedKeywords.java b/airbyte-integrations/connectors/destination-snowflake/src/main/java/io/airbyte/integrations/destination/snowflake/SnowflakeReservedKeywords.java new file mode 100644 index 000000000000..85ff6851b373 --- /dev/null +++ b/airbyte-integrations/connectors/destination-snowflake/src/main/java/io/airbyte/integrations/destination/snowflake/SnowflakeReservedKeywords.java @@ -0,0 +1,113 @@ +package io.airbyte.integrations.destination.snowflake; + +import com.google.common.collect.ImmutableList; +import java.util.List; + +/** + * See https://docs.snowflake.com/en/sql-reference/reserved-keywords.html + * Copied from https://github.com/airbytehq/airbyte/blob/f226503bd1d4cd9c7412b04d47de584523988443/airbyte-integrations/bases/base-normalization/normalization/transform_catalog/reserved_keywords.py + */ +public class SnowflakeReservedKeywords { + + public static final List RESERVED_KEYWORDS = ImmutableList.of( + "ALL", + "ALTER", + "AND", + "ANY", + "AS", + "BETWEEN", + "BY", + "CASE", + "CAST", + "CHECK", + "COLUMN", + "CONNECT", + "CONNECTION", + "CONSTRAINT", + "CREATE", + "CROSS", + "CURRENT", + "CURRENT_DATE", + "CURRENT_TIME", + "CURRENT_TIMESTAMP", + "CURRENT_USER", + "DATABASE", + "DEFAULT", + "DELETE", + "DISTINCT", + "DROP", + "ELSE", + "EXISTS", + "FALSE", + "FOLLOWING", + "FOR", + "FROM", + "FULL", + "GRANT", + "GROUP", + "GSCLUSTER", + "HAVING", + "ILIKE", + "IN", + "INCREMENT", + "INNER", + "INSERT", + "INTERSECT", + "INTO", + "IS", + "ISSUE", + "JOIN", + "LATERAL", + "LEFT", + "LIKE", + "LOCALTIME", + "LOCALTIMESTAMP", + "MINUS", + "NATURAL", + "NOT", + "NULL", + "OF", + "ON", + "OR", + "ORDER", + "ORGANIZATION", + "QUALIFY", + "REGEXP", + "REVOKE", + "RIGHT", + "RLIKE", + "ROW", + "ROWS", + "SAMPLE", + "SCHEMA", + "SELECT", + "SET", + "SOME", + "START", + "TABLE", + "TABLESAMPLE", + "THEN", + "TO", + "TRIGGER", + "TRUE", + "TRY_CAST", + "UNION", + "UNIQUE", + "UPDATE", + "USING", + "VALUES", + "VIEW", + "WHEN", + "WHENEVER", + "WHERE", + "WITH"); + + public static final List RESERVED_COLUMN_NAMES = ImmutableList.of( + "CURRENT_DATE", + "CURRENT_TIME", + "CURRENT_TIMESTAMP", + "CURRENT_USER", + "LOCALTIME", + "LOCALTIMESTAMP"); + +} diff --git a/airbyte-integrations/connectors/destination-snowflake/src/main/java/io/airbyte/integrations/destination/snowflake/typing_deduping/SnowflakeDestinationHandler.java b/airbyte-integrations/connectors/destination-snowflake/src/main/java/io/airbyte/integrations/destination/snowflake/typing_deduping/SnowflakeDestinationHandler.java index b77f9f46d49f..644f2c54e857 100644 --- a/airbyte-integrations/connectors/destination-snowflake/src/main/java/io/airbyte/integrations/destination/snowflake/typing_deduping/SnowflakeDestinationHandler.java +++ b/airbyte-integrations/connectors/destination-snowflake/src/main/java/io/airbyte/integrations/destination/snowflake/typing_deduping/SnowflakeDestinationHandler.java @@ -11,12 +11,14 @@ import java.util.LinkedHashMap; import java.util.Optional; import java.util.UUID; +import net.snowflake.client.jdbc.SnowflakeSQLException; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class SnowflakeDestinationHandler implements DestinationHandler { private static final Logger LOGGER = LoggerFactory.getLogger(SnowflakeDestinationHandler.class); + public static final String EXCEPTION_COMMON_PREFIX = "JavaScript execution error: Uncaught Execution of multiple statements failed on statement"; private final String databaseName; private final JdbcDatabase database; @@ -40,8 +42,8 @@ public Optional findExistingTable(final StreamId id) t ORDER BY ordinal_position; """, databaseName.toUpperCase(), - id.finalNamespace(), - id.finalName()).stream() + id.finalNamespace().toUpperCase(), + id.finalName().toUpperCase()).stream() .collect(LinkedHashMap::new, (map, row) -> map.put(row.get("COLUMN_NAME").asText(), row.get("DATA_TYPE").asText()), LinkedHashMap::putAll); @@ -65,8 +67,8 @@ public boolean isFinalTableEmpty(final StreamId id) throws SQLException { AND table_name = ? """, databaseName.toUpperCase(), - id.finalNamespace(), - id.finalName()); + id.finalNamespace().toUpperCase(), + id.finalName().toUpperCase()); return rowCount == 0; } @@ -79,7 +81,20 @@ public void execute(final String sql) throws Exception { LOGGER.info("Executing sql {}: {}", queryId, sql); final long startTime = System.currentTimeMillis(); - database.execute(sql); + try { + database.execute(sql); + } catch (final SnowflakeSQLException e) { + LOGGER.error("Sql {} failed", queryId, e); + // Snowflake SQL exceptions by default may not be super helpful, so we try to extract the relevant part of the message. + final String trimmedMessage; + if (e.getMessage().startsWith(EXCEPTION_COMMON_PREFIX)) { + // The first line is a pretty generic message, so just remove it + trimmedMessage = e.getMessage().substring(e.getMessage().indexOf("\n") + 1); + } else { + trimmedMessage = e.getMessage(); + } + throw new RuntimeException(trimmedMessage, e); + } LOGGER.info("Sql {} completed in {} ms", queryId, System.currentTimeMillis() - startTime); } diff --git a/airbyte-integrations/connectors/destination-snowflake/src/main/java/io/airbyte/integrations/destination/snowflake/typing_deduping/SnowflakeSqlGenerator.java b/airbyte-integrations/connectors/destination-snowflake/src/main/java/io/airbyte/integrations/destination/snowflake/typing_deduping/SnowflakeSqlGenerator.java index ef4ba0ab73e4..57ca3db3a7f4 100644 --- a/airbyte-integrations/connectors/destination-snowflake/src/main/java/io/airbyte/integrations/destination/snowflake/typing_deduping/SnowflakeSqlGenerator.java +++ b/airbyte-integrations/connectors/destination-snowflake/src/main/java/io/airbyte/integrations/destination/snowflake/typing_deduping/SnowflakeSqlGenerator.java @@ -19,7 +19,9 @@ import io.airbyte.integrations.base.destination.typing_deduping.TableNotMigratedException; import io.airbyte.integrations.base.destination.typing_deduping.Union; import io.airbyte.integrations.base.destination.typing_deduping.UnsupportedOneOf; +import io.airbyte.integrations.destination.snowflake.SnowflakeReservedKeywords; import io.airbyte.protocol.models.v0.DestinationSyncMode; +import java.util.Arrays; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; @@ -37,18 +39,21 @@ public class SnowflakeSqlGenerator implements SqlGenerator map.put(column.getKey().name(), toDialectType(column.getValue())), LinkedHashMap::putAll); final LinkedHashMap actualColumns = existingTable.columns().entrySet().stream() - .filter(column -> !JavaBaseConstants.V2_FINAL_TABLE_METADATA_COLUMNS.contains(column.getKey())) + .filter(column -> JavaBaseConstants.V2_FINAL_TABLE_METADATA_COLUMNS.stream().map(String::toUpperCase) + .noneMatch(airbyteColumnName -> airbyteColumnName.equals(column.getKey()))) .collect(LinkedHashMap::new, (map, column) -> map.put(column.getKey(), column.getValue()), LinkedHashMap::putAll); final boolean sameColumns = actualColumns.equals(intendedColumns) - && "TEXT".equals(existingTable.columns().get(JavaBaseConstants.COLUMN_NAME_AB_RAW_ID)) - && "TIMESTAMP_TZ".equals(existingTable.columns().get(JavaBaseConstants.COLUMN_NAME_AB_EXTRACTED_AT)) - && "VARIANT".equals(existingTable.columns().get(JavaBaseConstants.COLUMN_NAME_AB_META)); + && "TEXT".equals(existingTable.columns().get(JavaBaseConstants.COLUMN_NAME_AB_RAW_ID.toUpperCase())) + && "TIMESTAMP_TZ".equals(existingTable.columns().get(JavaBaseConstants.COLUMN_NAME_AB_EXTRACTED_AT.toUpperCase())) + && "VARIANT".equals(existingTable.columns().get(JavaBaseConstants.COLUMN_NAME_AB_META.toUpperCase())); return sameColumns; } @@ -176,10 +182,40 @@ private String updateTable(final StreamConfig stream, final String finalSuffix, } private String extractAndCast(final ColumnId column, final AirbyteType airbyteType) { + return cast("\"_airbyte_data\":\"" + escapeJsonIdentifier(column.originalName()) + "\"", airbyteType); + } + + /** + * The `${` bigram causes problems inside script blocks. For example, a perfectly innocuous query like + * `SELECT "_airbyte_data":"${foo}" FROM ...` works fine normally, but running this block will throw + * an error: + *

{@code
+   * EXECUTE IMMEDIATE 'BEGIN
+   * LET x INTEGER := (SELECT "_airbyte_data":"${foo}" FROM ...);
+   * END;';
+   * }
+ *

+ * This method is a workaround for this behavior. We switch to using the {@code get} method to extract + * JSON values, and avoid the `${` sequence by using string concatenation. This generates a sql statement + * like {@code SELECT TRY_CAST((get("_airbyte_data", '$' + '{foo}')::text) as INTEGER) FROM ...}. + */ + private String extractAndCastInsideScript(final ColumnId column, final AirbyteType airbyteType) { + final String[] parts = column.originalName().split("\\$\\{", -1); + + final String hackReplacement = "$' || '{"; + String escapedAndQuotedColumnName = Arrays.stream(parts) + .map(SnowflakeSqlGenerator::escapeSingleQuotedString) + .collect(joining(hackReplacement)); + escapedAndQuotedColumnName = "'" + escapedAndQuotedColumnName + "'"; + final String extract = "get(\"_airbyte_data\", " + escapedAndQuotedColumnName + ")"; + return cast(extract, airbyteType); + } + + private String cast(final String sqlExpression, final AirbyteType airbyteType) { if (airbyteType instanceof final Union u) { // This is guaranteed to not be a Union, so we won't recurse infinitely final AirbyteType chosenType = u.chooseType(); - return extractAndCast(column, chosenType); + return cast(sqlExpression, chosenType); } else if (airbyteType == AirbyteProtocolType.TIME_WITH_TIMEZONE) { // We're using TEXT for this type, so need to explicitly check the string format. // There's a bunch of ways we could do this; this regex is approximately correct and easy to @@ -189,18 +225,18 @@ private String extractAndCast(final ColumnId column, final AirbyteType airbyteTy // 12:34:56.7+08:00 // 12:34:56.7890123-0800 // 12:34:56-08 - return new StringSubstitutor(Map.of("column_name", escapeIdentifier(column.originalName()))).replace( + return new StringSubstitutor(Map.of("expression", sqlExpression)).replace( """ CASE - WHEN NOT ("_airbyte_data":"${column_name}"::TEXT REGEXP '\\\\d{1,2}:\\\\d{2}:\\\\d{2}(\\\\.\\\\d+)?(Z|[+\\\\-]\\\\d{1,2}(:?\\\\d{2})?)') + WHEN NOT ((${expression})::TEXT REGEXP '\\\\d{1,2}:\\\\d{2}:\\\\d{2}(\\\\.\\\\d+)?(Z|[+\\\\-]\\\\d{1,2}(:?\\\\d{2})?)') THEN NULL - ELSE "_airbyte_data":"${column_name}" + ELSE ${expression} END """); } else { final String dialectType = toDialectType(airbyteType); return switch (dialectType) { - case "TIMESTAMP_TZ" -> new StringSubstitutor(Map.of("column_name", escapeIdentifier(column.originalName()))).replace( + case "TIMESTAMP_TZ" -> new StringSubstitutor(Map.of("expression", sqlExpression)).replace( // Handle offsets in +/-HHMM and +/-HH formats // The four cases, in order, match: // 2023-01-01T12:34:56-0800 @@ -210,41 +246,42 @@ WHEN NOT ("_airbyte_data":"${column_name}"::TEXT REGEXP '\\\\d{1,2}:\\\\d{2}:\\\ // And the ELSE will try to handle everything else. """ CASE - WHEN "_airbyte_data":"${column_name}"::TEXT REGEXP '\\\\d{4}-\\\\d{2}-\\\\d{2}T(\\\\d{2}:){2}\\\\d{2}(\\\\+|-)\\\\d{4}' - THEN TO_TIMESTAMP_TZ("_airbyte_data":"${column_name}"::TEXT, 'YYYY-MM-DDTHH24:MI:SSTZHTZM') - WHEN "_airbyte_data":"${column_name}"::TEXT REGEXP '\\\\d{4}-\\\\d{2}-\\\\d{2}T(\\\\d{2}:){2}\\\\d{2}(\\\\+|-)\\\\d{2}' - THEN TO_TIMESTAMP_TZ("_airbyte_data":"${column_name}"::TEXT, 'YYYY-MM-DDTHH24:MI:SSTZH') - WHEN "_airbyte_data":"${column_name}"::TEXT REGEXP '\\\\d{4}-\\\\d{2}-\\\\d{2}T(\\\\d{2}:){2}\\\\d{2}\\\\.\\\\d{1,7}(\\\\+|-)\\\\d{4}' - THEN TO_TIMESTAMP_TZ("_airbyte_data":"${column_name}"::TEXT, 'YYYY-MM-DDTHH24:MI:SS.FFTZHTZM') - WHEN "_airbyte_data":"${column_name}"::TEXT REGEXP '\\\\d{4}-\\\\d{2}-\\\\d{2}T(\\\\d{2}:){2}\\\\d{2}\\\\.\\\\d{1,7}(\\\\+|-)\\\\d{2}' - THEN TO_TIMESTAMP_TZ("_airbyte_data":"${column_name}"::TEXT, 'YYYY-MM-DDTHH24:MI:SS.FFTZH') - ELSE TRY_CAST("_airbyte_data":"${column_name}"::TEXT AS TIMESTAMP_TZ) + WHEN (${expression})::TEXT REGEXP '\\\\d{4}-\\\\d{2}-\\\\d{2}T(\\\\d{2}:){2}\\\\d{2}(\\\\+|-)\\\\d{4}' + THEN TO_TIMESTAMP_TZ((${expression})::TEXT, 'YYYY-MM-DDTHH24:MI:SSTZHTZM') + WHEN (${expression})::TEXT REGEXP '\\\\d{4}-\\\\d{2}-\\\\d{2}T(\\\\d{2}:){2}\\\\d{2}(\\\\+|-)\\\\d{2}' + THEN TO_TIMESTAMP_TZ((${expression})::TEXT, 'YYYY-MM-DDTHH24:MI:SSTZH') + WHEN (${expression})::TEXT REGEXP '\\\\d{4}-\\\\d{2}-\\\\d{2}T(\\\\d{2}:){2}\\\\d{2}\\\\.\\\\d{1,7}(\\\\+|-)\\\\d{4}' + THEN TO_TIMESTAMP_TZ((${expression})::TEXT, 'YYYY-MM-DDTHH24:MI:SS.FFTZHTZM') + WHEN (${expression})::TEXT REGEXP '\\\\d{4}-\\\\d{2}-\\\\d{2}T(\\\\d{2}:){2}\\\\d{2}\\\\.\\\\d{1,7}(\\\\+|-)\\\\d{2}' + THEN TO_TIMESTAMP_TZ((${expression})::TEXT, 'YYYY-MM-DDTHH24:MI:SS.FFTZH') + ELSE TRY_CAST((${expression})::TEXT AS TIMESTAMP_TZ) END """); // try_cast doesn't support variant/array/object, so handle them specially - case "VARIANT" -> "\"_airbyte_data\":\"" + escapeIdentifier(column.originalName()) + "\""; + case "VARIANT" -> sqlExpression; // We need to validate that the struct is actually a struct. // Note that struct columns are actually nullable in two ways. For a column `foo`: // {foo: null} and {} are both valid, and are both written to the final table as a SQL NULL (_not_ a // JSON null). - case "OBJECT" -> new StringSubstitutor(Map.of("column_name", escapeIdentifier(column.originalName()))).replace( + case "OBJECT" -> new StringSubstitutor(Map.of("expression", sqlExpression)).replace( """ CASE - WHEN TYPEOF("_airbyte_data":"${column_name}") != 'OBJECT' + WHEN TYPEOF(${expression}) != 'OBJECT' THEN NULL - ELSE "_airbyte_data":"${column_name}" + ELSE ${expression} END """); // Much like the object case, arrays need special handling. - case "ARRAY" -> new StringSubstitutor(Map.of("column_name", escapeIdentifier(column.originalName()))).replace( + case "ARRAY" -> new StringSubstitutor(Map.of("expression", sqlExpression)).replace( """ CASE - WHEN TYPEOF("_airbyte_data":"${column_name}") != 'ARRAY' + WHEN TYPEOF(${expression}) != 'ARRAY' THEN NULL - ELSE "_airbyte_data":"${column_name}" + ELSE ${expression} END """); - default -> "TRY_CAST(\"_airbyte_data\":\"" + escapeIdentifier(column.originalName()) + "\"::text as " + dialectType + ")"; + case "TEXT" -> "((" + sqlExpression + ")::text)"; // we don't need TRY_CAST on strings. + default -> "TRY_CAST((" + sqlExpression + ")::text as " + dialectType + ")"; }; } } @@ -262,17 +299,17 @@ String validatePrimaryKeys(final StreamId id, final String pkNullChecks = primaryKeys.stream().map( pk -> { - final String jsonExtract = extractAndCast(pk, streamColumns.get(pk)); + final String jsonExtract = extractAndCastInsideScript(pk, streamColumns.get(pk)); return "AND " + jsonExtract + " IS NULL"; }).collect(joining("\n")); final String script = new StringSubstitutor(Map.of( "raw_table_id", id.rawTableId(QUOTE), - "raw_table_id_no_single_quotes", escapeSingleQuotedString(id.rawTableId(QUOTE)), + "raw_table_id_for_string", escapeSingleQuotedString(id.rawTableId(QUOTE)), "pk_null_checks", pkNullChecks)).replace( // Wrap this inside a script block so that we can use the scripting language """ - DECLARE _ab_missing_primary_key EXCEPTION (-20001, 'Table ${raw_table_id_no_single_quotes} has rows missing a primary key'); + DECLARE _ab_missing_primary_key EXCEPTION (-20001, 'Table ${raw_table_id_for_string} has rows missing a primary key'); BEGIN LET missing_pk_count INTEGER := ( SELECT COUNT(1) @@ -298,7 +335,7 @@ String insertNewRecords(final StreamConfig stream, final String finalSuffix, fin .collect(joining("\n")); final String columnErrors = streamColumns.entrySet().stream().map( col -> new StringSubstitutor(Map.of( - "raw_col_name", escapeIdentifier(col.getKey().originalName()), + "raw_col_name", escapeJsonIdentifier(col.getKey().originalName()), "printable_col_name", escapeSingleQuotedString(col.getKey().originalName()), "col_type", toDialectType(col.getValue()), "json_extract", extractAndCast(col.getKey(), col.getValue()))).replace( @@ -325,7 +362,7 @@ AND TYPEOF("_airbyte_data":"_ab_cdc_deleted_at") NOT IN ('NULL', 'NULL_VALUE') return new StringSubstitutor(Map.of( "raw_table_id", stream.id().rawTableId(QUOTE), - "final_table_id", stream.id().finalTableId(QUOTE, finalSuffix), + "final_table_id", stream.id().finalTableId(QUOTE, finalSuffix.toUpperCase()), "column_casts", columnCasts, "column_errors", columnErrors, "cdcConditionalOrIncludeStatement", cdcConditionalOrIncludeStatement, @@ -334,9 +371,9 @@ AND TYPEOF("_airbyte_data":"_ab_cdc_deleted_at") NOT IN ('NULL', 'NULL_VALUE') INSERT INTO ${final_table_id} ( ${column_list} - "_airbyte_meta", - "_airbyte_raw_id", - "_airbyte_extracted_at" + "_AIRBYTE_META", + "_AIRBYTE_RAW_ID", + "_AIRBYTE_EXTRACTED_AT" ) WITH intermediate_data AS ( SELECT @@ -351,9 +388,9 @@ WITH intermediate_data AS ( ) SELECT ${column_list} - OBJECT_CONSTRUCT('errors', "_airbyte_cast_errors") AS "_airbyte_meta", - "_airbyte_raw_id", - "_airbyte_extracted_at" + OBJECT_CONSTRUCT('errors', "_airbyte_cast_errors") AS "_AIRBYTE_META", + "_airbyte_raw_id" AS "_AIRBYTE_RAW_ID", + "_airbyte_extracted_at" AS "_AIRBYTE_EXTRACTED_AT" FROM intermediate_data;"""); } @@ -368,15 +405,15 @@ String dedupFinalTable(final StreamId id, .orElse(""); return new StringSubstitutor(Map.of( - "final_table_id", id.finalTableId(QUOTE, finalSuffix), + "final_table_id", id.finalTableId(QUOTE, finalSuffix.toUpperCase()), "pk_list", pkList, "cursor_order_clause", cursorOrderClause)).replace( """ DELETE FROM ${final_table_id} - WHERE "_airbyte_raw_id" IN ( - SELECT "_airbyte_raw_id" FROM ( - SELECT "_airbyte_raw_id", row_number() OVER ( - PARTITION BY ${pk_list} ORDER BY ${cursor_order_clause} "_airbyte_extracted_at" DESC + WHERE "_AIRBYTE_RAW_ID" IN ( + SELECT "_AIRBYTE_RAW_ID" FROM ( + SELECT "_AIRBYTE_RAW_ID", row_number() OVER ( + PARTITION BY ${pk_list} ORDER BY ${cursor_order_clause} "_AIRBYTE_EXTRACTED_AT" DESC ) as row_number FROM ${final_table_id} ) WHERE row_number != 1 @@ -403,7 +440,7 @@ String cdcDeletes(final StreamConfig stream, // we want to grab IDs for deletion from the raw table (not the final table itself) to hand // out-of-order record insertions after the delete has been registered return new StringSubstitutor(Map.of( - "final_table_id", stream.id().finalTableId(QUOTE, finalSuffix), + "final_table_id", stream.id().finalTableId(QUOTE, finalSuffix.toUpperCase()), "raw_table_id", stream.id().rawTableId(QUOTE), "pk_list", pkList, "pk_extracts", pkCasts, @@ -424,14 +461,14 @@ SELECT ARRAY_CONSTRUCT( String dedupRawTable(final StreamId id, final String finalSuffix) { return new StringSubstitutor(Map.of( "raw_table_id", id.rawTableId(QUOTE), - "final_table_id", id.finalTableId(QUOTE, finalSuffix))).replace( + "final_table_id", id.finalTableId(QUOTE, finalSuffix.toUpperCase()))).replace( // Note that this leaves _all_ deletion records in the raw table. We _could_ clear them out, but it // would be painful, // and it only matters in a few edge cases. """ DELETE FROM ${raw_table_id} WHERE "_airbyte_raw_id" NOT IN ( - SELECT "_airbyte_raw_id" FROM ${final_table_id} + SELECT "_AIRBYTE_RAW_ID" FROM ${final_table_id} ); """); } @@ -451,7 +488,7 @@ String commitRawTable(final StreamId id) { public String overwriteFinalTable(final StreamId stream, final String finalSuffix) { return new StringSubstitutor(Map.of( "final_table", stream.finalTableId(QUOTE), - "tmp_final_table", stream.finalTableId(QUOTE, finalSuffix))).replace( + "tmp_final_table", stream.finalTableId(QUOTE, finalSuffix.toUpperCase()))).replace( """ BEGIN TRANSACTION; DROP TABLE IF EXISTS ${final_table}; @@ -462,10 +499,10 @@ public String overwriteFinalTable(final StreamId stream, final String finalSuffi @Override public String softReset(final StreamConfig stream) { - final String createTempTable = createTable(stream, SOFT_RESET_SUFFIX, true); + final String createTempTable = createTable(stream, SOFT_RESET_SUFFIX.toUpperCase(), true); final String clearLoadedAt = clearLoadedAt(stream.id()); - final String rebuildInTempTable = updateTable(stream, SOFT_RESET_SUFFIX, false); - final String overwriteFinalTable = overwriteFinalTable(stream.id(), SOFT_RESET_SUFFIX); + final String rebuildInTempTable = updateTable(stream, SOFT_RESET_SUFFIX.toUpperCase(), false); + final String overwriteFinalTable = overwriteFinalTable(stream.id(), SOFT_RESET_SUFFIX.toUpperCase()); return String.join("\n", createTempTable, clearLoadedAt, rebuildInTempTable, overwriteFinalTable); } @@ -513,20 +550,46 @@ public String migrateFromV1toV2(final StreamId streamId, final String namespace, """); } - public static String escapeIdentifier(final String identifier) { + /** + * Snowflake json object access is done using double-quoted strings, e.g. `SELECT "_airbyte_data":"foo"`. + * As such, we need to escape double-quotes in the field name. + */ + public static String escapeJsonIdentifier(final String identifier) { // Note that we don't need to escape backslashes here! // The only special character in an identifier is the double-quote, which needs to be doubled. return identifier.replace("\"", "\"\""); } + /** + * SQL identifiers are also double-quoted strings. They have slightly more stringent requirements + * than JSON field identifiers. + *

+ * This method is separate from {@link #escapeJsonIdentifier(String)} because we need to retain the + * original field name for JSON access, e.g. `SELECT "_airbyte_data":"${FOO" AS "__FOO"`. + */ + public static String escapeSqlIdentifier(String identifier) { + // Snowflake scripting language does something weird when the `${` bigram shows up in the script + // so replace these with something else. + // For completeness, if we trigger this, also replace closing curly braces with underscores. + if (identifier.contains("${")) { + identifier = identifier + .replace("$", "_") + .replace("{", "_") + .replace("}", "_"); + } + + return escapeJsonIdentifier(identifier); + } + + private static String prefixReservedColumnName(final String columnName) { + return SnowflakeReservedKeywords.RESERVED_COLUMN_NAMES.stream().anyMatch(k -> k.equalsIgnoreCase(columnName)) ? + "_" + columnName : columnName; + } + public static String escapeSingleQuotedString(final String str) { return str .replace("\\", "\\\\") .replace("'", "\\'"); } - public static String escapeDollarString(final String str) { - return str.replace("$$", "\\$\\$"); - } - } diff --git a/airbyte-integrations/connectors/destination-snowflake/src/main/java/io/airbyte/integrations/destination/snowflake/typing_deduping/SnowflakeV2TableMigrator.java b/airbyte-integrations/connectors/destination-snowflake/src/main/java/io/airbyte/integrations/destination/snowflake/typing_deduping/SnowflakeV2TableMigrator.java new file mode 100644 index 000000000000..8ed6ebd9fcf4 --- /dev/null +++ b/airbyte-integrations/connectors/destination-snowflake/src/main/java/io/airbyte/integrations/destination/snowflake/typing_deduping/SnowflakeV2TableMigrator.java @@ -0,0 +1,118 @@ +/* + * Copyright (c) 2023 Airbyte, Inc., all rights reserved. + */ + +package io.airbyte.integrations.destination.snowflake.typing_deduping; + +import static io.airbyte.integrations.base.JavaBaseConstants.DEFAULT_AIRBYTE_INTERNAL_NAMESPACE; +import static io.airbyte.integrations.destination.snowflake.SnowflakeInternalStagingDestination.RAW_SCHEMA_OVERRIDE; + +import io.airbyte.db.jdbc.JdbcDatabase; +import io.airbyte.integrations.base.TypingAndDedupingFlag; +import io.airbyte.integrations.base.destination.typing_deduping.StreamConfig; +import io.airbyte.integrations.base.destination.typing_deduping.StreamId; +import io.airbyte.integrations.base.destination.typing_deduping.V2TableMigrator; +import io.airbyte.protocol.models.v0.DestinationSyncMode; +import java.sql.SQLException; +import java.util.LinkedHashMap; +import java.util.Optional; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class SnowflakeV2TableMigrator implements V2TableMigrator { + + private static final Logger LOGGER = LoggerFactory.getLogger(SnowflakeV2TableMigrator.class); + + private final JdbcDatabase database; + private final String rawNamespace; + private final String databaseName; + private final SnowflakeSqlGenerator generator; + private final SnowflakeDestinationHandler handler; + + public SnowflakeV2TableMigrator(final JdbcDatabase database, + final String databaseName, + final SnowflakeSqlGenerator generator, + final SnowflakeDestinationHandler handler) { + this.database = database; + this.databaseName = databaseName; + this.generator = generator; + this.handler = handler; + this.rawNamespace = TypingAndDedupingFlag.getRawNamespaceOverride(RAW_SCHEMA_OVERRIDE).orElse(DEFAULT_AIRBYTE_INTERNAL_NAMESPACE); + } + + @Override + public void migrateIfNecessary(final StreamConfig streamConfig) throws Exception { + final StreamId caseSensitiveStreamId = buildStreamId_caseSensitive( + streamConfig.id().originalNamespace(), + streamConfig.id().originalName(), + rawNamespace); + final boolean syncModeRequiresMigration = streamConfig.destinationSyncMode() != DestinationSyncMode.OVERWRITE; + final boolean existingTableCaseSensitiveExists = findExistingTable_caseSensitive(caseSensitiveStreamId).isPresent(); + final boolean existingTableUppercaseDoesNotExist = !handler.findExistingTable(streamConfig.id()).isPresent(); + LOGGER.info( + "Checking whether upcasing migration is necessary for {}.{}. Sync mode requires migration: {}; existing case-sensitive table exists: {}; existing uppercased table does not exist: {}", + streamConfig.id().originalNamespace(), + streamConfig.id().originalName(), + syncModeRequiresMigration, + existingTableCaseSensitiveExists, + existingTableUppercaseDoesNotExist); + if (syncModeRequiresMigration && existingTableCaseSensitiveExists && existingTableUppercaseDoesNotExist) { + LOGGER.info( + "Executing upcasing migration for {}.{}", + streamConfig.id().originalNamespace(), + streamConfig.id().originalName()); + handler.execute(generator.softReset(streamConfig)); + } + } + + // These methods were copied from + // https://github.com/airbytehq/airbyte/blob/d5fdb1b982d464f54941bf9a830b9684fb47d249/airbyte-integrations/connectors/destination-snowflake/src/main/java/io/airbyte/integrations/destination/snowflake/typing_deduping/SnowflakeSqlGenerator.java + // which is the highest version of destination-snowflake that still uses quoted+case-sensitive + // identifiers + private static StreamId buildStreamId_caseSensitive(final String namespace, final String name, final String rawNamespaceOverride) { + // No escaping needed, as far as I can tell. We quote all our identifier names. + return new StreamId( + escapeIdentifier_caseSensitive(namespace), + escapeIdentifier_caseSensitive(name), + escapeIdentifier_caseSensitive(rawNamespaceOverride), + escapeIdentifier_caseSensitive(StreamId.concatenateRawTableName(namespace, name)), + namespace, + name); + } + + private static String escapeIdentifier_caseSensitive(final String identifier) { + // Note that we don't need to escape backslashes here! + // The only special character in an identifier is the double-quote, which needs to be doubled. + return identifier.replace("\"", "\"\""); + } + + // And this was taken from + // https://github.com/airbytehq/airbyte/blob/master/airbyte-integrations/connectors/destination-snowflake/src/main/java/io/airbyte/integrations/destination/snowflake/typing_deduping/SnowflakeDestinationHandler.java + public Optional findExistingTable_caseSensitive(final StreamId id) throws SQLException { + // The obvious database.getMetaData().getColumns() solution doesn't work, because JDBC translates + // VARIANT as VARCHAR + final LinkedHashMap columns = database.queryJsons( + """ + SELECT column_name, data_type + FROM information_schema.columns + WHERE table_catalog = ? + AND table_schema = ? + AND table_name = ? + ORDER BY ordinal_position; + """, + databaseName.toUpperCase(), + id.finalNamespace(), + id.finalName()).stream() + .collect(LinkedHashMap::new, + (map, row) -> map.put(row.get("COLUMN_NAME").asText(), row.get("DATA_TYPE").asText()), + LinkedHashMap::putAll); + // TODO query for indexes/partitioning/etc + + if (columns.isEmpty()) { + return Optional.empty(); + } else { + return Optional.of(new SnowflakeTableDefinition(columns)); + } + } + +} diff --git a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/java/io/airbyte/integrations/destination/snowflake/SnowflakeTestUtils.java b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/java/io/airbyte/integrations/destination/snowflake/SnowflakeTestUtils.java index a4f0aadd1cd5..e97a435d2258 100644 --- a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/java/io/airbyte/integrations/destination/snowflake/SnowflakeTestUtils.java +++ b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/java/io/airbyte/integrations/destination/snowflake/SnowflakeTestUtils.java @@ -7,12 +7,14 @@ import static java.util.stream.Collectors.joining; import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.node.ObjectNode; import io.airbyte.db.jdbc.JdbcDatabase; import io.airbyte.integrations.base.JavaBaseConstants; import io.airbyte.integrations.destination.snowflake.typing_deduping.SnowflakeSqlGenerator; import java.sql.SQLException; import java.util.List; import java.util.Map; +import java.util.stream.Stream; import org.apache.commons.text.StringSubstitutor; public class SnowflakeTestUtils { @@ -25,7 +27,9 @@ public static List dumpRawTable(final JdbcDatabase database, final Str timestampToString(quote(JavaBaseConstants.COLUMN_NAME_AB_LOADED_AT)), quote(JavaBaseConstants.COLUMN_NAME_DATA)), database, - tableIdentifier); + tableIdentifier, + // Raw tables still have lowercase names + false); } public static List dumpFinalTable(final JdbcDatabase database, final String databaseName, final String schema, final String table) @@ -41,9 +45,9 @@ public static List dumpFinalTable(final JdbcDatabase database, final S AND table_name = ? ORDER BY ordinal_position; """, - unescapeIdentifier(databaseName), - unescapeIdentifier(schema), - unescapeIdentifier(table)).stream() + unescapeIdentifier(databaseName).toUpperCase(), + unescapeIdentifier(schema).toUpperCase(), + unescapeIdentifier(table).toUpperCase()).stream() .map(column -> { final String quotedName = quote(column.get("COLUMN_NAME").asText()); final String type = column.get("DATA_TYPE").asText(); @@ -59,7 +63,7 @@ public static List dumpFinalTable(final JdbcDatabase database, final S }; }) .toList(); - return dumpTable(columns, database, quote(schema) + "." + quote(table)); + return dumpTable(columns, database, quote(schema) + "." + quote(table), true); } /** @@ -71,18 +75,38 @@ public static List dumpFinalTable(final JdbcDatabase database, final S * * @param tableIdentifier Table identifier (e.g. "schema.table"), with quotes if necessary. */ - public static List dumpTable(final List columns, final JdbcDatabase database, final String tableIdentifier) throws SQLException { + public static List dumpTable(final List columns, + final JdbcDatabase database, + final String tableIdentifier, + final boolean upcaseExtractedAt) + throws SQLException { return database.bufferedResultSetQuery(connection -> connection.createStatement().executeQuery(new StringSubstitutor(Map.of( "columns", columns.stream().collect(joining(",")), - "table", tableIdentifier)).replace( + "table", tableIdentifier, + "extracted_at", upcaseExtractedAt ? "_AIRBYTE_EXTRACTED_AT" : "\"_airbyte_extracted_at\"")).replace( """ - SELECT ${columns} FROM ${table} ORDER BY "_airbyte_extracted_at" ASC + SELECT ${columns} FROM ${table} ORDER BY ${extracted_at} ASC """)), - new SnowflakeTestSourceOperations()::rowToJson); + new SnowflakeTestSourceOperations()::rowToJson) + .stream().peek(row -> { + // Downcase the airbyte_* fields so that our test framework can recognize them. + Stream.of( + JavaBaseConstants.COLUMN_NAME_AB_RAW_ID, + JavaBaseConstants.COLUMN_NAME_AB_EXTRACTED_AT, + JavaBaseConstants.COLUMN_NAME_AB_LOADED_AT, + JavaBaseConstants.COLUMN_NAME_DATA, + JavaBaseConstants.COLUMN_NAME_AB_META).forEach(columnName -> { + final JsonNode value = row.get(columnName.toUpperCase()); + if (value != null) { + ((ObjectNode) row).set(columnName, value); + ((ObjectNode) row).remove(columnName.toUpperCase()); + } + }); + }).toList(); } private static String quote(final String name) { - return '"' + SnowflakeSqlGenerator.escapeIdentifier(name) + '"'; + return '"' + SnowflakeSqlGenerator.escapeJsonIdentifier(name) + '"'; } public static String timestampToString(final String quotedName) { diff --git a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/java/io/airbyte/integrations/destination/snowflake/typing_deduping/AbstractSnowflakeTypingDedupingTest.java b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/java/io/airbyte/integrations/destination/snowflake/typing_deduping/AbstractSnowflakeTypingDedupingTest.java index 8fb2205f62da..5fab649a06b9 100644 --- a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/java/io/airbyte/integrations/destination/snowflake/typing_deduping/AbstractSnowflakeTypingDedupingTest.java +++ b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/java/io/airbyte/integrations/destination/snowflake/typing_deduping/AbstractSnowflakeTypingDedupingTest.java @@ -13,13 +13,21 @@ import io.airbyte.db.jdbc.JdbcUtils; import io.airbyte.integrations.base.JavaBaseConstants; import io.airbyte.integrations.base.destination.typing_deduping.BaseTypingDedupingTest; +import io.airbyte.integrations.base.destination.typing_deduping.SqlGenerator; import io.airbyte.integrations.base.destination.typing_deduping.StreamId; import io.airbyte.integrations.destination.snowflake.OssCloudEnvVarConsts; import io.airbyte.integrations.destination.snowflake.SnowflakeDatabase; import io.airbyte.integrations.destination.snowflake.SnowflakeTestUtils; +import io.airbyte.protocol.models.v0.AirbyteMessage; +import io.airbyte.protocol.models.v0.AirbyteStream; +import io.airbyte.protocol.models.v0.ConfiguredAirbyteCatalog; +import io.airbyte.protocol.models.v0.ConfiguredAirbyteStream; +import io.airbyte.protocol.models.v0.DestinationSyncMode; +import io.airbyte.protocol.models.v0.SyncMode; import java.nio.file.Path; import java.util.List; import javax.sql.DataSource; +import org.junit.jupiter.api.Test; public abstract class AbstractSnowflakeTypingDedupingTest extends BaseTypingDedupingTest { @@ -62,7 +70,7 @@ protected List dumpFinalTableRecords(String streamNamespace, final Str if (streamNamespace == null) { streamNamespace = getDefaultSchema(); } - return SnowflakeTestUtils.dumpFinalTable(database, databaseName, streamNamespace, streamName); + return SnowflakeTestUtils.dumpFinalTable(database, databaseName, streamNamespace.toUpperCase(), streamName.toUpperCase()); } @Override @@ -77,8 +85,9 @@ protected void teardownStreamAndNamespace(String streamNamespace, final String s DROP SCHEMA IF EXISTS "%s" CASCADE """, getRawSchema(), + // Raw table is still lowercase. StreamId.concatenateRawTableName(streamNamespace, streamName), - streamNamespace)); + streamNamespace.toUpperCase())); } @Override @@ -86,6 +95,11 @@ protected void globalTeardown() throws Exception { DataSourceFactory.close(dataSource); } + @Override + protected SqlGenerator getSqlGenerator() { + return new SnowflakeSqlGenerator(); + } + /** * Subclasses using a config with a nonstandard raw table schema should override this method. */ @@ -93,6 +107,76 @@ protected String getRawSchema() { return JavaBaseConstants.DEFAULT_AIRBYTE_INTERNAL_NAMESPACE; } + /** + * Run a sync using 3.0.0 (which is the highest version that still creates v2 final tables with + * lowercased+quoted names). Then run a sync using our current version. + */ + @Test + public void testFinalTableUppercasingMigration_append() throws Exception { + try { + final ConfiguredAirbyteCatalog catalog = new ConfiguredAirbyteCatalog().withStreams(List.of( + new ConfiguredAirbyteStream() + .withSyncMode(SyncMode.FULL_REFRESH) + .withDestinationSyncMode(DestinationSyncMode.APPEND) + .withStream(new AirbyteStream() + .withNamespace(streamNamespace) + .withName(streamName) + .withJsonSchema(SCHEMA)))); + + // First sync + final List messages1 = readMessages("dat/sync1_messages.jsonl"); + runSync(catalog, messages1, "airbyte/destination-snowflake:3.0.0"); + // We no longer have the code to dump a lowercased table, so just move on directly to the new sync + + // Second sync + final List messages2 = readMessages("dat/sync2_messages.jsonl"); + + runSync(catalog, messages2); + + final List expectedRawRecords2 = readRecords("dat/sync2_expectedrecords_fullrefresh_append_raw.jsonl"); + final List expectedFinalRecords2 = readRecords("dat/sync2_expectedrecords_fullrefresh_append_final.jsonl"); + verifySyncResult(expectedRawRecords2, expectedFinalRecords2); + } finally { + // manually drop the lowercased schema, since we no longer have the code to do it automatically + // (the raw table is still in lowercase "airbyte_internal"."whatever", so the auto-cleanup code + // handles it fine) + database.execute("DROP SCHEMA IF EXISTS \"" + streamNamespace + "\" CASCADE"); + } + } + + @Test + public void testFinalTableUppercasingMigration_overwrite() throws Exception { + try { + final ConfiguredAirbyteCatalog catalog = new ConfiguredAirbyteCatalog().withStreams(List.of( + new ConfiguredAirbyteStream() + .withSyncMode(SyncMode.FULL_REFRESH) + .withDestinationSyncMode(DestinationSyncMode.OVERWRITE) + .withStream(new AirbyteStream() + .withNamespace(streamNamespace) + .withName(streamName) + .withJsonSchema(SCHEMA)))); + + // First sync + final List messages1 = readMessages("dat/sync1_messages.jsonl"); + runSync(catalog, messages1, "airbyte/destination-snowflake:3.0.0"); + // We no longer have the code to dump a lowercased table, so just move on directly to the new sync + + // Second sync + final List messages2 = readMessages("dat/sync2_messages.jsonl"); + + runSync(catalog, messages2); + + final List expectedRawRecords2 = readRecords("dat/sync2_expectedrecords_fullrefresh_overwrite_raw.jsonl"); + final List expectedFinalRecords2 = readRecords("dat/sync2_expectedrecords_fullrefresh_overwrite_final.jsonl"); + verifySyncResult(expectedRawRecords2, expectedFinalRecords2); + } finally { + // manually drop the lowercased schema, since we no longer have the code to do it automatically + // (the raw table is still in lowercase "airbyte_internal"."whatever", so the auto-cleanup code + // handles it fine) + database.execute("DROP SCHEMA IF EXISTS \"" + streamNamespace + "\" CASCADE"); + } + } + private String getDefaultSchema() { return getConfig().get("schema").asText(); } diff --git a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/java/io/airbyte/integrations/destination/snowflake/typing_deduping/SnowflakeSqlGeneratorIntegrationTest.java b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/java/io/airbyte/integrations/destination/snowflake/typing_deduping/SnowflakeSqlGeneratorIntegrationTest.java index 0cb175db21a7..26c28944495a 100644 --- a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/java/io/airbyte/integrations/destination/snowflake/typing_deduping/SnowflakeSqlGeneratorIntegrationTest.java +++ b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/java/io/airbyte/integrations/destination/snowflake/typing_deduping/SnowflakeSqlGeneratorIntegrationTest.java @@ -73,9 +73,14 @@ protected SnowflakeDestinationHandler getDestinationHandler() { return new SnowflakeDestinationHandler(databaseName, database); } + @Override + protected StreamId buildStreamId(final String namespace, final String finalTableName, final String rawTableName) { + return new StreamId(namespace.toUpperCase(), finalTableName.toUpperCase(), namespace.toUpperCase(), rawTableName, namespace, finalTableName); + } + @Override protected void createNamespace(final String namespace) throws SQLException { - database.execute("CREATE SCHEMA IF NOT EXISTS \"" + namespace + '"'); + database.execute("CREATE SCHEMA IF NOT EXISTS \"" + namespace.toUpperCase() + '"'); } @Override @@ -103,12 +108,12 @@ protected List dumpFinalTableRecords(final StreamId streamId, final St database, databaseName, streamId.finalNamespace(), - streamId.finalName() + suffix); + streamId.finalName() + suffix.toUpperCase()); } @Override protected void teardownNamespace(final String namespace) throws SQLException { - database.execute("DROP SCHEMA IF EXISTS \"" + namespace + '"'); + database.execute("DROP SCHEMA IF EXISTS \"" + namespace.toUpperCase() + '"'); } @Override @@ -118,7 +123,7 @@ protected void insertFinalTableRecords(final boolean includeCdcDeletedAt, final List records) throws Exception { final List columnNames = includeCdcDeletedAt ? FINAL_TABLE_COLUMN_NAMES_CDC : FINAL_TABLE_COLUMN_NAMES; - final String cdcDeletedAtName = includeCdcDeletedAt ? ",\"_ab_cdc_deleted_at\"" : ""; + final String cdcDeletedAtName = includeCdcDeletedAt ? ",\"_AB_CDC_DELETED_AT\"" : ""; final String cdcDeletedAtExtract = includeCdcDeletedAt ? ",column19" : ""; final String recordsText = records.stream() // For each record, convert it to a string like "(rawId, extractedAt, loadedAt, data)" @@ -131,7 +136,7 @@ protected void insertFinalTableRecords(final boolean includeCdcDeletedAt, database.execute(new StringSubstitutor( Map.of( - "final_table_id", streamId.finalTableId(SnowflakeSqlGenerator.QUOTE, suffix), + "final_table_id", streamId.finalTableId(SnowflakeSqlGenerator.QUOTE, suffix.toUpperCase()), "cdc_deleted_at_name", cdcDeletedAtName, "cdc_deleted_at_extract", cdcDeletedAtExtract, "records", recordsText), @@ -141,24 +146,24 @@ protected void insertFinalTableRecords(final boolean includeCdcDeletedAt, // parse_json(). """ INSERT INTO #{final_table_id} ( - "_airbyte_raw_id", - "_airbyte_extracted_at", - "_airbyte_meta", - "id1", - "id2", - "updated_at", - "struct", - "array", - "string", - "number", - "integer", - "boolean", - "timestamp_with_timezone", - "timestamp_without_timezone", - "time_with_timezone", - "time_without_timezone", - "date", - "unknown" + "_AIRBYTE_RAW_ID", + "_AIRBYTE_EXTRACTED_AT", + "_AIRBYTE_META", + "ID1", + "ID2", + "UPDATED_AT", + "STRUCT", + "ARRAY", + "STRING", + "NUMBER", + "INTEGER", + "BOOLEAN", + "TIMESTAMP_WITH_TIMEZONE", + "TIMESTAMP_WITHOUT_TIMEZONE", + "TIME_WITH_TIMEZONE", + "TIME_WITHOUT_TIMEZONE", + "DATE", + "UNKNOWN" #{cdc_deleted_at_name} ) SELECT @@ -237,9 +242,12 @@ public void testCreateTableIncremental() throws Exception { final String sql = generator.createTable(incrementalDedupStream, "", false); destinationHandler.execute(sql); - final Optional tableKind = database.queryJsons(String.format("SHOW TABLES LIKE '%s' IN SCHEMA \"%s\";", "users_final", namespace)) - .stream().map(record -> record.get("kind").asText()) - .findFirst(); + // Note that USERS_FINAL is uppercased here. This is intentional, because snowflake upcases unquoted + // identifiers. + final Optional tableKind = + database.queryJsons(String.format("SHOW TABLES LIKE '%s' IN SCHEMA \"%s\";", "USERS_FINAL", namespace.toUpperCase())) + .stream().map(record -> record.get("kind").asText()) + .findFirst(); final Map columns = database.queryJsons( """ SELECT column_name, data_type, numeric_precision, numeric_scale @@ -250,8 +258,8 @@ public void testCreateTableIncremental() throws Exception { ORDER BY ordinal_position; """, databaseName, - namespace, - "users_final").stream() + namespace.toUpperCase(), + "USERS_FINAL").stream() .collect(toMap( record -> record.get("COLUMN_NAME").asText(), record -> { @@ -266,24 +274,24 @@ record -> { () -> assertEquals(Optional.of("TABLE"), tableKind, "Table should be permanent, not transient"), () -> assertEquals( ImmutableMap.builder() - .put("_airbyte_raw_id", "TEXT") - .put("_airbyte_extracted_at", "TIMESTAMP_TZ") - .put("_airbyte_meta", "VARIANT") - .put("id1", "NUMBER(38, 0)") - .put("id2", "NUMBER(38, 0)") - .put("updated_at", "TIMESTAMP_TZ") - .put("struct", "OBJECT") - .put("array", "ARRAY") - .put("string", "TEXT") - .put("number", "FLOAT") - .put("integer", "NUMBER(38, 0)") - .put("boolean", "BOOLEAN") - .put("timestamp_with_timezone", "TIMESTAMP_TZ") - .put("timestamp_without_timezone", "TIMESTAMP_NTZ") - .put("time_with_timezone", "TEXT") - .put("time_without_timezone", "TIME") - .put("date", "DATE") - .put("unknown", "VARIANT") + .put("_AIRBYTE_RAW_ID", "TEXT") + .put("_AIRBYTE_EXTRACTED_AT", "TIMESTAMP_TZ") + .put("_AIRBYTE_META", "VARIANT") + .put("ID1", "NUMBER(38, 0)") + .put("ID2", "NUMBER(38, 0)") + .put("UPDATED_AT", "TIMESTAMP_TZ") + .put("STRUCT", "OBJECT") + .put("ARRAY", "ARRAY") + .put("STRING", "TEXT") + .put("NUMBER", "FLOAT") + .put("INTEGER", "NUMBER(38, 0)") + .put("BOOLEAN", "BOOLEAN") + .put("TIMESTAMP_WITH_TIMEZONE", "TIMESTAMP_TZ") + .put("TIMESTAMP_WITHOUT_TIMEZONE", "TIMESTAMP_NTZ") + .put("TIME_WITH_TIMEZONE", "TEXT") + .put("TIME_WITHOUT_TIMEZONE", "TIME") + .put("DATE", "DATE") + .put("UNKNOWN", "VARIANT") .build(), columns)); } @@ -319,7 +327,7 @@ public void incrementalDedupInvalidPrimaryKey() throws Exception { final String sql = generator.updateTable(incrementalDedupStream, ""); final Exception exception = assertThrows( - SnowflakeSQLException.class, + RuntimeException.class, () -> destinationHandler.execute(sql)); assertTrue(exception.getMessage().contains("_AB_MISSING_PRIMARY_KEY")); diff --git a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync1_cursorchange_expectedrecords_dedup_final.jsonl b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync1_cursorchange_expectedrecords_dedup_final.jsonl index bf928d688997..d4b74d4d1854 100644 --- a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync1_cursorchange_expectedrecords_dedup_final.jsonl +++ b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync1_cursorchange_expectedrecords_dedup_final.jsonl @@ -1,3 +1,3 @@ -{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":[]}, "id1": 1, "id2": 200, "old_cursor": 1, "name": "Alice", "address": {"city": "Los Angeles", "state": "CA"}} -{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":[]}, "id1": 1, "id2": 201, "old_cursor": 2, "name": "Bob", "address": {"city": "Boston", "state": "MA"}} -{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":["Problem with `age`", "Problem with `registration_date`"]}, "id1": 2, "id2": 200, "old_cursor": 3, "name": "Charlie"} +{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":[]}, "ID1": 1, "ID2": 200, "OLD_CURSOR": 1, "NAME": "Alice", "ADDRESS": {"city": "Los Angeles", "state": "CA"}} +{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":[]}, "ID1": 1, "ID2": 201, "OLD_CURSOR": 2, "NAME": "Bob", "ADDRESS": {"city": "Boston", "state": "MA"}} +{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":["Problem with `age`", "Problem with `registration_date`"]}, "ID1": 2, "ID2": 200, "OLD_CURSOR": 3, "NAME": "Charlie"} diff --git a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync1_expectedrecords_dedup_final.jsonl b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync1_expectedrecords_dedup_final.jsonl index f30261d6154c..5bedb75674ad 100644 --- a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync1_expectedrecords_dedup_final.jsonl +++ b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync1_expectedrecords_dedup_final.jsonl @@ -1,4 +1,4 @@ -// Keep the Alice record with more recent updated_at -{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":[]}, "id1": 1, "id2": 200, "updated_at": "2000-01-01T00:01:00.000000000Z", "name": "Alice", "address": {"city": "Los Angeles", "state": "CA"}} -{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":[]}, "id1": 1, "id2": 201, "updated_at": "2000-01-01T00:02:00.000000000Z", "name": "Bob", "address": {"city": "Boston", "state": "MA"}} -{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":["Problem with `age`", "Problem with `registration_date`"]}, "id1": 2, "id2": 200, "updated_at": "2000-01-01T00:03:00.000000000Z", "name": "Charlie"} +// Keep the Alice record with more recent UPDATED_AT +{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":[]}, "ID1": 1, "ID2": 200, "UPDATED_AT": "2000-01-01T00:01:00.000000000Z", "NAME": "Alice", "ADDRESS": {"city": "Los Angeles", "state": "CA"}} +{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":[]}, "ID1": 1, "ID2": 201, "UPDATED_AT": "2000-01-01T00:02:00.000000000Z", "NAME": "Bob", "ADDRESS": {"city": "Boston", "state": "MA"}} +{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":["Problem with `age`", "Problem with `registration_date`"]}, "ID1": 2, "ID2": 200, "UPDATED_AT": "2000-01-01T00:03:00.000000000Z", "NAME": "Charlie"} diff --git a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync1_expectedrecords_nondedup_final.jsonl b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync1_expectedrecords_nondedup_final.jsonl index a26cf1d5289d..e9a97a6e9f84 100644 --- a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync1_expectedrecords_nondedup_final.jsonl +++ b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync1_expectedrecords_nondedup_final.jsonl @@ -1,5 +1,5 @@ -{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":[]}, "id1": 1, "id2": 200, "updated_at": "2000-01-01T00:00:00.000000000Z", "name": "Alice", "address": {"city": "San Francisco", "state": "CA"}} -{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":[]}, "id1": 1, "id2": 200, "updated_at": "2000-01-01T00:01:00.000000000Z", "name": "Alice", "address": {"city": "Los Angeles", "state": "CA"}} -{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":[]}, "id1": 1, "id2": 201, "updated_at": "2000-01-01T00:02:00.000000000Z", "name": "Bob", "address": {"city": "Boston", "state": "MA"}} +{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":[]}, "ID1": 1, "ID2": 200, "UPDATED_AT": "2000-01-01T00:00:00.000000000Z", "NAME": "Alice", "ADDRESS": {"city": "San Francisco", "state": "CA"}} +{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":[]}, "ID1": 1, "ID2": 200, "UPDATED_AT": "2000-01-01T00:01:00.000000000Z", "NAME": "Alice", "ADDRESS": {"city": "Los Angeles", "state": "CA"}} +{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":[]}, "ID1": 1, "ID2": 201, "UPDATED_AT": "2000-01-01T00:02:00.000000000Z", "NAME": "Bob", "ADDRESS": {"city": "Boston", "state": "MA"}} // Invalid columns are nulled out (i.e. SQL null, not JSON null) -{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":["Problem with `age`", "Problem with `registration_date`"]}, "id1": 2, "id2": 200, "updated_at": "2000-01-01T00:03:00.000000000Z", "name": "Charlie"} +{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":["Problem with `age`", "Problem with `registration_date`"]}, "ID1": 2, "ID2": 200, "UPDATED_AT": "2000-01-01T00:03:00.000000000Z", "NAME": "Charlie"} diff --git a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync2_cursorchange_expectedrecords_incremental_dedup_final.jsonl b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync2_cursorchange_expectedrecords_incremental_dedup_final.jsonl index 7ac3264abcc4..f690e7ff76db 100644 --- a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync2_cursorchange_expectedrecords_incremental_dedup_final.jsonl +++ b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync2_cursorchange_expectedrecords_incremental_dedup_final.jsonl @@ -1,3 +1,3 @@ -{"_airbyte_extracted_at": "1970-01-01T00:00:02.000000000-08:00", "_airbyte_meta":{"errors":[]}, "id1": 1, "id2": 200, "updated_at": "2000-01-02T00:00:00.000000000Z", "name": "Alice", "address": {"city": "Seattle", "state": "WA"}} -// Charlie wasn't reemitted with updated_at, so it still has a null cursor -{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":["Problem with `age`", "Problem with `registration_date`"]}, "id1": 2, "id2": 200, "name": "Charlie"} +{"_airbyte_extracted_at": "1970-01-01T00:00:02.000000000-08:00", "_airbyte_meta":{"errors":[]}, "ID1": 1, "ID2": 200, "UPDATED_AT": "2000-01-02T00:00:00.000000000Z", "NAME": "Alice", "ADDRESS": {"city": "Seattle", "state": "WA"}} +// Charlie wasn't reemitted with UPDATED_AT, so it still has a null cursor +{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":["Problem with `age`", "Problem with `registration_date`"]}, "ID1": 2, "ID2": 200, "NAME": "Charlie"} diff --git a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync2_expectedrecords_fullrefresh_append_final.jsonl b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync2_expectedrecords_fullrefresh_append_final.jsonl index fd96bc516169..66d6eb2f4564 100644 --- a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync2_expectedrecords_fullrefresh_append_final.jsonl +++ b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync2_expectedrecords_fullrefresh_append_final.jsonl @@ -1,8 +1,8 @@ -{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":[]}, "id1": 1, "id2": 200, "updated_at": "2000-01-01T00:00:00.000000000Z", "name": "Alice", "address": {"city": "San Francisco", "state": "CA"}} -{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":[]}, "id1": 1, "id2": 200, "updated_at": "2000-01-01T00:01:00.000000000Z", "name": "Alice", "address": {"city": "Los Angeles", "state": "CA"}} -{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":[]}, "id1": 1, "id2": 201, "updated_at": "2000-01-01T00:02:00.000000000Z", "name": "Bob", "address": {"city": "Boston", "state": "MA"}} -{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":["Problem with `age`", "Problem with `registration_date`"]}, "id1": 2, "id2": 200, "updated_at": "2000-01-01T00:03:00.000000000Z", "name": "Charlie"} +{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":[]}, "ID1": 1, "ID2": 200, "UPDATED_AT": "2000-01-01T00:00:00.000000000Z", "NAME": "Alice", "ADDRESS": {"city": "San Francisco", "state": "CA"}} +{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":[]}, "ID1": 1, "ID2": 200, "UPDATED_AT": "2000-01-01T00:01:00.000000000Z", "NAME": "Alice", "ADDRESS": {"city": "Los Angeles", "state": "CA"}} +{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":[]}, "ID1": 1, "ID2": 201, "UPDATED_AT": "2000-01-01T00:02:00.000000000Z", "NAME": "Bob", "ADDRESS": {"city": "Boston", "state": "MA"}} +{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":["Problem with `age`", "Problem with `registration_date`"]}, "ID1": 2, "ID2": 200, "UPDATED_AT": "2000-01-01T00:03:00.000000000Z", "NAME": "Charlie"} -{"_airbyte_extracted_at": "1970-01-01T00:00:02.000000000-08:00", "_airbyte_meta":{"errors":[]}, "id1": 1, "id2": 200, "updated_at": "2000-01-02T00:00:00.000000000Z", "name": "Alice", "address": {"city": "Seattle", "state": "WA"}} -{"_airbyte_extracted_at": "1970-01-01T00:00:02.000000000-08:00", "_airbyte_meta":{"errors":[]}, "id1": 1, "id2": 201, "updated_at": "2000-01-02T00:00:00.000000000Z", "name": "Bob", "address": {"city": "New York", "state": "NY"}} -{"_airbyte_extracted_at": "1970-01-01T00:00:02.000000000-08:00", "_airbyte_meta":{"errors":[]}, "id1": 1, "id2": 201, "updated_at": "2000-01-02T00:01:00.000000000Z", "_ab_cdc_deleted_at": "1970-01-01T00:00:00.000000000Z"} +{"_airbyte_extracted_at": "1970-01-01T00:00:02.000000000-08:00", "_airbyte_meta":{"errors":[]}, "ID1": 1, "ID2": 200, "UPDATED_AT": "2000-01-02T00:00:00.000000000Z", "NAME": "Alice", "ADDRESS": {"city": "Seattle", "state": "WA"}} +{"_airbyte_extracted_at": "1970-01-01T00:00:02.000000000-08:00", "_airbyte_meta":{"errors":[]}, "ID1": 1, "ID2": 201, "UPDATED_AT": "2000-01-02T00:00:00.000000000Z", "NAME": "Bob", "ADDRESS": {"city": "New York", "state": "NY"}} +{"_airbyte_extracted_at": "1970-01-01T00:00:02.000000000-08:00", "_airbyte_meta":{"errors":[]}, "ID1": 1, "ID2": 201, "UPDATED_AT": "2000-01-02T00:01:00.000000000Z", "_AB_CDC_DELETED_AT": "1970-01-01T00:00:00.000000000Z"} diff --git a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync2_expectedrecords_fullrefresh_overwrite_final.jsonl b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync2_expectedrecords_fullrefresh_overwrite_final.jsonl index da89677485f0..fc4c3ae500bb 100644 --- a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync2_expectedrecords_fullrefresh_overwrite_final.jsonl +++ b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync2_expectedrecords_fullrefresh_overwrite_final.jsonl @@ -1,3 +1,3 @@ -{"_airbyte_extracted_at": "1970-01-01T00:00:02.000000000-08:00", "_airbyte_meta":{"errors":[]}, "id1": 1, "id2": 200, "updated_at": "2000-01-02T00:00:00.000000000Z", "name": "Alice", "address": {"city": "Seattle", "state": "WA"}} -{"_airbyte_extracted_at": "1970-01-01T00:00:02.000000000-08:00", "_airbyte_meta":{"errors":[]}, "id1": 1, "id2": 201, "updated_at": "2000-01-02T00:00:00.000000000Z", "name": "Bob", "address": {"city": "New York", "state": "NY"}} -{"_airbyte_extracted_at": "1970-01-01T00:00:02.000000000-08:00", "_airbyte_meta":{"errors":[]}, "id1": 1, "id2": 201, "updated_at": "2000-01-02T00:01:00.000000000Z", "_ab_cdc_deleted_at": "1970-01-01T00:00:00.000000000Z"} +{"_airbyte_extracted_at": "1970-01-01T00:00:02.000000000-08:00", "_airbyte_meta":{"errors":[]}, "ID1": 1, "ID2": 200, "UPDATED_AT": "2000-01-02T00:00:00.000000000Z", "NAME": "Alice", "ADDRESS": {"city": "Seattle", "state": "WA"}} +{"_airbyte_extracted_at": "1970-01-01T00:00:02.000000000-08:00", "_airbyte_meta":{"errors":[]}, "ID1": 1, "ID2": 201, "UPDATED_AT": "2000-01-02T00:00:00.000000000Z", "NAME": "Bob", "ADDRESS": {"city": "New York", "state": "NY"}} +{"_airbyte_extracted_at": "1970-01-01T00:00:02.000000000-08:00", "_airbyte_meta":{"errors":[]}, "ID1": 1, "ID2": 201, "UPDATED_AT": "2000-01-02T00:01:00.000000000Z", "_AB_CDC_DELETED_AT": "1970-01-01T00:00:00.000000000Z"} diff --git a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync2_expectedrecords_incremental_dedup_final.jsonl b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync2_expectedrecords_incremental_dedup_final.jsonl index 96442a4e7fcd..c4db7356aed2 100644 --- a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync2_expectedrecords_incremental_dedup_final.jsonl +++ b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/dat/sync2_expectedrecords_incremental_dedup_final.jsonl @@ -1,3 +1,3 @@ -{"_airbyte_extracted_at": "1970-01-01T00:00:02.000000000-08:00", "_airbyte_meta":{"errors":[]}, "id1": 1, "id2": 200, "updated_at": "2000-01-02T00:00:00.000000000Z", "name": "Alice", "address": {"city": "Seattle", "state": "WA"}} +{"_airbyte_extracted_at": "1970-01-01T00:00:02.000000000-08:00", "_airbyte_meta":{"errors":[]}, "ID1": 1, "ID2": 200, "UPDATED_AT": "2000-01-02T00:00:00.000000000Z", "NAME": "Alice", "ADDRESS": {"city": "Seattle", "state": "WA"}} // Delete Bob, keep Charlie -{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":["Problem with `age`", "Problem with `registration_date`"]}, "id1": 2, "id2": 200, "updated_at": "2000-01-01T00:03:00.000000000Z", "name": "Charlie"} +{"_airbyte_extracted_at": "1970-01-01T00:00:01.000000000-08:00", "_airbyte_meta": {"errors":["Problem with `age`", "Problem with `registration_date`"]}, "ID1": 2, "ID2": 200, "UPDATED_AT": "2000-01-01T00:03:00.000000000Z", "NAME": "Charlie"} diff --git a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/sqlgenerator/alltypes_expectedrecords_final.jsonl b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/sqlgenerator/alltypes_expectedrecords_final.jsonl index c17a8134a49e..0e33c0f49437 100644 --- a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/sqlgenerator/alltypes_expectedrecords_final.jsonl +++ b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/sqlgenerator/alltypes_expectedrecords_final.jsonl @@ -1,6 +1,6 @@ -{"id1": 1, "id2": 100, "updated_at": "2023-01-01T01:00:00.000000000Z", "array": ["foo"], "struct": {"foo": "bar"}, "string": "foo", "number": 42.1, "integer": 42, "boolean": true, "timestamp_with_timezone": "2023-01-23T12:34:56.000000000Z", "timestamp_without_timezone": "2023-01-23T12:34:56.000000000", "time_with_timezone": "12:34:56Z", "time_without_timezone": "12:34:56.000000000", "date": "2023-01-23", "unknown": {}, "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}} -{"id1": 2, "id2": 100, "updated_at": "2023-01-01T01:00:00.000000000Z", "unknown": null, "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}} -{"id1": 3, "id2": 100, "updated_at": "2023-01-01T01:00:00.000000000Z", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}} -{"id1": 4, "id2": 100, "updated_at": "2023-01-01T01:00:00.000000000Z", "unknown": null, "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": ["Problem with `struct`", "Problem with `array`", "Problem with `number`", "Problem with `integer`", "Problem with `boolean`", "Problem with `timestamp_with_timezone`", "Problem with `timestamp_without_timezone`", "Problem with `time_with_timezone`", "Problem with `time_without_timezone`", "Problem with `date`"]}, "string": "{}"} +{"ID1": 1, "ID2": 100, "UPDATED_AT": "2023-01-01T01:00:00.000000000Z", "ARRAY": ["foo"], "STRUCT": {"foo": "bar"}, "STRING": "foo", "NUMBER": 42.1, "INTEGER": 42, "BOOLEAN": true, "TIMESTAMP_WITH_TIMEZONE": "2023-01-23T12:34:56.000000000Z", "TIMESTAMP_WITHOUT_TIMEZONE": "2023-01-23T12:34:56.000000000", "TIME_WITH_TIMEZONE": "12:34:56Z", "TIME_WITHOUT_TIMEZONE": "12:34:56.000000000", "DATE": "2023-01-23", "UNKNOWN": {}, "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}} +{"ID1": 2, "ID2": 100, "UPDATED_AT": "2023-01-01T01:00:00.000000000Z", "UNKNOWN": null, "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}} +{"ID1": 3, "ID2": 100, "UPDATED_AT": "2023-01-01T01:00:00.000000000Z", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}} +{"ID1": 4, "ID2": 100, "UPDATED_AT": "2023-01-01T01:00:00.000000000Z", "UNKNOWN": null, "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": ["Problem with `struct`", "Problem with `array`", "Problem with `number`", "Problem with `integer`", "Problem with `boolean`", "Problem with `timestamp_with_timezone`", "Problem with `timestamp_without_timezone`", "Problem with `time_with_timezone`", "Problem with `time_without_timezone`", "Problem with `date`"]}, "STRING": "{}"} // Note: no loss of precision on these numbers. A naive float64 conversion would yield 67.17411800000001. -{"id1": 5, "id2": 100, "updated_at": "2023-01-01T01:00:00.000000000Z", "number": 67.174118, "struct": {"nested_number": 67.174118}, "array": [67.174118], "unknown": 67.174118, "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}} +{"ID1": 5, "ID2": 100, "UPDATED_AT": "2023-01-01T01:00:00.000000000Z", "NUMBER": 67.174118, "STRUCT": {"nested_number": 67.174118}, "ARRAY": [67.174118], "UNKNOWN": 67.174118, "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}} diff --git a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/sqlgenerator/incrementaldedup_expectedrecords_final.jsonl b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/sqlgenerator/incrementaldedup_expectedrecords_final.jsonl index 293be295e24d..badbe48249a6 100644 --- a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/sqlgenerator/incrementaldedup_expectedrecords_final.jsonl +++ b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/sqlgenerator/incrementaldedup_expectedrecords_final.jsonl @@ -1,2 +1,2 @@ -{"_airbyte_raw_id": "80c99b54-54b4-43bd-b51b-1f67dafa2c52", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}, "id1": 1, "id2": 100, "updated_at": "2023-01-01T02:00:00.000000000Z", "string": "Alice", "struct": {"city": "San Diego", "state": "CA"}, "integer": 84} -{"_airbyte_raw_id": "ad690bfb-c2c2-4172-bd73-a16c86ccbb67", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": ["Problem with `integer`"]}, "id1": 2, "id2": 100, "updated_at": "2023-01-01T03:00:00.000000000Z", "string": "Bob"} +{"_airbyte_raw_id": "80c99b54-54b4-43bd-b51b-1f67dafa2c52", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}, "ID1": 1, "ID2": 100, "UPDATED_AT": "2023-01-01T02:00:00.000000000Z", "STRING": "Alice", "STRUCT": {"city": "San Diego", "state": "CA"}, "INTEGER": 84} +{"_airbyte_raw_id": "ad690bfb-c2c2-4172-bd73-a16c86ccbb67", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": ["Problem with `integer`"]}, "ID1": 2, "ID2": 100, "UPDATED_AT": "2023-01-01T03:00:00.000000000Z", "STRING": "Bob"} diff --git a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/sqlgenerator/reservedkeywords_expectedrecords_final.jsonl b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/sqlgenerator/reservedkeywords_expectedrecords_final.jsonl new file mode 100644 index 000000000000..0574bdee3dd5 --- /dev/null +++ b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/sqlgenerator/reservedkeywords_expectedrecords_final.jsonl @@ -0,0 +1,2 @@ +// Note that we prefix `current_date` with an underscore (to `_CURRENT_DATE`). This is because even if you quote `CURRENT_DATE`, Snowflake rejects it as a column name. +{"_airbyte_raw_id":"b2e0efc4-38a8-47ba-970c-8103f09f08d5","_airbyte_extracted_at":"2023-01-01T00:00:00.000000000Z","_airbyte_meta":{"errors":[]}, "_CURRENT_DATE": "foo", "JOIN": "bar"} diff --git a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/sqlgenerator/timestampformats_expectedrecords_final.jsonl b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/sqlgenerator/timestampformats_expectedrecords_final.jsonl index 0064d5adf1b3..fbd07a85632b 100644 --- a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/sqlgenerator/timestampformats_expectedrecords_final.jsonl +++ b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/sqlgenerator/timestampformats_expectedrecords_final.jsonl @@ -1,12 +1,12 @@ // snowflake/jdbc is returning 9 decimals for all timestamp/time types -{"_airbyte_raw_id": "14ba7c7f-e398-4e69-ac22-28d578400dbc", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}, "timestamp_with_timezone": "2023-01-23T12:34:56.000000000Z", "time_with_timezone": "12:34:56Z"} -{"_airbyte_raw_id": "05028c5f-7813-4e9c-bd4b-387d1f8ba435", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}, "timestamp_with_timezone": "2023-01-23T12:34:56.000000000-08:00", "time_with_timezone": "12:34:56-08:00"} -{"_airbyte_raw_id": "95dfb0c6-6a67-4ba0-9935-643bebc90437", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}, "timestamp_with_timezone": "2023-01-23T12:34:56.000000000-08:00", "time_with_timezone": "12:34:56-0800"} -{"_airbyte_raw_id": "f3d8abe2-bb0f-4caf-8ddc-0641df02f3a9", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}, "timestamp_with_timezone": "2023-01-23T12:34:56.000000000-08:00", "time_with_timezone": "12:34:56-08"} -{"_airbyte_raw_id": "a81ed40a-2a49-488d-9714-d53e8b052968", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}, "timestamp_with_timezone": "2023-01-23T12:34:56.000000000+08:00", "time_with_timezone": "12:34:56+08:00"} -{"_airbyte_raw_id": "c07763a0-89e6-4cb7-b7d0-7a34a7c9918a", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}, "timestamp_with_timezone": "2023-01-23T12:34:56.000000000+08:00", "time_with_timezone": "12:34:56+0800"} -{"_airbyte_raw_id": "358d3b52-50ab-4e06-9094-039386f9bf0d", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}, "timestamp_with_timezone": "2023-01-23T12:34:56.000000000+08:00", "time_with_timezone": "12:34:56+08"} -{"_airbyte_raw_id": "db8200ac-b2b9-4b95-a053-8a0343042751", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}, "timestamp_with_timezone": "2023-01-23T12:34:56.123000000Z", "time_with_timezone": "12:34:56.123Z"} +{"_airbyte_raw_id": "14ba7c7f-e398-4e69-ac22-28d578400dbc", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}, "TIMESTAMP_WITH_TIMEZONE": "2023-01-23T12:34:56.000000000Z", "TIME_WITH_TIMEZONE": "12:34:56Z"} +{"_airbyte_raw_id": "05028c5f-7813-4e9c-bd4b-387d1f8ba435", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}, "TIMESTAMP_WITH_TIMEZONE": "2023-01-23T12:34:56.000000000-08:00", "TIME_WITH_TIMEZONE": "12:34:56-08:00"} +{"_airbyte_raw_id": "95dfb0c6-6a67-4ba0-9935-643bebc90437", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}, "TIMESTAMP_WITH_TIMEZONE": "2023-01-23T12:34:56.000000000-08:00", "TIME_WITH_TIMEZONE": "12:34:56-0800"} +{"_airbyte_raw_id": "f3d8abe2-bb0f-4caf-8ddc-0641df02f3a9", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}, "TIMESTAMP_WITH_TIMEZONE": "2023-01-23T12:34:56.000000000-08:00", "TIME_WITH_TIMEZONE": "12:34:56-08"} +{"_airbyte_raw_id": "a81ed40a-2a49-488d-9714-d53e8b052968", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}, "TIMESTAMP_WITH_TIMEZONE": "2023-01-23T12:34:56.000000000+08:00", "TIME_WITH_TIMEZONE": "12:34:56+08:00"} +{"_airbyte_raw_id": "c07763a0-89e6-4cb7-b7d0-7a34a7c9918a", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}, "TIMESTAMP_WITH_TIMEZONE": "2023-01-23T12:34:56.000000000+08:00", "TIME_WITH_TIMEZONE": "12:34:56+0800"} +{"_airbyte_raw_id": "358d3b52-50ab-4e06-9094-039386f9bf0d", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}, "TIMESTAMP_WITH_TIMEZONE": "2023-01-23T12:34:56.000000000+08:00", "TIME_WITH_TIMEZONE": "12:34:56+08"} +{"_airbyte_raw_id": "db8200ac-b2b9-4b95-a053-8a0343042751", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}, "TIMESTAMP_WITH_TIMEZONE": "2023-01-23T12:34:56.123000000Z", "TIME_WITH_TIMEZONE": "12:34:56.123Z"} -{"_airbyte_raw_id": "10ce5d93-6923-4217-a46f-103833837038", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}, "timestamp_without_timezone": "2023-01-23T12:34:56.000000000", "time_without_timezone": "12:34:56.000000000", "date": "2023-01-23"} -{"_airbyte_raw_id": "a7a6e176-7464-4a0b-b55c-b4f936e8d5a1", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}, "timestamp_without_timezone": "2023-01-23T12:34:56.123000000", "time_without_timezone": "12:34:56.123000000"} +{"_airbyte_raw_id": "10ce5d93-6923-4217-a46f-103833837038", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}, "TIMESTAMP_WITHOUT_TIMEZONE": "2023-01-23T12:34:56.000000000", "TIME_WITHOUT_TIMEZONE": "12:34:56.000000000", "DATE": "2023-01-23"} +{"_airbyte_raw_id": "a7a6e176-7464-4a0b-b55c-b4f936e8d5a1", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}, "TIMESTAMP_WITHOUT_TIMEZONE": "2023-01-23T12:34:56.123000000", "TIME_WITHOUT_TIMEZONE": "12:34:56.123000000"} diff --git a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/sqlgenerator/weirdcolumnnames_expectedrecords_final.jsonl b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/sqlgenerator/weirdcolumnnames_expectedrecords_final.jsonl index b61de2de5f58..a745d6e1dc2f 100644 --- a/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/sqlgenerator/weirdcolumnnames_expectedrecords_final.jsonl +++ b/airbyte-integrations/connectors/destination-snowflake/src/test-integration/resources/sqlgenerator/weirdcolumnnames_expectedrecords_final.jsonl @@ -1,3 +1,3 @@ // columns with issues: -// * endswithbackslash\ -> written as null to the final table -{"_airbyte_raw_id": "7e7330a1-42fb-41ec-a955-52f18bd61964", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}, "id1": 1, "id2": 100, "updated_at": "2023-01-01T02:00:00.000000000Z", "$starts_with_dollar_sign": "foo", "includes\"doublequote": "foo", "includes'singlequote": "foo", "includes`backtick": "foo", "includes.period": "foo", "includes$$doubledollar": "foo", "endswithbackslash\\": "foo"} +// * ENDSWITHBACKSLASH\ -> written as null to the final table +{"_airbyte_raw_id": "7e7330a1-42fb-41ec-a955-52f18bd61964", "_airbyte_extracted_at": "2023-01-01T00:00:00.000000000Z", "_airbyte_meta": {"errors": []}, "ID1": 1, "ID2": 100, "UPDATED_AT": "2023-01-01T02:00:00.000000000Z", "$STARTS_WITH_DOLLAR_SIGN": "foo", "INCLUDES\"DOUBLEQUOTE": "foo", "INCLUDES'SINGLEQUOTE": "foo", "INCLUDES`BACKTICK": "foo", "INCLUDES.PERIOD": "foo", "INCLUDES$$DOUBLEDOLLAR": "foo", "ENDSWITHBACKSLASH\\": "foo"} diff --git a/airbyte-integrations/connectors/destination-snowflake/src/test/java/io/airbyte/integrations/destination/snowflake/typing_deduping/SnowflakeSqlGeneratorTest.java b/airbyte-integrations/connectors/destination-snowflake/src/test/java/io/airbyte/integrations/destination/snowflake/typing_deduping/SnowflakeSqlGeneratorTest.java new file mode 100644 index 000000000000..ed92be45193e --- /dev/null +++ b/airbyte-integrations/connectors/destination-snowflake/src/test/java/io/airbyte/integrations/destination/snowflake/typing_deduping/SnowflakeSqlGeneratorTest.java @@ -0,0 +1,68 @@ +package io.airbyte.integrations.destination.snowflake.typing_deduping; + +import static org.junit.jupiter.api.Assertions.assertAll; +import static org.junit.jupiter.api.Assertions.assertEquals; + +import io.airbyte.integrations.base.destination.typing_deduping.ColumnId; +import io.airbyte.integrations.base.destination.typing_deduping.StreamId; +import org.junit.jupiter.api.Test; + +public class SnowflakeSqlGeneratorTest { + + private final SnowflakeSqlGenerator generator = new SnowflakeSqlGenerator(); + + @Test + void columnNameSpecialCharacterHandling() { + assertAll( + // If a ${ is present, then we should replace all of $, {, and } with underscores + () -> assertEquals( + new ColumnId( + "__FOO_", + "${foo}", + "${FOO}" + ), + generator.buildColumnId("${foo}") + ), + // But normally, we should leave those characters untouched. + () -> assertEquals( + new ColumnId( + "{FO$O}", + "{fo$o}", + "{FO$O}" + ), + generator.buildColumnId("{fo$o}") + ) + ); + } + + /** + * Similar to {@link #columnNameSpecialCharacterHandling()}, but for stream name/namespace + */ + @Test + void streamNameSpecialCharacterHandling() { + assertAll( + () -> assertEquals( + new StreamId( + "__FOO_", + "__BAR_", + "airbyte_internal", + "__foo__raw__stream___bar_", + "${foo}", + "${bar}" + ), + generator.buildStreamId("${foo}", "${bar}", "airbyte_internal") + ), + () -> assertEquals( + new StreamId( + "{FO$O}", + "{BA$R}", + "airbyte_internal", + "{fo$o}_raw__stream_{ba$r}", + "{fo$o}", + "{ba$r}" + ), + generator.buildStreamId("{fo$o}", "{ba$r}", "airbyte_internal") + ) + ); + } +} diff --git a/airbyte-integrations/connectors/destination-starburst-galaxy/.dockerignore b/airbyte-integrations/connectors/destination-starburst-galaxy/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-starburst-galaxy/.dockerignore +++ b/airbyte-integrations/connectors/destination-starburst-galaxy/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-starburst-galaxy/build.gradle b/airbyte-integrations/connectors/destination-starburst-galaxy/build.gradle index 449997bb4e6f..999b643e78a9 100644 --- a/airbyte-integrations/connectors/destination-starburst-galaxy/build.gradle +++ b/airbyte-integrations/connectors/destination-starburst-galaxy/build.gradle @@ -12,7 +12,6 @@ dependencies { implementation project(':airbyte-config-oss:config-models-oss') implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation project(':airbyte-integrations:bases:bases-destination-jdbc') implementation project(path: ':airbyte-db:db-lib') implementation project(path: ':airbyte-integrations:bases:base-java-s3') diff --git a/airbyte-integrations/connectors/destination-teradata/.dockerignore b/airbyte-integrations/connectors/destination-teradata/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-teradata/.dockerignore +++ b/airbyte-integrations/connectors/destination-teradata/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-teradata/build.gradle b/airbyte-integrations/connectors/destination-teradata/build.gradle index 13fab2b59424..ebd0055dc4c9 100644 --- a/airbyte-integrations/connectors/destination-teradata/build.gradle +++ b/airbyte-integrations/connectors/destination-teradata/build.gradle @@ -13,7 +13,6 @@ dependencies { implementation project(':airbyte-config-oss:config-models-oss') implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation project(':airbyte-db:db-lib') implementation project(':airbyte-integrations:bases:base-java') implementation libs.airbyte.protocol diff --git a/airbyte-integrations/connectors/destination-tidb/.dockerignore b/airbyte-integrations/connectors/destination-tidb/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-tidb/.dockerignore +++ b/airbyte-integrations/connectors/destination-tidb/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-tidb/build.gradle b/airbyte-integrations/connectors/destination-tidb/build.gradle index 674e4473783e..e7023bdc7dbd 100644 --- a/airbyte-integrations/connectors/destination-tidb/build.gradle +++ b/airbyte-integrations/connectors/destination-tidb/build.gradle @@ -13,18 +13,12 @@ dependencies { implementation project(':airbyte-integrations:bases:base-java') implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:bases-destination-jdbc') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation 'mysql:mysql-connector-java:8.0.30' - implementation libs.connectors.testcontainers.tidb + testImplementation libs.testcontainers.tidb integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:destination-tidb') - integrationTestJavaImplementation libs.connectors.testcontainers.tidb - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-normalization').airbyteDocker.outputs) -} - -tasks.named("airbyteDocker") { - dependsOn project(':airbyte-integrations:bases:base-normalization').airbyteDockerTiDB + integrationTestJavaImplementation libs.testcontainers.tidb } diff --git a/airbyte-integrations/connectors/destination-vertica/.dockerignore b/airbyte-integrations/connectors/destination-vertica/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-vertica/.dockerignore +++ b/airbyte-integrations/connectors/destination-vertica/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-vertica/build.gradle b/airbyte-integrations/connectors/destination-vertica/build.gradle index 2a9fc0fd4865..75d2d4e2bfb3 100644 --- a/airbyte-integrations/connectors/destination-vertica/build.gradle +++ b/airbyte-integrations/connectors/destination-vertica/build.gradle @@ -13,7 +13,6 @@ dependencies { implementation project(':airbyte-config-oss:config-models-oss') implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation project(path: ':airbyte-integrations:bases:bases-destination-jdbc') implementation group: 'com.vertica.jdbc', name: 'vertica-jdbc', version: '12.0.3-0' integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-destination-test') diff --git a/airbyte-integrations/connectors/destination-yugabytedb/.dockerignore b/airbyte-integrations/connectors/destination-yugabytedb/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/destination-yugabytedb/.dockerignore +++ b/airbyte-integrations/connectors/destination-yugabytedb/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/destination-yugabytedb/build.gradle b/airbyte-integrations/connectors/destination-yugabytedb/build.gradle index 79d17bb0b387..d42ce0ab8202 100644 --- a/airbyte-integrations/connectors/destination-yugabytedb/build.gradle +++ b/airbyte-integrations/connectors/destination-yugabytedb/build.gradle @@ -12,7 +12,6 @@ dependencies { implementation project(':airbyte-config-oss:config-models-oss') implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation project(':airbyte-integrations:bases:bases-destination-jdbc') implementation project(':airbyte-db:db-lib') diff --git a/airbyte-integrations/connectors/source-alloydb-strict-encrypt/.dockerignore b/airbyte-integrations/connectors/source-alloydb-strict-encrypt/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/source-alloydb-strict-encrypt/.dockerignore +++ b/airbyte-integrations/connectors/source-alloydb-strict-encrypt/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/source-alloydb-strict-encrypt/build.gradle b/airbyte-integrations/connectors/source-alloydb-strict-encrypt/build.gradle index 231bd7395f77..b50f35130afb 100644 --- a/airbyte-integrations/connectors/source-alloydb-strict-encrypt/build.gradle +++ b/airbyte-integrations/connectors/source-alloydb-strict-encrypt/build.gradle @@ -23,10 +23,8 @@ dependencies { testImplementation testFixtures(project(':airbyte-integrations:connectors:source-jdbc')) testImplementation project(':airbyte-test-utils') - testImplementation libs.connectors.testcontainers.postgresql + testImplementation libs.testcontainers.postgresql integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors/source-alloydb/.dockerignore b/airbyte-integrations/connectors/source-alloydb/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/source-alloydb/.dockerignore +++ b/airbyte-integrations/connectors/source-alloydb/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/source-alloydb/build.gradle b/airbyte-integrations/connectors/source-alloydb/build.gradle index a92d92a5e8b9..ca33a41e4b56 100644 --- a/airbyte-integrations/connectors/source-alloydb/build.gradle +++ b/airbyte-integrations/connectors/source-alloydb/build.gradle @@ -22,12 +22,10 @@ dependencies { testImplementation testFixtures(project(':airbyte-integrations:connectors:source-jdbc')) testImplementation project(':airbyte-test-utils') - testImplementation libs.connectors.testcontainers.postgresql + testImplementation libs.testcontainers.postgresql integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') } diff --git a/airbyte-integrations/connectors/source-amazon-ads/Dockerfile b/airbyte-integrations/connectors/source-amazon-ads/Dockerfile index 7ef8dda835a0..7a1e8e2d82ab 100644 --- a/airbyte-integrations/connectors/source-amazon-ads/Dockerfile +++ b/airbyte-integrations/connectors/source-amazon-ads/Dockerfile @@ -13,5 +13,5 @@ ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=3.1.2 +LABEL io.airbyte.version=3.2.0 LABEL io.airbyte.name=airbyte/source-amazon-ads diff --git a/airbyte-integrations/connectors/source-amazon-ads/integration_tests/expected_records.jsonl b/airbyte-integrations/connectors/source-amazon-ads/integration_tests/expected_records.jsonl index 2c0ce04ab232..bf609dee5420 100644 --- a/airbyte-integrations/connectors/source-amazon-ads/integration_tests/expected_records.jsonl +++ b/airbyte-integrations/connectors/source-amazon-ads/integration_tests/expected_records.jsonl @@ -47,7 +47,7 @@ {"stream":"sponsored_display_product_ads","data":{"adId":103527738992867,"adGroupId":239470166910761,"campaignId":25934734632378,"asin":"B000BNT386","state":"enabled"},"emitted_at":1659020219614} {"stream":"sponsored_display_product_ads","data":{"adId":195948665185008,"adGroupId":239470166910761,"campaignId":25934734632378,"asin":"B000BNQBOA","state":"enabled"},"emitted_at":1659020219614} {"stream":"sponsored_display_product_ads","data":{"adId":130802512011075,"adGroupId":239470166910761,"campaignId":25934734632378,"asin":"B091G1HT4P","state":"enabled"},"emitted_at":1659020219614} -{"stream":"sponsored_display_targetings","data":{"adGroupId":239470166910761,"bid":0.4,"expression":[{"type":"similarProduct"}],"expressionType":"auto","resolvedExpression":[{"type":"similarProduct"}],"state":"enabled","targetId":124150067548052},"emitted_at":1659020220625} +{"stream":"sponsored_display_targetings","data":{"adGroupId":239470166910761,"bid":0.4,"expression":[{"type":"similarProduct"}],"expressionType":"auto","resolvedExpression":[{"type":"similarProduct"}],"state":"enabled","targetId":124150067548052,"campaignId": 25934734632378},"emitted_at":1659020220625} {"stream":"sponsored_product_campaigns","data":{"campaignId":39413387973397,"name":"Test campaging for profileId 1861552880916640","campaignType":"sponsoredProducts","targetingType":"manual","premiumBidAdjustment":true,"dailyBudget":10,"ruleBasedBudget":{"isProcessing":false},"startDate":"20220705","endDate":"20220712","state":"paused","bidding":{"strategy":"legacyForSales","adjustments":[{"predicate":"placementTop","percentage":50}]},"tags":{"PONumber":"examplePONumber","accountManager":"exampleAccountManager"}},"emitted_at":1687524797996} {"stream":"sponsored_product_campaigns","data":{"campaignId":135264288913079,"name":"Campaign - 7/5/2022 18:14:02","campaignType":"sponsoredProducts","targetingType":"auto","premiumBidAdjustment":false,"dailyBudget":10,"startDate":"20220705","state":"enabled","bidding":{"strategy":"legacyForSales","adjustments":[]},"portfolioId":270076898441727},"emitted_at":1687524798170} {"stream":"sponsored_product_campaigns","data":{"campaignId":191249325250025,"name":"Campaign - 7/8/2022 13:57:48","campaignType":"sponsoredProducts","targetingType":"auto","premiumBidAdjustment":true,"dailyBudget":50,"ruleBasedBudget":{"isProcessing":false},"startDate":"20220708","state":"enabled","bidding":{"strategy":"legacyForSales","adjustments":[{"predicate":"placementProductPage","percentage":100},{"predicate":"placementTop","percentage":100}]},"portfolioId":253945852845204},"emitted_at":1687524798171} diff --git a/airbyte-integrations/connectors/source-amazon-ads/metadata.yaml b/airbyte-integrations/connectors/source-amazon-ads/metadata.yaml index db39fb196fbe..517408077b88 100644 --- a/airbyte-integrations/connectors/source-amazon-ads/metadata.yaml +++ b/airbyte-integrations/connectors/source-amazon-ads/metadata.yaml @@ -8,7 +8,7 @@ data: connectorSubtype: api connectorType: source definitionId: c6b0a29e-1da9-4512-9002-7bfd0cba2246 - dockerImageTag: 3.1.2 + dockerImageTag: 3.2.0 dockerRepository: airbyte/source-amazon-ads githubIssueLabel: source-amazon-ads icon: amazonads.svg @@ -20,6 +20,13 @@ data: oss: enabled: true releaseStage: generally_available + suggestedStreams: + streams: + - profiles + - sponsored_brands_video_report_stream + - sponsored_display_report_stream + - sponsored_brands_report_stream + - sponsored_products_report_stream documentationUrl: https://docs.airbyte.com/integrations/sources/amazon-ads tags: - language:python diff --git a/airbyte-integrations/connectors/source-amazon-ads/setup.py b/airbyte-integrations/connectors/source-amazon-ads/setup.py index 13b317863d0e..7d612fffeaaa 100644 --- a/airbyte-integrations/connectors/source-amazon-ads/setup.py +++ b/airbyte-integrations/connectors/source-amazon-ads/setup.py @@ -5,7 +5,7 @@ from setuptools import find_packages, setup -MAIN_REQUIREMENTS = ["airbyte-cdk~=0.16", "requests_oauthlib~=1.3.1", "pendulum~=2.1.2"] +MAIN_REQUIREMENTS = ["airbyte-cdk", "requests_oauthlib~=1.3.1", "pendulum~=2.1.2"] TEST_REQUIREMENTS = [ "requests-mock~=1.9.3", diff --git a/airbyte-integrations/connectors/source-amazon-ads/source_amazon_ads/schemas/attribution_report.py b/airbyte-integrations/connectors/source-amazon-ads/source_amazon_ads/schemas/attribution_report.py index 6aea054ea703..b7b3e89c5a79 100644 --- a/airbyte-integrations/connectors/source-amazon-ads/source_amazon_ads/schemas/attribution_report.py +++ b/airbyte-integrations/connectors/source-amazon-ads/source_amazon_ads/schemas/attribution_report.py @@ -2,6 +2,8 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # +from typing import Optional + from .common import CatalogModel @@ -9,14 +11,14 @@ class AttributionReportModel(CatalogModel): date: str brandName: str marketplace: str - campaignId: str + campaignId: Optional[str] productAsin: str productConversionType: str advertiserName: str - adGroupId: str - creativeId: str + adGroupId: Optional[str] + creativeId: Optional[str] productName: str productCategory: str productSubcategory: str productGroup: str - publisher: str + publisher: Optional[str] diff --git a/airbyte-integrations/connectors/source-amazon-ads/source_amazon_ads/schemas/sponsored_brands.py b/airbyte-integrations/connectors/source-amazon-ads/source_amazon_ads/schemas/sponsored_brands.py index 510d2492d7b2..dba006e1b156 100644 --- a/airbyte-integrations/connectors/source-amazon-ads/source_amazon_ads/schemas/sponsored_brands.py +++ b/airbyte-integrations/connectors/source-amazon-ads/source_amazon_ads/schemas/sponsored_brands.py @@ -3,11 +3,29 @@ # from decimal import Decimal -from typing import Dict +from typing import Dict, List, Optional from .common import CatalogModel +class LandingPage(CatalogModel): + pageType: str + url: str + + +class BidAdjustment(CatalogModel): + bidAdjustmentPredicate: str + bidAdjustmentPercent: int + + +class Creative(CatalogModel): + brandName: str + brandLogoAssetID: str + brandLogoUrl: str + asins: List[str] + shouldOptimizeAsins: bool + + class BrandsCampaign(CatalogModel): campaignId: Decimal name: str @@ -23,9 +41,14 @@ class BrandsCampaign(CatalogModel): bidOptimization: bool = None bidMultiplier: Decimal = None adFormat: str + bidAdjustments: Optional[List[BidAdjustment]] + creative: Optional[Creative] + landingPage: Optional[LandingPage] + supplySource: Optional[str] class BrandsAdGroup(CatalogModel): campaignId: Decimal adGroupId: Decimal name: str + bid: int diff --git a/airbyte-integrations/connectors/source-amazon-ads/source_amazon_ads/schemas/sponsored_display.py b/airbyte-integrations/connectors/source-amazon-ads/source_amazon_ads/schemas/sponsored_display.py index ffaf34b72e06..51caba0c11c1 100644 --- a/airbyte-integrations/connectors/source-amazon-ads/source_amazon_ads/schemas/sponsored_display.py +++ b/airbyte-integrations/connectors/source-amazon-ads/source_amazon_ads/schemas/sponsored_display.py @@ -43,6 +43,7 @@ class DisplayProductAds(CatalogModel): class DisplayTargeting(Targeting): + campaignId: Decimal expression: List[Dict[str, str]] resolvedExpression: List[Dict[str, str]] @@ -72,7 +73,7 @@ class DisplayBudgetRuleDetailsDurationEventTypeRuleDuration(CatalogModel): class DisplayBudgetRuleDetailsDurationDateRangeTypeRuleDuration(CatalogModel): - endDate: str + endDate: Optional[str] startDate: str @@ -94,7 +95,7 @@ class DisplayBudgetRules(CatalogModel): ruleId: str ruleStatus: str ruleState: str - lastUpdatedDate: Decimal + lastUpdatedDate: Optional[Decimal] createdDate: Decimal ruleDetails: DisplayBudgetRuleDetails = None ruleStatusDetails: Dict[str, str] = None diff --git a/airbyte-integrations/connectors/source-amplitude/Dockerfile b/airbyte-integrations/connectors/source-amplitude/Dockerfile index 5b7b21ada222..728f59891126 100644 --- a/airbyte-integrations/connectors/source-amplitude/Dockerfile +++ b/airbyte-integrations/connectors/source-amplitude/Dockerfile @@ -34,5 +34,5 @@ COPY source_amplitude ./source_amplitude ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=0.2.4 +LABEL io.airbyte.version=0.3.2 LABEL io.airbyte.name=airbyte/source-amplitude diff --git a/airbyte-integrations/connectors/source-amplitude/integration_tests/expected_records.jsonl b/airbyte-integrations/connectors/source-amplitude/integration_tests/expected_records.jsonl index 412b5966b9bc..27b00511b697 100644 --- a/airbyte-integrations/connectors/source-amplitude/integration_tests/expected_records.jsonl +++ b/airbyte-integrations/connectors/source-amplitude/integration_tests/expected_records.jsonl @@ -1,116 +1,20 @@ -{"stream":"active_users","data":{"date":"2023-02-01","statistics":{"(none)":1,"Ukraine":0}},"emitted_at":1676633494310} -{"stream":"active_users","data":{"date":"2023-02-02","statistics":{"(none)":1,"Ukraine":0}},"emitted_at":1676633494310} -{"stream":"active_users","data":{"date":"2023-02-03","statistics":{"(none)":1,"Ukraine":0}},"emitted_at":1676633494310} -{"stream":"active_users","data":{"date":"2023-02-04","statistics":{"(none)":1,"Ukraine":0}},"emitted_at":1676633494310} -{"stream":"active_users","data":{"date":"2023-02-05","statistics":{"(none)":1,"Ukraine":0}},"emitted_at":1676633494310} -{"stream":"active_users","data":{"date":"2023-02-06","statistics":{"(none)":1,"Ukraine":0}},"emitted_at":1676633494311} -{"stream":"active_users","data":{"date":"2023-02-07","statistics":{"(none)":1,"Ukraine":0}},"emitted_at":1676633494311} -{"stream":"active_users","data":{"date":"2023-02-08","statistics":{"(none)":1,"Ukraine":0}},"emitted_at":1676633494311} -{"stream":"active_users","data":{"date":"2023-02-09","statistics":{"(none)":1,"Ukraine":1}},"emitted_at":1676633494311} -{"stream":"active_users","data":{"date":"2023-02-10","statistics":{"(none)":1,"Ukraine":0}},"emitted_at":1676633494311} -{"stream":"active_users","data":{"date":"2023-02-11","statistics":{"(none)":1,"Ukraine":0}},"emitted_at":1676633494312} -{"stream":"active_users","data":{"date":"2023-02-12","statistics":{"(none)":1,"Ukraine":0}},"emitted_at":1676633494312} -{"stream":"active_users","data":{"date":"2023-02-13","statistics":{"(none)":1,"Ukraine":0}},"emitted_at":1676633494312} -{"stream":"active_users","data":{"date":"2023-02-14","statistics":{"(none)":1,"Ukraine":0}},"emitted_at":1676633494312} -{"stream":"active_users","data":{"date":"2023-02-15","statistics":{"(none)":1,"Ukraine":0}},"emitted_at":1676633494312} -{"stream":"average_session_length","data":{"date":"2023-02-01","length":0},"emitted_at":1677160664431} -{"stream":"average_session_length","data":{"date":"2023-02-02","length":0},"emitted_at":1677160664432} -{"stream":"average_session_length","data":{"date":"2023-02-03","length":0},"emitted_at":1677160664434} -{"stream":"average_session_length","data":{"date":"2023-02-04","length":0},"emitted_at":1677160664435} -{"stream":"average_session_length","data":{"date":"2023-02-05","length":0},"emitted_at":1677160664436} -{"stream":"average_session_length","data":{"date":"2023-02-06","length":0},"emitted_at":1677160664438} -{"stream":"average_session_length","data":{"date":"2023-02-07","length":0},"emitted_at":1677160664439} -{"stream":"average_session_length","data":{"date":"2023-02-08","length":0},"emitted_at":1677160664441} -{"stream":"average_session_length","data":{"date":"2023-02-09","length":0},"emitted_at":1677160664442} -{"stream":"average_session_length","data":{"date":"2023-02-10","length":0},"emitted_at":1677160664443} -{"stream":"average_session_length","data":{"date":"2023-02-11","length":0},"emitted_at":1677160664445} -{"stream":"average_session_length","data":{"date":"2023-02-12","length":0},"emitted_at":1677160664446} -{"stream":"average_session_length","data":{"date":"2023-02-13","length":0},"emitted_at":1677160664447} -{"stream":"average_session_length","data":{"date":"2023-02-14","length":0},"emitted_at":1677160664449} -{"stream":"average_session_length","data":{"date":"2023-02-15","length":0},"emitted_at":1677160664450} -{"stream":"average_session_length","data":{"date":"2023-02-16","length":0},"emitted_at":1677160664803} -{"stream":"average_session_length","data":{"date":"2023-02-17","length":0},"emitted_at":1677160664805} -{"stream":"average_session_length","data":{"date":"2023-02-18","length":0},"emitted_at":1677160664806} -{"stream":"average_session_length","data":{"date":"2023-02-19","length":0},"emitted_at":1677160664812} -{"stream":"average_session_length","data":{"date":"2023-02-20","length":0},"emitted_at":1677160664814} -{"stream":"average_session_length","data":{"date":"2023-02-21","length":0},"emitted_at":1677160664815} -{"stream":"average_session_length","data":{"date":"2023-02-22","length":0},"emitted_at":1677160664816} -{"stream":"average_session_length","data":{"date":"2023-02-23","length":0},"emitted_at":1677160664818} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-DESKTOP-2023-01-31","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-01-31T08:00:00+00:00","client_upload_time":"2023-02-01T12:02:17.685000+00:00","country":null,"data":{"user_properties_updated":true,"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":82672889,"event_properties":{"ad_metrics.cost":0.055104,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"DESKTOP","ad_metrics.impressions":202,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-01-31T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-01T12:02:40.918000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-01T12:02:17.685000+00:00","server_upload_time":"2023-02-01T12:02:36.650000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"53e385c4-a228-11ed-8e51-171d53d06523","version_name":null},"emitted_at":1677160703462} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-TABLET-2023-01-31","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-01-31T08:00:00+00:00","client_upload_time":"2023-02-01T12:02:17.685000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":273196606,"event_properties":{"ad_metrics.cost":0.10283,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"TABLET","ad_metrics.impressions":188,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-01-31T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-01T12:02:40.918000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-01T12:02:17.685000+00:00","server_upload_time":"2023-02-01T12:02:36.650000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"53e39277-a228-11ed-9400-171d53d06523","version_name":null},"emitted_at":1677160703465} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-MOBILE-2023-01-31","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-01-31T08:00:00+00:00","client_upload_time":"2023-02-01T12:02:17.685000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":695784978,"event_properties":{"ad_metrics.cost":1.781222,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"MOBILE","ad_metrics.impressions":2406,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":3,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":3,"campaign_id":19410069806},"event_time":"2023-01-31T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-01T12:02:40.918000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-01T12:02:17.685000+00:00","server_upload_time":"2023-02-01T12:02:36.650000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"53e38ca8-a228-11ed-a707-171d53d06523","version_name":null},"emitted_at":1677160703491} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-DESKTOP-2023-02-01","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-01T08:00:00+00:00","client_upload_time":"2023-02-02T12:03:25.005000+00:00","country":null,"data":{"user_properties_updated":true,"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":579725194,"event_properties":{"ad_metrics.cost":0.087394,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"DESKTOP","ad_metrics.impressions":258,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-01T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-02T12:03:52.152000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-02T12:03:25.005000+00:00","server_upload_time":"2023-02-02T12:03:43.846000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"a8b6b648-a2f1-11ed-b981-774fa598444a","version_name":null},"emitted_at":1677160704054} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-TABLET-2023-02-01","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-01T08:00:00+00:00","client_upload_time":"2023-02-02T12:03:25.005000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":186292011,"event_properties":{"ad_metrics.cost":0.237483,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"TABLET","ad_metrics.impressions":268,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-01T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-02T12:03:52.152000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-02T12:03:25.005000+00:00","server_upload_time":"2023-02-02T12:03:43.846000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"a8b6c322-a2f1-11ed-9dbe-774fa598444a","version_name":null},"emitted_at":1677160704057} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-MOBILE-2023-02-01","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-01T08:00:00+00:00","client_upload_time":"2023-02-02T12:03:25.005000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":343534293,"event_properties":{"ad_metrics.cost":1.913081,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"MOBILE","ad_metrics.impressions":2380,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":4,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":4,"campaign_id":19410069806},"event_time":"2023-02-01T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-02T12:03:52.152000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-02T12:03:25.005000+00:00","server_upload_time":"2023-02-02T12:03:43.846000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"a8b6bd56-a2f1-11ed-84fd-774fa598444a","version_name":null},"emitted_at":1677160704059} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-DESKTOP-2023-02-02","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-02T08:00:00+00:00","client_upload_time":"2023-02-03T12:02:59.374000+00:00","country":null,"data":{"user_properties_updated":true,"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":444502983,"event_properties":{"ad_metrics.cost":0.098846,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"DESKTOP","ad_metrics.impressions":260,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-02T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-03T12:03:14.894000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-03T12:02:59.374000+00:00","server_upload_time":"2023-02-03T12:03:12.182000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"bcf76cb7-a3ba-11ed-bbc1-ef5367694578","version_name":null},"emitted_at":1677160704734} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-TABLET-2023-02-02","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-02T08:00:00+00:00","client_upload_time":"2023-02-03T12:02:59.374000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":540530303,"event_properties":{"ad_metrics.cost":0.255795,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"TABLET","ad_metrics.impressions":318,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-02T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-03T12:03:14.894000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-03T12:02:59.374000+00:00","server_upload_time":"2023-02-03T12:03:12.182000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"bcf77ba6-a3ba-11ed-b2f9-ef5367694578","version_name":null},"emitted_at":1677160704736} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-MOBILE-2023-02-02","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-02T08:00:00+00:00","client_upload_time":"2023-02-03T12:02:59.374000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":472999226,"event_properties":{"ad_metrics.cost":1.91728,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"MOBILE","ad_metrics.impressions":2473,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":3,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":3,"campaign_id":19410069806},"event_time":"2023-02-02T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-03T12:03:14.894000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-03T12:02:59.374000+00:00","server_upload_time":"2023-02-03T12:03:12.182000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"bcf77529-a3ba-11ed-9ee2-ef5367694578","version_name":null},"emitted_at":1677160704744} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-DESKTOP-2023-02-03","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-03T08:00:00+00:00","client_upload_time":"2023-02-04T12:02:25.436000+00:00","country":null,"data":{"user_properties_updated":true,"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":830727485,"event_properties":{"ad_metrics.cost":0.075498,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"DESKTOP","ad_metrics.impressions":229,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-03T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-04T12:02:41.144000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-04T12:02:25.436000+00:00","server_upload_time":"2023-02-04T12:02:37.836000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"d3388c42-a483-11ed-a241-a9a73855976a","version_name":null},"emitted_at":1677160705252} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-TABLET-2023-02-03","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-03T08:00:00+00:00","client_upload_time":"2023-02-04T12:02:25.436000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":738101948,"event_properties":{"ad_metrics.cost":0.109966,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"TABLET","ad_metrics.impressions":166,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-03T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-04T12:02:41.144000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-04T12:02:25.436000+00:00","server_upload_time":"2023-02-04T12:02:37.836000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"d3389906-a483-11ed-9a82-a9a73855976a","version_name":null},"emitted_at":1677160705254} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-MOBILE-2023-02-03","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-03T08:00:00+00:00","client_upload_time":"2023-02-04T12:02:25.436000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":181349706,"event_properties":{"ad_metrics.cost":2.031292,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"MOBILE","ad_metrics.impressions":2580,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":5,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":5,"campaign_id":19410069806},"event_time":"2023-02-03T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-04T12:02:41.144000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-04T12:02:25.436000+00:00","server_upload_time":"2023-02-04T12:02:37.836000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"d3389329-a483-11ed-90ec-a9a73855976a","version_name":null},"emitted_at":1677160705256} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-DESKTOP-2023-02-04","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-04T08:00:00+00:00","client_upload_time":"2023-02-05T12:04:06.941000+00:00","country":null,"data":{"user_properties_updated":true,"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":920042324,"event_properties":{"ad_metrics.cost":0.077221,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"DESKTOP","ad_metrics.impressions":272,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-04T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-05T12:17:06.057000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-05T12:04:06.941000+00:00","server_upload_time":"2023-02-05T12:15:52.509000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"01311b3f-a54f-11ed-bd6b-b9b1c4f00a9c","version_name":null},"emitted_at":1677160705685} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-CONNECTED_TV-2023-02-04","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-04T08:00:00+00:00","client_upload_time":"2023-02-05T12:04:06.941000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":323952360,"event_properties":{"ad_metrics.cost":0.000117,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"CONNECTED_TV","ad_metrics.impressions":6,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-04T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-05T12:17:06.057000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-05T12:04:06.941000+00:00","server_upload_time":"2023-02-05T12:15:52.509000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"01312d7f-a54f-11ed-b760-b9b1c4f00a9c","version_name":null},"emitted_at":1677160705687} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-TABLET-2023-02-04","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-04T08:00:00+00:00","client_upload_time":"2023-02-05T12:04:06.941000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":335634502,"event_properties":{"ad_metrics.cost":0.180594,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"TABLET","ad_metrics.impressions":238,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":2,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":2,"campaign_id":19410069806},"event_time":"2023-02-04T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-05T12:17:06.057000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-05T12:04:06.941000+00:00","server_upload_time":"2023-02-05T12:15:52.509000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"013127e4-a54f-11ed-94cb-b9b1c4f00a9c","version_name":null},"emitted_at":1677160705689} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-MOBILE-2023-02-04","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-04T08:00:00+00:00","client_upload_time":"2023-02-05T12:04:06.941000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":978891508,"event_properties":{"ad_metrics.cost":1.956155,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"MOBILE","ad_metrics.impressions":2409,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":5,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":5,"campaign_id":19410069806},"event_time":"2023-02-04T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-05T12:17:06.057000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-05T12:04:06.941000+00:00","server_upload_time":"2023-02-05T12:15:52.509000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"01312229-a54f-11ed-b0ff-b9b1c4f00a9c","version_name":null},"emitted_at":1677160705691} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-DESKTOP-2023-02-05","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-05T08:00:00+00:00","client_upload_time":"2023-02-06T12:01:06.017000+00:00","country":null,"data":{"user_properties_updated":true,"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":862973577,"event_properties":{"ad_metrics.cost":0.071026,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"DESKTOP","ad_metrics.impressions":195,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-05T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-06T12:02:08.452000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-06T12:01:06.017000+00:00","server_upload_time":"2023-02-06T12:01:17.335000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"14915d67-a616-11ed-b37b-1d24c3d1426b","version_name":null},"emitted_at":1677160706263} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-TABLET-2023-02-05","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-05T08:00:00+00:00","client_upload_time":"2023-02-06T12:01:06.017000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":183007151,"event_properties":{"ad_metrics.cost":0.144935,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"TABLET","ad_metrics.impressions":188,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-05T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-06T12:02:08.452000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-06T12:01:06.017000+00:00","server_upload_time":"2023-02-06T12:01:17.335000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"14916bdc-a616-11ed-abef-1d24c3d1426b","version_name":null},"emitted_at":1677160706329} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-MOBILE-2023-02-05","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-05T08:00:00+00:00","client_upload_time":"2023-02-06T12:01:06.017000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":681776226,"event_properties":{"ad_metrics.cost":1.997995,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"MOBILE","ad_metrics.impressions":2583,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":3,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":3,"campaign_id":19410069806},"event_time":"2023-02-05T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-06T12:02:08.452000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-06T12:01:06.017000+00:00","server_upload_time":"2023-02-06T12:01:17.335000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"149164c6-a616-11ed-b3e0-1d24c3d1426b","version_name":null},"emitted_at":1677160706331} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-DESKTOP-2023-02-06","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-06T08:00:00+00:00","client_upload_time":"2023-02-07T12:01:48.859000+00:00","country":null,"data":{"user_properties_updated":true,"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":970466740,"event_properties":{"ad_metrics.cost":0.078221,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"DESKTOP","ad_metrics.impressions":278,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-06T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-07T12:02:07.033000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-07T12:01:48.859000+00:00","server_upload_time":"2023-02-07T12:02:04.872000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"3e28db97-a6df-11ed-be64-5d7f35c3b01a","version_name":null},"emitted_at":1677160706837} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-CONNECTED_TV-2023-02-06","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-06T08:00:00+00:00","client_upload_time":"2023-02-07T12:01:48.859000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":567803347,"event_properties":{"ad_metrics.cost":0,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"CONNECTED_TV","ad_metrics.impressions":4,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-06T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-07T12:02:07.033000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-07T12:01:48.859000+00:00","server_upload_time":"2023-02-07T12:02:04.872000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"3e28ee9f-a6df-11ed-8c6f-5d7f35c3b01a","version_name":null},"emitted_at":1677160706848} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-TABLET-2023-02-06","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-06T08:00:00+00:00","client_upload_time":"2023-02-07T12:01:48.859000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":557070126,"event_properties":{"ad_metrics.cost":0.192373,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"TABLET","ad_metrics.impressions":213,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-06T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-07T12:02:07.033000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-07T12:01:48.859000+00:00","server_upload_time":"2023-02-07T12:02:04.872000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"3e28e905-a6df-11ed-b2b0-5d7f35c3b01a","version_name":null},"emitted_at":1677160706851} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-MOBILE-2023-02-06","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-06T08:00:00+00:00","client_upload_time":"2023-02-07T12:01:48.859000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":701875278,"event_properties":{"ad_metrics.cost":2.018299,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"MOBILE","ad_metrics.impressions":2595,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":4,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":4,"campaign_id":19410069806},"event_time":"2023-02-06T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-07T12:02:07.033000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-07T12:01:48.859000+00:00","server_upload_time":"2023-02-07T12:02:04.872000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"3e28e312-a6df-11ed-8dec-5d7f35c3b01a","version_name":null},"emitted_at":1677160706995} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-DESKTOP-2023-02-07","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-07T08:00:00+00:00","client_upload_time":"2023-02-08T12:02:25.066000+00:00","country":null,"data":{"user_properties_updated":true,"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":215560287,"event_properties":{"ad_metrics.cost":0.049814,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"DESKTOP","ad_metrics.impressions":208,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":1,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":1,"campaign_id":19410069806},"event_time":"2023-02-07T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-08T12:02:39.178000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-08T12:02:25.066000+00:00","server_upload_time":"2023-02-08T12:02:35.998000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"7bba250f-a7a8-11ed-9ce6-3718c73e0dcb","version_name":null},"emitted_at":1677160707555} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-TABLET-2023-02-07","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-07T08:00:00+00:00","client_upload_time":"2023-02-08T12:02:25.066000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":750045948,"event_properties":{"ad_metrics.cost":0.145436,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"TABLET","ad_metrics.impressions":180,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-07T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-08T12:02:39.178000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-08T12:02:25.066000+00:00","server_upload_time":"2023-02-08T12:02:35.998000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"7bba32f5-a7a8-11ed-a10d-3718c73e0dcb","version_name":null},"emitted_at":1677160707557} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-MOBILE-2023-02-07","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-07T08:00:00+00:00","client_upload_time":"2023-02-08T12:02:25.066000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":54427230,"event_properties":{"ad_metrics.cost":2.093716,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"MOBILE","ad_metrics.impressions":2694,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":3,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":3,"campaign_id":19410069806},"event_time":"2023-02-07T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-08T12:02:39.178000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-08T12:02:25.066000+00:00","server_upload_time":"2023-02-08T12:02:35.998000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{},"uuid":"7bba2cff-a7a8-11ed-baf0-3718c73e0dcb","version_name":null},"emitted_at":1677160707559} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-DESKTOP-2023-02-08","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-08T08:00:00+00:00","client_upload_time":"2023-02-09T12:02:17.656000+00:00","country":null,"data":{"user_properties_updated":true,"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":500159953,"event_properties":{"ad_metrics.cost":0.063632,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"DESKTOP","ad_metrics.impressions":275,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-08T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-09T12:02:40.173000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-09T12:02:17.656000+00:00","server_upload_time":"2023-02-09T12:02:37.115000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"a6b63b9b-a871-11ed-8e0e-556bceaee760","version_name":null},"emitted_at":1677160708339} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-CONNECTED_TV-2023-02-08","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-08T08:00:00+00:00","client_upload_time":"2023-02-09T12:02:17.656000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":91323750,"event_properties":{"ad_metrics.cost":2.4e-05,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"CONNECTED_TV","ad_metrics.impressions":2,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-08T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-09T12:02:40.173000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-09T12:02:17.656000+00:00","server_upload_time":"2023-02-09T12:02:37.115000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"a6b65793-a871-11ed-9158-556bceaee760","version_name":null},"emitted_at":1677160708341} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-TABLET-2023-02-08","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-08T08:00:00+00:00","client_upload_time":"2023-02-09T12:02:17.656000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":248713684,"event_properties":{"ad_metrics.cost":0.111586,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"TABLET","ad_metrics.impressions":188,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":1,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":1,"campaign_id":19410069806},"event_time":"2023-02-08T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-09T12:02:40.173000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-09T12:02:17.656000+00:00","server_upload_time":"2023-02-09T12:02:37.115000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"a6b6514c-a871-11ed-963a-556bceaee760","version_name":null},"emitted_at":1677160708344} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-MOBILE-2023-02-08","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-08T08:00:00+00:00","client_upload_time":"2023-02-09T12:02:17.656000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":771697037,"event_properties":{"ad_metrics.cost":2.075305,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"MOBILE","ad_metrics.impressions":2687,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":7,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":7,"campaign_id":19410069806},"event_time":"2023-02-08T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-09T12:02:40.173000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-09T12:02:17.656000+00:00","server_upload_time":"2023-02-09T12:02:37.115000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"a6b64994-a871-11ed-bdac-556bceaee760","version_name":null},"emitted_at":1677160708346} -{"stream":"events","data":{"$insert_id":"13648a56-a2bf-468d-89ce-af8148d5eb4b","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":568771836625,"app":434735,"city":"Kyiv","client_event_time":"2023-02-09T09:57:33+00:00","client_upload_time":"2023-02-09T09:57:33+00:00","country":"Ukraine","data":{"user_properties_updated":true,"group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"ff91a939-5a66-57f3-934c-6e58f7bd6da2","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":115597971,"event_properties":{"keyBool":true,"keyString":"valueString","keyInt":11},"event_time":"2023-02-09T09:57:33+00:00","event_type":"[Shopify] Connect Amplitude Test","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":"85.209.47.207","is_attribution_event":null,"language":null,"library":"amplitude-node/1.10.0","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-09T09:57:35.351000+00:00","region":"Kyiv City","sample_rate":null,"server_received_time":"2023-02-09T09:57:33+00:00","server_upload_time":"2023-02-09T09:57:33.014000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":"testuserEmail@gmail.com","user_properties":{},"uuid":"2d7ec4b1-a860-11ed-aae8-01da73a04a5b","version_name":null},"emitted_at":1677160708348} -{"stream":"events","data":{"$insert_id":"ca3fb836-163b-4898-9d59-1586fe103693","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":568771836625,"app":434735,"city":"Kyiv","client_event_time":"2023-02-09T09:57:39.118000+00:00","client_upload_time":"2023-02-09T09:57:39.118000+00:00","country":"Ukraine","data":{"group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"ff91a939-5a66-57f3-934c-6e58f7bd6da2","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":748377217,"event_properties":{"keyBool":true,"keyString":"valueString","keyInt":11},"event_time":"2023-02-09T09:57:39.118000+00:00","event_type":"[Shopify] Connect Amplitude Test","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":"85.209.47.207","is_attribution_event":null,"language":null,"library":"amplitude-node/1.10.0","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-09T09:57:40.295000+00:00","region":"Kyiv City","sample_rate":null,"server_received_time":"2023-02-09T09:57:39.118000+00:00","server_upload_time":"2023-02-09T09:57:39.123000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":"testuserEmail@gmail.com","user_properties":{},"uuid":"30869ad0-a860-11ed-a807-f949e6b8dfb8","version_name":null},"emitted_at":1677160708350} -{"stream":"events","data":{"$insert_id":"6bf42abd-5033-4ea6-9574-c1c674a4d32d","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":568771836625,"app":434735,"city":"Kyiv","client_event_time":"2023-02-09T09:57:44.390000+00:00","client_upload_time":"2023-02-09T09:57:44.390000+00:00","country":"Ukraine","data":{"group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"ff91a939-5a66-57f3-934c-6e58f7bd6da2","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":969823192,"event_properties":{"keyBool":true,"keyString":"valueString","keyInt":11},"event_time":"2023-02-09T09:57:44.390000+00:00","event_type":"[Shopify] Connect Amplitude Test","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":"85.209.47.207","is_attribution_event":null,"language":null,"library":"amplitude-node/1.10.0","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-09T09:57:45.721000+00:00","region":"Kyiv City","sample_rate":null,"server_received_time":"2023-02-09T09:57:44.390000+00:00","server_upload_time":"2023-02-09T09:57:44.394000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":"testuserEmail@gmail.com","user_properties":{},"uuid":"33c35984-a860-11ed-8460-f949e6b8dfb8","version_name":null},"emitted_at":1677160708352} -{"stream":"events","data":{"$insert_id":"afb8f963-cae5-4232-b20d-9047440d29c9","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":568771836625,"app":434735,"city":"Kyiv","client_event_time":"2023-02-09T09:58:07.981000+00:00","client_upload_time":"2023-02-09T09:58:07.981000+00:00","country":"Ukraine","data":{"group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"ff91a939-5a66-57f3-934c-6e58f7bd6da2","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":318819040,"event_properties":{"keyBool":true,"keyString":"valueString","keyInt":11},"event_time":"2023-02-09T09:58:07.981000+00:00","event_type":"[Shopify] Connect Amplitude Test","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":"85.209.47.207","is_attribution_event":null,"language":null,"library":"amplitude-node/1.10.0","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-09T09:58:10.307000+00:00","region":"Kyiv City","sample_rate":null,"server_received_time":"2023-02-09T09:58:07.981000+00:00","server_upload_time":"2023-02-09T09:58:07.987000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":"testuserEmail@gmail.com","user_properties":{},"uuid":"426b1ef9-a860-11ed-8868-f949e6b8dfb8","version_name":null},"emitted_at":1677160708354} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-DESKTOP-2023-02-09","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-09T08:00:00+00:00","client_upload_time":"2023-02-10T12:03:21.518000+00:00","country":null,"data":{"user_properties_updated":true,"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":549198577,"event_properties":{"ad_metrics.cost":0.091194,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"DESKTOP","ad_metrics.impressions":240,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-09T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-10T12:03:43.615000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-10T12:03:21.518000+00:00","server_upload_time":"2023-02-10T12:03:42.091000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"f6f54177-a93a-11ed-9aef-65efbbbc3a1e","version_name":null},"emitted_at":1677160708954} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-CONNECTED_TV-2023-02-09","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-09T08:00:00+00:00","client_upload_time":"2023-02-10T12:03:21.518000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":970373985,"event_properties":{"ad_metrics.cost":0.000757,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"CONNECTED_TV","ad_metrics.impressions":4,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-09T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-10T12:03:43.615000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-10T12:03:21.518000+00:00","server_upload_time":"2023-02-10T12:03:42.091000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"f6f553c2-a93a-11ed-bc53-65efbbbc3a1e","version_name":null},"emitted_at":1677160708956} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-TABLET-2023-02-09","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-09T08:00:00+00:00","client_upload_time":"2023-02-10T12:03:21.518000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":574382501,"event_properties":{"ad_metrics.cost":0.109206,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"TABLET","ad_metrics.impressions":158,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":2,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":2,"campaign_id":19410069806},"event_time":"2023-02-09T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-10T12:03:43.615000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-10T12:03:21.518000+00:00","server_upload_time":"2023-02-10T12:03:42.091000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"f6f54e4b-a93a-11ed-8085-65efbbbc3a1e","version_name":null},"emitted_at":1677160708958} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-MOBILE-2023-02-09","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-09T08:00:00+00:00","client_upload_time":"2023-02-10T12:03:21.518000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":557690644,"event_properties":{"ad_metrics.cost":2.006873,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"MOBILE","ad_metrics.impressions":2565,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":6,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":6,"campaign_id":19410069806},"event_time":"2023-02-09T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-10T12:03:43.615000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-10T12:03:21.518000+00:00","server_upload_time":"2023-02-10T12:03:42.091000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"f6f54886-a93a-11ed-b598-65efbbbc3a1e","version_name":null},"emitted_at":1677160708961} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-DESKTOP-2023-02-10","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-10T08:00:00+00:00","client_upload_time":"2023-02-11T12:01:50.248000+00:00","country":null,"data":{"user_properties_updated":true,"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":782291950,"event_properties":{"ad_metrics.cost":0.070298,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"DESKTOP","ad_metrics.impressions":250,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-10T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-11T12:02:19.794000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-11T12:01:50.248000+00:00","server_upload_time":"2023-02-11T12:02:04.360000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"ef62e73e-aa03-11ed-ab60-21041b90b30e","version_name":null},"emitted_at":1677160709463} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-TABLET-2023-02-10","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-10T08:00:00+00:00","client_upload_time":"2023-02-11T12:01:50.248000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":660413772,"event_properties":{"ad_metrics.cost":0.137032,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"TABLET","ad_metrics.impressions":184,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-10T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-11T12:02:19.794000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-11T12:01:50.248000+00:00","server_upload_time":"2023-02-11T12:02:04.360000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"ef62f428-aa03-11ed-9aea-21041b90b30e","version_name":null},"emitted_at":1677160709465} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-MOBILE-2023-02-10","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-10T08:00:00+00:00","client_upload_time":"2023-02-11T12:01:50.248000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":345846795,"event_properties":{"ad_metrics.cost":1.986076,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"MOBILE","ad_metrics.impressions":2366,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":3,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":3,"campaign_id":19410069806},"event_time":"2023-02-10T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-11T12:02:19.794000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-11T12:01:50.248000+00:00","server_upload_time":"2023-02-11T12:02:04.360000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"ef62ee58-aa03-11ed-9470-21041b90b30e","version_name":null},"emitted_at":1677160709468} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-DESKTOP-2023-02-11","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-11T08:00:00+00:00","client_upload_time":"2023-02-12T12:02:28.595000+00:00","country":null,"data":{"user_properties_updated":true,"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":589830428,"event_properties":{"ad_metrics.cost":0.069645,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"DESKTOP","ad_metrics.impressions":183,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-11T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-12T12:03:53.410000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-12T12:02:28.595000+00:00","server_upload_time":"2023-02-12T12:02:39.319000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"518af7fe-aacd-11ed-9a80-43c1bac2ac7b","version_name":null},"emitted_at":1677160709960} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-TABLET-2023-02-11","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-11T08:00:00+00:00","client_upload_time":"2023-02-12T12:02:28.595000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":661524851,"event_properties":{"ad_metrics.cost":0.100511,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"TABLET","ad_metrics.impressions":125,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-11T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-12T12:03:53.410000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-12T12:02:28.595000+00:00","server_upload_time":"2023-02-12T12:02:39.319000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"518b0451-aacd-11ed-bf81-43c1bac2ac7b","version_name":null},"emitted_at":1677160709962} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-MOBILE-2023-02-11","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-11T08:00:00+00:00","client_upload_time":"2023-02-12T12:02:28.595000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":608278585,"event_properties":{"ad_metrics.cost":2.019566,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"MOBILE","ad_metrics.impressions":2505,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":3,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":3,"campaign_id":19410069806},"event_time":"2023-02-11T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-12T12:03:53.410000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-12T12:02:28.595000+00:00","server_upload_time":"2023-02-12T12:02:39.319000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"518afebd-aacd-11ed-a1be-43c1bac2ac7b","version_name":null},"emitted_at":1677160709964} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-DESKTOP-2023-02-12","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-12T08:00:00+00:00","client_upload_time":"2023-02-13T12:02:12.416000+00:00","country":null,"data":{"user_properties_updated":true,"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":756118159,"event_properties":{"ad_metrics.cost":0.047594,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"DESKTOP","ad_metrics.impressions":228,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-12T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-13T12:02:26.981000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-13T12:02:12.416000+00:00","server_upload_time":"2023-02-13T12:02:22.901000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"488ce6ab-ab96-11ed-a18e-516670498ef9","version_name":null},"emitted_at":1677160710459} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-TABLET-2023-02-12","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-12T08:00:00+00:00","client_upload_time":"2023-02-13T12:02:12.416000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":726820846,"event_properties":{"ad_metrics.cost":0.094987,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"TABLET","ad_metrics.impressions":135,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-12T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-13T12:02:26.981000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-13T12:02:12.416000+00:00","server_upload_time":"2023-02-13T12:02:22.901000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"488cf2ca-ab96-11ed-baad-516670498ef9","version_name":null},"emitted_at":1677160710461} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-MOBILE-2023-02-12","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-12T08:00:00+00:00","client_upload_time":"2023-02-13T12:02:12.416000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":30838997,"event_properties":{"ad_metrics.cost":2.057797,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"MOBILE","ad_metrics.impressions":2555,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":7,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":7,"campaign_id":19410069806},"event_time":"2023-02-12T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-13T12:02:26.981000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-13T12:02:12.416000+00:00","server_upload_time":"2023-02-13T12:02:22.901000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"488ced3a-ab96-11ed-9cc6-516670498ef9","version_name":null},"emitted_at":1677160710463} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-DESKTOP-2023-02-13","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-13T08:00:00+00:00","client_upload_time":"2023-02-14T12:02:09.474000+00:00","country":null,"data":{"user_properties_updated":true,"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":602281810,"event_properties":{"ad_metrics.cost":0.084583,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"DESKTOP","ad_metrics.impressions":227,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-13T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-14T12:02:24.303000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-14T12:02:09.474000+00:00","server_upload_time":"2023-02-14T12:02:20.979000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"7152006b-ac5f-11ed-bb6d-b95ddc26bbd1","version_name":null},"emitted_at":1677160710878} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-TABLET-2023-02-13","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-13T08:00:00+00:00","client_upload_time":"2023-02-14T12:02:09.474000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":204201377,"event_properties":{"ad_metrics.cost":0.1489,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"TABLET","ad_metrics.impressions":191,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-13T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-14T12:02:24.303000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-14T12:02:09.474000+00:00","server_upload_time":"2023-02-14T12:02:20.979000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"71520cd4-ac5f-11ed-8538-b95ddc26bbd1","version_name":null},"emitted_at":1677160710880} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-MOBILE-2023-02-13","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-13T08:00:00+00:00","client_upload_time":"2023-02-14T12:02:09.474000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":96617686,"event_properties":{"ad_metrics.cost":2.033321,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"MOBILE","ad_metrics.impressions":2658,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":5,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":5,"campaign_id":19410069806},"event_time":"2023-02-13T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-14T12:02:24.303000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-14T12:02:09.474000+00:00","server_upload_time":"2023-02-14T12:02:20.979000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"71520734-ac5f-11ed-bc4a-b95ddc26bbd1","version_name":null},"emitted_at":1677160710882} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-DESKTOP-2023-02-14","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-14T08:00:00+00:00","client_upload_time":"2023-02-15T12:02:02.211000+00:00","country":null,"data":{"user_properties_updated":true,"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":325453045,"event_properties":{"ad_metrics.cost":0.065906,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"DESKTOP","ad_metrics.impressions":291,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-14T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-15T12:02:17.536000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-15T12:02:02.211000+00:00","server_upload_time":"2023-02-15T12:02:15.558000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"97bd311f-ad28-11ed-a272-9937469197fb","version_name":null},"emitted_at":1677160711338} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-TABLET-2023-02-14","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-14T08:00:00+00:00","client_upload_time":"2023-02-15T12:02:02.211000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":579050854,"event_properties":{"ad_metrics.cost":0.085808,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"TABLET","ad_metrics.impressions":166,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-14T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-15T12:02:17.536000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-15T12:02:02.211000+00:00","server_upload_time":"2023-02-15T12:02:15.558000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"97bd3d80-ad28-11ed-9543-9937469197fb","version_name":null},"emitted_at":1677160711340} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-MOBILE-2023-02-14","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-14T08:00:00+00:00","client_upload_time":"2023-02-15T12:02:02.211000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":153980233,"event_properties":{"ad_metrics.cost":2.036793,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"MOBILE","ad_metrics.impressions":2514,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":4,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":4,"campaign_id":19410069806},"event_time":"2023-02-14T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-15T12:02:17.536000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-15T12:02:02.211000+00:00","server_upload_time":"2023-02-15T12:02:15.558000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"97bd37e1-ad28-11ed-a554-9937469197fb","version_name":null},"emitted_at":1677160711342} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-DESKTOP-2023-02-15","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-15T08:00:00+00:00","client_upload_time":"2023-02-16T12:01:18.942000+00:00","country":null,"data":{"user_properties_updated":true,"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":230240803,"event_properties":{"ad_metrics.cost":0.043522,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"DESKTOP","ad_metrics.impressions":193,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-15T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-16T12:01:41.299000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-16T12:01:18.942000+00:00","server_upload_time":"2023-02-16T12:01:39.526000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"ac8bae8d-adf1-11ed-b15b-91b6ce29e523","version_name":null},"emitted_at":1677160711799} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-CONNECTED_TV-2023-02-15","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-15T08:00:00+00:00","client_upload_time":"2023-02-16T12:01:18.942000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":324823220,"event_properties":{"ad_metrics.cost":3e-05,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"CONNECTED_TV","ad_metrics.impressions":1,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-15T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-16T12:01:41.299000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-16T12:01:18.942000+00:00","server_upload_time":"2023-02-16T12:01:39.526000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"ac8bc13f-adf1-11ed-b15c-91b6ce29e523","version_name":null},"emitted_at":1677160711801} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-TABLET-2023-02-15","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-15T08:00:00+00:00","client_upload_time":"2023-02-16T12:01:18.942000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":427159891,"event_properties":{"ad_metrics.cost":0.127895,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"TABLET","ad_metrics.impressions":173,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":1,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":1,"campaign_id":19410069806},"event_time":"2023-02-15T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-16T12:01:41.299000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-16T12:01:18.942000+00:00","server_upload_time":"2023-02-16T12:01:39.526000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"ac8bbbc1-adf1-11ed-9548-91b6ce29e523","version_name":null},"emitted_at":1677160711803} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-MOBILE-2023-02-15","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-15T08:00:00+00:00","client_upload_time":"2023-02-16T12:01:18.942000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":26870094,"event_properties":{"ad_metrics.cost":2.069498,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"MOBILE","ad_metrics.impressions":2644,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":5,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":5,"campaign_id":19410069806},"event_time":"2023-02-15T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-16T12:01:41.299000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-16T12:01:18.942000+00:00","server_upload_time":"2023-02-16T12:01:39.526000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"ac8bb5e3-adf1-11ed-b665-91b6ce29e523","version_name":null},"emitted_at":1677160711805} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-DESKTOP-2023-02-16","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-16T08:00:00+00:00","client_upload_time":"2023-02-17T12:03:01.224000+00:00","country":null,"data":{"user_properties_updated":true,"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":285988082,"event_properties":{"ad_metrics.cost":0.032337,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"DESKTOP","ad_metrics.impressions":130,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-16T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-17T12:03:21.797000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-17T12:03:01.224000+00:00","server_upload_time":"2023-02-17T12:03:12.561000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"12ad685e-aebb-11ed-85a1-f5fef6fa6c3e","version_name":null},"emitted_at":1677160712406} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-TABLET-2023-02-16","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-16T08:00:00+00:00","client_upload_time":"2023-02-17T12:03:01.224000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":945641623,"event_properties":{"ad_metrics.cost":0.177236,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"TABLET","ad_metrics.impressions":215,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-16T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-17T12:03:21.797000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-17T12:03:01.224000+00:00","server_upload_time":"2023-02-17T12:03:12.561000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"12ad74f4-aebb-11ed-af5e-f5fef6fa6c3e","version_name":null},"emitted_at":1677160712408} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-MOBILE-2023-02-16","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-16T08:00:00+00:00","client_upload_time":"2023-02-17T12:03:01.224000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":684001950,"event_properties":{"ad_metrics.cost":2.002117,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"MOBILE","ad_metrics.impressions":2518,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":5,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":5,"campaign_id":19410069806},"event_time":"2023-02-16T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-17T12:03:21.797000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-17T12:03:01.224000+00:00","server_upload_time":"2023-02-17T12:03:12.561000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"12ad6f4f-aebb-11ed-849c-f5fef6fa6c3e","version_name":null},"emitted_at":1677160712411} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-DESKTOP-2023-02-18","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-18T08:00:00+00:00","client_upload_time":"2023-02-19T12:03:29.271000+00:00","country":null,"data":{"user_properties_updated":true,"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":131262759,"event_properties":{"ad_metrics.cost":0.029716,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"DESKTOP","ad_metrics.impressions":142,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-18T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-19T12:03:51.321000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-19T12:03:29.271000+00:00","server_upload_time":"2023-02-19T12:03:48.945000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"7948776d-b04d-11ed-9e25-0d3650f391bb","version_name":null},"emitted_at":1677160713566} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-TABLET-2023-02-18","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-18T08:00:00+00:00","client_upload_time":"2023-02-19T12:03:29.271000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":297590864,"event_properties":{"ad_metrics.cost":0.095908,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"TABLET","ad_metrics.impressions":105,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-18T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-19T12:03:51.321000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-19T12:03:29.271000+00:00","server_upload_time":"2023-02-19T12:03:48.945000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"794883a6-b04d-11ed-aa23-0d3650f391bb","version_name":null},"emitted_at":1677160713568} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-MOBILE-2023-02-18","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-18T08:00:00+00:00","client_upload_time":"2023-02-19T12:03:29.271000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":275214096,"event_properties":{"ad_metrics.cost":2.043589,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"MOBILE","ad_metrics.impressions":2421,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":5,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":5,"campaign_id":19410069806},"event_time":"2023-02-18T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-19T12:03:51.321000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-19T12:03:29.271000+00:00","server_upload_time":"2023-02-19T12:03:48.945000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"79487e0a-b04d-11ed-92e7-0d3650f391bb","version_name":null},"emitted_at":1677160713570} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-DESKTOP-2023-02-17","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-17T08:00:00+00:00","client_upload_time":"2023-02-19T13:01:25.998000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":592568898,"event_properties":{"ad_metrics.cost":0.070942,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"DESKTOP","ad_metrics.impressions":225,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-17T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-19T13:01:40.473000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-19T13:01:25.998000+00:00","server_upload_time":"2023-02-19T13:01:37.076000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"8d1b530d-b055-11ed-b3db-113a8bccd94d","version_name":null},"emitted_at":1677160713572} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-TABLET-2023-02-17","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-17T08:00:00+00:00","client_upload_time":"2023-02-19T13:01:25.998000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":921057594,"event_properties":{"ad_metrics.cost":0.082843,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"TABLET","ad_metrics.impressions":101,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-17T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-19T13:01:40.473000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-19T13:01:25.998000+00:00","server_upload_time":"2023-02-19T13:01:37.076000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"8d1b605e-b055-11ed-8e2a-113a8bccd94d","version_name":null},"emitted_at":1677160713574} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-MOBILE-2023-02-17","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-17T08:00:00+00:00","client_upload_time":"2023-02-19T13:01:25.998000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":771686719,"event_properties":{"ad_metrics.cost":2.034163,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"MOBILE","ad_metrics.impressions":2612,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":2,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":2,"campaign_id":19410069806},"event_time":"2023-02-17T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-19T13:01:40.473000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-19T13:01:25.998000+00:00","server_upload_time":"2023-02-19T13:01:37.076000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"8d1b59c4-b055-11ed-a1df-113a8bccd94d","version_name":null},"emitted_at":1677160713656} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-DESKTOP-2023-02-19","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-19T08:00:00+00:00","client_upload_time":"2023-02-20T12:03:35.170000+00:00","country":null,"data":{"user_properties_updated":true,"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":664632971,"event_properties":{"ad_metrics.cost":0.031298,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"DESKTOP","ad_metrics.impressions":139,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-19T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-20T12:04:00.393000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-20T12:03:35.170000+00:00","server_upload_time":"2023-02-20T12:03:46.062000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"a907cef2-b116-11ed-87dd-bdba20a14ceb","version_name":null},"emitted_at":1677160714816} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-TABLET-2023-02-19","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-19T08:00:00+00:00","client_upload_time":"2023-02-20T12:03:35.170000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":600181548,"event_properties":{"ad_metrics.cost":0.112333,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"TABLET","ad_metrics.impressions":154,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-19T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-20T12:04:00.393000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-20T12:03:35.170000+00:00","server_upload_time":"2023-02-20T12:03:46.062000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"a907db97-b116-11ed-9271-bdba20a14ceb","version_name":null},"emitted_at":1677160714819} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-MOBILE-2023-02-19","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-19T08:00:00+00:00","client_upload_time":"2023-02-20T12:03:35.170000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":780220200,"event_properties":{"ad_metrics.cost":2.061574,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"MOBILE","ad_metrics.impressions":2389,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":4,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":4,"campaign_id":19410069806},"event_time":"2023-02-19T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-20T12:04:00.393000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-20T12:03:35.170000+00:00","server_upload_time":"2023-02-20T12:03:46.062000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"a907d5dc-b116-11ed-8b8e-bdba20a14ceb","version_name":null},"emitted_at":1677160714821} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-DESKTOP-2023-02-20","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-20T08:00:00+00:00","client_upload_time":"2023-02-21T12:01:29.891000+00:00","country":null,"data":{"user_properties_updated":true,"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":801727177,"event_properties":{"ad_metrics.cost":0.045563,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"DESKTOP","ad_metrics.impressions":188,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-20T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-21T12:01:48.145000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-21T12:01:29.891000+00:00","server_upload_time":"2023-02-21T12:01:45.796000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"84ad0ece-b1df-11ed-8b09-bdc83361662a","version_name":null},"emitted_at":1677160715235} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-TABLET-2023-02-20","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-20T08:00:00+00:00","client_upload_time":"2023-02-21T12:01:29.891000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":847817114,"event_properties":{"ad_metrics.cost":0.153187,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"TABLET","ad_metrics.impressions":191,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-20T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-21T12:01:48.145000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-21T12:01:29.891000+00:00","server_upload_time":"2023-02-21T12:01:45.796000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"84ad1bde-b1df-11ed-ab01-bdc83361662a","version_name":null},"emitted_at":1677160715237} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-MOBILE-2023-02-20","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-20T08:00:00+00:00","client_upload_time":"2023-02-21T12:01:29.891000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":795787975,"event_properties":{"ad_metrics.cost":2.096516,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"MOBILE","ad_metrics.impressions":2720,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":3,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":3,"campaign_id":19410069806},"event_time":"2023-02-20T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-21T12:01:48.145000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-21T12:01:29.891000+00:00","server_upload_time":"2023-02-21T12:01:45.796000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"84ad15c9-b1df-11ed-b84e-bdc83361662a","version_name":null},"emitted_at":1677160715263} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-DESKTOP-2023-02-21","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-21T08:00:00+00:00","client_upload_time":"2023-02-22T12:02:15.518000+00:00","country":null,"data":{"user_properties_updated":true,"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":354116550,"event_properties":{"ad_metrics.cost":0.057382,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"DESKTOP","ad_metrics.impressions":186,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-21T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-22T12:02:37.973000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-22T12:02:15.518000+00:00","server_upload_time":"2023-02-22T12:02:34.242000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"ccc51943-b2a8-11ed-ac61-871718cb9747","version_name":null},"emitted_at":1677160715762} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-TABLET-2023-02-21","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-21T08:00:00+00:00","client_upload_time":"2023-02-22T12:02:15.518000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":541365877,"event_properties":{"ad_metrics.cost":0.118621,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"TABLET","ad_metrics.impressions":141,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-21T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-22T12:02:37.973000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-22T12:02:15.518000+00:00","server_upload_time":"2023-02-22T12:02:34.242000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"ccc525c9-b2a8-11ed-850f-871718cb9747","version_name":null},"emitted_at":1677160715764} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-MOBILE-2023-02-21","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-21T08:00:00+00:00","client_upload_time":"2023-02-22T12:02:15.518000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":562697441,"event_properties":{"ad_metrics.cost":2.088394,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"MOBILE","ad_metrics.impressions":2726,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":9,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":9,"campaign_id":19410069806},"event_time":"2023-02-21T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-22T12:02:37.973000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-22T12:02:15.518000+00:00","server_upload_time":"2023-02-22T12:02:34.242000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"ccc52020-b2a8-11ed-abd4-871718cb9747","version_name":null},"emitted_at":1677160715767} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-DESKTOP-2023-02-22","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-22T08:00:00+00:00","client_upload_time":"2023-02-23T12:04:28.073000+00:00","country":null,"data":{"user_properties_updated":true,"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":216489823,"event_properties":{"ad_metrics.cost":0.030981,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"DESKTOP","ad_metrics.impressions":137,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-22T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-23T12:04:44.116000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-23T12:04:28.073000+00:00","server_upload_time":"2023-02-23T12:04:40.311000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"426992d9-b372-11ed-8ac0-137abd2e6743","version_name":null},"emitted_at":1677160717689} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-TABLET-2023-02-22","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-22T08:00:00+00:00","client_upload_time":"2023-02-23T12:04:28.073000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":910022464,"event_properties":{"ad_metrics.cost":0.080812,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"TABLET","ad_metrics.impressions":118,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":0,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":0,"campaign_id":19410069806},"event_time":"2023-02-22T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-23T12:04:44.116000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-23T12:04:28.073000+00:00","server_upload_time":"2023-02-23T12:04:40.311000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"4269a22c-b372-11ed-84ce-137abd2e6743","version_name":null},"emitted_at":1677160717691} -{"stream":"events","data":{"$insert_id":"google-ad-4651612872-643022056303-MOBILE-2023-02-22","$insert_key":null,"$schema":null,"adid":null,"amplitude_attribution_ids":null,"amplitude_event_type":null,"amplitude_id":550106004607,"app":434735,"city":null,"client_event_time":"2023-02-22T08:00:00+00:00","client_upload_time":"2023-02-23T12:04:28.073000+00:00","country":null,"data":{"vacuum_source_id":"5955","group_first_event":{},"group_ids":{}},"data_type":"event","device_brand":null,"device_carrier":null,"device_family":null,"device_id":"google-ad-4651612872-643022056303","device_manufacturer":null,"device_model":null,"device_type":null,"dma":null,"event_id":119391830,"event_properties":{"ad_metrics.cost":2.106073,"campaign_advertising_channel_type":"DISPLAY","ad_segment_device":"MOBILE","ad_metrics.impressions":2741,"ad_group_type":"DISPLAY_STANDARD","campaign_name":"Brand awareness and reach-Display-1","ad_group_name":"Ad group 1","ad_id":643022056303,"campaign_start_date":"2022-12-28","final_url":"https://airbyte.com","ad_platform":"google","campaign_end_date":"2037-12-30","ad_metrics.clicks":1,"ad_group_id":144799120517,"ad_metrics.conversions":0,"ad_metrics.interactions":1,"campaign_id":19410069806},"event_time":"2023-02-22T08:00:00+00:00","event_type":"Daily Ad Metrics","global_user_properties":null,"group_properties":{},"groups":{},"idfa":null,"ip_address":null,"is_attribution_event":null,"language":null,"library":"google_ads","location_lat":null,"location_lng":null,"os_name":null,"os_version":null,"partner_id":null,"paying":null,"plan":{},"platform":null,"processed_time":"2023-02-23T12:04:44.116000+00:00","region":null,"sample_rate":null,"server_received_time":"2023-02-23T12:04:28.073000+00:00","server_upload_time":"2023-02-23T12:04:40.311000+00:00","session_id":-1,"source_id":null,"start_version":null,"user_creation_time":null,"user_id":null,"user_properties":{"country":"test","device_model":"test","city":"test","os_version":"test","City":"London","platform":"test","device_manufacturer":"test","carrier":"test","device_brand":"test","Region":"London","DMA":"London","Country":"UK","os_name":"test","region":"test"},"uuid":"42699ba5-b372-11ed-8487-137abd2e6743","version_name":null},"emitted_at":1677160717693} +{"stream": "active_users", "data": {"date": "2023-08-28", "statistics": {"(none)": 0}}, "emitted_at": 1694709513300} +{"stream": "active_users", "data": {"date": "2023-08-29", "statistics": {"(none)": 0}}, "emitted_at": 1694709513302} +{"stream": "active_users", "data": {"date": "2023-08-30", "statistics": {"(none)": 0}}, "emitted_at": 1694709513303} +{"stream": "active_users", "data": {"date": "2023-08-31", "statistics": {"(none)": 0}}, "emitted_at": 1694709513305} +{"stream": "average_session_length", "data": {"date": "2023-07-27", "length": 0}, "emitted_at": 1694709517086} +{"stream": "average_session_length", "data": {"date": "2023-07-28", "length": 0}, "emitted_at": 1694709517088} +{"stream": "average_session_length", "data": {"date": "2023-07-29", "length": 0}, "emitted_at": 1694709517090} +{"stream": "average_session_length", "data": {"date": "2023-07-30", "length": 0}, "emitted_at": 1694709517092} +{"stream": "average_session_length", "data": {"date": "2023-08-26", "length": 0}, "emitted_at": 1694709518827} +{"stream": "average_session_length", "data": {"date": "2023-08-27", "length": 0}, "emitted_at": 1694709518828} +{"stream": "average_session_length", "data": {"date": "2023-08-28", "length": 0}, "emitted_at": 1694709518830} +{"stream": "average_session_length", "data": {"date": "2023-08-29", "length": 0}, "emitted_at": 1694709518832} +{"stream": "events", "data": {"$insert_id": "google-ad-4651612872-643022056303-DESKTOP-2023-08-24", "$insert_key": null, "$schema": null, "adid": null, "amplitude_attribution_ids": null, "amplitude_event_type": null, "amplitude_id": 550106004607, "app": 434735, "city": null, "client_event_time": "2023-08-24T07:00:00+00:00", "client_upload_time": "2023-08-25T11:04:55.821000+00:00", "country": null, "data": {"path": "/batch", "user_properties_updated": true, "vacuum_source_id": "5955", "group_first_event": {}, "group_ids": {}}, "data_type": "event", "device_brand": null, "device_carrier": null, "device_family": null, "device_id": "google-ad-4651612872-643022056303", "device_manufacturer": null, "device_model": null, "device_type": null, "dma": null, "event_id": 355175889, "event_properties": {"ad_metrics.cost": 0.528957, "campaign_advertising_channel_type": "DISPLAY", "ad_segment_device": "DESKTOP", "ad_metrics.impressions": 1535, "ad_group_type": "DISPLAY_STANDARD", "campaign_name": "Brand awareness and reach-Display-1", "ad_group_name": "Ad group 1", "ad_id": 643022056303, "campaign_start_date": "2022-12-28", "final_url": "https://airbyte.com", "ad_platform": "google", "campaign_end_date": "2037-12-30", "ad_metrics.clicks": 0, "ad_group_id": 144799120517, "ad_metrics.conversions": 0.0, "ad_metrics.interactions": 0, "campaign_id": 19410069806}, "event_time": "2023-08-24T07:00:00+00:00", "event_type": "Daily Ad Metrics", "global_user_properties": null, "group_properties": {}, "groups": {}, "idfa": null, "ip_address": null, "is_attribution_event": null, "language": null, "library": "google_ads", "location_lat": null, "location_lng": null, "os_name": null, "os_version": null, "partner_id": null, "paying": null, "plan": {}, "platform": null, "processed_time": "2023-08-25T11:05:08.912000+00:00", "region": null, "sample_rate": null, "server_received_time": "2023-08-25T11:04:55.821000+00:00", "server_upload_time": "2023-08-25T11:05:08.013000+00:00", "session_id": -1, "source_id": null, "start_version": null, "user_creation_time": null, "user_id": null, "user_properties": {"country": "test", "device_model": "test", "city": "test", "os_version": "test", "City": "London", "platform": "test", "device_manufacturer": "test", "carrier": "test", "device_brand": "test", "Region": "London", "DMA": "London", "Country": "UK", "os_name": "test", "region": "test"}, "uuid": "37bcd2f0-2688-47d5-ba90-76b0bd13b0f8", "version_name": null}, "emitted_at": 1694709577929} +{"stream": "events", "data": {"$insert_id": "google-ad-4651612872-643022056303-MOBILE-2023-08-24", "$insert_key": null, "$schema": null, "adid": null, "amplitude_attribution_ids": null, "amplitude_event_type": null, "amplitude_id": 550106004607, "app": 434735, "city": null, "client_event_time": "2023-08-24T07:00:00+00:00", "client_upload_time": "2023-08-25T11:04:55.821000+00:00", "country": null, "data": {"path": "/batch", "vacuum_source_id": "5955", "group_first_event": {}, "group_ids": {}}, "data_type": "event", "device_brand": null, "device_carrier": null, "device_family": null, "device_id": "google-ad-4651612872-643022056303", "device_manufacturer": null, "device_model": null, "device_type": null, "dma": null, "event_id": 604299598, "event_properties": {"ad_metrics.cost": 11.398659, "campaign_advertising_channel_type": "DISPLAY", "ad_segment_device": "MOBILE", "ad_metrics.impressions": 15084, "ad_group_type": "DISPLAY_STANDARD", "campaign_name": "Brand awareness and reach-Display-1", "ad_group_name": "Ad group 1", "ad_id": 643022056303, "campaign_start_date": "2022-12-28", "final_url": "https://airbyte.com", "ad_platform": "google", "campaign_end_date": "2037-12-30", "ad_metrics.clicks": 28, "ad_group_id": 144799120517, "ad_metrics.conversions": 0.0, "ad_metrics.interactions": 28, "campaign_id": 19410069806}, "event_time": "2023-08-24T07:00:00+00:00", "event_type": "Daily Ad Metrics", "global_user_properties": null, "group_properties": {}, "groups": {}, "idfa": null, "ip_address": null, "is_attribution_event": null, "language": null, "library": "google_ads", "location_lat": null, "location_lng": null, "os_name": null, "os_version": null, "partner_id": null, "paying": null, "plan": {}, "platform": null, "processed_time": "2023-08-25T11:05:08.912000+00:00", "region": null, "sample_rate": null, "server_received_time": "2023-08-25T11:04:55.821000+00:00", "server_upload_time": "2023-08-25T11:05:08.013000+00:00", "session_id": -1, "source_id": null, "start_version": null, "user_creation_time": null, "user_id": null, "user_properties": {"country": "test", "device_model": "test", "city": "test", "os_version": "test", "City": "London", "platform": "test", "device_manufacturer": "test", "carrier": "test", "device_brand": "test", "Region": "London", "DMA": "London", "Country": "UK", "os_name": "test", "region": "test"}, "uuid": "60320805-6886-43d6-b2ea-d3a6eccefee2", "version_name": null}, "emitted_at": 1694709577931} +{"stream": "events", "data": {"$insert_id": "google-ad-4651612872-643022056303-TABLET-2023-08-24", "$insert_key": null, "$schema": null, "adid": null, "amplitude_attribution_ids": null, "amplitude_event_type": null, "amplitude_id": 550106004607, "app": 434735, "city": null, "client_event_time": "2023-08-24T07:00:00+00:00", "client_upload_time": "2023-08-25T11:04:55.821000+00:00", "country": null, "data": {"path": "/batch", "vacuum_source_id": "5955", "group_first_event": {}, "group_ids": {}}, "data_type": "event", "device_brand": null, "device_carrier": null, "device_family": null, "device_id": "google-ad-4651612872-643022056303", "device_manufacturer": null, "device_model": null, "device_type": null, "dma": null, "event_id": 798716893, "event_properties": {"ad_metrics.cost": 0.644529, "campaign_advertising_channel_type": "DISPLAY", "ad_segment_device": "TABLET", "ad_metrics.impressions": 931, "ad_group_type": "DISPLAY_STANDARD", "campaign_name": "Brand awareness and reach-Display-1", "ad_group_name": "Ad group 1", "ad_id": 643022056303, "campaign_start_date": "2022-12-28", "final_url": "https://airbyte.com", "ad_platform": "google", "campaign_end_date": "2037-12-30", "ad_metrics.clicks": 3, "ad_group_id": 144799120517, "ad_metrics.conversions": 0.0, "ad_metrics.interactions": 3, "campaign_id": 19410069806}, "event_time": "2023-08-24T07:00:00+00:00", "event_type": "Daily Ad Metrics", "global_user_properties": null, "group_properties": {}, "groups": {}, "idfa": null, "ip_address": null, "is_attribution_event": null, "language": null, "library": "google_ads", "location_lat": null, "location_lng": null, "os_name": null, "os_version": null, "partner_id": null, "paying": null, "plan": {}, "platform": null, "processed_time": "2023-08-25T11:05:08.912000+00:00", "region": null, "sample_rate": null, "server_received_time": "2023-08-25T11:04:55.821000+00:00", "server_upload_time": "2023-08-25T11:05:08.013000+00:00", "session_id": -1, "source_id": null, "start_version": null, "user_creation_time": null, "user_id": null, "user_properties": {"country": "test", "device_model": "test", "city": "test", "os_version": "test", "City": "London", "platform": "test", "device_manufacturer": "test", "carrier": "test", "device_brand": "test", "Region": "London", "DMA": "London", "Country": "UK", "os_name": "test", "region": "test"}, "uuid": "9ae0c1e5-3c39-4a4d-af8b-0902fe889410", "version_name": null}, "emitted_at": 1694709577932} +{"stream": "events", "data": {"$insert_id": "google-ad-4651612872-19959839954-DESKTOP-2023-08-24", "$insert_key": null, "$schema": null, "adid": null, "amplitude_attribution_ids": null, "amplitude_event_type": null, "amplitude_id": 617244169723, "app": 434735, "city": null, "client_event_time": "2023-08-24T07:00:00+00:00", "client_upload_time": "2023-08-25T11:04:55.821000+00:00", "country": null, "data": {"path": "/batch", "user_properties_updated": true, "vacuum_source_id": "5955", "group_first_event": {}, "group_ids": {}}, "data_type": "event", "device_brand": null, "device_carrier": null, "device_family": null, "device_id": "google-ad-4651612872-19959839954", "device_manufacturer": null, "device_model": null, "device_type": null, "dma": null, "event_id": 557213115, "event_properties": {"campaign_name": "Performance Max-5", "campaign_start_date": "2023-04-10", "ad_platform": "google", "campaign_end_date": "2037-12-30", "ad_metrics.cost": 0.12, "ad_metrics.clicks": 3, "campaign_advertising_channel_type": "PERFORMANCE_MAX", "ad_segment_device": "DESKTOP", "ad_metrics.conversions": 0.0, "ad_metrics.impressions": 3, "ad_metrics.interactions": 3, "campaign_id": 19959839954}, "event_time": "2023-08-24T07:00:00+00:00", "event_type": "Daily Ad Metrics", "global_user_properties": null, "group_properties": {}, "groups": {}, "idfa": null, "ip_address": null, "is_attribution_event": null, "language": null, "library": "google_ads", "location_lat": null, "location_lng": null, "os_name": null, "os_version": null, "partner_id": null, "paying": null, "plan": {}, "platform": null, "processed_time": "2023-08-25T11:05:08.968000+00:00", "region": null, "sample_rate": null, "server_received_time": "2023-08-25T11:04:55.821000+00:00", "server_upload_time": "2023-08-25T11:05:08.162000+00:00", "session_id": -1, "source_id": null, "start_version": null, "user_creation_time": null, "user_id": null, "user_properties": {}, "uuid": "b7bff8c4-382d-4438-af45-b289aecced89", "version_name": null}, "emitted_at": 1694709577933} +{"stream": "events", "data": {"$insert_id": "google-ad-4651612872-643022056303-DESKTOP-2023-08-25", "$insert_key": null, "$schema": null, "adid": null, "amplitude_attribution_ids": null, "amplitude_event_type": null, "amplitude_id": 550106004607, "app": 434735, "city": null, "client_event_time": "2023-08-25T07:00:00+00:00", "client_upload_time": "2023-08-26T11:03:07.417000+00:00", "country": null, "data": {"path": "/batch", "user_properties_updated": true, "vacuum_source_id": "5955", "group_first_event": {}, "group_ids": {}}, "data_type": "event", "device_brand": null, "device_carrier": null, "device_family": null, "device_id": "google-ad-4651612872-643022056303", "device_manufacturer": null, "device_model": null, "device_type": null, "dma": null, "event_id": 93897159, "event_properties": {"ad_metrics.cost": 0.632838, "campaign_advertising_channel_type": "DISPLAY", "ad_segment_device": "DESKTOP", "ad_metrics.impressions": 1797, "ad_group_type": "DISPLAY_STANDARD", "campaign_name": "Brand awareness and reach-Display-1", "ad_group_name": "Ad group 1", "ad_id": 643022056303, "campaign_start_date": "2022-12-28", "final_url": "https://airbyte.com", "ad_platform": "google", "campaign_end_date": "2037-12-30", "ad_metrics.clicks": 0, "ad_group_id": 144799120517, "ad_metrics.conversions": 0.0, "ad_metrics.interactions": 0, "campaign_id": 19410069806}, "event_time": "2023-08-25T07:00:00+00:00", "event_type": "Daily Ad Metrics", "global_user_properties": null, "group_properties": {}, "groups": {}, "idfa": null, "ip_address": null, "is_attribution_event": null, "language": null, "library": "google_ads", "location_lat": null, "location_lng": null, "os_name": null, "os_version": null, "partner_id": null, "paying": null, "plan": {}, "platform": null, "processed_time": "2023-08-26T11:03:24.953000+00:00", "region": null, "sample_rate": null, "server_received_time": "2023-08-26T11:03:07.417000+00:00", "server_upload_time": "2023-08-26T11:03:23.284000+00:00", "session_id": -1, "source_id": null, "start_version": null, "user_creation_time": null, "user_id": null, "user_properties": {"country": "test", "device_model": "test", "city": "test", "os_version": "test", "City": "London", "platform": "test", "device_manufacturer": "test", "carrier": "test", "device_brand": "test", "Region": "London", "DMA": "London", "Country": "UK", "os_name": "test", "region": "test"}, "uuid": "79192e37-2340-475f-8e96-f52cee76a2ab", "version_name": null}, "emitted_at": 1694709578891} +{"stream": "events", "data": {"$insert_id": "google-ad-4651612872-643022056303-TABLET-2023-08-25", "$insert_key": null, "$schema": null, "adid": null, "amplitude_attribution_ids": null, "amplitude_event_type": null, "amplitude_id": 550106004607, "app": 434735, "city": null, "client_event_time": "2023-08-25T07:00:00+00:00", "client_upload_time": "2023-08-26T11:03:07.417000+00:00", "country": null, "data": {"path": "/batch", "vacuum_source_id": "5955", "group_first_event": {}, "group_ids": {}}, "data_type": "event", "device_brand": null, "device_carrier": null, "device_family": null, "device_id": "google-ad-4651612872-643022056303", "device_manufacturer": null, "device_model": null, "device_type": null, "dma": null, "event_id": 552664481, "event_properties": {"ad_metrics.cost": 0.974837, "campaign_advertising_channel_type": "DISPLAY", "ad_segment_device": "TABLET", "ad_metrics.impressions": 1222, "ad_group_type": "DISPLAY_STANDARD", "campaign_name": "Brand awareness and reach-Display-1", "ad_group_name": "Ad group 1", "ad_id": 643022056303, "campaign_start_date": "2022-12-28", "final_url": "https://airbyte.com", "ad_platform": "google", "campaign_end_date": "2037-12-30", "ad_metrics.clicks": 2, "ad_group_id": 144799120517, "ad_metrics.conversions": 0.0, "ad_metrics.interactions": 2, "campaign_id": 19410069806}, "event_time": "2023-08-25T07:00:00+00:00", "event_type": "Daily Ad Metrics", "global_user_properties": null, "group_properties": {}, "groups": {}, "idfa": null, "ip_address": null, "is_attribution_event": null, "language": null, "library": "google_ads", "location_lat": null, "location_lng": null, "os_name": null, "os_version": null, "partner_id": null, "paying": null, "plan": {}, "platform": null, "processed_time": "2023-08-26T11:03:24.953000+00:00", "region": null, "sample_rate": null, "server_received_time": "2023-08-26T11:03:07.417000+00:00", "server_upload_time": "2023-08-26T11:03:23.284000+00:00", "session_id": -1, "source_id": null, "start_version": null, "user_creation_time": null, "user_id": null, "user_properties": {"country": "test", "device_model": "test", "city": "test", "os_version": "test", "City": "London", "platform": "test", "device_manufacturer": "test", "carrier": "test", "device_brand": "test", "Region": "London", "DMA": "London", "Country": "UK", "os_name": "test", "region": "test"}, "uuid": "efb44e1e-7818-4470-b5cd-7a77ceff7613", "version_name": null}, "emitted_at": 1694709578893} +{"stream": "events", "data": {"$insert_id": "google-ad-4651612872-643022056303-MOBILE-2023-08-25", "$insert_key": null, "$schema": null, "adid": null, "amplitude_attribution_ids": null, "amplitude_event_type": null, "amplitude_id": 550106004607, "app": 434735, "city": null, "client_event_time": "2023-08-25T07:00:00+00:00", "client_upload_time": "2023-08-26T11:03:07.417000+00:00", "country": null, "data": {"path": "/batch", "vacuum_source_id": "5955", "group_first_event": {}, "group_ids": {}}, "data_type": "event", "device_brand": null, "device_carrier": null, "device_family": null, "device_id": "google-ad-4651612872-643022056303", "device_manufacturer": null, "device_model": null, "device_type": null, "dma": null, "event_id": 908969629, "event_properties": {"ad_metrics.cost": 10.863868, "campaign_advertising_channel_type": "DISPLAY", "ad_segment_device": "MOBILE", "ad_metrics.impressions": 14025, "ad_group_type": "DISPLAY_STANDARD", "campaign_name": "Brand awareness and reach-Display-1", "ad_group_name": "Ad group 1", "ad_id": 643022056303, "campaign_start_date": "2022-12-28", "final_url": "https://airbyte.com", "ad_platform": "google", "campaign_end_date": "2037-12-30", "ad_metrics.clicks": 18, "ad_group_id": 144799120517, "ad_metrics.conversions": 0.0, "ad_metrics.interactions": 18, "campaign_id": 19410069806}, "event_time": "2023-08-25T07:00:00+00:00", "event_type": "Daily Ad Metrics", "global_user_properties": null, "group_properties": {}, "groups": {}, "idfa": null, "ip_address": null, "is_attribution_event": null, "language": null, "library": "google_ads", "location_lat": null, "location_lng": null, "os_name": null, "os_version": null, "partner_id": null, "paying": null, "plan": {}, "platform": null, "processed_time": "2023-08-26T11:03:24.953000+00:00", "region": null, "sample_rate": null, "server_received_time": "2023-08-26T11:03:07.417000+00:00", "server_upload_time": "2023-08-26T11:03:23.284000+00:00", "session_id": -1, "source_id": null, "start_version": null, "user_creation_time": null, "user_id": null, "user_properties": {"country": "test", "device_model": "test", "city": "test", "os_version": "test", "City": "London", "platform": "test", "device_manufacturer": "test", "carrier": "test", "device_brand": "test", "Region": "London", "DMA": "London", "Country": "UK", "os_name": "test", "region": "test"}, "uuid": "96b57950-0cd2-4647-b546-cb094e122982", "version_name": null}, "emitted_at": 1694709578894} +{"stream": "events", "data": {"$insert_id": "google-ad-4651612872-19959839954-DESKTOP-2023-08-25", "$insert_key": null, "$schema": null, "adid": null, "amplitude_attribution_ids": null, "amplitude_event_type": null, "amplitude_id": 617244169723, "app": 434735, "city": null, "client_event_time": "2023-08-25T07:00:00+00:00", "client_upload_time": "2023-08-26T11:03:07.417000+00:00", "country": null, "data": {"path": "/batch", "user_properties_updated": true, "vacuum_source_id": "5955", "group_first_event": {}, "group_ids": {}}, "data_type": "event", "device_brand": null, "device_carrier": null, "device_family": null, "device_id": "google-ad-4651612872-19959839954", "device_manufacturer": null, "device_model": null, "device_type": null, "dma": null, "event_id": 80976276, "event_properties": {"campaign_name": "Performance Max-5", "campaign_start_date": "2023-04-10", "ad_platform": "google", "campaign_end_date": "2037-12-30", "ad_metrics.cost": 0.02, "ad_metrics.clicks": 1, "campaign_advertising_channel_type": "PERFORMANCE_MAX", "ad_segment_device": "DESKTOP", "ad_metrics.conversions": 0.0, "ad_metrics.impressions": 2, "ad_metrics.interactions": 1, "campaign_id": 19959839954}, "event_time": "2023-08-25T07:00:00+00:00", "event_type": "Daily Ad Metrics", "global_user_properties": null, "group_properties": {}, "groups": {}, "idfa": null, "ip_address": null, "is_attribution_event": null, "language": null, "library": "google_ads", "location_lat": null, "location_lng": null, "os_name": null, "os_version": null, "partner_id": null, "paying": null, "plan": {}, "platform": null, "processed_time": "2023-08-26T11:03:21.833000+00:00", "region": null, "sample_rate": null, "server_received_time": "2023-08-26T11:03:07.417000+00:00", "server_upload_time": "2023-08-26T11:03:20.169000+00:00", "session_id": -1, "source_id": null, "start_version": null, "user_creation_time": null, "user_id": null, "user_properties": {}, "uuid": "6f7c67c1-14d4-4566-a18a-72fb8a010b6c", "version_name": null}, "emitted_at": 1694709578895} diff --git a/airbyte-integrations/connectors/source-amplitude/metadata.yaml b/airbyte-integrations/connectors/source-amplitude/metadata.yaml index be9ecbaf14e7..5928851f0ccb 100644 --- a/airbyte-integrations/connectors/source-amplitude/metadata.yaml +++ b/airbyte-integrations/connectors/source-amplitude/metadata.yaml @@ -6,7 +6,7 @@ data: connectorSubtype: api connectorType: source definitionId: fa9f58c6-2d03-4237-aaa4-07d75e0c1396 - dockerImageTag: 0.2.4 + dockerImageTag: 0.3.2 dockerRepository: airbyte/source-amplitude githubIssueLabel: source-amplitude icon: amplitude.svg diff --git a/airbyte-integrations/connectors/source-amplitude/setup.py b/airbyte-integrations/connectors/source-amplitude/setup.py index ad70b2ff395f..29cccb75e13f 100644 --- a/airbyte-integrations/connectors/source-amplitude/setup.py +++ b/airbyte-integrations/connectors/source-amplitude/setup.py @@ -6,7 +6,7 @@ from setuptools import find_packages, setup MAIN_REQUIREMENTS = [ - "airbyte-cdk==0.33.0", + "airbyte-cdk", ] TEST_REQUIREMENTS = [ diff --git a/airbyte-integrations/connectors/source-amplitude/source_amplitude/manifest.yaml b/airbyte-integrations/connectors/source-amplitude/source_amplitude/manifest.yaml index adabb7f021aa..fc5977c4a5ae 100644 --- a/airbyte-integrations/connectors/source-amplitude/source_amplitude/manifest.yaml +++ b/airbyte-integrations/connectors/source-amplitude/source_amplitude/manifest.yaml @@ -1,4 +1,4 @@ -version: "0.29.0" +version: "0.51.13" definitions: selector: diff --git a/airbyte-integrations/connectors/source-amplitude/source_amplitude/source.py b/airbyte-integrations/connectors/source-amplitude/source_amplitude/source.py index 247482de5163..6ff2160da69c 100644 --- a/airbyte-integrations/connectors/source-amplitude/source_amplitude/source.py +++ b/airbyte-integrations/connectors/source-amplitude/source_amplitude/source.py @@ -36,7 +36,7 @@ def streams(self, config: Mapping[str, Any]) -> List[Stream]: Events( authenticator=auth, start_date=config["start_date"], - data_region=config["data_region"], + data_region=config.get("data_region", "Standard Server"), event_time_interval={"size_unit": "hours", "size": config.get("request_time_range", 24)}, ) ) diff --git a/airbyte-integrations/connectors/source-amplitude/source_amplitude/streams.py b/airbyte-integrations/connectors/source-amplitude/source_amplitude/streams.py index d4fd61949f6f..20ae757e0241 100644 --- a/airbyte-integrations/connectors/source-amplitude/source_amplitude/streams.py +++ b/airbyte-integrations/connectors/source-amplitude/source_amplitude/streams.py @@ -2,6 +2,7 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # +import datetime import gzip import io import json @@ -99,8 +100,21 @@ def _date_time_to_rfc3339(self, record: MutableMapping[str, Any]) -> MutableMapp record[item] = pendulum.parse(record[item]).to_rfc3339_string() return record + def get_most_recent_cursor(self, stream_state: Mapping[str, Any] = None) -> datetime.datetime: + """ + Use `start_time` instead of `cursor` in the case of more recent. + This can happen whenever a user simply finds that they are syncing to much data and would like to change `start_time` to be more recent. + See: https://github.com/airbytehq/airbyte/issues/25367 for more details + """ + cursor_date = ( + pendulum.parse(stream_state[self.cursor_field]) + if stream_state and self.cursor_field in stream_state + else datetime.datetime.min.replace(tzinfo=datetime.timezone.utc) + ) + return max(self._start_date, cursor_date) + def parse_response(self, response: requests.Response, stream_state: Mapping[str, Any] = None, **kwargs) -> Iterable[Mapping]: - state_value = stream_state[self.cursor_field] if stream_state else self._start_date.strftime(self.compare_date_template) + most_recent_cursor = self.get_most_recent_cursor(stream_state).strftime(self.compare_date_template) try: zip_file = zipfile.ZipFile(io.BytesIO(response.content)) except zipfile.BadZipFile as e: @@ -114,7 +128,7 @@ def parse_response(self, response: requests.Response, stream_state: Mapping[str, for gzip_filename in zip_file.namelist(): with zip_file.open(gzip_filename) as file: for record in self._parse_zip_file(file): - if record[self.cursor_field] >= state_value: + if record[self.cursor_field] >= most_recent_cursor: yield self._date_time_to_rfc3339(record) # transform all `date-time` to RFC3339 def _parse_zip_file(self, zip_file: IO[bytes]) -> Iterable[MutableMapping]: @@ -124,7 +138,7 @@ def _parse_zip_file(self, zip_file: IO[bytes]) -> Iterable[MutableMapping]: def stream_slices(self, stream_state: Mapping[str, Any] = None, **kwargs) -> Iterable[Optional[Mapping[str, Any]]]: slices = [] - start = pendulum.parse(stream_state.get(self.cursor_field)) if stream_state else self._start_date + start = self.get_most_recent_cursor(stream_state=stream_state) end = pendulum.now() if start > end: self.logger.info("The data cannot be requested in the future. Skipping stream.") diff --git a/airbyte-integrations/connectors/source-apify-dataset/metadata.yaml b/airbyte-integrations/connectors/source-apify-dataset/metadata.yaml index 7c430f8e25c1..d7b2322d7c7f 100644 --- a/airbyte-integrations/connectors/source-apify-dataset/metadata.yaml +++ b/airbyte-integrations/connectors/source-apify-dataset/metadata.yaml @@ -7,6 +7,7 @@ data: enabled: true cloud: enabled: true + dockerImageTag: 0.2.0 # https://github.com/airbytehq/airbyte/issues/30478 connectorSubtype: api connectorType: source definitionId: 47f17145-fe20-4ef5-a548-e29b048adf84 diff --git a/airbyte-integrations/connectors/source-apple-search-ads/acceptance-test-config.yml b/airbyte-integrations/connectors/source-apple-search-ads/acceptance-test-config.yml index b169b167be72..fe09f6e5321d 100644 --- a/airbyte-integrations/connectors/source-apple-search-ads/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-apple-search-ads/acceptance-test-config.yml @@ -27,7 +27,6 @@ acceptance_tests: future_state: future_state_path: "integration_tests/abnormal_state.json" timeout_seconds: 3600 - threshold_days: 30 # Reduce this if you have many data to retrieve full_refresh: tests: - config_path: "secrets/config.json" @@ -38,7 +37,7 @@ acceptance_tests: bypass_reason: "Can't be idempotent by nature" - name: metadata bypass_reason: "Can't be idempotent by nature" - campaigns_report_daily: + campaigns_report_daily: - name: granularity bypass_reason: "Can't be idempotent by nature" - name: metadata diff --git a/airbyte-integrations/connectors/source-asana/metadata.yaml b/airbyte-integrations/connectors/source-asana/metadata.yaml index 5a14041b24e4..00a96f584b23 100644 --- a/airbyte-integrations/connectors/source-asana/metadata.yaml +++ b/airbyte-integrations/connectors/source-asana/metadata.yaml @@ -1,4 +1,7 @@ data: + ab_internal: + ql: 300 + sl: 100 allowedHosts: hosts: - app.asana.com @@ -7,6 +10,7 @@ data: definitionId: d0243522-dccf-4978-8ba0-37ed47a0bdbf dockerImageTag: 0.1.7 dockerRepository: airbyte/source-asana + documentationUrl: https://docs.airbyte.com/integrations/sources/asana githubIssueLabel: source-asana icon: asana.svg license: MIT @@ -17,11 +21,7 @@ data: oss: enabled: true releaseStage: beta - documentationUrl: https://docs.airbyte.com/integrations/sources/asana + supportLevel: community tags: - language:python - ab_internal: - sl: 200 - ql: 300 - supportLevel: certified metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-aws-cloudtrail/acceptance-test-config.yml b/airbyte-integrations/connectors/source-aws-cloudtrail/acceptance-test-config.yml index a379e8274c2b..c387437fc8df 100644 --- a/airbyte-integrations/connectors/source-aws-cloudtrail/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-aws-cloudtrail/acceptance-test-config.yml @@ -15,8 +15,6 @@ tests: - config_path: "secrets/config.json" configured_catalog_path: "integration_tests/configured_catalog.json" #future_state_path: "integration_tests/abnormal_state.json" - cursor_paths: - management_events: ["EventTime"] basic_read: - config_path: "secrets/config.json" configured_catalog_path: "integration_tests/configured_catalog.json" diff --git a/airbyte-integrations/connectors/source-azure-blob-storage/build.gradle b/airbyte-integrations/connectors/source-azure-blob-storage/build.gradle index bc2e8f3730a7..098fb7d02597 100644 --- a/airbyte-integrations/connectors/source-azure-blob-storage/build.gradle +++ b/airbyte-integrations/connectors/source-azure-blob-storage/build.gradle @@ -25,6 +25,4 @@ dependencies { integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-azure-blob-storage') integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } \ No newline at end of file diff --git a/airbyte-integrations/connectors/source-bigcommerce/.dockerignore b/airbyte-integrations/connectors/source-bigcommerce/.dockerignore index bf8edc6e2599..628d2f05f6ef 100644 --- a/airbyte-integrations/connectors/source-bigcommerce/.dockerignore +++ b/airbyte-integrations/connectors/source-bigcommerce/.dockerignore @@ -1,6 +1,5 @@ * !Dockerfile -!Dockerfile.test !main.py !source_bigcommerce !setup.py diff --git a/airbyte-integrations/connectors/source-bigcommerce/Dockerfile b/airbyte-integrations/connectors/source-bigcommerce/Dockerfile index 0c14c34d26cb..756f514ab945 100644 --- a/airbyte-integrations/connectors/source-bigcommerce/Dockerfile +++ b/airbyte-integrations/connectors/source-bigcommerce/Dockerfile @@ -1,16 +1,38 @@ -FROM python:3.9-slim +FROM python:3.9.11-alpine3.15 as base + +# build and load all requirements +FROM base as builder +WORKDIR /airbyte/integration_code + +# upgrade pip to the latest version +RUN apk --no-cache upgrade \ + && pip install --upgrade pip \ + && apk --no-cache add tzdata build-base -# Bash is installed for more convenient debugging. -RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* +COPY setup.py ./ +# install necessary packages to a temporary folder +RUN pip install --prefix=/install . + +# build a clean environment +FROM base WORKDIR /airbyte/integration_code -COPY source_bigcommerce ./source_bigcommerce + +# copy all loaded and built libraries to a pure basic image +COPY --from=builder /install /usr/local +# add default timezone settings +COPY --from=builder /usr/share/zoneinfo/Etc/UTC /etc/localtime +RUN echo "Etc/UTC" > /etc/timezone + +# bash is installed for more convenient debugging. +RUN apk --no-cache add bash + +# copy payload code only COPY main.py ./ -COPY setup.py ./ -RUN pip install . +COPY source_bigcommerce ./source_bigcommerce ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=0.1.10 +LABEL io.airbyte.version=0.2.0 LABEL io.airbyte.name=airbyte/source-bigcommerce diff --git a/airbyte-integrations/connectors/source-bigcommerce/README.md b/airbyte-integrations/connectors/source-bigcommerce/README.md index b7eb80c54ccf..b180b4797d49 100644 --- a/airbyte-integrations/connectors/source-bigcommerce/README.md +++ b/airbyte-integrations/connectors/source-bigcommerce/README.md @@ -1,34 +1,10 @@ # Bigcommerce Source -This is the repository for the Bigcommerce source connector, written in Python. -For information about how to use this connector within Airbyte, see [the documentation](https://docs.airbyte.io/integrations/sources/bigcommerce). +This is the repository for the Bigcommerce configuration based source connector. +For information about how to use this connector within Airbyte, see [the documentation](https://docs.airbyte.com/integrations/sources/bigcommerce). ## Local development -### Prerequisites -**To iterate on this connector, make sure to complete this prerequisites section.** - -#### Minimum Python version required `= 3.9.0` - -#### Build & Activate Virtual Environment and install dependencies -From this connector directory, create a virtual environment: -``` -python -m venv .venv -``` - -This will generate a virtualenv for this module in `.venv/`. Make sure this venv is active in your -development environment of choice. To activate it from the terminal, run: -``` -source .venv/bin/activate -pip install -r requirements.txt -``` -If you are in an IDE, follow your IDE's instructions to activate the virtualenv. - -Note that while we are installing dependencies from `requirements.txt`, you should only edit `setup.py` for your dependencies. `requirements.txt` is -used for editable installs (`pip install -e`) to pull in Python dependencies from the monorepo and will call `setup.py`. -If this is mumbo jumbo to you, don't worry about it, just put your deps in `setup.py` but install using `pip install -r requirements.txt` and everything -should work as you expect. - #### Building via Gradle You can also build the connector in Gradle. This is typically used in CI and not needed for your development workflow. @@ -38,22 +14,14 @@ To build using Gradle, from the Airbyte repository root, run: ``` #### Create credentials -**If you are a community contributor**, follow the instructions in the [documentation](https://docs.airbyte.io/integrations/sources/bigcommerce) -to generate the necessary credentials. Then create a file `secrets/config.json` conforming to the `source_bigcommerce/spec.json` file. +**If you are a community contributor**, follow the instructions in the [documentation](https://docs.airbyte.com/integrations/sources/bigcommerce) +to generate the necessary credentials. Then create a file `secrets/config.json` conforming to the `source_bigcommerce/spec.yaml` file. Note that any directory named `secrets` is gitignored across the entire Airbyte repo, so there is no danger of accidentally checking in sensitive information. See `integration_tests/sample_config.json` for a sample config file. **If you are an Airbyte core member**, copy the credentials in Lastpass under the secret name `source bigcommerce test creds` and place them into `secrets/config.json`. -### Locally running the connector -``` -python main.py spec -python main.py check --config secrets/config.json -python main.py discover --config secrets/config.json -python main.py read --config secrets/config.json --catalog integration_tests/configured_catalog.json -``` - ### Locally running the connector docker image #### Build @@ -78,32 +46,15 @@ docker run --rm -v $(pwd)/secrets:/secrets airbyte/source-bigcommerce:dev discov docker run --rm -v $(pwd)/secrets:/secrets -v $(pwd)/integration_tests:/integration_tests airbyte/source-bigcommerce:dev read --config /secrets/config.json --catalog /integration_tests/configured_catalog.json ``` ## Testing -Make sure to familiarize yourself with [pytest test discovery](https://docs.pytest.org/en/latest/goodpractices.html#test-discovery) to know how your test files and methods should be named. -First install test dependencies into your virtual environment: -``` -pip install .[tests] -``` -### Unit Tests -To run unit tests locally, from the connector directory run: -``` -python -m pytest unit_tests -``` -### Integration Tests -There are two types of integration tests: Acceptance Tests (Airbyte's test suite for all source connectors) and custom integration tests (which are specific to this connector). -#### Custom Integration tests -Place custom tests inside `integration_tests/` folder, then, from the connector root, run -``` -python -m pytest integration_tests -``` #### Acceptance Tests -Customize `acceptance-test-config.yml` file to configure tests. See [Connector Acceptance Tests](https://docs.airbyte.io/connector-development/testing-connectors/connector-acceptance-tests-reference) for more information. +Customize `acceptance-test-config.yml` file to configure tests. See [Connector Acceptance Tests](https://docs.airbyte.com/connector-development/testing-connectors/connector-acceptance-tests-reference) for more information. If your connector requires to create or destroy resources for use during acceptance tests create fixtures for it and place them inside integration_tests/acceptance.py. -To run your integration tests with acceptance tests, from the connector root, run + +To run your integration tests with Docker, run: ``` -python -m pytest integration_tests -p integration_tests.acceptance +./acceptance-test-docker.sh ``` -To run your integration tests with docker ### Using gradle to run tests All commands should be run from airbyte project root. diff --git a/airbyte-integrations/connectors/source-bigcommerce/unit_tests/unit_test.py b/airbyte-integrations/connectors/source-bigcommerce/__init__.py similarity index 57% rename from airbyte-integrations/connectors/source-bigcommerce/unit_tests/unit_test.py rename to airbyte-integrations/connectors/source-bigcommerce/__init__.py index 219ae0142c72..c941b3045795 100644 --- a/airbyte-integrations/connectors/source-bigcommerce/unit_tests/unit_test.py +++ b/airbyte-integrations/connectors/source-bigcommerce/__init__.py @@ -1,7 +1,3 @@ # # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # - - -def test_example_method(): - assert True diff --git a/airbyte-integrations/connectors/source-bigcommerce/acceptance-test-config.yml b/airbyte-integrations/connectors/source-bigcommerce/acceptance-test-config.yml index 94d5f137867b..564a05cfa774 100644 --- a/airbyte-integrations/connectors/source-bigcommerce/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-bigcommerce/acceptance-test-config.yml @@ -1,24 +1,47 @@ # See [Connector Acceptance Tests](https://docs.airbyte.com/connector-development/testing-connectors/connector-acceptance-tests-reference) # for more information about how to configure these tests connector_image: airbyte/source-bigcommerce:dev -tests: +acceptance_tests: spec: - - spec_path: "source_bigcommerce/spec.json" + tests: + - spec_path: "source_bigcommerce/spec.yaml" connection: - - config_path: "secrets/config.json" - status: "succeed" - - config_path: "integration_tests/invalid_config.json" - status: "failed" + tests: + - config_path: "secrets/config.json" + status: "succeed" + - config_path: "integration_tests/invalid_config.json" + status: "failed" discovery: - - config_path: "secrets/config.json" + tests: + - config_path: "secrets/config.json" + backward_compatibility_tests_config: + disable_for_version: "0.1.10" basic_read: - - config_path: "secrets/config.json" - configured_catalog_path: "integration_tests/configured_catalog.json" - empty_streams: ["orders", "transactions", "products", "customers", "channels", "order_products"] + tests: + - config_path: "secrets/config.json" + configured_catalog_path: "integration_tests/configured_catalog.json" + empty_streams: + - name: "orders" + bypass_reason: "sandbox account does not have records" + - name: "transactions" + bypass_reason: "sandbox account does not have records" + - name: "products" + bypass_reason: "sandbox account does not have records" + - name: "customers" + bypass_reason: "sandbox account does not have records" + - name: "channels" + bypass_reason: "sandbox account does not have records" + - name: "order_products" + bypass_reason: "sandbox account does not have records" + fail_on_extra_columns: false incremental: - - config_path: "secrets/config.json" - configured_catalog_path: "integration_tests/configured_catalog.json" - future_state_path: "integration_tests/abnormal_state.json" + tests: + - config_path: "secrets/config.json" + configured_catalog_path: "integration_tests/configured_catalog.json" + future_state: + future_state_path: "integration_tests/abnormal_state.json" + skip_comprehensive_incremental_tests: true full_refresh: - - config_path: "secrets/config.json" - configured_catalog_path: "integration_tests/configured_catalog.json" + tests: + - config_path: "secrets/config.json" + configured_catalog_path: "integration_tests/configured_catalog.json" diff --git a/airbyte-integrations/connectors/source-bigcommerce/acceptance-test-docker.sh b/airbyte-integrations/connectors/source-bigcommerce/acceptance-test-docker.sh index 5797d20fe9a7..b6d65deeccb4 100644 --- a/airbyte-integrations/connectors/source-bigcommerce/acceptance-test-docker.sh +++ b/airbyte-integrations/connectors/source-bigcommerce/acceptance-test-docker.sh @@ -1,2 +1,3 @@ #!/usr/bin/env sh + source "$(git rev-parse --show-toplevel)/airbyte-integrations/bases/connector-acceptance-test/acceptance-test-docker.sh" diff --git a/airbyte-integrations/connectors/source-bigcommerce/integration_tests/__init__.py b/airbyte-integrations/connectors/source-bigcommerce/integration_tests/__init__.py index e69de29bb2d1..c941b3045795 100644 --- a/airbyte-integrations/connectors/source-bigcommerce/integration_tests/__init__.py +++ b/airbyte-integrations/connectors/source-bigcommerce/integration_tests/__init__.py @@ -0,0 +1,3 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# diff --git a/airbyte-integrations/connectors/source-bigcommerce/integration_tests/abnormal_state.json b/airbyte-integrations/connectors/source-bigcommerce/integration_tests/abnormal_state.json index 723a217dc775..eb1f5a064644 100644 --- a/airbyte-integrations/connectors/source-bigcommerce/integration_tests/abnormal_state.json +++ b/airbyte-integrations/connectors/source-bigcommerce/integration_tests/abnormal_state.json @@ -3,7 +3,7 @@ "type": "STREAM", "stream": { "stream_state": { - "date_modified": "2080-07-30T22:16:46" + "date_modified": "2080-07-30T22:16:46+00:00" }, "stream_descriptor": { "name": "customers" diff --git a/airbyte-integrations/connectors/source-bigcommerce/integration_tests/catalog.json b/airbyte-integrations/connectors/source-bigcommerce/integration_tests/catalog.json deleted file mode 100644 index ccb19696a04d..000000000000 --- a/airbyte-integrations/connectors/source-bigcommerce/integration_tests/catalog.json +++ /dev/null @@ -1,1993 +0,0 @@ -{ - "streams": [ - { - "name": "customers", - "json_schema": { - "$schema": "http://json-schema.org/draft-07/schema#", - "type": "object", - "properties": { - "email": { - "type": ["null", "string"] - }, - "first_name": { - "type": ["null", "string"] - }, - "last_name": { - "type": ["null", "string"] - }, - "company": { - "type": ["null", "string"] - }, - "phone": { - "type": ["null", "string"] - }, - "registration_ip_address": { - "type": ["null", "string"] - }, - "notes": { - "type": ["null", "string"] - }, - "tax_exempt_category": { - "type": ["null", "string"] - }, - "customer_group_id": { - "type": ["null", "number"] - }, - "id": { - "type": ["null", "number"] - }, - "date_modified": { - "type": ["null", "string"], - "format": "date-time" - }, - "date_created": { - "type": ["null", "string"], - "format": "date-time" - }, - "address_count": { - "type": ["null", "number"] - }, - "attribute_count": { - "type": ["null", "number"] - }, - "authentication": { - "type": ["null", "object"], - "properties": { - "force_password_reset": { - "type": ["null", "boolean"] - } - } - }, - "addresses": { - "type": ["null", "array"], - "items": { - "type": ["null", "object"], - "properties": { - "first_name": { - "type": ["null", "string"] - }, - "last_name": { - "type": ["null", "string"] - }, - "company": { - "type": ["null", "string"] - }, - "address1": { - "type": ["null", "string"] - }, - "address2": { - "type": ["null", "string"] - }, - "city": { - "type": ["null", "string"] - }, - "state_or_province": { - "type": ["null", "string"] - }, - "postal_code": { - "type": ["null", "string"] - }, - "country_code": { - "type": ["null", "string"] - }, - "phone": { - "type": ["null", "string"] - }, - "address_type": { - "type": ["null", "string"] - }, - "customer_id": { - "type": ["null", "number"] - }, - "id": { - "type": ["null", "number"] - }, - "country": { - "type": ["null", "string"] - }, - "form_fields": { - "type": ["null", "array"], - "oneOf": [ - { - "type": ["null", "object"], - "properties": { - "name": { - "type": ["name", "string"] - }, - "value": { - "oneOf": [ - { - "type": ["null", "string"] - }, - { - "type": ["null", "number"] - }, - { - "type": ["null", "array"] - } - ] - }, - "customer_id": { - "type": ["null", "number"] - } - } - }, - { - "type": ["null", "object"], - "properties": { - "name": { - "type": ["name", "string"] - }, - "value": { - "oneOf": [ - { - "type": ["null", "string"] - }, - { - "type": ["null", "number"] - }, - { - "type": ["null", "array"] - } - ] - }, - "address_id": { - "type": ["null", "number"] - } - } - } - ] - }, - "store_credit_amounts": { - "type": ["null", "array"], - "items": { - "type": ["null", "object"], - "properties": { - "amount": { - "type": ["null", "number"] - } - } - } - }, - "accepts_product_review_abandoned_cart_emails": { - "type": ["null", "boolean"] - }, - "channel_ids": { - "type": ["null", "array"] - } - } - } - } - } - } - }, - { - "name": "orders", - "json_schema": { - "$schema": "http://json-schema.org/draft-07/schema#", - "type": "object", - "properties": { - "id": { - "type": ["null", "number"] - }, - "date_modified": { - "type": ["null", "string"], - "format": "date-time" - }, - "date_shipped": { - "type": ["null", "string"], - "format": "date-time" - }, - "cart_id": { - "type": ["null", "string"] - }, - "status": { - "type": ["null", "string"] - }, - "subtotal_tax": { - "type": ["null", "string"] - }, - "shipping_cost_tax": { - "type": ["null", "string"] - }, - "shipping_cost_tax_class_id": { - "type": ["null", "number"] - }, - "handling_cost_tax": { - "type": ["null", "string"] - }, - "handling_cost_tax_class_id": { - "type": ["null", "number"] - }, - "wrapping_cost_tax": { - "type": ["null", "string"] - }, - "wrapping_cost_tax_class_id": { - "type": ["null", "number"] - }, - "payment_status": { - "type": ["null", "string"] - }, - "store_credit_amount": { - "type": ["null", "string"] - }, - "gift_certificate_amount": { - "type": ["null", "string"] - }, - "currency_id": { - "type": ["null", "number"] - }, - "currency_code": { - "type": ["null", "string"] - }, - "currency_exchange_rate": { - "type": ["null", "string"] - }, - "default_currency_id": { - "type": ["null", "number"] - }, - "coupon_discount": { - "type": ["null", "string"] - }, - "shipping_address_count": { - "type": ["null", "number"] - }, - "is_email_opt_in": { - "type": ["null", "boolean"] - }, - "order_source": { - "type": ["null", "string"] - }, - "products": { - "type": ["null", "object"], - "properties": { - "url": { - "type": ["null", "string"] - }, - "resource": { - "type": ["null", "string"] - } - } - }, - "shipping_addresses": { - "type": ["null", "object"], - "properties": { - "url": { - "type": ["null", "string"] - }, - "resource": { - "type": ["null", "string"] - } - } - }, - "coupons": { - "type": ["null", "object"], - "properties": { - "url": { - "type": ["null", "string"] - }, - "resource": { - "type": ["null", "string"] - } - } - }, - "status_id": { - "type": ["null", "number"] - }, - "base_handling_cost": { - "type": ["null", "string"] - }, - "base_shipping_cost": { - "type": ["null", "string"] - }, - "base_wrapping_cost": { - "oneOf": [ - { - "type": ["null", "number"] - }, - { - "type": ["null", "string"] - } - ] - }, - "billing_address": { - "type": ["null", "object"], - "properties": { - "first_name": { - "type": ["null", "string"] - }, - "last_name": { - "type": ["null", "string"] - }, - "company": { - "type": ["null", "string"] - }, - "street_1": { - "type": ["null", "string"] - }, - "street_2": { - "type": ["null", "string"] - }, - "city": { - "type": ["null", "string"] - }, - "state": { - "type": ["null", "string"] - }, - "zip": { - "type": ["null", "string"] - }, - "country": { - "type": ["null", "string"] - }, - "country_iso2": { - "type": ["null", "string"] - }, - "phone": { - "type": ["null", "string"] - }, - "email": { - "type": ["null", "string"] - }, - "form_fields": { - "type": ["null", "array"], - "items": { - "type": ["null", "object"], - "properties": { - "name": { - "type": ["null", "string"] - }, - "value": { - "type": ["null", "string"] - } - } - } - } - } - }, - "channel_id": { - "type": ["null", "number"] - }, - "customer_id": { - "type": ["null", "number"] - }, - "customer_message": { - "type": ["null", "string"] - }, - "date_created": { - "type": ["null", "string"], - "format": "date-time" - }, - "default_currency_code": { - "type": ["null", "string"] - }, - "discount_amount": { - "type": ["null", "string"] - }, - "ebay_order_id": { - "type": ["null", "string"] - }, - "external_id": { - "type": ["null", "string"] - }, - "external_source": { - "type": ["null", "string"] - }, - "geoip_country": { - "type": ["null", "string"] - }, - "geoip_country_iso2": { - "type": ["null", "string"] - }, - "handling_cost_ex_tax": { - "type": ["null", "string"] - }, - "handling_cost_inc_tax": { - "type": ["null", "string"] - }, - "ip_address": { - "type": ["null", "string"] - }, - "is_deleted": { - "type": ["null", "boolean"] - }, - "items_shipped": { - "type": ["null", "number"] - }, - "items_total": { - "type": ["null", "number"] - }, - "order_is_digital": { - "type": ["null", "boolean"] - }, - "payment_method": { - "type": ["null", "string"] - }, - "refunded_amount": { - "type": ["null", "string"] - }, - "shipping_cost_ex_tax": { - "type": ["null", "string"] - }, - "shipping_cost_inc_tax": { - "type": ["null", "string"] - }, - "staff_notes": { - "type": ["null", "string"] - }, - "subtotal_ex_tax": { - "type": ["null", "string"] - }, - "subtotal_inc_tax": { - "type": ["null", "string"] - }, - "tax_provider_id": { - "type": ["null", "string"] - }, - "customer_locale": { - "type": ["null", "string"] - }, - "total_ex_tax": { - "type": ["null", "string"] - }, - "total_inc_tax": { - "type": ["null", "string"] - }, - "wrapping_cost_ex_tax": { - "type": ["null", "string"] - }, - "wrapping_cost_inc_tax": { - "type": ["null", "string"] - } - } - } - }, - { - "name": "transactions", - "json_schema": { - "$schema": "http://json-schema.org/draft-07/schema#", - "type": "object", - "properties": { - "event": { - "type": ["null", "string"] - }, - "method": { - "type": ["null", "string"] - }, - "amount": { - "type": ["null", "number"] - }, - "currency": { - "type": ["null", "string"] - }, - "gateway": { - "type": ["null", "string"] - }, - "gateway_transaction_id": { - "type": ["null", "string"] - }, - "date_created": { - "type": ["null", "string"] - }, - "test": { - "type": ["null", "boolean"] - }, - "status": { - "type": ["null", "string"] - }, - "fraud_review": { - "type": ["null", "boolean"] - }, - "reference_transaction_id": { - "type": ["null", "number"] - }, - "offline": { - "type": ["null", "object"], - "properties": { - "display_name": { - "type": ["null", "string"] - } - } - }, - "custom": { - "type": ["null", "object"], - "properties": { - "payment_method": { - "type": ["null", "string"] - } - } - }, - "payment_method_id": { - "type": ["null", "string"] - }, - "id": { - "type": ["null", "number"] - }, - "order_id": { - "type": ["null", "string"] - }, - "payment_instrument_token": { - "type": ["null", "string"] - }, - "avs_result": { - "type": ["null", "object"], - "properties": { - "code": { - "type": ["null", "string"] - }, - "message": { - "type": ["null", "string"] - }, - "street_match": { - "type": ["null", "string"] - }, - "postal_match": { - "type": ["null", "string"] - } - } - }, - "cvv_result": { - "type": ["null", "object"], - "properties": { - "code": { - "type": ["null", "string"] - }, - "message": { - "type": ["null", "string"] - } - } - }, - "credit_card": { - "type": ["null", "object"], - "properties": { - "card_type": { - "type": ["null", "string"] - }, - "card_iin": { - "type": ["null", "string"] - }, - "card_last4": { - "type": ["null", "string"] - }, - "card_expiry_month": { - "type": ["null", "number"] - }, - "card_expiry_year": { - "type": ["null", "number"] - } - } - }, - "gift_certificate": { - "type": ["null", "object"], - "properties": { - "code": { - "type": ["null", "string"] - }, - "original_balance": { - "type": ["null", "number"] - }, - "starting_balance": { - "type": ["null", "number"] - }, - "remaining_balance": { - "type": ["null", "number"] - }, - "status": { - "type": ["null", "string"] - } - } - }, - "store_credit": { - "type": ["null", "object"], - "properties": { - "remaining_balance": { - "type": ["null", "number"] - } - } - } - } - } - }, - { - "name": "order_products", - "json_schema": { - "$schema": "http://json-schema.org/draft-07/schema#", - "type": "object", - "properties": { - "id": { - "type": ["null", "integer"] - }, - "order_id": { - "type": ["null", "integer"] - }, - "product_id": { - "type": ["null", "integer"] - }, - "variant_id": { - "type": ["null", "integer"] - }, - "order_address_id": { - "type": ["null", "integer"] - }, - "name": { - "type": ["null", "string"] - }, - "name_customer": { - "type": ["null", "string"] - }, - "name_merchant": { - "type": ["null", "string"] - }, - "sku": { - "type": ["null", "string"] - }, - "upc": { - "type": ["null", "string"] - }, - "type": { - "type": ["null", "string"] - }, - "base_price": { - "type": ["null", "string"] - }, - "price_ex_tax": { - "type": ["null", "string"] - }, - "price_inc_tax": { - "type": ["null", "string"] - }, - "price_tax": { - "type": ["null", "string"] - }, - "base_total": { - "type": ["null", "string"] - }, - "total_ex_tax": { - "type": ["null", "string"] - }, - "total_inc_tax": { - "type": ["null", "string"] - }, - "total_tax": { - "type": ["null", "string"] - }, - "weight": { - "type": ["null", "string"] - }, - "width": { - "type": ["null", "string"] - }, - "height": { - "type": ["null", "string"] - }, - "depth": { - "type": ["null", "string"] - }, - "quantity": { - "type": ["null", "number"] - }, - "base_cost_price": { - "type": ["null", "string"] - }, - "cost_price_inc_tax": { - "type": ["null", "string"] - }, - "cost_price_ex_tax": { - "type": ["null", "string"] - }, - "cost_price_tax": { - "type": ["null", "string"] - }, - "is_refunded": { - "type": ["null", "boolean"] - }, - "quantity_refunded": { - "type": ["null", "number"] - }, - "refund_amount": { - "type": ["null", "string"] - }, - "return_id": { - "type": ["null", "number"] - }, - "wrapping_id": { - "type": ["null", "string"] - }, - "wrapping_name": { - "type": ["null", "string"] - }, - "base_wrapping_cost": { - "type": ["null", "string"] - }, - "wrapping_cost_ex_tax": { - "type": ["null", "string"] - }, - "wrapping_cost_inc_tax": { - "type": ["null", "string"] - }, - "wrapping_cost_tax": { - "type": ["null", "string"] - }, - "wrapping_message": { - "type": ["null", "string"] - }, - "quantity_shipped": { - "type": ["null", "number"] - }, - "event_name": { - "type": ["null", "string"] - }, - "event_date": { - "type": ["null", "string"] - }, - "fixed_shipping_cost": { - "type": ["null", "string"] - }, - "ebay_item_id": { - "type": ["null", "string"] - }, - "ebay_transaction_id": { - "type": ["null", "string"] - }, - "option_set_id": { - "type": ["null", "integer"] - }, - "parent_order_product_id": { - "type": ["null", "integer"] - }, - "is_bundled_product": { - "type": ["null", "boolean"] - }, - "bin_picking_number": { - "type": ["null", "string"] - }, - "external_id": { - "type": ["null", "string"] - }, - "fulfillment_source": { - "type": ["null", "string"] - }, - "brand": { - "type": ["null", "string"] - }, - "gift_certificate_id": { - "type": ["null", "integer"] - }, - "applied_discounts": { - "type": ["null", "array"] - }, - "applied_discounts": { - "type": ["null", "array"] - }, - "product_options": { - "type": ["null", "array"] - }, - "configurable_fields": { - "type": ["null", "array"] - } - } - } - }, - { - "name": "pages", - "json_schema": { - "$schema": "http://json-schema.org/draft-07/schema#", - "type": "object", - "properties": { - "email": { - "type": ["null", "string"] - }, - "meta_title": { - "type": ["null", "string"] - }, - "body": { - "type": ["null", "string"] - }, - "feed": { - "type": ["null", "string"] - }, - "link": { - "type": ["null", "string"] - }, - "contact_fields": { - "type": ["null", "string"] - }, - "meta_keywords": { - "type": ["null", "string"] - }, - "meta_description": { - "type": ["null", "string"] - }, - "search_keywords": { - "type": ["null", "string"] - }, - "url": { - "type": ["null", "string"] - }, - "channel_id": { - "type": ["null", "number"] - }, - "name": { - "type": ["null", "string"] - }, - "is_visible": { - "type": ["null", "boolean"] - }, - "parent_id": { - "type": ["null", "number"] - }, - "sort_order": { - "type": ["null", "number"] - }, - "type": { - "type": ["null", "string"] - }, - "is_homepage": { - "type": ["null", "boolean"] - }, - "is_customers_only": { - "type": ["null", "boolean"] - }, - "id": { - "type": ["null", "number"] - } - } - } - }, - { - "name": "brands", - "json_schema": { - "$schema": "http://json-schema.org/draft-07/schema#", - "type": "object", - "properties": { - "id": { - "type": ["null", "integer"] - }, - "name": { - "type": ["null", "string"] - }, - "page_title": { - "type": ["null", "string"] - }, - "meta_keywords": { - "type": ["null", "array"], - "items": { - "type": ["null", "string"] - } - }, - "meta_description": { - "type": ["null", "string"] - }, - "search_keywords": { - "type": ["null", "string"] - }, - "image_url": { - "type": ["null", "string"] - }, - "custom_url": { - "type": ["null", "object"], - "properties": { - "url": { - "type": ["null", "string"] - }, - "is_customized": { - "type": ["null", "boolean"] - } - } - } - } - } - }, - { - "name": "categories", - "json_schema": { - "$schema": "http://json-schema.org/draft-07/schema#", - "type": "object", - "properties": { - "id": { - "type": ["null", "integer"] - }, - "parent_id": { - "type": ["null", "integer"] - }, - "name": { - "type": ["null", "string"] - }, - "description": { - "type": ["null", "string"] - }, - "views": { - "type": ["null", "integer"] - }, - "sort_order": { - "type": ["null", "integer"] - }, - "page_title": { - "type": ["null", "string"] - }, - "meta_keywords": { - "type": ["null", "array"], - "items": { - "type": ["null", "string"] - } - }, - "meta_description": { - "type": ["null", "string"] - }, - "layout_file": { - "type": ["null", "string"] - }, - "image_url": { - "type": ["null", "string"] - }, - "is_visible": { - "type": ["null", "boolean"] - }, - "search_keywords": { - "type": ["null", "string"] - }, - "default_product_sort": { - "type": ["null", "string"] - }, - "url": { - "type": ["null", "object"], - "properties": { - "path": { - "type": ["null", "string"] - }, - "is_customized": { - "type": ["null", "boolean"] - } - } - } - } - } - }, - { - "name": "products", - "json_schema": { - "$schema": "http://json-schema.org/draft-07/schema#", - "type": "object", - "properties": { - "name": { - "type": ["null", "string"] - }, - "type": { - "type": ["null", "string"] - }, - "sku": { - "type": ["null", "string"] - }, - "description": { - "type": ["null", "string"] - }, - "weight": { - "type": ["null", "number"], - "format": "float" - }, - "width": { - "type": ["null", "number"], - "format": "float" - }, - "depth": { - "type": ["null", "number"], - "format": "float" - }, - "height": { - "type": ["null", "number"], - "format": "float" - }, - "price": { - "type": ["null", "number"], - "format": "float" - }, - "cost_price": { - "type": ["null", "number"], - "format": "float" - }, - "retail_price": { - "type": ["null", "number"], - "format": "float" - }, - "sale_price": { - "type": ["null", "number"], - "format": "float" - }, - "map_price": { - "type": ["null", "number"] - }, - "tax_class_id": { - "type": ["null", "number"] - }, - "product_tax_code": { - "type": ["null", "string"] - }, - "categories": { - "type": ["null", "array"], - "items": { - "type": ["null", "number"] - } - }, - "brand_id": { - "type": ["null", "number"] - }, - "inventory_level": { - "type": ["null", "number"] - }, - "inventory_warning_level": { - "type": ["null", "number"] - }, - "inventory_tracking": { - "type": ["null", "string"] - }, - "fixed_cost_shipping_price": { - "type": ["null", "number"], - "format": "float" - }, - "is_free_shipping": { - "type": ["null", "boolean"] - }, - "is_visible": { - "type": ["null", "boolean"] - }, - "is_featured": { - "type": ["null", "boolean"] - }, - "related_products": { - "type": ["null", "array"], - "items": { - "type": ["null", "number"] - } - }, - "warranty": { - "type": ["null", "string"] - }, - "bin_picking_number": { - "type": ["null", "string"] - }, - "layout_file": { - "type": ["null", "string"] - }, - "upc": { - "type": ["null", "string"] - }, - "search_keywords": { - "type": ["null", "string"] - }, - "availability": { - "type": ["null", "string"] - }, - "availability_description": { - "type": ["null", "string"] - }, - "gift_wrapping_options_type": { - "type": ["null", "string"] - }, - "gift_wrapping_options_list": { - "type": ["null", "array"], - "items": { - "type": ["null", "number"] - } - }, - "sort_order": { - "type": ["null", "number"] - }, - "condition": { - "type": ["null", "string"] - }, - "is_condition_shown": { - "type": ["null", "boolean"] - }, - "order_quantity_minimum": { - "type": ["null", "number"] - }, - "order_quantity_maximum": { - "type": ["null", "number"] - }, - "page_title": { - "type": ["null", "string"] - }, - "meta_keywords": { - "type": ["null", "array"], - "items": { - "type": ["null", "string"] - } - }, - "meta_description": { - "type": ["null", "string"] - }, - "view_count": { - "type": ["null", "number"] - }, - "preorder_release_date": { - "type": ["null", "string"], - "format": "date-time" - }, - "preorder_message": { - "type": ["null", "string"] - }, - "is_preorder_only": { - "type": ["null", "boolean"] - }, - "is_price_hidden": { - "type": ["null", "boolean"] - }, - "price_hidden_label": { - "type": ["null", "string"] - }, - "custom_url": { - "type": ["null", "object"], - "title": "customUrl_Full", - "properties": { - "url": { - "type": ["null", "string"] - }, - "is_customized": { - "type": ["null", "boolean"] - } - } - }, - "open_graph_type": { - "type": ["null", "string"] - }, - "open_graph_title": { - "type": ["null", "string"] - }, - "open_graph_description": { - "type": ["null", "string"] - }, - "open_graph_use_meta_description": { - "type": ["null", "boolean"] - }, - "open_graph_use_product_name": { - "type": ["null", "boolean"] - }, - "open_graph_use_image": { - "type": ["null", "boolean"] - }, - "brand_name or brand_id": { - "type": ["null", "string"] - }, - "gtin": { - "type": ["null", "string"] - }, - "mpn": { - "type": ["null", "string"] - }, - "reviews_rating_sum": { - "type": ["null", "number"] - }, - "reviews_count": { - "type": ["null", "number"] - }, - "total_sold": { - "type": ["null", "number"] - }, - "custom_fields": { - "type": ["null", "array"], - "items": { - "type": ["null", "object"], - "title": "productCustomField_Put", - "required": ["name", "value"], - "properties": { - "id": { - "type": ["null", "number"] - }, - "name": { - "type": ["null", "string"] - }, - "value": { - "type": ["null", "string"] - } - } - } - }, - "bulk_pricing_rules": { - "type": ["null", "array"], - "items": { - "type": ["null", "object"], - "title": "bulkPricingRule_Full", - "required": ["quantity_min", "quantity_max", "type", "amount"], - "properties": { - "id": { - "type": ["null", "number"] - }, - "quantity_min": { - "type": ["null", "number"] - }, - "quantity_max": { - "type": ["null", "number"] - }, - "type": { - "type": ["null", "string"] - }, - "amount": { - "type": ["null", "number"] - } - } - } - }, - "images": { - "type": ["null", "array"], - "items": { - "title": "productImage_Full", - "type": ["null", "object"], - "properties": { - "image_file": { - "type": ["null", "string"] - }, - "is_thumbnail": { - "type": ["null", "boolean"] - }, - "sort_order": { - "type": ["null", "number"] - }, - "description": { - "type": ["null", "string"] - }, - "image_url": { - "type": ["null", "string"] - }, - "id": { - "type": ["null", "number"] - }, - "product_id": { - "type": ["null", "number"] - }, - "url_zoom": { - "type": ["null", "string"] - }, - "url_standard": { - "type": ["null", "string"] - }, - "url_thumbnail": { - "type": ["null", "string"] - }, - "url_tiny": { - "type": ["null", "string"] - }, - "date_modified": { - "format": "date-time", - "type": ["null", "string"] - } - } - } - }, - "videos": { - "type": ["null", "array"], - "items": { - "title": "productVideo_Full", - "type": ["null", "object"], - "properties": { - "title": { - "type": ["null", "string"] - }, - "description": { - "type": ["null", "string"] - }, - "sort_order": { - "type": ["null", "number"] - }, - "type": { - "type": ["null", "string"] - }, - "video_id": { - "type": ["null", "string"] - }, - "id": { - "type": ["null", "number"] - }, - "product_id": { - "type": ["null", "number"] - }, - "length": { - "type": ["null", "string"] - } - } - } - }, - "date_created": { - "type": ["null", "string"], - "format": "date-time" - }, - "date_modified": { - "type": ["null", "string"], - "format": "date-time" - }, - "id": { - "type": ["null", "number"] - }, - "base_variant_id": { - "type": ["null", "number"] - }, - "calculated_price": { - "type": ["null", "number"], - "format": "float" - }, - "options": { - "type": ["null", "array"], - "items": { - "type": ["null", "object"], - "title": "productOption_Base", - "properties": { - "id": { - "type": ["null", "number"] - }, - "product_id": { - "type": ["null", "number"] - }, - "display_name": { - "type": ["null", "string"] - }, - "type": { - "type": ["null", "string"] - }, - "config": { - "type": ["null", "object"], - "title": "productOptionConfig_Full", - "properties": { - "default_value": { - "type": ["null", "string"] - }, - "checked_by_default": { - "type": ["null", "boolean"] - }, - "checkbox_label": { - "type": ["null", "string"] - }, - "date_limited": { - "type": ["null", "boolean"] - }, - "date_limit_mode": { - "type": ["null", "string"] - }, - "date_earliest_value": { - "type": ["null", "string"], - "format": "date" - }, - "date_latest_value": { - "type": ["null", "string"], - "format": "date" - }, - "file_types_mode": { - "type": ["null", "string"] - }, - "file_types_supported": { - "type": ["null", "array"], - "items": { - "type": ["null", "string"] - } - }, - "file_types_other": { - "type": ["null", "array"], - "items": { - "type": ["null", "string"] - } - }, - "file_max_size": { - "type": ["null", "number"] - }, - "text_characters_limited": { - "type": ["null", "boolean"] - }, - "text_min_length": { - "type": ["null", "number"] - }, - "text_max_length": { - "type": ["null", "number"] - }, - "text_lines_limited": { - "type": ["null", "boolean"] - }, - "text_max_lines": { - "type": ["null", "number"] - }, - "number_limited": { - "type": ["null", "boolean"] - }, - "number_limit_mode": { - "type": ["null", "string"] - }, - "number_lowest_value": { - "type": ["null", "number"] - }, - "number_highest_value": { - "type": ["null", "number"] - }, - "number_numbers_only": { - "type": ["null", "boolean"] - }, - "product_list_adjusts_inventory": { - "type": ["null", "boolean"] - }, - "product_list_adjusts_pricing": { - "type": ["null", "boolean"] - }, - "product_list_shipping_calc": { - "type": ["null", "string"] - } - } - }, - "sort_order": { - "type": ["null", "number"] - }, - "option_values": { - "title": "productOptionOptionValue_Full", - "type": ["null", "object"], - "required": ["label", "sort_order"], - "properties": { - "is_default": { - "type": ["null", "boolean"] - }, - "label": { - "type": ["null", "string"] - }, - "sort_order": { - "type": ["null", "number"] - }, - "value_data": { - "type": ["object", "null"] - }, - "id": { - "type": ["null", "number"] - } - } - } - } - } - }, - "modifiers": { - "type": ["null", "array"], - "items": { - "title": "productModifier_Full", - "type": ["null", "object"], - "required": ["type", "required"], - "properties": { - "type": { - "type": ["null", "string"] - }, - "required": { - "type": ["null", "boolean"] - }, - "sort_order": { - "type": ["null", "number"] - }, - "config": { - "type": ["null", "object"], - "title": "config_Full", - "properties": { - "default_value": { - "type": ["null", "string"] - }, - "checked_by_default": { - "type": ["null", "boolean"] - }, - "checkbox_label": { - "type": ["null", "string"] - }, - "date_limited": { - "type": ["null", "boolean"] - }, - "date_limit_mode": { - "type": ["null", "string"] - }, - "date_earliest_value": { - "type": ["null", "string"], - "format": "date" - }, - "date_latest_value": { - "type": ["null", "string"], - "format": "date" - }, - "file_types_mode": { - "type": ["null", "string"] - }, - "file_types_supported": { - "type": ["null", "array"], - "items": { - "type": ["null", "string"] - } - }, - "file_types_other": { - "type": ["null", "array"], - "items": { - "type": ["null", "string"] - } - }, - "file_max_size": { - "type": ["null", "number"] - }, - "text_characters_limited": { - "type": ["null", "boolean"] - }, - "text_min_length": { - "type": ["null", "number"] - }, - "text_max_length": { - "type": ["null", "number"] - }, - "text_lines_limited": { - "type": ["null", "boolean"] - }, - "text_max_lines": { - "type": ["null", "number"] - }, - "number_limited": { - "type": ["null", "boolean"] - }, - "number_limit_mode": { - "type": ["null", "string"] - }, - "number_lowest_value": { - "type": ["null", "number"] - }, - "number_highest_value": { - "type": ["null", "number"] - }, - "number_numbers_only": { - "type": ["null", "boolean"] - }, - "product_list_adjusts_inventory": { - "type": ["null", "boolean"] - }, - "product_list_adjusts_pricing": { - "type": ["null", "boolean"] - }, - "product_list_shipping_calc": { - "type": ["null", "string"] - } - } - }, - "display_name": { - "type": ["null", "string"] - }, - "id": { - "type": ["null", "number"] - }, - "product_id": { - "type": ["null", "number"] - }, - "name": { - "type": ["null", "string"] - }, - "option_values": { - "type": ["null", "array"], - "items": { - "title": "productModifierOptionValue_Full", - "type": ["null", "object"], - "required": ["label", "sort_order"], - "properties": { - "is_default": { - "type": ["null", "boolean"] - }, - "label": { - "type": ["null", "string"] - }, - "sort_order": { - "type": ["null", "number"] - }, - "value_data": { - "type": ["object", "null"] - }, - "adjusters": { - "type": ["null", "object"], - "title": "adjusters_Full", - "properties": { - "price": { - "type": ["null", "object"], - "title": "adjuster_Full", - "properties": { - "adjuster": { - "type": ["null", "string"] - }, - "adjuster_value": { - "type": ["null", "number"] - } - } - }, - "weight": { - "type": ["null", "object"], - "title": "adjuster_Full", - "properties": { - "adjuster": { - "type": ["null", "string"] - }, - "adjuster_value": { - "type": ["null", "number"] - } - } - }, - "image_url": { - "type": ["null", "string"] - }, - "purchasing_disabled": { - "type": ["null", "object"], - "properties": { - "status": { - "type": ["null", "boolean"] - }, - "message": { - "type": ["null", "string"] - } - } - } - } - }, - "id": { - "type": ["null", "number"] - }, - "option_id": { - "type": ["null", "number"] - } - } - } - } - } - } - }, - "option_set_id": { - "type": ["null", "number"] - }, - "option_set_display": { - "type": ["null", "string"] - }, - "variants": { - "type": ["null", "array"], - "items": { - "title": "productVariant_Full", - "type": ["null", "object"], - "properties": { - "cost_price": { - "type": ["null", "number"], - "format": "double" - }, - "price": { - "type": ["null", "number"], - "format": "double" - }, - "sale_price": { - "type": ["null", "number"], - "format": "double" - }, - "retail_price": { - "type": ["null", "number"], - "format": "double" - }, - "weight": { - "type": ["null", "number"], - "format": "double" - }, - "width": { - "type": ["null", "number"], - "format": "double" - }, - "height": { - "type": ["null", "number"], - "format": "double" - }, - "depth": { - "type": ["null", "number"], - "format": "double" - }, - "is_free_shipping": { - "type": ["null", "boolean"] - }, - "fixed_cost_shipping_price": { - "type": ["null", "number"], - "format": "double" - }, - "purchasing_disabled": { - "type": ["null", "boolean"] - }, - "purchasing_disabled_message": { - "type": ["null", "string"] - }, - "upc": { - "type": ["null", "string"] - }, - "inventory_level": { - "type": ["null", "number"] - }, - "inventory_warning_level": { - "type": ["null", "number"] - }, - "bin_picking_number": { - "type": ["null", "string"] - }, - "mpn": { - "type": ["null", "string"] - }, - "id": { - "type": ["null", "number"] - }, - "product_id": { - "type": ["null", "number"] - }, - "sku": { - "type": ["null", "string"] - }, - "sku_id": { - "type": ["null", "number"] - }, - "option_values": { - "type": ["null", "array"], - "items": { - "title": "productVariantOptionValue_Full", - "type": ["null", "object"], - "properties": { - "option_display_name": { - "type": ["null", "string"] - }, - "label": { - "type": ["null", "string"] - }, - "id": { - "type": ["null", "number"] - }, - "option_id": { - "type": ["null", "number"] - } - } - } - }, - "calculated_price": { - "type": ["null", "number"], - "format": "double" - }, - "calculated_weight": { - "type": "number" - } - } - } - } - } - } - }, - { - "name": "channels", - "json_schema": { - "$schema": "http://json-schema.org/draft-07/schema#", - "type": "object", - "properties": { - "id": { - "type": ["null", "number"] - }, - "external_id": { - "type": ["null", "string"] - }, - "is_listable_from_ui": { - "type": ["null", "boolean"] - }, - "is_visible": { - "type": ["null", "boolean"] - }, - "status": { - "type": ["null", "string"] - }, - "name": { - "type": ["null", "string"] - }, - "type": { - "type": ["null", "string"] - }, - "platform": { - "type": ["null", "boolean"] - }, - "date_created": { - "type": ["null", "string"], - "format": "date-time" - }, - "date_modified": { - "type": ["null", "string"], - "format": "date-time" - }, - "icon_url": { - "type": ["null", "string"] - } - } - } - }, - { - "name": "store", - "json_schema": { - "$schema": "http://json-schema.org/draft-07/schema#", - "type": "object", - "properties": { - "id": { - "type": ["null", "string"] - }, - "account_uuid": { - "type": ["null", "string"] - }, - "domain": { - "type": ["null", "string"] - }, - "secure_url": { - "type": ["null", "string"] - }, - "control_panel_base_url": { - "type": ["null", "string"] - }, - "status": { - "type": ["null", "string"] - }, - "name": { - "type": ["null", "string"] - }, - "first_name": { - "type": ["null", "string"] - }, - "last_name": { - "type": ["null", "string"] - }, - "address": { - "type": ["null", "string"] - }, - "country": { - "type": ["null", "string"] - }, - "phone": { - "type": ["null", "string"] - }, - "admin_email": { - "type": ["null", "string"] - }, - "order_email": { - "type": ["null", "string"] - }, - "favicon_url": { - "type": ["null", "string"] - }, - "timezone": { - "type": ["null", "object"], - "properties": { - "name": { - "type": ["null", "string"] - }, - "raw_offset": { - "type": ["null", "number"] - }, - "dst_offset": { - "type": ["null", "number"] - }, - "date_format": { - "type": ["null", "object"], - "properties": { - "display": { - "type": ["null", "string"] - }, - "export": { - "type": ["null", "string"] - }, - "extended_display": { - "type": ["null", "string"] - } - } - } - } - }, - "language": { - "type": ["null", "string"] - }, - "currency": { - "type": ["null", "string"] - }, - "currency_symbol": { - "type": ["null", "string"] - }, - "decimal_separator": { - "type": ["null", "string"] - }, - "thousands_separator": { - "type": ["null", "string"] - }, - "decimal_places": { - "type": ["null", "string"] - }, - "currency_symbol_location": { - "type": ["null", "string"] - }, - "weight_units": { - "type": ["null", "string"] - }, - "dimension_units": { - "type": ["null", "string"] - }, - "dimension_decimal_places": { - "type": ["null", "string"] - }, - "dimension_decimal_token": { - "type": ["null", "string"] - }, - "dimension_thousands_token": { - "type": ["null", "string"] - }, - "plan_name": { - "type": ["null", "string"] - }, - "plan_level": { - "type": ["null", "string"] - }, - "industry": { - "type": ["null", "string"] - }, - "logo": { - "type": ["null", "array"], - "items": { - "type": ["null", "object"], - "properties": { - "url": { - "type": ["null", "string"] - } - } - } - }, - "is_price_entered_with_tax": { - "type": ["null", "boolean"] - }, - "store_id": { - "type": ["null", "number"] - }, - "default_site_id": { - "type": ["null", "number"] - }, - "default_channel_id": { - "type": ["null", "number"] - }, - "active_comparison_modules": { - "type": ["null", "array"] - }, - "features": { - "type": ["null", "object"], - "properties": { - "stencil_enabled": { - "type": ["null", "boolean"] - }, - "sitewidehttps_enabled": { - "type": ["null", "boolean"] - }, - "facebook_catalog_id": { - "type": ["null", "string"] - }, - "checkout_type": { - "type": ["null", "string"] - }, - "wishlists_enabled": { - "type": ["null", "boolean"] - }, - "graphql_storefront_api_enabled": { - "type": ["null", "boolean"] - }, - "shopper_consent_tracking_enabled": { - "type": ["null", "boolean"] - }, - "multi_storefront_enabled": { - "type": ["null", "boolean"] - } - } - } - } - } - } - ] -} diff --git a/airbyte-integrations/connectors/source-bigcommerce/integration_tests/configured_catalog.json b/airbyte-integrations/connectors/source-bigcommerce/integration_tests/configured_catalog.json index 2c227e937328..9eb524b550d7 100644 --- a/airbyte-integrations/connectors/source-bigcommerce/integration_tests/configured_catalog.json +++ b/airbyte-integrations/connectors/source-bigcommerce/integration_tests/configured_catalog.json @@ -3,2068 +3,192 @@ { "stream": { "name": "customers", - "json_schema": { - "$schema": "http://json-schema.org/draft-07/schema#", - "type": "object", - "properties": { - "email": { - "type": ["null", "string"] - }, - "first_name": { - "type": ["null", "string"] - }, - "last_name": { - "type": ["null", "string"] - }, - "company": { - "type": ["null", "string"] - }, - "phone": { - "type": ["null", "string"] - }, - "registration_ip_address": { - "type": ["null", "string"] - }, - "notes": { - "type": ["null", "string"] - }, - "tax_exempt_category": { - "type": ["null", "string"] - }, - "customer_group_id": { - "type": ["null", "number"] - }, - "id": { - "type": ["null", "number"] - }, - "date_modified": { - "type": ["null", "string"], - "format": "date-time" - }, - "date_created": { - "type": ["null", "string"], - "format": "date-time" - }, - "address_count": { - "type": ["null", "number"] - }, - "attribute_count": { - "type": ["null", "number"] - }, - "authentication": { - "type": ["null", "object"], - "properties": { - "force_password_reset": { - "type": ["null", "boolean"] - } - } - }, - "addresses": { - "type": ["null", "array"], - "items": { - "type": ["null", "object"], - "properties": { - "first_name": { - "type": ["null", "string"] - }, - "last_name": { - "type": ["null", "string"] - }, - "company": { - "type": ["null", "string"] - }, - "address1": { - "type": ["null", "string"] - }, - "address2": { - "type": ["null", "string"] - }, - "city": { - "type": ["null", "string"] - }, - "state_or_province": { - "type": ["null", "string"] - }, - "postal_code": { - "type": ["null", "string"] - }, - "country_code": { - "type": ["null", "string"] - }, - "phone": { - "type": ["null", "string"] - }, - "address_type": { - "type": ["null", "string"] - }, - "customer_id": { - "type": ["null", "number"] - }, - "id": { - "type": ["null", "number"] - }, - "country": { - "type": ["null", "string"] - }, - "form_fields": { - "type": ["null", "array"], - "oneOf": [ - { - "type": ["null", "object"], - "properties": { - "name": { - "type": ["name", "string"] - }, - "value": { - "oneOf": [ - { - "type": ["null", "string"] - }, - { - "type": ["null", "number"] - }, - { - "type": ["null", "array"] - } - ] - }, - "customer_id": { - "type": ["null", "number"] - } - } - }, - { - "type": ["null", "object"], - "properties": { - "name": { - "type": ["name", "string"] - }, - "value": { - "oneOf": [ - { - "type": ["null", "string"] - }, - { - "type": ["null", "number"] - }, - { - "type": ["null", "array"] - } - ] - }, - "address_id": { - "type": ["null", "number"] - } - } - } - ] - }, - "store_credit_amounts": { - "type": ["null", "array"], - "items": { - "type": ["null", "object"], - "properties": { - "amount": { - "type": ["null", "number"] - } - } - } - }, - "accepts_product_review_abandoned_cart_emails": { - "type": ["null", "boolean"] - }, - "channel_ids": { - "type": ["null", "array"] - } - } - } - } - } - }, - "supported_sync_modes": ["incremental", "full_refresh"], + "json_schema": {}, + "supported_sync_modes": [ + "incremental", + "full_refresh" + ], "source_defined_cursor": true, - "default_cursor_field": ["date_modified"] + "default_cursor_field": [ + "date_modified" + ] }, "sync_mode": "incremental", - "cursor_field": ["date_modified"], + "cursor_field": [ + "date_modified" + ], "destination_sync_mode": "append" }, { "stream": { "name": "orders", - "json_schema": { - "$schema": "http://json-schema.org/draft-07/schema#", - "type": "object", - "properties": { - "id": { - "type": ["null", "number"] - }, - "date_modified": { - "type": ["null", "string"], - "format": "date-time" - }, - "date_shipped": { - "type": ["null", "string"], - "format": "date-time" - }, - "cart_id": { - "type": ["null", "string"] - }, - "status": { - "type": ["null", "string"] - }, - "subtotal_tax": { - "type": ["null", "string"] - }, - "shipping_cost_tax": { - "type": ["null", "string"] - }, - "shipping_cost_tax_class_id": { - "type": ["null", "number"] - }, - "handling_cost_tax": { - "type": ["null", "string"] - }, - "handling_cost_tax_class_id": { - "type": ["null", "number"] - }, - "wrapping_cost_tax": { - "type": ["null", "string"] - }, - "wrapping_cost_tax_class_id": { - "type": ["null", "number"] - }, - "payment_status": { - "type": ["null", "string"] - }, - "store_credit_amount": { - "type": ["null", "string"] - }, - "gift_certificate_amount": { - "type": ["null", "string"] - }, - "currency_id": { - "type": ["null", "number"] - }, - "currency_code": { - "type": ["null", "string"] - }, - "currency_exchange_rate": { - "type": ["null", "string"] - }, - "default_currency_id": { - "type": ["null", "number"] - }, - "coupon_discount": { - "type": ["null", "string"] - }, - "shipping_address_count": { - "type": ["null", "number"] - }, - "is_email_opt_in": { - "type": ["null", "boolean"] - }, - "order_source": { - "type": ["null", "string"] - }, - "products": { - "type": ["null", "object"], - "properties": { - "url": { - "type": ["null", "string"] - }, - "resource": { - "type": ["null", "string"] - } - } - }, - "shipping_addresses": { - "type": ["null", "object"], - "properties": { - "url": { - "type": ["null", "string"] - }, - "resource": { - "type": ["null", "string"] - } - } - }, - "coupons": { - "type": ["null", "object"], - "properties": { - "url": { - "type": ["null", "string"] - }, - "resource": { - "type": ["null", "string"] - } - } - }, - "status_id": { - "type": ["null", "number"] - }, - "base_handling_cost": { - "type": ["null", "string"] - }, - "base_shipping_cost": { - "type": ["null", "string"] - }, - "base_wrapping_cost": { - "oneOf": [ - { - "type": ["null", "number"] - }, - { - "type": ["null", "string"] - } - ] - }, - "billing_address": { - "type": ["null", "object"], - "properties": { - "first_name": { - "type": ["null", "string"] - }, - "last_name": { - "type": ["null", "string"] - }, - "company": { - "type": ["null", "string"] - }, - "street_1": { - "type": ["null", "string"] - }, - "street_2": { - "type": ["null", "string"] - }, - "city": { - "type": ["null", "string"] - }, - "state": { - "type": ["null", "string"] - }, - "zip": { - "type": ["null", "string"] - }, - "country": { - "type": ["null", "string"] - }, - "country_iso2": { - "type": ["null", "string"] - }, - "phone": { - "type": ["null", "string"] - }, - "email": { - "type": ["null", "string"] - }, - "form_fields": { - "type": ["null", "array"], - "items": { - "type": ["null", "object"], - "properties": { - "name": { - "type": ["null", "string"] - }, - "value": { - "type": ["null", "string"] - } - } - } - } - } - }, - "channel_id": { - "type": ["null", "number"] - }, - "customer_id": { - "type": ["null", "number"] - }, - "customer_message": { - "type": ["null", "string"] - }, - "date_created": { - "type": ["null", "string"], - "format": "date-time" - }, - "default_currency_code": { - "type": ["null", "string"] - }, - "discount_amount": { - "type": ["null", "string"] - }, - "ebay_order_id": { - "type": ["null", "string"] - }, - "external_id": { - "type": ["null", "string"] - }, - "external_source": { - "type": ["null", "string"] - }, - "geoip_country": { - "type": ["null", "string"] - }, - "geoip_country_iso2": { - "type": ["null", "string"] - }, - "handling_cost_ex_tax": { - "type": ["null", "string"] - }, - "handling_cost_inc_tax": { - "type": ["null", "string"] - }, - "ip_address": { - "type": ["null", "string"] - }, - "is_deleted": { - "type": ["null", "boolean"] - }, - "items_shipped": { - "type": ["null", "number"] - }, - "items_total": { - "type": ["null", "number"] - }, - "order_is_digital": { - "type": ["null", "boolean"] - }, - "payment_method": { - "type": ["null", "string"] - }, - "refunded_amount": { - "type": ["null", "string"] - }, - "shipping_cost_ex_tax": { - "type": ["null", "string"] - }, - "shipping_cost_inc_tax": { - "type": ["null", "string"] - }, - "staff_notes": { - "type": ["null", "string"] - }, - "subtotal_ex_tax": { - "type": ["null", "string"] - }, - "subtotal_inc_tax": { - "type": ["null", "string"] - }, - "tax_provider_id": { - "type": ["null", "string"] - }, - "customer_locale": { - "type": ["null", "string"] - }, - "total_ex_tax": { - "type": ["null", "string"] - }, - "total_inc_tax": { - "type": ["null", "string"] - }, - "wrapping_cost_ex_tax": { - "type": ["null", "string"] - }, - "wrapping_cost_inc_tax": { - "type": ["null", "string"] - } - } - }, - "supported_sync_modes": ["incremental", "full_refresh"], + "json_schema": {}, + "supported_sync_modes": [ + "incremental", + "full_refresh" + ], "source_defined_cursor": true, - "default_cursor_field": ["date_modified"] + "default_cursor_field": [ + "date_modified" + ] }, "sync_mode": "incremental", - "cursor_field": ["date_modified"], + "cursor_field": [ + "date_modified" + ], "destination_sync_mode": "append" }, { "stream": { "name": "transactions", - "json_schema": { - "$schema": "http://json-schema.org/draft-07/schema#", - "type": "object", - "properties": { - "event": { - "type": ["null", "string"] - }, - "method": { - "type": ["null", "string"] - }, - "amount": { - "type": ["null", "number"] - }, - "currency": { - "type": ["null", "string"] - }, - "gateway": { - "type": ["null", "string"] - }, - "gateway_transaction_id": { - "type": ["null", "string"] - }, - "date_created": { - "type": ["null", "string"] - }, - "test": { - "type": ["null", "boolean"] - }, - "status": { - "type": ["null", "string"] - }, - "fraud_review": { - "type": ["null", "boolean"] - }, - "reference_transaction_id": { - "type": ["null", "number"] - }, - "offline": { - "type": ["null", "object"], - "properties": { - "display_name": { - "type": ["null", "string"] - } - } - }, - "custom": { - "type": ["null", "object"], - "properties": { - "payment_method": { - "type": ["null", "string"] - } - } - }, - "payment_method_id": { - "type": ["null", "string"] - }, - "id": { - "type": ["null", "number"] - }, - "order_id": { - "type": ["null", "string"] - }, - "payment_instrument_token": { - "type": ["null", "string"] - }, - "avs_result": { - "type": ["null", "object"], - "properties": { - "code": { - "type": ["null", "string"] - }, - "message": { - "type": ["null", "string"] - }, - "street_match": { - "type": ["null", "string"] - }, - "postal_match": { - "type": ["null", "string"] - } - } - }, - "cvv_result": { - "type": ["null", "object"], - "properties": { - "code": { - "type": ["null", "string"] - }, - "message": { - "type": ["null", "string"] - } - } - }, - "credit_card": { - "type": ["null", "object"], - "properties": { - "card_type": { - "type": ["null", "string"] - }, - "card_iin": { - "type": ["null", "string"] - }, - "card_last4": { - "type": ["null", "string"] - }, - "card_expiry_month": { - "type": ["null", "number"] - }, - "card_expiry_year": { - "type": ["null", "number"] - } - } - }, - "gift_certificate": { - "type": ["null", "object"], - "properties": { - "code": { - "type": ["null", "string"] - }, - "original_balance": { - "type": ["null", "number"] - }, - "starting_balance": { - "type": ["null", "number"] - }, - "remaining_balance": { - "type": ["null", "number"] - }, - "status": { - "type": ["null", "string"] - } - } - }, - "store_credit": { - "type": ["null", "object"], - "properties": { - "remaining_balance": { - "type": ["null", "number"] - } - } - } - } - }, - "supported_sync_modes": ["incremental", "full_refresh"], + "json_schema": {}, + "supported_sync_modes": [ + "incremental", + "full_refresh" + ], "source_defined_cursor": true, - "default_cursor_field": ["id"] + "default_cursor_field": [ + "id" + ] }, "sync_mode": "incremental", - "cursor_field": ["id"], + "cursor_field": [ + "id" + ], "destination_sync_mode": "append" }, { "stream": { "name": "pages", - "json_schema": { - "$schema": "http://json-schema.org/draft-07/schema#", - "type": "object", - "properties": { - "email": { - "type": ["null", "string"] - }, - "meta_title": { - "type": ["null", "string"] - }, - "body": { - "type": ["null", "string"] - }, - "feed": { - "type": ["null", "string"] - }, - "link": { - "type": ["null", "string"] - }, - "contact_fields": { - "type": ["null", "string"] - }, - "meta_keywords": { - "type": ["null", "string"] - }, - "meta_description": { - "type": ["null", "string"] - }, - "search_keywords": { - "type": ["null", "string"] - }, - "url": { - "type": ["null", "string"] - }, - "channel_id": { - "type": ["null", "number"] - }, - "name": { - "type": ["null", "string"] - }, - "is_visible": { - "type": ["null", "boolean"] - }, - "parent_id": { - "type": ["null", "number"] - }, - "sort_order": { - "type": ["null", "number"] - }, - "type": { - "type": ["null", "string"] - }, - "is_homepage": { - "type": ["null", "boolean"] - }, - "is_customers_only": { - "type": ["null", "boolean"] - }, - "id": { - "type": ["null", "number"] - } - } - }, - "supported_sync_modes": ["incremental", "full_refresh"], + "json_schema": {}, + "supported_sync_modes": [ + "incremental", + "full_refresh" + ], "source_defined_cursor": true, - "default_cursor_field": ["id"] + "default_cursor_field": [ + "id" + ] }, "sync_mode": "incremental", - "cursor_field": ["id"], + "cursor_field": [ + "id" + ], "destination_sync_mode": "append" }, { "stream": { "name": "brands", - "json_schema": { - "$schema": "http://json-schema.org/draft-07/schema#", - "type": "object", - "properties": { - "id": { - "type": ["null", "integer"] - }, - "name": { - "type": ["null", "string"] - }, - "page_title": { - "type": ["null", "string"] - }, - "meta_keywords": { - "type": ["null", "array"], - "items": { - "type": ["null", "string"] - } - }, - "meta_description": { - "type": ["null", "string"] - }, - "search_keywords": { - "type": ["null", "string"] - }, - "image_url": { - "type": ["null", "string"] - }, - "custom_url": { - "type": ["null", "object"], - "properties": { - "url": { - "type": ["null", "string"] - }, - "is_customized": { - "type": ["null", "boolean"] - } - } - } - } - }, - "supported_sync_modes": ["incremental", "full_refresh"], + "json_schema": {}, + "supported_sync_modes": [ + "incremental", + "full_refresh" + ], "source_defined_cursor": true, - "default_cursor_field": ["id"] + "default_cursor_field": [ + "id" + ] }, "sync_mode": "incremental", - "cursor_field": ["id"], + "cursor_field": [ + "id" + ], "destination_sync_mode": "append" }, { "stream": { "name": "categories", - "json_schema": { - "$schema": "http://json-schema.org/draft-07/schema#", - "type": "object", - "properties": { - "id": { - "type": ["null", "integer"] - }, - "parent_id": { - "type": ["null", "integer"] - }, - "name": { - "type": ["null", "string"] - }, - "description": { - "type": ["null", "string"] - }, - "views": { - "type": ["null", "integer"] - }, - "sort_order": { - "type": ["null", "integer"] - }, - "page_title": { - "type": ["null", "string"] - }, - "meta_keywords": { - "type": ["null", "array"], - "items": { - "type": ["null", "string"] - } - }, - "meta_description": { - "type": ["null", "string"] - }, - "layout_file": { - "type": ["null", "string"] - }, - "image_url": { - "type": ["null", "string"] - }, - "is_visible": { - "type": ["null", "boolean"] - }, - "search_keywords": { - "type": ["null", "string"] - }, - "default_product_sort": { - "type": ["null", "string"] - }, - "url": { - "type": ["null", "object"], - "properties": { - "path": { - "type": ["null", "string"] - }, - "is_customized": { - "type": ["null", "boolean"] - } - } - } - } - }, - "supported_sync_modes": ["incremental", "full_refresh"], + "json_schema": {}, + "supported_sync_modes": [ + "incremental", + "full_refresh" + ], "source_defined_cursor": true, - "default_cursor_field": ["id"] + "default_cursor_field": [ + "id" + ] }, "sync_mode": "incremental", - "cursor_field": ["id"], + "cursor_field": [ + "id" + ], "destination_sync_mode": "append" }, { "stream": { "name": "products", - "json_schema": { - "$schema": "http://json-schema.org/draft-07/schema#", - "type": "object", - "properties": { - "name": { - "type": ["null", "string"] - }, - "type": { - "type": ["null", "string"] - }, - "sku": { - "type": ["null", "string"] - }, - "description": { - "type": ["null", "string"] - }, - "weight": { - "type": ["null", "number"], - "format": "float" - }, - "width": { - "type": ["null", "number"], - "format": "float" - }, - "depth": { - "type": ["null", "number"], - "format": "float" - }, - "height": { - "type": ["null", "number"], - "format": "float" - }, - "price": { - "type": ["null", "number"], - "format": "float" - }, - "cost_price": { - "type": ["null", "number"], - "format": "float" - }, - "retail_price": { - "type": ["null", "number"], - "format": "float" - }, - "sale_price": { - "type": ["null", "number"], - "format": "float" - }, - "map_price": { - "type": ["null", "number"] - }, - "tax_class_id": { - "type": ["null", "number"] - }, - "product_tax_code": { - "type": ["null", "string"] - }, - "categories": { - "type": ["null", "array"], - "items": { - "type": ["null", "number"] - } - }, - "brand_id": { - "type": ["null", "number"] - }, - "inventory_level": { - "type": ["null", "number"] - }, - "inventory_warning_level": { - "type": ["null", "number"] - }, - "inventory_tracking": { - "type": ["null", "string"] - }, - "fixed_cost_shipping_price": { - "type": ["null", "number"], - "format": "float" - }, - "is_free_shipping": { - "type": ["null", "boolean"] - }, - "is_visible": { - "type": ["null", "boolean"] - }, - "is_featured": { - "type": ["null", "boolean"] - }, - "related_products": { - "type": ["null", "array"], - "items": { - "type": ["null", "number"] - } - }, - "warranty": { - "type": ["null", "string"] - }, - "bin_picking_number": { - "type": ["null", "string"] - }, - "layout_file": { - "type": ["null", "string"] - }, - "upc": { - "type": ["null", "string"] - }, - "search_keywords": { - "type": ["null", "string"] - }, - "availability": { - "type": ["null", "string"] - }, - "availability_description": { - "type": ["null", "string"] - }, - "gift_wrapping_options_type": { - "type": ["null", "string"] - }, - "gift_wrapping_options_list": { - "type": ["null", "array"], - "items": { - "type": ["null", "number"] - } - }, - "sort_order": { - "type": ["null", "number"] - }, - "condition": { - "type": ["null", "string"] - }, - "is_condition_shown": { - "type": ["null", "boolean"] - }, - "order_quantity_minimum": { - "type": ["null", "number"] - }, - "order_quantity_maximum": { - "type": ["null", "number"] - }, - "page_title": { - "type": ["null", "string"] - }, - "meta_keywords": { - "type": ["null", "array"], - "items": { - "type": ["null", "string"] - } - }, - "meta_description": { - "type": ["null", "string"] - }, - "view_count": { - "type": ["null", "number"] - }, - "preorder_release_date": { - "type": ["null", "string"], - "format": "date-time" - }, - "preorder_message": { - "type": ["null", "string"] - }, - "is_preorder_only": { - "type": ["null", "boolean"] - }, - "is_price_hidden": { - "type": ["null", "boolean"] - }, - "price_hidden_label": { - "type": ["null", "string"] - }, - "custom_url": { - "type": ["null", "object"], - "title": "customUrl_Full", - "properties": { - "url": { - "type": ["null", "string"] - }, - "is_customized": { - "type": ["null", "boolean"] - } - } - }, - "open_graph_type": { - "type": ["null", "string"] - }, - "open_graph_title": { - "type": ["null", "string"] - }, - "open_graph_description": { - "type": ["null", "string"] - }, - "open_graph_use_meta_description": { - "type": ["null", "boolean"] - }, - "open_graph_use_product_name": { - "type": ["null", "boolean"] - }, - "open_graph_use_image": { - "type": ["null", "boolean"] - }, - "brand_name or brand_id": { - "type": ["null", "string"] - }, - "gtin": { - "type": ["null", "string"] - }, - "mpn": { - "type": ["null", "string"] - }, - "reviews_rating_sum": { - "type": ["null", "number"] - }, - "reviews_count": { - "type": ["null", "number"] - }, - "total_sold": { - "type": ["null", "number"] - }, - "custom_fields": { - "type": ["null", "array"], - "items": { - "type": ["null", "object"], - "title": "productCustomField_Put", - "required": ["name", "value"], - "properties": { - "id": { - "type": ["null", "number"] - }, - "name": { - "type": ["null", "string"] - }, - "value": { - "type": ["null", "string"] - } - } - } - }, - "bulk_pricing_rules": { - "type": ["null", "array"], - "items": { - "type": ["null", "object"], - "title": "bulkPricingRule_Full", - "required": ["quantity_min", "quantity_max", "type", "amount"], - "properties": { - "id": { - "type": ["null", "number"] - }, - "quantity_min": { - "type": ["null", "number"] - }, - "quantity_max": { - "type": ["null", "number"] - }, - "type": { - "type": ["null", "string"] - }, - "amount": { - "type": ["null", "number"] - } - } - } - }, - "images": { - "type": ["null", "array"], - "items": { - "title": "productImage_Full", - "type": ["null", "object"], - "properties": { - "image_file": { - "type": ["null", "string"] - }, - "is_thumbnail": { - "type": ["null", "boolean"] - }, - "sort_order": { - "type": ["null", "number"] - }, - "description": { - "type": ["null", "string"] - }, - "image_url": { - "type": ["null", "string"] - }, - "id": { - "type": ["null", "number"] - }, - "product_id": { - "type": ["null", "number"] - }, - "url_zoom": { - "type": ["null", "string"] - }, - "url_standard": { - "type": ["null", "string"] - }, - "url_thumbnail": { - "type": ["null", "string"] - }, - "url_tiny": { - "type": ["null", "string"] - }, - "date_modified": { - "format": "date-time", - "type": ["null", "string"] - } - } - } - }, - "videos": { - "type": ["null", "array"], - "items": { - "title": "productVideo_Full", - "type": ["null", "object"], - "properties": { - "title": { - "type": ["null", "string"] - }, - "description": { - "type": ["null", "string"] - }, - "sort_order": { - "type": ["null", "number"] - }, - "type": { - "type": ["null", "string"] - }, - "video_id": { - "type": ["null", "string"] - }, - "id": { - "type": ["null", "number"] - }, - "product_id": { - "type": ["null", "number"] - }, - "length": { - "type": ["null", "string"] - } - } - } - }, - "date_created": { - "type": ["null", "string"], - "format": "date-time" - }, - "date_modified": { - "type": ["null", "string"], - "format": "date-time" - }, - "id": { - "type": ["null", "number"] - }, - "base_variant_id": { - "type": ["null", "number"] - }, - "calculated_price": { - "type": ["null", "number"], - "format": "float" - }, - "options": { - "type": ["null", "array"], - "items": { - "type": ["null", "object"], - "title": "productOption_Base", - "properties": { - "id": { - "type": ["null", "number"] - }, - "product_id": { - "type": ["null", "number"] - }, - "display_name": { - "type": ["null", "string"] - }, - "type": { - "type": ["null", "string"] - }, - "config": { - "type": ["null", "object"], - "title": "productOptionConfig_Full", - "properties": { - "default_value": { - "type": ["null", "string"] - }, - "checked_by_default": { - "type": ["null", "boolean"] - }, - "checkbox_label": { - "type": ["null", "string"] - }, - "date_limited": { - "type": ["null", "boolean"] - }, - "date_limit_mode": { - "type": ["null", "string"] - }, - "date_earliest_value": { - "type": ["null", "string"], - "format": "date" - }, - "date_latest_value": { - "type": ["null", "string"], - "format": "date" - }, - "file_types_mode": { - "type": ["null", "string"] - }, - "file_types_supported": { - "type": ["null", "array"], - "items": { - "type": ["null", "string"] - } - }, - "file_types_other": { - "type": ["null", "array"], - "items": { - "type": ["null", "string"] - } - }, - "file_max_size": { - "type": ["null", "number"] - }, - "text_characters_limited": { - "type": ["null", "boolean"] - }, - "text_min_length": { - "type": ["null", "number"] - }, - "text_max_length": { - "type": ["null", "number"] - }, - "text_lines_limited": { - "type": ["null", "boolean"] - }, - "text_max_lines": { - "type": ["null", "number"] - }, - "number_limited": { - "type": ["null", "boolean"] - }, - "number_limit_mode": { - "type": ["null", "string"] - }, - "number_lowest_value": { - "type": ["null", "number"] - }, - "number_highest_value": { - "type": ["null", "number"] - }, - "number_numbers_only": { - "type": ["null", "boolean"] - }, - "product_list_adjusts_inventory": { - "type": ["null", "boolean"] - }, - "product_list_adjusts_pricing": { - "type": ["null", "boolean"] - }, - "product_list_shipping_calc": { - "type": ["null", "string"] - } - } - }, - "sort_order": { - "type": ["null", "number"] - }, - "option_values": { - "title": "productOptionOptionValue_Full", - "type": ["null", "object"], - "required": ["label", "sort_order"], - "properties": { - "is_default": { - "type": ["null", "boolean"] - }, - "label": { - "type": ["null", "string"] - }, - "sort_order": { - "type": ["null", "number"] - }, - "value_data": { - "type": ["object", "null"] - }, - "id": { - "type": ["null", "number"] - } - } - } - } - } - }, - "modifiers": { - "type": ["null", "array"], - "items": { - "title": "productModifier_Full", - "type": ["null", "object"], - "required": ["type", "required"], - "properties": { - "type": { - "type": ["null", "string"] - }, - "required": { - "type": ["null", "boolean"] - }, - "sort_order": { - "type": ["null", "number"] - }, - "config": { - "type": ["null", "object"], - "title": "config_Full", - "properties": { - "default_value": { - "type": ["null", "string"] - }, - "checked_by_default": { - "type": ["null", "boolean"] - }, - "checkbox_label": { - "type": ["null", "string"] - }, - "date_limited": { - "type": ["null", "boolean"] - }, - "date_limit_mode": { - "type": ["null", "string"] - }, - "date_earliest_value": { - "type": ["null", "string"], - "format": "date" - }, - "date_latest_value": { - "type": ["null", "string"], - "format": "date" - }, - "file_types_mode": { - "type": ["null", "string"] - }, - "file_types_supported": { - "type": ["null", "array"], - "items": { - "type": ["null", "string"] - } - }, - "file_types_other": { - "type": ["null", "array"], - "items": { - "type": ["null", "string"] - } - }, - "file_max_size": { - "type": ["null", "number"] - }, - "text_characters_limited": { - "type": ["null", "boolean"] - }, - "text_min_length": { - "type": ["null", "number"] - }, - "text_max_length": { - "type": ["null", "number"] - }, - "text_lines_limited": { - "type": ["null", "boolean"] - }, - "text_max_lines": { - "type": ["null", "number"] - }, - "number_limited": { - "type": ["null", "boolean"] - }, - "number_limit_mode": { - "type": ["null", "string"] - }, - "number_lowest_value": { - "type": ["null", "number"] - }, - "number_highest_value": { - "type": ["null", "number"] - }, - "number_numbers_only": { - "type": ["null", "boolean"] - }, - "product_list_adjusts_inventory": { - "type": ["null", "boolean"] - }, - "product_list_adjusts_pricing": { - "type": ["null", "boolean"] - }, - "product_list_shipping_calc": { - "type": ["null", "string"] - } - } - }, - "display_name": { - "type": ["null", "string"] - }, - "id": { - "type": ["null", "number"] - }, - "product_id": { - "type": ["null", "number"] - }, - "name": { - "type": ["null", "string"] - }, - "option_values": { - "type": ["null", "array"], - "items": { - "title": "productModifierOptionValue_Full", - "type": ["null", "object"], - "required": ["label", "sort_order"], - "properties": { - "is_default": { - "type": ["null", "boolean"] - }, - "label": { - "type": ["null", "string"] - }, - "sort_order": { - "type": ["null", "number"] - }, - "value_data": { - "type": ["object", "null"] - }, - "adjusters": { - "type": ["null", "object"], - "title": "adjusters_Full", - "properties": { - "price": { - "type": ["null", "object"], - "title": "adjuster_Full", - "properties": { - "adjuster": { - "type": ["null", "string"] - }, - "adjuster_value": { - "type": ["null", "number"] - } - } - }, - "weight": { - "type": ["null", "object"], - "title": "adjuster_Full", - "properties": { - "adjuster": { - "type": ["null", "string"] - }, - "adjuster_value": { - "type": ["null", "number"] - } - } - }, - "image_url": { - "type": ["null", "string"] - }, - "purchasing_disabled": { - "type": ["null", "object"], - "properties": { - "status": { - "type": ["null", "boolean"] - }, - "message": { - "type": ["null", "string"] - } - } - } - } - }, - "id": { - "type": ["null", "number"] - }, - "option_id": { - "type": ["null", "number"] - } - } - } - } - } - } - }, - "option_set_id": { - "type": ["null", "number"] - }, - "option_set_display": { - "type": ["null", "string"] - }, - "variants": { - "type": ["null", "array"], - "items": { - "title": "productVariant_Full", - "type": ["null", "object"], - "properties": { - "cost_price": { - "type": ["null", "number"], - "format": "double" - }, - "price": { - "type": ["null", "number"], - "format": "double" - }, - "sale_price": { - "type": ["null", "number"], - "format": "double" - }, - "retail_price": { - "type": ["null", "number"], - "format": "double" - }, - "weight": { - "type": ["null", "number"], - "format": "double" - }, - "width": { - "type": ["null", "number"], - "format": "double" - }, - "height": { - "type": ["null", "number"], - "format": "double" - }, - "depth": { - "type": ["null", "number"], - "format": "double" - }, - "is_free_shipping": { - "type": ["null", "boolean"] - }, - "fixed_cost_shipping_price": { - "type": ["null", "number"], - "format": "double" - }, - "purchasing_disabled": { - "type": ["null", "boolean"] - }, - "purchasing_disabled_message": { - "type": ["null", "string"] - }, - "upc": { - "type": ["null", "string"] - }, - "inventory_level": { - "type": ["null", "number"] - }, - "inventory_warning_level": { - "type": ["null", "number"] - }, - "bin_picking_number": { - "type": ["null", "string"] - }, - "mpn": { - "type": ["null", "string"] - }, - "id": { - "type": ["null", "number"] - }, - "product_id": { - "type": ["null", "number"] - }, - "sku": { - "type": ["null", "string"] - }, - "sku_id": { - "type": ["null", "number"] - }, - "option_values": { - "type": ["null", "array"], - "items": { - "title": "productVariantOptionValue_Full", - "type": ["null", "object"], - "properties": { - "option_display_name": { - "type": ["null", "string"] - }, - "label": { - "type": ["null", "string"] - }, - "id": { - "type": ["null", "number"] - }, - "option_id": { - "type": ["null", "number"] - } - } - } - }, - "calculated_price": { - "type": ["null", "number"], - "format": "double" - }, - "calculated_weight": { - "type": "number" - } - } - } - } - } - }, - "supported_sync_modes": ["incremental", "full_refresh"], + "json_schema": {}, + "supported_sync_modes": [ + "incremental", + "full_refresh" + ], "source_defined_cursor": true, - "default_cursor_field": ["date_modified"] + "default_cursor_field": [ + "date_modified" + ] }, "sync_mode": "incremental", - "cursor_field": ["date_modified"], + "cursor_field": [ + "date_modified" + ], "destination_sync_mode": "append" }, { "stream": { "name": "channels", - "json_schema": { - "$schema": "http://json-schema.org/draft-07/schema#", - "type": "object", - "properties": { - "id": { - "type": ["null", "number"] - }, - "external_id": { - "type": ["null", "string"] - }, - "is_listable_from_ui": { - "type": ["null", "boolean"] - }, - "is_visible": { - "type": ["null", "boolean"] - }, - "status": { - "type": ["null", "string"] - }, - "name": { - "type": ["null", "string"] - }, - "type": { - "type": ["null", "string"] - }, - "platform": { - "type": ["null", "boolean"] - }, - "date_created": { - "type": ["null", "string"], - "format": "date-time" - }, - "date_modified": { - "type": ["null", "string"], - "format": "date-time" - }, - "icon_url": { - "type": ["null", "string"] - } - } - }, - "supported_sync_modes": ["incremental", "full_refresh"], + "json_schema": {}, + "supported_sync_modes": [ + "incremental", + "full_refresh" + ], "source_defined_cursor": true, - "default_cursor_field": ["date_modified"] + "default_cursor_field": [ + "date_modified" + ] }, "sync_mode": "incremental", - "cursor_field": ["date_modified"], + "cursor_field": [ + "date_modified" + ], "destination_sync_mode": "append" }, { "stream": { "name": "store", - "json_schema": { - "$schema": "http://json-schema.org/draft-07/schema#", - "type": "object", - "properties": { - "id": { - "type": ["null", "string"] - }, - "account_uuid": { - "type": ["null", "string"] - }, - "domain": { - "type": ["null", "string"] - }, - "secure_url": { - "type": ["null", "string"] - }, - "control_panel_base_url": { - "type": ["null", "string"] - }, - "status": { - "type": ["null", "string"] - }, - "name": { - "type": ["null", "string"] - }, - "first_name": { - "type": ["null", "string"] - }, - "last_name": { - "type": ["null", "string"] - }, - "address": { - "type": ["null", "string"] - }, - "country": { - "type": ["null", "string"] - }, - "phone": { - "type": ["null", "string"] - }, - "admin_email": { - "type": ["null", "string"] - }, - "order_email": { - "type": ["null", "string"] - }, - "favicon_url": { - "type": ["null", "string"] - }, - "timezone": { - "type": ["null", "object"], - "properties": { - "name": { - "type": ["null", "string"] - }, - "raw_offset": { - "type": ["null", "number"] - }, - "dst_offset": { - "type": ["null", "number"] - }, - "date_format": { - "type": ["null", "object"], - "properties": { - "display": { - "type": ["null", "string"] - }, - "export": { - "type": ["null", "string"] - }, - "extended_display": { - "type": ["null", "string"] - } - } - } - } - }, - "language": { - "type": ["null", "string"] - }, - "currency": { - "type": ["null", "string"] - }, - "currency_symbol": { - "type": ["null", "string"] - }, - "decimal_separator": { - "type": ["null", "string"] - }, - "thousands_separator": { - "type": ["null", "string"] - }, - "decimal_places": { - "type": ["null", "string"] - }, - "currency_symbol_location": { - "type": ["null", "string"] - }, - "weight_units": { - "type": ["null", "string"] - }, - "dimension_units": { - "type": ["null", "string"] - }, - "dimension_decimal_places": { - "type": ["null", "string"] - }, - "dimension_decimal_token": { - "type": ["null", "string"] - }, - "dimension_thousands_token": { - "type": ["null", "string"] - }, - "plan_name": { - "type": ["null", "string"] - }, - "plan_level": { - "type": ["null", "string"] - }, - "industry": { - "type": ["null", "string"] - }, - "logo": { - "type": ["null", "array"], - "items": { - "type": ["null", "object"], - "properties": { - "url": { - "type": ["null", "string"] - } - } - } - }, - "is_price_entered_with_tax": { - "type": ["null", "boolean"] - }, - "store_id": { - "type": ["null", "number"] - }, - "default_site_id": { - "type": ["null", "number"] - }, - "default_channel_id": { - "type": ["null", "number"] - }, - "active_comparison_modules": { - "type": ["null", "array"] - }, - "features": { - "type": ["null", "object"], - "properties": { - "stencil_enabled": { - "type": ["null", "boolean"] - }, - "sitewidehttps_enabled": { - "type": ["null", "boolean"] - }, - "facebook_catalog_id": { - "type": ["null", "string"] - }, - "checkout_type": { - "type": ["null", "string"] - }, - "wishlists_enabled": { - "type": ["null", "boolean"] - }, - "graphql_storefront_api_enabled": { - "type": ["null", "boolean"] - }, - "shopper_consent_tracking_enabled": { - "type": ["null", "boolean"] - }, - "multi_storefront_enabled": { - "type": ["null", "boolean"] - } - } - } - } - }, - "supported_sync_modes": ["incremental", "full_refresh"], + "json_schema": {}, + "supported_sync_modes": [ + "incremental", + "full_refresh" + ], "source_defined_cursor": true, - "default_cursor_field": ["store_id"] + "default_cursor_field": [ + "store_id" + ] }, "sync_mode": "incremental", - "cursor_field": ["store_id"], + "cursor_field": [ + "store_id" + ], "destination_sync_mode": "overwrite" }, { "stream": { "name": "order_products", - "json_schema": { - "$schema": "http://json-schema.org/draft-07/schema#", - "type": "object", - "properties": { - "id": { - "type": ["null", "integer"] - }, - "order_id": { - "type": ["null", "integer"] - }, - "product_id": { - "type": ["null", "integer"] - }, - "variant_id": { - "type": ["null", "integer"] - }, - "order_address_id": { - "type": ["null", "integer"] - }, - "name": { - "type": ["null", "string"] - }, - "name_customer": { - "type": ["null", "string"] - }, - "name_merchant": { - "type": ["null", "string"] - }, - "sku": { - "type": ["null", "string"] - }, - "upc": { - "type": ["null", "string"] - }, - "type": { - "type": ["null", "string"] - }, - "base_price": { - "type": ["null", "string"] - }, - "price_ex_tax": { - "type": ["null", "string"] - }, - "price_inc_tax": { - "type": ["null", "string"] - }, - "price_tax": { - "type": ["null", "string"] - }, - "base_total": { - "type": ["null", "string"] - }, - "total_ex_tax": { - "type": ["null", "string"] - }, - "total_inc_tax": { - "type": ["null", "string"] - }, - "total_tax": { - "type": ["null", "string"] - }, - "weight": { - "type": ["null", "string"] - }, - "width": { - "type": ["null", "string"] - }, - "height": { - "type": ["null", "string"] - }, - "depth": { - "type": ["null", "string"] - }, - "quantity": { - "type": ["null", "number"] - }, - "base_cost_price": { - "type": ["null", "string"] - }, - "cost_price_inc_tax": { - "type": ["null", "string"] - }, - "cost_price_ex_tax": { - "type": ["null", "string"] - }, - "cost_price_tax": { - "type": ["null", "string"] - }, - "is_refunded": { - "type": ["null", "boolean"] - }, - "quantity_refunded": { - "type": ["null", "number"] - }, - "refund_amount": { - "type": ["null", "string"] - }, - "return_id": { - "type": ["null", "number"] - }, - "wrapping_id": { - "type": ["null", "string"] - }, - "wrapping_name": { - "type": ["null", "string"] - }, - "base_wrapping_cost": { - "type": ["null", "string"] - }, - "wrapping_cost_ex_tax": { - "type": ["null", "string"] - }, - "wrapping_cost_inc_tax": { - "type": ["null", "string"] - }, - "wrapping_cost_tax": { - "type": ["null", "string"] - }, - "wrapping_message": { - "type": ["null", "string"] - }, - "quantity_shipped": { - "type": ["null", "number"] - }, - "event_name": { - "type": ["null", "string"] - }, - "event_date": { - "type": ["null", "string"] - }, - "fixed_shipping_cost": { - "type": ["null", "string"] - }, - "ebay_item_id": { - "type": ["null", "string"] - }, - "ebay_transaction_id": { - "type": ["null", "string"] - }, - "option_set_id": { - "type": ["null", "integer"] - }, - "parent_order_product_id": { - "type": ["null", "integer"] - }, - "is_bundled_product": { - "type": ["null", "boolean"] - }, - "bin_picking_number": { - "type": ["null", "string"] - }, - "external_id": { - "type": ["null", "string"] - }, - "fulfillment_source": { - "type": ["null", "string"] - }, - "brand": { - "type": ["null", "string"] - }, - "gift_certificate_id": { - "type": ["null", "integer"] - }, - "applied_discounts": { - "type": ["null", "array"] - }, - "product_options": { - "type": ["null", "array"] - }, - "configurable_fields": { - "type": ["null", "array"] - } - } - }, - "supported_sync_modes": ["incremental", "full_refresh"], + "json_schema": {}, + "supported_sync_modes": [ + "incremental", + "full_refresh" + ], "source_defined_cursor": true, - "default_cursor_field": ["id"] + "default_cursor_field": [ + "id" + ] }, "sync_mode": "incremental", - "cursor_field": ["id"], + "cursor_field": [ + "id" + ], "destination_sync_mode": "append" } ] -} +} \ No newline at end of file diff --git a/airbyte-integrations/connectors/source-bigcommerce/metadata.yaml b/airbyte-integrations/connectors/source-bigcommerce/metadata.yaml index 0ac3c370391c..fd54e9032d49 100644 --- a/airbyte-integrations/connectors/source-bigcommerce/metadata.yaml +++ b/airbyte-integrations/connectors/source-bigcommerce/metadata.yaml @@ -1,24 +1,28 @@ data: - ab_internal: - ql: 200 - sl: 100 + allowedHosts: + hosts: + - api.bigcommerce.com + registries: + oss: + enabled: false + cloud: + enabled: false connectorSubtype: api connectorType: source definitionId: 59c5501b-9f95-411e-9269-7143c939adbd - dockerImageTag: 0.1.10 + dockerImageTag: 0.2.0 dockerRepository: airbyte/source-bigcommerce documentationUrl: https://docs.airbyte.com/integrations/sources/bigcommerce githubIssueLabel: source-bigcommerce icon: bigcommerce.svg license: MIT - name: BigCommerce - registries: - cloud: - enabled: true - oss: - enabled: true + name: Bigcommerce + releaseDate: 2021-08-19 releaseStage: alpha supportLevel: community tags: - - language:python + - language:low-code + ab_internal: + sl: 100 + ql: 200 metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-bigcommerce/setup.py b/airbyte-integrations/connectors/source-bigcommerce/setup.py index 7b6eed1b049c..7189d313888f 100644 --- a/airbyte-integrations/connectors/source-bigcommerce/setup.py +++ b/airbyte-integrations/connectors/source-bigcommerce/setup.py @@ -6,13 +6,13 @@ from setuptools import find_packages, setup MAIN_REQUIREMENTS = [ - "airbyte-cdk~=0.2", + "airbyte-cdk~=0.1", ] TEST_REQUIREMENTS = [ "requests-mock~=1.9.3", + "pytest~=6.2", "pytest-mock~=3.6.1", - "pytest~=6.1", ] setup( @@ -22,7 +22,7 @@ author_email="contact@airbyte.io", packages=find_packages(), install_requires=MAIN_REQUIREMENTS, - package_data={"": ["*.json", "schemas/*.json", "schemas/shared/*.json"]}, + package_data={"": ["*.json", "*.yaml", "schemas/*.json", "schemas/shared/*.json"]}, extras_require={ "tests": TEST_REQUIREMENTS, }, diff --git a/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/__init__.py b/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/__init__.py index 7b9287ea4c26..2a85736c808d 100644 --- a/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/__init__.py +++ b/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/__init__.py @@ -1,25 +1,5 @@ # -# MIT License -# -# Copyright (c) 2020 Airbyte -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in all -# copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -# SOFTWARE. +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. # diff --git a/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/components.py b/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/components.py new file mode 100644 index 000000000000..d9cdab67a57d --- /dev/null +++ b/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/components.py @@ -0,0 +1,29 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + +from dataclasses import dataclass +from typing import Optional + +import dpath.util +import pendulum +from airbyte_cdk.sources.declarative.transformations.add_fields import AddFields +from airbyte_cdk.sources.declarative.types import Config, Record, StreamSlice, StreamState + + +@dataclass +class DateTimeTransformer(AddFields): + def transform( + self, + record: Record, + config: Optional[Config] = None, + stream_state: Optional[StreamState] = None, + stream_slice: Optional[StreamSlice] = None, + ) -> Record: + + kwargs = {"record": record, "stream_state": stream_state, "stream_slice": stream_slice} + for parsed_field in self._parsed_fields: + date_time = parsed_field.value.eval(config, **kwargs) + new_date_time = str(pendulum.from_format(date_time, "ddd, D MMM YYYY HH:mm:ss ZZ")) + dpath.util.new(record, parsed_field.path, new_date_time) + return record diff --git a/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/manifest.yaml b/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/manifest.yaml new file mode 100644 index 000000000000..4b06dd2f882f --- /dev/null +++ b/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/manifest.yaml @@ -0,0 +1,338 @@ +version: 0.50.2 +type: DeclarativeSource + +check: + type: CheckStream + stream_names: + - customers + +definitions: + selector: + type: RecordSelector + extractor: + type: DpathExtractor + field_path: + - data + paginator: + type: DefaultPaginator + page_token_option: + type: RequestOption + inject_into: request_parameter + field_name: page + page_size_option: + inject_into: request_parameter + field_name: limit + type: RequestOption + pagination_strategy: + type: PageIncrement + start_from_page: 1 + page_size: 250 + date_modified_incremental_sync: + type: DatetimeBasedCursor + cursor_field: date_modified + cursor_datetime_formats: + - "%Y-%m-%dT%H:%M:%SZ" + - "%Y-%m-%dT%H:%M:%S+00:00" + datetime_format: "%Y-%m-%d" + start_datetime: + type: MinMaxDatetime + datetime: "{{ config['start_date'] }}" + datetime_format: "%Y-%m-%d" + start_time_option: + inject_into: request_parameter + field_name: date_modified:min + type: RequestOption + end_datetime: + type: MinMaxDatetime + datetime: "{{ now_utc().strftime('%Y-%m-%dT%H:%M:%SZ') }}" + datetime_format: "%Y-%m-%dT%H:%M:%SZ" + base_id_incremental_sync: + type: DatetimeBasedCursor + cursor_field: id + cursor_datetime_formats: + - "%s" + datetime_format: "%Y-%m-%d" + start_datetime: + type: MinMaxDatetime + datetime: "{{ config['start_date'] }}" + datetime_format: "%Y-%m-%d" + end_datetime: + type: MinMaxDatetime + datetime: "{{ now_utc().strftime('%Y-%m-%dT%H:%M:%SZ') }}" + datetime_format: "%Y-%m-%dT%H:%M:%SZ" + id_incremental_sync: + $ref: "#/definitions/base_id_incremental_sync" + start_time_option: + type: RequestOption + field_name: date_modified:min + inject_into: request_parameter + order_id_partition_router: + - type: SubstreamPartitionRouter + parent_stream_configs: + - type: ParentStreamConfig + parent_key: id + partition_field: order_id + stream: + $ref: "#/definitions/orders_stream" + requester: + type: HttpRequester + url_base: https://api.bigcommerce.com/stores/{{ config["store_hash"] }}/ + http_method: GET + request_headers: + Accept: application/json + Content-Type: application/json + authenticator: + type: ApiKeyAuthenticator + api_token: '{{ config["access_token"] }}' + inject_into: + type: RequestOption + inject_into: header + field_name: X-Auth-Token + request_body_json: {} + customers_stream: + type: DeclarativeStream + name: customers + primary_key: "id" + retriever: + type: SimpleRetriever + requester: + $ref: "#/definitions/requester" + path: v3/customers + request_parameters: + sort: date_modified:asc + record_selector: + $ref: "#/definitions/selector" + paginator: + $ref: "#/definitions/paginator" + incremental_sync: + $ref: "#/definitions/date_modified_incremental_sync" + orders_stream: + type: DeclarativeStream + name: orders + primary_key: "id" + retriever: + type: SimpleRetriever + requester: + $ref: "#/definitions/requester" + path: v2/orders + request_parameters: + sort: date_modified:asc + record_selector: + type: RecordSelector + extractor: + type: DpathExtractor + field_path: [] + paginator: + $ref: "#/definitions/paginator" + incremental_sync: + type: DatetimeBasedCursor + cursor_field: date_modified + cursor_datetime_formats: + - "%Y-%m-%dT%H:%M:%SZ" + - "%Y-%m-%dT%H:%M:%S+00:00" + datetime_format: "%Y-%m-%d" + start_datetime: + type: MinMaxDatetime + datetime: "{{ config['start_date'] }}" + datetime_format: "%Y-%m-%d" + start_time_option: + inject_into: request_parameter + field_name: min_date_modified + type: RequestOption + end_datetime: + type: MinMaxDatetime + datetime: "{{ now_utc().strftime('%Y-%m-%dT%H:%M:%SZ') }}" + datetime_format: "%Y-%m-%dT%H:%M:%SZ" + transformations: + - type: CustomTransformation + class_name: source_bigcommerce.components.DateTimeTransformer + fields: + - path: + - date_modified + value: "{{ record.date_modified }}" + transactions_stream: + type: DeclarativeStream + name: transactions + primary_key: "id" + retriever: + type: SimpleRetriever + requester: + $ref: "#/definitions/requester" + path: v2/orders/{{ stream_partition.order_id }}/transactions + record_selector: + $ref: "#/definitions/selector" + paginator: + $ref: "#/definitions/paginator" + partition_router: + $ref: "#/definitions/order_id_partition_router" + incremental_sync: + $ref: "#/definitions/id_incremental_sync" + pages_stream: + type: DeclarativeStream + name: pages + primary_key: "id" + retriever: + type: SimpleRetriever + requester: + $ref: "#/definitions/requester" + path: v3/content/pages + request_parameters: + sort: date_modified:asc + record_selector: + $ref: "#/definitions/selector" + paginator: + $ref: "#/definitions/paginator" + incremental_sync: + $ref: "#/definitions/id_incremental_sync" + products_stream: + type: DeclarativeStream + name: products + primary_key: "id" + retriever: + type: SimpleRetriever + requester: + $ref: "#/definitions/requester" + path: v3/catalog/products + request_parameters: + sort: date_modified + record_selector: + $ref: "#/definitions/selector" + paginator: + $ref: "#/definitions/paginator" + incremental_sync: + $ref: "#/definitions/date_modified_incremental_sync" + channels_stream: + type: DeclarativeStream + name: channels + primary_key: "id" + retriever: + type: SimpleRetriever + requester: + $ref: "#/definitions/requester" + path: /v3/channels + request_parameters: + sort: date_modified + record_selector: + $ref: "#/definitions/selector" + paginator: + $ref: "#/definitions/paginator" + incremental_sync: + $ref: "#/definitions/date_modified_incremental_sync" + store_stream: + type: DeclarativeStream + name: store + primary_key: "id" + retriever: + type: SimpleRetriever + requester: + $ref: "#/definitions/requester" + path: v2/store + request_parameters: + sort: date_modified:asc + record_selector: + type: RecordSelector + extractor: + type: DpathExtractor + field_path: [] + paginator: + $ref: "#/definitions/paginator" + order_products_stream: + type: DeclarativeStream + name: order_products + primary_key: "id" + retriever: + type: SimpleRetriever + requester: + $ref: "#/definitions/requester" + path: v2/orders/{{ stream_partition.order_id }}/products + request_parameters: + sort: date_modified:asc + record_selector: + type: RecordSelector + extractor: + type: DpathExtractor + field_path: [] + paginator: + $ref: "#/definitions/paginator" + partition_router: + $ref: "#/definitions/order_id_partition_router" + incremental_sync: + $ref: "#/definitions/base_id_incremental_sync" + brands_stream: + type: DeclarativeStream + name: brands + primary_key: "id" + retriever: + type: SimpleRetriever + requester: + $ref: "#/definitions/requester" + path: v3/catalog/brands + request_parameters: + sort: id + record_selector: + $ref: "#/definitions/selector" + paginator: + $ref: "#/definitions/paginator" + incremental_sync: + $ref: "#/definitions/base_id_incremental_sync" + categories_stream: + type: DeclarativeStream + name: categories + primary_key: "id" + retriever: + type: SimpleRetriever + requester: + $ref: "#/definitions/requester" + path: v3/catalog/categories + request_parameters: + sort: id + record_selector: + $ref: "#/definitions/selector" + paginator: + $ref: "#/definitions/paginator" + incremental_sync: + $ref: "#/definitions/base_id_incremental_sync" + +streams: + - "#/definitions/customers_stream" + - "#/definitions/orders_stream" + - "#/definitions/transactions_stream" + - "#/definitions/pages_stream" + - "#/definitions/products_stream" + - "#/definitions/channels_stream" + - "#/definitions/store_stream" + - "#/definitions/order_products_stream" + - "#/definitions/brands_stream" + - "#/definitions/categories_stream" + +spec: + documentation_url: https://docs.airbyte.com/integrations/sources/bigcommerce + type: Spec + connection_specification: + additionalProperties: true + $schema: http://json-schema.org/draft-07/schema# + type: object + required: + - start_date + - access_token + - store_hash + properties: + start_date: + type: string + title: Start date + description: "The date you would like to replicate data. Format: YYYY-MM-DD." + examples: ["2021-01-01"] + pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ + order: 0 + access_token: + type: string + title: Access Token + description: "Access Token for making authenticated requests." + airbyte_secret: true + order: 1 + store_hash: + title: Store Hash + description: >- + The hash code of the store. For https://api.bigcommerce.com/stores/HASH_CODE/v3/, The store's hash code is 'HASH_CODE'. + type: string + order: 2 diff --git a/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/schemas/categories.json b/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/schemas/categories.json index 83db91ea3cca..6b26ee372e55 100644 --- a/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/schemas/categories.json +++ b/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/schemas/categories.json @@ -1,6 +1,7 @@ { "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", + "additionalProperties": true, "properties": { "id": { "type": ["null", "integer"] @@ -47,7 +48,7 @@ "default_product_sort": { "type": ["null", "string"] }, - "url": { + "custom_url": { "type": ["null", "object"], "properties": { "path": { diff --git a/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/schemas/channels.json b/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/schemas/channels.json index 1cc51924ea59..6e6e1d09f59c 100644 --- a/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/schemas/channels.json +++ b/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/schemas/channels.json @@ -36,6 +36,9 @@ }, "icon_url": { "type": ["null", "string"] + }, + "is_enabled": { + "type": ["null", "boolean"] } } } diff --git a/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/schemas/customers.json b/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/schemas/customers.json index c5b367d15997..e00906cff851 100644 --- a/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/schemas/customers.json +++ b/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/schemas/customers.json @@ -1,6 +1,7 @@ { "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", + "additionalProperties": true, "properties": { "email": { "type": ["null", "string"] @@ -58,6 +59,7 @@ "type": ["null", "array"], "items": { "type": ["null", "object"], + "additionalProperties": true, "properties": { "first_name": { "type": ["null", "string"] @@ -108,7 +110,7 @@ "type": ["null", "object"], "properties": { "name": { - "type": ["name", "string"] + "type": ["null", "string"] }, "value": { "oneOf": [ @@ -126,7 +128,7 @@ "type": ["null", "object"], "properties": { "name": { - "type": ["name", "string"] + "type": ["null", "string"] }, "value": { "oneOf": [ @@ -158,6 +160,9 @@ }, "channel_ids": { "type": ["null", "array"] + }, + "origin_channel_id": { + "type": ["null", "integer"] } } } diff --git a/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/schemas/pages.json b/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/schemas/pages.json index 003984b52eea..00fded5a8333 100644 --- a/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/schemas/pages.json +++ b/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/schemas/pages.json @@ -58,6 +58,6 @@ }, "id": { "type": ["null", "integer"] - } + } } } diff --git a/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/schemas/store.json b/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/schemas/store.json index 66955e00e224..22a6188fa281 100644 --- a/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/schemas/store.json +++ b/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/schemas/store.json @@ -35,6 +35,9 @@ "country": { "type": ["null", "string"] }, + "country_code": { + "type": ["null", "string"] + }, "phone": { "type": ["null", "string"] }, @@ -91,7 +94,7 @@ "type": ["null", "string"] }, "decimal_places": { - "type": ["null", "string"] + "type": ["null", "integer"] }, "currency_symbol_location": { "type": ["null", "string"] @@ -103,7 +106,7 @@ "type": ["null", "string"] }, "dimension_decimal_places": { - "type": ["null", "string"] + "type": ["null", "integer"] }, "dimension_decimal_token": { "type": ["null", "string"] @@ -117,6 +120,9 @@ "plan_level": { "type": ["null", "string"] }, + "plan_is_trial": { + "type": ["null", "boolean"] + }, "industry": { "type": ["null", "string"] }, diff --git a/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/source.py b/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/source.py index a31e25e705ca..997d0eb20418 100644 --- a/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/source.py +++ b/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/source.py @@ -2,361 +2,17 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # +from airbyte_cdk.sources.declarative.yaml_declarative_source import YamlDeclarativeSource -from abc import ABC -from typing import Any, Dict, Iterable, List, Mapping, MutableMapping, Optional, Tuple +""" +This file provides the necessary constructs to interpret a provided declarative YAML configuration file into +source connector. -import pendulum -import requests -from airbyte_cdk.models import SyncMode -from airbyte_cdk.sources import AbstractSource -from airbyte_cdk.sources.streams import Stream -from airbyte_cdk.sources.streams.http import HttpStream -from airbyte_cdk.sources.streams.http.auth import HttpAuthenticator -from airbyte_cdk.sources.utils.transform import TransformConfig, TypeTransformer +WARNING: Do not modify this file. +""" -class BigcommerceStream(HttpStream, ABC): - # Latest Stable Release - api_version = "v3" - # Page size - limit = 250 - # Define primary key as sort key for full_refresh, or very first sync for incremental_refresh - primary_key = "id" - order_field = "date_modified:asc" - filter_field = "date_modified:min" - data = "data" - - transformer: TypeTransformer = TypeTransformer(TransformConfig.DefaultSchemaNormalization | TransformConfig.CustomSchemaNormalization) - - def __init__(self, start_date: str, store_hash: str, access_token: str, **kwargs): - super().__init__(**kwargs) - self.start_date = start_date - self.store_hash = store_hash - self.access_token = access_token - - @transformer.registerCustomTransform - def transform_function(original_value: Any, field_schema: Dict[str, Any]) -> Any: - """ - This functions tries to handle the various date-time formats BigCommerce API returns and normalize the values to isoformat. - """ - if "format" in field_schema and field_schema["format"] == "date-time": - if not original_value: # Some dates are empty strings: "". - return None - transformed_value = None - supported_formats = ["YYYY-MM-DD", "YYYY-MM-DDTHH:mm:ssZZ", "YYYY-MM-DDTHH:mm:ss[Z]", "ddd, D MMM YYYY HH:mm:ss ZZ"] - for format in supported_formats: - try: - transformed_value = str(pendulum.from_format(original_value, format)) # str() returns isoformat - except ValueError: - continue - if not transformed_value: - raise ValueError(f"Unsupported date-time format for {original_value}") - return transformed_value - return original_value - - @property - def url_base(self) -> str: - return f"https://api.bigcommerce.com/stores/{self.store_hash}/{self.api_version}/" - - def next_page_token(self, response: requests.Response) -> Optional[Mapping[str, Any]]: - json_response = response.json() - meta = json_response.get("meta", None) - if meta: - pagination = meta.get("pagination", None) - if pagination and pagination.get("current_page") < pagination.get("total_pages"): - return dict(page=pagination.get("current_page") + 1) - else: - return None - - def request_params( - self, stream_state: Mapping[str, Any], stream_slice: Mapping[str, any] = None, next_page_token: Mapping[str, Any] = None - ) -> MutableMapping[str, Any]: - params = {"limit": self.limit} - params.update({"sort": self.order_field}) - if next_page_token: - params.update(**next_page_token) - else: - params[self.filter_field] = self.start_date - return params - - def request_headers( - self, stream_state: Mapping[str, Any], stream_slice: Mapping[str, Any] = None, next_page_token: Mapping[str, Any] = None - ) -> Mapping[str, Any]: - headers = super().request_headers(stream_state=stream_state, stream_slice=stream_slice, next_page_token=next_page_token) - headers.update({"Accept": "application/json", "Content-Type": "application/json"}) - return headers - - def parse_response(self, response: requests.Response, **kwargs) -> Iterable[Mapping]: - json_response = response.json() - records = json_response.get(self.data, []) if self.data is not None else json_response - yield from records - - -class IncrementalBigcommerceStream(BigcommerceStream, ABC): - # Getting page size as 'limit' from parent class - @property - def limit(self): - return super().limit - - # Setting the check point interval to the limit of the records output - state_checkpoint_interval = limit - # Setting the default cursor field for all streams - cursor_field = "date_modified" - - def get_updated_state(self, current_stream_state: MutableMapping[str, Any], latest_record: Mapping[str, Any]) -> Mapping[str, Any]: - return {self.cursor_field: max(latest_record.get(self.cursor_field, ""), current_stream_state.get(self.cursor_field, ""))} - - def request_params(self, stream_state: Mapping[str, Any] = None, next_page_token: Mapping[str, Any] = None, **kwargs): - params = super().request_params(stream_state=stream_state, next_page_token=next_page_token, **kwargs) - # If there is a next page token then we should only send pagination-related parameters. - if stream_state: - params[self.filter_field] = stream_state.get(self.cursor_field) - else: - params[self.filter_field] = self.start_date - return params - - def filter_records_newer_than_state(self, stream_state: Mapping[str, Any] = None, records_slice: Mapping[str, Any] = None) -> Iterable: - if stream_state: - for record in records_slice: - if record[self.cursor_field] >= stream_state.get(self.cursor_field): - yield record - else: - yield from records_slice - - -class OrderSubstream(IncrementalBigcommerceStream): - def read_records( - self, stream_state: Mapping[str, Any] = None, stream_slice: Optional[Mapping[str, Any]] = None, **kwargs - ) -> Iterable[Mapping[str, Any]]: - orders_stream = Orders( - authenticator=self.authenticator, start_date=self.start_date, store_hash=self.store_hash, access_token=self.access_token - ) - for data in orders_stream.read_records(sync_mode=SyncMode.full_refresh): - slice = super().read_records(stream_slice={"order_id": data["id"]}, **kwargs) - yield from self.filter_records_newer_than_state(stream_state=stream_state, records_slice=slice) - - -class Customers(IncrementalBigcommerceStream): - data_field = "customers" - - def path(self, **kwargs) -> str: - return f"{self.data_field}" - - -class Products(IncrementalBigcommerceStream): - data_field = "products" - # Override `order_field` because Products API does not accept `asc` value - order_field = "date_modified" - - def path(self, **kwargs) -> str: - return f"catalog/{self.data_field}" - - -class Orders(IncrementalBigcommerceStream): - data_field = "orders" - api_version = "v2" - order_field = "date_modified:asc" - filter_field = "min_date_modified" - page = 1 - - def path(self, **kwargs) -> str: - return f"{self.data_field}" - - def parse_response(self, response: requests.Response, **kwargs) -> Iterable[Mapping]: - return response.json() if len(response.content) > 0 else [] - - def next_page_token(self, response: requests.Response) -> Optional[Mapping[str, Any]]: - if len(response.content) > 0 and len(response.json()) == self.limit: - self.page = self.page + 1 - return dict(page=self.page) - else: - return None - - -class Pages(IncrementalBigcommerceStream): - data_field = "pages" - cursor_field = "id" - - def path(self, **kwargs) -> str: - return f"content/{self.data_field}" - - def get_updated_state(self, current_stream_state: MutableMapping[str, Any], latest_record: Mapping[str, Any]) -> Mapping[str, Any]: - return {self.cursor_field: max(latest_record.get(self.cursor_field, 0), current_stream_state.get(self.cursor_field, 0))} - - def read_records( - self, stream_state: Mapping[str, Any] = None, stream_slice: Optional[Mapping[str, Any]] = None, **kwargs - ) -> Iterable[Mapping[str, Any]]: - slice = super().read_records(sync_mode=SyncMode.full_refresh, stream_slice=stream_slice, stream_state=stream_state) - yield from self.filter_records_newer_than_state(stream_state=stream_state, records_slice=slice) - - -class Brands(IncrementalBigcommerceStream): - data_field = "brands" - cursor_field = "id" - order_field = "id" - - def path(self, **kwargs) -> str: - return f"catalog/{self.data_field}" - - def request_params( - self, stream_state: Mapping[str, Any], stream_slice: Mapping[str, any] = None, next_page_token: Mapping[str, Any] = None - ) -> MutableMapping[str, Any]: - params = {"limit": self.limit} - params.update({"sort": self.order_field}) - if next_page_token: - params.update(**next_page_token) - return params - - def get_updated_state(self, current_stream_state: MutableMapping[str, Any], latest_record: Mapping[str, Any]) -> Mapping[str, Any]: - return {self.cursor_field: max(latest_record.get(self.cursor_field, 0), current_stream_state.get(self.cursor_field, 0))} - - def read_records( - self, stream_state: Mapping[str, Any] = None, stream_slice: Optional[Mapping[str, Any]] = None, **kwargs - ) -> Iterable[Mapping[str, Any]]: - slice = super().read_records(sync_mode=SyncMode.full_refresh, stream_slice=stream_slice, stream_state=stream_state) - yield from self.filter_records_newer_than_state(stream_state=stream_state, records_slice=slice) - - -class Categories(IncrementalBigcommerceStream): - data_field = "categories" - cursor_field = "id" - order_field = "id" - - def path(self, **kwargs) -> str: - return f"catalog/{self.data_field}" - - def request_params( - self, stream_state: Mapping[str, Any], stream_slice: Mapping[str, any] = None, next_page_token: Mapping[str, Any] = None - ) -> MutableMapping[str, Any]: - params = {"limit": self.limit} - params.update({"sort": self.order_field}) - if next_page_token: - params.update(**next_page_token) - return params - - def get_updated_state(self, current_stream_state: MutableMapping[str, Any], latest_record: Mapping[str, Any]) -> Mapping[str, Any]: - return {self.cursor_field: max(latest_record.get(self.cursor_field, 0), current_stream_state.get(self.cursor_field, 0))} - - def read_records( - self, stream_state: Mapping[str, Any] = None, stream_slice: Optional[Mapping[str, Any]] = None, **kwargs - ) -> Iterable[Mapping[str, Any]]: - slice = super().read_records(sync_mode=SyncMode.full_refresh, stream_slice=stream_slice, stream_state=stream_state) - yield from self.filter_records_newer_than_state(stream_state=stream_state, records_slice=slice) - - -class Transactions(OrderSubstream): - data_field = "transactions" - cursor_field = "id" - - def path(self, stream_slice: Mapping[str, Any] = None, **kwargs) -> str: - order_id = stream_slice["order_id"] - return f"orders/{order_id}/{self.data_field}" - - def get_updated_state(self, current_stream_state: MutableMapping[str, Any], latest_record: Mapping[str, Any]) -> Mapping[str, Any]: - return {self.cursor_field: max(latest_record.get(self.cursor_field, 0), current_stream_state.get(self.cursor_field, 0))} - - def request_params( - self, stream_state: Mapping[str, Any] = None, next_page_token: Mapping[str, Any] = None, **kwargs - ) -> MutableMapping[str, Any]: - params = {"limit": self.limit} - return params - - -class OrderProducts(OrderSubstream): - api_version = "v2" - data_field = "products" - cursor_field = "id" - - def path(self, stream_slice: Mapping[str, Any] = None, **kwargs) -> str: - order_id = stream_slice["order_id"] - return f"orders/{order_id}/{self.data_field}" - - def get_updated_state(self, current_stream_state: MutableMapping[str, Any], latest_record: Mapping[str, Any]) -> Mapping[str, Any]: - return {self.cursor_field: max(latest_record.get(self.cursor_field, 0), current_stream_state.get(self.cursor_field, 0))} - - def request_params( - self, stream_state: Mapping[str, Any] = None, next_page_token: Mapping[str, Any] = None, **kwargs - ) -> MutableMapping[str, Any]: - params = {"limit": self.limit} - return params - - def parse_response(self, response: requests.Response, **kwargs) -> Iterable[Mapping]: - return response.json() if len(response.content) > 0 else [] - - def next_page_token(self, response: requests.Response) -> Optional[Mapping[str, Any]]: - if len(response.content) > 0 and len(response.json()) == self.limit: - self.page = self.page + 1 - return dict(page=self.page) - else: - return None - - -class Channels(IncrementalBigcommerceStream): - data_field = "channels" - # Override `order_field` bacause Channels API do not acept `asc` value - order_field = "date_modified" - - def path(self, **kwargs) -> str: - return f"{self.data_field}" - - -class Store(BigcommerceStream): - data_field = "store" - cursor_field = "store_id" - api_version = "v2" - data = None - - def path(self, **kwargs) -> str: - return f"{self.data_field}" - - def parse_response(self, response: requests.Response, **kwargs) -> Iterable[Mapping]: - json_response = response.json() - yield from [json_response] - - -class BigcommerceAuthenticator(HttpAuthenticator): - def __init__(self, token: str): - self.token = token - - def get_auth_header(self) -> Mapping[str, Any]: - return {"X-Auth-Token": f"{self.token}"} - - -class SourceBigcommerce(AbstractSource): - def check_connection(self, logger, config) -> Tuple[bool, any]: - store_hash = config["store_hash"] - access_token = config["access_token"] - api_version = "v3" - - headers = {"X-Auth-Token": access_token, "Accept": "application/json", "Content-Type": "application/json"} - url = f"https://api.bigcommerce.com/stores/{store_hash}/{api_version}/channels" - - try: - session = requests.get(url, headers=headers) - session.raise_for_status() - return True, None - except requests.exceptions.RequestException as e: - return False, e - - def streams(self, config: Mapping[str, Any]) -> List[Stream]: - - auth = BigcommerceAuthenticator(token=config["access_token"]) - args = { - "authenticator": auth, - "start_date": config["start_date"], - "store_hash": config["store_hash"], - "access_token": config["access_token"], - } - return [ - Customers(**args), - Pages(**args), - Orders(**args), - Transactions(**args), - Products(**args), - Channels(**args), - Store(**args), - OrderProducts(**args), - Brands(**args), - Categories(**args), - ] +# Declarative Source +class SourceBigcommerce(YamlDeclarativeSource): + def __init__(self): + super().__init__(**{"path_to_yaml": "manifest.yaml"}) diff --git a/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/spec.json b/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/spec.json deleted file mode 100644 index 02b6ddf1f69f..000000000000 --- a/airbyte-integrations/connectors/source-bigcommerce/source_bigcommerce/spec.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "documentationUrl": "https://docs.airbyte.com/integrations/sources/bigcommerce", - "connectionSpecification": { - "$schema": "http://json-schema.org/draft-07/schema#", - "title": "BigCommerce Source CDK Specifications", - "type": "object", - "required": ["start_date", "store_hash", "access_token"], - "additionalProperties": true, - "properties": { - "start_date": { - "type": "string", - "title": "Start Date", - "description": "The date you would like to replicate data. Format: YYYY-MM-DD.", - "examples": ["2021-01-01"], - "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$" - }, - "store_hash": { - "type": "string", - "title": "Store Hash", - "description": "The hash code of the store. For https://api.bigcommerce.com/stores/HASH_CODE/v3/, The store's hash code is 'HASH_CODE'." - }, - "access_token": { - "type": "string", - "title": "Access Token", - "description": "Access Token for making authenticated requests.", - "airbyte_secret": true - } - } - } -} diff --git a/airbyte-integrations/connectors/source-bigquery/build.gradle b/airbyte-integrations/connectors/source-bigquery/build.gradle index 485db19ebea5..a85448313d9f 100644 --- a/airbyte-integrations/connectors/source-bigquery/build.gradle +++ b/airbyte-integrations/connectors/source-bigquery/build.gradle @@ -26,7 +26,5 @@ dependencies { integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-bigquery') integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors/source-bing-ads/Dockerfile b/airbyte-integrations/connectors/source-bing-ads/Dockerfile index f2dd0cba5aa9..0f8d4c025b69 100644 --- a/airbyte-integrations/connectors/source-bing-ads/Dockerfile +++ b/airbyte-integrations/connectors/source-bing-ads/Dockerfile @@ -12,5 +12,5 @@ RUN pip install . ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=0.2.0 +LABEL io.airbyte.version=0.2.1 LABEL io.airbyte.name=airbyte/source-bing-ads diff --git a/airbyte-integrations/connectors/source-bing-ads/build.gradle b/airbyte-integrations/connectors/source-bing-ads/build.gradle index e7415d618a7c..b49cc5d4349d 100644 --- a/airbyte-integrations/connectors/source-bing-ads/build.gradle +++ b/airbyte-integrations/connectors/source-bing-ads/build.gradle @@ -15,9 +15,13 @@ airbytePython { // https://setuptools.readthedocs.io/en/latest/history.html#v58-0-0 // To be able to resolve this issue connector need to use 57.* version of setuptools // TODO: Remove this step after resolution of this issue https://github.com/BingAds/BingAds-Python-SDK/issues/191 -task("customSetupToolsInstall", type: PythonTask, dependsOn: flakeCheck){ +def customSetupToolsInstall = tasks.register('customSetupToolsInstall', PythonTask) { module = "pip" command = "install setuptools==57.5.0" } - -installLocalReqs.dependsOn("customSetupToolsInstall") +customSetupToolsInstall.configure { + dependsOn tasks.named('flakeCheck') +} +tasks.named('installLocalReqs').configure { + dependsOn customSetupToolsInstall +} diff --git a/airbyte-integrations/connectors/source-bing-ads/metadata.yaml b/airbyte-integrations/connectors/source-bing-ads/metadata.yaml index 630df575f0a7..02b3bbb11d18 100644 --- a/airbyte-integrations/connectors/source-bing-ads/metadata.yaml +++ b/airbyte-integrations/connectors/source-bing-ads/metadata.yaml @@ -11,7 +11,7 @@ data: connectorSubtype: api connectorType: source definitionId: 47f25999-dd5e-4636-8c39-e7cea2453331 - dockerImageTag: 0.2.0 + dockerImageTag: 0.2.1 dockerRepository: airbyte/source-bing-ads githubIssueLabel: source-bing-ads icon: bingads.svg diff --git a/airbyte-integrations/connectors/source-bing-ads/source_bing_ads/client.py b/airbyte-integrations/connectors/source-bing-ads/source_bing_ads/client.py index 0d9c7506493e..35e5d2295818 100644 --- a/airbyte-integrations/connectors/source-bing-ads/source_bing_ads/client.py +++ b/airbyte-integrations/connectors/source-bing-ads/source_bing_ads/client.py @@ -16,6 +16,7 @@ from bingads.authorization import AuthorizationData, OAuthTokens, OAuthWebAuthCodeGrant from bingads.service_client import ServiceClient from bingads.util import errorcode_of_exception +from bingads.v13.reporting.exceptions import ReportingDownloadException from bingads.v13.reporting.reporting_service_manager import ReportingServiceManager from suds import WebFault, sudsobject @@ -36,6 +37,9 @@ class Client: environment: str = "production" # The time interval in milliseconds between two status polling attempts. report_poll_interval: int = 15000 + # Timeout of downloading report + _download_timeout = 300000 + _max_download_timeout = 600000 def __init__( self, @@ -96,7 +100,7 @@ def is_token_expiring(self) -> bool: token_updated_expires_in: int = self.oauth.access_token_expires_in_seconds - token_total_lifetime.seconds return False if token_updated_expires_in > self.refresh_token_safe_delta else True - def should_give_up(self, error: Union[WebFault, URLError]) -> bool: + def should_give_up(self, error: Union[WebFault, URLError, ReportingDownloadException]) -> bool: if isinstance(error, URLError): if ( isinstance(error.reason, socket.timeout) @@ -104,6 +108,12 @@ def should_give_up(self, error: Union[WebFault, URLError]) -> bool: or isinstance(error.reason, socket.gaierror) # temporary failure in name resolution ): return False + if isinstance(error, ReportingDownloadException): + self.logger.info("Reporting file download tracking status timeout.") + if self._download_timeout < self._max_download_timeout: + self._download_timeout = self._download_timeout + 10000 + self.logger.info(f"Increasing time of timeout to {self._download_timeout}") + return False error_code = str(errorcode_of_exception(error)) give_up = error_code not in self.retry_on_codes @@ -123,7 +133,7 @@ def log_retry_attempt(self, details: Mapping[str, Any]) -> None: def request(self, **kwargs: Mapping[str, Any]) -> Mapping[str, Any]: return backoff.on_exception( backoff.expo, - (WebFault, URLError), + (WebFault, URLError, ReportingDownloadException), max_tries=self.max_retries, factor=self.retry_factor, jitter=None, @@ -150,6 +160,8 @@ def _request( service = self._get_reporting_service(customer_id=customer_id, account_id=account_id) else: service = self.get_service(service_name=service_name, customer_id=customer_id, account_id=account_id) + if operation_name == "download_report": + params["download_parameters"].timeout_in_milliseconds = self._download_timeout return getattr(service, operation_name)(**params) @lru_cache(maxsize=4) diff --git a/airbyte-integrations/connectors/source-bing-ads/unit_tests/test_client.py b/airbyte-integrations/connectors/source-bing-ads/unit_tests/test_client.py index 3e6df51fb1d7..2c2c53cdb3df 100644 --- a/airbyte-integrations/connectors/source-bing-ads/unit_tests/test_client.py +++ b/airbyte-integrations/connectors/source-bing-ads/unit_tests/test_client.py @@ -8,6 +8,7 @@ import source_bing_ads.client from bingads.authorization import OAuthTokens +from bingads.v13.reporting.exceptions import ReportingDownloadException from suds import sudsobject @@ -94,3 +95,14 @@ def test_get_auth_client(patched_request_tokens): client = source_bing_ads.client.Client("tenant_id", "2020-01-01", client_id="client_id", refresh_token="refresh_token") client._get_auth_client("client_id", "tenant_id") patched_request_tokens.assert_called_once_with("refresh_token") + + +@patch("bingads.authorization.OAuthWebAuthCodeGrant.request_oauth_tokens_by_refresh_token") +def test_handling_ReportingDownloadException(patched_request_tokens): + client = source_bing_ads.client.Client("tenant_id", "2020-01-01", client_id="client_id", refresh_token="refresh_token") + give_up = client.should_give_up(ReportingDownloadException(message="test")) + assert False is give_up + assert client._download_timeout == 310000 + client._download_timeout = 600000 + client.should_give_up(ReportingDownloadException(message="test")) + assert client._download_timeout == 600000 diff --git a/airbyte-integrations/connectors/source-chartmogul/metadata.yaml b/airbyte-integrations/connectors/source-chartmogul/metadata.yaml index 6f4af3668c87..1d37ee40f8b9 100644 --- a/airbyte-integrations/connectors/source-chartmogul/metadata.yaml +++ b/airbyte-integrations/connectors/source-chartmogul/metadata.yaml @@ -1,4 +1,7 @@ data: + ab_internal: + ql: 300 + sl: 100 allowedHosts: hosts: - api.chartmogul.com @@ -7,6 +10,7 @@ data: definitionId: b6604cbd-1b12-4c08-8767-e140d0fb0877 dockerImageTag: 0.2.1 dockerRepository: airbyte/source-chartmogul + documentationUrl: https://docs.airbyte.com/integrations/sources/chartmogul githubIssueLabel: source-chartmogul icon: chartmogul.svg license: MIT @@ -17,12 +21,8 @@ data: oss: enabled: true releaseStage: beta - documentationUrl: https://docs.airbyte.com/integrations/sources/chartmogul + supportLevel: community tags: - language:low-code - language:python - ab_internal: - sl: 200 - ql: 300 - supportLevel: certified metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-clickhouse-strict-encrypt/.dockerignore b/airbyte-integrations/connectors/source-clickhouse-strict-encrypt/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/source-clickhouse-strict-encrypt/.dockerignore +++ b/airbyte-integrations/connectors/source-clickhouse-strict-encrypt/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/source-clickhouse-strict-encrypt/build.gradle b/airbyte-integrations/connectors/source-clickhouse-strict-encrypt/build.gradle index f1d00512e126..968861cc9a84 100644 --- a/airbyte-integrations/connectors/source-clickhouse-strict-encrypt/build.gradle +++ b/airbyte-integrations/connectors/source-clickhouse-strict-encrypt/build.gradle @@ -16,7 +16,6 @@ dependencies { implementation project(':airbyte-integrations:connectors:source-relational-db') implementation project(':airbyte-integrations:connectors:source-clickhouse') implementation libs.airbyte.protocol - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation group: 'com.clickhouse', name: 'clickhouse-jdbc', version: '0.3.2-patch9' @@ -24,5 +23,5 @@ dependencies { integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-clickhouse') integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-clickhouse-strict-encrypt') integrationTestJavaImplementation testFixtures(project(':airbyte-integrations:connectors:source-jdbc')) - integrationTestJavaImplementation libs.connectors.source.testcontainers.clickhouse + integrationTestJavaImplementation libs.testcontainers.clickhouse } diff --git a/airbyte-integrations/connectors/source-clickhouse/.dockerignore b/airbyte-integrations/connectors/source-clickhouse/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/source-clickhouse/.dockerignore +++ b/airbyte-integrations/connectors/source-clickhouse/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/source-clickhouse/build.gradle b/airbyte-integrations/connectors/source-clickhouse/build.gradle index 5e9bb7f0f79c..359ff33968f5 100644 --- a/airbyte-integrations/connectors/source-clickhouse/build.gradle +++ b/airbyte-integrations/connectors/source-clickhouse/build.gradle @@ -16,12 +16,11 @@ dependencies { implementation project(':airbyte-integrations:connectors:source-jdbc') implementation project(':airbyte-integrations:connectors:source-relational-db') implementation libs.airbyte.protocol - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation 'com.clickhouse:clickhouse-jdbc:0.3.2-patch10:all' integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-clickhouse') integrationTestJavaImplementation testFixtures(project(':airbyte-integrations:connectors:source-jdbc')) - integrationTestJavaImplementation libs.connectors.source.testcontainers.clickhouse + integrationTestJavaImplementation libs.testcontainers.clickhouse } diff --git a/airbyte-integrations/connectors/source-close-com/metadata.yaml b/airbyte-integrations/connectors/source-close-com/metadata.yaml index 6cd112e206e1..39d1f4c8f0dc 100644 --- a/airbyte-integrations/connectors/source-close-com/metadata.yaml +++ b/airbyte-integrations/connectors/source-close-com/metadata.yaml @@ -1,4 +1,7 @@ data: + ab_internal: + ql: 300 + sl: 100 allowedHosts: hosts: - api.close.com @@ -7,6 +10,7 @@ data: definitionId: dfffecb7-9a13-43e9-acdc-b92af7997ca9 dockerImageTag: 0.4.2 dockerRepository: airbyte/source-close-com + documentationUrl: https://docs.airbyte.com/integrations/sources/close-com githubIssueLabel: source-close-com icon: close.svg license: MIT @@ -17,12 +21,8 @@ data: oss: enabled: true releaseStage: beta - documentationUrl: https://docs.airbyte.com/integrations/sources/close-com + supportLevel: community tags: - language:low-code - language:python - ab_internal: - sl: 200 - ql: 300 - supportLevel: certified metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-cockroachdb-strict-encrypt/build.gradle b/airbyte-integrations/connectors/source-cockroachdb-strict-encrypt/build.gradle index f651236698cc..2fc44ebe5d45 100644 --- a/airbyte-integrations/connectors/source-cockroachdb-strict-encrypt/build.gradle +++ b/airbyte-integrations/connectors/source-cockroachdb-strict-encrypt/build.gradle @@ -16,16 +16,17 @@ dependencies { implementation project(':airbyte-integrations:connectors:source-jdbc') implementation project(':airbyte-integrations:connectors:source-relational-db') implementation project(':airbyte-integrations:connectors:source-cockroachdb') - - implementation libs.connectors.testcontainers - implementation libs.connectors.testcontainers.jdbc - implementation libs.connectors.testcontainers.cockroachdb implementation libs.postgresql + testImplementation libs.testcontainers + testImplementation libs.testcontainers.jdbc + testImplementation libs.testcontainers.cockroachdb + + integrationTestJavaImplementation libs.testcontainers + integrationTestJavaImplementation libs.testcontainers.jdbc + integrationTestJavaImplementation libs.testcontainers.cockroachdb integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-cockroachdb') integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-cockroachdb-strict-encrypt') integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors/source-cockroachdb/build.gradle b/airbyte-integrations/connectors/source-cockroachdb/build.gradle index 172d69b97a31..6b0d925c1e21 100644 --- a/airbyte-integrations/connectors/source-cockroachdb/build.gradle +++ b/airbyte-integrations/connectors/source-cockroachdb/build.gradle @@ -22,14 +22,12 @@ dependencies { testImplementation testFixtures(project(':airbyte-integrations:connectors:source-jdbc')) - testImplementation libs.connectors.testcontainers.cockroachdb + testImplementation libs.testcontainers.cockroachdb testImplementation 'org.apache.commons:commons-lang3:3.11' integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-cockroachdb') integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) testImplementation testFixtures(project(':airbyte-integrations:connectors:source-jdbc')) testImplementation project(":airbyte-json-validation") diff --git a/airbyte-integrations/connectors/source-confluence/metadata.yaml b/airbyte-integrations/connectors/source-confluence/metadata.yaml index f45628d976b2..87d324b5ebec 100644 --- a/airbyte-integrations/connectors/source-confluence/metadata.yaml +++ b/airbyte-integrations/connectors/source-confluence/metadata.yaml @@ -1,4 +1,7 @@ data: + ab_internal: + ql: 300 + sl: 100 allowedHosts: hosts: - ${subdomain}.atlassian.net @@ -12,17 +15,14 @@ data: definitionId: cf40a7f8-71f8-45ce-a7fa-fca053e4028c dockerImageTag: 0.2.0 dockerRepository: airbyte/source-confluence + documentationUrl: https://docs.airbyte.com/integrations/sources/confluence githubIssueLabel: source-confluence icon: confluence.svg license: MIT name: Confluence releaseDate: 2021-11-05 releaseStage: beta - supportLevel: certified - documentationUrl: https://docs.airbyte.com/integrations/sources/confluence + supportLevel: community tags: - language:low-code - ab_internal: - sl: 200 - ql: 300 metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-datascope/acceptance-test-config.yml b/airbyte-integrations/connectors/source-datascope/acceptance-test-config.yml index 147e648cf984..ae30da05cc76 100644 --- a/airbyte-integrations/connectors/source-datascope/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-datascope/acceptance-test-config.yml @@ -19,7 +19,6 @@ tests: - config_path: "secrets/config.json" configured_catalog_path: "integration_tests/configured_catalog.json" future_state_path: "integration_tests/abnormal_state.json" - threshold_days: 1 full_refresh: - config_path: "secrets/config.json" configured_catalog_path: "integration_tests/configured_catalog.json" diff --git a/airbyte-integrations/connectors/source-db2-strict-encrypt/build.gradle b/airbyte-integrations/connectors/source-db2-strict-encrypt/build.gradle index 62cedc738ebe..7ff9f15673ca 100644 --- a/airbyte-integrations/connectors/source-db2-strict-encrypt/build.gradle +++ b/airbyte-integrations/connectors/source-db2-strict-encrypt/build.gradle @@ -16,16 +16,14 @@ dependencies { implementation project(':airbyte-integrations:connectors:source-jdbc') implementation project(':airbyte-integrations:connectors:source-relational-db') implementation libs.airbyte.protocol - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation group: 'com.ibm.db2', name: 'jcc', version: '11.5.5.0' testImplementation testFixtures(project(':airbyte-integrations:connectors:source-jdbc')) testImplementation project(':airbyte-test-utils') - testImplementation libs.connectors.testcontainers.db2 + testImplementation libs.testcontainers.db2 integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-db2') - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) integrationTestJavaImplementation 'org.apache.commons:commons-lang3:3.11' } diff --git a/airbyte-integrations/connectors/source-db2/.dockerignore b/airbyte-integrations/connectors/source-db2/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/source-db2/.dockerignore +++ b/airbyte-integrations/connectors/source-db2/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/source-db2/build.gradle b/airbyte-integrations/connectors/source-db2/build.gradle index 0cb0e59c15fa..9fce70f3d9a2 100644 --- a/airbyte-integrations/connectors/source-db2/build.gradle +++ b/airbyte-integrations/connectors/source-db2/build.gradle @@ -16,18 +16,16 @@ dependencies { implementation project(':airbyte-integrations:connectors:source-jdbc') implementation project(':airbyte-integrations:connectors:source-relational-db') implementation libs.airbyte.protocol - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation group: 'com.ibm.db2', name: 'jcc', version: '11.5.5.0' testImplementation testFixtures(project(':airbyte-integrations:connectors:source-jdbc')) testImplementation project(':airbyte-test-utils') - testImplementation libs.connectors.testcontainers.db2 + testImplementation libs.testcontainers.db2 testImplementation project(":airbyte-json-validation") integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-db2') - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) integrationTestJavaImplementation 'org.apache.commons:commons-lang3:3.11' } diff --git a/airbyte-integrations/connectors/source-delighted/Dockerfile b/airbyte-integrations/connectors/source-delighted/Dockerfile index 823aa5756ed8..8b3dc98fe629 100644 --- a/airbyte-integrations/connectors/source-delighted/Dockerfile +++ b/airbyte-integrations/connectors/source-delighted/Dockerfile @@ -12,5 +12,5 @@ COPY main.py ./. ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=0.2.2 +LABEL io.airbyte.version=0.2.3 LABEL io.airbyte.name=airbyte/source-delighted diff --git a/airbyte-integrations/connectors/source-delighted/metadata.yaml b/airbyte-integrations/connectors/source-delighted/metadata.yaml index 9b27d60b5d52..2a050c2b4814 100644 --- a/airbyte-integrations/connectors/source-delighted/metadata.yaml +++ b/airbyte-integrations/connectors/source-delighted/metadata.yaml @@ -1,12 +1,16 @@ data: + ab_internal: + ql: 300 + sl: 100 allowedHosts: hosts: - api.delighted.com connectorSubtype: api connectorType: source definitionId: cc88c43f-6f53-4e8a-8c4d-b284baaf9635 - dockerImageTag: 0.2.2 + dockerImageTag: 0.2.3 dockerRepository: airbyte/source-delighted + documentationUrl: https://docs.airbyte.com/integrations/sources/delighted githubIssueLabel: source-delighted icon: delighted.svg license: MIT @@ -17,12 +21,8 @@ data: oss: enabled: true releaseStage: beta - documentationUrl: https://docs.airbyte.com/integrations/sources/delighted + supportLevel: community tags: - language:low-code - language:python - ab_internal: - sl: 200 - ql: 300 - supportLevel: certified metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-delighted/source_delighted/spec.json b/airbyte-integrations/connectors/source-delighted/source_delighted/spec.json index 7de4d10499d6..c10655a32376 100644 --- a/airbyte-integrations/connectors/source-delighted/source_delighted/spec.json +++ b/airbyte-integrations/connectors/source-delighted/source_delighted/spec.json @@ -15,7 +15,7 @@ "order": 0 }, "since": { - "title": "Date Since", + "title": "Replication Start Date", "type": "string", "description": "The date from which you'd like to replicate the data", "examples": ["2022-05-30T04:50:23Z", "2022-05-30 04:50:23"], diff --git a/airbyte-integrations/connectors/source-dynamodb/build.gradle b/airbyte-integrations/connectors/source-dynamodb/build.gradle index 5940aa61b252..14303e796c34 100644 --- a/airbyte-integrations/connectors/source-dynamodb/build.gradle +++ b/airbyte-integrations/connectors/source-dynamodb/build.gradle @@ -38,6 +38,4 @@ dependencies { integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-dynamodb') integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors/source-e2e-test-cloud/.dockerignore b/airbyte-integrations/connectors/source-e2e-test-cloud/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/source-e2e-test-cloud/.dockerignore +++ b/airbyte-integrations/connectors/source-e2e-test-cloud/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/source-e2e-test-cloud/build.gradle b/airbyte-integrations/connectors/source-e2e-test-cloud/build.gradle index b843c8624dc8..00f1c594b423 100644 --- a/airbyte-integrations/connectors/source-e2e-test-cloud/build.gradle +++ b/airbyte-integrations/connectors/source-e2e-test-cloud/build.gradle @@ -13,7 +13,6 @@ dependencies { implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') implementation project(':airbyte-integrations:connectors:source-e2e-test') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) testImplementation project(":airbyte-json-validation") diff --git a/airbyte-integrations/connectors/source-e2e-test/.dockerignore b/airbyte-integrations/connectors/source-e2e-test/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/source-e2e-test/.dockerignore +++ b/airbyte-integrations/connectors/source-e2e-test/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/source-e2e-test/build.gradle b/airbyte-integrations/connectors/source-e2e-test/build.gradle index ba548f2a568d..a3359e0f34c5 100644 --- a/airbyte-integrations/connectors/source-e2e-test/build.gradle +++ b/airbyte-integrations/connectors/source-e2e-test/build.gradle @@ -14,7 +14,6 @@ dependencies { implementation project(':airbyte-json-validation') implementation 'org.apache.commons:commons-lang3:3.11' implementation 'com.networknt:json-schema-validator:1.0.72' - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) // random Json object generation from Json schema // https://github.com/airbytehq/jsongenerator @@ -27,5 +26,4 @@ dependencies { integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-e2e-test') - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors/source-elasticsearch/.dockerignore b/airbyte-integrations/connectors/source-elasticsearch/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/source-elasticsearch/.dockerignore +++ b/airbyte-integrations/connectors/source-elasticsearch/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/source-elasticsearch/build.gradle b/airbyte-integrations/connectors/source-elasticsearch/build.gradle index 8c6e81ef6d28..a2c875efb30f 100644 --- a/airbyte-integrations/connectors/source-elasticsearch/build.gradle +++ b/airbyte-integrations/connectors/source-elasticsearch/build.gradle @@ -14,7 +14,6 @@ dependencies { implementation project(':airbyte-config-oss:config-models-oss') implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation 'co.elastic.clients:elasticsearch-java:7.15.0' implementation 'com.fasterxml.jackson.core:jackson-databind:2.12.3' @@ -30,8 +29,8 @@ dependencies { // MIT // https://www.testcontainers.org/ - testImplementation libs.connectors.testcontainers.elasticsearch - integrationTestJavaImplementation libs.connectors.testcontainers.elasticsearch + testImplementation libs.testcontainers.elasticsearch + integrationTestJavaImplementation libs.testcontainers.elasticsearch integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-elasticsearch') diff --git a/airbyte-integrations/connectors/source-facebook-marketing/Dockerfile b/airbyte-integrations/connectors/source-facebook-marketing/Dockerfile index a7647a8e0db0..dd0cc54990e7 100644 --- a/airbyte-integrations/connectors/source-facebook-marketing/Dockerfile +++ b/airbyte-integrations/connectors/source-facebook-marketing/Dockerfile @@ -13,5 +13,5 @@ ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=1.1.7 +LABEL io.airbyte.version=1.1.10 LABEL io.airbyte.name=airbyte/source-facebook-marketing diff --git a/airbyte-integrations/connectors/source-facebook-marketing/acceptance-test-config.yml b/airbyte-integrations/connectors/source-facebook-marketing/acceptance-test-config.yml index 6a93f0f9ecbc..1d3d83114e77 100644 --- a/airbyte-integrations/connectors/source-facebook-marketing/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-facebook-marketing/acceptance-test-config.yml @@ -7,7 +7,8 @@ acceptance_tests: tests: - spec_path: "integration_tests/spec.json" backward_compatibility_tests_config: - disable_for_version: "0.5.0" + disable_for_version: "1.1.9" + previous_connector_version: "1.1.8" connection: tests: - config_path: "secrets/config.json" @@ -18,7 +19,8 @@ acceptance_tests: tests: - config_path: "secrets/config.json" backward_compatibility_tests_config: - disable_for_version: "0.5.0" + disable_for_version: "1.1.10" + previous_connector_version: "1.1.9" basic_read: tests: - config_path: "secrets/config.json" @@ -46,6 +48,35 @@ acceptance_tests: ads_insights_dma: - name: cost_per_estimated_ad_recallers bypass_reason: can be missing + ads_insights_age_and_gender: + - name: cost_per_estimated_ad_recallers + bypass_reason: can be missing + ads_insights_delivery_device: + - name: cost_per_estimated_ad_recallers + bypass_reason: can be missing + ads_insights_delivery_platform_and_device_platform: + - name: cost_per_estimated_ad_recallers + bypass_reason: can be missing + ads_insights_demographics_age: + - name: cost_per_estimated_ad_recallers + bypass_reason: can be missing + ads_insights_demographics_country: + - name: cost_per_estimated_ad_recallers + bypass_reason: can be missing + ads_insights_demographics_gender: + - name: cost_per_estimated_ad_recallers + bypass_reason: can be missing + ads_insights_platform_and_device: + - name: cost_per_estimated_ad_recallers + bypass_reason: can be missing + ads_insights_region: + - name: cost_per_estimated_ad_recallers + bypass_reason: can be missing + custom_audiences: + - name: approximate_count_lower_bound + bypass_reason: is changeable + - name: approximate_count_upper_bound + bypass_reason: is changeable empty_streams: - name: "ads_insights_action_product_id" bypass_reason: "Data not permanent" diff --git a/airbyte-integrations/connectors/source-facebook-marketing/integration_tests/expected_records.jsonl b/airbyte-integrations/connectors/source-facebook-marketing/integration_tests/expected_records.jsonl index a75f785fadce..abc2564aa6a0 100644 --- a/airbyte-integrations/connectors/source-facebook-marketing/integration_tests/expected_records.jsonl +++ b/airbyte-integrations/connectors/source-facebook-marketing/integration_tests/expected_records.jsonl @@ -1,7 +1,7 @@ {"stream":"ad_account","data":{"id":"act_212551616838260","account_id":"212551616838260","account_status":1,"age":1219.3692361111,"amount_spent":"39125","balance":"0","business":{"id":"1506473679510495","name":"Airbyte"},"business_city":"","business_country_code":"US","business_name":"","business_street":"","business_street2":"","can_create_brand_lift_study":false,"capabilities":["CAN_CREATE_CALL_ADS","CAN_SEE_GROWTH_OPPORTUNITY_DATA","ENABLE_IA_RECIRC_AD_DISPLAY_FORMAT","CAN_USE_MOBILE_EXTERNAL_PAGE_TYPE","CAN_USE_FB_FEED_POSITION_IN_VIDEO_VIEW_15S","ENABLE_BIZ_DISCO_ADS","ENABLE_BRAND_OBJECTIVES_FOR_BIZ_DISCO_ADS","ENABLE_DIRECT_REACH_FOR_BIZ_DISCO_ADS","ENABLE_DYNAMIC_ADS_ON_IG_STORIES_ADS","ENABLE_IG_STORIES_ADS_PPE_OBJECTIVE","ENABLE_IG_STORIES_ADS_MESSENGER_DESTINATION","ENABLE_PAC_FOR_BIZ_DISCO_ADS","CAN_USE_FB_INSTREAM_POSITION_IN_VIDEO_VIEW_15S","CAN_USE_FB_STORY_POSITION_IN_VIDEO_VIEW_15S","CAN_USE_AN_INSTREAM_POSITION_IN_VIDEO_VIEW_15S","CAN_USE_IG_STORY_POSITION_IN_VIDEO_VIEW_15S","CAN_USE_FB_IA_POSITION_IN_VIDEO_VIEW_15S","CAN_USE_FB_SUG_VIDEO_POSITION_IN_VIDEO_VIEW_15S","CAN_USE_FB_MKT_PLACE_POSITION_IN_VIDEO_VIEW_15S","CAN_USE_IG_FEED_POSITION_IN_VIDEO_VIEW_15S","CAN_USE_IG_EXPLORE_POSITION_IN_VIDEO_VIEW_15S","CAN_USE_AN_CLASSIC_POSITION_IN_VIDEO_VIEW_15S","CAN_USE_AN_REWARD_VIDEO_POSITION_IN_VIDEO_VIEW_15S","CAN_USE_RECURRING_BUDGET","HAS_VALID_PAYMENT_METHODS","CAN_USE_LINK_CLICK_BILLING_EVENT","CAN_USE_CPA_BILLING_EVENT","CAN_SEE_NEW_CONVERSION_WINDOW_NUX","ADS_INSTREAM_INTERFACE_INTEGRITY","ADS_INSTREAM_LINK_CLICK","ADS_INSTREAM_LINK_CLICK_IMAGE","ADS_IN_OBJECTIVES_DEPRECATION","MESSENGER_INBOX_ADS_PRODUCT_CATALOG_SALES","CAN_SHOW_MESSENGER_DUPLICSTION_UPSELL","ALLOW_INSTREAM_ONLY_FOR_REACH","ADS_INSTREAM_VIDEO_PLACEMENT_CONVERSIONS","CAN_CREATE_INSTAGRAM_EXPLORE_ADS","ALLOW_INSTREAM_VIDEOS_PLACEMENT_ONLY","ALLOW_INSTREAM_NON_INTERRUPTIVE_LEADGEN","INSTREAM_VIDEO_AD_DESKTOP_CONVERSION_AD_PREVIEW","ALLOW_INSTREAM_ONLY_FOR_BRAND_AWARENESS_AUCTION","ALLOW_SUGGESTED_VIDEOS_PLACEMENT_ONLY","WHATSAPP_DESTINATION_ADS","CTM_ADS_CREATION_CLICK_TO_DIRECT","CTW_ADS_ENABLE_IG_FEED_PLACEMENT","CTW_ADS_FOR_NON_MESSAGES_OBJECTIVE","CTW_ADS_TRUSTED_TIER_2_PLUS_ADVERTISER","CTW_ADS_TRUSTED_TIER_ADVERTISER","ADS_PLACEMENT_MARKETPLACE","CAN_CHANGE_BILLING_THRESHOLD","CAN_USE_APP_EVENT_AVERAGE_COST_BIDDING","CAN_USE_LEAD_GEN_AVERAGE_COST_BIDDING","ADS_VALUE_OPTIMIZATION_DYNAMIC_ADS_1D","ADS_DELIVERY_INSIGHTS_IN_BIDDING_PRESET_EXPERIMENT","ADS_DELIVERY_INSIGHTS_OPTIMIZATION_PRESET","CAN_SEE_APP_AD_EVENTS","CAN_SEE_NEW_STANDARD_EVENTS_BETA","CAN_SEE_VCK_HOLIDAY_TEMPLATES","ENABLE_DCO_FOR_FB_STORY_ADS","CAN_USE_IG_EXPLORE_GRID_HOME_PLACEMENT","CAN_USE_IG_EXPLORE_HOME_IN_REACH_AND_FREQUENCY","CAN_USE_IG_EXPLORE_HOME_POST_ENGAGEMENT_MESSAGES","CAN_USE_IG_SEARCH_PLACEMENT","CAN_USE_IG_SEARCH_GRID_ADS","CAN_USE_IG_REELS_PAC_CAROUSEL","CAN_USE_IG_REELS_POSITION","CAN_SEE_CONVERSION_LIFT_SUMMARY","CAN_USE_IG_PROFILE_FEED_POSITION","CAN_USE_IG_PROFILE_FEED_AUTO_PLACEMENT","CAN_USE_IG_PROFILE_FEED_DPA_CREATION","CAN_USE_IG_REELS_AUTO_PLACEMENT","CAN_USE_IG_REELS_REACH_AND_FREQUENCY","CAN_USE_IG_REELS_OVERLAY_POSITION","CAN_USE_IG_REELS_OVERLAY_AUTO_PLACEMENT","CAN_USE_IG_REELS_OVERLAY_PAC","CAN_USE_IG_SHOP_TAB_PAC","CAN_SEE_LEARNING_STAGE","ENABLE_WEBSITE_CONVERSIONS_FOR_FB_STORY_ADS","ENABLE_MESSENGER_INBOX_VIDEO_ADS","ENABLE_VIDEO_VIEWS_FOR_FB_STORY_ADS","ENABLE_LINK_CLICKS_FOR_FB_STORY_ADS","ENABLE_REACH_FOR_FB_STORY_ADS","CAN_USE_CALL_TO_ACTION_LINK_IMPORT_EXPORT","ADS_INSTREAM_VIDEO_ENABLE_SLIDE_SHOW","ALLOW_INSTREAM_VIDEOS_PLACEMENT_ONLY_IN_VV_REACH_AND_FREQUENCY","ENABLE_MOBILE_APP_INSTALLS_FOR_FB_STORY_ADS","ENABLE_LEAD_GEN_FOR_FB_STORY_ADS","CAN_USE_FB_MKT_PLACE_POSITION_IN_REACH","CAN_USE_FB_MKT_PLACE_POSITION_IN_VIDEO_VIEW","CAN_USE_FB_MKT_PLACE_POSITION_IN_STORE_VISIT","ENABLE_MOBILE_APP_ENGAGEMENT_FOR_FB_STORY_ADS","CAN_USE_FB_MKT_PLACE_POSITION_IN_BRAND_AWARENESS","CAN_USE_FB_MKT_PLACE_POSITION_IN_APP_INSTALLS","CAN_USE_FB_MKT_PLACE_POSITION_IN_LEAD_GENERATION","CAN_USE_FB_MKT_PLACE_POSITION_IN_MESSAGE","CAN_USE_FB_MKT_PLACE_POSITION_IN_PAGE_LIKE","CAN_USE_FB_MKT_PLACE_POSITION_IN_POST_ENGAGEMENT","RF_ALLOW_MARKETPLACE_ACCOUNT","RF_ALLOW_SEARCH_ACCOUNT","VERTICAL_VIDEO_PAC_INSTREAM_UPSELL","IX_COLLECTION_ENABLED_FOR_BAO_AND_REACH","ADS_BM_REQUIREMENTS_OCT_15_RELEASE","ENABLE_POST_ENGAGEMENT_FOR_FB_STORY","ENBABLE_CATALOG_SALES_FOR_FB_STORY","CAN_USE_WHATSAPP_DESTINATION_ON_LINK_CLICKS_AND_CONVERSIONS","CAN_USE_WHATSAPP_DESTINATION_ON_CONVERSIONS","IS_NON_TAIL_AD_ACCOUNT","IS_IN_DSA_GK","IS_IN_IG_EXISTING_POST_CTA_DEFAULTING_EXPERIMENT","IS_IN_SHORT_WA_LINK_CTWA_UNCONV_TRAFFIC_EXPERIMENT","IS_IN_ODAX_EXPERIENCE","IS_IN_REACH_BRAND_AWARENESS_WHATSAPP_L1_DESTINATION_EXPERIMENT","IS_IN_VIDEO_VIEWS_WHATSAPP_L1_DESTINATION_EXPERIMENT","IS_IN_WHATSAPP_DESTINATION_DEFAULTING_EXPERIMENT","CAN_USE_MARKETPLACE_DESKTOP","ADS_MERCHANT_OVERLAYS_DEPRECATION","CONNECTIONS_DEPRECATION_V2","CAN_USE_LIVE_VIDEO_FOR_THRUPLAY","CAN_SEE_HEC_AM_FLOW","CAN_SEE_POLITICAL_FLOW","ADS_INSTREAM_PLACEMENT_CATALOG_SALES","ENABLE_CONVERSIONS_FOR_FB_GROUP_TAB_ADS","ENABLE_LINK_CLICK_FOR_FB_GROUP_TAB_ADS","ENABLE_REACH_FOR_FB_GROUP_TAB_ADS","CAN_USE_CONVERSATIONS_OPTIMIZATION","ENABLE_THRUPLAY_OPTIMIZATION_MESSENGER_STORY_ADS","CAN_USE_IG_STORY_POLLS_PAC_CREATION","IOS14_CEO_CAMPAIGN_CREATION","ENABLE_VIDEO_CHANNEL_PLACEMENT_FOR_RSVP_ADS","DIGITAL_CIRCULAR_ADS","CAN_SEE_SAFR_V3_FLOW","CAN_USE_FB_REELS_POSITION","CAN_USE_ADS_ON_FB_REELS_POSITION","CAN_USE_FB_REELS_AUTO_PLACEMENT","ENABLE_FB_REELS_CREATION_PAC_ADS","ENABLE_FB_REELS_CREATION_DCO_ADS","ENABLE_FB_REELS_POSTLOOP_CREATION_DCO_ADS","ENABLE_FB_REELS_POSTLOOP_CREATION_PAC_ADS","RF_CPA_BILLING_DEPRECATION_PHASE_2","ENABLE_APP_INSTALL_CUSTOM_PRODUCT_PAGES","ENABLE_ADS_ON_FB_REELS_PLACEMENT_UNIFICATION","ENABLE_ADS_ON_FB_REELS_PLACEMENT_UNIFICATION_L2_NUX","ENABLE_ADS_ON_IG_SHOP_TAB_DEPRECATION_L2_NUX","ADS_RF_FB_REELS_PLACEMENT","ENABLE_ADS_ON_FB_INSTANT_ARTICLE_DEPRECATION_L2_NUX","REELS_DM_ADS_ENABLE_REACH_AND_FREQUENCY"],"created_time":"2020-04-13T18:04:59-0700","currency":"USD","disable_reason":0,"end_advertiser":1506473679510495,"end_advertiser_name":"Airbyte","fb_entity":85,"has_migrated_permissions":true,"is_attribution_spec_system_default":true,"is_direct_deals_enabled":false,"is_in_3ds_authorization_enabled_market":false,"is_notifications_enabled":true,"is_personal":0,"is_tax_id_required":false,"min_campaign_group_spend_cap":10000,"min_daily_budget":100,"name":"Airbyte","offsite_pixels_tos_accepted":true,"owner":1506473679510495,"rf_spec":{"min_reach_limits":{"US":200000,"CA":200000,"GB":200000,"AR":200000,"AU":200000,"AT":200000,"BE":200000,"BR":200000,"CL":200000,"CN":200000,"CO":200000,"HR":200000,"DK":200000,"DO":200000,"EG":200000,"FI":200000,"FR":200000,"DE":200000,"GR":200000,"HK":200000,"IN":200000,"ID":200000,"IE":200000,"IL":200000,"IT":200000,"JP":200000,"JO":200000,"KW":200000,"LB":200000,"MY":200000,"MX":200000,"NL":200000,"NZ":200000,"NG":200000,"NO":200000,"PK":200000,"PA":200000,"PE":200000,"PH":200000,"PL":200000,"RU":200000,"SA":200000,"RS":200000,"SG":200000,"ZA":200000,"KR":200000,"ES":200000,"SE":200000,"CH":200000,"TW":200000,"TH":200000,"TR":200000,"AE":200000,"VE":200000,"PT":200000,"LU":200000,"BG":200000,"CZ":200000,"SI":200000,"IS":200000,"SK":200000,"LT":200000,"TT":200000,"BD":200000,"LK":200000,"KE":200000,"HU":200000,"MA":200000,"CY":200000,"JM":200000,"EC":200000,"RO":200000,"BO":200000,"GT":200000,"CR":200000,"QA":200000,"SV":200000,"HN":200000,"NI":200000,"PY":200000,"UY":200000,"PR":200000,"BA":200000,"PS":200000,"TN":200000,"BH":200000,"VN":200000,"GH":200000,"MU":200000,"UA":200000,"MT":200000,"BS":200000,"MV":200000,"OM":200000,"MK":200000,"LV":200000,"EE":200000,"IQ":200000,"DZ":200000,"AL":200000,"NP":200000,"MO":200000,"ME":200000,"SN":200000,"GE":200000,"BN":200000,"UG":200000,"GP":200000,"BB":200000,"AZ":200000,"TZ":200000,"LY":200000,"MQ":200000,"CM":200000,"BW":200000,"ET":200000,"KZ":200000,"NA":200000,"MG":200000,"NC":200000,"MD":200000,"FJ":200000,"BY":200000,"JE":200000,"GU":200000,"YE":200000,"ZM":200000,"IM":200000,"HT":200000,"KH":200000,"AW":200000,"PF":200000,"AF":200000,"BM":200000,"GY":200000,"AM":200000,"MW":200000,"AG":200000,"RW":200000,"GG":200000,"GM":200000,"FO":200000,"LC":200000,"KY":200000,"BJ":200000,"AD":200000,"GD":200000,"VI":200000,"BZ":200000,"VC":200000,"MN":200000,"MZ":200000,"ML":200000,"AO":200000,"GF":200000,"UZ":200000,"DJ":200000,"BF":200000,"MC":200000,"TG":200000,"GL":200000,"GA":200000,"GI":200000,"CD":200000,"KG":200000,"PG":200000,"BT":200000,"KN":200000,"SZ":200000,"LS":200000,"LA":200000,"LI":200000,"MP":200000,"SR":200000,"SC":200000,"VG":200000,"TC":200000,"DM":200000,"MR":200000,"AX":200000,"SM":200000,"SL":200000,"NE":200000,"CG":200000,"AI":200000,"YT":200000,"CV":200000,"GN":200000,"TM":200000,"BI":200000,"TJ":200000,"VU":200000,"SB":200000,"ER":200000,"WS":200000,"AS":200000,"FK":200000,"GQ":200000,"TO":200000,"KM":200000,"PW":200000,"FM":200000,"CF":200000,"SO":200000,"MH":200000,"VA":200000,"TD":200000,"KI":200000,"ST":200000,"TV":200000,"NR":200000,"RE":200000,"LR":200000,"ZW":200000,"CI":200000,"MM":200000,"AN":200000,"AQ":200000,"BQ":200000,"BV":200000,"IO":200000,"CX":200000,"CC":200000,"CK":200000,"CW":200000,"TF":200000,"GW":200000,"HM":200000,"XK":200000,"MS":200000,"NU":200000,"NF":200000,"PN":200000,"BL":200000,"SH":200000,"MF":200000,"PM":200000,"SX":200000,"GS":200000,"SS":200000,"SJ":200000,"TL":200000,"TK":200000,"UM":200000,"WF":200000,"EH":200000},"countries":["US","CA","GB","AR","AU","AT","BE","BR","CL","CN","CO","HR","DK","DO","EG","FI","FR","DE","GR","HK","IN","ID","IE","IL","IT","JP","JO","KW","LB","MY","MX","NL","NZ","NG","NO","PK","PA","PE","PH","PL","RU","SA","RS","SG","ZA","KR","ES","SE","CH","TW","TH","TR","AE","VE","PT","LU","BG","CZ","SI","IS","SK","LT","TT","BD","LK","KE","HU","MA","CY","JM","EC","RO","BO","GT","CR","QA","SV","HN","NI","PY","UY","PR","BA","PS","TN","BH","VN","GH","MU","UA","MT","BS","MV","OM","MK","EE","LV","IQ","DZ","AL","NP","MO","ME","SN","GE","BN","UG","GP","BB","ZW","CI","AZ","TZ","LY","MQ","MM","CM","BW","ET","KZ","NA","MG","NC","MD","FJ","BY","JE","GU","YE","ZM","IM","HT","KH","AW","PF","AF","BM","GY","AM","MW","AG","RW","GG","GM","FO","LC","KY","BJ","AD","GD","VI","BZ","VC","MN","MZ","ML","AO","GF","UZ","DJ","BF","MC","TG","GL","GA","GI","CD","KG","PG","BT","KN","SZ","LS","LA","LI","MP","SR","SC","VG","TC","DM","MR","AX","SM","SL","NE","CG","AI","YT","LR","CV","GN","TM","BI","TJ","VU","SB","ER","WS","AS","FK","GQ","TO","KM","PW","FM","CF","SO","MH","VA","TD","KI","ST","TV","NR","RE","AN","AQ","BQ","BV","IO","CX","CC","CK","CW","TF","GW","HM","XK","MS","NU","NF","PN","BL","SH","MF","PM","SX","GS","SS","SJ","TL","TK","UM","WF","EH"],"min_campaign_duration":{"US":1,"CA":1,"GB":1,"AR":1,"AU":1,"AT":1,"BE":1,"BR":1,"CL":1,"CN":1,"CO":1,"HR":1,"DK":1,"DO":1,"EG":1,"FI":1,"FR":1,"DE":1,"GR":1,"HK":1,"IN":1,"ID":1,"IE":1,"IL":1,"IT":1,"JP":1,"JO":1,"KW":1,"LB":1,"MY":1,"MX":1,"NL":1,"NZ":1,"NG":1,"NO":1,"PK":1,"PA":1,"PE":1,"PH":1,"PL":1,"RU":1,"SA":1,"RS":1,"SG":1,"ZA":1,"KR":1,"ES":1,"SE":1,"CH":1,"TW":1,"TH":1,"TR":1,"AE":1,"VE":1,"PT":1,"LU":1,"BG":1,"CZ":1,"SI":1,"IS":1,"SK":1,"LT":1,"TT":1,"BD":1,"LK":1,"KE":1,"HU":1,"MA":1,"CY":1,"JM":1,"EC":1,"RO":1,"BO":1,"GT":1,"CR":1,"QA":1,"SV":1,"HN":1,"NI":1,"PY":1,"UY":1,"PR":1,"BA":1,"PS":1,"TN":1,"BH":1,"VN":1,"GH":1,"MU":1,"UA":1,"MT":1,"BS":1,"MV":1,"OM":1,"MK":1,"LV":1,"EE":1,"IQ":1,"DZ":1,"AL":1,"NP":1,"MO":1,"ME":1,"SN":1,"GE":1,"BN":1,"UG":1,"GP":1,"BB":1,"AZ":1,"TZ":1,"LY":1,"MQ":1,"CM":1,"BW":1,"ET":1,"KZ":1,"NA":1,"MG":1,"NC":1,"MD":1,"FJ":1,"BY":1,"JE":1,"GU":1,"YE":1,"ZM":1,"IM":1,"HT":1,"KH":1,"AW":1,"PF":1,"AF":1,"BM":1,"GY":1,"AM":1,"MW":1,"AG":1,"RW":1,"GG":1,"GM":1,"FO":1,"LC":1,"KY":1,"BJ":1,"AD":1,"GD":1,"VI":1,"BZ":1,"VC":1,"MN":1,"MZ":1,"ML":1,"AO":1,"GF":1,"UZ":1,"DJ":1,"BF":1,"MC":1,"TG":1,"GL":1,"GA":1,"GI":1,"CD":1,"KG":1,"PG":1,"BT":1,"KN":1,"SZ":1,"LS":1,"LA":1,"LI":1,"MP":1,"SR":1,"SC":1,"VG":1,"TC":1,"DM":1,"MR":1,"AX":1,"SM":1,"SL":1,"NE":1,"CG":1,"AI":1,"YT":1,"CV":1,"GN":1,"TM":1,"BI":1,"TJ":1,"VU":1,"SB":1,"ER":1,"WS":1,"AS":1,"FK":1,"GQ":1,"TO":1,"KM":1,"PW":1,"FM":1,"CF":1,"SO":1,"MH":1,"VA":1,"TD":1,"KI":1,"ST":1,"TV":1,"NR":1,"RE":1,"LR":1,"ZW":1,"CI":1,"MM":1,"AN":1,"AQ":1,"BQ":1,"BV":1,"IO":1,"CX":1,"CC":1,"CK":1,"CW":1,"TF":1,"GW":1,"HM":1,"XK":1,"MS":1,"NU":1,"NF":1,"PN":1,"BL":1,"SH":1,"MF":1,"PM":1,"SX":1,"GS":1,"SS":1,"SJ":1,"TL":1,"TK":1,"UM":1,"WF":1,"EH":1},"max_campaign_duration":{"US":90,"CA":90,"GB":90,"AR":90,"AU":90,"AT":90,"BE":90,"BR":90,"CL":90,"CN":90,"CO":90,"HR":90,"DK":90,"DO":90,"EG":90,"FI":90,"FR":90,"DE":90,"GR":90,"HK":90,"IN":90,"ID":90,"IE":90,"IL":90,"IT":90,"JP":90,"JO":90,"KW":90,"LB":90,"MY":90,"MX":90,"NL":90,"NZ":90,"NG":90,"NO":90,"PK":90,"PA":90,"PE":90,"PH":90,"PL":90,"RU":90,"SA":90,"RS":90,"SG":90,"ZA":90,"KR":90,"ES":90,"SE":90,"CH":90,"TW":90,"TH":90,"TR":90,"AE":90,"VE":90,"PT":90,"LU":90,"BG":90,"CZ":90,"SI":90,"IS":90,"SK":90,"LT":90,"TT":90,"BD":90,"LK":90,"KE":90,"HU":90,"MA":90,"CY":90,"JM":90,"EC":90,"RO":90,"BO":90,"GT":90,"CR":90,"QA":90,"SV":90,"HN":90,"NI":90,"PY":90,"UY":90,"PR":90,"BA":90,"PS":90,"TN":90,"BH":90,"VN":90,"GH":90,"MU":90,"UA":90,"MT":90,"BS":90,"MV":90,"OM":90,"MK":90,"LV":90,"EE":90,"IQ":90,"DZ":90,"AL":90,"NP":90,"MO":90,"ME":90,"SN":90,"GE":90,"BN":90,"UG":90,"GP":90,"BB":90,"AZ":90,"TZ":90,"LY":90,"MQ":90,"CM":90,"BW":90,"ET":90,"KZ":90,"NA":90,"MG":90,"NC":90,"MD":90,"FJ":90,"BY":90,"JE":90,"GU":90,"YE":90,"ZM":90,"IM":90,"HT":90,"KH":90,"AW":90,"PF":90,"AF":90,"BM":90,"GY":90,"AM":90,"MW":90,"AG":90,"RW":90,"GG":90,"GM":90,"FO":90,"LC":90,"KY":90,"BJ":90,"AD":90,"GD":90,"VI":90,"BZ":90,"VC":90,"MN":90,"MZ":90,"ML":90,"AO":90,"GF":90,"UZ":90,"DJ":90,"BF":90,"MC":90,"TG":90,"GL":90,"GA":90,"GI":90,"CD":90,"KG":90,"PG":90,"BT":90,"KN":90,"SZ":90,"LS":90,"LA":90,"LI":90,"MP":90,"SR":90,"SC":90,"VG":90,"TC":90,"DM":90,"MR":90,"AX":90,"SM":90,"SL":90,"NE":90,"CG":90,"AI":90,"YT":90,"CV":90,"GN":90,"TM":90,"BI":90,"TJ":90,"VU":90,"SB":90,"ER":90,"WS":90,"AS":90,"FK":90,"GQ":90,"TO":90,"KM":90,"PW":90,"FM":90,"CF":90,"SO":90,"MH":90,"VA":90,"TD":90,"KI":90,"ST":90,"TV":90,"NR":90,"RE":90,"LR":90,"ZW":90,"CI":90,"MM":90,"AN":90,"AQ":90,"BQ":90,"BV":90,"IO":90,"CX":90,"CC":90,"CK":90,"CW":90,"TF":90,"GW":90,"HM":90,"XK":90,"MS":90,"NU":90,"NF":90,"PN":90,"BL":90,"SH":90,"MF":90,"PM":90,"SX":90,"GS":90,"SS":90,"SJ":90,"TL":90,"TK":90,"UM":90,"WF":90,"EH":90},"max_days_to_finish":{"US":180,"CA":180,"GB":180,"AR":180,"AU":180,"AT":180,"BE":180,"BR":180,"CL":180,"CN":180,"CO":180,"HR":180,"DK":180,"DO":180,"EG":180,"FI":180,"FR":180,"DE":180,"GR":180,"HK":180,"IN":180,"ID":180,"IE":180,"IL":180,"IT":180,"JP":180,"JO":180,"KW":180,"LB":180,"MY":180,"MX":180,"NL":180,"NZ":180,"NG":180,"NO":180,"PK":180,"PA":180,"PE":180,"PH":180,"PL":180,"RU":180,"SA":180,"RS":180,"SG":180,"ZA":180,"KR":180,"ES":180,"SE":180,"CH":180,"TW":180,"TH":180,"TR":180,"AE":180,"VE":180,"PT":180,"LU":180,"BG":180,"CZ":180,"SI":180,"IS":180,"SK":180,"LT":180,"TT":180,"BD":180,"LK":180,"KE":180,"HU":180,"MA":180,"CY":180,"JM":180,"EC":180,"RO":180,"BO":180,"GT":180,"CR":180,"QA":180,"SV":180,"HN":180,"NI":180,"PY":180,"UY":180,"PR":180,"BA":180,"PS":180,"TN":180,"BH":180,"VN":180,"GH":180,"MU":180,"UA":180,"MT":180,"BS":180,"MV":180,"OM":180,"MK":180,"LV":180,"EE":180,"IQ":180,"DZ":180,"AL":180,"NP":180,"MO":180,"ME":180,"SN":180,"GE":180,"BN":180,"UG":180,"GP":180,"BB":180,"AZ":180,"TZ":180,"LY":180,"MQ":180,"CM":180,"BW":180,"ET":180,"KZ":180,"NA":180,"MG":180,"NC":180,"MD":180,"FJ":180,"BY":180,"JE":180,"GU":180,"YE":180,"ZM":180,"IM":180,"HT":180,"KH":180,"AW":180,"PF":180,"AF":180,"BM":180,"GY":180,"AM":180,"MW":180,"AG":180,"RW":180,"GG":180,"GM":180,"FO":180,"LC":180,"KY":180,"BJ":180,"AD":180,"GD":180,"VI":180,"BZ":180,"VC":180,"MN":180,"MZ":180,"ML":180,"AO":180,"GF":180,"UZ":180,"DJ":180,"BF":180,"MC":180,"TG":180,"GL":180,"GA":180,"GI":180,"CD":180,"KG":180,"PG":180,"BT":180,"KN":180,"SZ":180,"LS":180,"LA":180,"LI":180,"MP":180,"SR":180,"SC":180,"VG":180,"TC":180,"DM":180,"MR":180,"AX":180,"SM":180,"SL":180,"NE":180,"CG":180,"AI":180,"YT":180,"CV":180,"GN":180,"TM":180,"BI":180,"TJ":180,"VU":180,"SB":180,"ER":180,"WS":180,"AS":180,"FK":180,"GQ":180,"TO":180,"KM":180,"PW":180,"FM":180,"CF":180,"SO":180,"MH":180,"VA":180,"TD":180,"KI":180,"ST":180,"TV":180,"NR":180,"RE":180,"LR":180,"ZW":180,"CI":180,"MM":180,"AN":180,"AQ":180,"BQ":180,"BV":180,"IO":180,"CX":180,"CC":180,"CK":180,"CW":180,"TF":180,"GW":180,"HM":180,"XK":180,"MS":180,"NU":180,"NF":180,"PN":180,"BL":180,"SH":180,"MF":180,"PM":180,"SX":180,"GS":180,"SS":180,"SJ":180,"TL":180,"TK":180,"UM":180,"WF":180,"EH":180},"global_io_max_campaign_duration":100},"spend_cap":"0","tax_id_status":0,"timezone_id":1,"timezone_name":"America/Los_Angeles","timezone_offset_hours_utc":-7,"tos_accepted":{"web_custom_audience_tos":1},"user_tasks":["DRAFT","ANALYZE"]},"emitted_at":1692180820858} {"stream":"ads", "data": {"bid_type": "ABSOLUTE_OCPM", "account_id": "212551616838260", "campaign_id": "23853619670350398", "adset_id": "23853619670380398", "status": "ACTIVE", "creative": {"id": "23853666125630398"}, "id": "23853620198790398", "updated_time": "2023-03-21T22:33:56-0700", "created_time": "2023-03-17T08:04:29-0700", "name": "Don't Compromise Between Cost/Relaibility", "targeting": {"age_max": 60, "age_min": 18, "custom_audiences": [{"id": "23853630753300398", "name": "Lookalike (US, 10%) - Airbyte Cloud Users"}, {"id": "23853683587660398", "name": "Web Traffic [ALL] - _copy"}], "geo_locations": {"countries": ["US"], "location_types": ["home", "recent"]}, "brand_safety_content_filter_levels": ["FACEBOOK_STANDARD", "AN_STANDARD"], "targeting_relaxation_types": {"lookalike": 1, "custom_audience": 1}, "publisher_platforms": ["facebook", "instagram", "audience_network", "messenger"], "facebook_positions": ["feed", "biz_disco_feed", "facebook_reels", "facebook_reels_overlay", "right_hand_column", "video_feeds", "instant_article", "instream_video", "marketplace", "story", "search"], "instagram_positions": ["stream", "story", "explore", "reels", "shop", "explore_home", "profile_feed"], "device_platforms": ["mobile", "desktop"], "messenger_positions": ["story"], "audience_network_positions": ["classic", "instream_video", "rewarded_video"]}, "effective_status": "ACTIVE", "last_updated_by_app_id": "119211728144504", "source_ad_id": "0", "tracking_specs": [{"action.type": ["offsite_conversion"], "fb_pixel": ["917042523049733"]}, {"action.type": ["post_engagement"], "page": ["112704783733939"], "post": ["660122622785523", "662226992575086"]}, {"action.type": ["link_click"], "post": ["660122622785523", "662226992575086"], "post.wall": ["112704783733939"]}], "conversion_specs": [{"action.type": ["offsite_conversion"], "conversion_id": ["6015304265216283"]}]}, "emitted_at": 1682686047377} {"stream":"ad_sets","data":{"name":"Lookalike audience_Free Connector Program","promoted_object":{"pixel_id":"917042523049733","custom_event_type":"COMPLETE_REGISTRATION"},"id":"23853619670380398","account_id":"212551616838260","updated_time":"2023-03-21T14:20:51-0700","daily_budget":2000,"budget_remaining":2000,"effective_status":"ACTIVE","campaign_id":"23853619670350398","created_time":"2023-03-17T08:04:28-0700","start_time":"2023-03-17T08:04:28-0700","lifetime_budget":0,"targeting":{"age_max":60,"age_min":18,"custom_audiences":[{"id":"23853630753300398","name":"Lookalike (US, 10%) - Airbyte Cloud Users"},{"id":"23853683587660398","name":"Web Traffic [ALL] - _copy"}],"geo_locations":{"countries":["US"],"location_types":["home","recent"]},"brand_safety_content_filter_levels":["FACEBOOK_STANDARD","AN_STANDARD"],"targeting_relaxation_types":{"lookalike":1,"custom_audience":1},"publisher_platforms":["facebook","instagram","audience_network","messenger"],"facebook_positions":["feed","biz_disco_feed","facebook_reels","facebook_reels_overlay","right_hand_column","video_feeds","instant_article","instream_video","marketplace","story","search"],"instagram_positions":["stream","story","explore","reels","shop","explore_home","profile_feed"],"device_platforms":["mobile","desktop"],"messenger_positions":["story"],"audience_network_positions":["classic","instream_video","rewarded_video"]},"bid_strategy":"LOWEST_COST_WITHOUT_CAP"},"emitted_at":1692180821847} -{"stream":"campaigns", "data": {"account_id": "212551616838260", "budget_rebalance_flag": false, "budget_remaining": 0.0, "buying_type": "AUCTION", "created_time": "2021-01-18T21:36:42-0800", "effective_status": "PAUSED", "id": "23846542053890398", "name": "Fake Campaign 0", "objective": "MESSAGES", "smart_promotion_type": "GUIDED_CREATION", "source_campaign_id": 0.0, "special_ad_category": "NONE", "start_time": "1969-12-31T15:59:59-0800", "updated_time": "2021-02-18T01:00:02-0800"}, "emitted_at": 1682686106887} +{"stream":"campaigns","data":{"id":"23846542053890398","account_id":"212551616838260","budget_rebalance_flag":false,"budget_remaining":0.0,"buying_type":"AUCTION","created_time":"2021-01-18T21:36:42-0800","configured_status":"PAUSED","effective_status":"PAUSED","name":"Fake Campaign 0","objective":"MESSAGES","smart_promotion_type":"GUIDED_CREATION","source_campaign_id":0.0,"special_ad_category":"NONE","start_time":"1969-12-31T15:59:59-0800","status":"PAUSED","updated_time":"2021-02-18T01:00:02-0800"},"emitted_at":1694795155769} {"stream":"custom_audiences","data":{"id":"23853683587660398","account_id":"212551616838260","approximate_count_lower_bound":4700,"approximate_count_upper_bound":5600,"customer_file_source":"PARTNER_PROVIDED_ONLY","data_source":{"type":"UNKNOWN","sub_type":"ANYTHING","creation_params":"[]"},"delivery_status":{"code":200,"description":"This audience is ready for use."},"description":"Custom Audience-Web Traffic [ALL] - _copy","is_value_based":false,"name":"Web Traffic [ALL] - _copy","operation_status":{"code":200,"description":"Normal"},"permission_for_actions":{"can_edit":false,"can_see_insight":"True","can_share":"False","subtype_supports_lookalike":"True","supports_recipient_lookalike":"False"},"retention_days":0,"subtype":"CUSTOM","time_content_updated":1679433484,"time_created":1679433479,"time_updated":1679433484},"emitted_at":1692028917200} {"stream":"ad_creatives","data":{"id":"23844568440620398","account_id":"212551616838260","actor_id":"112704783733939","asset_feed_spec":{"images":[{"adlabels":[{"name":"placement_asset_fb19ee1baacc68_1586830094862","id":"23844521781280398"}],"hash":"7394ffb578c53e8761b6498d3008725b","image_crops":{"191x100":[[0,411],[589,719]]}},{"adlabels":[{"name":"placement_asset_f1f518506ae7e68_1586830094842","id":"23844521781340398"}],"hash":"7394ffb578c53e8761b6498d3008725b","image_crops":{"100x100":[[12,282],[574,844]]}},{"adlabels":[{"name":"placement_asset_f311b79c14a30c_1586830094845","id":"23844521781330398"}],"hash":"7394ffb578c53e8761b6498d3008725b","image_crops":{"90x160":[[14,72],[562,1046]]}},{"adlabels":[{"name":"placement_asset_f2c2fe4f20af66c_1586830157386","id":"23844521783780398"}],"hash":"7394ffb578c53e8761b6498d3008725b","image_crops":{"90x160":[[0,0],[589,1047]]}}],"bodies":[{"adlabels":[{"name":"placement_asset_f2d65f15340e594_1586830094852","id":"23844521781260398"},{"name":"placement_asset_f1f97c3e3a63d74_1586830094858","id":"23844521781300398"},{"name":"placement_asset_f14cee2ab5d786_1586830094863","id":"23844521781370398"},{"name":"placement_asset_f14877915fb5acc_1586830157387","id":"23844521783760398"}],"text":""}],"call_to_action_types":["LEARN_MORE"],"descriptions":[{"text":"Unmatched attribution, ad performances, and lead conversion, by unlocking your ad-blocked traffic across all your tools."}],"link_urls":[{"adlabels":[{"name":"placement_asset_f309294689f2c6c_1586830094864","id":"23844521781290398"},{"name":"placement_asset_f136a02466f2bc_1586830094856","id":"23844521781310398"},{"name":"placement_asset_fa79b032b68274_1586830094860","id":"23844521781320398"},{"name":"placement_asset_f28a128696c7428_1586830157387","id":"23844521783790398"}],"website_url":"http://dataline.io/","display_url":""}],"titles":[{"adlabels":[{"name":"placement_asset_f1013e29f89c38_1586830094864","id":"23844521781350398"},{"name":"placement_asset_fcb53b78a11574_1586830094859","id":"23844521781360398"},{"name":"placement_asset_f1a3b3d525f4998_1586830094854","id":"23844521781380398"},{"name":"placement_asset_f890656071c9ac_1586830157387","id":"23844521783770398"}],"text":"Unblock all your adblocked traffic"}],"ad_formats":["AUTOMATIC_FORMAT"],"asset_customization_rules":[{"customization_spec":{"age_max":65,"age_min":13,"publisher_platforms":["instagram","audience_network","messenger"],"instagram_positions":["story"],"messenger_positions":["story"],"audience_network_positions":["classic"]},"image_label":{"name":"placement_asset_f311b79c14a30c_1586830094845","id":"23844521781330398"},"body_label":{"name":"placement_asset_f1f97c3e3a63d74_1586830094858","id":"23844521781300398"},"link_url_label":{"name":"placement_asset_fa79b032b68274_1586830094860","id":"23844521781320398"},"title_label":{"name":"placement_asset_fcb53b78a11574_1586830094859","id":"23844521781360398"},"priority":1},{"customization_spec":{"age_max":65,"age_min":13,"publisher_platforms":["facebook"],"facebook_positions":["right_hand_column","instant_article","search"]},"image_label":{"name":"placement_asset_fb19ee1baacc68_1586830094862","id":"23844521781280398"},"body_label":{"name":"placement_asset_f14cee2ab5d786_1586830094863","id":"23844521781370398"},"link_url_label":{"name":"placement_asset_f309294689f2c6c_1586830094864","id":"23844521781290398"},"title_label":{"name":"placement_asset_f1013e29f89c38_1586830094864","id":"23844521781350398"},"priority":2},{"customization_spec":{"age_max":65,"age_min":13,"publisher_platforms":["facebook"],"facebook_positions":["story"]},"image_label":{"name":"placement_asset_f2c2fe4f20af66c_1586830157386","id":"23844521783780398"},"body_label":{"name":"placement_asset_f14877915fb5acc_1586830157387","id":"23844521783760398"},"link_url_label":{"name":"placement_asset_f28a128696c7428_1586830157387","id":"23844521783790398"},"title_label":{"name":"placement_asset_f890656071c9ac_1586830157387","id":"23844521783770398"},"priority":3},{"customization_spec":{"age_max":65,"age_min":13},"image_label":{"name":"placement_asset_f1f518506ae7e68_1586830094842","id":"23844521781340398"},"body_label":{"name":"placement_asset_f2d65f15340e594_1586830094852","id":"23844521781260398"},"link_url_label":{"name":"placement_asset_f136a02466f2bc_1586830094856","id":"23844521781310398"},"title_label":{"name":"placement_asset_f1a3b3d525f4998_1586830094854","id":"23844521781380398"},"priority":4}],"optimization_type":"PLACEMENT","additional_data":{"multi_share_end_card":false,"is_click_to_message":false}},"effective_object_story_id":"112704783733939_117519556585795","name":"{{product.name}} 2020-04-21-49cbe5bd90ed9861ea68bb38f7d6fc7c","instagram_actor_id":"3437258706290825","object_story_spec":{"page_id":"112704783733939","instagram_actor_id":"3437258706290825"},"object_type":"SHARE","status":"ACTIVE","thumbnail_url":"https://scontent-dus1-1.xx.fbcdn.net/v/t45.1600-4/93287504_23844521781140398_125048020067680256_n.jpg?_nc_cat=108&ccb=1-7&_nc_sid=a3999f&_nc_ohc=-TT4Z0FkPeYAX97qejq&_nc_ht=scontent-dus1-1.xx&edm=AAT1rw8EAAAA&stp=c0.5000x0.5000f_dst-emg0_p64x64_q75&ur=58080a&oh=00_AfBjMrayWFyOLmIgVt8Owtv2fBSJVyCmtNuPLpCQyggdpg&oe=64E18154"},"emitted_at":1692180825964} {"stream":"activities","data":{"actor_id":"10167035656105444","actor_name":"Ilana Enoukov","application_id":"119211728144504","application_name":"Power Editor","date_time_in_timezone":"03/21/2023 at 2:20 PM","event_time":"2023-03-21T21:20:39+0000","event_type":"update_ad_set_target_spec","extra_data":"{\"old_value\":[{\"content\":\"Custom audience:\",\"children\":[\"Web Traffic [ALL] - _copy\"]},{\"content\":\"Location:\",\"children\":[\"United States\"]},{\"content\":\"Age:\",\"children\":[\"18 - 60\"]},{\"content\":\"Placements:\",\"children\":[\"on pages: Feed on desktop computers, Video feeds on desktop computers, Instagram feed, Instagram Stories, Instagram Profile Feed, Instagram Explore, Instagram Explore home, Instagram Reels, Instagram Shop, Third-party apps and websites on mobile devices, Feed on mobile devices, Video feeds on mobile devices, Right column on desktop computers, Instream video on mobile devices, Instream video on desktop computers, Instant Article, Marketplace on desktop computers, Marketplace on mobile devices, Facebook Stories on mobile devices, Messenger Stories, Marketplace search on desktop devices, Marketplace search on mobile devices, Search on mobile devices, Search on desktop devices, Facebook Reels overlay on mobile devices, Facebook Business Explore on mobile devices, Facebook Reels or Video search on mobile devices\"]},{\"content\":\"Advantage custom audience:\",\"children\":[\"Off\"]}],\"new_value\":[{\"content\":\"Custom audience:\",\"children\":[\"Lookalike (US, 10\\u0025) - Airbyte Cloud Users or Web Traffic [ALL] - _copy\"]},{\"content\":\"Location:\",\"children\":[\"United States\"]},{\"content\":\"Age:\",\"children\":[\"18 - 60\"]},{\"content\":\"Placements:\",\"children\":[\"on pages: Feed on desktop computers, Video feeds on desktop computers, Instagram feed, Instagram Stories, Instagram Profile Feed, Instagram Explore, Instagram Explore home, Instagram Reels, Instagram Shop, Third-party apps and websites on mobile devices, Feed on mobile devices, Video feeds on mobile devices, Right column on desktop computers, Instream video on mobile devices, Instream video on desktop computers, Instant Article, Marketplace on desktop computers, Marketplace on mobile devices, Facebook Stories on mobile devices, Messenger Stories, Marketplace search on desktop devices, Marketplace search on mobile devices, Search on mobile devices, Search on desktop devices, Facebook Reels overlay on mobile devices, Facebook Business Explore on mobile devices, Facebook Reels or Video search on mobile devices\"]},{\"content\":\"Advantage custom audience:\",\"children\":[\"On\"]}],\"type\":\"targets_spec\"}","object_id":"23853619670380398","object_name":"Lookalike audience_Free Connector Program","object_type":"CAMPAIGN","translated_event_type":"Ad set targeting updated"},"emitted_at":1692180829460} diff --git a/airbyte-integrations/connectors/source-facebook-marketing/integration_tests/spec.json b/airbyte-integrations/connectors/source-facebook-marketing/integration_tests/spec.json index cea425df779e..1022a3eb6c50 100644 --- a/airbyte-integrations/connectors/source-facebook-marketing/integration_tests/spec.json +++ b/airbyte-integrations/connectors/source-facebook-marketing/integration_tests/spec.json @@ -6,18 +6,25 @@ "type": "object", "properties": { "account_id": { - "title": "Account ID", - "description": "The Facebook Ad account ID to use when pulling data from the Facebook Marketing API. Open your Meta Ads Manager. The Ad account ID number is in the account dropdown menu or in your browser's address bar. See the docs for more information.", + "title": "Ad Account ID", + "description": "The Facebook Ad account ID to use when pulling data from the Facebook Marketing API. The Ad account ID number is in the account dropdown menu or in your browser's address bar of your Meta Ads Manager. See the docs for more information.", "order": 0, "pattern": "^[0-9]+$", "pattern_descriptor": "1234567890", "examples": ["111111111111111"], "type": "string" }, + "access_token": { + "title": "Access Token", + "description": "The value of the generated access token. From your App\u2019s Dashboard, click on \"Marketing API\" then \"Tools\". Select permissions ads_management, ads_read, read_insights, business_management. Then click on \"Get token\". See the docs for more information.", + "order": 1, + "airbyte_secret": true, + "type": "string" + }, "start_date": { "title": "Start Date", - "description": "The date from which you'd like to replicate data for all incremental streams, in the format YYYY-MM-DDT00:00:00Z. All data generated after this date will be replicated.", - "order": 1, + "description": "The date from which you'd like to replicate data for all incremental streams, in the format YYYY-MM-DDT00:00:00Z. If not set then all data will be replicated for usual streams and only last 2 years for insight streams.", + "order": 2, "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}Z$", "examples": ["2017-01-25T00:00:00Z"], "type": "string", @@ -26,19 +33,12 @@ "end_date": { "title": "End Date", "description": "The date until which you'd like to replicate data for all incremental streams, in the format YYYY-MM-DDT00:00:00Z. All data generated between the start date and this end date will be replicated. Not setting this option will result in always syncing the latest data.", - "order": 2, + "order": 3, "pattern": "^$|^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}Z$", "examples": ["2017-01-26T00:00:00Z"], "type": "string", "format": "date-time" }, - "access_token": { - "title": "Access Token", - "description": "The value of the generated access token. From your App\u2019s Dashboard, click on \"Marketing API\" then \"Tools\". Select permissions ads_management, ads_read, read_insights, business_management. Then click on \"Get token\". See the docs for more information.", - "order": 3, - "airbyte_secret": true, - "type": "string" - }, "include_deleted": { "title": "Include Deleted Campaigns, Ads, and AdSets", "description": "Set to active if you want to include data from deleted Campaigns, Ads, and AdSets.", @@ -378,7 +378,7 @@ "type": "string" } }, - "required": ["account_id", "start_date", "access_token"] + "required": ["account_id", "access_token"] }, "supportsIncremental": true, "supported_destination_sync_modes": ["append"], diff --git a/airbyte-integrations/connectors/source-facebook-marketing/metadata.yaml b/airbyte-integrations/connectors/source-facebook-marketing/metadata.yaml index 57c1f108f263..0ec78eadf60c 100644 --- a/airbyte-integrations/connectors/source-facebook-marketing/metadata.yaml +++ b/airbyte-integrations/connectors/source-facebook-marketing/metadata.yaml @@ -5,7 +5,7 @@ data: connectorSubtype: api connectorType: source definitionId: e7778cfc-e97c-4458-9ecb-b4f2bba8946c - dockerImageTag: 1.1.7 + dockerImageTag: 1.1.10 dockerRepository: airbyte/source-facebook-marketing githubIssueLabel: source-facebook-marketing icon: facebook.svg @@ -17,6 +17,22 @@ data: oss: enabled: true releaseStage: generally_available + suggestedStreams: + streams: + - ads_insights + - campaigns + - ads + - ad_sets + - ad_creatives + - ads_insights_age_and_gender + - ads_insights_action_type + - custom_conversions + - images + - ads_insights_country + - ads_insights_platform_and_device + - ads_insights_region + - ads_insights_dma + - activities documentationUrl: https://docs.airbyte.com/integrations/sources/facebook-marketing tags: - language:python diff --git a/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/api.py b/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/api.py index 92a85fb7dd8b..e3a6c610e117 100644 --- a/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/api.py +++ b/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/api.py @@ -9,8 +9,6 @@ import backoff import pendulum -from airbyte_cdk.models import FailureType -from airbyte_cdk.utils import AirbyteTracedException from cached_property import cached_property from facebook_business import FacebookAdsApi from facebook_business.adobjects.adaccount import AdAccount @@ -77,7 +75,6 @@ def _parse_call_rate_header(headers): ) if usage_header_business: - usage_header_business_loaded = json.loads(usage_header_business) for business_object_id in usage_header_business_loaded: usage_limits = usage_header_business_loaded.get(business_object_id)[0] @@ -194,15 +191,4 @@ def account(self) -> AdAccount: @staticmethod def _find_account(account_id: str) -> AdAccount: """Actual implementation of find account""" - try: - return AdAccount(f"act_{account_id}").api_get() - except FacebookRequestError as exc: - message = ( - f"Error: {exc.api_error_code()}, {exc.api_error_message()}. " - f"Please also verify your Account ID: " - f"See the https://www.facebook.com/business/help/1492627900875762 for more information." - ) - raise AirbyteTracedException( - message=message, - failure_type=FailureType.config_error, - ) from exc + return AdAccount(f"act_{account_id}").api_get() diff --git a/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/schemas/campaigns.json b/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/schemas/campaigns.json index e0a2d8c0c33b..b2f6edc47478 100644 --- a/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/schemas/campaigns.json +++ b/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/schemas/campaigns.json @@ -28,6 +28,9 @@ "bid_strategy": { "type": ["null", "string"] }, + "boosted_object_id":{ + "type": ["null", "string"] + }, "budget_rebalance_flag": { "type": ["null", "boolean"] }, @@ -44,6 +47,9 @@ "type": "string", "format": "date-time" }, + "configured_status": { + "type": ["null", "string"] + }, "effective_status": { "type": ["null", "string"] }, @@ -104,6 +110,9 @@ "type": "string", "format": "date-time" }, + "status": { + "type": ["null", "string"] + }, "stop_time": { "type": "string", "format": "date-time" diff --git a/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/source.py b/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/source.py index 16db2e4f6245..4e05a97af756 100644 --- a/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/source.py +++ b/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/source.py @@ -7,7 +7,6 @@ import facebook_business import pendulum -import requests from airbyte_cdk.models import ( AdvancedAuth, AuthFlowType, @@ -15,12 +14,12 @@ DestinationSyncMode, FailureType, OAuthConfigSpecification, + SyncMode, ) from airbyte_cdk.sources import AbstractSource from airbyte_cdk.sources.streams import Stream from airbyte_cdk.utils import AirbyteTracedException -from pydantic.error_wrappers import ValidationError -from source_facebook_marketing.api import API, FacebookAPIException +from source_facebook_marketing.api import API from source_facebook_marketing.spec import ConnectorConfig from source_facebook_marketing.streams import ( Activities, @@ -54,7 +53,6 @@ Images, Videos, ) -from source_facebook_marketing.streams.common import AccountTypeException from .utils import validate_end_date, validate_start_date @@ -67,9 +65,14 @@ def _validate_and_transform(self, config: Mapping[str, Any]): config.setdefault("action_breakdowns_allow_empty", False) if config.get("end_date") == "": config.pop("end_date") + config = ConnectorConfig.parse_obj(config) - config.start_date = pendulum.instance(config.start_date) - config.end_date = pendulum.instance(config.end_date) + + if config.start_date: + config.start_date = pendulum.instance(config.start_date) + + if config.end_date: + config.end_date = pendulum.instance(config.end_date) return config def check_connection(self, logger: logging.Logger, config: Mapping[str, Any]) -> Tuple[bool, Optional[Any]]: @@ -84,23 +87,26 @@ def check_connection(self, logger: logging.Logger, config: Mapping[str, Any]) -> if config.end_date > pendulum.now(): return False, "Date range can not be in the future." - if config.end_date < config.start_date: - return False, "end_date must be equal or after start_date." + if config.start_date and config.end_date < config.start_date: + return False, "End date must be equal or after start date." api = API(account_id=config.account_id, access_token=config.access_token, page_size=config.page_size) - logger.info(f"Select account {api.account}") - account_info = api.account.api_get(fields=["is_personal"]) + record_iterator = AdAccount(api=api).read_records(sync_mode=SyncMode.full_refresh, stream_state={}) + account_info = list(record_iterator)[0] if account_info.get("is_personal"): message = ( "The personal ad account you're currently using is not eligible " "for this operation. Please switch to a business ad account." ) - raise AccountTypeException(message) + return False, message - except (requests.exceptions.RequestException, ValidationError, FacebookAPIException, AccountTypeException) as e: - return False, e + except AirbyteTracedException as e: + return False, f"{e.message}. Full error: {e.internal_message}" + + except Exception as e: + return False, f"Unexpected error: {repr(e)}" # make sure that we have valid combination of "action_breakdowns" and "breakdowns" parameters for stream in self.get_custom_insights_streams(api, config): @@ -117,13 +123,17 @@ def streams(self, config: Mapping[str, Any]) -> List[Type[Stream]]: :return: list of the stream instances """ config = self._validate_and_transform(config) - config.start_date = validate_start_date(config.start_date) - config.end_date = validate_end_date(config.start_date, config.end_date) + if config.start_date: + config.start_date = validate_start_date(config.start_date) + config.end_date = validate_end_date(config.start_date, config.end_date) api = API(account_id=config.account_id, access_token=config.access_token, page_size=config.page_size) + # if start_date not specified then set default start_date for report streams to 2 years ago + report_start_date = config.start_date or pendulum.now().add(years=-2) + insights_args = dict( - api=api, start_date=config.start_date, end_date=config.end_date, insights_lookback_window=config.insights_lookback_window + api=api, start_date=report_start_date, end_date=config.end_date, insights_lookback_window=config.insights_lookback_window ) streams = [ AdAccount(api=api), diff --git a/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/spec.py b/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/spec.py index 99340caf954d..cd01a90dc143 100644 --- a/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/spec.py +++ b/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/spec.py @@ -106,11 +106,12 @@ class Config: title = "Source Facebook Marketing" account_id: str = Field( - title="Account ID", + title="Ad Account ID", order=0, description=( - "The Facebook Ad account ID to use when pulling data from the Facebook Marketing API." - " Open your Meta Ads Manager. The Ad account ID number is in the account dropdown menu or in your browser's address bar. " + "The Facebook Ad account ID to use when pulling data from the Facebook Marketing API. " + "The Ad account ID number is in the account dropdown menu or in your browser's address " + 'bar of your Meta Ads Manager. ' 'See the docs for more information.' ), pattern="^[0-9]+$", @@ -118,12 +119,24 @@ class Config: examples=["111111111111111"], ) - start_date: datetime = Field( - title="Start Date", + access_token: str = Field( + title="Access Token", order=1, + description=( + "The value of the generated access token. " + 'From your App’s Dashboard, click on "Marketing API" then "Tools". ' + 'Select permissions ads_management, ads_read, read_insights, business_management. Then click on "Get token". ' + 'See the docs for more information.' + ), + airbyte_secret=True, + ) + + start_date: Optional[datetime] = Field( + title="Start Date", + order=2, description=( "The date from which you'd like to replicate data for all incremental streams, " - "in the format YYYY-MM-DDT00:00:00Z. All data generated after this date will be replicated." + "in the format YYYY-MM-DDT00:00:00Z. If not set then all data will be replicated for usual streams and only last 2 years for insight streams." ), pattern=DATE_TIME_PATTERN, examples=["2017-01-25T00:00:00Z"], @@ -131,7 +144,7 @@ class Config: end_date: Optional[datetime] = Field( title="End Date", - order=2, + order=3, description=( "The date until which you'd like to replicate data for all incremental streams, in the format YYYY-MM-DDT00:00:00Z." " All data generated between the start date and this end date will be replicated. " @@ -142,18 +155,6 @@ class Config: default_factory=lambda: datetime.now(tz=timezone.utc), ) - access_token: str = Field( - title="Access Token", - order=3, - description=( - "The value of the generated access token. " - 'From your App’s Dashboard, click on "Marketing API" then "Tools". ' - 'Select permissions ads_management, ads_read, read_insights, business_management. Then click on "Get token". ' - 'See the docs for more information.' - ), - airbyte_secret=True, - ) - include_deleted: bool = Field( title="Include Deleted Campaigns, Ads, and AdSets", order=4, diff --git a/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/streams/base_insight_streams.py b/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/streams/base_insight_streams.py index 5913b8a78eb4..512e34cba9a4 100644 --- a/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/streams/base_insight_streams.py +++ b/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/streams/base_insight_streams.py @@ -12,9 +12,10 @@ from airbyte_cdk.sources.utils.schema_helpers import ResourceSchemaLoader from airbyte_cdk.utils import AirbyteTracedException from cached_property import cached_property -from facebook_business.exceptions import FacebookBadObjectError +from facebook_business.exceptions import FacebookBadObjectError, FacebookRequestError from source_facebook_marketing.streams.async_job import AsyncJob, InsightAsyncJob from source_facebook_marketing.streams.async_job_manager import InsightAsyncJobManager +from source_facebook_marketing.streams.common import traced_exception from .base_streams import FBMarketingIncrementalStream @@ -25,7 +26,6 @@ class AdsInsights(FBMarketingIncrementalStream): """doc: https://developers.facebook.com/docs/marketing-api/insights""" cursor_field = "date_start" - use_batch = False enable_deleted = False ALL_ACTION_ATTRIBUTION_WINDOWS = [ @@ -131,6 +131,8 @@ def read_records( f"Please try again later", failure_type=FailureType.system_error, ) from e + except FacebookRequestError as exc: + raise traced_exception(exc) self._completed_slices.add(job.interval.start) if job.interval.start == self._next_cursor_value: @@ -222,7 +224,6 @@ def check_breakdowns(self): def stream_slices( self, sync_mode: SyncMode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None ) -> Iterable[Optional[Mapping[str, Any]]]: - """Slice by date periods and schedule async job for each period, run at most MAX_ASYNC_JOBS jobs at the same time. This solution for Async was chosen because: 1. we should commit state after each successful job @@ -238,9 +239,12 @@ def stream_slices( if stream_state: self.state = stream_state - manager = InsightAsyncJobManager(api=self._api, jobs=self._generate_async_jobs(params=self.request_params())) - for job in manager.completed_jobs(): - yield {"insight_job": job} + try: + manager = InsightAsyncJobManager(api=self._api, jobs=self._generate_async_jobs(params=self.request_params())) + for job in manager.completed_jobs(): + yield {"insight_job": job} + except FacebookRequestError as exc: + raise traced_exception(exc) def _get_start_date(self) -> pendulum.Date: """Get start date to begin sync with. It is not that trivial as it might seem. diff --git a/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/streams/base_streams.py b/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/streams/base_streams.py index 27011e7e1640..d47edf4f6387 100644 --- a/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/streams/base_streams.py +++ b/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/streams/base_streams.py @@ -5,9 +5,6 @@ import logging from abc import ABC, abstractmethod from datetime import datetime -from functools import partial -from math import ceil -from queue import Queue from typing import TYPE_CHECKING, Any, Iterable, List, Mapping, MutableMapping, Optional import pendulum @@ -17,16 +14,16 @@ from airbyte_cdk.sources.utils.transform import TransformConfig, TypeTransformer from cached_property import cached_property from facebook_business.adobjects.abstractobject import AbstractObject -from facebook_business.api import FacebookAdsApiBatch, FacebookRequest, FacebookResponse +from facebook_business.exceptions import FacebookRequestError +from source_facebook_marketing.streams.common import traced_exception from .common import deep_merge if TYPE_CHECKING: # pragma: no cover from source_facebook_marketing.api import API -logger = logging.getLogger("airbyte") -FACEBOOK_BATCH_ERROR_CODE = 960 +logger = logging.getLogger("airbyte") class FBMarketingStream(Stream, ABC): @@ -35,8 +32,6 @@ class FBMarketingStream(Stream, ABC): primary_key = "id" transformer: TypeTransformer = TypeTransformer(TransformConfig.DefaultSchemaNormalization) - # use batch API to retrieve details for each record in a stream - use_batch = True # this flag will override `include_deleted` option for streams that does not support it enable_deleted = True # entity prefix for `include_deleted` filter, it usually matches singular version of stream name @@ -60,60 +55,29 @@ def fields(self) -> List[str]: """List of fields that we want to query, for now just all properties from stream's schema""" return list(self.get_json_schema().get("properties", {}).keys()) - def _execute_batch(self, batch: FacebookAdsApiBatch) -> None: - """Execute batch, retry in case of failures""" - while batch: - batch = batch.execute() - if batch: - logger.info("Retry failed requests in batch") - - def execute_in_batch(self, pending_requests: Iterable[FacebookRequest]) -> Iterable[MutableMapping[str, Any]]: - """Execute list of requests in batches""" - requests_q = Queue() - records = [] - for r in pending_requests: - requests_q.put(r) - - def success(response: FacebookResponse): - self.max_batch_size = self._initial_max_batch_size - records.append(response.json()) - - def reduce_batch_size(request: FacebookRequest): - if self.max_batch_size == 1 and set(self.fields_exceptions) & set(request._fields): - logger.warning( - f"Removing fields from object {self.name} with id={request._node_id} : {set(self.fields_exceptions) & set(request._fields)}" - ) - request._fields = [x for x in request._fields if x not in self.fields_exceptions] - elif self.max_batch_size == 1: - raise RuntimeError("Batch request failed with only 1 request in it") - self.max_batch_size = ceil(self.max_batch_size / 2) - logger.warning(f"Caught retryable error: Too much data was requested in batch. Reducing batch size to {self.max_batch_size}") - - def failure(response: FacebookResponse, request: Optional[FacebookRequest] = None): - # although it is Optional in the signature for compatibility, we need it always - assert request, "Missing a request object" - resp_body = response.json() - if not isinstance(resp_body, dict): - raise RuntimeError(f"Batch request failed with response: {resp_body}") - elif resp_body.get("error", {}).get("message") == "Please reduce the amount of data you're asking for, then retry your request": - reduce_batch_size(request) - elif resp_body.get("error", {}).get("code") != FACEBOOK_BATCH_ERROR_CODE: - raise RuntimeError(f"Batch request failed with response: {resp_body}; unknown error code") - requests_q.put(request) - - api_batch: FacebookAdsApiBatch = self._api.api.new_batch() - - while not requests_q.empty(): - request = requests_q.get() - api_batch.add_request(request, success=success, failure=partial(failure, request=request)) - if len(api_batch) == self.max_batch_size or requests_q.empty(): - # make a call for every max_batch_size items or less if it is the last call - self._execute_batch(api_batch) - yield from records - records = [] - api_batch: FacebookAdsApiBatch = self._api.api.new_batch() - - yield from records + @classmethod + def fix_date_time(cls, record): + date_time_fields = ( + "created_time", + "creation_time", + "updated_time", + "event_time", + "start_time", + "first_fired_time", + "last_fired_time", + ) + + if isinstance(record, dict): + for field, value in record.items(): + if isinstance(value, str): + if field in date_time_fields: + record[field] = value.replace("t", "T").replace(" 0000", "+0000") + else: + cls.fix_date_time(value) + + elif isinstance(record, list): + for entry in record: + cls.fix_date_time(entry) def read_records( self, @@ -123,16 +87,14 @@ def read_records( stream_state: Mapping[str, Any] = None, ) -> Iterable[Mapping[str, Any]]: """Main read method used by CDK""" - records_iter = self.list_objects(params=self.request_params(stream_state=stream_state)) - loaded_records_iter = (record.api_get(fields=self.fields, pending=self.use_batch) for record in records_iter) - if self.use_batch: - loaded_records_iter = self.execute_in_batch(loaded_records_iter) - - for record in loaded_records_iter: - if isinstance(record, AbstractObject): - yield record.export_all_data() # convert FB object to dict - else: - yield record # execute_in_batch will emmit dicts + try: + for record in self.list_objects(params=self.request_params(stream_state=stream_state)): + if isinstance(record, AbstractObject): + record = record.export_all_data() # convert FB object to dict + self.fix_date_time(record) + yield record + except FacebookRequestError as exc: + raise traced_exception(exc) @abstractmethod def list_objects(self, params: Mapping[str, Any]) -> Iterable: @@ -184,11 +146,8 @@ class FBMarketingIncrementalStream(FBMarketingStream, ABC): def __init__(self, start_date: datetime, end_date: datetime, **kwargs): super().__init__(**kwargs) - self._start_date = pendulum.instance(start_date) - self._end_date = pendulum.instance(end_date) - - if self._end_date < self._start_date: - logger.error("The end_date must be after start_date.") + self._start_date = pendulum.instance(start_date) if start_date else None + self._end_date = pendulum.instance(end_date) if end_date else None def get_updated_state(self, current_stream_state: MutableMapping[str, Any], latest_record: Mapping[str, Any]): """Update stream state from latest record""" @@ -212,13 +171,24 @@ def request_params(self, stream_state: Mapping[str, Any], **kwargs) -> MutableMa def _state_filter(self, stream_state: Mapping[str, Any]) -> Mapping[str, Any]: """Additional filters associated with state if any set""" + state_value = stream_state.get(self.cursor_field) - filter_value = self._start_date if not state_value else pendulum.parse(state_value) + if stream_state: + filter_value = pendulum.parse(state_value) + elif self._start_date: + filter_value = self._start_date + else: + # if start_date is not specified then do not use date filters + return {} potentially_new_records_in_the_past = self._include_deleted and not stream_state.get("include_deleted", False) if potentially_new_records_in_the_past: self.logger.info(f"Ignoring bookmark for {self.name} because of enabled `include_deleted` option") - filter_value = self._start_date + if self._start_date: + filter_value = self._start_date + else: + # if start_date is not specified then do not use date filters + return {} return { "filtering": [ @@ -281,16 +251,20 @@ def read_records( - update state only when we reach the end - stop reading when we reached the end """ - records_iter = self.list_objects(params=self.request_params(stream_state=stream_state)) - for record in records_iter: - record_cursor_value = pendulum.parse(record[self.cursor_field]) - if self._cursor_value and record_cursor_value < self._cursor_value: - break - if not self._include_deleted and self.get_record_deleted_status(record): - continue - - self._max_cursor_value = self._max_cursor_value or record_cursor_value - self._max_cursor_value = max(self._max_cursor_value, record_cursor_value) - yield record.export_all_data() - - self._cursor_value = self._max_cursor_value + try: + records_iter = self.list_objects(params=self.request_params(stream_state=stream_state)) + for record in records_iter: + record_cursor_value = pendulum.parse(record[self.cursor_field]) + if self._cursor_value and record_cursor_value < self._cursor_value: + break + if not self._include_deleted and self.get_record_deleted_status(record): + continue + + self._max_cursor_value = max(self._max_cursor_value, record_cursor_value) if self._max_cursor_value else record_cursor_value + record = record.export_all_data() + self.fix_date_time(record) + yield record + + self._cursor_value = self._max_cursor_value + except FacebookRequestError as exc: + raise traced_exception(exc) diff --git a/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/streams/common.py b/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/streams/common.py index db1913ffc90e..3947689761b3 100644 --- a/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/streams/common.py +++ b/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/streams/common.py @@ -9,6 +9,8 @@ import backoff import pendulum +from airbyte_cdk.models import FailureType +from airbyte_cdk.utils import AirbyteTracedException from facebook_business.exceptions import FacebookRequestError # The Facebook API error codes indicating rate-limiting are listed at @@ -40,7 +42,7 @@ def log_retry_attempt(details): def reduce_request_record_limit(details): _, exc, _ = sys.exc_info() # the list of error patterns to track, - # in order to reduce the requestt page size and retry + # in order to reduce the request page size and retry error_patterns = [ "Please reduce the amount of data you're asking for, then retry your request", "An unknown error occurred", @@ -114,3 +116,46 @@ def deep_merge(a: Any, b: Any) -> Any: return a | b else: return a if b is None else b + + +def traced_exception(fb_exception: FacebookRequestError): + """Add user-friendly message for FacebookRequestError + + Please see ../unit_tests/test_errors.py for full error examples + Please add new errors to the tests + """ + msg = fb_exception.api_error_message() + + if "Error validating access token" in msg: + failure_type = FailureType.config_error + friendly_msg = "Invalid access token. Re-authenticate if FB oauth is used or refresh access token with all required permissions" + + elif "(#100) Missing permissions" in msg: + failure_type = FailureType.config_error + friendly_msg = ( + "Credentials don't have enough permissions. Check if correct Ad Account Id is used (as in Ads Manager), " + "re-authenticate if FB oauth is used or refresh access token with all required permissions" + ) + + elif "permission" in msg: + failure_type = FailureType.config_error + friendly_msg = ( + "Credentials don't have enough permissions. Re-authenticate if FB oauth is used or refresh access token " + "with all required permissions." + ) + + elif "An unknown error occurred" in msg and "error_user_title" in fb_exception._error: + msg = fb_exception._error["error_user_title"] + if "profile is not linked to delegate page" in msg or "el perfil no est" in msg: + failure_type = FailureType.config_error + friendly_msg = ( + "Current profile is not linked to delegate page. Check if correct business (not personal) " + "Ad Account Id is used (as in Ads Manager), re-authenticate if FB oauth is used or refresh " + "access token with all required permissions." + ) + + else: + failure_type = FailureType.system_error + friendly_msg = f"Error: {fb_exception.api_error_code()}, {fb_exception.api_error_message()}." + + return AirbyteTracedException(message=friendly_msg or msg, internal_message=msg, failure_type=failure_type, exception=fb_exception) diff --git a/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/streams/streams.py b/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/streams/streams.py index 2f447af8630e..84f18327e1a5 100644 --- a/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/streams/streams.py +++ b/airbyte-integrations/connectors/source-facebook-marketing/source_facebook_marketing/streams/streams.py @@ -10,7 +10,6 @@ import requests from airbyte_cdk.models import SyncMode from cached_property import cached_property -from facebook_business.adobjects.abstractobject import AbstractObject from facebook_business.adobjects.adaccount import AdAccount as FBAdAccount from facebook_business.adobjects.adimage import AdImage from facebook_business.adobjects.user import User @@ -31,8 +30,8 @@ def fetch_thumbnail_data_url(url: str) -> Optional[str]: return f"data:{_type};base64,{data.decode('ascii')}" else: logger.warning(f"Got {repr(response)} while requesting thumbnail image.") - except requests.exceptions.RequestException as exc: - logger.warning(f"Got {str(exc)} while requesting thumbnail image.") + except Exception as exc: + logger.warning(f"Got {str(exc)} while requesting thumbnail image: {url}.") return None @@ -69,7 +68,7 @@ def read_records( yield record def list_objects(self, params: Mapping[str, Any]) -> Iterable: - return self._api.account.get_ad_creatives(params=params) + return self._api.account.get_ad_creatives(params=params, fields=self.fields) class CustomConversions(FBMarketingStream): @@ -79,7 +78,7 @@ class CustomConversions(FBMarketingStream): enable_deleted = False def list_objects(self, params: Mapping[str, Any]) -> Iterable: - return self._api.account.get_custom_conversions(params=params) + return self._api.account.get_custom_conversions(params=params, fields=self.fields) class CustomAudiences(FBMarketingStream): @@ -92,7 +91,7 @@ class CustomAudiences(FBMarketingStream): fields_exceptions = ["rule"] def list_objects(self, params: Mapping[str, Any]) -> Iterable: - return self._api.account.get_custom_audiences(params=params) + return self._api.account.get_custom_audiences(params=params, fields=self.fields) class Ads(FBMarketingIncrementalStream): @@ -101,7 +100,7 @@ class Ads(FBMarketingIncrementalStream): entity_prefix = "ad" def list_objects(self, params: Mapping[str, Any]) -> Iterable: - return self._api.account.get_ads(params=params) + return self._api.account.get_ads(params=params, fields=self.fields) class AdSets(FBMarketingIncrementalStream): @@ -110,7 +109,7 @@ class AdSets(FBMarketingIncrementalStream): entity_prefix = "adset" def list_objects(self, params: Mapping[str, Any]) -> Iterable: - return self._api.account.get_ad_sets(params=params) + return self._api.account.get_ad_sets(params=params, fields=self.fields) class Campaigns(FBMarketingIncrementalStream): @@ -119,7 +118,7 @@ class Campaigns(FBMarketingIncrementalStream): entity_prefix = "campaign" def list_objects(self, params: Mapping[str, Any]) -> Iterable: - return self._api.account.get_campaigns(params=params) + return self._api.account.get_campaigns(params=params, fields=self.fields) class Activities(FBMarketingIncrementalStream): @@ -129,24 +128,8 @@ class Activities(FBMarketingIncrementalStream): cursor_field = "event_time" primary_key = None - def list_objects(self, fields: List[str], params: Mapping[str, Any]) -> Iterable: - return self._api.account.get_activities(fields=fields, params=params) - - def read_records( - self, - sync_mode: SyncMode, - cursor_field: List[str] = None, - stream_slice: Mapping[str, Any] = None, - stream_state: Mapping[str, Any] = None, - ) -> Iterable[Mapping[str, Any]]: - """Main read method used by CDK""" - loaded_records_iter = self.list_objects(fields=self.fields, params=self.request_params(stream_state=stream_state)) - - for record in loaded_records_iter: - if isinstance(record, AbstractObject): - yield record.export_all_data() # convert FB object to dict - else: - yield record # execute_in_batch will emmit dicts + def list_objects(self, params: Mapping[str, Any]) -> Iterable: + return self._api.account.get_activities(fields=self.fields, params=params) def _state_filter(self, stream_state: Mapping[str, Any]) -> Mapping[str, Any]: """Additional filters associated with state if any set""" @@ -202,7 +185,7 @@ def fields(self) -> List[str]: def list_objects(self, params: Mapping[str, Any]) -> Iterable: """noop in case of AdAccount""" - return [FBAdAccount(self._api.account.get_id())] + return [FBAdAccount(self._api.account.get_id()).api_get(fields=self.fields)] class Images(FBMarketingReversedIncrementalStream): diff --git a/airbyte-integrations/connectors/source-facebook-marketing/unit_tests/test_base_streams.py b/airbyte-integrations/connectors/source-facebook-marketing/unit_tests/test_base_streams.py index c64f1c778ba8..8da7ea38581b 100644 --- a/airbyte-integrations/connectors/source-facebook-marketing/unit_tests/test_base_streams.py +++ b/airbyte-integrations/connectors/source-facebook-marketing/unit_tests/test_base_streams.py @@ -2,13 +2,12 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # -import json from functools import partial from typing import Any, Iterable, Mapping import pytest from facebook_business import FacebookSession -from facebook_business.api import FacebookAdsApi, FacebookAdsApiBatch, FacebookRequest +from facebook_business.api import FacebookAdsApi, FacebookAdsApiBatch from source_facebook_marketing.api import MyFacebookAdsApi from source_facebook_marketing.streams.base_streams import FBMarketingStream @@ -32,163 +31,68 @@ def list_objects(self, params: Mapping[str, Any]) -> Iterable: yield from [] -class TestBaseStream: - def test_execute_in_batch_with_few_requests(self, api, batch, mock_batch_responses): - """Should execute single batch if number of requests less than MAX_BATCH_SIZE.""" - mock_batch_responses( - [ +class TestDateTimeValue: + def test_date_time_value(self): + record = { + 'bla': '2023-01-19t20:38:59 0000', + 'created_time': '2023-01-19t20:38:59 0000', + 'creation_time': '2023-01-19t20:38:59 0000', + 'updated_time': '2023-01-19t20:38:59 0000', + 'event_time': '2023-01-19t20:38:59 0000', + 'first_fired_time': '2023-01-19t20:38:59 0000', + 'last_fired_time': '2023-01-19t20:38:59 0000', + 'sub_list': [ { - "json": [{"body": json.dumps({"name": "creative 1"}), "code": 200, "headers": {}}] * 3, + 'bla': '2023-01-19t20:38:59 0000', + 'created_time': '2023-01-19t20:38:59 0000', + 'creation_time': '2023-01-19t20:38:59 0000', + 'updated_time': '2023-01-19t20:38:59 0000', + 'event_time': '2023-01-19t20:38:59 0000', + 'first_fired_time': '2023-01-19t20:38:59 0000', + 'last_fired_time': '2023-01-19t20:38:59 0000' } - ] - ) - - stream = SomeTestStream(api=api) - requests = [FacebookRequest("node", "GET", "endpoint") for _ in range(5)] - - result = list(stream.execute_in_batch(requests)) - - assert batch.add_request.call_count == len(requests) - batch.execute.assert_called_once() - assert len(result) == 3 - - def test_execute_in_batch_with_many_requests(self, api, batch, mock_batch_responses): - """Should execute as many batches as needed if number of requests bigger than MAX_BATCH_SIZE.""" - mock_batch_responses( - [ - { - "json": [{"body": json.dumps({"name": "creative 1"}), "code": 200, "headers": {}}] * 5, + ], + 'sub_entries1': { + 'sub_entries2': { + 'bla': '2023-01-19t20:38:59 0000', + 'created_time': '2023-01-19t20:38:59 0000', + 'creation_time': '2023-01-19t20:38:59 0000', + 'updated_time': '2023-01-19t20:38:59 0000', + 'event_time': '2023-01-19t20:38:59 0000', + 'first_fired_time': '2023-01-19t20:38:59 0000', + 'last_fired_time': '2023-01-19t20:38:59 0000' } - ] - ) - - stream = SomeTestStream(api=api) - requests = [FacebookRequest("node", "GET", "endpoint") for _ in range(50 + 1)] - - result = list(stream.execute_in_batch(requests)) - - assert batch.add_request.call_count == len(requests) - assert batch.execute.call_count == 2 - assert len(result) == 5 * 2 - - def test_execute_in_batch_with_retries(self, api, batch, mock_batch_responses): - """Should retry batch execution until succeed""" - # batch.execute.side_effect = [batch, batch, None] - mock_batch_responses( - [ - { - "json": [ - {}, - {}, - {"body": json.dumps({"name": "creative 1"}), "code": 200, "headers": {}}, - ], - }, + } + } + FBMarketingStream.fix_date_time(record) + assert { + 'bla': '2023-01-19t20:38:59 0000', + 'created_time': '2023-01-19T20:38:59+0000', + 'creation_time': '2023-01-19T20:38:59+0000', + 'updated_time': '2023-01-19T20:38:59+0000', + 'event_time': '2023-01-19T20:38:59+0000', + 'first_fired_time': '2023-01-19T20:38:59+0000', + 'last_fired_time': '2023-01-19T20:38:59+0000', + 'sub_list': [ { - "json": [ - {}, - {"body": json.dumps({"name": "creative 1"}), "code": 200, "headers": {}}, - ], - }, - { - "json": [ - {"body": json.dumps({"name": "creative 1"}), "code": 200, "headers": {}}, - ], - }, - ] - ) - - stream = SomeTestStream(api=api) - requests = [FacebookRequest("node", "GET", "endpoint") for _ in range(3)] - - result = list(stream.execute_in_batch(requests)) - - assert batch.add_request.call_count == len(requests) - assert batch.execute.call_count == 1 - assert len(result) == 3 - - def test_execute_in_batch_with_fails(self, api, batch, mock_batch_responses): - """Should fail with exception when any request returns error""" - mock_batch_responses( - [ - { - "json": [ - {"body": "{}", "code": 500, "headers": {}}, - {"body": json.dumps({"name": "creative 1"}), "code": 200, "headers": {}}, - ], + 'bla': '2023-01-19t20:38:59 0000', + 'created_time': '2023-01-19T20:38:59+0000', + 'creation_time': '2023-01-19T20:38:59+0000', + 'updated_time': '2023-01-19T20:38:59+0000', + 'event_time': '2023-01-19T20:38:59+0000', + 'first_fired_time': '2023-01-19T20:38:59+0000', + 'last_fired_time': '2023-01-19T20:38:59+0000' } - ] - ) - - stream = SomeTestStream(api=api) - requests = [FacebookRequest("node", "GET", "endpoint") for _ in range(5)] - - with pytest.raises(RuntimeError, match="Batch request failed with response:"): - list(stream.execute_in_batch(requests)) - - assert batch.add_request.call_count == len(requests) - assert batch.execute.call_count == 1 - - def test_batch_reduce_amount(self, api, batch, mock_batch_responses, caplog): - """Reduce batch size to 1 and finally fail with message""" - - retryable_message = "Please reduce the amount of data you're asking for, then retry your request" - mock_batch_responses( - [ - { - "json": [ - {"body": {"error": {"message": retryable_message}}, "code": 500, "headers": {}}, - ], + ], + 'sub_entries1': { + 'sub_entries2': { + 'bla': '2023-01-19t20:38:59 0000', + 'created_time': '2023-01-19T20:38:59+0000', + 'creation_time': '2023-01-19T20:38:59+0000', + 'updated_time': '2023-01-19T20:38:59+0000', + 'event_time': '2023-01-19T20:38:59+0000', + 'first_fired_time': '2023-01-19T20:38:59+0000', + 'last_fired_time': '2023-01-19T20:38:59+0000' } - ] - ) - - stream = SomeTestStream(api=api) - requests = [FacebookRequest("node", "GET", "endpoint")] - with pytest.raises(RuntimeError, match="Batch request failed with only 1 request in..."): - list(stream.execute_in_batch(requests)) - - assert batch.add_request.call_count == 7 - assert batch.execute.call_count == 7 - assert stream.max_batch_size == 1 - for index, expected_batch_size in enumerate(["25", "13", "7", "4", "2", "1"]): - assert expected_batch_size in caplog.messages[index] - - def test_execute_in_batch_retry_batch_error(self, api, batch, mock_batch_responses): - """Should retry without exception when any request returns 960 error code""" - mock_batch_responses( - [ - { - "json": [ - {"body": json.dumps({"name": "creative 1"}), "code": 200, "headers": {}}, - { - "body": json.dumps( - { - "error": { - "message": "Request aborted. This could happen if a dependent request failed or the entire request timed out.", - "type": "FacebookApiException", - "code": 960, - "fbtrace_id": "AWuyQlmgct0a_n64b-D1AFQ", - } - } - ), - "code": 500, - "headers": {}, - }, - {"body": json.dumps({"name": "creative 3"}), "code": 200, "headers": {}}, - ], - }, - { - "json": [ - {"body": json.dumps({"name": "creative 2"}), "code": 200, "headers": {}}, - ], - }, - ] - ) - - stream = SomeTestStream(api=api) - requests = [FacebookRequest("node", "GET", "endpoint") for _ in range(3)] - result = list(stream.execute_in_batch(requests)) - - assert batch.add_request.call_count == len(requests) + 1 - assert batch.execute.call_count == 2 - assert len(result) == len(requests) + } + } == record diff --git a/airbyte-integrations/connectors/source-facebook-marketing/unit_tests/test_client.py b/airbyte-integrations/connectors/source-facebook-marketing/unit_tests/test_client.py index 310546d5ec19..15ad5e748170 100644 --- a/airbyte-integrations/connectors/source-facebook-marketing/unit_tests/test_client.py +++ b/airbyte-integrations/connectors/source-facebook-marketing/unit_tests/test_client.py @@ -7,6 +7,7 @@ import pendulum import pytest from airbyte_cdk.models import SyncMode +from airbyte_cdk.utils import AirbyteTracedException from facebook_business import FacebookAdsApi, FacebookSession from facebook_business.exceptions import FacebookRequestError from source_facebook_marketing.streams import Activities, AdAccount, AdCreatives, Campaigns, Videos @@ -54,7 +55,6 @@ class TestBackoff: def test_limit_reached(self, mocker, requests_mock, api, fb_call_rate_response, account_id): """Error once, check that we retry and not fail""" # turn Campaigns into non batch mode to test non batch logic - mocker.patch.object(Campaigns, "use_batch", new_callable=mocker.PropertyMock, return_value=False) campaign_responses = [ fb_call_rate_response, { @@ -114,7 +114,10 @@ def test_batch_limit_reached(self, requests_mock, api, fb_call_rate_response, ac stream = AdCreatives(api=api, include_deleted=False) records = list(stream.read_records(sync_mode=SyncMode.full_refresh, stream_state={})) - assert records == [{"name": "creative 1"}, {"name": "creative 2"}] + assert records == [ + {'id': '123', 'object_type': 'SHARE', 'status': 'ACTIVE'}, + {'id': '1234', 'object_type': 'SHARE', 'status': 'ACTIVE'} + ] @pytest.mark.parametrize( "error_response", @@ -155,7 +158,7 @@ def test_limit_error_retry(self, fb_call_amount_data_response, requests_mock, ap stream = Campaigns(api=api, start_date=pendulum.now(), end_date=pendulum.now(), include_deleted=False, page_size=100) try: list(stream.read_records(sync_mode=SyncMode.full_refresh, stream_state={})) - except FacebookRequestError: + except AirbyteTracedException: assert [x.qs.get("limit")[0] for x in res.request_history] == ["100", "50", "25", "12", "6"] def test_limit_error_retry_revert_page_size(self, requests_mock, api, account_id): @@ -216,5 +219,5 @@ def test_limit_error_retry_next_page(self, fb_call_amount_data_response, request stream = Videos(api=api, start_date=pendulum.now(), end_date=pendulum.now(), include_deleted=False, page_size=100) try: list(stream.read_records(sync_mode=SyncMode.full_refresh, stream_state={})) - except FacebookRequestError: + except AirbyteTracedException: assert [x.qs.get("limit")[0] for x in res.request_history] == ["100", "100", "50", "25", "12", "6"] diff --git a/airbyte-integrations/connectors/source-facebook-marketing/unit_tests/test_errors.py b/airbyte-integrations/connectors/source-facebook-marketing/unit_tests/test_errors.py new file mode 100644 index 000000000000..fd7f9e5bd39b --- /dev/null +++ b/airbyte-integrations/connectors/source-facebook-marketing/unit_tests/test_errors.py @@ -0,0 +1,372 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + +import json +from datetime import datetime + +import pytest +from airbyte_cdk.models import FailureType, SyncMode +from airbyte_cdk.utils.traced_exception import AirbyteTracedException +from facebook_business import FacebookAdsApi, FacebookSession +from source_facebook_marketing.api import API +from source_facebook_marketing.streams import AdCreatives, AdsInsights + +FB_API_VERSION = FacebookAdsApi.API_VERSION + +account_id = 'unknown_account' +some_config = { + "start_date": "2021-01-23T00:00:00Z", + "account_id": account_id, + "access_token": "unknown_token" +} +act_url = f"{FacebookSession.GRAPH}/{FB_API_VERSION}/act_{account_id}/" + +ad_account_response = { + "json": { + "data": [{"account_id": account_id, "id": f"act_{account_id}"}], + "status_code": 200, + } +} +ad_creative_data = [ + {"id": "111111", "name": "ad creative 1", "updated_time": "2023-03-21T22:33:56-0700"}, + {"id": "222222", "name": "ad creative 2", "updated_time": "2023-03-22T22:33:56-0700"}, +] +ad_creative_response = { + "json": { + "data": ad_creative_data, + "status_code": 200, + } +} + +# "name, friendly_msg, config_error_response", +CONFIG_ERRORS = [ + ("error_400_validating_access_token_session_expired", + "Invalid access token. Re-authenticate if FB oauth is used or refresh access token with all required permissions", + { + "status_code": 400, + "json": { + "error": { + "message": "Error validating access token: Session has expired on Friday, 18-Aug", + "type": "OAuthException", + "code": 190, + "error_subcode": 463, + } + } + } + ), + ("error_400_validating_access_token_user_changed_their_password", + "Invalid access token. Re-authenticate if FB oauth is used or refresh access token with all required permissions", + { + "status_code": 400, + "json": { + "error": { + "message": "Error validating access token: The session has been invalidated because the user changed their password or Facebook has changed the session for security reasons", + "type": "OAuthException", + "code": 190, + "error_subcode": 460, + } + } + } + ), + ("error_400_validating_access_token_not_authorized_application", + "Invalid access token. Re-authenticate if FB oauth is used or refresh access token with all required permissions", + { + "status_code": 400, + "json": { + "error": { + "message": "Error validating access token: The user has not authorized application 2586347315015828.", + "type": "OAuthException", + "code": 190, + "error_subcode": 458, + "fbtrace_id": "A3pz5DCfhBg3mGCS6Z9z9zY" + } + } + } + ), + ("error_400_missing_permission", + "Credentials don't have enough permissions. Check if correct Ad Account Id is used (as in Ads Manager), re-authenticate if FB oauth is used or refresh access token with all required permissions", + { + "status_code": 400, + "json": { + "error": { + "message": "(#100) Missing permissions", + "type": "OAuthException", + "code": 100, + } + } + } + # Error randomly happens for different connections. + # Can be reproduced on https://developers.facebook.com/tools/explorer/?method=GET&path=act_&version=v17.0 + # 1st reason: incorrect ad account id is used + # 2nd reason: access_token does not have permissions: + # remove all permissions + # re-generate access token + # Re-authenticate (for cloud) or refresh access token (for oss) and check if all required permissions are granted + ), + ("error_403_requires_permission", + "Credentials don't have enough permissions. Re-authenticate if FB oauth is used or refresh access token with all required permissions.", + { + "status_code": 403, + "json": { + "error": { + "code": 200, + "message": "(#200) Requires business_management permission to manage the object", + } + } + } + ), + + ("error_400_permission_must_be_granted", + "Credentials don't have enough permissions. Re-authenticate if FB oauth is used or refresh access token with all required permissions.", + { + "status_code": 400, + "json": { + "error": { + "message": "Any of the pages_read_engagement, pages_manage_metadata,\n pages_read_user_content, pages_manage_ads, pages_show_list or\n pages_messaging permission(s) must be granted before impersonating a\n user's page.", + "type": "OAuthException", + "code": 190, + } + } + } + ), + ("error_unsupported_get_request", + "Credentials don't have enough permissions. Re-authenticate if FB oauth is used or refresh access token with all required permissions.", + { + "json": { + "error": { + "message": "Unsupported get request. Object with ID 'xxx' does not exist, cannot be loaded due to missing permissions, or does not support this operation. Please read the Graph API documentation at https://developers.facebook.com/docs/graph-api", + "type": "GraphMethodException", + "code": 100, + "error_subcode": 33, + "fbtrace_id": "A7qVRrTcBm8Pt6iUvnBrxwf" + } + }, + "status_code": 400, + } + ), + ("error_400_unknown_profile_is_no_linked", + "Current profile is not linked to delegate page. Check if correct business (not personal) Ad Account Id is used (as in Ads Manager), re-authenticate if FB oauth is used or refresh access token with all required permissions.", + { + "status_code": 400, + "json": { + "error": { + "message": "An unknown error occurred", + "type": "OAuthException", + "code": 1, + "error_subcode": 2853001, + "is_transient": False, + "error_user_title": "profile is not linked to delegate page", + "error_user_msg": "profile should always be linked to delegate page", + } + } + } + # Error happens on Video stream: https://graph.facebook.com/v17.0/act_XXXXXXXXXXXXXXXX/advideos + # Recommendations says that the problem can be fixed by switching to Business Ad Account Id + ), + ("error_400_unknown_profile_is_no_linked_es", + "Current profile is not linked to delegate page. Check if correct business (not personal) Ad Account Id is used (as in Ads Manager), re-authenticate if FB oauth is used or refresh access token with all required permissions.", + { + "status_code": 400, + "json": { + "error": { + "message": "An unknown error occurred", + "type": "OAuthException", + "code": 1, + "error_subcode": 2853001, + "is_transient": False, + "error_user_title": "el perfil no est\u00e1 vinculado a la p\u00e1gina del delegado", + "error_user_msg": "el perfil deber\u00eda estar siempre vinculado a la p\u00e1gina del delegado", + } + } + } + ), + # ("error_400_unsupported request", + # "Re-authenticate because current credential missing permissions", + # { + # "status_code": 400, + # "json": { + # "error": { + # "message": "Unsupported request - method type: get", + # "type": "GraphMethodException", + # "code": 100, + # } + # } + # } + # # for 'ad_account' stream, endpoint: https://graph.facebook.com/v17.0/act_1231630184301950/, + # # further attempts failed as well + # # previous sync of 'activities' stream was successfull + # # It seems like random problem: + # # - https://stackoverflow.com/questions/71195844/unsupported-request-method-type-get + # # "Same issue, but it turned out to be caused by Facebook (confirmed by their employee). A few hours later, the Graph API returned to normal without any action taken." + # # - https://developers.facebook.com/community/threads/805349521160054/ + # # "following, I've bein getting this error too, since last week, randomly." + # + # + # # https://developers.facebook.com/community/threads/1232870724022634/ + # # I observed that if I remove preview_shareable_link field from the request, the code is working properly. + # + # ), +] + + +class TestRealErrors: + @pytest.mark.parametrize( + "name, retryable_error_response", + [ + ("error_400_too_many_calls", + { + "json": { + "error": { + "message": ( + "(#80000) There have been too many calls from this ad-account. Wait a bit and try again. " + "For more info, please refer to https://developers.facebook.com/docs/graph-api/overview/rate-limiting." + ), + "type": "OAuthException", + "code": 80000, + "error_subcode": 2446079, + "fbtrace_id": "this_is_fake_response", + }, + }, + "status_code": 400, + "headers": {"x-app-usage": json.dumps({"call_count": 28, "total_time": 25, "total_cputime": 25})}, + } + ), + ("error_500_unknown", + { + "json": { + "error": { + "code": 1, + "message": "An unknown error occurred", + "error_subcode": 99 + } + }, + "status_code": 500, + } + ), + ("error_400_service_temporarily_unavailable", + { + "status_code": 400, + "json": { + "error": { + "message": "(#2) Service temporarily unavailable", + "type": "OAuthException", + "is_transient": True, + "code": 2, + "fbtrace_id": "AnUyGZoFqN2m50GHVpOQEqr" + } + } + } + ), + ("error_500_reduce_the_amount_of_data", + { + "status_code": 500, + "json": { + "error": { + "message": "Please reduce the amount of data you're asking for, then retry your request", + "code": 1, + } + } + } + # It can be a temporal problem: + # Happened during 'ad_account' stream sync which always returns only 1 record. + # Potentially could be caused by some particular field (list of requested fields is constant). + # But since sync was successful on next attempt, then conclusion is that this is a temporal problem. + ) + ] + ) + def test_retryable_error(self, some_config, requests_mock, name, retryable_error_response): + """Error once, check that we retry and not fail""" + requests_mock.reset_mock() + requests_mock.register_uri("GET", f"{act_url}", [retryable_error_response, ad_account_response]) + requests_mock.register_uri("GET", f"{act_url}adcreatives", [retryable_error_response, ad_creative_response]) + + api = API(account_id=some_config["account_id"], access_token=some_config["access_token"], page_size=100) + stream = AdCreatives(api=api, include_deleted=False) + ad_creative_records = list(stream.read_records(sync_mode=SyncMode.full_refresh, stream_state={})) + + assert ad_creative_records == ad_creative_data + + # requests_mock.register_uri("GET", f"{self.act_url}advideos", [error_400_service_temporarily_unavailable, ad_creative_response]) + # stream = Videos(api=api, start_date=pendulum.now(), end_date=pendulum.now(), include_deleted=False, page_size=100) + + @pytest.mark.parametrize("name, friendly_msg, config_error_response", CONFIG_ERRORS) + def test_config_error_during_account_info_read(self, requests_mock, name, friendly_msg, config_error_response): + """Error raised during account info read""" + + api = API(account_id=some_config["account_id"], access_token=some_config["access_token"], page_size=100) + stream = AdCreatives(api=api, include_deleted=False) + + requests_mock.register_uri("GET", f"{act_url}", [config_error_response, ad_account_response]) + try: + list(stream.read_records(sync_mode=SyncMode.full_refresh, stream_state={})) + assert False + except Exception as error: + assert isinstance(error, AirbyteTracedException) + assert error.failure_type == FailureType.config_error + assert friendly_msg in error.message + + # @pytest.mark.parametrize("name, friendly_msg, config_error_response", [CONFIG_ERRORS[-1]]) + @pytest.mark.parametrize("name, friendly_msg, config_error_response", CONFIG_ERRORS) + def test_config_error_during_actual_nodes_read(self, requests_mock, name, friendly_msg, config_error_response): + """Error raised during actual nodes read""" + + api = API(account_id=some_config["account_id"], access_token=some_config["access_token"], page_size=100) + stream = AdCreatives(api=api, include_deleted=False) + + requests_mock.register_uri("GET", f"{act_url}", [ad_account_response]) + requests_mock.register_uri("GET", f"{act_url}adcreatives", [config_error_response, ad_creative_response]) + try: + list(stream.read_records(sync_mode=SyncMode.full_refresh, stream_state={})) + assert False + except Exception as error: + assert isinstance(error, AirbyteTracedException) + assert error.failure_type == FailureType.config_error + assert friendly_msg in error.message + + @pytest.mark.parametrize("name, friendly_msg, config_error_response", CONFIG_ERRORS) + def test_config_error_insights_account_info_read(self, requests_mock, name, friendly_msg, config_error_response): + """Error raised during actual nodes read""" + + api = API(account_id=some_config["account_id"], access_token=some_config["access_token"], page_size=100) + stream = AdsInsights( + api=api, + start_date=datetime(2010, 1, 1), + end_date=datetime(2011, 1, 1), + fields=["account_id", "account_currency"], + insights_lookback_window=28, + ) + requests_mock.register_uri("GET", f"{act_url}", [config_error_response, ad_account_response]) + try: + slice = list(stream.stream_slices(sync_mode=SyncMode.full_refresh, stream_state={}))[0] + list(stream.read_records(sync_mode=SyncMode.full_refresh, stream_slice=slice, stream_state={})) + assert False + except Exception as error: + assert isinstance(error, AirbyteTracedException) + assert error.failure_type == FailureType.config_error + assert friendly_msg in error.message + + @pytest.mark.parametrize("name, friendly_msg, config_error_response", [CONFIG_ERRORS[0]]) + def test_config_error_insights_during_actual_nodes_read(self, requests_mock, name, friendly_msg, + config_error_response): + """Error raised during actual nodes read""" + + api = API(account_id=some_config["account_id"], access_token=some_config["access_token"], page_size=100) + stream = AdsInsights( + api=api, + start_date=datetime(2010, 1, 1), + end_date=datetime(2011, 1, 1), + fields=["account_id", "account_currency"], + insights_lookback_window=28, + ) + requests_mock.register_uri("GET", f"{act_url}", [ad_account_response]) + requests_mock.register_uri("GET", f"{act_url}insights", [config_error_response, ad_creative_response]) + + try: + slice = list(stream.stream_slices(sync_mode=SyncMode.full_refresh, stream_state={}))[0] + list(stream.read_records(sync_mode=SyncMode.full_refresh, stream_slice=slice, stream_state={})) + assert False + except Exception as error: + assert isinstance(error, AirbyteTracedException) + assert error.failure_type == FailureType.config_error + assert friendly_msg in error.message diff --git a/airbyte-integrations/connectors/source-facebook-marketing/unit_tests/test_source.py b/airbyte-integrations/connectors/source-facebook-marketing/unit_tests/test_source.py index 0f614bb6ef02..a410b185aa3c 100644 --- a/airbyte-integrations/connectors/source-facebook-marketing/unit_tests/test_source.py +++ b/airbyte-integrations/connectors/source-facebook-marketing/unit_tests/test_source.py @@ -10,7 +10,6 @@ from facebook_business import FacebookAdsApi, FacebookSession from source_facebook_marketing import SourceFacebookMarketing from source_facebook_marketing.spec import ConnectorConfig -from source_facebook_marketing.streams.common import AccountTypeException from .utils import command_check @@ -23,7 +22,8 @@ def config_fixture(requests_mock): "start_date": "2019-10-10T00:00:00Z", "end_date": "2020-10-10T00:00:00Z", } - requests_mock.register_uri("GET", FacebookSession.GRAPH + f"/{FacebookAdsApi.API_VERSION}/act_123/", {}) + requests_mock.register_uri("GET", FacebookSession.GRAPH + f"/{FacebookAdsApi.API_VERSION}/me/business_users", json={"data": []}) + requests_mock.register_uri("GET", FacebookSession.GRAPH + f"/{FacebookAdsApi.API_VERSION}/act_123/", json={"account": 123}) return config @@ -75,7 +75,7 @@ def test_check_connection_end_date_before_start_date(self, api, config, logger_m config["end_date"] = "2019-10-09T00:00:00" assert fb_marketing.check_connection(logger_mock, config=config) == ( False, - "end_date must be equal or after start_date.", + "End date must be equal or after start date.", ) def test_check_connection_empty_config(self, api, logger_mock, fb_marketing): @@ -95,8 +95,10 @@ def test_check_connection_invalid_config(self, api, config, logger_mock, fb_mark def test_check_connection_exception(self, api, config, logger_mock, fb_marketing): api.side_effect = RuntimeError("Something went wrong!") - with pytest.raises(RuntimeError, match="Something went wrong!"): - fb_marketing.check_connection(logger_mock, config=config) + ok, error_msg = fb_marketing.check_connection(logger_mock, config=config) + + assert not ok + assert error_msg == "Unexpected error: RuntimeError('Something went wrong!')" def test_streams(self, config, api, fb_marketing): streams = fb_marketing.streams(config) @@ -144,19 +146,26 @@ def test_check_config(config_gen, requests_mock, fb_marketing): status = command_check(fb_marketing, config_gen(end_date="2019-99-10T00:00:00Z")) assert status.status == Status.FAILED - with pytest.raises(Exception): - assert command_check(fb_marketing, config_gen(start_date=...)) + status = command_check(fb_marketing, config_gen(start_date=...)) + assert status.status == Status.SUCCEEDED assert command_check(fb_marketing, config_gen(end_date=...)) == AirbyteConnectionStatus(status=Status.SUCCEEDED, message=None) assert command_check(fb_marketing, config_gen(end_date="")) == AirbyteConnectionStatus(status=Status.SUCCEEDED, message=None) -def test_check_connection_account_type_exception(mocker, fb_marketing, config, logger_mock): - api_mock = mocker.Mock() - api_mock.account.api_get.return_value = {"account": 123, "is_personal": 1} - mocker.patch('source_facebook_marketing.source.API', return_value=api_mock) +def test_check_connection_account_type_exception(mocker, fb_marketing, config, logger_mock, requests_mock): + account_id = '123' + ad_account_response = { + "json": { + "account_id": account_id, + "id": f"act_{account_id}", + 'is_personal': 1 + } + } + requests_mock.reset_mock() + requests_mock.register_uri("GET", f"{FacebookSession.GRAPH}/{FacebookAdsApi.API_VERSION}/act_123/", [ad_account_response]) result, error = fb_marketing.check_connection(logger=logger_mock, config=config) assert not result - assert isinstance(error, AccountTypeException) + assert error == "The personal ad account you're currently using is not eligible for this operation. Please switch to a business ad account." diff --git a/airbyte-integrations/connectors/source-facebook-pages/metadata.yaml b/airbyte-integrations/connectors/source-facebook-pages/metadata.yaml index 510bf9e10a33..beb28cfda5ac 100644 --- a/airbyte-integrations/connectors/source-facebook-pages/metadata.yaml +++ b/airbyte-integrations/connectors/source-facebook-pages/metadata.yaml @@ -1,4 +1,7 @@ data: + ab_internal: + ql: 300 + sl: 100 allowedHosts: hosts: - graph.facebook.com @@ -7,6 +10,7 @@ data: definitionId: 010eb12f-837b-4685-892d-0a39f76a98f5 dockerImageTag: 0.3.0 dockerRepository: airbyte/source-facebook-pages + documentationUrl: https://docs.airbyte.com/integrations/sources/facebook-pages githubIssueLabel: source-facebook-pages icon: facebook.svg license: ELv2 @@ -17,12 +21,8 @@ data: oss: enabled: true releaseStage: beta - documentationUrl: https://docs.airbyte.com/integrations/sources/facebook-pages + supportLevel: community tags: - language:low-code - language:python - ab_internal: - sl: 200 - ql: 300 - supportLevel: certified metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-faker/metadata.yaml b/airbyte-integrations/connectors/source-faker/metadata.yaml index 1d1a3bfffae2..83aa3520b711 100644 --- a/airbyte-integrations/connectors/source-faker/metadata.yaml +++ b/airbyte-integrations/connectors/source-faker/metadata.yaml @@ -1,4 +1,7 @@ data: + ab_internal: + ql: 300 + sl: 100 allowedHosts: hosts: [] connectorSubtype: api @@ -6,6 +9,7 @@ data: definitionId: dfd88b22-b603-4c3d-aad7-3701784586b1 dockerImageTag: 5.0.0 dockerRepository: airbyte/source-faker + documentationUrl: https://docs.airbyte.com/integrations/sources/faker githubIssueLabel: source-faker icon: faker.svg license: MIT @@ -16,6 +20,16 @@ data: oss: enabled: true releaseStage: beta + releases: + breakingChanges: + 4.0.0: + message: This is a breaking change message + upgradeDeadline: "2023-07-19" + 5.0.0: + message: + ID and products.year fields are changing to be integers instead of + floats. + upgradeDeadline: "2023-08-31" resourceRequirements: jobSpecific: - jobType: sync @@ -27,21 +41,7 @@ data: - users - products - purchases - documentationUrl: https://docs.airbyte.com/integrations/sources/faker + supportLevel: community tags: - language:python - releases: - breakingChanges: - 5.0.0: - message: - "ID and products.year fields are changing to be integers instead - of floats." - upgradeDeadline: "2023-08-31" - 4.0.0: - message: "This is a breaking change message" - upgradeDeadline: "2023-07-19" - ab_internal: - sl: 200 - ql: 300 - supportLevel: certified metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-freshsales/metadata.yaml b/airbyte-integrations/connectors/source-freshsales/metadata.yaml index 4b9db49454b2..a3fe07521671 100644 --- a/airbyte-integrations/connectors/source-freshsales/metadata.yaml +++ b/airbyte-integrations/connectors/source-freshsales/metadata.yaml @@ -1,4 +1,7 @@ data: + ab_internal: + ql: 300 + sl: 100 allowedHosts: hosts: - "*.myfreshworks.com" @@ -7,6 +10,7 @@ data: definitionId: eca08d79-7b92-4065-b7f3-79c14836ebe7 dockerImageTag: 0.1.4 dockerRepository: airbyte/source-freshsales + documentationUrl: https://docs.airbyte.com/integrations/sources/freshsales githubIssueLabel: source-freshsales icon: freshsales.svg license: MIT @@ -17,11 +21,7 @@ data: oss: enabled: true releaseStage: beta - documentationUrl: https://docs.airbyte.com/integrations/sources/freshsales + supportLevel: community tags: - language:python - ab_internal: - sl: 200 - ql: 300 - supportLevel: certified metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-github/acceptance-test-config.yml b/airbyte-integrations/connectors/source-github/acceptance-test-config.yml index ef37bf639fff..d33b304857d1 100644 --- a/airbyte-integrations/connectors/source-github/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-github/acceptance-test-config.yml @@ -84,32 +84,6 @@ acceptance_tests: configured_catalog_path: "integration_tests/configured_catalog.json" future_state: future_state_path: "integration_tests/abnormal_state.json" - cursor_paths: - comments: ["airbytehq/integration-test", "updated_at"] - commit_comment_reactions: ["airbytehq/integration-test", "55538825", "created_at"] - commit_comments: ["airbytehq/integration-test", "updated_at"] - commits: ["airbytehq/integration-test", "master", "created_at"] - deployments: ["airbytehq/integration-test", "updated_at"] - events: ["airbytehq/integration-test", "created_at"] - issue_comment_reactions: ["airbytehq/integration-test", "907296275", "created_at"] - issue_events: ["airbytehq/integration-test", "created_at"] - issue_milestones: ["airbytehq/integration-test", "updated_at"] - issue_reactions: ["airbytehq/integration-test", "created_at"] - issues: ["airbytehq/integration-test", "updated_at"] - project_cards: ["airbytehq/integration-test", "13167124", "17807006", "updated_at"] - project_columns: ["airbytehq/integration-test", "13167124", "updated_at"] - projects: ["airbytehq/integration-test", "updated_at"] - pull_request_comment_reactions: ["airbytehq/integration-test", "699253726", "created_at"] - pull_request_stats: ["airbytehq/integration-test", "updated_at"] - pull_requests: ["airbytehq/integration-test", "updated_at"] - releases: ["airbytehq/integration-test", "created_at"] - repositories: ["airbytehq", "updated_at"] - review_comments: ["airbytehq/integration-test", "updated_at"] - reviews: ["airbytehq/integration-test", "updated_at"] - stargazers: ["airbytehq/integration-test", "starred_at"] - workflow_runs: ["airbytehq/integration-test", "updated_at"] - workflows: ["airbytehq/integration-test", "updated_at"] - workflow_jobs: ["airbytehq/integration-test", "completed_at"] full_refresh: tests: - config_path: "secrets/config.json" diff --git a/airbyte-integrations/connectors/source-gitlab/acceptance-test-config.yml b/airbyte-integrations/connectors/source-gitlab/acceptance-test-config.yml index df414a0a2876..79ce704ab9c0 100644 --- a/airbyte-integrations/connectors/source-gitlab/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-gitlab/acceptance-test-config.yml @@ -55,11 +55,6 @@ acceptance_tests: configured_catalog_path: "integration_tests/incremental_catalog.json" future_state: future_state_path: "integration_tests/abnormal_state.json" - cursor_paths: - commits: ["25157276", "created_at"] - issues: ["25157276", "updated_at"] - merge_requests: ["25157276", "updated_at"] - pipelines: ["25157276", "updated_at"] full_refresh: tests: - config_path: "secrets/config.json" diff --git a/airbyte-integrations/connectors/source-google-ads/Dockerfile b/airbyte-integrations/connectors/source-google-ads/Dockerfile index 6727c54ae432..b6fdc2fe2bd8 100644 --- a/airbyte-integrations/connectors/source-google-ads/Dockerfile +++ b/airbyte-integrations/connectors/source-google-ads/Dockerfile @@ -13,5 +13,5 @@ COPY main.py ./ ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=0.7.4 +LABEL io.airbyte.version=0.9.0 LABEL io.airbyte.name=airbyte/source-google-ads diff --git a/airbyte-integrations/connectors/source-google-ads/acceptance-test-config.yml b/airbyte-integrations/connectors/source-google-ads/acceptance-test-config.yml index f0c3f9051b53..310b1f7712c8 100644 --- a/airbyte-integrations/connectors/source-google-ads/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-google-ads/acceptance-test-config.yml @@ -20,51 +20,49 @@ acceptance_tests: - config_path: "secrets/config.json" expect_records: path: "integration_tests/expected_records.jsonl" - timeout_seconds: 600 + timeout_seconds: 3600 empty_streams: - - name: "accounts" - bypass_reason: "Floating data" - - name: "display_topics_performance_report" - bypass_reason: "Stream not filled yet." - name: "account_labels" - bypass_reason: "Unable to seed the stream" - - name: "ad_group_criterion_labels" - bypass_reason: "Unable to seed the stream" + bypass_reason: "Data is present in UI, but not in API: supposedly insufficient permissions" + - name: "shopping_performance_report" + bypass_reason: "No shopping campaign, need item for sale" + - name: "display_topics_performance_report" + bypass_reason: "No data for this date range, tested in next config" - name: "click_view" - bypass_reason: "Stream not filled yet." - - name: "unhappytable" - bypass_reason: "Stream not filled yet." + bypass_reason: "Stream has data only for last 90 days, next config is used for testing it" + ignored_fields: + accounts: + - name: customer.optimization_score_weight + bypass_reason: "Value can be updated by Google Ads" + - name: customer.optimization_score + bypass_reason: "Value can be updated by Google Ads" + - config_path: "secrets/config_click_view.json" + expect_records: + path: "integration_tests/expected_records_click.jsonl" + timeout_seconds: 3600 + empty_streams: + - name: "account_labels" + bypass_reason: "Data is present in UI, but not in API: supposedly insufficient permissions" - name: "shopping_performance_report" - bypass_reason: "Stream not filled yet." + bypass_reason: "No shopping campaign, need item for sale" + - name: "display_keyword_performance_report" + bypass_reason: "No data for this date range, tested in previous config" + - name: "keyword_report" + bypass_reason: "No data for this date range, tested in previous config" + ignored_fields: + accounts: + - name: customer.optimization_score_weight + bypass_reason: "Value can be updated by Google Ads" + - name: customer.optimization_score + bypass_reason: "Value can be updated by Google Ads" full_refresh: tests: - config_path: "secrets/config.json" configured_catalog_path: "integration_tests/configured_catalog.json" - - config_path: "secrets/config_with_gaql.json" - configured_catalog_path: "integration_tests/configured_catalog_with_gaql_only.json" - # This config allows to read from the click_view stream which is empty in other configs. - # It should be tested anyway because it has different date range compared to other streams. - - config_path: "secrets/config_click_view.json" - configured_catalog_path: "integration_tests/configured_catalog_with_click_view.json" incremental: tests: - config_path: "secrets/incremental_config.json" + timeout_seconds: 3600 configured_catalog_path: "integration_tests/incremental_catalog.json" - threshold_days: 14 future_state: future_state_path: "integration_tests/abnormal_state.json" - cursor_paths: - account_performance_report: ["4651612872", "segments.date"] - click_view: ["4651612872", "segments.date"] - geographic_report: ["4651612872", "segments.date"] - keyword_report: ["4651612872", "segments.date"] - display_topics_performance_report: ["4651612872", "segments.date"] - shopping_performance_report: ["4651612872", "segments.date"] - ad_group_ads: ["4651612872", "segments.date"] - ad_groups: ["4651612872", "segments.date"] - accounts: ["4651612872", "segments.date"] - campaigns: ["4651612872", "segments.date"] - campaign_budget: ["4651612872", "segments.date"] - user_location_report: ["4651612872", "segments.date"] - ad_group_ad_report: ["4651612872", "segments.date"] - display_keyword_performance_report: ["4651612872", "segments.date"] diff --git a/airbyte-integrations/connectors/source-google-ads/integration_tests/abnormal_state.json b/airbyte-integrations/connectors/source-google-ads/integration_tests/abnormal_state.json index 939fc0556265..02b4a0ce83fc 100644 --- a/airbyte-integrations/connectors/source-google-ads/integration_tests/abnormal_state.json +++ b/airbyte-integrations/connectors/source-google-ads/integration_tests/abnormal_state.json @@ -110,5 +110,31 @@ "stream_state": { "4651612872": { "segments.date": "2222-01-01" } }, "stream_descriptor": { "name": "ad_group_bidding_strategies" } } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "change_status": { + "4651612872": { + "change_status.last_change_date_time": "2024-08-16 13:20:01.003295" + } + } + }, + "stream_descriptor": { "name": "ad_group_criterions" } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "change_status": { + "4651612872": { + "change_status.last_change_date_time": "2024-08-16 13:20:01.003295" + } + } + }, + "stream_descriptor": { "name": "campaign_criterion" } + } } ] diff --git a/airbyte-integrations/connectors/source-google-ads/integration_tests/configured_catalog.json b/airbyte-integrations/connectors/source-google-ads/integration_tests/configured_catalog.json index 7e19621f3bb4..a7f12b095ec5 100644 --- a/airbyte-integrations/connectors/source-google-ads/integration_tests/configured_catalog.json +++ b/airbyte-integrations/connectors/source-google-ads/integration_tests/configured_catalog.json @@ -12,6 +12,23 @@ "destination_sync_mode": "overwrite", "cursor_field": ["segments.date"] }, + { + "stream": { + "name": "campaign_budget", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["segments.date"], + "source_defined_primary_key": [ + ["campaign_budget.id"], + ["segments.date"] + ] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "cursor_field": ["segments.date"], + "primary_key": [["campaign_budget.id"], ["segments.date"]] + }, { "stream": { "name": "ad_group_custom", @@ -226,18 +243,6 @@ "destination_sync_mode": "overwrite", "cursor_field": ["segments.date"] }, - { - "stream": { - "name": "unhappytable", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "default_cursor_field": ["segments.date"] - }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["segments.date"] - }, { "stream": { "name": "custom_audience", @@ -335,29 +340,23 @@ "stream": { "name": "ad_group_criterions", "json_schema": {}, - "supported_sync_modes": ["full_refresh"], - "source_defined_primary_key": [ - ["ad_group.id"], - ["ad_group_criterion.criterion_id"] - ] + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_primary_key": [["ad_group_criterion.resource_name"]] }, - "sync_mode": "full_refresh", + "sync_mode": "incremental", "destination_sync_mode": "overwrite", - "primary_key": [["ad_group.id"], ["ad_group_criterion.criterion_id"]] + "primary_key": [["ad_group_criterion.resource_name"]] }, { "stream": { "name": "ad_listing_group_criterions", "json_schema": {}, "supported_sync_modes": ["full_refresh"], - "source_defined_primary_key": [ - ["ad_group.id"], - ["ad_group_criterion.criterion_id"] - ] + "source_defined_primary_key": [["ad_group_criterion.resource_name"]] }, "sync_mode": "full_refresh", "destination_sync_mode": "overwrite", - "primary_key": [["ad_group.id"], ["ad_group_criterion.criterion_id"]] + "primary_key": [["ad_group_criterion.resource_name"]] }, { "stream": { @@ -371,6 +370,17 @@ "sync_mode": "full_refresh", "destination_sync_mode": "overwrite", "primary_key": [["ad_group_criterion_label.resource_name"]] + }, + { + "stream": { + "name": "campaign_criterion", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_primary_key": [["campaign_criterion.resource_name"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["campaign_criterion.resource_name"]] } ] } diff --git a/airbyte-integrations/connectors/source-google-ads/integration_tests/expected_records.jsonl b/airbyte-integrations/connectors/source-google-ads/integration_tests/expected_records.jsonl index 830126123dfc..21bc17c2353e 100644 --- a/airbyte-integrations/connectors/source-google-ads/integration_tests/expected_records.jsonl +++ b/airbyte-integrations/connectors/source-google-ads/integration_tests/expected_records.jsonl @@ -1,100 +1,70 @@ -{"stream": "account_performance_report", "data": {"customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 0.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "segments.ad_network_type": "SEARCH", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 0.0, "metrics.average_cpv": 0.0, "customer.manager": false, "metrics.clicks": 0, "metrics.content_budget_lost_impression_share": 0.0, "metrics.content_impression_share": 0.0, "metrics.content_rank_lost_impression_share": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 0, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "segments.date": "2022-04-08", "segments.day_of_week": "FRIDAY", "segments.device": "DESKTOP", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "customer.id": 4651612872, "metrics.impressions": 0, "metrics.interaction_rate": 0.0, "metrics.interaction_event_types": [], "metrics.interactions": 0, "customer.auto_tagging_enabled": true, "customer.test_account": false, "segments.month": "2022-04-01", "segments.quarter": "2022-04-01", "metrics.search_budget_lost_impression_share": 0.9001, "metrics.search_exact_match_impression_share": 0.0, "metrics.search_impression_share": 0.0999, "metrics.search_rank_lost_impression_share": 0.0, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2022-04-04", "segments.year": 2022}, "emitted_at": 1671617272961} -{"stream": "account_performance_report", "data": {"customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 0.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "segments.ad_network_type": "SEARCH", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 0.0, "metrics.average_cpv": 0.0, "customer.manager": false, "metrics.clicks": 0, "metrics.content_budget_lost_impression_share": 0.0, "metrics.content_impression_share": 0.0, "metrics.content_rank_lost_impression_share": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 0, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "segments.date": "2022-04-08", "segments.day_of_week": "FRIDAY", "segments.device": "MOBILE", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "customer.id": 4651612872, "metrics.impressions": 2, "metrics.interaction_rate": 0.0, "metrics.interaction_event_types": [], "metrics.interactions": 0, "customer.auto_tagging_enabled": true, "customer.test_account": false, "segments.month": "2022-04-01", "segments.quarter": "2022-04-01", "metrics.search_budget_lost_impression_share": 0.9001, "metrics.search_exact_match_impression_share": 0.0, "metrics.search_impression_share": 0.0999, "metrics.search_rank_lost_impression_share": 0.0, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2022-04-04", "segments.year": 2022}, "emitted_at": 1671617272966} -{"stream": "account_performance_report", "data": {"customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 0.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "segments.ad_network_type": "SEARCH", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 0.0, "metrics.average_cpv": 0.0, "customer.manager": false, "metrics.clicks": 0, "metrics.content_budget_lost_impression_share": 0.0, "metrics.content_impression_share": 0.0, "metrics.content_rank_lost_impression_share": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 0, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "segments.date": "2022-04-09", "segments.day_of_week": "SATURDAY", "segments.device": "DESKTOP", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "customer.id": 4651612872, "metrics.impressions": 28, "metrics.interaction_rate": 0.0, "metrics.interaction_event_types": [], "metrics.interactions": 0, "customer.auto_tagging_enabled": true, "customer.test_account": false, "segments.month": "2022-04-01", "segments.quarter": "2022-04-01", "metrics.search_budget_lost_impression_share": 0.6618578465869106, "metrics.search_exact_match_impression_share": 0.0999, "metrics.search_impression_share": 0.0999, "metrics.search_rank_lost_impression_share": 0.3282899366643209, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2022-04-04", "segments.year": 2022}, "emitted_at": 1671617272971} -{"stream": "account_performance_report", "data": {"customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 0.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "segments.ad_network_type": "SEARCH", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "metrics.average_cost": 70000.0, "metrics.average_cpc": 70000.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 1014492.7536231884, "metrics.average_cpv": 0.0, "customer.manager": false, "metrics.clicks": 1, "metrics.content_budget_lost_impression_share": 0.0, "metrics.content_impression_share": 0.0, "metrics.content_rank_lost_impression_share": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 70000, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.014492753623188406, "segments.date": "2022-04-09", "segments.day_of_week": "SATURDAY", "segments.device": "MOBILE", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "customer.id": 4651612872, "metrics.impressions": 69, "metrics.interaction_rate": 0.014492753623188406, "metrics.interaction_event_types": ["InteractionEventType.CLICK"], "metrics.interactions": 1, "customer.auto_tagging_enabled": true, "customer.test_account": false, "segments.month": "2022-04-01", "segments.quarter": "2022-04-01", "metrics.search_budget_lost_impression_share": 0.6715465465465466, "metrics.search_exact_match_impression_share": 0.0999, "metrics.search_impression_share": 0.0999, "metrics.search_rank_lost_impression_share": 0.30255255255255253, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2022-04-04", "segments.year": 2022}, "emitted_at": 1671617272975} -{"stream": "account_performance_report", "data": {"customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 0.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "segments.ad_network_type": "SEARCH", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 0.0, "metrics.average_cpv": 0.0, "customer.manager": false, "metrics.clicks": 0, "metrics.content_budget_lost_impression_share": 0.0, "metrics.content_impression_share": 0.0, "metrics.content_rank_lost_impression_share": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 0, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "segments.date": "2022-04-09", "segments.day_of_week": "SATURDAY", "segments.device": "TABLET", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "customer.id": 4651612872, "metrics.impressions": 1, "metrics.interaction_rate": 0.0, "metrics.interaction_event_types": [], "metrics.interactions": 0, "customer.auto_tagging_enabled": true, "customer.test_account": false, "segments.month": "2022-04-01", "segments.quarter": "2022-04-01", "metrics.search_budget_lost_impression_share": 0.8473282442748091, "metrics.search_exact_match_impression_share": 0.0999, "metrics.search_impression_share": 0.0999, "metrics.search_rank_lost_impression_share": 0.1450381679389313, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2022-04-04", "segments.year": 2022}, "emitted_at": 1671617272980} -{"stream": "account_performance_report", "data": {"customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 0.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "segments.ad_network_type": "SEARCH_PARTNERS", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 0.0, "metrics.average_cpv": 0.0, "customer.manager": false, "metrics.clicks": 0, "metrics.content_budget_lost_impression_share": 0.0, "metrics.content_impression_share": 0.0, "metrics.content_rank_lost_impression_share": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 0, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "segments.date": "2022-04-09", "segments.day_of_week": "SATURDAY", "segments.device": "DESKTOP", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "customer.id": 4651612872, "metrics.impressions": 15, "metrics.interaction_rate": 0.0, "metrics.interaction_event_types": [], "metrics.interactions": 0, "customer.auto_tagging_enabled": true, "customer.test_account": false, "segments.month": "2022-04-01", "segments.quarter": "2022-04-01", "metrics.search_budget_lost_impression_share": 0.0, "metrics.search_exact_match_impression_share": 0.0, "metrics.search_impression_share": 0.0, "metrics.search_rank_lost_impression_share": 0.0, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2022-04-04", "segments.year": 2022}, "emitted_at": 1671617272984} -{"stream": "account_performance_report", "data": {"customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 0.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "segments.ad_network_type": "SEARCH_PARTNERS", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 0.0, "metrics.average_cpv": 0.0, "customer.manager": false, "metrics.clicks": 0, "metrics.content_budget_lost_impression_share": 0.0, "metrics.content_impression_share": 0.0, "metrics.content_rank_lost_impression_share": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 0, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "segments.date": "2022-04-09", "segments.day_of_week": "SATURDAY", "segments.device": "MOBILE", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "customer.id": 4651612872, "metrics.impressions": 26, "metrics.interaction_rate": 0.0, "metrics.interaction_event_types": [], "metrics.interactions": 0, "customer.auto_tagging_enabled": true, "customer.test_account": false, "segments.month": "2022-04-01", "segments.quarter": "2022-04-01", "metrics.search_budget_lost_impression_share": 0.0, "metrics.search_exact_match_impression_share": 0.0, "metrics.search_impression_share": 0.0, "metrics.search_rank_lost_impression_share": 0.0, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2022-04-04", "segments.year": 2022}, "emitted_at": 1671617272987} -{"stream": "account_performance_report", "data": {"customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 0.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "segments.ad_network_type": "SEARCH_PARTNERS", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 0.0, "metrics.average_cpv": 0.0, "customer.manager": false, "metrics.clicks": 0, "metrics.content_budget_lost_impression_share": 0.0, "metrics.content_impression_share": 0.0, "metrics.content_rank_lost_impression_share": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 0, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "segments.date": "2022-04-09", "segments.day_of_week": "SATURDAY", "segments.device": "TABLET", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "customer.id": 4651612872, "metrics.impressions": 3, "metrics.interaction_rate": 0.0, "metrics.interaction_event_types": [], "metrics.interactions": 0, "customer.auto_tagging_enabled": true, "customer.test_account": false, "segments.month": "2022-04-01", "segments.quarter": "2022-04-01", "metrics.search_budget_lost_impression_share": 0.0, "metrics.search_exact_match_impression_share": 0.0, "metrics.search_impression_share": 0.0, "metrics.search_rank_lost_impression_share": 0.0, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2022-04-04", "segments.year": 2022}, "emitted_at": 1671617272990} -{"stream": "account_performance_report", "data": {"customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 0.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "segments.ad_network_type": "SEARCH", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "metrics.average_cost": 262000.0, "metrics.average_cpc": 262000.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 93571428.57142857, "metrics.average_cpv": 0.0, "customer.manager": false, "metrics.clicks": 5, "metrics.content_budget_lost_impression_share": 0.0, "metrics.content_impression_share": 0.0, "metrics.content_rank_lost_impression_share": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 1310000, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.35714285714285715, "segments.date": "2022-04-10", "segments.day_of_week": "SUNDAY", "segments.device": "DESKTOP", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "customer.id": 4651612872, "metrics.impressions": 14, "metrics.interaction_rate": 0.35714285714285715, "metrics.interaction_event_types": ["InteractionEventType.CLICK"], "metrics.interactions": 5, "customer.auto_tagging_enabled": true, "customer.test_account": false, "segments.month": "2022-04-01", "segments.quarter": "2022-04-01", "metrics.search_budget_lost_impression_share": 0.6144693003331747, "metrics.search_exact_match_impression_share": 0.12244897959183673, "metrics.search_impression_share": 0.0999, "metrics.search_rank_lost_impression_share": 0.378867206092337, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2022-04-04", "segments.year": 2022}, "emitted_at": 1671617272992} -{"stream": "account_performance_report", "data": {"customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 0.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "segments.ad_network_type": "SEARCH", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "metrics.average_cost": 30000.0, "metrics.average_cpc": 30000.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 2195121.951219512, "metrics.average_cpv": 0.0, "customer.manager": false, "metrics.clicks": 3, "metrics.content_budget_lost_impression_share": 0.0, "metrics.content_impression_share": 0.0, "metrics.content_rank_lost_impression_share": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 90000, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.07317073170731707, "segments.date": "2022-04-10", "segments.day_of_week": "SUNDAY", "segments.device": "MOBILE", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "customer.id": 4651612872, "metrics.impressions": 41, "metrics.interaction_rate": 0.07317073170731707, "metrics.interaction_event_types": ["InteractionEventType.CLICK"], "metrics.interactions": 3, "customer.auto_tagging_enabled": true, "customer.test_account": false, "segments.month": "2022-04-01", "segments.quarter": "2022-04-01", "metrics.search_budget_lost_impression_share": 0.628, "metrics.search_exact_match_impression_share": 0.0999, "metrics.search_impression_share": 0.0999, "metrics.search_rank_lost_impression_share": 0.3556, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2022-04-04", "segments.year": 2022}, "emitted_at": 1671617272994} -{"stream": "geographic_report", "data": {"customer.descriptive_name": "", "geographic_view.country_criterion_id": 2124, "geographic_view.location_type": "LOCATION_OF_PRESENCE", "ad_group.id": 137051662444, "segments.date": "2022-04-08"}, "emitted_at": 1671617280435} -{"stream": "geographic_report", "data": {"customer.descriptive_name": "", "geographic_view.country_criterion_id": 2840, "geographic_view.location_type": "AREA_OF_INTEREST", "ad_group.id": 137020701042, "segments.date": "2022-04-09"}, "emitted_at": 1671617280437} -{"stream": "geographic_report", "data": {"customer.descriptive_name": "", "geographic_view.country_criterion_id": 2124, "geographic_view.location_type": "LOCATION_OF_PRESENCE", "ad_group.id": 137020701042, "segments.date": "2022-04-09"}, "emitted_at": 1671617280438} -{"stream": "geographic_report", "data": {"customer.descriptive_name": "", "geographic_view.country_criterion_id": 2840, "geographic_view.location_type": "LOCATION_OF_PRESENCE", "ad_group.id": 137020701042, "segments.date": "2022-04-09"}, "emitted_at": 1671617280440} -{"stream": "geographic_report", "data": {"customer.descriptive_name": "", "geographic_view.country_criterion_id": 2124, "geographic_view.location_type": "AREA_OF_INTEREST", "ad_group.id": 137051662444, "segments.date": "2022-04-09"}, "emitted_at": 1671617280442} -{"stream": "geographic_report", "data": {"customer.descriptive_name": "", "geographic_view.country_criterion_id": 2840, "geographic_view.location_type": "AREA_OF_INTEREST", "ad_group.id": 137051662444, "segments.date": "2022-04-09"}, "emitted_at": 1671617280443} -{"stream": "geographic_report", "data": {"customer.descriptive_name": "", "geographic_view.country_criterion_id": 2124, "geographic_view.location_type": "LOCATION_OF_PRESENCE", "ad_group.id": 137051662444, "segments.date": "2022-04-09"}, "emitted_at": 1671617280445} -{"stream": "geographic_report", "data": {"customer.descriptive_name": "", "geographic_view.country_criterion_id": 2840, "geographic_view.location_type": "LOCATION_OF_PRESENCE", "ad_group.id": 137051662444, "segments.date": "2022-04-09"}, "emitted_at": 1671617280447} -{"stream": "geographic_report", "data": {"customer.descriptive_name": "", "geographic_view.country_criterion_id": 2840, "geographic_view.location_type": "AREA_OF_INTEREST", "ad_group.id": 137020701042, "segments.date": "2022-04-10"}, "emitted_at": 1671617280448} -{"stream": "geographic_report", "data": {"customer.descriptive_name": "", "geographic_view.country_criterion_id": 2124, "geographic_view.location_type": "LOCATION_OF_PRESENCE", "ad_group.id": 137020701042, "segments.date": "2022-04-10"}, "emitted_at": 1671617280450} -{"stream":"keyword_report","data":{"customer.descriptive_name":"","ad_group.id":123273719655,"ad_group_criterion.type":"KEYWORD","ad_group_criterion.keyword.text":"open source analytics","ad_group_criterion.negative":false,"ad_group_criterion.keyword.match_type":"BROAD","metrics.historical_quality_score":1,"metrics.ctr":0,"segments.date":"2022-02-15","campaign.bidding_strategy_type":"TARGET_SPEND","metrics.clicks":0,"metrics.cost_micros":0,"metrics.impressions":0,"metrics.active_view_impressions":0,"metrics.active_view_measurability":0,"metrics.active_view_measurable_cost_micros":0,"metrics.active_view_measurable_impressions":0,"metrics.active_view_viewability":0,"metrics.conversions":0,"metrics.conversions_value":0,"metrics.interactions":0,"metrics.interaction_event_types":[],"metrics.view_through_conversions":0,"ad_group_criterion.criterion_id":1732729676},"emitted_at":1688988446821} -{"stream":"keyword_report","data":{"customer.descriptive_name":"","ad_group.id":123273719655,"ad_group_criterion.type":"KEYWORD","ad_group_criterion.keyword.text":"etl pipeline","ad_group_criterion.negative":false,"ad_group_criterion.keyword.match_type":"BROAD","metrics.historical_quality_score":3,"metrics.ctr":0,"segments.date":"2022-02-15","campaign.bidding_strategy_type":"TARGET_SPEND","metrics.clicks":0,"metrics.cost_micros":0,"metrics.impressions":0,"metrics.active_view_impressions":0,"metrics.active_view_measurability":0,"metrics.active_view_measurable_cost_micros":0,"metrics.active_view_measurable_impressions":0,"metrics.active_view_viewability":0,"metrics.conversions":0,"metrics.conversions_value":0,"metrics.interactions":0,"metrics.interaction_event_types":[],"metrics.view_through_conversions":0,"ad_group_criterion.criterion_id":297585172071},"emitted_at":1688988446824} -{"stream":"keyword_report","data":{"customer.descriptive_name":"","ad_group.id":123273719655,"ad_group_criterion.type":"KEYWORD","ad_group_criterion.keyword.text":"open source etl","ad_group_criterion.negative":false,"ad_group_criterion.keyword.match_type":"BROAD","metrics.historical_quality_score":7,"metrics.ctr":0,"segments.date":"2022-02-15","campaign.bidding_strategy_type":"TARGET_SPEND","metrics.clicks":0,"metrics.cost_micros":0,"metrics.impressions":0,"metrics.active_view_impressions":0,"metrics.active_view_measurability":0,"metrics.active_view_measurable_cost_micros":0,"metrics.active_view_measurable_impressions":0,"metrics.active_view_viewability":0,"metrics.conversions":0,"metrics.conversions_value":0,"metrics.interactions":0,"metrics.interaction_event_types":[],"metrics.view_through_conversions":0,"ad_group_criterion.criterion_id":298270671583},"emitted_at":1688988446825} -{"stream":"keyword_report","data":{"customer.descriptive_name":"","ad_group.id":123273719655,"ad_group_criterion.type":"KEYWORD","ad_group_criterion.keyword.text":"data connectors","ad_group_criterion.negative":false,"ad_group_criterion.keyword.match_type":"BROAD","metrics.historical_quality_score":5,"metrics.ctr":0,"segments.date":"2022-02-15","campaign.bidding_strategy_type":"TARGET_SPEND","metrics.clicks":0,"metrics.cost_micros":0,"metrics.impressions":0,"metrics.active_view_impressions":0,"metrics.active_view_measurability":0,"metrics.active_view_measurable_cost_micros":0,"metrics.active_view_measurable_impressions":0,"metrics.active_view_viewability":0,"metrics.conversions":0,"metrics.conversions_value":0,"metrics.interactions":0,"metrics.interaction_event_types":[],"metrics.view_through_conversions":0,"ad_group_criterion.criterion_id":303376179543},"emitted_at":1688988446826} -{"stream":"keyword_report","data":{"customer.descriptive_name":"","ad_group.id":123273719655,"ad_group_criterion.type":"KEYWORD","ad_group_criterion.keyword.text":"open source analytics","ad_group_criterion.negative":false,"ad_group_criterion.keyword.match_type":"BROAD","metrics.historical_quality_score":1,"metrics.ctr":0,"segments.date":"2022-02-16","campaign.bidding_strategy_type":"TARGET_SPEND","metrics.clicks":0,"metrics.cost_micros":0,"metrics.impressions":0,"metrics.active_view_impressions":0,"metrics.active_view_measurability":0,"metrics.active_view_measurable_cost_micros":0,"metrics.active_view_measurable_impressions":0,"metrics.active_view_viewability":0,"metrics.conversions":0,"metrics.conversions_value":0,"metrics.interactions":0,"metrics.interaction_event_types":[],"metrics.view_through_conversions":0,"ad_group_criterion.criterion_id":1732729676},"emitted_at":1688988446827} -{"stream":"keyword_report","data":{"customer.descriptive_name":"","ad_group.id":123273719655,"ad_group_criterion.type":"KEYWORD","ad_group_criterion.keyword.text":"etl pipeline","ad_group_criterion.negative":false,"ad_group_criterion.keyword.match_type":"BROAD","metrics.historical_quality_score":3,"metrics.ctr":0,"segments.date":"2022-02-16","campaign.bidding_strategy_type":"TARGET_SPEND","metrics.clicks":0,"metrics.cost_micros":0,"metrics.impressions":0,"metrics.active_view_impressions":0,"metrics.active_view_measurability":0,"metrics.active_view_measurable_cost_micros":0,"metrics.active_view_measurable_impressions":0,"metrics.active_view_viewability":0,"metrics.conversions":0,"metrics.conversions_value":0,"metrics.interactions":0,"metrics.interaction_event_types":[],"metrics.view_through_conversions":0,"ad_group_criterion.criterion_id":297585172071},"emitted_at":1688988446827} -{"stream":"keyword_report","data":{"customer.descriptive_name":"","ad_group.id":123273719655,"ad_group_criterion.type":"KEYWORD","ad_group_criterion.keyword.text":"open source etl","ad_group_criterion.negative":false,"ad_group_criterion.keyword.match_type":"BROAD","metrics.historical_quality_score":7,"metrics.ctr":0,"segments.date":"2022-02-16","campaign.bidding_strategy_type":"TARGET_SPEND","metrics.clicks":0,"metrics.cost_micros":0,"metrics.impressions":0,"metrics.active_view_impressions":0,"metrics.active_view_measurability":0,"metrics.active_view_measurable_cost_micros":0,"metrics.active_view_measurable_impressions":0,"metrics.active_view_viewability":0,"metrics.conversions":0,"metrics.conversions_value":0,"metrics.interactions":0,"metrics.interaction_event_types":[],"metrics.view_through_conversions":0,"ad_group_criterion.criterion_id":298270671583},"emitted_at":1688988446828} -{"stream":"keyword_report","data":{"customer.descriptive_name":"","ad_group.id":123273719655,"ad_group_criterion.type":"KEYWORD","ad_group_criterion.keyword.text":"data connectors","ad_group_criterion.negative":false,"ad_group_criterion.keyword.match_type":"BROAD","metrics.historical_quality_score":5,"metrics.ctr":0,"segments.date":"2022-02-16","campaign.bidding_strategy_type":"TARGET_SPEND","metrics.clicks":0,"metrics.cost_micros":0,"metrics.impressions":0,"metrics.active_view_impressions":0,"metrics.active_view_measurability":0,"metrics.active_view_measurable_cost_micros":0,"metrics.active_view_measurable_impressions":0,"metrics.active_view_viewability":0,"metrics.conversions":0,"metrics.conversions_value":0,"metrics.interactions":0,"metrics.interaction_event_types":[],"metrics.view_through_conversions":0,"ad_group_criterion.criterion_id":303376179543},"emitted_at":1688988446829} -{"stream":"keyword_report","data":{"customer.descriptive_name":"","ad_group.id":123273719655,"ad_group_criterion.type":"KEYWORD","ad_group_criterion.keyword.text":"open source analytics","ad_group_criterion.negative":false,"ad_group_criterion.keyword.match_type":"BROAD","metrics.historical_quality_score":1,"metrics.ctr":0,"segments.date":"2022-02-17","campaign.bidding_strategy_type":"TARGET_SPEND","metrics.clicks":0,"metrics.cost_micros":0,"metrics.impressions":0,"metrics.active_view_impressions":0,"metrics.active_view_measurability":0,"metrics.active_view_measurable_cost_micros":0,"metrics.active_view_measurable_impressions":0,"metrics.active_view_viewability":0,"metrics.conversions":0,"metrics.conversions_value":0,"metrics.interactions":0,"metrics.interaction_event_types":[],"metrics.view_through_conversions":0,"ad_group_criterion.criterion_id":1732729676},"emitted_at":1688988446829} -{"stream":"keyword_report","data":{"customer.descriptive_name":"","ad_group.id":137020701042,"ad_group_criterion.type":"KEYWORD","ad_group_criterion.keyword.text":"airbytes","ad_group_criterion.negative":false,"ad_group_criterion.keyword.match_type":"BROAD","metrics.historical_quality_score":10,"metrics.ctr":0.06666666666666667,"segments.date":"2022-05-14","campaign.bidding_strategy_type":"MAXIMIZE_CONVERSIONS","metrics.clicks":2,"metrics.cost_micros":50000,"metrics.impressions":30,"metrics.active_view_impressions":0,"metrics.active_view_measurability":0,"metrics.active_view_measurable_cost_micros":0,"metrics.active_view_measurable_impressions":0,"metrics.active_view_viewability":0,"metrics.conversions":0,"metrics.conversions_value":0,"metrics.interactions":2,"metrics.interaction_event_types":["InteractionEventType.CLICK"],"metrics.view_through_conversions":0,"ad_group_criterion.criterion_id":423065099654},"emitted_at":1688988450597} -{"stream": "display_keyword_performance_report", "data": {"customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 10012000.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 1, "metrics.active_view_measurability": 1.0, "metrics.active_view_measurable_cost_micros": 10012, "metrics.active_view_measurable_impressions": 1, "metrics.active_view_viewability": 1.0, "ad_group.id": 143992182864, "ad_group.name": "Video Non-skippable - 2022-05-30", "ad_group.status": "ENABLED", "segments.ad_network_type": "YOUTUBE_WATCH", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 10012000.0, "metrics.average_cpv": 0.0, "ad_group.base_ad_group": "customers/4651612872/adGroups/143992182864", "campaign.base_campaign": "customers/4651612872/campaigns/17354032686", "campaign.bidding_strategy": "", "campaign.bidding_strategy_type": "TARGET_CPM", "campaign.id": 17354032686, "campaign.name": "Video Non-skippable - 2022-05-30", "campaign.status": "ENABLED", "metrics.clicks": 0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 10012, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "ad_group_criterion.effective_cpc_bid_micros": 10000, "ad_group_criterion.effective_cpc_bid_source": "AD_GROUP", "ad_group_criterion.effective_cpm_bid_micros": 10000, "ad_group_criterion.effective_cpm_bid_source": "AD_GROUP", "ad_group_criterion.effective_cpv_bid_micros": 10000, "ad_group_criterion.effective_cpv_bid_source": "AD_GROUP", "ad_group_criterion.keyword.text": "big data software", "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "segments.day_of_week": "TUESDAY", "segments.device": "MOBILE", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "customer.id": 4651612872, "ad_group_criterion.final_mobile_urls": [], "ad_group_criterion.final_urls": [], "metrics.gmail_forwards": 0, "metrics.gmail_saves": 0, "metrics.gmail_secondary_clicks": 0, "ad_group_criterion.criterion_id": 26160872903, "metrics.impressions": 1, "metrics.interaction_rate": 0.0, "metrics.interaction_event_types": [], "metrics.interactions": 0, "ad_group_criterion.negative": false, "ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n", "targeting_dimension: TOPIC\nbid_only: false\n"], "segments.month": "2022-05-01", "segments.quarter": "2022-04-01", "ad_group_criterion.status": "ENABLED", "ad_group_criterion.tracking_url_template": "", "ad_group_criterion.keyword.match_type": "BROAD", "ad_group_criterion.url_custom_parameters": [], "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_quartile_p100_rate": 0.0, "metrics.video_quartile_p25_rate": 0.0, "metrics.video_quartile_p50_rate": 0.0, "metrics.video_quartile_p75_rate": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2022-05-30", "segments.year": 2022, "segments.date": "2022-05-31"}, "emitted_at": 1671617298755} -{"stream": "campaign_labels", "data": {"campaign.resource_name": "customers/4651612872/campaigns/12124071339", "campaign_label.resource_name": "customers/4651612872/campaignLabels/12124071339~21585034471", "label.name": "edgao-example-label", "label.resource_name": "customers/4651612872/labels/21585034471"}, "emitted_at": 1671617384908} -{"stream": "campaign_labels", "data": {"campaign.resource_name": "customers/4651612872/campaigns/13284356762", "campaign_label.resource_name": "customers/4651612872/campaignLabels/13284356762~21585034471", "label.name": "edgao-example-label", "label.resource_name": "customers/4651612872/labels/21585034471"}, "emitted_at": 1671617384909} -{"stream": "ad_group_labels", "data": {"ad_group.resource_name": "customers/4651612872/adGroups/123273719655", "ad_group_label.resource_name": "customers/4651612872/adGroupLabels/123273719655~21585034471", "label.name": "edgao-example-label", "label.resource_name": "customers/4651612872/labels/21585034471"}, "emitted_at": 1671617385395} -{"stream": "ad_group_ad_labels", "data": {"ad_group_ad.ad.resource_name": "customers/4651612872/ads/524518584182", "ad_group_ad_label.resource_name": "customers/4651612872/adGroupAdLabels/123273719655~524518584182~21585034471", "label.name": "edgao-example-label", "label.resource_name": "customers/4651612872/labels/21585034471"}, "emitted_at": 1671617386108} -{"stream": "user_location_report", "data": {"segments.date": "2022-04-08", "segments.day_of_week": "FRIDAY", "segments.month": "2022-04-01", "segments.week": "2022-04-04", "segments.quarter": "2022-04-01", "segments.year": 2022, "segments.ad_network_type": "SEARCH", "customer.currency_code": "USD", "customer.id": 4651612872, "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "user_location_view.country_criterion_id": 2124, "user_location_view.resource_name": "customers/4651612872/userLocationViews/2124~true", "campaign.base_campaign": "customers/4651612872/campaigns/16820250687", "campaign.id": 16820250687, "campaign.name": "Website traffic-Search-15", "campaign.status": "PAUSED", "ad_group.name": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00a01", "ad_group.status": "ENABLED", "ad_group.base_ad_group": "customers/4651612872/adGroups/137051662444", "metrics.all_conversions": 0.0, "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpm": 0.0, "metrics.average_cpv": 0.0, "metrics.clicks": 0, "metrics.conversions": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 0, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "metrics.impressions": 2, "metrics.interaction_event_types": [], "metrics.interaction_rate": 0.0, "metrics.interactions": 0, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0}, "emitted_at": 1671617390491} -{"stream": "user_location_report", "data": {"segments.date": "2022-04-09", "segments.day_of_week": "SATURDAY", "segments.month": "2022-04-01", "segments.week": "2022-04-04", "segments.quarter": "2022-04-01", "segments.year": 2022, "segments.ad_network_type": "SEARCH", "customer.currency_code": "USD", "customer.id": 4651612872, "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "user_location_view.country_criterion_id": 2124, "user_location_view.resource_name": "customers/4651612872/userLocationViews/2124~true", "campaign.base_campaign": "customers/4651612872/campaigns/16820250687", "campaign.id": 16820250687, "campaign.name": "Website traffic-Search-15", "campaign.status": "PAUSED", "ad_group.name": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00a02", "ad_group.status": "ENABLED", "ad_group.base_ad_group": "customers/4651612872/adGroups/137020701042", "metrics.all_conversions": 0.0, "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.average_cost": 70000.0, "metrics.average_cpc": 70000.0, "metrics.average_cpm": 3684210.5263157897, "metrics.average_cpv": 0.0, "metrics.clicks": 1, "metrics.conversions": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 70000, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.05263157894736842, "metrics.impressions": 19, "metrics.interaction_event_types": ["InteractionEventType.CLICK"], "metrics.interaction_rate": 0.05263157894736842, "metrics.interactions": 1, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0}, "emitted_at": 1671617390495} -{"stream": "user_location_report", "data": {"segments.date": "2022-04-09", "segments.day_of_week": "SATURDAY", "segments.month": "2022-04-01", "segments.week": "2022-04-04", "segments.quarter": "2022-04-01", "segments.year": 2022, "segments.ad_network_type": "SEARCH", "customer.currency_code": "USD", "customer.id": 4651612872, "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "user_location_view.country_criterion_id": 2840, "user_location_view.resource_name": "customers/4651612872/userLocationViews/2840~true", "campaign.base_campaign": "customers/4651612872/campaigns/16820250687", "campaign.id": 16820250687, "campaign.name": "Website traffic-Search-15", "campaign.status": "PAUSED", "ad_group.name": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00a02", "ad_group.status": "ENABLED", "ad_group.base_ad_group": "customers/4651612872/adGroups/137020701042", "metrics.all_conversions": 0.0, "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpm": 0.0, "metrics.average_cpv": 0.0, "metrics.clicks": 0, "metrics.conversions": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 0, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "metrics.impressions": 3, "metrics.interaction_event_types": [], "metrics.interaction_rate": 0.0, "metrics.interactions": 0, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0}, "emitted_at": 1671617390499} -{"stream": "user_location_report", "data": {"segments.date": "2022-04-09", "segments.day_of_week": "SATURDAY", "segments.month": "2022-04-01", "segments.week": "2022-04-04", "segments.quarter": "2022-04-01", "segments.year": 2022, "segments.ad_network_type": "SEARCH", "customer.currency_code": "USD", "customer.id": 4651612872, "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "user_location_view.country_criterion_id": 2051, "user_location_view.resource_name": "customers/4651612872/userLocationViews/2051~false", "campaign.base_campaign": "customers/4651612872/campaigns/16820250687", "campaign.id": 16820250687, "campaign.name": "Website traffic-Search-15", "campaign.status": "PAUSED", "ad_group.name": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00a01", "ad_group.status": "ENABLED", "ad_group.base_ad_group": "customers/4651612872/adGroups/137051662444", "metrics.all_conversions": 0.0, "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpm": 0.0, "metrics.average_cpv": 0.0, "metrics.clicks": 0, "metrics.conversions": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 0, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "metrics.impressions": 1, "metrics.interaction_event_types": [], "metrics.interaction_rate": 0.0, "metrics.interactions": 0, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0}, "emitted_at": 1671617390503} -{"stream": "user_location_report", "data": {"segments.date": "2022-04-09", "segments.day_of_week": "SATURDAY", "segments.month": "2022-04-01", "segments.week": "2022-04-04", "segments.quarter": "2022-04-01", "segments.year": 2022, "segments.ad_network_type": "SEARCH", "customer.currency_code": "USD", "customer.id": 4651612872, "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "user_location_view.country_criterion_id": 2170, "user_location_view.resource_name": "customers/4651612872/userLocationViews/2170~false", "campaign.base_campaign": "customers/4651612872/campaigns/16820250687", "campaign.id": 16820250687, "campaign.name": "Website traffic-Search-15", "campaign.status": "PAUSED", "ad_group.name": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00a01", "ad_group.status": "ENABLED", "ad_group.base_ad_group": "customers/4651612872/adGroups/137051662444", "metrics.all_conversions": 0.0, "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpm": 0.0, "metrics.average_cpv": 0.0, "metrics.clicks": 0, "metrics.conversions": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 0, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "metrics.impressions": 2, "metrics.interaction_event_types": [], "metrics.interaction_rate": 0.0, "metrics.interactions": 0, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0}, "emitted_at": 1671617390507} -{"stream": "user_location_report", "data": {"segments.date": "2022-04-09", "segments.day_of_week": "SATURDAY", "segments.month": "2022-04-01", "segments.week": "2022-04-04", "segments.quarter": "2022-04-01", "segments.year": 2022, "segments.ad_network_type": "SEARCH", "customer.currency_code": "USD", "customer.id": 4651612872, "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "user_location_view.country_criterion_id": 2218, "user_location_view.resource_name": "customers/4651612872/userLocationViews/2218~false", "campaign.base_campaign": "customers/4651612872/campaigns/16820250687", "campaign.id": 16820250687, "campaign.name": "Website traffic-Search-15", "campaign.status": "PAUSED", "ad_group.name": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00a01", "ad_group.status": "ENABLED", "ad_group.base_ad_group": "customers/4651612872/adGroups/137051662444", "metrics.all_conversions": 0.0, "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpm": 0.0, "metrics.average_cpv": 0.0, "metrics.clicks": 0, "metrics.conversions": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 0, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "metrics.impressions": 1, "metrics.interaction_event_types": [], "metrics.interaction_rate": 0.0, "metrics.interactions": 0, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0}, "emitted_at": 1671617390511} -{"stream": "user_location_report", "data": {"segments.date": "2022-04-09", "segments.day_of_week": "SATURDAY", "segments.month": "2022-04-01", "segments.week": "2022-04-04", "segments.quarter": "2022-04-01", "segments.year": 2022, "segments.ad_network_type": "SEARCH", "customer.currency_code": "USD", "customer.id": 4651612872, "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "user_location_view.country_criterion_id": 2356, "user_location_view.resource_name": "customers/4651612872/userLocationViews/2356~false", "campaign.base_campaign": "customers/4651612872/campaigns/16820250687", "campaign.id": 16820250687, "campaign.name": "Website traffic-Search-15", "campaign.status": "PAUSED", "ad_group.name": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00a01", "ad_group.status": "ENABLED", "ad_group.base_ad_group": "customers/4651612872/adGroups/137051662444", "metrics.all_conversions": 0.0, "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpm": 0.0, "metrics.average_cpv": 0.0, "metrics.clicks": 0, "metrics.conversions": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 0, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "metrics.impressions": 1, "metrics.interaction_event_types": [], "metrics.interaction_rate": 0.0, "metrics.interactions": 0, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0}, "emitted_at": 1671617390514} -{"stream": "user_location_report", "data": {"segments.date": "2022-04-09", "segments.day_of_week": "SATURDAY", "segments.month": "2022-04-01", "segments.week": "2022-04-04", "segments.quarter": "2022-04-01", "segments.year": 2022, "segments.ad_network_type": "SEARCH", "customer.currency_code": "USD", "customer.id": 4651612872, "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "user_location_view.country_criterion_id": 2484, "user_location_view.resource_name": "customers/4651612872/userLocationViews/2484~false", "campaign.base_campaign": "customers/4651612872/campaigns/16820250687", "campaign.id": 16820250687, "campaign.name": "Website traffic-Search-15", "campaign.status": "PAUSED", "ad_group.name": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00a01", "ad_group.status": "ENABLED", "ad_group.base_ad_group": "customers/4651612872/adGroups/137051662444", "metrics.all_conversions": 0.0, "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpm": 0.0, "metrics.average_cpv": 0.0, "metrics.clicks": 0, "metrics.conversions": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 0, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "metrics.impressions": 4, "metrics.interaction_event_types": [], "metrics.interaction_rate": 0.0, "metrics.interactions": 0, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0}, "emitted_at": 1671617390516} -{"stream": "user_location_report", "data": {"segments.date": "2022-04-09", "segments.day_of_week": "SATURDAY", "segments.month": "2022-04-01", "segments.week": "2022-04-04", "segments.quarter": "2022-04-01", "segments.year": 2022, "segments.ad_network_type": "SEARCH", "customer.currency_code": "USD", "customer.id": 4651612872, "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "user_location_view.country_criterion_id": 2504, "user_location_view.resource_name": "customers/4651612872/userLocationViews/2504~false", "campaign.base_campaign": "customers/4651612872/campaigns/16820250687", "campaign.id": 16820250687, "campaign.name": "Website traffic-Search-15", "campaign.status": "PAUSED", "ad_group.name": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00a01", "ad_group.status": "ENABLED", "ad_group.base_ad_group": "customers/4651612872/adGroups/137051662444", "metrics.all_conversions": 0.0, "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpm": 0.0, "metrics.average_cpv": 0.0, "metrics.clicks": 0, "metrics.conversions": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 0, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "metrics.impressions": 1, "metrics.interaction_event_types": [], "metrics.interaction_rate": 0.0, "metrics.interactions": 0, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0}, "emitted_at": 1671617390518} -{"stream": "user_location_report", "data": {"segments.date": "2022-04-09", "segments.day_of_week": "SATURDAY", "segments.month": "2022-04-01", "segments.week": "2022-04-04", "segments.quarter": "2022-04-01", "segments.year": 2022, "segments.ad_network_type": "SEARCH", "customer.currency_code": "USD", "customer.id": 4651612872, "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "user_location_view.country_criterion_id": 2524, "user_location_view.resource_name": "customers/4651612872/userLocationViews/2524~false", "campaign.base_campaign": "customers/4651612872/campaigns/16820250687", "campaign.id": 16820250687, "campaign.name": "Website traffic-Search-15", "campaign.status": "PAUSED", "ad_group.name": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00a01", "ad_group.status": "ENABLED", "ad_group.base_ad_group": "customers/4651612872/adGroups/137051662444", "metrics.all_conversions": 0.0, "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpm": 0.0, "metrics.average_cpv": 0.0, "metrics.clicks": 0, "metrics.conversions": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 0, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "metrics.impressions": 2, "metrics.interaction_event_types": [], "metrics.interaction_rate": 0.0, "metrics.interactions": 0, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0}, "emitted_at": 1671617390520} -{"stream": "happytable", "data": {"campaign.accessible_bidding_strategy": "", "segments.ad_destination_type": "NOT_APPLICABLE", "campaign.start_date": "2022-04-08", "campaign.end_date": "2037-12-30", "segments.date": "2022-04-08"}, "emitted_at": 1671617397632} -{"stream": "happytable", "data": {"campaign.accessible_bidding_strategy": "", "segments.ad_destination_type": "NOT_APPLICABLE", "campaign.start_date": "2022-04-08", "campaign.end_date": "2037-12-30", "segments.date": "2022-04-09"}, "emitted_at": 1671617397634} -{"stream": "happytable", "data": {"campaign.accessible_bidding_strategy": "", "segments.ad_destination_type": "NOT_APPLICABLE", "campaign.start_date": "2022-04-08", "campaign.end_date": "2037-12-30", "segments.date": "2022-04-10"}, "emitted_at": 1671617397634} -{"stream": "happytable", "data": {"campaign.accessible_bidding_strategy": "", "segments.ad_destination_type": "NOT_APPLICABLE", "campaign.start_date": "2022-04-08", "campaign.end_date": "2037-12-30", "segments.date": "2022-04-11"}, "emitted_at": 1671617397635} -{"stream": "happytable", "data": {"campaign.accessible_bidding_strategy": "", "segments.ad_destination_type": "NOT_APPLICABLE", "campaign.start_date": "2022-04-08", "campaign.end_date": "2037-12-30", "segments.date": "2022-04-12"}, "emitted_at": 1671617397635} -{"stream": "happytable", "data": {"campaign.accessible_bidding_strategy": "", "segments.ad_destination_type": "NOT_APPLICABLE", "campaign.start_date": "2022-04-08", "campaign.end_date": "2037-12-30", "segments.date": "2022-04-13"}, "emitted_at": 1671617397635} -{"stream": "happytable", "data": {"campaign.accessible_bidding_strategy": "", "segments.ad_destination_type": "NOT_APPLICABLE", "campaign.start_date": "2022-04-08", "campaign.end_date": "2037-12-30", "segments.date": "2022-04-14"}, "emitted_at": 1671617397636} -{"stream": "happytable", "data": {"campaign.accessible_bidding_strategy": "", "segments.ad_destination_type": "NOT_APPLICABLE", "campaign.start_date": "2022-04-08", "campaign.end_date": "2037-12-30", "segments.date": "2022-04-15"}, "emitted_at": 1671617397636} -{"stream": "happytable", "data": {"campaign.accessible_bidding_strategy": "", "segments.ad_destination_type": "NOT_APPLICABLE", "campaign.start_date": "2022-04-08", "campaign.end_date": "2037-12-30", "segments.date": "2022-04-16"}, "emitted_at": 1671617397636} -{"stream": "happytable", "data": {"campaign.accessible_bidding_strategy": "", "segments.ad_destination_type": "WEBSITE", "campaign.start_date": "2022-04-08", "campaign.end_date": "2037-12-30", "segments.date": "2022-04-09"}, "emitted_at": 1671617397637} -{"stream": "ad_group_custom", "data": {"ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n", "targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n"], "segments.date": "2022-04-08"}, "emitted_at": 1671617407844} -{"stream": "ad_group_custom", "data": {"ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n", "targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n"], "segments.date": "2022-04-09"}, "emitted_at": 1671617407844} -{"stream": "ad_group_custom", "data": {"ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n", "targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n"], "segments.date": "2022-04-09"}, "emitted_at": 1671617407844} -{"stream": "ad_group_custom", "data": {"ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n", "targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n"], "segments.date": "2022-04-10"}, "emitted_at": 1671617407845} -{"stream": "ad_group_custom", "data": {"ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n", "targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n"], "segments.date": "2022-04-10"}, "emitted_at": 1671617407845} -{"stream": "ad_group_custom", "data": {"ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n", "targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n"], "segments.date": "2022-04-11"}, "emitted_at": 1671617407846} -{"stream": "ad_group_custom", "data": {"ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n", "targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n"], "segments.date": "2022-04-11"}, "emitted_at": 1671617407846} -{"stream": "ad_group_custom", "data": {"ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n", "targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n"], "segments.date": "2022-04-12"}, "emitted_at": 1671617407846} -{"stream": "ad_group_custom", "data": {"ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n", "targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n"], "segments.date": "2022-04-12"}, "emitted_at": 1671617407846} -{"stream": "ad_group_custom", "data": {"ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n", "targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n"], "segments.date": "2022-04-13"}, "emitted_at": 1671617407847} -{"stream":"custom_audience","data":{"custom_audience.description":"","custom_audience.name":"Airbyet","custom_audience.id":523469909,"custom_audience.members":["member_type: KEYWORD\nkeyword: \"etl elt\"\n","member_type: KEYWORD\nkeyword: \"cloud data management and analytics\"\n","member_type: KEYWORD\nkeyword: \"data integration\"\n","member_type: KEYWORD\nkeyword: \"big data analytics database\"\n","member_type: KEYWORD\nkeyword: \"data\"\n","member_type: KEYWORD\nkeyword: \"data sherid nada\"\n","member_type: KEYWORD\nkeyword: \"airbyteforeveryone\"\n","member_type: KEYWORD\nkeyword: \"Airbyte\"\n"],"custom_audience.resource_name":"customers/4651612872/customAudiences/523469909","custom_audience.status":"ENABLED","custom_audience.type":"AUTO"},"emitted_at":1676550195853} -{"stream":"ad_group_ad_report","data":{"ad_group_ad.ad.legacy_responsive_display_ad.accent_color":"","ad_group.id":137051662444,"customer.currency_code":"USD","customer.descriptive_name":"","customer.time_zone":"America/Los_Angeles","metrics.active_view_cpm":0.0,"metrics.active_view_ctr":0.0,"metrics.active_view_impressions":0,"metrics.active_view_measurability":0.0,"metrics.active_view_measurable_cost_micros":0,"metrics.active_view_measurable_impressions":0,"metrics.active_view_viewability":0.0,"ad_group_ad.ad_group":"customers/4651612872/adGroups/137051662444","ad_group.name":"Группа объявлений 1","ad_group.status":"ENABLED","segments.ad_network_type":"SEARCH","ad_group_ad.ad_strength":"POOR","ad_group_ad.ad.type":"RESPONSIVE_SEARCH_AD","metrics.all_conversions_from_interactions_rate":0.0,"metrics.all_conversions_value":0.0,"metrics.all_conversions":0.0,"ad_group_ad.ad.legacy_responsive_display_ad.allow_flexible_color":false,"ad_group_ad.ad.added_by_google_ads":false,"metrics.average_cost":0.0,"metrics.average_cpc":0.0,"metrics.average_cpe":0.0,"metrics.average_cpm":0.0,"metrics.average_cpv":0.0,"metrics.average_page_views":0.0,"metrics.average_time_on_site":0.0,"ad_group.base_ad_group":"customers/4651612872/adGroups/137051662444","campaign.base_campaign":"customers/4651612872/campaigns/16820250687","metrics.bounce_rate":0.0,"ad_group_ad.ad.legacy_responsive_display_ad.business_name":"","ad_group_ad.ad.legacy_responsive_display_ad.call_to_action_text":"","campaign.id":16820250687,"campaign.name":"Website traffic-Search-15","campaign.status":"PAUSED","metrics.clicks":0,"ad_group_ad.policy_summary.approval_status":"APPROVED","metrics.conversions_from_interactions_rate":0.0,"metrics.conversions_value":0.0,"metrics.conversions":0.0,"metrics.cost_micros":0,"metrics.cost_per_all_conversions":0.0,"metrics.cost_per_conversion":0.0,"metrics.cost_per_current_model_attributed_conversion":0.0,"ad_group_ad.ad.final_mobile_urls":[],"ad_group_ad.ad.final_urls":["https://airbyte.com"],"ad_group_ad.ad.tracking_url_template":"","ad_group_ad.ad.url_custom_parameters":[],"metrics.cross_device_conversions":0.0,"metrics.ctr":0.0,"metrics.current_model_attributed_conversions_value":0.0,"metrics.current_model_attributed_conversions":0.0,"segments.date":"2022-04-08","segments.day_of_week":"FRIDAY","ad_group_ad.ad.expanded_text_ad.description":"","ad_group_ad.ad.text_ad.description1":"","ad_group_ad.ad.text_ad.description2":"","ad_group_ad.ad.device_preference":"UNSPECIFIED","ad_group_ad.ad.display_url":"","metrics.engagement_rate":0.0,"metrics.engagements":0,"ad_group_ad.ad.legacy_responsive_display_ad.logo_image":"","ad_group_ad.ad.legacy_responsive_display_ad.square_logo_image":"","ad_group_ad.ad.legacy_responsive_display_ad.marketing_image":"","ad_group_ad.ad.legacy_responsive_display_ad.square_marketing_image":"","ad_group_ad.ad.expanded_dynamic_search_ad.description":"","ad_group_ad.ad.expanded_text_ad.description2":"","ad_group_ad.ad.expanded_text_ad.headline_part3":"","customer.id":4651612872,"ad_group_ad.ad.legacy_responsive_display_ad.format_setting":"UNSPECIFIED","metrics.gmail_forwards":0,"metrics.gmail_saves":0,"metrics.gmail_secondary_clicks":0,"ad_group_ad.ad.text_ad.headline":"","ad_group_ad.ad.expanded_text_ad.headline_part1":"","ad_group_ad.ad.expanded_text_ad.headline_part2":"","ad_group_ad.ad.id":592078676857,"ad_group_ad.ad.image_ad.image_url":"","ad_group_ad.ad.image_ad.pixel_height":0,"ad_group_ad.ad.image_ad.pixel_width":0,"ad_group_ad.ad.image_ad.mime_type":"UNSPECIFIED","ad_group_ad.ad.image_ad.name":"","metrics.impressions":2,"metrics.interaction_rate":0.0,"metrics.interaction_event_types":[],"metrics.interactions":0,"ad_group_ad.ad.legacy_responsive_display_ad.long_headline":"","ad_group_ad.ad.legacy_responsive_display_ad.main_color":"","segments.month":"2022-04-01","ad_group_ad.ad.responsive_display_ad.accent_color":"","ad_group_ad.ad.responsive_display_ad.allow_flexible_color":false,"ad_group_ad.ad.responsive_display_ad.business_name":"","ad_group_ad.ad.responsive_display_ad.call_to_action_text":"","ad_group_ad.ad.responsive_display_ad.descriptions":[],"ad_group_ad.ad.responsive_display_ad.price_prefix":"","ad_group_ad.ad.responsive_display_ad.promo_text":"","ad_group_ad.ad.responsive_display_ad.format_setting":"UNSPECIFIED","ad_group_ad.ad.responsive_display_ad.headlines":[],"ad_group_ad.ad.responsive_display_ad.logo_images":[],"ad_group_ad.ad.responsive_display_ad.square_logo_images":[],"ad_group_ad.ad.responsive_display_ad.long_headline":"","ad_group_ad.ad.responsive_display_ad.main_color":"","ad_group_ad.ad.responsive_display_ad.marketing_images":[],"ad_group_ad.ad.responsive_display_ad.square_marketing_images":[],"ad_group_ad.ad.responsive_display_ad.youtube_videos":[],"ad_group_ad.ad.expanded_text_ad.path1":"","ad_group_ad.ad.expanded_text_ad.path2":"","metrics.percent_new_visitors":0.0,"ad_group_ad.ad.legacy_responsive_display_ad.price_prefix":"","ad_group_ad.ad.legacy_responsive_display_ad.promo_text":"","segments.quarter":"2022-04-01","ad_group_ad.ad.responsive_search_ad.descriptions":["text: \"Behind The Scenes: Testing The Airbyte Maintainer Program\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n","text: \"Airbyte | Open-Source Data Integration Platform | ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n","text: \"Upgrading Our Discourse And Slack To Support Our Community Growth\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"],"ad_group_ad.ad.responsive_search_ad.headlines":["text: \"Airbyte\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n","text: \"ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n","text: \"Open-source Data Integration\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"],"ad_group_ad.ad.responsive_search_ad.path1":"","ad_group_ad.ad.responsive_search_ad.path2":"","ad_group_ad.ad.legacy_responsive_display_ad.short_headline":"","ad_group_ad.status":"REMOVED","ad_group_ad.ad.system_managed_resource_source":"UNSPECIFIED","metrics.top_impression_percentage":0.0,"ad_group_ad.ad.app_ad.descriptions":[],"ad_group_ad.ad.app_ad.headlines":[],"ad_group_ad.ad.app_ad.html5_media_bundles":[],"ad_group_ad.ad.app_ad.images":[],"ad_group_ad.ad.app_ad.mandatory_ad_text":"","ad_group_ad.ad.app_ad.youtube_videos":[],"metrics.value_per_all_conversions":0.0,"metrics.value_per_conversion":0.0,"metrics.value_per_current_model_attributed_conversion":0.0,"metrics.video_quartile_p100_rate":0.0,"metrics.video_quartile_p25_rate":0.0,"metrics.video_quartile_p50_rate":0.0,"metrics.video_quartile_p75_rate":0.0,"metrics.video_view_rate":0.0,"metrics.video_views":0,"metrics.view_through_conversions":0,"segments.week":"2022-04-04","segments.year":2022},"emitted_at":1679508005462} -{"stream":"ad_group_ad_report","data":{"ad_group_ad.ad.legacy_responsive_display_ad.accent_color":"","ad_group.id":137020701042,"customer.currency_code":"USD","customer.descriptive_name":"","customer.time_zone":"America/Los_Angeles","metrics.active_view_cpm":0.0,"metrics.active_view_ctr":0.0,"metrics.active_view_impressions":0,"metrics.active_view_measurability":0.0,"metrics.active_view_measurable_cost_micros":0,"metrics.active_view_measurable_impressions":0,"metrics.active_view_viewability":0.0,"ad_group_ad.ad_group":"customers/4651612872/adGroups/137020701042","ad_group.name":"Группа объявлений 2","ad_group.status":"ENABLED","segments.ad_network_type":"SEARCH","ad_group_ad.ad_strength":"POOR","ad_group_ad.ad.type":"RESPONSIVE_SEARCH_AD","metrics.all_conversions_from_interactions_rate":0.0,"metrics.all_conversions_value":0.0,"metrics.all_conversions":0.0,"ad_group_ad.ad.legacy_responsive_display_ad.allow_flexible_color":false,"ad_group_ad.ad.added_by_google_ads":false,"metrics.average_cost":70000.0,"metrics.average_cpc":70000.0,"metrics.average_cpe":0.0,"metrics.average_cpm":3181818.181818182,"metrics.average_cpv":0.0,"metrics.average_page_views":0.0,"metrics.average_time_on_site":0.0,"ad_group.base_ad_group":"customers/4651612872/adGroups/137020701042","campaign.base_campaign":"customers/4651612872/campaigns/16820250687","metrics.bounce_rate":0.0,"ad_group_ad.ad.legacy_responsive_display_ad.business_name":"","ad_group_ad.ad.legacy_responsive_display_ad.call_to_action_text":"","campaign.id":16820250687,"campaign.name":"Website traffic-Search-15","campaign.status":"PAUSED","metrics.clicks":1,"ad_group_ad.policy_summary.approval_status":"APPROVED_LIMITED","metrics.conversions_from_interactions_rate":0.0,"metrics.conversions_value":0.0,"metrics.conversions":0.0,"metrics.cost_micros":70000,"metrics.cost_per_all_conversions":0.0,"metrics.cost_per_conversion":0.0,"metrics.cost_per_current_model_attributed_conversion":0.0,"ad_group_ad.ad.final_mobile_urls":[],"ad_group_ad.ad.final_urls":["https://airbyte.com"],"ad_group_ad.ad.tracking_url_template":"","ad_group_ad.ad.url_custom_parameters":[],"metrics.cross_device_conversions":0.0,"metrics.ctr":0.045454545454545456,"metrics.current_model_attributed_conversions_value":0.0,"metrics.current_model_attributed_conversions":0.0,"segments.date":"2022-04-09","segments.day_of_week":"SATURDAY","ad_group_ad.ad.expanded_text_ad.description":"","ad_group_ad.ad.text_ad.description1":"","ad_group_ad.ad.text_ad.description2":"","ad_group_ad.ad.device_preference":"UNSPECIFIED","ad_group_ad.ad.display_url":"","metrics.engagement_rate":0.0,"metrics.engagements":0,"ad_group_ad.ad.legacy_responsive_display_ad.logo_image":"","ad_group_ad.ad.legacy_responsive_display_ad.square_logo_image":"","ad_group_ad.ad.legacy_responsive_display_ad.marketing_image":"","ad_group_ad.ad.legacy_responsive_display_ad.square_marketing_image":"","ad_group_ad.ad.expanded_dynamic_search_ad.description":"","ad_group_ad.ad.expanded_text_ad.description2":"","ad_group_ad.ad.expanded_text_ad.headline_part3":"","customer.id":4651612872,"ad_group_ad.ad.legacy_responsive_display_ad.format_setting":"UNSPECIFIED","metrics.gmail_forwards":0,"metrics.gmail_saves":0,"metrics.gmail_secondary_clicks":0,"ad_group_ad.ad.text_ad.headline":"","ad_group_ad.ad.expanded_text_ad.headline_part1":"","ad_group_ad.ad.expanded_text_ad.headline_part2":"","ad_group_ad.ad.id":592078631218,"ad_group_ad.ad.image_ad.image_url":"","ad_group_ad.ad.image_ad.pixel_height":0,"ad_group_ad.ad.image_ad.pixel_width":0,"ad_group_ad.ad.image_ad.mime_type":"UNSPECIFIED","ad_group_ad.ad.image_ad.name":"","metrics.impressions":22,"metrics.interaction_rate":0.045454545454545456,"metrics.interaction_event_types":["InteractionEventType.CLICK"],"metrics.interactions":1,"ad_group_ad.ad.legacy_responsive_display_ad.long_headline":"","ad_group_ad.ad.legacy_responsive_display_ad.main_color":"","segments.month":"2022-04-01","ad_group_ad.ad.responsive_display_ad.accent_color":"","ad_group_ad.ad.responsive_display_ad.allow_flexible_color":false,"ad_group_ad.ad.responsive_display_ad.business_name":"","ad_group_ad.ad.responsive_display_ad.call_to_action_text":"","ad_group_ad.ad.responsive_display_ad.descriptions":[],"ad_group_ad.ad.responsive_display_ad.price_prefix":"","ad_group_ad.ad.responsive_display_ad.promo_text":"","ad_group_ad.ad.responsive_display_ad.format_setting":"UNSPECIFIED","ad_group_ad.ad.responsive_display_ad.headlines":[],"ad_group_ad.ad.responsive_display_ad.logo_images":[],"ad_group_ad.ad.responsive_display_ad.square_logo_images":[],"ad_group_ad.ad.responsive_display_ad.long_headline":"","ad_group_ad.ad.responsive_display_ad.main_color":"","ad_group_ad.ad.responsive_display_ad.marketing_images":[],"ad_group_ad.ad.responsive_display_ad.square_marketing_images":[],"ad_group_ad.ad.responsive_display_ad.youtube_videos":[],"ad_group_ad.ad.expanded_text_ad.path1":"","ad_group_ad.ad.expanded_text_ad.path2":"","metrics.percent_new_visitors":0.0,"ad_group_ad.ad.legacy_responsive_display_ad.price_prefix":"","ad_group_ad.ad.legacy_responsive_display_ad.promo_text":"","segments.quarter":"2022-04-01","ad_group_ad.ad.responsive_search_ad.descriptions":["text: \"Behind The Scenes: Testing The Airbyte Maintainer Program\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n","text: \"Airbyte | Open-Source Data Integration Platform | ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n policy_topic_entries {\n topic: \"TRADEMARKS_IN_AD_TEXT\"\n type_: LIMITED\n evidences {\n text_list {\n texts: \"airbyte\"\n }\n }\n constraints {\n reseller_constraint {\n }\n }\n }\n review_status: REVIEWED\n approval_status: APPROVED_LIMITED\n}\n","text: \"Upgrading Our Discourse And Slack To Support Our Community Growth\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n","text: \"Consolidate your data in your data warehouses, lakes and databases\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"],"ad_group_ad.ad.responsive_search_ad.headlines":["text: \"Airbyte\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n","text: \"ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n","text: \"Open-source Data Integration\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"],"ad_group_ad.ad.responsive_search_ad.path1":"","ad_group_ad.ad.responsive_search_ad.path2":"","ad_group_ad.ad.legacy_responsive_display_ad.short_headline":"","ad_group_ad.status":"ENABLED","ad_group_ad.ad.system_managed_resource_source":"UNSPECIFIED","metrics.top_impression_percentage":0.7727272727272727,"ad_group_ad.ad.app_ad.descriptions":[],"ad_group_ad.ad.app_ad.headlines":[],"ad_group_ad.ad.app_ad.html5_media_bundles":[],"ad_group_ad.ad.app_ad.images":[],"ad_group_ad.ad.app_ad.mandatory_ad_text":"","ad_group_ad.ad.app_ad.youtube_videos":[],"metrics.value_per_all_conversions":0.0,"metrics.value_per_conversion":0.0,"metrics.value_per_current_model_attributed_conversion":0.0,"metrics.video_quartile_p100_rate":0.0,"metrics.video_quartile_p25_rate":0.0,"metrics.video_quartile_p50_rate":0.0,"metrics.video_quartile_p75_rate":0.0,"metrics.video_view_rate":0.0,"metrics.video_views":0,"metrics.view_through_conversions":0,"segments.week":"2022-04-04","segments.year":2022},"emitted_at":1679508005467} -{"stream":"ad_group_ad_report","data":{"ad_group_ad.ad.legacy_responsive_display_ad.accent_color":"","ad_group.id":137051662444,"customer.currency_code":"USD","customer.descriptive_name":"","customer.time_zone":"America/Los_Angeles","metrics.active_view_cpm":0.0,"metrics.active_view_ctr":0.0,"metrics.active_view_impressions":0,"metrics.active_view_measurability":0.0,"metrics.active_view_measurable_cost_micros":0,"metrics.active_view_measurable_impressions":0,"metrics.active_view_viewability":0.0,"ad_group_ad.ad_group":"customers/4651612872/adGroups/137051662444","ad_group.name":"Группа объявлений 1","ad_group.status":"ENABLED","segments.ad_network_type":"SEARCH","ad_group_ad.ad_strength":"POOR","ad_group_ad.ad.type":"RESPONSIVE_SEARCH_AD","metrics.all_conversions_from_interactions_rate":0.0,"metrics.all_conversions_value":0.0,"metrics.all_conversions":0.0,"ad_group_ad.ad.legacy_responsive_display_ad.allow_flexible_color":false,"ad_group_ad.ad.added_by_google_ads":false,"metrics.average_cost":0.0,"metrics.average_cpc":0.0,"metrics.average_cpe":0.0,"metrics.average_cpm":0.0,"metrics.average_cpv":0.0,"metrics.average_page_views":0.0,"metrics.average_time_on_site":0.0,"ad_group.base_ad_group":"customers/4651612872/adGroups/137051662444","campaign.base_campaign":"customers/4651612872/campaigns/16820250687","metrics.bounce_rate":0.0,"ad_group_ad.ad.legacy_responsive_display_ad.business_name":"","ad_group_ad.ad.legacy_responsive_display_ad.call_to_action_text":"","campaign.id":16820250687,"campaign.name":"Website traffic-Search-15","campaign.status":"PAUSED","metrics.clicks":0,"ad_group_ad.policy_summary.approval_status":"APPROVED","metrics.conversions_from_interactions_rate":0.0,"metrics.conversions_value":0.0,"metrics.conversions":0.0,"metrics.cost_micros":0,"metrics.cost_per_all_conversions":0.0,"metrics.cost_per_conversion":0.0,"metrics.cost_per_current_model_attributed_conversion":0.0,"ad_group_ad.ad.final_mobile_urls":[],"ad_group_ad.ad.final_urls":["https://airbyte.com"],"ad_group_ad.ad.tracking_url_template":"","ad_group_ad.ad.url_custom_parameters":[],"metrics.cross_device_conversions":0.0,"metrics.ctr":0.0,"metrics.current_model_attributed_conversions_value":0.0,"metrics.current_model_attributed_conversions":0.0,"segments.date":"2022-04-09","segments.day_of_week":"SATURDAY","ad_group_ad.ad.expanded_text_ad.description":"","ad_group_ad.ad.text_ad.description1":"","ad_group_ad.ad.text_ad.description2":"","ad_group_ad.ad.device_preference":"UNSPECIFIED","ad_group_ad.ad.display_url":"","metrics.engagement_rate":0.0,"metrics.engagements":0,"ad_group_ad.ad.legacy_responsive_display_ad.logo_image":"","ad_group_ad.ad.legacy_responsive_display_ad.square_logo_image":"","ad_group_ad.ad.legacy_responsive_display_ad.marketing_image":"","ad_group_ad.ad.legacy_responsive_display_ad.square_marketing_image":"","ad_group_ad.ad.expanded_dynamic_search_ad.description":"","ad_group_ad.ad.expanded_text_ad.description2":"","ad_group_ad.ad.expanded_text_ad.headline_part3":"","customer.id":4651612872,"ad_group_ad.ad.legacy_responsive_display_ad.format_setting":"UNSPECIFIED","metrics.gmail_forwards":0,"metrics.gmail_saves":0,"metrics.gmail_secondary_clicks":0,"ad_group_ad.ad.text_ad.headline":"","ad_group_ad.ad.expanded_text_ad.headline_part1":"","ad_group_ad.ad.expanded_text_ad.headline_part2":"","ad_group_ad.ad.id":592078676857,"ad_group_ad.ad.image_ad.image_url":"","ad_group_ad.ad.image_ad.pixel_height":0,"ad_group_ad.ad.image_ad.pixel_width":0,"ad_group_ad.ad.image_ad.mime_type":"UNSPECIFIED","ad_group_ad.ad.image_ad.name":"","metrics.impressions":76,"metrics.interaction_rate":0.0,"metrics.interaction_event_types":[],"metrics.interactions":0,"ad_group_ad.ad.legacy_responsive_display_ad.long_headline":"","ad_group_ad.ad.legacy_responsive_display_ad.main_color":"","segments.month":"2022-04-01","ad_group_ad.ad.responsive_display_ad.accent_color":"","ad_group_ad.ad.responsive_display_ad.allow_flexible_color":false,"ad_group_ad.ad.responsive_display_ad.business_name":"","ad_group_ad.ad.responsive_display_ad.call_to_action_text":"","ad_group_ad.ad.responsive_display_ad.descriptions":[],"ad_group_ad.ad.responsive_display_ad.price_prefix":"","ad_group_ad.ad.responsive_display_ad.promo_text":"","ad_group_ad.ad.responsive_display_ad.format_setting":"UNSPECIFIED","ad_group_ad.ad.responsive_display_ad.headlines":[],"ad_group_ad.ad.responsive_display_ad.logo_images":[],"ad_group_ad.ad.responsive_display_ad.square_logo_images":[],"ad_group_ad.ad.responsive_display_ad.long_headline":"","ad_group_ad.ad.responsive_display_ad.main_color":"","ad_group_ad.ad.responsive_display_ad.marketing_images":[],"ad_group_ad.ad.responsive_display_ad.square_marketing_images":[],"ad_group_ad.ad.responsive_display_ad.youtube_videos":[],"ad_group_ad.ad.expanded_text_ad.path1":"","ad_group_ad.ad.expanded_text_ad.path2":"","metrics.percent_new_visitors":0.0,"ad_group_ad.ad.legacy_responsive_display_ad.price_prefix":"","ad_group_ad.ad.legacy_responsive_display_ad.promo_text":"","segments.quarter":"2022-04-01","ad_group_ad.ad.responsive_search_ad.descriptions":["text: \"Behind The Scenes: Testing The Airbyte Maintainer Program\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n","text: \"Airbyte | Open-Source Data Integration Platform | ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n","text: \"Upgrading Our Discourse And Slack To Support Our Community Growth\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"],"ad_group_ad.ad.responsive_search_ad.headlines":["text: \"Airbyte\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n","text: \"ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n","text: \"Open-source Data Integration\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"],"ad_group_ad.ad.responsive_search_ad.path1":"","ad_group_ad.ad.responsive_search_ad.path2":"","ad_group_ad.ad.legacy_responsive_display_ad.short_headline":"","ad_group_ad.status":"REMOVED","ad_group_ad.ad.system_managed_resource_source":"UNSPECIFIED","metrics.top_impression_percentage":0.2894736842105263,"ad_group_ad.ad.app_ad.descriptions":[],"ad_group_ad.ad.app_ad.headlines":[],"ad_group_ad.ad.app_ad.html5_media_bundles":[],"ad_group_ad.ad.app_ad.images":[],"ad_group_ad.ad.app_ad.mandatory_ad_text":"","ad_group_ad.ad.app_ad.youtube_videos":[],"metrics.value_per_all_conversions":0.0,"metrics.value_per_conversion":0.0,"metrics.value_per_current_model_attributed_conversion":0.0,"metrics.video_quartile_p100_rate":0.0,"metrics.video_quartile_p25_rate":0.0,"metrics.video_quartile_p50_rate":0.0,"metrics.video_quartile_p75_rate":0.0,"metrics.video_view_rate":0.0,"metrics.video_views":0,"metrics.view_through_conversions":0,"segments.week":"2022-04-04","segments.year":2022},"emitted_at":1679508005471} -{"stream":"ad_group_ad_report","data":{"ad_group_ad.ad.legacy_responsive_display_ad.accent_color":"","ad_group.id":137020701042,"customer.currency_code":"USD","customer.descriptive_name":"","customer.time_zone":"America/Los_Angeles","metrics.active_view_cpm":0.0,"metrics.active_view_ctr":0.0,"metrics.active_view_impressions":0,"metrics.active_view_measurability":0.0,"metrics.active_view_measurable_cost_micros":0,"metrics.active_view_measurable_impressions":0,"metrics.active_view_viewability":0.0,"ad_group_ad.ad_group":"customers/4651612872/adGroups/137020701042","ad_group.name":"Группа объявлений 2","ad_group.status":"ENABLED","segments.ad_network_type":"SEARCH_PARTNERS","ad_group_ad.ad_strength":"POOR","ad_group_ad.ad.type":"RESPONSIVE_SEARCH_AD","metrics.all_conversions_from_interactions_rate":0.0,"metrics.all_conversions_value":0.0,"metrics.all_conversions":0.0,"ad_group_ad.ad.legacy_responsive_display_ad.allow_flexible_color":false,"ad_group_ad.ad.added_by_google_ads":false,"metrics.average_cost":0.0,"metrics.average_cpc":0.0,"metrics.average_cpe":0.0,"metrics.average_cpm":0.0,"metrics.average_cpv":0.0,"metrics.average_page_views":0.0,"metrics.average_time_on_site":0.0,"ad_group.base_ad_group":"customers/4651612872/adGroups/137020701042","campaign.base_campaign":"customers/4651612872/campaigns/16820250687","metrics.bounce_rate":0.0,"ad_group_ad.ad.legacy_responsive_display_ad.business_name":"","ad_group_ad.ad.legacy_responsive_display_ad.call_to_action_text":"","campaign.id":16820250687,"campaign.name":"Website traffic-Search-15","campaign.status":"PAUSED","metrics.clicks":0,"ad_group_ad.policy_summary.approval_status":"APPROVED_LIMITED","metrics.conversions_from_interactions_rate":0.0,"metrics.conversions_value":0.0,"metrics.conversions":0.0,"metrics.cost_micros":0,"metrics.cost_per_all_conversions":0.0,"metrics.cost_per_conversion":0.0,"metrics.cost_per_current_model_attributed_conversion":0.0,"ad_group_ad.ad.final_mobile_urls":[],"ad_group_ad.ad.final_urls":["https://airbyte.com"],"ad_group_ad.ad.tracking_url_template":"","ad_group_ad.ad.url_custom_parameters":[],"metrics.cross_device_conversions":0.0,"metrics.ctr":0.0,"metrics.current_model_attributed_conversions_value":0.0,"metrics.current_model_attributed_conversions":0.0,"segments.date":"2022-04-09","segments.day_of_week":"SATURDAY","ad_group_ad.ad.expanded_text_ad.description":"","ad_group_ad.ad.text_ad.description1":"","ad_group_ad.ad.text_ad.description2":"","ad_group_ad.ad.device_preference":"UNSPECIFIED","ad_group_ad.ad.display_url":"","metrics.engagement_rate":0.0,"metrics.engagements":0,"ad_group_ad.ad.legacy_responsive_display_ad.logo_image":"","ad_group_ad.ad.legacy_responsive_display_ad.square_logo_image":"","ad_group_ad.ad.legacy_responsive_display_ad.marketing_image":"","ad_group_ad.ad.legacy_responsive_display_ad.square_marketing_image":"","ad_group_ad.ad.expanded_dynamic_search_ad.description":"","ad_group_ad.ad.expanded_text_ad.description2":"","ad_group_ad.ad.expanded_text_ad.headline_part3":"","customer.id":4651612872,"ad_group_ad.ad.legacy_responsive_display_ad.format_setting":"UNSPECIFIED","metrics.gmail_forwards":0,"metrics.gmail_saves":0,"metrics.gmail_secondary_clicks":0,"ad_group_ad.ad.text_ad.headline":"","ad_group_ad.ad.expanded_text_ad.headline_part1":"","ad_group_ad.ad.expanded_text_ad.headline_part2":"","ad_group_ad.ad.id":592078631218,"ad_group_ad.ad.image_ad.image_url":"","ad_group_ad.ad.image_ad.pixel_height":0,"ad_group_ad.ad.image_ad.pixel_width":0,"ad_group_ad.ad.image_ad.mime_type":"UNSPECIFIED","ad_group_ad.ad.image_ad.name":"","metrics.impressions":16,"metrics.interaction_rate":0.0,"metrics.interaction_event_types":[],"metrics.interactions":0,"ad_group_ad.ad.legacy_responsive_display_ad.long_headline":"","ad_group_ad.ad.legacy_responsive_display_ad.main_color":"","segments.month":"2022-04-01","ad_group_ad.ad.responsive_display_ad.accent_color":"","ad_group_ad.ad.responsive_display_ad.allow_flexible_color":false,"ad_group_ad.ad.responsive_display_ad.business_name":"","ad_group_ad.ad.responsive_display_ad.call_to_action_text":"","ad_group_ad.ad.responsive_display_ad.descriptions":[],"ad_group_ad.ad.responsive_display_ad.price_prefix":"","ad_group_ad.ad.responsive_display_ad.promo_text":"","ad_group_ad.ad.responsive_display_ad.format_setting":"UNSPECIFIED","ad_group_ad.ad.responsive_display_ad.headlines":[],"ad_group_ad.ad.responsive_display_ad.logo_images":[],"ad_group_ad.ad.responsive_display_ad.square_logo_images":[],"ad_group_ad.ad.responsive_display_ad.long_headline":"","ad_group_ad.ad.responsive_display_ad.main_color":"","ad_group_ad.ad.responsive_display_ad.marketing_images":[],"ad_group_ad.ad.responsive_display_ad.square_marketing_images":[],"ad_group_ad.ad.responsive_display_ad.youtube_videos":[],"ad_group_ad.ad.expanded_text_ad.path1":"","ad_group_ad.ad.expanded_text_ad.path2":"","metrics.percent_new_visitors":0.0,"ad_group_ad.ad.legacy_responsive_display_ad.price_prefix":"","ad_group_ad.ad.legacy_responsive_display_ad.promo_text":"","segments.quarter":"2022-04-01","ad_group_ad.ad.responsive_search_ad.descriptions":["text: \"Behind The Scenes: Testing The Airbyte Maintainer Program\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n","text: \"Airbyte | Open-Source Data Integration Platform | ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n policy_topic_entries {\n topic: \"TRADEMARKS_IN_AD_TEXT\"\n type_: LIMITED\n evidences {\n text_list {\n texts: \"airbyte\"\n }\n }\n constraints {\n reseller_constraint {\n }\n }\n }\n review_status: REVIEWED\n approval_status: APPROVED_LIMITED\n}\n","text: \"Upgrading Our Discourse And Slack To Support Our Community Growth\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n","text: \"Consolidate your data in your data warehouses, lakes and databases\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"],"ad_group_ad.ad.responsive_search_ad.headlines":["text: \"Airbyte\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n","text: \"ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n","text: \"Open-source Data Integration\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"],"ad_group_ad.ad.responsive_search_ad.path1":"","ad_group_ad.ad.responsive_search_ad.path2":"","ad_group_ad.ad.legacy_responsive_display_ad.short_headline":"","ad_group_ad.status":"ENABLED","ad_group_ad.ad.system_managed_resource_source":"UNSPECIFIED","metrics.top_impression_percentage":0.0,"ad_group_ad.ad.app_ad.descriptions":[],"ad_group_ad.ad.app_ad.headlines":[],"ad_group_ad.ad.app_ad.html5_media_bundles":[],"ad_group_ad.ad.app_ad.images":[],"ad_group_ad.ad.app_ad.mandatory_ad_text":"","ad_group_ad.ad.app_ad.youtube_videos":[],"metrics.value_per_all_conversions":0.0,"metrics.value_per_conversion":0.0,"metrics.value_per_current_model_attributed_conversion":0.0,"metrics.video_quartile_p100_rate":0.0,"metrics.video_quartile_p25_rate":0.0,"metrics.video_quartile_p50_rate":0.0,"metrics.video_quartile_p75_rate":0.0,"metrics.video_view_rate":0.0,"metrics.video_views":0,"metrics.view_through_conversions":0,"segments.week":"2022-04-04","segments.year":2022},"emitted_at":1679508005476} -{"stream":"ad_group_ad_report","data":{"ad_group_ad.ad.legacy_responsive_display_ad.accent_color":"","ad_group.id":137051662444,"customer.currency_code":"USD","customer.descriptive_name":"","customer.time_zone":"America/Los_Angeles","metrics.active_view_cpm":0.0,"metrics.active_view_ctr":0.0,"metrics.active_view_impressions":0,"metrics.active_view_measurability":0.0,"metrics.active_view_measurable_cost_micros":0,"metrics.active_view_measurable_impressions":0,"metrics.active_view_viewability":0.0,"ad_group_ad.ad_group":"customers/4651612872/adGroups/137051662444","ad_group.name":"Группа объявлений 1","ad_group.status":"ENABLED","segments.ad_network_type":"SEARCH_PARTNERS","ad_group_ad.ad_strength":"POOR","ad_group_ad.ad.type":"RESPONSIVE_SEARCH_AD","metrics.all_conversions_from_interactions_rate":0.0,"metrics.all_conversions_value":0.0,"metrics.all_conversions":0.0,"ad_group_ad.ad.legacy_responsive_display_ad.allow_flexible_color":false,"ad_group_ad.ad.added_by_google_ads":false,"metrics.average_cost":0.0,"metrics.average_cpc":0.0,"metrics.average_cpe":0.0,"metrics.average_cpm":0.0,"metrics.average_cpv":0.0,"metrics.average_page_views":0.0,"metrics.average_time_on_site":0.0,"ad_group.base_ad_group":"customers/4651612872/adGroups/137051662444","campaign.base_campaign":"customers/4651612872/campaigns/16820250687","metrics.bounce_rate":0.0,"ad_group_ad.ad.legacy_responsive_display_ad.business_name":"","ad_group_ad.ad.legacy_responsive_display_ad.call_to_action_text":"","campaign.id":16820250687,"campaign.name":"Website traffic-Search-15","campaign.status":"PAUSED","metrics.clicks":0,"ad_group_ad.policy_summary.approval_status":"APPROVED","metrics.conversions_from_interactions_rate":0.0,"metrics.conversions_value":0.0,"metrics.conversions":0.0,"metrics.cost_micros":0,"metrics.cost_per_all_conversions":0.0,"metrics.cost_per_conversion":0.0,"metrics.cost_per_current_model_attributed_conversion":0.0,"ad_group_ad.ad.final_mobile_urls":[],"ad_group_ad.ad.final_urls":["https://airbyte.com"],"ad_group_ad.ad.tracking_url_template":"","ad_group_ad.ad.url_custom_parameters":[],"metrics.cross_device_conversions":0.0,"metrics.ctr":0.0,"metrics.current_model_attributed_conversions_value":0.0,"metrics.current_model_attributed_conversions":0.0,"segments.date":"2022-04-09","segments.day_of_week":"SATURDAY","ad_group_ad.ad.expanded_text_ad.description":"","ad_group_ad.ad.text_ad.description1":"","ad_group_ad.ad.text_ad.description2":"","ad_group_ad.ad.device_preference":"UNSPECIFIED","ad_group_ad.ad.display_url":"","metrics.engagement_rate":0.0,"metrics.engagements":0,"ad_group_ad.ad.legacy_responsive_display_ad.logo_image":"","ad_group_ad.ad.legacy_responsive_display_ad.square_logo_image":"","ad_group_ad.ad.legacy_responsive_display_ad.marketing_image":"","ad_group_ad.ad.legacy_responsive_display_ad.square_marketing_image":"","ad_group_ad.ad.expanded_dynamic_search_ad.description":"","ad_group_ad.ad.expanded_text_ad.description2":"","ad_group_ad.ad.expanded_text_ad.headline_part3":"","customer.id":4651612872,"ad_group_ad.ad.legacy_responsive_display_ad.format_setting":"UNSPECIFIED","metrics.gmail_forwards":0,"metrics.gmail_saves":0,"metrics.gmail_secondary_clicks":0,"ad_group_ad.ad.text_ad.headline":"","ad_group_ad.ad.expanded_text_ad.headline_part1":"","ad_group_ad.ad.expanded_text_ad.headline_part2":"","ad_group_ad.ad.id":592078676857,"ad_group_ad.ad.image_ad.image_url":"","ad_group_ad.ad.image_ad.pixel_height":0,"ad_group_ad.ad.image_ad.pixel_width":0,"ad_group_ad.ad.image_ad.mime_type":"UNSPECIFIED","ad_group_ad.ad.image_ad.name":"","metrics.impressions":28,"metrics.interaction_rate":0.0,"metrics.interaction_event_types":[],"metrics.interactions":0,"ad_group_ad.ad.legacy_responsive_display_ad.long_headline":"","ad_group_ad.ad.legacy_responsive_display_ad.main_color":"","segments.month":"2022-04-01","ad_group_ad.ad.responsive_display_ad.accent_color":"","ad_group_ad.ad.responsive_display_ad.allow_flexible_color":false,"ad_group_ad.ad.responsive_display_ad.business_name":"","ad_group_ad.ad.responsive_display_ad.call_to_action_text":"","ad_group_ad.ad.responsive_display_ad.descriptions":[],"ad_group_ad.ad.responsive_display_ad.price_prefix":"","ad_group_ad.ad.responsive_display_ad.promo_text":"","ad_group_ad.ad.responsive_display_ad.format_setting":"UNSPECIFIED","ad_group_ad.ad.responsive_display_ad.headlines":[],"ad_group_ad.ad.responsive_display_ad.logo_images":[],"ad_group_ad.ad.responsive_display_ad.square_logo_images":[],"ad_group_ad.ad.responsive_display_ad.long_headline":"","ad_group_ad.ad.responsive_display_ad.main_color":"","ad_group_ad.ad.responsive_display_ad.marketing_images":[],"ad_group_ad.ad.responsive_display_ad.square_marketing_images":[],"ad_group_ad.ad.responsive_display_ad.youtube_videos":[],"ad_group_ad.ad.expanded_text_ad.path1":"","ad_group_ad.ad.expanded_text_ad.path2":"","metrics.percent_new_visitors":0.0,"ad_group_ad.ad.legacy_responsive_display_ad.price_prefix":"","ad_group_ad.ad.legacy_responsive_display_ad.promo_text":"","segments.quarter":"2022-04-01","ad_group_ad.ad.responsive_search_ad.descriptions":["text: \"Behind The Scenes: Testing The Airbyte Maintainer Program\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n","text: \"Airbyte | Open-Source Data Integration Platform | ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n","text: \"Upgrading Our Discourse And Slack To Support Our Community Growth\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"],"ad_group_ad.ad.responsive_search_ad.headlines":["text: \"Airbyte\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n","text: \"ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n","text: \"Open-source Data Integration\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"],"ad_group_ad.ad.responsive_search_ad.path1":"","ad_group_ad.ad.responsive_search_ad.path2":"","ad_group_ad.ad.legacy_responsive_display_ad.short_headline":"","ad_group_ad.status":"REMOVED","ad_group_ad.ad.system_managed_resource_source":"UNSPECIFIED","metrics.top_impression_percentage":0.0,"ad_group_ad.ad.app_ad.descriptions":[],"ad_group_ad.ad.app_ad.headlines":[],"ad_group_ad.ad.app_ad.html5_media_bundles":[],"ad_group_ad.ad.app_ad.images":[],"ad_group_ad.ad.app_ad.mandatory_ad_text":"","ad_group_ad.ad.app_ad.youtube_videos":[],"metrics.value_per_all_conversions":0.0,"metrics.value_per_conversion":0.0,"metrics.value_per_current_model_attributed_conversion":0.0,"metrics.video_quartile_p100_rate":0.0,"metrics.video_quartile_p25_rate":0.0,"metrics.video_quartile_p50_rate":0.0,"metrics.video_quartile_p75_rate":0.0,"metrics.video_view_rate":0.0,"metrics.video_views":0,"metrics.view_through_conversions":0,"segments.week":"2022-04-04","segments.year":2022},"emitted_at":1679508005481} -{"stream": "ad_group_ads", "data": {"ad_group_ad.ad.added_by_google_ads": false, "ad_group_ad.ad.app_ad.descriptions": [], "ad_group_ad.ad.app_ad.headlines": [], "ad_group_ad.ad.app_ad.html5_media_bundles": [], "ad_group_ad.ad.app_ad.images": [], "ad_group_ad.ad.app_ad.mandatory_ad_text": "", "ad_group_ad.ad.app_ad.youtube_videos": [], "ad_group_ad.ad.app_engagement_ad.descriptions": [], "ad_group_ad.ad.app_engagement_ad.headlines": [], "ad_group_ad.ad.app_engagement_ad.images": [], "ad_group_ad.ad.app_engagement_ad.videos": [], "ad_group_ad.ad.call_ad.business_name": "", "ad_group_ad.ad.call_ad.call_tracked": false, "ad_group_ad.ad.call_ad.conversion_action": "", "ad_group_ad.ad.call_ad.conversion_reporting_state": "UNSPECIFIED", "ad_group_ad.ad.call_ad.country_code": "", "ad_group_ad.ad.call_ad.description1": "", "ad_group_ad.ad.call_ad.description2": "", "ad_group_ad.ad.call_ad.disable_call_conversion": false, "ad_group_ad.ad.call_ad.headline1": "", "ad_group_ad.ad.call_ad.headline2": "", "ad_group_ad.ad.call_ad.path1": "", "ad_group_ad.ad.call_ad.path2": "", "ad_group_ad.ad.call_ad.phone_number": "", "ad_group_ad.ad.call_ad.phone_number_verification_url": "", "ad_group_ad.ad.device_preference": "UNSPECIFIED", "ad_group_ad.ad.display_upload_ad.display_upload_product_type": "UNSPECIFIED", "ad_group_ad.ad.display_upload_ad.media_bundle": "", "ad_group_ad.ad.display_url": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.description": "", "ad_group_ad.ad.expanded_text_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.headline_part1": "", "ad_group_ad.ad.expanded_text_ad.headline_part2": "", "ad_group_ad.ad.expanded_text_ad.headline_part3": "", "ad_group_ad.ad.expanded_text_ad.path1": "", "ad_group_ad.ad.expanded_text_ad.path2": "", "ad_group_ad.ad.final_app_urls": [], "ad_group_ad.ad.final_mobile_urls": [], "ad_group_ad.ad.final_url_suffix": "", "ad_group_ad.ad.final_urls": ["https://airbyte.com"], "ad_group_ad.ad.hotel_ad": "", "ad_group_ad.ad.id": 592078676857, "ad_group_ad.ad.image_ad.image_url": "", "ad_group_ad.ad.image_ad.mime_type": "UNSPECIFIED", "ad_group_ad.ad.image_ad.name": "", "ad_group_ad.ad.image_ad.pixel_height": 0, "ad_group_ad.ad.image_ad.pixel_width": 0, "ad_group_ad.ad.image_ad.preview_image_url": "", "ad_group_ad.ad.image_ad.preview_pixel_height": 0, "ad_group_ad.ad.image_ad.preview_pixel_width": 0, "ad_group_ad.ad.legacy_app_install_ad": "", "ad_group_ad.ad.legacy_responsive_display_ad.accent_color": "", "ad_group_ad.ad.legacy_responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.legacy_responsive_display_ad.business_name": "", "ad_group_ad.ad.legacy_responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.legacy_responsive_display_ad.description": "", "ad_group_ad.ad.legacy_responsive_display_ad.format_setting": "UNSPECIFIED", "ad_group_ad.ad.legacy_responsive_display_ad.logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.long_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.main_color": "", "ad_group_ad.ad.legacy_responsive_display_ad.marketing_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.price_prefix": "", "ad_group_ad.ad.legacy_responsive_display_ad.promo_text": "", "ad_group_ad.ad.legacy_responsive_display_ad.short_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_marketing_image": "", "ad_group_ad.ad.local_ad.call_to_actions": [], "ad_group_ad.ad.local_ad.descriptions": [], "ad_group_ad.ad.local_ad.headlines": [], "ad_group_ad.ad.local_ad.logo_images": [], "ad_group_ad.ad.local_ad.marketing_images": [], "ad_group_ad.ad.local_ad.path1": "", "ad_group_ad.ad.local_ad.path2": "", "ad_group_ad.ad.local_ad.videos": [], "ad_group_ad.ad.name": "", "ad_group_ad.ad.resource_name": "customers/4651612872/ads/592078676857", "ad_group_ad.ad.responsive_display_ad.accent_color": "", "ad_group_ad.ad.responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.responsive_display_ad.business_name": "", "ad_group_ad.ad.responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.responsive_display_ad.control_spec.enable_asset_enhancements": false, "ad_group_ad.ad.responsive_display_ad.control_spec.enable_autogen_video": false, "ad_group_ad.ad.responsive_display_ad.descriptions": [], "ad_group_ad.ad.responsive_display_ad.format_setting": "UNSPECIFIED", "ad_group_ad.ad.responsive_display_ad.headlines": [], "ad_group_ad.ad.responsive_display_ad.logo_images": [], "ad_group_ad.ad.responsive_display_ad.long_headline": "", "ad_group_ad.ad.responsive_display_ad.main_color": "", "ad_group_ad.ad.responsive_display_ad.marketing_images": [], "ad_group_ad.ad.responsive_display_ad.price_prefix": "", "ad_group_ad.ad.responsive_display_ad.promo_text": "", "ad_group_ad.ad.responsive_display_ad.square_logo_images": [], "ad_group_ad.ad.responsive_display_ad.square_marketing_images": [], "ad_group_ad.ad.responsive_display_ad.youtube_videos": [], "ad_group_ad.ad.responsive_search_ad.descriptions": ["text: \"Behind The Scenes: Testing The Airbyte Maintainer Program\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Airbyte | Open-Source Data Integration Platform | ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Upgrading Our Discourse And Slack To Support Our Community Growth\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"], "ad_group_ad.ad.responsive_search_ad.headlines": ["text: \"Airbyte\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Open-source Data Integration\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"], "ad_group_ad.ad.responsive_search_ad.path1": "", "ad_group_ad.ad.responsive_search_ad.path2": "", "ad_group_ad.ad.shopping_comparison_listing_ad.headline": "", "ad_group_ad.ad.shopping_product_ad": "", "ad_group_ad.ad.shopping_smart_ad": "", "ad_group_ad.ad.smart_campaign_ad.descriptions": [], "ad_group_ad.ad.smart_campaign_ad.headlines": [], "ad_group_ad.ad.system_managed_resource_source": "UNSPECIFIED", "ad_group_ad.ad.text_ad.description1": "", "ad_group_ad.ad.text_ad.description2": "", "ad_group_ad.ad.text_ad.headline": "", "ad_group_ad.ad.tracking_url_template": "", "ad_group_ad.ad.type": "RESPONSIVE_SEARCH_AD", "ad_group_ad.ad.url_collections": [], "ad_group_ad.ad.url_custom_parameters": [], "ad_group_ad.ad.video_ad.in_feed.description1": "", "ad_group_ad.ad.video_ad.in_feed.description2": "", "ad_group_ad.ad.video_ad.in_feed.headline": "", "ad_group_ad.ad.video_ad.in_stream.action_button_label": "", "ad_group_ad.ad.video_ad.in_stream.action_headline": "", "ad_group_ad.ad.video_ad.out_stream.description": "", "ad_group_ad.ad.video_ad.out_stream.headline": "", "ad_group_ad.ad.video_responsive_ad.call_to_actions": [], "ad_group_ad.ad.video_responsive_ad.companion_banners": [], "ad_group_ad.ad.video_responsive_ad.descriptions": [], "ad_group_ad.ad.video_responsive_ad.headlines": [], "ad_group_ad.ad.video_responsive_ad.long_headlines": [], "ad_group_ad.ad.video_responsive_ad.videos": [], "ad_group_ad.ad_group": "customers/4651612872/adGroups/137051662444", "ad_group_ad.ad_strength": "POOR", "ad_group_ad.labels": [], "ad_group_ad.policy_summary.approval_status": "APPROVED", "ad_group_ad.policy_summary.policy_topic_entries": [], "ad_group_ad.policy_summary.review_status": "REVIEWED", "ad_group_ad.resource_name": "customers/4651612872/adGroupAds/137051662444~592078676857", "ad_group_ad.status": "REMOVED", "segments.date": "2022-04-08"}, "emitted_at": 1692608495121} -{"stream": "ad_group_ads", "data": {"ad_group_ad.ad.added_by_google_ads": false, "ad_group_ad.ad.app_ad.descriptions": [], "ad_group_ad.ad.app_ad.headlines": [], "ad_group_ad.ad.app_ad.html5_media_bundles": [], "ad_group_ad.ad.app_ad.images": [], "ad_group_ad.ad.app_ad.mandatory_ad_text": "", "ad_group_ad.ad.app_ad.youtube_videos": [], "ad_group_ad.ad.app_engagement_ad.descriptions": [], "ad_group_ad.ad.app_engagement_ad.headlines": [], "ad_group_ad.ad.app_engagement_ad.images": [], "ad_group_ad.ad.app_engagement_ad.videos": [], "ad_group_ad.ad.call_ad.business_name": "", "ad_group_ad.ad.call_ad.call_tracked": false, "ad_group_ad.ad.call_ad.conversion_action": "", "ad_group_ad.ad.call_ad.conversion_reporting_state": "UNSPECIFIED", "ad_group_ad.ad.call_ad.country_code": "", "ad_group_ad.ad.call_ad.description1": "", "ad_group_ad.ad.call_ad.description2": "", "ad_group_ad.ad.call_ad.disable_call_conversion": false, "ad_group_ad.ad.call_ad.headline1": "", "ad_group_ad.ad.call_ad.headline2": "", "ad_group_ad.ad.call_ad.path1": "", "ad_group_ad.ad.call_ad.path2": "", "ad_group_ad.ad.call_ad.phone_number": "", "ad_group_ad.ad.call_ad.phone_number_verification_url": "", "ad_group_ad.ad.device_preference": "UNSPECIFIED", "ad_group_ad.ad.display_upload_ad.display_upload_product_type": "UNSPECIFIED", "ad_group_ad.ad.display_upload_ad.media_bundle": "", "ad_group_ad.ad.display_url": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.description": "", "ad_group_ad.ad.expanded_text_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.headline_part1": "", "ad_group_ad.ad.expanded_text_ad.headline_part2": "", "ad_group_ad.ad.expanded_text_ad.headline_part3": "", "ad_group_ad.ad.expanded_text_ad.path1": "", "ad_group_ad.ad.expanded_text_ad.path2": "", "ad_group_ad.ad.final_app_urls": [], "ad_group_ad.ad.final_mobile_urls": [], "ad_group_ad.ad.final_url_suffix": "", "ad_group_ad.ad.final_urls": ["https://airbyte.com"], "ad_group_ad.ad.hotel_ad": "", "ad_group_ad.ad.id": 592078631218, "ad_group_ad.ad.image_ad.image_url": "", "ad_group_ad.ad.image_ad.mime_type": "UNSPECIFIED", "ad_group_ad.ad.image_ad.name": "", "ad_group_ad.ad.image_ad.pixel_height": 0, "ad_group_ad.ad.image_ad.pixel_width": 0, "ad_group_ad.ad.image_ad.preview_image_url": "", "ad_group_ad.ad.image_ad.preview_pixel_height": 0, "ad_group_ad.ad.image_ad.preview_pixel_width": 0, "ad_group_ad.ad.legacy_app_install_ad": "", "ad_group_ad.ad.legacy_responsive_display_ad.accent_color": "", "ad_group_ad.ad.legacy_responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.legacy_responsive_display_ad.business_name": "", "ad_group_ad.ad.legacy_responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.legacy_responsive_display_ad.description": "", "ad_group_ad.ad.legacy_responsive_display_ad.format_setting": "UNSPECIFIED", "ad_group_ad.ad.legacy_responsive_display_ad.logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.long_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.main_color": "", "ad_group_ad.ad.legacy_responsive_display_ad.marketing_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.price_prefix": "", "ad_group_ad.ad.legacy_responsive_display_ad.promo_text": "", "ad_group_ad.ad.legacy_responsive_display_ad.short_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_marketing_image": "", "ad_group_ad.ad.local_ad.call_to_actions": [], "ad_group_ad.ad.local_ad.descriptions": [], "ad_group_ad.ad.local_ad.headlines": [], "ad_group_ad.ad.local_ad.logo_images": [], "ad_group_ad.ad.local_ad.marketing_images": [], "ad_group_ad.ad.local_ad.path1": "", "ad_group_ad.ad.local_ad.path2": "", "ad_group_ad.ad.local_ad.videos": [], "ad_group_ad.ad.name": "", "ad_group_ad.ad.resource_name": "customers/4651612872/ads/592078631218", "ad_group_ad.ad.responsive_display_ad.accent_color": "", "ad_group_ad.ad.responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.responsive_display_ad.business_name": "", "ad_group_ad.ad.responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.responsive_display_ad.control_spec.enable_asset_enhancements": false, "ad_group_ad.ad.responsive_display_ad.control_spec.enable_autogen_video": false, "ad_group_ad.ad.responsive_display_ad.descriptions": [], "ad_group_ad.ad.responsive_display_ad.format_setting": "UNSPECIFIED", "ad_group_ad.ad.responsive_display_ad.headlines": [], "ad_group_ad.ad.responsive_display_ad.logo_images": [], "ad_group_ad.ad.responsive_display_ad.long_headline": "", "ad_group_ad.ad.responsive_display_ad.main_color": "", "ad_group_ad.ad.responsive_display_ad.marketing_images": [], "ad_group_ad.ad.responsive_display_ad.price_prefix": "", "ad_group_ad.ad.responsive_display_ad.promo_text": "", "ad_group_ad.ad.responsive_display_ad.square_logo_images": [], "ad_group_ad.ad.responsive_display_ad.square_marketing_images": [], "ad_group_ad.ad.responsive_display_ad.youtube_videos": [], "ad_group_ad.ad.responsive_search_ad.descriptions": ["text: \"Behind The Scenes: Testing The Airbyte Maintainer Program\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Airbyte | Open-Source Data Integration Platform | ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n policy_topic_entries {\n topic: \"TRADEMARKS_IN_AD_TEXT\"\n type_: LIMITED\n evidences {\n text_list {\n texts: \"airbyte\"\n }\n }\n constraints {\n reseller_constraint {\n }\n }\n }\n review_status: REVIEWED\n approval_status: APPROVED_LIMITED\n}\n", "text: \"Upgrading Our Discourse And Slack To Support Our Community Growth\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Consolidate your data in your data warehouses, lakes and databases\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"], "ad_group_ad.ad.responsive_search_ad.headlines": ["text: \"Airbyte\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Open-source Data Integration\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"], "ad_group_ad.ad.responsive_search_ad.path1": "", "ad_group_ad.ad.responsive_search_ad.path2": "", "ad_group_ad.ad.shopping_comparison_listing_ad.headline": "", "ad_group_ad.ad.shopping_product_ad": "", "ad_group_ad.ad.shopping_smart_ad": "", "ad_group_ad.ad.smart_campaign_ad.descriptions": [], "ad_group_ad.ad.smart_campaign_ad.headlines": [], "ad_group_ad.ad.system_managed_resource_source": "UNSPECIFIED", "ad_group_ad.ad.text_ad.description1": "", "ad_group_ad.ad.text_ad.description2": "", "ad_group_ad.ad.text_ad.headline": "", "ad_group_ad.ad.tracking_url_template": "", "ad_group_ad.ad.type": "RESPONSIVE_SEARCH_AD", "ad_group_ad.ad.url_collections": [], "ad_group_ad.ad.url_custom_parameters": [], "ad_group_ad.ad.video_ad.in_feed.description1": "", "ad_group_ad.ad.video_ad.in_feed.description2": "", "ad_group_ad.ad.video_ad.in_feed.headline": "", "ad_group_ad.ad.video_ad.in_stream.action_button_label": "", "ad_group_ad.ad.video_ad.in_stream.action_headline": "", "ad_group_ad.ad.video_ad.out_stream.description": "", "ad_group_ad.ad.video_ad.out_stream.headline": "", "ad_group_ad.ad.video_responsive_ad.call_to_actions": [], "ad_group_ad.ad.video_responsive_ad.companion_banners": [], "ad_group_ad.ad.video_responsive_ad.descriptions": [], "ad_group_ad.ad.video_responsive_ad.headlines": [], "ad_group_ad.ad.video_responsive_ad.long_headlines": [], "ad_group_ad.ad.video_responsive_ad.videos": [], "ad_group_ad.ad_group": "customers/4651612872/adGroups/137020701042", "ad_group_ad.ad_strength": "POOR", "ad_group_ad.labels": ["customers/4651612872/labels/21906377810"], "ad_group_ad.policy_summary.approval_status": "APPROVED_LIMITED", "ad_group_ad.policy_summary.policy_topic_entries": ["topic: \"TRADEMARKS_IN_AD_TEXT\"\ntype_: LIMITED\nevidences {\n text_list {\n texts: \"airbyte\"\n }\n}\nconstraints {\n reseller_constraint {\n }\n}\n"], "ad_group_ad.policy_summary.review_status": "REVIEWED", "ad_group_ad.resource_name": "customers/4651612872/adGroupAds/137020701042~592078631218", "ad_group_ad.status": "ENABLED", "segments.date": "2022-04-09"}, "emitted_at": 1692608495139} -{"stream": "ad_group_ads", "data": {"ad_group_ad.ad.added_by_google_ads": false, "ad_group_ad.ad.app_ad.descriptions": [], "ad_group_ad.ad.app_ad.headlines": [], "ad_group_ad.ad.app_ad.html5_media_bundles": [], "ad_group_ad.ad.app_ad.images": [], "ad_group_ad.ad.app_ad.mandatory_ad_text": "", "ad_group_ad.ad.app_ad.youtube_videos": [], "ad_group_ad.ad.app_engagement_ad.descriptions": [], "ad_group_ad.ad.app_engagement_ad.headlines": [], "ad_group_ad.ad.app_engagement_ad.images": [], "ad_group_ad.ad.app_engagement_ad.videos": [], "ad_group_ad.ad.call_ad.business_name": "", "ad_group_ad.ad.call_ad.call_tracked": false, "ad_group_ad.ad.call_ad.conversion_action": "", "ad_group_ad.ad.call_ad.conversion_reporting_state": "UNSPECIFIED", "ad_group_ad.ad.call_ad.country_code": "", "ad_group_ad.ad.call_ad.description1": "", "ad_group_ad.ad.call_ad.description2": "", "ad_group_ad.ad.call_ad.disable_call_conversion": false, "ad_group_ad.ad.call_ad.headline1": "", "ad_group_ad.ad.call_ad.headline2": "", "ad_group_ad.ad.call_ad.path1": "", "ad_group_ad.ad.call_ad.path2": "", "ad_group_ad.ad.call_ad.phone_number": "", "ad_group_ad.ad.call_ad.phone_number_verification_url": "", "ad_group_ad.ad.device_preference": "UNSPECIFIED", "ad_group_ad.ad.display_upload_ad.display_upload_product_type": "UNSPECIFIED", "ad_group_ad.ad.display_upload_ad.media_bundle": "", "ad_group_ad.ad.display_url": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.description": "", "ad_group_ad.ad.expanded_text_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.headline_part1": "", "ad_group_ad.ad.expanded_text_ad.headline_part2": "", "ad_group_ad.ad.expanded_text_ad.headline_part3": "", "ad_group_ad.ad.expanded_text_ad.path1": "", "ad_group_ad.ad.expanded_text_ad.path2": "", "ad_group_ad.ad.final_app_urls": [], "ad_group_ad.ad.final_mobile_urls": [], "ad_group_ad.ad.final_url_suffix": "", "ad_group_ad.ad.final_urls": ["https://airbyte.com"], "ad_group_ad.ad.hotel_ad": "", "ad_group_ad.ad.id": 592078676857, "ad_group_ad.ad.image_ad.image_url": "", "ad_group_ad.ad.image_ad.mime_type": "UNSPECIFIED", "ad_group_ad.ad.image_ad.name": "", "ad_group_ad.ad.image_ad.pixel_height": 0, "ad_group_ad.ad.image_ad.pixel_width": 0, "ad_group_ad.ad.image_ad.preview_image_url": "", "ad_group_ad.ad.image_ad.preview_pixel_height": 0, "ad_group_ad.ad.image_ad.preview_pixel_width": 0, "ad_group_ad.ad.legacy_app_install_ad": "", "ad_group_ad.ad.legacy_responsive_display_ad.accent_color": "", "ad_group_ad.ad.legacy_responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.legacy_responsive_display_ad.business_name": "", "ad_group_ad.ad.legacy_responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.legacy_responsive_display_ad.description": "", "ad_group_ad.ad.legacy_responsive_display_ad.format_setting": "UNSPECIFIED", "ad_group_ad.ad.legacy_responsive_display_ad.logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.long_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.main_color": "", "ad_group_ad.ad.legacy_responsive_display_ad.marketing_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.price_prefix": "", "ad_group_ad.ad.legacy_responsive_display_ad.promo_text": "", "ad_group_ad.ad.legacy_responsive_display_ad.short_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_marketing_image": "", "ad_group_ad.ad.local_ad.call_to_actions": [], "ad_group_ad.ad.local_ad.descriptions": [], "ad_group_ad.ad.local_ad.headlines": [], "ad_group_ad.ad.local_ad.logo_images": [], "ad_group_ad.ad.local_ad.marketing_images": [], "ad_group_ad.ad.local_ad.path1": "", "ad_group_ad.ad.local_ad.path2": "", "ad_group_ad.ad.local_ad.videos": [], "ad_group_ad.ad.name": "", "ad_group_ad.ad.resource_name": "customers/4651612872/ads/592078676857", "ad_group_ad.ad.responsive_display_ad.accent_color": "", "ad_group_ad.ad.responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.responsive_display_ad.business_name": "", "ad_group_ad.ad.responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.responsive_display_ad.control_spec.enable_asset_enhancements": false, "ad_group_ad.ad.responsive_display_ad.control_spec.enable_autogen_video": false, "ad_group_ad.ad.responsive_display_ad.descriptions": [], "ad_group_ad.ad.responsive_display_ad.format_setting": "UNSPECIFIED", "ad_group_ad.ad.responsive_display_ad.headlines": [], "ad_group_ad.ad.responsive_display_ad.logo_images": [], "ad_group_ad.ad.responsive_display_ad.long_headline": "", "ad_group_ad.ad.responsive_display_ad.main_color": "", "ad_group_ad.ad.responsive_display_ad.marketing_images": [], "ad_group_ad.ad.responsive_display_ad.price_prefix": "", "ad_group_ad.ad.responsive_display_ad.promo_text": "", "ad_group_ad.ad.responsive_display_ad.square_logo_images": [], "ad_group_ad.ad.responsive_display_ad.square_marketing_images": [], "ad_group_ad.ad.responsive_display_ad.youtube_videos": [], "ad_group_ad.ad.responsive_search_ad.descriptions": ["text: \"Behind The Scenes: Testing The Airbyte Maintainer Program\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Airbyte | Open-Source Data Integration Platform | ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Upgrading Our Discourse And Slack To Support Our Community Growth\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"], "ad_group_ad.ad.responsive_search_ad.headlines": ["text: \"Airbyte\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Open-source Data Integration\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"], "ad_group_ad.ad.responsive_search_ad.path1": "", "ad_group_ad.ad.responsive_search_ad.path2": "", "ad_group_ad.ad.shopping_comparison_listing_ad.headline": "", "ad_group_ad.ad.shopping_product_ad": "", "ad_group_ad.ad.shopping_smart_ad": "", "ad_group_ad.ad.smart_campaign_ad.descriptions": [], "ad_group_ad.ad.smart_campaign_ad.headlines": [], "ad_group_ad.ad.system_managed_resource_source": "UNSPECIFIED", "ad_group_ad.ad.text_ad.description1": "", "ad_group_ad.ad.text_ad.description2": "", "ad_group_ad.ad.text_ad.headline": "", "ad_group_ad.ad.tracking_url_template": "", "ad_group_ad.ad.type": "RESPONSIVE_SEARCH_AD", "ad_group_ad.ad.url_collections": [], "ad_group_ad.ad.url_custom_parameters": [], "ad_group_ad.ad.video_ad.in_feed.description1": "", "ad_group_ad.ad.video_ad.in_feed.description2": "", "ad_group_ad.ad.video_ad.in_feed.headline": "", "ad_group_ad.ad.video_ad.in_stream.action_button_label": "", "ad_group_ad.ad.video_ad.in_stream.action_headline": "", "ad_group_ad.ad.video_ad.out_stream.description": "", "ad_group_ad.ad.video_ad.out_stream.headline": "", "ad_group_ad.ad.video_responsive_ad.call_to_actions": [], "ad_group_ad.ad.video_responsive_ad.companion_banners": [], "ad_group_ad.ad.video_responsive_ad.descriptions": [], "ad_group_ad.ad.video_responsive_ad.headlines": [], "ad_group_ad.ad.video_responsive_ad.long_headlines": [], "ad_group_ad.ad.video_responsive_ad.videos": [], "ad_group_ad.ad_group": "customers/4651612872/adGroups/137051662444", "ad_group_ad.ad_strength": "POOR", "ad_group_ad.labels": [], "ad_group_ad.policy_summary.approval_status": "APPROVED", "ad_group_ad.policy_summary.policy_topic_entries": [], "ad_group_ad.policy_summary.review_status": "REVIEWED", "ad_group_ad.resource_name": "customers/4651612872/adGroupAds/137051662444~592078676857", "ad_group_ad.status": "REMOVED", "segments.date": "2022-04-09"}, "emitted_at": 1692608495148} -{"stream": "ad_group_ads", "data": {"ad_group_ad.ad.added_by_google_ads": false, "ad_group_ad.ad.app_ad.descriptions": [], "ad_group_ad.ad.app_ad.headlines": [], "ad_group_ad.ad.app_ad.html5_media_bundles": [], "ad_group_ad.ad.app_ad.images": [], "ad_group_ad.ad.app_ad.mandatory_ad_text": "", "ad_group_ad.ad.app_ad.youtube_videos": [], "ad_group_ad.ad.app_engagement_ad.descriptions": [], "ad_group_ad.ad.app_engagement_ad.headlines": [], "ad_group_ad.ad.app_engagement_ad.images": [], "ad_group_ad.ad.app_engagement_ad.videos": [], "ad_group_ad.ad.call_ad.business_name": "", "ad_group_ad.ad.call_ad.call_tracked": false, "ad_group_ad.ad.call_ad.conversion_action": "", "ad_group_ad.ad.call_ad.conversion_reporting_state": "UNSPECIFIED", "ad_group_ad.ad.call_ad.country_code": "", "ad_group_ad.ad.call_ad.description1": "", "ad_group_ad.ad.call_ad.description2": "", "ad_group_ad.ad.call_ad.disable_call_conversion": false, "ad_group_ad.ad.call_ad.headline1": "", "ad_group_ad.ad.call_ad.headline2": "", "ad_group_ad.ad.call_ad.path1": "", "ad_group_ad.ad.call_ad.path2": "", "ad_group_ad.ad.call_ad.phone_number": "", "ad_group_ad.ad.call_ad.phone_number_verification_url": "", "ad_group_ad.ad.device_preference": "UNSPECIFIED", "ad_group_ad.ad.display_upload_ad.display_upload_product_type": "UNSPECIFIED", "ad_group_ad.ad.display_upload_ad.media_bundle": "", "ad_group_ad.ad.display_url": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.description": "", "ad_group_ad.ad.expanded_text_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.headline_part1": "", "ad_group_ad.ad.expanded_text_ad.headline_part2": "", "ad_group_ad.ad.expanded_text_ad.headline_part3": "", "ad_group_ad.ad.expanded_text_ad.path1": "", "ad_group_ad.ad.expanded_text_ad.path2": "", "ad_group_ad.ad.final_app_urls": [], "ad_group_ad.ad.final_mobile_urls": [], "ad_group_ad.ad.final_url_suffix": "", "ad_group_ad.ad.final_urls": ["https://airbyte.com"], "ad_group_ad.ad.hotel_ad": "", "ad_group_ad.ad.id": 592078631218, "ad_group_ad.ad.image_ad.image_url": "", "ad_group_ad.ad.image_ad.mime_type": "UNSPECIFIED", "ad_group_ad.ad.image_ad.name": "", "ad_group_ad.ad.image_ad.pixel_height": 0, "ad_group_ad.ad.image_ad.pixel_width": 0, "ad_group_ad.ad.image_ad.preview_image_url": "", "ad_group_ad.ad.image_ad.preview_pixel_height": 0, "ad_group_ad.ad.image_ad.preview_pixel_width": 0, "ad_group_ad.ad.legacy_app_install_ad": "", "ad_group_ad.ad.legacy_responsive_display_ad.accent_color": "", "ad_group_ad.ad.legacy_responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.legacy_responsive_display_ad.business_name": "", "ad_group_ad.ad.legacy_responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.legacy_responsive_display_ad.description": "", "ad_group_ad.ad.legacy_responsive_display_ad.format_setting": "UNSPECIFIED", "ad_group_ad.ad.legacy_responsive_display_ad.logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.long_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.main_color": "", "ad_group_ad.ad.legacy_responsive_display_ad.marketing_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.price_prefix": "", "ad_group_ad.ad.legacy_responsive_display_ad.promo_text": "", "ad_group_ad.ad.legacy_responsive_display_ad.short_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_marketing_image": "", "ad_group_ad.ad.local_ad.call_to_actions": [], "ad_group_ad.ad.local_ad.descriptions": [], "ad_group_ad.ad.local_ad.headlines": [], "ad_group_ad.ad.local_ad.logo_images": [], "ad_group_ad.ad.local_ad.marketing_images": [], "ad_group_ad.ad.local_ad.path1": "", "ad_group_ad.ad.local_ad.path2": "", "ad_group_ad.ad.local_ad.videos": [], "ad_group_ad.ad.name": "", "ad_group_ad.ad.resource_name": "customers/4651612872/ads/592078631218", "ad_group_ad.ad.responsive_display_ad.accent_color": "", "ad_group_ad.ad.responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.responsive_display_ad.business_name": "", "ad_group_ad.ad.responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.responsive_display_ad.control_spec.enable_asset_enhancements": false, "ad_group_ad.ad.responsive_display_ad.control_spec.enable_autogen_video": false, "ad_group_ad.ad.responsive_display_ad.descriptions": [], "ad_group_ad.ad.responsive_display_ad.format_setting": "UNSPECIFIED", "ad_group_ad.ad.responsive_display_ad.headlines": [], "ad_group_ad.ad.responsive_display_ad.logo_images": [], "ad_group_ad.ad.responsive_display_ad.long_headline": "", "ad_group_ad.ad.responsive_display_ad.main_color": "", "ad_group_ad.ad.responsive_display_ad.marketing_images": [], "ad_group_ad.ad.responsive_display_ad.price_prefix": "", "ad_group_ad.ad.responsive_display_ad.promo_text": "", "ad_group_ad.ad.responsive_display_ad.square_logo_images": [], "ad_group_ad.ad.responsive_display_ad.square_marketing_images": [], "ad_group_ad.ad.responsive_display_ad.youtube_videos": [], "ad_group_ad.ad.responsive_search_ad.descriptions": ["text: \"Behind The Scenes: Testing The Airbyte Maintainer Program\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Airbyte | Open-Source Data Integration Platform | ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n policy_topic_entries {\n topic: \"TRADEMARKS_IN_AD_TEXT\"\n type_: LIMITED\n evidences {\n text_list {\n texts: \"airbyte\"\n }\n }\n constraints {\n reseller_constraint {\n }\n }\n }\n review_status: REVIEWED\n approval_status: APPROVED_LIMITED\n}\n", "text: \"Upgrading Our Discourse And Slack To Support Our Community Growth\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Consolidate your data in your data warehouses, lakes and databases\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"], "ad_group_ad.ad.responsive_search_ad.headlines": ["text: \"Airbyte\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Open-source Data Integration\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"], "ad_group_ad.ad.responsive_search_ad.path1": "", "ad_group_ad.ad.responsive_search_ad.path2": "", "ad_group_ad.ad.shopping_comparison_listing_ad.headline": "", "ad_group_ad.ad.shopping_product_ad": "", "ad_group_ad.ad.shopping_smart_ad": "", "ad_group_ad.ad.smart_campaign_ad.descriptions": [], "ad_group_ad.ad.smart_campaign_ad.headlines": [], "ad_group_ad.ad.system_managed_resource_source": "UNSPECIFIED", "ad_group_ad.ad.text_ad.description1": "", "ad_group_ad.ad.text_ad.description2": "", "ad_group_ad.ad.text_ad.headline": "", "ad_group_ad.ad.tracking_url_template": "", "ad_group_ad.ad.type": "RESPONSIVE_SEARCH_AD", "ad_group_ad.ad.url_collections": [], "ad_group_ad.ad.url_custom_parameters": [], "ad_group_ad.ad.video_ad.in_feed.description1": "", "ad_group_ad.ad.video_ad.in_feed.description2": "", "ad_group_ad.ad.video_ad.in_feed.headline": "", "ad_group_ad.ad.video_ad.in_stream.action_button_label": "", "ad_group_ad.ad.video_ad.in_stream.action_headline": "", "ad_group_ad.ad.video_ad.out_stream.description": "", "ad_group_ad.ad.video_ad.out_stream.headline": "", "ad_group_ad.ad.video_responsive_ad.call_to_actions": [], "ad_group_ad.ad.video_responsive_ad.companion_banners": [], "ad_group_ad.ad.video_responsive_ad.descriptions": [], "ad_group_ad.ad.video_responsive_ad.headlines": [], "ad_group_ad.ad.video_responsive_ad.long_headlines": [], "ad_group_ad.ad.video_responsive_ad.videos": [], "ad_group_ad.ad_group": "customers/4651612872/adGroups/137020701042", "ad_group_ad.ad_strength": "POOR", "ad_group_ad.labels": ["customers/4651612872/labels/21906377810"], "ad_group_ad.policy_summary.approval_status": "APPROVED_LIMITED", "ad_group_ad.policy_summary.policy_topic_entries": ["topic: \"TRADEMARKS_IN_AD_TEXT\"\ntype_: LIMITED\nevidences {\n text_list {\n texts: \"airbyte\"\n }\n}\nconstraints {\n reseller_constraint {\n }\n}\n"], "ad_group_ad.policy_summary.review_status": "REVIEWED", "ad_group_ad.resource_name": "customers/4651612872/adGroupAds/137020701042~592078631218", "ad_group_ad.status": "ENABLED", "segments.date": "2022-04-10"}, "emitted_at": 1692608495155} -{"stream": "ad_group_ads", "data": {"ad_group_ad.ad.added_by_google_ads": false, "ad_group_ad.ad.app_ad.descriptions": [], "ad_group_ad.ad.app_ad.headlines": [], "ad_group_ad.ad.app_ad.html5_media_bundles": [], "ad_group_ad.ad.app_ad.images": [], "ad_group_ad.ad.app_ad.mandatory_ad_text": "", "ad_group_ad.ad.app_ad.youtube_videos": [], "ad_group_ad.ad.app_engagement_ad.descriptions": [], "ad_group_ad.ad.app_engagement_ad.headlines": [], "ad_group_ad.ad.app_engagement_ad.images": [], "ad_group_ad.ad.app_engagement_ad.videos": [], "ad_group_ad.ad.call_ad.business_name": "", "ad_group_ad.ad.call_ad.call_tracked": false, "ad_group_ad.ad.call_ad.conversion_action": "", "ad_group_ad.ad.call_ad.conversion_reporting_state": "UNSPECIFIED", "ad_group_ad.ad.call_ad.country_code": "", "ad_group_ad.ad.call_ad.description1": "", "ad_group_ad.ad.call_ad.description2": "", "ad_group_ad.ad.call_ad.disable_call_conversion": false, "ad_group_ad.ad.call_ad.headline1": "", "ad_group_ad.ad.call_ad.headline2": "", "ad_group_ad.ad.call_ad.path1": "", "ad_group_ad.ad.call_ad.path2": "", "ad_group_ad.ad.call_ad.phone_number": "", "ad_group_ad.ad.call_ad.phone_number_verification_url": "", "ad_group_ad.ad.device_preference": "UNSPECIFIED", "ad_group_ad.ad.display_upload_ad.display_upload_product_type": "UNSPECIFIED", "ad_group_ad.ad.display_upload_ad.media_bundle": "", "ad_group_ad.ad.display_url": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.description": "", "ad_group_ad.ad.expanded_text_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.headline_part1": "", "ad_group_ad.ad.expanded_text_ad.headline_part2": "", "ad_group_ad.ad.expanded_text_ad.headline_part3": "", "ad_group_ad.ad.expanded_text_ad.path1": "", "ad_group_ad.ad.expanded_text_ad.path2": "", "ad_group_ad.ad.final_app_urls": [], "ad_group_ad.ad.final_mobile_urls": [], "ad_group_ad.ad.final_url_suffix": "", "ad_group_ad.ad.final_urls": ["https://airbyte.com"], "ad_group_ad.ad.hotel_ad": "", "ad_group_ad.ad.id": 592078676857, "ad_group_ad.ad.image_ad.image_url": "", "ad_group_ad.ad.image_ad.mime_type": "UNSPECIFIED", "ad_group_ad.ad.image_ad.name": "", "ad_group_ad.ad.image_ad.pixel_height": 0, "ad_group_ad.ad.image_ad.pixel_width": 0, "ad_group_ad.ad.image_ad.preview_image_url": "", "ad_group_ad.ad.image_ad.preview_pixel_height": 0, "ad_group_ad.ad.image_ad.preview_pixel_width": 0, "ad_group_ad.ad.legacy_app_install_ad": "", "ad_group_ad.ad.legacy_responsive_display_ad.accent_color": "", "ad_group_ad.ad.legacy_responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.legacy_responsive_display_ad.business_name": "", "ad_group_ad.ad.legacy_responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.legacy_responsive_display_ad.description": "", "ad_group_ad.ad.legacy_responsive_display_ad.format_setting": "UNSPECIFIED", "ad_group_ad.ad.legacy_responsive_display_ad.logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.long_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.main_color": "", "ad_group_ad.ad.legacy_responsive_display_ad.marketing_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.price_prefix": "", "ad_group_ad.ad.legacy_responsive_display_ad.promo_text": "", "ad_group_ad.ad.legacy_responsive_display_ad.short_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_marketing_image": "", "ad_group_ad.ad.local_ad.call_to_actions": [], "ad_group_ad.ad.local_ad.descriptions": [], "ad_group_ad.ad.local_ad.headlines": [], "ad_group_ad.ad.local_ad.logo_images": [], "ad_group_ad.ad.local_ad.marketing_images": [], "ad_group_ad.ad.local_ad.path1": "", "ad_group_ad.ad.local_ad.path2": "", "ad_group_ad.ad.local_ad.videos": [], "ad_group_ad.ad.name": "", "ad_group_ad.ad.resource_name": "customers/4651612872/ads/592078676857", "ad_group_ad.ad.responsive_display_ad.accent_color": "", "ad_group_ad.ad.responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.responsive_display_ad.business_name": "", "ad_group_ad.ad.responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.responsive_display_ad.control_spec.enable_asset_enhancements": false, "ad_group_ad.ad.responsive_display_ad.control_spec.enable_autogen_video": false, "ad_group_ad.ad.responsive_display_ad.descriptions": [], "ad_group_ad.ad.responsive_display_ad.format_setting": "UNSPECIFIED", "ad_group_ad.ad.responsive_display_ad.headlines": [], "ad_group_ad.ad.responsive_display_ad.logo_images": [], "ad_group_ad.ad.responsive_display_ad.long_headline": "", "ad_group_ad.ad.responsive_display_ad.main_color": "", "ad_group_ad.ad.responsive_display_ad.marketing_images": [], "ad_group_ad.ad.responsive_display_ad.price_prefix": "", "ad_group_ad.ad.responsive_display_ad.promo_text": "", "ad_group_ad.ad.responsive_display_ad.square_logo_images": [], "ad_group_ad.ad.responsive_display_ad.square_marketing_images": [], "ad_group_ad.ad.responsive_display_ad.youtube_videos": [], "ad_group_ad.ad.responsive_search_ad.descriptions": ["text: \"Behind The Scenes: Testing The Airbyte Maintainer Program\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Airbyte | Open-Source Data Integration Platform | ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Upgrading Our Discourse And Slack To Support Our Community Growth\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"], "ad_group_ad.ad.responsive_search_ad.headlines": ["text: \"Airbyte\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Open-source Data Integration\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"], "ad_group_ad.ad.responsive_search_ad.path1": "", "ad_group_ad.ad.responsive_search_ad.path2": "", "ad_group_ad.ad.shopping_comparison_listing_ad.headline": "", "ad_group_ad.ad.shopping_product_ad": "", "ad_group_ad.ad.shopping_smart_ad": "", "ad_group_ad.ad.smart_campaign_ad.descriptions": [], "ad_group_ad.ad.smart_campaign_ad.headlines": [], "ad_group_ad.ad.system_managed_resource_source": "UNSPECIFIED", "ad_group_ad.ad.text_ad.description1": "", "ad_group_ad.ad.text_ad.description2": "", "ad_group_ad.ad.text_ad.headline": "", "ad_group_ad.ad.tracking_url_template": "", "ad_group_ad.ad.type": "RESPONSIVE_SEARCH_AD", "ad_group_ad.ad.url_collections": [], "ad_group_ad.ad.url_custom_parameters": [], "ad_group_ad.ad.video_ad.in_feed.description1": "", "ad_group_ad.ad.video_ad.in_feed.description2": "", "ad_group_ad.ad.video_ad.in_feed.headline": "", "ad_group_ad.ad.video_ad.in_stream.action_button_label": "", "ad_group_ad.ad.video_ad.in_stream.action_headline": "", "ad_group_ad.ad.video_ad.out_stream.description": "", "ad_group_ad.ad.video_ad.out_stream.headline": "", "ad_group_ad.ad.video_responsive_ad.call_to_actions": [], "ad_group_ad.ad.video_responsive_ad.companion_banners": [], "ad_group_ad.ad.video_responsive_ad.descriptions": [], "ad_group_ad.ad.video_responsive_ad.headlines": [], "ad_group_ad.ad.video_responsive_ad.long_headlines": [], "ad_group_ad.ad.video_responsive_ad.videos": [], "ad_group_ad.ad_group": "customers/4651612872/adGroups/137051662444", "ad_group_ad.ad_strength": "POOR", "ad_group_ad.labels": [], "ad_group_ad.policy_summary.approval_status": "APPROVED", "ad_group_ad.policy_summary.policy_topic_entries": [], "ad_group_ad.policy_summary.review_status": "REVIEWED", "ad_group_ad.resource_name": "customers/4651612872/adGroupAds/137051662444~592078676857", "ad_group_ad.status": "REMOVED", "segments.date": "2022-04-10"}, "emitted_at": 1692608495162} -{"stream": "campaigns", "data": {"campaign.accessible_bidding_strategy": "", "campaign.ad_serving_optimization_status": "OPTIMIZE", "campaign.advertising_channel_sub_type": "UNSPECIFIED", "campaign.advertising_channel_type": "SEARCH", "campaign.app_campaign_setting.app_id": "", "campaign.app_campaign_setting.app_store": "UNSPECIFIED", "campaign.app_campaign_setting.bidding_strategy_goal_type": "UNSPECIFIED", "campaign.base_campaign": "customers/4651612872/campaigns/16820250687", "campaign.bidding_strategy": "", "campaign.bidding_strategy_type": "MAXIMIZE_CONVERSIONS", "campaign.campaign_budget": "customers/4651612872/campaignBudgets/12862729190", "campaign_budget.amount_micros": 1000000, "campaign.commission.commission_rate_micros": 0, "campaign.dynamic_search_ads_setting.domain_name": "", "campaign.dynamic_search_ads_setting.feeds": [], "campaign.dynamic_search_ads_setting.language_code": "", "campaign.dynamic_search_ads_setting.use_supplied_urls_only": false, "campaign.end_date": "2037-12-30", "campaign.excluded_parent_asset_field_types": [], "campaign.experiment_type": "BASE", "campaign.final_url_suffix": "", "campaign.frequency_caps": [], "campaign.geo_target_type_setting.negative_geo_target_type": "PRESENCE", "campaign.geo_target_type_setting.positive_geo_target_type": "PRESENCE_OR_INTEREST", "campaign.hotel_setting.hotel_center_id": 0, "campaign.id": 16820250687, "campaign.labels": ["customers/4651612872/labels/21906377810"], "campaign.local_campaign_setting.location_source_type": "UNSPECIFIED", "campaign.manual_cpc.enhanced_cpc_enabled": false, "campaign.manual_cpm": "", "campaign.manual_cpv": "", "campaign.maximize_conversion_value.target_roas": 0.0, "campaign.maximize_conversions.target_cpa_micros": 0, "campaign.name": "Website traffic-Search-15", "campaign.network_settings.target_content_network": true, "campaign.network_settings.target_google_search": true, "campaign.network_settings.target_partner_search_network": false, "campaign.network_settings.target_search_network": true, "campaign.optimization_goal_setting.optimization_goal_types": [], "campaign.optimization_score": 0.0, "campaign.payment_mode": "CLICKS", "campaign.percent_cpc.cpc_bid_ceiling_micros": 0, "campaign.percent_cpc.enhanced_cpc_enabled": false, "campaign.real_time_bidding_setting.opt_in": false, "campaign.resource_name": "customers/4651612872/campaigns/16820250687", "campaign.selective_optimization.conversion_actions": [], "campaign.serving_status": "SERVING", "campaign.shopping_setting.campaign_priority": 0, "campaign.shopping_setting.enable_local": false, "campaign.shopping_setting.merchant_id": 0, "campaign.shopping_setting.sales_country": "", "campaign.start_date": "2022-04-08", "campaign.status": "PAUSED", "campaign.target_cpa.cpc_bid_ceiling_micros": 0, "campaign.target_cpa.cpc_bid_floor_micros": 0, "campaign.target_cpa.target_cpa_micros": 0, "campaign.target_cpm.target_frequency_goal.target_count": 0, "campaign.target_cpm.target_frequency_goal.time_unit": "UNSPECIFIED", "campaign.target_impression_share.cpc_bid_ceiling_micros": 0, "campaign.target_impression_share.location": "UNSPECIFIED", "campaign.target_impression_share.location_fraction_micros": 0, "campaign.target_roas.cpc_bid_ceiling_micros": 0, "campaign.target_roas.cpc_bid_floor_micros": 0, "campaign.target_roas.target_roas": 0.0, "campaign.target_spend.cpc_bid_ceiling_micros": 0, "campaign.target_spend.target_spend_micros": 0, "campaign.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n"], "campaign.tracking_setting.tracking_url": "", "campaign.tracking_url_template": "", "campaign.url_custom_parameters": [], "campaign.vanity_pharma.vanity_pharma_display_url_mode": "UNSPECIFIED", "campaign.vanity_pharma.vanity_pharma_text": "UNSPECIFIED", "campaign.video_brand_safety_suitability": "UNSPECIFIED", "metrics.clicks": 0, "metrics.ctr": 0.0, "metrics.conversions": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 0, "metrics.impressions": 1.0, "metrics.video_views": 0.0, "metrics.video_quartile_p100_rate": 0.0, "metrics.active_view_cpm": 0.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpm": 0.0, "metrics.interactions": 0, "metrics.interaction_event_types": "[]", "metrics.value_per_conversion": 0.0, "metrics.cost_per_conversion": 0.0, "segments.date": "2022-05-25", "segments.hour": 16.0, "segments.ad_network_type": "SEARCH"}, "emitted_at": 1692606908590} -{"stream": "campaigns", "data": {"campaign.accessible_bidding_strategy": "", "campaign.ad_serving_optimization_status": "OPTIMIZE", "campaign.advertising_channel_sub_type": "UNSPECIFIED", "campaign.advertising_channel_type": "SEARCH", "campaign.app_campaign_setting.app_id": "", "campaign.app_campaign_setting.app_store": "UNSPECIFIED", "campaign.app_campaign_setting.bidding_strategy_goal_type": "UNSPECIFIED", "campaign.base_campaign": "customers/4651612872/campaigns/16820250687", "campaign.bidding_strategy": "", "campaign.bidding_strategy_type": "MAXIMIZE_CONVERSIONS", "campaign.campaign_budget": "customers/4651612872/campaignBudgets/12862729190", "campaign_budget.amount_micros": 1000000, "campaign.commission.commission_rate_micros": 0, "campaign.dynamic_search_ads_setting.domain_name": "", "campaign.dynamic_search_ads_setting.feeds": [], "campaign.dynamic_search_ads_setting.language_code": "", "campaign.dynamic_search_ads_setting.use_supplied_urls_only": false, "campaign.end_date": "2037-12-30", "campaign.excluded_parent_asset_field_types": [], "campaign.experiment_type": "BASE", "campaign.final_url_suffix": "", "campaign.frequency_caps": [], "campaign.geo_target_type_setting.negative_geo_target_type": "PRESENCE", "campaign.geo_target_type_setting.positive_geo_target_type": "PRESENCE_OR_INTEREST", "campaign.hotel_setting.hotel_center_id": 0, "campaign.id": 16820250687, "campaign.labels": ["customers/4651612872/labels/21906377810"], "campaign.local_campaign_setting.location_source_type": "UNSPECIFIED", "campaign.manual_cpc.enhanced_cpc_enabled": false, "campaign.manual_cpm": "", "campaign.manual_cpv": "", "campaign.maximize_conversion_value.target_roas": 0.0, "campaign.maximize_conversions.target_cpa_micros": 0, "campaign.name": "Website traffic-Search-15", "campaign.network_settings.target_content_network": true, "campaign.network_settings.target_google_search": true, "campaign.network_settings.target_partner_search_network": false, "campaign.network_settings.target_search_network": true, "campaign.optimization_goal_setting.optimization_goal_types": [], "campaign.optimization_score": 0.0, "campaign.payment_mode": "CLICKS", "campaign.percent_cpc.cpc_bid_ceiling_micros": 0, "campaign.percent_cpc.enhanced_cpc_enabled": false, "campaign.real_time_bidding_setting.opt_in": false, "campaign.resource_name": "customers/4651612872/campaigns/16820250687", "campaign.selective_optimization.conversion_actions": [], "campaign.serving_status": "SERVING", "campaign.shopping_setting.campaign_priority": 0, "campaign.shopping_setting.enable_local": false, "campaign.shopping_setting.merchant_id": 0, "campaign.shopping_setting.sales_country": "", "campaign.start_date": "2022-04-08", "campaign.status": "PAUSED", "campaign.target_cpa.cpc_bid_ceiling_micros": 0, "campaign.target_cpa.cpc_bid_floor_micros": 0, "campaign.target_cpa.target_cpa_micros": 0, "campaign.target_cpm.target_frequency_goal.target_count": 0, "campaign.target_cpm.target_frequency_goal.time_unit": "UNSPECIFIED", "campaign.target_impression_share.cpc_bid_ceiling_micros": 0, "campaign.target_impression_share.location": "UNSPECIFIED", "campaign.target_impression_share.location_fraction_micros": 0, "campaign.target_roas.cpc_bid_ceiling_micros": 0, "campaign.target_roas.cpc_bid_floor_micros": 0, "campaign.target_roas.target_roas": 0.0, "campaign.target_spend.cpc_bid_ceiling_micros": 0, "campaign.target_spend.target_spend_micros": 0, "campaign.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n"], "campaign.tracking_setting.tracking_url": "", "campaign.tracking_url_template": "", "campaign.url_custom_parameters": [], "campaign.vanity_pharma.vanity_pharma_display_url_mode": "UNSPECIFIED", "campaign.vanity_pharma.vanity_pharma_text": "UNSPECIFIED", "campaign.video_brand_safety_suitability": "UNSPECIFIED", "metrics.clicks": 1, "metrics.ctr": 1.0, "metrics.conversions": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 10000, "metrics.impressions": 1.0, "metrics.video_views": 0.0, "metrics.video_quartile_p100_rate": 0.0, "metrics.active_view_cpm": 0.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "metrics.average_cost": 10000.0, "metrics.average_cpc": 10000.0, "metrics.average_cpm": 10000000.0, "metrics.interactions": 1, "metrics.interaction_event_types": "['InteractionEventType.CLICK']", "metrics.value_per_conversion": 0.0, "metrics.cost_per_conversion": 0.0, "segments.date": "2022-05-25", "segments.hour": 18.0, "segments.ad_network_type": "SEARCH"}, "emitted_at": 1692606908597} -{"stream": "campaigns", "data": {"campaign.accessible_bidding_strategy": "", "campaign.ad_serving_optimization_status": "OPTIMIZE", "campaign.advertising_channel_sub_type": "UNSPECIFIED", "campaign.advertising_channel_type": "SEARCH", "campaign.app_campaign_setting.app_id": "", "campaign.app_campaign_setting.app_store": "UNSPECIFIED", "campaign.app_campaign_setting.bidding_strategy_goal_type": "UNSPECIFIED", "campaign.base_campaign": "customers/4651612872/campaigns/16820250687", "campaign.bidding_strategy": "", "campaign.bidding_strategy_type": "MAXIMIZE_CONVERSIONS", "campaign.campaign_budget": "customers/4651612872/campaignBudgets/12862729190", "campaign_budget.amount_micros": 1000000, "campaign.commission.commission_rate_micros": 0, "campaign.dynamic_search_ads_setting.domain_name": "", "campaign.dynamic_search_ads_setting.feeds": [], "campaign.dynamic_search_ads_setting.language_code": "", "campaign.dynamic_search_ads_setting.use_supplied_urls_only": false, "campaign.end_date": "2037-12-30", "campaign.excluded_parent_asset_field_types": [], "campaign.experiment_type": "BASE", "campaign.final_url_suffix": "", "campaign.frequency_caps": [], "campaign.geo_target_type_setting.negative_geo_target_type": "PRESENCE", "campaign.geo_target_type_setting.positive_geo_target_type": "PRESENCE_OR_INTEREST", "campaign.hotel_setting.hotel_center_id": 0, "campaign.id": 16820250687, "campaign.labels": ["customers/4651612872/labels/21906377810"], "campaign.local_campaign_setting.location_source_type": "UNSPECIFIED", "campaign.manual_cpc.enhanced_cpc_enabled": false, "campaign.manual_cpm": "", "campaign.manual_cpv": "", "campaign.maximize_conversion_value.target_roas": 0.0, "campaign.maximize_conversions.target_cpa_micros": 0, "campaign.name": "Website traffic-Search-15", "campaign.network_settings.target_content_network": true, "campaign.network_settings.target_google_search": true, "campaign.network_settings.target_partner_search_network": false, "campaign.network_settings.target_search_network": true, "campaign.optimization_goal_setting.optimization_goal_types": [], "campaign.optimization_score": 0.0, "campaign.payment_mode": "CLICKS", "campaign.percent_cpc.cpc_bid_ceiling_micros": 0, "campaign.percent_cpc.enhanced_cpc_enabled": false, "campaign.real_time_bidding_setting.opt_in": false, "campaign.resource_name": "customers/4651612872/campaigns/16820250687", "campaign.selective_optimization.conversion_actions": [], "campaign.serving_status": "SERVING", "campaign.shopping_setting.campaign_priority": 0, "campaign.shopping_setting.enable_local": false, "campaign.shopping_setting.merchant_id": 0, "campaign.shopping_setting.sales_country": "", "campaign.start_date": "2022-04-08", "campaign.status": "PAUSED", "campaign.target_cpa.cpc_bid_ceiling_micros": 0, "campaign.target_cpa.cpc_bid_floor_micros": 0, "campaign.target_cpa.target_cpa_micros": 0, "campaign.target_cpm.target_frequency_goal.target_count": 0, "campaign.target_cpm.target_frequency_goal.time_unit": "UNSPECIFIED", "campaign.target_impression_share.cpc_bid_ceiling_micros": 0, "campaign.target_impression_share.location": "UNSPECIFIED", "campaign.target_impression_share.location_fraction_micros": 0, "campaign.target_roas.cpc_bid_ceiling_micros": 0, "campaign.target_roas.cpc_bid_floor_micros": 0, "campaign.target_roas.target_roas": 0.0, "campaign.target_spend.cpc_bid_ceiling_micros": 0, "campaign.target_spend.target_spend_micros": 0, "campaign.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n"], "campaign.tracking_setting.tracking_url": "", "campaign.tracking_url_template": "", "campaign.url_custom_parameters": [], "campaign.vanity_pharma.vanity_pharma_display_url_mode": "UNSPECIFIED", "campaign.vanity_pharma.vanity_pharma_text": "UNSPECIFIED", "campaign.video_brand_safety_suitability": "UNSPECIFIED", "metrics.clicks": 0, "metrics.ctr": 0.0, "metrics.conversions": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 0, "metrics.impressions": 2.0, "metrics.video_views": 0.0, "metrics.video_quartile_p100_rate": 0.0, "metrics.active_view_cpm": 0.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpm": 0.0, "metrics.interactions": 0, "metrics.interaction_event_types": "[]", "metrics.value_per_conversion": 0.0, "metrics.cost_per_conversion": 0.0, "segments.date": "2022-05-25", "segments.hour": 19.0, "segments.ad_network_type": "SEARCH"}, "emitted_at": 1692606908603} -{"stream": "campaigns", "data": {"campaign.accessible_bidding_strategy": "", "campaign.ad_serving_optimization_status": "OPTIMIZE", "campaign.advertising_channel_sub_type": "UNSPECIFIED", "campaign.advertising_channel_type": "SEARCH", "campaign.app_campaign_setting.app_id": "", "campaign.app_campaign_setting.app_store": "UNSPECIFIED", "campaign.app_campaign_setting.bidding_strategy_goal_type": "UNSPECIFIED", "campaign.base_campaign": "customers/4651612872/campaigns/16820250687", "campaign.bidding_strategy": "", "campaign.bidding_strategy_type": "MAXIMIZE_CONVERSIONS", "campaign.campaign_budget": "customers/4651612872/campaignBudgets/12862729190", "campaign_budget.amount_micros": 1000000, "campaign.commission.commission_rate_micros": 0, "campaign.dynamic_search_ads_setting.domain_name": "", "campaign.dynamic_search_ads_setting.feeds": [], "campaign.dynamic_search_ads_setting.language_code": "", "campaign.dynamic_search_ads_setting.use_supplied_urls_only": false, "campaign.end_date": "2037-12-30", "campaign.excluded_parent_asset_field_types": [], "campaign.experiment_type": "BASE", "campaign.final_url_suffix": "", "campaign.frequency_caps": [], "campaign.geo_target_type_setting.negative_geo_target_type": "PRESENCE", "campaign.geo_target_type_setting.positive_geo_target_type": "PRESENCE_OR_INTEREST", "campaign.hotel_setting.hotel_center_id": 0, "campaign.id": 16820250687, "campaign.labels": ["customers/4651612872/labels/21906377810"], "campaign.local_campaign_setting.location_source_type": "UNSPECIFIED", "campaign.manual_cpc.enhanced_cpc_enabled": false, "campaign.manual_cpm": "", "campaign.manual_cpv": "", "campaign.maximize_conversion_value.target_roas": 0.0, "campaign.maximize_conversions.target_cpa_micros": 0, "campaign.name": "Website traffic-Search-15", "campaign.network_settings.target_content_network": true, "campaign.network_settings.target_google_search": true, "campaign.network_settings.target_partner_search_network": false, "campaign.network_settings.target_search_network": true, "campaign.optimization_goal_setting.optimization_goal_types": [], "campaign.optimization_score": 0.0, "campaign.payment_mode": "CLICKS", "campaign.percent_cpc.cpc_bid_ceiling_micros": 0, "campaign.percent_cpc.enhanced_cpc_enabled": false, "campaign.real_time_bidding_setting.opt_in": false, "campaign.resource_name": "customers/4651612872/campaigns/16820250687", "campaign.selective_optimization.conversion_actions": [], "campaign.serving_status": "SERVING", "campaign.shopping_setting.campaign_priority": 0, "campaign.shopping_setting.enable_local": false, "campaign.shopping_setting.merchant_id": 0, "campaign.shopping_setting.sales_country": "", "campaign.start_date": "2022-04-08", "campaign.status": "PAUSED", "campaign.target_cpa.cpc_bid_ceiling_micros": 0, "campaign.target_cpa.cpc_bid_floor_micros": 0, "campaign.target_cpa.target_cpa_micros": 0, "campaign.target_cpm.target_frequency_goal.target_count": 0, "campaign.target_cpm.target_frequency_goal.time_unit": "UNSPECIFIED", "campaign.target_impression_share.cpc_bid_ceiling_micros": 0, "campaign.target_impression_share.location": "UNSPECIFIED", "campaign.target_impression_share.location_fraction_micros": 0, "campaign.target_roas.cpc_bid_ceiling_micros": 0, "campaign.target_roas.cpc_bid_floor_micros": 0, "campaign.target_roas.target_roas": 0.0, "campaign.target_spend.cpc_bid_ceiling_micros": 0, "campaign.target_spend.target_spend_micros": 0, "campaign.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n"], "campaign.tracking_setting.tracking_url": "", "campaign.tracking_url_template": "", "campaign.url_custom_parameters": [], "campaign.vanity_pharma.vanity_pharma_display_url_mode": "UNSPECIFIED", "campaign.vanity_pharma.vanity_pharma_text": "UNSPECIFIED", "campaign.video_brand_safety_suitability": "UNSPECIFIED", "metrics.clicks": 0, "metrics.ctr": 0.0, "metrics.conversions": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 0, "metrics.impressions": 2.0, "metrics.video_views": 0.0, "metrics.video_quartile_p100_rate": 0.0, "metrics.active_view_cpm": 0.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpm": 0.0, "metrics.interactions": 0, "metrics.interaction_event_types": "[]", "metrics.value_per_conversion": 0.0, "metrics.cost_per_conversion": 0.0, "segments.date": "2022-05-25", "segments.hour": 20.0, "segments.ad_network_type": "SEARCH"}, "emitted_at": 1692606908610} -{"stream": "campaigns", "data": {"campaign.accessible_bidding_strategy": "", "campaign.ad_serving_optimization_status": "OPTIMIZE", "campaign.advertising_channel_sub_type": "UNSPECIFIED", "campaign.advertising_channel_type": "SEARCH", "campaign.app_campaign_setting.app_id": "", "campaign.app_campaign_setting.app_store": "UNSPECIFIED", "campaign.app_campaign_setting.bidding_strategy_goal_type": "UNSPECIFIED", "campaign.base_campaign": "customers/4651612872/campaigns/16820250687", "campaign.bidding_strategy": "", "campaign.bidding_strategy_type": "MAXIMIZE_CONVERSIONS", "campaign.campaign_budget": "customers/4651612872/campaignBudgets/12862729190", "campaign_budget.amount_micros": 1000000, "campaign.commission.commission_rate_micros": 0, "campaign.dynamic_search_ads_setting.domain_name": "", "campaign.dynamic_search_ads_setting.feeds": [], "campaign.dynamic_search_ads_setting.language_code": "", "campaign.dynamic_search_ads_setting.use_supplied_urls_only": false, "campaign.end_date": "2037-12-30", "campaign.excluded_parent_asset_field_types": [], "campaign.experiment_type": "BASE", "campaign.final_url_suffix": "", "campaign.frequency_caps": [], "campaign.geo_target_type_setting.negative_geo_target_type": "PRESENCE", "campaign.geo_target_type_setting.positive_geo_target_type": "PRESENCE_OR_INTEREST", "campaign.hotel_setting.hotel_center_id": 0, "campaign.id": 16820250687, "campaign.labels": ["customers/4651612872/labels/21906377810"], "campaign.local_campaign_setting.location_source_type": "UNSPECIFIED", "campaign.manual_cpc.enhanced_cpc_enabled": false, "campaign.manual_cpm": "", "campaign.manual_cpv": "", "campaign.maximize_conversion_value.target_roas": 0.0, "campaign.maximize_conversions.target_cpa_micros": 0, "campaign.name": "Website traffic-Search-15", "campaign.network_settings.target_content_network": true, "campaign.network_settings.target_google_search": true, "campaign.network_settings.target_partner_search_network": false, "campaign.network_settings.target_search_network": true, "campaign.optimization_goal_setting.optimization_goal_types": [], "campaign.optimization_score": 0.0, "campaign.payment_mode": "CLICKS", "campaign.percent_cpc.cpc_bid_ceiling_micros": 0, "campaign.percent_cpc.enhanced_cpc_enabled": false, "campaign.real_time_bidding_setting.opt_in": false, "campaign.resource_name": "customers/4651612872/campaigns/16820250687", "campaign.selective_optimization.conversion_actions": [], "campaign.serving_status": "SERVING", "campaign.shopping_setting.campaign_priority": 0, "campaign.shopping_setting.enable_local": false, "campaign.shopping_setting.merchant_id": 0, "campaign.shopping_setting.sales_country": "", "campaign.start_date": "2022-04-08", "campaign.status": "PAUSED", "campaign.target_cpa.cpc_bid_ceiling_micros": 0, "campaign.target_cpa.cpc_bid_floor_micros": 0, "campaign.target_cpa.target_cpa_micros": 0, "campaign.target_cpm.target_frequency_goal.target_count": 0, "campaign.target_cpm.target_frequency_goal.time_unit": "UNSPECIFIED", "campaign.target_impression_share.cpc_bid_ceiling_micros": 0, "campaign.target_impression_share.location": "UNSPECIFIED", "campaign.target_impression_share.location_fraction_micros": 0, "campaign.target_roas.cpc_bid_ceiling_micros": 0, "campaign.target_roas.cpc_bid_floor_micros": 0, "campaign.target_roas.target_roas": 0.0, "campaign.target_spend.cpc_bid_ceiling_micros": 0, "campaign.target_spend.target_spend_micros": 0, "campaign.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n"], "campaign.tracking_setting.tracking_url": "", "campaign.tracking_url_template": "", "campaign.url_custom_parameters": [], "campaign.vanity_pharma.vanity_pharma_display_url_mode": "UNSPECIFIED", "campaign.vanity_pharma.vanity_pharma_text": "UNSPECIFIED", "campaign.video_brand_safety_suitability": "UNSPECIFIED", "metrics.clicks": 0, "metrics.ctr": 0.0, "metrics.conversions": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 0, "metrics.impressions": 1.0, "metrics.video_views": 0.0, "metrics.video_quartile_p100_rate": 0.0, "metrics.active_view_cpm": 0.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpm": 0.0, "metrics.interactions": 0, "metrics.interaction_event_types": "[]", "metrics.value_per_conversion": 0.0, "metrics.cost_per_conversion": 0.0, "segments.date": "2022-05-25", "segments.hour": 22.0, "segments.ad_network_type": "SEARCH"}, "emitted_at": 1692606908617} -{"stream": "ad_groups", "data": {"ad_group.ad_rotation_mode": "UNSPECIFIED", "ad_group.base_ad_group": "customers/4651612872/adGroups/137051662444", "ad_group.campaign": "customers/4651612872/campaigns/16820250687", "ad_group.cpc_bid_micros": 10000, "ad_group.cpm_bid_micros": 10000, "ad_group.cpv_bid_micros": 0, "ad_group.display_custom_bid_dimension": "UNSPECIFIED", "ad_group.effective_target_cpa_micros": 0, "ad_group.effective_target_cpa_source": "UNSPECIFIED", "ad_group.effective_target_roas": 0.0, "ad_group.effective_target_roas_source": "UNSPECIFIED", "ad_group.excluded_parent_asset_field_types": [], "ad_group.optimized_targeting_enabled": false, "ad_group.final_url_suffix": "", "ad_group.id": 137051662444, "ad_group.labels": [], "ad_group.name": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00a01", "ad_group.percent_cpc_bid_micros": 0, "ad_group.resource_name": "customers/4651612872/adGroups/137051662444", "ad_group.status": "ENABLED", "ad_group.target_cpa_micros": 0, "ad_group.target_cpm_micros": 10000, "ad_group.target_roas": 0.0, "ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n", "targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n"], "ad_group.tracking_url_template": "", "ad_group.type": "SEARCH_STANDARD", "ad_group.url_custom_parameters": [], "segments.date": "2022-04-08"}, "emitted_at": 1692610032155} -{"stream": "ad_groups", "data": {"ad_group.ad_rotation_mode": "UNSPECIFIED", "ad_group.base_ad_group": "customers/4651612872/adGroups/137020701042", "ad_group.campaign": "customers/4651612872/campaigns/16820250687", "ad_group.cpc_bid_micros": 10000, "ad_group.cpm_bid_micros": 10000, "ad_group.cpv_bid_micros": 0, "ad_group.display_custom_bid_dimension": "UNSPECIFIED", "ad_group.effective_target_cpa_micros": 0, "ad_group.effective_target_cpa_source": "UNSPECIFIED", "ad_group.effective_target_roas": 0.0, "ad_group.effective_target_roas_source": "UNSPECIFIED", "ad_group.excluded_parent_asset_field_types": [], "ad_group.optimized_targeting_enabled": false, "ad_group.final_url_suffix": "", "ad_group.id": 137020701042, "ad_group.labels": ["customers/4651612872/labels/21906377810"], "ad_group.name": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00a02", "ad_group.percent_cpc_bid_micros": 0, "ad_group.resource_name": "customers/4651612872/adGroups/137020701042", "ad_group.status": "ENABLED", "ad_group.target_cpa_micros": 0, "ad_group.target_cpm_micros": 10000, "ad_group.target_roas": 0.0, "ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n", "targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n"], "ad_group.tracking_url_template": "", "ad_group.type": "SEARCH_STANDARD", "ad_group.url_custom_parameters": [], "segments.date": "2022-04-09"}, "emitted_at": 1692610032158} -{"stream": "ad_groups", "data": {"ad_group.ad_rotation_mode": "UNSPECIFIED", "ad_group.base_ad_group": "customers/4651612872/adGroups/137051662444", "ad_group.campaign": "customers/4651612872/campaigns/16820250687", "ad_group.cpc_bid_micros": 10000, "ad_group.cpm_bid_micros": 10000, "ad_group.cpv_bid_micros": 0, "ad_group.display_custom_bid_dimension": "UNSPECIFIED", "ad_group.effective_target_cpa_micros": 0, "ad_group.effective_target_cpa_source": "UNSPECIFIED", "ad_group.effective_target_roas": 0.0, "ad_group.effective_target_roas_source": "UNSPECIFIED", "ad_group.excluded_parent_asset_field_types": [], "ad_group.optimized_targeting_enabled": false, "ad_group.final_url_suffix": "", "ad_group.id": 137051662444, "ad_group.labels": [], "ad_group.name": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00a01", "ad_group.percent_cpc_bid_micros": 0, "ad_group.resource_name": "customers/4651612872/adGroups/137051662444", "ad_group.status": "ENABLED", "ad_group.target_cpa_micros": 0, "ad_group.target_cpm_micros": 10000, "ad_group.target_roas": 0.0, "ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n", "targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n"], "ad_group.tracking_url_template": "", "ad_group.type": "SEARCH_STANDARD", "ad_group.url_custom_parameters": [], "segments.date": "2022-04-09"}, "emitted_at": 1692610032159} -{"stream": "ad_groups", "data": {"ad_group.ad_rotation_mode": "UNSPECIFIED", "ad_group.base_ad_group": "customers/4651612872/adGroups/137020701042", "ad_group.campaign": "customers/4651612872/campaigns/16820250687", "ad_group.cpc_bid_micros": 10000, "ad_group.cpm_bid_micros": 10000, "ad_group.cpv_bid_micros": 0, "ad_group.display_custom_bid_dimension": "UNSPECIFIED", "ad_group.effective_target_cpa_micros": 0, "ad_group.effective_target_cpa_source": "UNSPECIFIED", "ad_group.effective_target_roas": 0.0, "ad_group.effective_target_roas_source": "UNSPECIFIED", "ad_group.excluded_parent_asset_field_types": [], "ad_group.optimized_targeting_enabled": false, "ad_group.final_url_suffix": "", "ad_group.id": 137020701042, "ad_group.labels": ["customers/4651612872/labels/21906377810"], "ad_group.name": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00a02", "ad_group.percent_cpc_bid_micros": 0, "ad_group.resource_name": "customers/4651612872/adGroups/137020701042", "ad_group.status": "ENABLED", "ad_group.target_cpa_micros": 0, "ad_group.target_cpm_micros": 10000, "ad_group.target_roas": 0.0, "ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n", "targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n"], "ad_group.tracking_url_template": "", "ad_group.type": "SEARCH_STANDARD", "ad_group.url_custom_parameters": [], "segments.date": "2022-04-10"}, "emitted_at": 1692610032161} -{"stream": "ad_groups", "data": {"ad_group.ad_rotation_mode": "UNSPECIFIED", "ad_group.base_ad_group": "customers/4651612872/adGroups/137051662444", "ad_group.campaign": "customers/4651612872/campaigns/16820250687", "ad_group.cpc_bid_micros": 10000, "ad_group.cpm_bid_micros": 10000, "ad_group.cpv_bid_micros": 0, "ad_group.display_custom_bid_dimension": "UNSPECIFIED", "ad_group.effective_target_cpa_micros": 0, "ad_group.effective_target_cpa_source": "UNSPECIFIED", "ad_group.effective_target_roas": 0.0, "ad_group.effective_target_roas_source": "UNSPECIFIED", "ad_group.excluded_parent_asset_field_types": [], "ad_group.optimized_targeting_enabled": false, "ad_group.final_url_suffix": "", "ad_group.id": 137051662444, "ad_group.labels": [], "ad_group.name": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00a01", "ad_group.percent_cpc_bid_micros": 0, "ad_group.resource_name": "customers/4651612872/adGroups/137051662444", "ad_group.status": "ENABLED", "ad_group.target_cpa_micros": 0, "ad_group.target_cpm_micros": 10000, "ad_group.target_roas": 0.0, "ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n", "targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n"], "ad_group.tracking_url_template": "", "ad_group.type": "SEARCH_STANDARD", "ad_group.url_custom_parameters": [], "segments.date": "2022-04-10"}, "emitted_at": 1692610032162} -{"stream": "audience", "data": {"audience.description": "", "audience.dimensions": ["audience_segments {\n segments {\n custom_audience {\n custom_audience: \"customers/4651612872/customAudiences/523469909\"\n }\n }\n}\n"], "audience.exclusion_dimension": "", "audience.id": 47792633, "audience.name": "Audience name 1", "audience.resource_name": "customers/4651612872/audiences/47792633", "audience.status": "ENABLED"}, "emitted_at": 1688510825339} -{"stream": "user_interest", "data": {"user_interest.availabilities": ["channel {\n availability_mode: CHANNEL_TYPE_AND_ALL_SUBTYPES\n advertising_channel_type: SEARCH\n include_default_channel_sub_type: true\n}\nlocale {\n availability_mode: ALL_LOCALES\n}\n", "channel {\n availability_mode: CHANNEL_TYPE_AND_ALL_SUBTYPES\n advertising_channel_type: DISPLAY\n include_default_channel_sub_type: true\n}\nlocale {\n availability_mode: ALL_LOCALES\n}\n", "channel {\n availability_mode: CHANNEL_TYPE_AND_ALL_SUBTYPES\n advertising_channel_type: SHOPPING\n include_default_channel_sub_type: true\n}\nlocale {\n availability_mode: ALL_LOCALES\n}\n", "channel {\n availability_mode: CHANNEL_TYPE_AND_ALL_SUBTYPES\n advertising_channel_type: DISCOVERY\n include_default_channel_sub_type: true\n}\nlocale {\n availability_mode: ALL_LOCALES\n}\n", "channel {\n availability_mode: CHANNEL_TYPE_AND_SUBSET_SUBTYPES\n advertising_channel_type: VIDEO\n advertising_channel_sub_type: VIDEO_SEQUENCE\n advertising_channel_sub_type: VIDEO_OUTSTREAM\n advertising_channel_sub_type: VIDEO_ACTION\n advertising_channel_sub_type: VIDEO_NON_SKIPPABLE\n advertising_channel_sub_type: VIDEO_REACH_TARGET_FREQUENCY\n include_default_channel_sub_type: true\n}\nlocale {\n availability_mode: ALL_LOCALES\n}\n"], "user_interest.launched_to_all": false, "user_interest.name": "Cloud Services Power Users", "user_interest.resource_name": "customers/4651612872/userInterests/92931", "user_interest.taxonomy_type": "AFFINITY", "user_interest.user_interest_id": 92931, "user_interest.user_interest_parent": "customers/4651612872/userInterests/92507"}, "emitted_at": 1688510842265} -{"stream": "campaign_budget", "data": {"campaign_budget.aligned_bidding_strategy_id": 0, "campaign_budget.amount_micros": 750000, "campaign_budget.delivery_method": ["STANDARD"], "campaign_budget.explicitly_shared": false, "campaign_budget.has_recommended_budget": false, "campaign_budget.id": 10695604507, "campaign_budget.name": "Website traffic-Search-15", "campaign_budget.period": ["DAILY"], "campaign_budget.recommended_budget_amount_micros": 0, "campaign_budget.recommended_budget_estimated_change_weekly_clicks": 0, "campaign_budget.recommended_budget_estimated_change_weekly_cost_micros": 0, "campaign_budget.recommended_budget_estimated_change_weekly_interactions": 0, "campaign_budget.recommended_budget_estimated_change_weekly_views": 0, "campaign_budget.reference_count": 0, "campaign_budget.resource_name": "customers/4651612872/campaignBudgets/10695604507", "campaign_budget.status": ["REMOVED"], "campaign_budget.total_amount_micros": 0, "campaign_budget.type": ["STANDARD"], "segments.date": "2022-04-08", "segments.budget_campaign_association_status.campaign": "customers/4651612872/campaigns/16820250687", "segments.budget_campaign_association_status.status": ["REMOVED"], "metrics.all_conversions": 0.0, "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 0.0, "metrics.average_cpv": 0.0, "metrics.clicks": 0, "metrics.conversions": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 0, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "metrics.impressions": 2, "metrics.interaction_event_types": [], "metrics.interaction_rate": 0.0, "metrics.interactions": 0, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0}, "emitted_at": 1692610545110} -{"stream": "campaign_budget", "data": {"campaign_budget.aligned_bidding_strategy_id": 0, "campaign_budget.amount_micros": 750000, "campaign_budget.delivery_method": ["STANDARD"], "campaign_budget.explicitly_shared": false, "campaign_budget.has_recommended_budget": false, "campaign_budget.id": 10695604507, "campaign_budget.name": "Website traffic-Search-15", "campaign_budget.period": ["DAILY"], "campaign_budget.recommended_budget_amount_micros": 0, "campaign_budget.recommended_budget_estimated_change_weekly_clicks": 0, "campaign_budget.recommended_budget_estimated_change_weekly_cost_micros": 0, "campaign_budget.recommended_budget_estimated_change_weekly_interactions": 0, "campaign_budget.recommended_budget_estimated_change_weekly_views": 0, "campaign_budget.reference_count": 0, "campaign_budget.resource_name": "customers/4651612872/campaignBudgets/10695604507", "campaign_budget.status": ["REMOVED"], "campaign_budget.total_amount_micros": 0, "campaign_budget.type": ["STANDARD"], "segments.date": "2022-04-09", "segments.budget_campaign_association_status.campaign": "customers/4651612872/campaigns/16820250687", "segments.budget_campaign_association_status.status": ["REMOVED"], "metrics.all_conversions": 0.0, "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.average_cost": 70000.0, "metrics.average_cpc": 70000.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 492957.74647887325, "metrics.average_cpv": 0.0, "metrics.clicks": 1, "metrics.conversions": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 70000, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.007042253521126761, "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "metrics.impressions": 142, "metrics.interaction_event_types": ["InteractionEventType.CLICK"], "metrics.interaction_rate": 0.007042253521126761, "metrics.interactions": 1, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0}, "emitted_at": 1692610545113} -{"stream": "campaign_budget", "data": {"campaign_budget.aligned_bidding_strategy_id": 0, "campaign_budget.amount_micros": 750000, "campaign_budget.delivery_method": ["STANDARD"], "campaign_budget.explicitly_shared": false, "campaign_budget.has_recommended_budget": false, "campaign_budget.id": 10695604507, "campaign_budget.name": "Website traffic-Search-15", "campaign_budget.period": ["DAILY"], "campaign_budget.recommended_budget_amount_micros": 0, "campaign_budget.recommended_budget_estimated_change_weekly_clicks": 0, "campaign_budget.recommended_budget_estimated_change_weekly_cost_micros": 0, "campaign_budget.recommended_budget_estimated_change_weekly_interactions": 0, "campaign_budget.recommended_budget_estimated_change_weekly_views": 0, "campaign_budget.reference_count": 0, "campaign_budget.resource_name": "customers/4651612872/campaignBudgets/10695604507", "campaign_budget.status": ["REMOVED"], "campaign_budget.total_amount_micros": 0, "campaign_budget.type": ["STANDARD"], "segments.date": "2022-04-10", "segments.budget_campaign_association_status.campaign": "customers/4651612872/campaigns/16820250687", "segments.budget_campaign_association_status.status": ["REMOVED"], "metrics.all_conversions": 0.0, "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.average_cost": 175000.0, "metrics.average_cpc": 175000.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 17721518.987341773, "metrics.average_cpv": 0.0, "metrics.clicks": 8, "metrics.conversions": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 1400000, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.10126582278481013, "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "metrics.impressions": 79, "metrics.interaction_event_types": ["InteractionEventType.CLICK"], "metrics.interaction_rate": 0.10126582278481013, "metrics.interactions": 8, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0}, "emitted_at": 1692610545116} -{"stream": "labels", "data": {"label.id": 21585034471, "label.name": "edgao-example-label", "label.resource_name": "customers/4651612872/labels/21585034471", "label.status": "ENABLED", "label.text_label.background_color": "#E993EB", "label.text_label.description": "example label for edgao"}, "emitted_at": 1689230737253} -{"stream": "campaign_bidding_strategies", "data": {"campaign.id": 17354032686, "bidding_strategy.aligned_campaign_budget_id": 0, "bidding_strategy.campaign_count": 0, "bidding_strategy.currency_code": "", "bidding_strategy.effective_currency_code": "", "bidding_strategy.enhanced_cpc": "", "bidding_strategy.id": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversion_value.target_roas": 0.0, "bidding_strategy.maximize_conversions.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversions.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversions.target_cpa_micros": 0, "bidding_strategy.name": "", "bidding_strategy.non_removed_campaign_count": 0, "bidding_strategy.resource_name": "", "bidding_strategy.status": "UNSPECIFIED", "bidding_strategy.target_cpa.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_cpa.cpc_bid_floor_micros": 0, "bidding_strategy.target_cpa.target_cpa_micros": 0, "bidding_strategy.target_impression_share.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_impression_share.location": "UNSPECIFIED", "bidding_strategy.target_impression_share.location_fraction_micros": 0, "bidding_strategy.target_roas.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_roas.cpc_bid_floor_micros": 0, "bidding_strategy.target_roas.target_roas": 0.0, "bidding_strategy.target_spend.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_spend.target_spend_micros": 0, "bidding_strategy.type": "UNSPECIFIED", "segments.date": "2022-05-31"}, "emitted_at": 1689230742268} -{"stream": "campaign_bidding_strategies", "data": {"campaign.id": 17324459992, "bidding_strategy.aligned_campaign_budget_id": 0, "bidding_strategy.campaign_count": 0, "bidding_strategy.currency_code": "", "bidding_strategy.effective_currency_code": "", "bidding_strategy.enhanced_cpc": "", "bidding_strategy.id": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversion_value.target_roas": 0.0, "bidding_strategy.maximize_conversions.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversions.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversions.target_cpa_micros": 0, "bidding_strategy.name": "", "bidding_strategy.non_removed_campaign_count": 0, "bidding_strategy.resource_name": "", "bidding_strategy.status": "UNSPECIFIED", "bidding_strategy.target_cpa.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_cpa.cpc_bid_floor_micros": 0, "bidding_strategy.target_cpa.target_cpa_micros": 0, "bidding_strategy.target_impression_share.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_impression_share.location": "UNSPECIFIED", "bidding_strategy.target_impression_share.location_fraction_micros": 0, "bidding_strategy.target_roas.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_roas.cpc_bid_floor_micros": 0, "bidding_strategy.target_roas.target_roas": 0.0, "bidding_strategy.target_spend.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_spend.target_spend_micros": 0, "bidding_strategy.type": "UNSPECIFIED", "segments.date": "2022-06-01"}, "emitted_at": 1689230742269} -{"stream": "ad_group_bidding_strategies", "data": {"ad_group.id": 143992182864, "bidding_strategy.aligned_campaign_budget_id": 0, "bidding_strategy.campaign_count": 0, "bidding_strategy.currency_code": "", "bidding_strategy.effective_currency_code": "", "bidding_strategy.enhanced_cpc": "", "bidding_strategy.id": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversion_value.target_roas": 0.0, "bidding_strategy.maximize_conversions.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversions.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversions.target_cpa_micros": 0, "bidding_strategy.name": "", "bidding_strategy.non_removed_campaign_count": 0, "bidding_strategy.resource_name": "", "bidding_strategy.status": "UNSPECIFIED", "bidding_strategy.target_cpa.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_cpa.cpc_bid_floor_micros": 0, "bidding_strategy.target_cpa.target_cpa_micros": 0, "bidding_strategy.target_impression_share.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_impression_share.location": "UNSPECIFIED", "bidding_strategy.target_impression_share.location_fraction_micros": 0, "bidding_strategy.target_roas.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_roas.cpc_bid_floor_micros": 0, "bidding_strategy.target_roas.target_roas": 0.0, "bidding_strategy.target_spend.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_spend.target_spend_micros": 0, "bidding_strategy.type": "UNSPECIFIED", "segments.date": "2022-05-31"}, "emitted_at": 1689230746492} -{"stream": "ad_group_bidding_strategies", "data": {"ad_group.id": 138459160713, "bidding_strategy.aligned_campaign_budget_id": 0, "bidding_strategy.campaign_count": 0, "bidding_strategy.currency_code": "", "bidding_strategy.effective_currency_code": "", "bidding_strategy.enhanced_cpc": "", "bidding_strategy.id": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversion_value.target_roas": 0.0, "bidding_strategy.maximize_conversions.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversions.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversions.target_cpa_micros": 0, "bidding_strategy.name": "", "bidding_strategy.non_removed_campaign_count": 0, "bidding_strategy.resource_name": "", "bidding_strategy.status": "UNSPECIFIED", "bidding_strategy.target_cpa.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_cpa.cpc_bid_floor_micros": 0, "bidding_strategy.target_cpa.target_cpa_micros": 0, "bidding_strategy.target_impression_share.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_impression_share.location": "UNSPECIFIED", "bidding_strategy.target_impression_share.location_fraction_micros": 0, "bidding_strategy.target_roas.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_roas.cpc_bid_floor_micros": 0, "bidding_strategy.target_roas.target_roas": 0.0, "bidding_strategy.target_spend.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_spend.target_spend_micros": 0, "bidding_strategy.type": "UNSPECIFIED", "segments.date": "2022-06-01"}, "emitted_at": 1689230746493} -{"stream": "ad_group_criterions", "data": {"ad_group.id": 143992182864, "ad_group_criterion.ad_group": "customers/4651612872/adGroups/143992182864", "ad_group_criterion.age_range.type": "UNSPECIFIED", "ad_group_criterion.app_payment_model.type": "UNSPECIFIED", "ad_group_criterion.approval_status": "APPROVED", "ad_group_criterion.audience.audience": "", "ad_group_criterion.bid_modifier": 0.0, "ad_group_criterion.combined_audience.combined_audience": "", "ad_group_criterion.cpc_bid_micros": 0, "ad_group_criterion.cpm_bid_micros": 0, "ad_group_criterion.cpv_bid_micros": 0, "ad_group_criterion.criterion_id": 82426333464, "ad_group_criterion.custom_affinity.custom_affinity": "", "ad_group_criterion.custom_audience.custom_audience": "", "ad_group_criterion.custom_intent.custom_intent": "", "ad_group_criterion.disapproval_reasons": [], "ad_group_criterion.display_name": "uservertical::80530", "ad_group_criterion.effective_cpc_bid_micros": 0, "ad_group_criterion.effective_cpc_bid_source": "UNSPECIFIED", "ad_group_criterion.effective_cpm_bid_micros": 10000, "ad_group_criterion.effective_cpm_bid_source": "AD_GROUP", "ad_group_criterion.effective_cpv_bid_micros": 10000, "ad_group_criterion.effective_cpv_bid_source": "AD_GROUP", "ad_group_criterion.effective_percent_cpc_bid_micros": 0, "ad_group_criterion.effective_percent_cpc_bid_source": "UNSPECIFIED", "ad_group_criterion.final_mobile_urls": [], "ad_group_criterion.final_url_suffix": "", "ad_group_criterion.final_urls": [], "ad_group_criterion.gender.type": "UNSPECIFIED", "ad_group_criterion.income_range.type": "UNSPECIFIED", "ad_group_criterion.keyword.match_type": "UNSPECIFIED", "ad_group_criterion.keyword.text": "", "ad_group_criterion.labels": [], "ad_group_criterion.mobile_app_category.mobile_app_category_constant": "", "ad_group_criterion.mobile_application.app_id": "", "ad_group_criterion.mobile_application.name": "", "ad_group_criterion.negative": false, "ad_group_criterion.parental_status.type": "UNSPECIFIED", "ad_group_criterion.percent_cpc_bid_micros": 0, "ad_group_criterion.placement.url": "", "ad_group_criterion.position_estimates.estimated_add_clicks_at_first_position_cpc": 0, "ad_group_criterion.position_estimates.estimated_add_cost_at_first_position_cpc": 0, "ad_group_criterion.position_estimates.first_page_cpc_micros": 0, "ad_group_criterion.position_estimates.first_position_cpc_micros": 0, "ad_group_criterion.position_estimates.top_of_page_cpc_micros": 0, "ad_group_criterion.quality_info.creative_quality_score": "UNSPECIFIED", "ad_group_criterion.quality_info.post_click_quality_score": "UNSPECIFIED", "ad_group_criterion.quality_info.quality_score": 0, "ad_group_criterion.quality_info.search_predicted_ctr": "UNSPECIFIED", "ad_group_criterion.resource_name": "customers/4651612872/adGroupCriteria/143992182864~82426333464", "ad_group_criterion.status": "ENABLED", "ad_group_criterion.system_serving_status": "ELIGIBLE", "ad_group_criterion.topic.path": [], "ad_group_criterion.topic.topic_constant": "", "ad_group_criterion.tracking_url_template": "", "ad_group_criterion.type": "USER_INTEREST", "ad_group_criterion.url_custom_parameters": [], "ad_group_criterion.user_interest.user_interest_category": "customers/4651612872/userInterests/80530", "ad_group_criterion.user_list.user_list": "", "ad_group_criterion.webpage.conditions": [], "ad_group_criterion.webpage.coverage_percentage": 0.0, "ad_group_criterion.webpage.criterion_name": "", "ad_group_criterion.webpage.sample.sample_urls": [], "ad_group_criterion.youtube_channel.channel_id": "", "ad_group_criterion.youtube_video.video_id": ""}, "emitted_at": 1689230748366} -{"stream": "ad_group_criterions", "data": {"ad_group.id": 143992182864, "ad_group_criterion.ad_group": "customers/4651612872/adGroups/143992182864", "ad_group_criterion.age_range.type": "UNSPECIFIED", "ad_group_criterion.app_payment_model.type": "UNSPECIFIED", "ad_group_criterion.approval_status": "APPROVED", "ad_group_criterion.audience.audience": "", "ad_group_criterion.bid_modifier": 0.0, "ad_group_criterion.combined_audience.combined_audience": "", "ad_group_criterion.cpc_bid_micros": 0, "ad_group_criterion.cpm_bid_micros": 0, "ad_group_criterion.cpv_bid_micros": 0, "ad_group_criterion.criterion_id": 297422806498, "ad_group_criterion.custom_affinity.custom_affinity": "", "ad_group_criterion.custom_audience.custom_audience": "", "ad_group_criterion.custom_intent.custom_intent": "", "ad_group_criterion.disapproval_reasons": [], "ad_group_criterion.display_name": "api integration", "ad_group_criterion.effective_cpc_bid_micros": 0, "ad_group_criterion.effective_cpc_bid_source": "UNSPECIFIED", "ad_group_criterion.effective_cpm_bid_micros": 10000, "ad_group_criterion.effective_cpm_bid_source": "AD_GROUP", "ad_group_criterion.effective_cpv_bid_micros": 10000, "ad_group_criterion.effective_cpv_bid_source": "AD_GROUP", "ad_group_criterion.effective_percent_cpc_bid_micros": 0, "ad_group_criterion.effective_percent_cpc_bid_source": "UNSPECIFIED", "ad_group_criterion.final_mobile_urls": [], "ad_group_criterion.final_url_suffix": "", "ad_group_criterion.final_urls": [], "ad_group_criterion.gender.type": "UNSPECIFIED", "ad_group_criterion.income_range.type": "UNSPECIFIED", "ad_group_criterion.keyword.match_type": "BROAD", "ad_group_criterion.keyword.text": "api integration", "ad_group_criterion.labels": [], "ad_group_criterion.mobile_app_category.mobile_app_category_constant": "", "ad_group_criterion.mobile_application.app_id": "", "ad_group_criterion.mobile_application.name": "", "ad_group_criterion.negative": false, "ad_group_criterion.parental_status.type": "UNSPECIFIED", "ad_group_criterion.percent_cpc_bid_micros": 0, "ad_group_criterion.placement.url": "", "ad_group_criterion.position_estimates.estimated_add_clicks_at_first_position_cpc": 0, "ad_group_criterion.position_estimates.estimated_add_cost_at_first_position_cpc": 0, "ad_group_criterion.position_estimates.first_page_cpc_micros": 0, "ad_group_criterion.position_estimates.first_position_cpc_micros": 0, "ad_group_criterion.position_estimates.top_of_page_cpc_micros": 0, "ad_group_criterion.quality_info.creative_quality_score": "UNSPECIFIED", "ad_group_criterion.quality_info.post_click_quality_score": "UNSPECIFIED", "ad_group_criterion.quality_info.quality_score": 0, "ad_group_criterion.quality_info.search_predicted_ctr": "UNSPECIFIED", "ad_group_criterion.resource_name": "customers/4651612872/adGroupCriteria/143992182864~297422806498", "ad_group_criterion.status": "ENABLED", "ad_group_criterion.system_serving_status": "ELIGIBLE", "ad_group_criterion.topic.path": [], "ad_group_criterion.topic.topic_constant": "", "ad_group_criterion.tracking_url_template": "", "ad_group_criterion.type": "KEYWORD", "ad_group_criterion.url_custom_parameters": [], "ad_group_criterion.user_interest.user_interest_category": "", "ad_group_criterion.user_list.user_list": "", "ad_group_criterion.webpage.conditions": [], "ad_group_criterion.webpage.coverage_percentage": 0.0, "ad_group_criterion.webpage.criterion_name": "", "ad_group_criterion.webpage.sample.sample_urls": [], "ad_group_criterion.youtube_channel.channel_id": "", "ad_group_criterion.youtube_video.video_id": ""}, "emitted_at": 1689230748368} -{"stream": "ad_listing_group_criterions", "data": {"ad_group.id": 143992182864, "ad_group_criterion.criterion_id": 82426333464, "ad_group_criterion.listing_group.case_value.activity_country.value": "", "ad_group_criterion.listing_group.case_value.activity_id.value": "", "ad_group_criterion.listing_group.case_value.activity_rating.value": 0, "ad_group_criterion.listing_group.case_value.hotel_city.city_criterion": "", "ad_group_criterion.listing_group.case_value.hotel_class.value": 0, "ad_group_criterion.listing_group.case_value.hotel_country_region.country_region_criterion": "", "ad_group_criterion.listing_group.case_value.hotel_id.value": "", "ad_group_criterion.listing_group.case_value.hotel_state.state_criterion": "", "ad_group_criterion.listing_group.case_value.product_bidding_category.id": 0, "ad_group_criterion.listing_group.case_value.product_bidding_category.level": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_brand.value": "", "ad_group_criterion.listing_group.case_value.product_channel.channel": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_channel_exclusivity.channel_exclusivity": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_condition.condition": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_custom_attribute.index": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_custom_attribute.value": "", "ad_group_criterion.listing_group.case_value.product_item_id.value": "", "ad_group_criterion.listing_group.case_value.product_type.level": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_type.value": "", "ad_group_criterion.listing_group.parent_ad_group_criterion": "", "ad_group_criterion.listing_group.type": "UNSPECIFIED"}, "emitted_at": 1689230749081} -{"stream": "ad_listing_group_criterions", "data": {"ad_group.id": 143992182864, "ad_group_criterion.criterion_id": 297422806498, "ad_group_criterion.listing_group.case_value.activity_country.value": "", "ad_group_criterion.listing_group.case_value.activity_id.value": "", "ad_group_criterion.listing_group.case_value.activity_rating.value": 0, "ad_group_criterion.listing_group.case_value.hotel_city.city_criterion": "", "ad_group_criterion.listing_group.case_value.hotel_class.value": 0, "ad_group_criterion.listing_group.case_value.hotel_country_region.country_region_criterion": "", "ad_group_criterion.listing_group.case_value.hotel_id.value": "", "ad_group_criterion.listing_group.case_value.hotel_state.state_criterion": "", "ad_group_criterion.listing_group.case_value.product_bidding_category.id": 0, "ad_group_criterion.listing_group.case_value.product_bidding_category.level": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_brand.value": "", "ad_group_criterion.listing_group.case_value.product_channel.channel": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_channel_exclusivity.channel_exclusivity": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_condition.condition": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_custom_attribute.index": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_custom_attribute.value": "", "ad_group_criterion.listing_group.case_value.product_item_id.value": "", "ad_group_criterion.listing_group.case_value.product_type.level": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_type.value": "", "ad_group_criterion.listing_group.parent_ad_group_criterion": "", "ad_group_criterion.listing_group.type": "UNSPECIFIED"}, "emitted_at": 1689230749082} +{"stream": "account_performance_report", "data": {"customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 0.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "segments.ad_network_type": "SEARCH", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "metrics.average_cost": 253333.33333333334, "metrics.average_cpc": 253333.33333333334, "metrics.average_cpe": 0.0, "metrics.average_cpm": 27142857.14285714, "metrics.average_cpv": 0.0, "customer.manager": false, "metrics.clicks": 3, "metrics.content_budget_lost_impression_share": 0.0, "metrics.content_impression_share": 0.0, "metrics.content_rank_lost_impression_share": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 760000, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.10714285714285714, "segments.date": "2022-05-18", "segments.day_of_week": "WEDNESDAY", "segments.device": "DESKTOP", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "customer.id": 4651612872, "metrics.impressions": 28, "metrics.interaction_rate": 0.10714285714285714, "metrics.interaction_event_types": ["InteractionEventType.CLICK"], "metrics.interactions": 3, "customer.auto_tagging_enabled": true, "customer.test_account": false, "segments.month": "2022-05-01", "segments.quarter": "2022-04-01", "metrics.search_budget_lost_impression_share": 0.6935849056603773, "metrics.search_exact_match_impression_share": 0.0999, "metrics.search_impression_share": 0.0999, "metrics.search_rank_lost_impression_share": 0.2852830188679245, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2022-05-16", "segments.year": 2022}, "emitted_at": 1693824372609} +{"stream": "account_performance_report", "data": {"customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 0.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "segments.ad_network_type": "SEARCH", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "metrics.average_cost": 30000.0, "metrics.average_cpc": 30000.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 2500000.0, "metrics.average_cpv": 0.0, "customer.manager": false, "metrics.clicks": 1, "metrics.content_budget_lost_impression_share": 0.0, "metrics.content_impression_share": 0.0, "metrics.content_rank_lost_impression_share": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 30000, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.08333333333333333, "segments.date": "2022-05-18", "segments.day_of_week": "WEDNESDAY", "segments.device": "MOBILE", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "customer.id": 4651612872, "metrics.impressions": 12, "metrics.interaction_rate": 0.08333333333333333, "metrics.interaction_event_types": ["InteractionEventType.CLICK"], "metrics.interactions": 1, "customer.auto_tagging_enabled": true, "customer.test_account": false, "segments.month": "2022-05-01", "segments.quarter": "2022-04-01", "metrics.search_budget_lost_impression_share": 0.7254437869822485, "metrics.search_exact_match_impression_share": 0.0999, "metrics.search_impression_share": 0.0999, "metrics.search_rank_lost_impression_share": 0.2603550295857988, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2022-05-16", "segments.year": 2022}, "emitted_at": 1693824372610} +{"stream": "account_performance_report", "data": {"customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 0.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "segments.ad_network_type": "SEARCH", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 0.0, "metrics.average_cpv": 0.0, "customer.manager": false, "metrics.clicks": 0, "metrics.content_budget_lost_impression_share": 0.0, "metrics.content_impression_share": 0.0, "metrics.content_rank_lost_impression_share": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 0, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "segments.date": "2022-05-18", "segments.day_of_week": "WEDNESDAY", "segments.device": "TABLET", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "customer.id": 4651612872, "metrics.impressions": 0, "metrics.interaction_rate": 0.0, "metrics.interaction_event_types": [], "metrics.interactions": 0, "customer.auto_tagging_enabled": true, "customer.test_account": false, "segments.month": "2022-05-01", "segments.quarter": "2022-04-01", "metrics.search_budget_lost_impression_share": 0.9001, "metrics.search_exact_match_impression_share": 0.0999, "metrics.search_impression_share": 0.0999, "metrics.search_rank_lost_impression_share": 0.0, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2022-05-16", "segments.year": 2022}, "emitted_at": 1693824372611} +{"stream": "accounts", "data": {"customer.auto_tagging_enabled": true, "customer.call_reporting_setting.call_conversion_action": "customers/4651612872/conversionActions/179", "customer.call_reporting_setting.call_conversion_reporting_enabled": true, "customer.call_reporting_setting.call_reporting_enabled": true, "customer.conversion_tracking_setting.conversion_tracking_id": 657981234, "customer.conversion_tracking_setting.cross_account_conversion_tracking_id": 0, "customer.currency_code": "USD", "customer.descriptive_name": "", "customer.final_url_suffix": "", "customer.has_partners_badge": false, "customer.id": 4651612872, "customer.manager": false, "customer.optimization_score": 0.7492458999999999, "customer.optimization_score_weight": 86.045889, "customer.pay_per_conversion_eligibility_failure_reasons": ["CustomerPayPerConversionEligibilityFailureReason.NOT_ENOUGH_CONVERSIONS"], "customer.remarketing_setting.google_global_site_tag": "\n\n\n", "customer.resource_name": "customers/4651612872", "customer.test_account": false, "customer.time_zone": "America/Los_Angeles", "customer.tracking_url_template": "", "segments.date": "2022-05-18"}, "emitted_at": 1693824394910} +{"stream": "accounts", "data": {"customer.auto_tagging_enabled": true, "customer.call_reporting_setting.call_conversion_action": "customers/4651612872/conversionActions/179", "customer.call_reporting_setting.call_conversion_reporting_enabled": true, "customer.call_reporting_setting.call_reporting_enabled": true, "customer.conversion_tracking_setting.conversion_tracking_id": 657981234, "customer.conversion_tracking_setting.cross_account_conversion_tracking_id": 0, "customer.currency_code": "USD", "customer.descriptive_name": "", "customer.final_url_suffix": "", "customer.has_partners_badge": false, "customer.id": 4651612872, "customer.manager": false, "customer.optimization_score": 0.7492458999999999, "customer.optimization_score_weight": 86.045889, "customer.pay_per_conversion_eligibility_failure_reasons": ["CustomerPayPerConversionEligibilityFailureReason.NOT_ENOUGH_CONVERSIONS"], "customer.remarketing_setting.google_global_site_tag": "\n\n\n", "customer.resource_name": "customers/4651612872", "customer.test_account": false, "customer.time_zone": "America/Los_Angeles", "customer.tracking_url_template": "", "segments.date": "2022-05-19"}, "emitted_at": 1693824394913} +{"stream": "accounts", "data": {"customer.auto_tagging_enabled": true, "customer.call_reporting_setting.call_conversion_action": "customers/4651612872/conversionActions/179", "customer.call_reporting_setting.call_conversion_reporting_enabled": true, "customer.call_reporting_setting.call_reporting_enabled": true, "customer.conversion_tracking_setting.conversion_tracking_id": 657981234, "customer.conversion_tracking_setting.cross_account_conversion_tracking_id": 0, "customer.currency_code": "USD", "customer.descriptive_name": "", "customer.final_url_suffix": "", "customer.has_partners_badge": false, "customer.id": 4651612872, "customer.manager": false, "customer.optimization_score": 0.7492458999999999, "customer.optimization_score_weight": 86.045889, "customer.pay_per_conversion_eligibility_failure_reasons": ["CustomerPayPerConversionEligibilityFailureReason.NOT_ENOUGH_CONVERSIONS"], "customer.remarketing_setting.google_global_site_tag": "\n\n\n", "customer.resource_name": "customers/4651612872", "customer.test_account": false, "customer.time_zone": "America/Los_Angeles", "customer.tracking_url_template": "", "segments.date": "2022-05-20"}, "emitted_at": 1693824394915} +{"stream": "ad_group_ad_labels", "data": {"ad_group_ad.ad.resource_name": "customers/4651612872/ads/524518584182", "ad_group_ad_label.resource_name": "customers/4651612872/adGroupAdLabels/123273719655~524518584182~21585034471", "label.name": "edgao-example-label", "label.resource_name": "customers/4651612872/labels/21585034471"}, "emitted_at": 1693824400742} +{"stream": "ad_group_ad_labels", "data": {"ad_group_ad.ad.resource_name": "customers/4651612872/ads/592078631218", "ad_group_ad_label.resource_name": "customers/4651612872/adGroupAdLabels/137020701042~592078631218~21906377810", "label.name": "Test Delete label customer", "label.resource_name": "customers/4651612872/labels/21906377810"}, "emitted_at": 1693824400743} +{"stream": "ad_group_ad_report", "data": {"ad_group_ad.ad.legacy_responsive_display_ad.accent_color": "", "ad_group.id": 137020701042, "customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 0.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "ad_group_ad.ad_group": "customers/4651612872/adGroups/137020701042", "ad_group.name": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00a02", "ad_group.status": "ENABLED", "segments.ad_network_type": "SEARCH", "ad_group_ad.ad_strength": "POOR", "ad_group_ad.ad.type": "RESPONSIVE_SEARCH_AD", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "ad_group_ad.ad.legacy_responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.added_by_google_ads": false, "metrics.average_cost": 197500.0, "metrics.average_cpc": 197500.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 19750000.0, "metrics.average_cpv": 0.0, "metrics.average_page_views": 0.0, "metrics.average_time_on_site": 0.0, "ad_group.base_ad_group": "customers/4651612872/adGroups/137020701042", "campaign.base_campaign": "customers/4651612872/campaigns/16820250687", "metrics.bounce_rate": 0.0, "ad_group_ad.ad.legacy_responsive_display_ad.business_name": "", "ad_group_ad.ad.legacy_responsive_display_ad.call_to_action_text": "", "campaign.id": 16820250687, "campaign.name": "Website traffic-Search-15", "campaign.status": "PAUSED", "metrics.clicks": 4, "ad_group_ad.policy_summary.approval_status": "APPROVED_LIMITED", "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 790000, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cost_per_current_model_attributed_conversion": 0.0, "ad_group_ad.ad.final_mobile_urls": [], "ad_group_ad.ad.final_urls": ["https://airbyte.com"], "ad_group_ad.ad.tracking_url_template": "", "ad_group_ad.ad.url_custom_parameters": [], "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.1, "metrics.current_model_attributed_conversions_value": 0.0, "metrics.current_model_attributed_conversions": 0.0, "segments.date": "2022-05-18", "segments.day_of_week": "WEDNESDAY", "ad_group_ad.ad.expanded_text_ad.description": "", "ad_group_ad.ad.text_ad.description1": "", "ad_group_ad.ad.text_ad.description2": "", "ad_group_ad.ad.device_preference": "UNSPECIFIED", "ad_group_ad.ad.display_url": "", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "ad_group_ad.ad.legacy_responsive_display_ad.logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.marketing_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_marketing_image": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description": "", "ad_group_ad.ad.expanded_text_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.headline_part3": "", "customer.id": 4651612872, "ad_group_ad.ad.legacy_responsive_display_ad.format_setting": "UNSPECIFIED", "metrics.gmail_forwards": 0, "metrics.gmail_saves": 0, "metrics.gmail_secondary_clicks": 0, "ad_group_ad.ad.text_ad.headline": "", "ad_group_ad.ad.expanded_text_ad.headline_part1": "", "ad_group_ad.ad.expanded_text_ad.headline_part2": "", "ad_group_ad.ad.id": 592078631218, "ad_group_ad.ad.image_ad.image_url": "", "ad_group_ad.ad.image_ad.pixel_height": 0, "ad_group_ad.ad.image_ad.pixel_width": 0, "ad_group_ad.ad.image_ad.mime_type": "UNSPECIFIED", "ad_group_ad.ad.image_ad.name": "", "metrics.impressions": 40, "metrics.interaction_rate": 0.1, "metrics.interaction_event_types": ["InteractionEventType.CLICK"], "metrics.interactions": 4, "ad_group_ad.ad.legacy_responsive_display_ad.long_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.main_color": "", "segments.month": "2022-05-01", "ad_group_ad.ad.responsive_display_ad.accent_color": "", "ad_group_ad.ad.responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.responsive_display_ad.business_name": "", "ad_group_ad.ad.responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.responsive_display_ad.descriptions": [], "ad_group_ad.ad.responsive_display_ad.price_prefix": "", "ad_group_ad.ad.responsive_display_ad.promo_text": "", "ad_group_ad.ad.responsive_display_ad.format_setting": "UNSPECIFIED", "ad_group_ad.ad.responsive_display_ad.headlines": [], "ad_group_ad.ad.responsive_display_ad.logo_images": [], "ad_group_ad.ad.responsive_display_ad.square_logo_images": [], "ad_group_ad.ad.responsive_display_ad.long_headline": "", "ad_group_ad.ad.responsive_display_ad.main_color": "", "ad_group_ad.ad.responsive_display_ad.marketing_images": [], "ad_group_ad.ad.responsive_display_ad.square_marketing_images": [], "ad_group_ad.ad.responsive_display_ad.youtube_videos": [], "ad_group_ad.ad.expanded_text_ad.path1": "", "ad_group_ad.ad.expanded_text_ad.path2": "", "metrics.percent_new_visitors": 0.0, "ad_group_ad.ad.legacy_responsive_display_ad.price_prefix": "", "ad_group_ad.ad.legacy_responsive_display_ad.promo_text": "", "segments.quarter": "2022-04-01", "ad_group_ad.ad.responsive_search_ad.descriptions": ["text: \"Behind The Scenes: Testing The Airbyte Maintainer Program\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Airbyte | Open-Source Data Integration Platform | ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n policy_topic_entries {\n topic: \"TRADEMARKS_IN_AD_TEXT\"\n type_: LIMITED\n evidences {\n text_list {\n texts: \"airbyte\"\n }\n }\n constraints {\n reseller_constraint {\n }\n }\n }\n review_status: REVIEWED\n approval_status: APPROVED_LIMITED\n}\n", "text: \"Upgrading Our Discourse And Slack To Support Our Community Growth\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Consolidate your data in your data warehouses, lakes and databases\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"], "ad_group_ad.ad.responsive_search_ad.headlines": ["text: \"Airbyte\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Open-source Data Integration\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"], "ad_group_ad.ad.responsive_search_ad.path1": "", "ad_group_ad.ad.responsive_search_ad.path2": "", "ad_group_ad.ad.legacy_responsive_display_ad.short_headline": "", "ad_group_ad.status": "ENABLED", "ad_group_ad.ad.system_managed_resource_source": "UNSPECIFIED", "metrics.top_impression_percentage": 0.75, "ad_group_ad.ad.app_ad.descriptions": [], "ad_group_ad.ad.app_ad.headlines": [], "ad_group_ad.ad.app_ad.html5_media_bundles": [], "ad_group_ad.ad.app_ad.images": [], "ad_group_ad.ad.app_ad.mandatory_ad_text": "", "ad_group_ad.ad.app_ad.youtube_videos": [], "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.value_per_current_model_attributed_conversion": 0.0, "metrics.video_quartile_p100_rate": 0.0, "metrics.video_quartile_p25_rate": 0.0, "metrics.video_quartile_p50_rate": 0.0, "metrics.video_quartile_p75_rate": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2022-05-16", "segments.year": 2022}, "emitted_at": 1693824365996} +{"stream": "ad_group_ad_report", "data": {"ad_group_ad.ad.legacy_responsive_display_ad.accent_color": "", "ad_group.id": 137020701042, "customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 0.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "ad_group_ad.ad_group": "customers/4651612872/adGroups/137020701042", "ad_group.name": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00a02", "ad_group.status": "ENABLED", "segments.ad_network_type": "SEARCH_PARTNERS", "ad_group_ad.ad_strength": "POOR", "ad_group_ad.ad.type": "RESPONSIVE_SEARCH_AD", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "ad_group_ad.ad.legacy_responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.added_by_google_ads": false, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 0.0, "metrics.average_cpv": 0.0, "metrics.average_page_views": 0.0, "metrics.average_time_on_site": 0.0, "ad_group.base_ad_group": "customers/4651612872/adGroups/137020701042", "campaign.base_campaign": "customers/4651612872/campaigns/16820250687", "metrics.bounce_rate": 0.0, "ad_group_ad.ad.legacy_responsive_display_ad.business_name": "", "ad_group_ad.ad.legacy_responsive_display_ad.call_to_action_text": "", "campaign.id": 16820250687, "campaign.name": "Website traffic-Search-15", "campaign.status": "PAUSED", "metrics.clicks": 0, "ad_group_ad.policy_summary.approval_status": "APPROVED_LIMITED", "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 0, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cost_per_current_model_attributed_conversion": 0.0, "ad_group_ad.ad.final_mobile_urls": [], "ad_group_ad.ad.final_urls": ["https://airbyte.com"], "ad_group_ad.ad.tracking_url_template": "", "ad_group_ad.ad.url_custom_parameters": [], "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "metrics.current_model_attributed_conversions_value": 0.0, "metrics.current_model_attributed_conversions": 0.0, "segments.date": "2022-05-18", "segments.day_of_week": "WEDNESDAY", "ad_group_ad.ad.expanded_text_ad.description": "", "ad_group_ad.ad.text_ad.description1": "", "ad_group_ad.ad.text_ad.description2": "", "ad_group_ad.ad.device_preference": "UNSPECIFIED", "ad_group_ad.ad.display_url": "", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "ad_group_ad.ad.legacy_responsive_display_ad.logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.marketing_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_marketing_image": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description": "", "ad_group_ad.ad.expanded_text_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.headline_part3": "", "customer.id": 4651612872, "ad_group_ad.ad.legacy_responsive_display_ad.format_setting": "UNSPECIFIED", "metrics.gmail_forwards": 0, "metrics.gmail_saves": 0, "metrics.gmail_secondary_clicks": 0, "ad_group_ad.ad.text_ad.headline": "", "ad_group_ad.ad.expanded_text_ad.headline_part1": "", "ad_group_ad.ad.expanded_text_ad.headline_part2": "", "ad_group_ad.ad.id": 592078631218, "ad_group_ad.ad.image_ad.image_url": "", "ad_group_ad.ad.image_ad.pixel_height": 0, "ad_group_ad.ad.image_ad.pixel_width": 0, "ad_group_ad.ad.image_ad.mime_type": "UNSPECIFIED", "ad_group_ad.ad.image_ad.name": "", "metrics.impressions": 11, "metrics.interaction_rate": 0.0, "metrics.interaction_event_types": [], "metrics.interactions": 0, "ad_group_ad.ad.legacy_responsive_display_ad.long_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.main_color": "", "segments.month": "2022-05-01", "ad_group_ad.ad.responsive_display_ad.accent_color": "", "ad_group_ad.ad.responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.responsive_display_ad.business_name": "", "ad_group_ad.ad.responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.responsive_display_ad.descriptions": [], "ad_group_ad.ad.responsive_display_ad.price_prefix": "", "ad_group_ad.ad.responsive_display_ad.promo_text": "", "ad_group_ad.ad.responsive_display_ad.format_setting": "UNSPECIFIED", "ad_group_ad.ad.responsive_display_ad.headlines": [], "ad_group_ad.ad.responsive_display_ad.logo_images": [], "ad_group_ad.ad.responsive_display_ad.square_logo_images": [], "ad_group_ad.ad.responsive_display_ad.long_headline": "", "ad_group_ad.ad.responsive_display_ad.main_color": "", "ad_group_ad.ad.responsive_display_ad.marketing_images": [], "ad_group_ad.ad.responsive_display_ad.square_marketing_images": [], "ad_group_ad.ad.responsive_display_ad.youtube_videos": [], "ad_group_ad.ad.expanded_text_ad.path1": "", "ad_group_ad.ad.expanded_text_ad.path2": "", "metrics.percent_new_visitors": 0.0, "ad_group_ad.ad.legacy_responsive_display_ad.price_prefix": "", "ad_group_ad.ad.legacy_responsive_display_ad.promo_text": "", "segments.quarter": "2022-04-01", "ad_group_ad.ad.responsive_search_ad.descriptions": ["text: \"Behind The Scenes: Testing The Airbyte Maintainer Program\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Airbyte | Open-Source Data Integration Platform | ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n policy_topic_entries {\n topic: \"TRADEMARKS_IN_AD_TEXT\"\n type_: LIMITED\n evidences {\n text_list {\n texts: \"airbyte\"\n }\n }\n constraints {\n reseller_constraint {\n }\n }\n }\n review_status: REVIEWED\n approval_status: APPROVED_LIMITED\n}\n", "text: \"Upgrading Our Discourse And Slack To Support Our Community Growth\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Consolidate your data in your data warehouses, lakes and databases\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"], "ad_group_ad.ad.responsive_search_ad.headlines": ["text: \"Airbyte\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Open-source Data Integration\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"], "ad_group_ad.ad.responsive_search_ad.path1": "", "ad_group_ad.ad.responsive_search_ad.path2": "", "ad_group_ad.ad.legacy_responsive_display_ad.short_headline": "", "ad_group_ad.status": "ENABLED", "ad_group_ad.ad.system_managed_resource_source": "UNSPECIFIED", "metrics.top_impression_percentage": 0.0, "ad_group_ad.ad.app_ad.descriptions": [], "ad_group_ad.ad.app_ad.headlines": [], "ad_group_ad.ad.app_ad.html5_media_bundles": [], "ad_group_ad.ad.app_ad.images": [], "ad_group_ad.ad.app_ad.mandatory_ad_text": "", "ad_group_ad.ad.app_ad.youtube_videos": [], "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.value_per_current_model_attributed_conversion": 0.0, "metrics.video_quartile_p100_rate": 0.0, "metrics.video_quartile_p25_rate": 0.0, "metrics.video_quartile_p50_rate": 0.0, "metrics.video_quartile_p75_rate": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2022-05-16", "segments.year": 2022}, "emitted_at": 1693824366000} +{"stream": "ad_group_ad_report", "data": {"ad_group_ad.ad.legacy_responsive_display_ad.accent_color": "", "ad_group.id": 137020701042, "customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 0.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "ad_group_ad.ad_group": "customers/4651612872/adGroups/137020701042", "ad_group.name": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00a02", "ad_group.status": "ENABLED", "segments.ad_network_type": "SEARCH", "ad_group_ad.ad_strength": "POOR", "ad_group_ad.ad.type": "RESPONSIVE_SEARCH_AD", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "ad_group_ad.ad.legacy_responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.added_by_google_ads": false, "metrics.average_cost": 143333.33333333334, "metrics.average_cpc": 143333.33333333334, "metrics.average_cpe": 0.0, "metrics.average_cpm": 37391304.347826086, "metrics.average_cpv": 0.0, "metrics.average_page_views": 0.0, "metrics.average_time_on_site": 0.0, "ad_group.base_ad_group": "customers/4651612872/adGroups/137020701042", "campaign.base_campaign": "customers/4651612872/campaigns/16820250687", "metrics.bounce_rate": 0.0, "ad_group_ad.ad.legacy_responsive_display_ad.business_name": "", "ad_group_ad.ad.legacy_responsive_display_ad.call_to_action_text": "", "campaign.id": 16820250687, "campaign.name": "Website traffic-Search-15", "campaign.status": "PAUSED", "metrics.clicks": 6, "ad_group_ad.policy_summary.approval_status": "APPROVED_LIMITED", "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 860000, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cost_per_current_model_attributed_conversion": 0.0, "ad_group_ad.ad.final_mobile_urls": [], "ad_group_ad.ad.final_urls": ["https://airbyte.com"], "ad_group_ad.ad.tracking_url_template": "", "ad_group_ad.ad.url_custom_parameters": [], "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.2608695652173913, "metrics.current_model_attributed_conversions_value": 0.0, "metrics.current_model_attributed_conversions": 0.0, "segments.date": "2022-05-19", "segments.day_of_week": "THURSDAY", "ad_group_ad.ad.expanded_text_ad.description": "", "ad_group_ad.ad.text_ad.description1": "", "ad_group_ad.ad.text_ad.description2": "", "ad_group_ad.ad.device_preference": "UNSPECIFIED", "ad_group_ad.ad.display_url": "", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "ad_group_ad.ad.legacy_responsive_display_ad.logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.marketing_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_marketing_image": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description": "", "ad_group_ad.ad.expanded_text_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.headline_part3": "", "customer.id": 4651612872, "ad_group_ad.ad.legacy_responsive_display_ad.format_setting": "UNSPECIFIED", "metrics.gmail_forwards": 0, "metrics.gmail_saves": 0, "metrics.gmail_secondary_clicks": 0, "ad_group_ad.ad.text_ad.headline": "", "ad_group_ad.ad.expanded_text_ad.headline_part1": "", "ad_group_ad.ad.expanded_text_ad.headline_part2": "", "ad_group_ad.ad.id": 592078631218, "ad_group_ad.ad.image_ad.image_url": "", "ad_group_ad.ad.image_ad.pixel_height": 0, "ad_group_ad.ad.image_ad.pixel_width": 0, "ad_group_ad.ad.image_ad.mime_type": "UNSPECIFIED", "ad_group_ad.ad.image_ad.name": "", "metrics.impressions": 23, "metrics.interaction_rate": 0.2608695652173913, "metrics.interaction_event_types": ["InteractionEventType.CLICK"], "metrics.interactions": 6, "ad_group_ad.ad.legacy_responsive_display_ad.long_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.main_color": "", "segments.month": "2022-05-01", "ad_group_ad.ad.responsive_display_ad.accent_color": "", "ad_group_ad.ad.responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.responsive_display_ad.business_name": "", "ad_group_ad.ad.responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.responsive_display_ad.descriptions": [], "ad_group_ad.ad.responsive_display_ad.price_prefix": "", "ad_group_ad.ad.responsive_display_ad.promo_text": "", "ad_group_ad.ad.responsive_display_ad.format_setting": "UNSPECIFIED", "ad_group_ad.ad.responsive_display_ad.headlines": [], "ad_group_ad.ad.responsive_display_ad.logo_images": [], "ad_group_ad.ad.responsive_display_ad.square_logo_images": [], "ad_group_ad.ad.responsive_display_ad.long_headline": "", "ad_group_ad.ad.responsive_display_ad.main_color": "", "ad_group_ad.ad.responsive_display_ad.marketing_images": [], "ad_group_ad.ad.responsive_display_ad.square_marketing_images": [], "ad_group_ad.ad.responsive_display_ad.youtube_videos": [], "ad_group_ad.ad.expanded_text_ad.path1": "", "ad_group_ad.ad.expanded_text_ad.path2": "", "metrics.percent_new_visitors": 0.0, "ad_group_ad.ad.legacy_responsive_display_ad.price_prefix": "", "ad_group_ad.ad.legacy_responsive_display_ad.promo_text": "", "segments.quarter": "2022-04-01", "ad_group_ad.ad.responsive_search_ad.descriptions": ["text: \"Behind The Scenes: Testing The Airbyte Maintainer Program\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Airbyte | Open-Source Data Integration Platform | ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n policy_topic_entries {\n topic: \"TRADEMARKS_IN_AD_TEXT\"\n type_: LIMITED\n evidences {\n text_list {\n texts: \"airbyte\"\n }\n }\n constraints {\n reseller_constraint {\n }\n }\n }\n review_status: REVIEWED\n approval_status: APPROVED_LIMITED\n}\n", "text: \"Upgrading Our Discourse And Slack To Support Our Community Growth\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Consolidate your data in your data warehouses, lakes and databases\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"], "ad_group_ad.ad.responsive_search_ad.headlines": ["text: \"Airbyte\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Open-source Data Integration\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"], "ad_group_ad.ad.responsive_search_ad.path1": "", "ad_group_ad.ad.responsive_search_ad.path2": "", "ad_group_ad.ad.legacy_responsive_display_ad.short_headline": "", "ad_group_ad.status": "ENABLED", "ad_group_ad.ad.system_managed_resource_source": "UNSPECIFIED", "metrics.top_impression_percentage": 0.7391304347826086, "ad_group_ad.ad.app_ad.descriptions": [], "ad_group_ad.ad.app_ad.headlines": [], "ad_group_ad.ad.app_ad.html5_media_bundles": [], "ad_group_ad.ad.app_ad.images": [], "ad_group_ad.ad.app_ad.mandatory_ad_text": "", "ad_group_ad.ad.app_ad.youtube_videos": [], "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.value_per_current_model_attributed_conversion": 0.0, "metrics.video_quartile_p100_rate": 0.0, "metrics.video_quartile_p25_rate": 0.0, "metrics.video_quartile_p50_rate": 0.0, "metrics.video_quartile_p75_rate": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2022-05-16", "segments.year": 2022}, "emitted_at": 1693824366005} +{"stream": "ad_group_ads", "data": {"ad_group_ad.ad.added_by_google_ads": false, "ad_group_ad.ad.app_ad.descriptions": [], "ad_group_ad.ad.app_ad.headlines": [], "ad_group_ad.ad.app_ad.html5_media_bundles": [], "ad_group_ad.ad.app_ad.images": [], "ad_group_ad.ad.app_ad.mandatory_ad_text": "", "ad_group_ad.ad.app_ad.youtube_videos": [], "ad_group_ad.ad.app_engagement_ad.descriptions": [], "ad_group_ad.ad.app_engagement_ad.headlines": [], "ad_group_ad.ad.app_engagement_ad.images": [], "ad_group_ad.ad.app_engagement_ad.videos": [], "ad_group_ad.ad.call_ad.business_name": "", "ad_group_ad.ad.call_ad.call_tracked": false, "ad_group_ad.ad.call_ad.conversion_action": "", "ad_group_ad.ad.call_ad.conversion_reporting_state": "UNSPECIFIED", "ad_group_ad.ad.call_ad.country_code": "", "ad_group_ad.ad.call_ad.description1": "", "ad_group_ad.ad.call_ad.description2": "", "ad_group_ad.ad.call_ad.disable_call_conversion": false, "ad_group_ad.ad.call_ad.headline1": "", "ad_group_ad.ad.call_ad.headline2": "", "ad_group_ad.ad.call_ad.path1": "", "ad_group_ad.ad.call_ad.path2": "", "ad_group_ad.ad.call_ad.phone_number": "", "ad_group_ad.ad.call_ad.phone_number_verification_url": "", "ad_group_ad.ad.device_preference": "UNSPECIFIED", "ad_group_ad.ad.display_upload_ad.display_upload_product_type": "UNSPECIFIED", "ad_group_ad.ad.display_upload_ad.media_bundle": "", "ad_group_ad.ad.display_url": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.description": "", "ad_group_ad.ad.expanded_text_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.headline_part1": "", "ad_group_ad.ad.expanded_text_ad.headline_part2": "", "ad_group_ad.ad.expanded_text_ad.headline_part3": "", "ad_group_ad.ad.expanded_text_ad.path1": "", "ad_group_ad.ad.expanded_text_ad.path2": "", "ad_group_ad.ad.final_app_urls": [], "ad_group_ad.ad.final_mobile_urls": [], "ad_group_ad.ad.final_url_suffix": "", "ad_group_ad.ad.final_urls": ["https://airbyte.com"], "ad_group_ad.ad.hotel_ad": "", "ad_group_ad.ad.id": 592078631218, "ad_group_ad.ad.image_ad.image_url": "", "ad_group_ad.ad.image_ad.mime_type": "UNSPECIFIED", "ad_group_ad.ad.image_ad.name": "", "ad_group_ad.ad.image_ad.pixel_height": 0, "ad_group_ad.ad.image_ad.pixel_width": 0, "ad_group_ad.ad.image_ad.preview_image_url": "", "ad_group_ad.ad.image_ad.preview_pixel_height": 0, "ad_group_ad.ad.image_ad.preview_pixel_width": 0, "ad_group_ad.ad.legacy_app_install_ad": "", "ad_group_ad.ad.legacy_responsive_display_ad.accent_color": "", "ad_group_ad.ad.legacy_responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.legacy_responsive_display_ad.business_name": "", "ad_group_ad.ad.legacy_responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.legacy_responsive_display_ad.description": "", "ad_group_ad.ad.legacy_responsive_display_ad.format_setting": "UNSPECIFIED", "ad_group_ad.ad.legacy_responsive_display_ad.logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.long_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.main_color": "", "ad_group_ad.ad.legacy_responsive_display_ad.marketing_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.price_prefix": "", "ad_group_ad.ad.legacy_responsive_display_ad.promo_text": "", "ad_group_ad.ad.legacy_responsive_display_ad.short_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_marketing_image": "", "ad_group_ad.ad.local_ad.call_to_actions": [], "ad_group_ad.ad.local_ad.descriptions": [], "ad_group_ad.ad.local_ad.headlines": [], "ad_group_ad.ad.local_ad.logo_images": [], "ad_group_ad.ad.local_ad.marketing_images": [], "ad_group_ad.ad.local_ad.path1": "", "ad_group_ad.ad.local_ad.path2": "", "ad_group_ad.ad.local_ad.videos": [], "ad_group_ad.ad.name": "", "ad_group_ad.ad.resource_name": "customers/4651612872/ads/592078631218", "ad_group_ad.ad.responsive_display_ad.accent_color": "", "ad_group_ad.ad.responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.responsive_display_ad.business_name": "", "ad_group_ad.ad.responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.responsive_display_ad.control_spec.enable_asset_enhancements": false, "ad_group_ad.ad.responsive_display_ad.control_spec.enable_autogen_video": false, "ad_group_ad.ad.responsive_display_ad.descriptions": [], "ad_group_ad.ad.responsive_display_ad.format_setting": "UNSPECIFIED", "ad_group_ad.ad.responsive_display_ad.headlines": [], "ad_group_ad.ad.responsive_display_ad.logo_images": [], "ad_group_ad.ad.responsive_display_ad.long_headline": "", "ad_group_ad.ad.responsive_display_ad.main_color": "", "ad_group_ad.ad.responsive_display_ad.marketing_images": [], "ad_group_ad.ad.responsive_display_ad.price_prefix": "", "ad_group_ad.ad.responsive_display_ad.promo_text": "", "ad_group_ad.ad.responsive_display_ad.square_logo_images": [], "ad_group_ad.ad.responsive_display_ad.square_marketing_images": [], "ad_group_ad.ad.responsive_display_ad.youtube_videos": [], "ad_group_ad.ad.responsive_search_ad.descriptions": ["text: \"Behind The Scenes: Testing The Airbyte Maintainer Program\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Airbyte | Open-Source Data Integration Platform | ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n policy_topic_entries {\n topic: \"TRADEMARKS_IN_AD_TEXT\"\n type_: LIMITED\n evidences {\n text_list {\n texts: \"airbyte\"\n }\n }\n constraints {\n reseller_constraint {\n }\n }\n }\n review_status: REVIEWED\n approval_status: APPROVED_LIMITED\n}\n", "text: \"Upgrading Our Discourse And Slack To Support Our Community Growth\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Consolidate your data in your data warehouses, lakes and databases\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"], "ad_group_ad.ad.responsive_search_ad.headlines": ["text: \"Airbyte\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Open-source Data Integration\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"], "ad_group_ad.ad.responsive_search_ad.path1": "", "ad_group_ad.ad.responsive_search_ad.path2": "", "ad_group_ad.ad.shopping_comparison_listing_ad.headline": "", "ad_group_ad.ad.shopping_product_ad": "", "ad_group_ad.ad.shopping_smart_ad": "", "ad_group_ad.ad.smart_campaign_ad.descriptions": [], "ad_group_ad.ad.smart_campaign_ad.headlines": [], "ad_group_ad.ad.system_managed_resource_source": "UNSPECIFIED", "ad_group_ad.ad.text_ad.description1": "", "ad_group_ad.ad.text_ad.description2": "", "ad_group_ad.ad.text_ad.headline": "", "ad_group_ad.ad.tracking_url_template": "", "ad_group_ad.ad.type": "RESPONSIVE_SEARCH_AD", "ad_group_ad.ad.url_collections": [], "ad_group_ad.ad.url_custom_parameters": [], "ad_group_ad.ad.video_ad.in_feed.description1": "", "ad_group_ad.ad.video_ad.in_feed.description2": "", "ad_group_ad.ad.video_ad.in_feed.headline": "", "ad_group_ad.ad.video_ad.in_stream.action_button_label": "", "ad_group_ad.ad.video_ad.in_stream.action_headline": "", "ad_group_ad.ad.video_ad.out_stream.description": "", "ad_group_ad.ad.video_ad.out_stream.headline": "", "ad_group_ad.ad.video_responsive_ad.call_to_actions": [], "ad_group_ad.ad.video_responsive_ad.companion_banners": [], "ad_group_ad.ad.video_responsive_ad.descriptions": [], "ad_group_ad.ad.video_responsive_ad.headlines": [], "ad_group_ad.ad.video_responsive_ad.long_headlines": [], "ad_group_ad.ad.video_responsive_ad.videos": [], "ad_group_ad.ad_group": "customers/4651612872/adGroups/137020701042", "ad_group_ad.ad_strength": "POOR", "ad_group_ad.labels": ["customers/4651612872/labels/21906377810"], "ad_group_ad.policy_summary.approval_status": "APPROVED_LIMITED", "ad_group_ad.policy_summary.policy_topic_entries": ["topic: \"TRADEMARKS_IN_AD_TEXT\"\ntype_: LIMITED\nevidences {\n text_list {\n texts: \"airbyte\"\n }\n}\nconstraints {\n reseller_constraint {\n }\n}\n"], "ad_group_ad.policy_summary.review_status": "REVIEWED", "ad_group_ad.resource_name": "customers/4651612872/adGroupAds/137020701042~592078631218", "ad_group_ad.status": "ENABLED", "segments.date": "2022-05-18"}, "emitted_at": 1693824391440} +{"stream": "ad_group_ads", "data": {"ad_group_ad.ad.added_by_google_ads": false, "ad_group_ad.ad.app_ad.descriptions": [], "ad_group_ad.ad.app_ad.headlines": [], "ad_group_ad.ad.app_ad.html5_media_bundles": [], "ad_group_ad.ad.app_ad.images": [], "ad_group_ad.ad.app_ad.mandatory_ad_text": "", "ad_group_ad.ad.app_ad.youtube_videos": [], "ad_group_ad.ad.app_engagement_ad.descriptions": [], "ad_group_ad.ad.app_engagement_ad.headlines": [], "ad_group_ad.ad.app_engagement_ad.images": [], "ad_group_ad.ad.app_engagement_ad.videos": [], "ad_group_ad.ad.call_ad.business_name": "", "ad_group_ad.ad.call_ad.call_tracked": false, "ad_group_ad.ad.call_ad.conversion_action": "", "ad_group_ad.ad.call_ad.conversion_reporting_state": "UNSPECIFIED", "ad_group_ad.ad.call_ad.country_code": "", "ad_group_ad.ad.call_ad.description1": "", "ad_group_ad.ad.call_ad.description2": "", "ad_group_ad.ad.call_ad.disable_call_conversion": false, "ad_group_ad.ad.call_ad.headline1": "", "ad_group_ad.ad.call_ad.headline2": "", "ad_group_ad.ad.call_ad.path1": "", "ad_group_ad.ad.call_ad.path2": "", "ad_group_ad.ad.call_ad.phone_number": "", "ad_group_ad.ad.call_ad.phone_number_verification_url": "", "ad_group_ad.ad.device_preference": "UNSPECIFIED", "ad_group_ad.ad.display_upload_ad.display_upload_product_type": "UNSPECIFIED", "ad_group_ad.ad.display_upload_ad.media_bundle": "", "ad_group_ad.ad.display_url": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.description": "", "ad_group_ad.ad.expanded_text_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.headline_part1": "", "ad_group_ad.ad.expanded_text_ad.headline_part2": "", "ad_group_ad.ad.expanded_text_ad.headline_part3": "", "ad_group_ad.ad.expanded_text_ad.path1": "", "ad_group_ad.ad.expanded_text_ad.path2": "", "ad_group_ad.ad.final_app_urls": [], "ad_group_ad.ad.final_mobile_urls": [], "ad_group_ad.ad.final_url_suffix": "", "ad_group_ad.ad.final_urls": ["https://airbyte.com"], "ad_group_ad.ad.hotel_ad": "", "ad_group_ad.ad.id": 592078631218, "ad_group_ad.ad.image_ad.image_url": "", "ad_group_ad.ad.image_ad.mime_type": "UNSPECIFIED", "ad_group_ad.ad.image_ad.name": "", "ad_group_ad.ad.image_ad.pixel_height": 0, "ad_group_ad.ad.image_ad.pixel_width": 0, "ad_group_ad.ad.image_ad.preview_image_url": "", "ad_group_ad.ad.image_ad.preview_pixel_height": 0, "ad_group_ad.ad.image_ad.preview_pixel_width": 0, "ad_group_ad.ad.legacy_app_install_ad": "", "ad_group_ad.ad.legacy_responsive_display_ad.accent_color": "", "ad_group_ad.ad.legacy_responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.legacy_responsive_display_ad.business_name": "", "ad_group_ad.ad.legacy_responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.legacy_responsive_display_ad.description": "", "ad_group_ad.ad.legacy_responsive_display_ad.format_setting": "UNSPECIFIED", "ad_group_ad.ad.legacy_responsive_display_ad.logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.long_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.main_color": "", "ad_group_ad.ad.legacy_responsive_display_ad.marketing_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.price_prefix": "", "ad_group_ad.ad.legacy_responsive_display_ad.promo_text": "", "ad_group_ad.ad.legacy_responsive_display_ad.short_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_marketing_image": "", "ad_group_ad.ad.local_ad.call_to_actions": [], "ad_group_ad.ad.local_ad.descriptions": [], "ad_group_ad.ad.local_ad.headlines": [], "ad_group_ad.ad.local_ad.logo_images": [], "ad_group_ad.ad.local_ad.marketing_images": [], "ad_group_ad.ad.local_ad.path1": "", "ad_group_ad.ad.local_ad.path2": "", "ad_group_ad.ad.local_ad.videos": [], "ad_group_ad.ad.name": "", "ad_group_ad.ad.resource_name": "customers/4651612872/ads/592078631218", "ad_group_ad.ad.responsive_display_ad.accent_color": "", "ad_group_ad.ad.responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.responsive_display_ad.business_name": "", "ad_group_ad.ad.responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.responsive_display_ad.control_spec.enable_asset_enhancements": false, "ad_group_ad.ad.responsive_display_ad.control_spec.enable_autogen_video": false, "ad_group_ad.ad.responsive_display_ad.descriptions": [], "ad_group_ad.ad.responsive_display_ad.format_setting": "UNSPECIFIED", "ad_group_ad.ad.responsive_display_ad.headlines": [], "ad_group_ad.ad.responsive_display_ad.logo_images": [], "ad_group_ad.ad.responsive_display_ad.long_headline": "", "ad_group_ad.ad.responsive_display_ad.main_color": "", "ad_group_ad.ad.responsive_display_ad.marketing_images": [], "ad_group_ad.ad.responsive_display_ad.price_prefix": "", "ad_group_ad.ad.responsive_display_ad.promo_text": "", "ad_group_ad.ad.responsive_display_ad.square_logo_images": [], "ad_group_ad.ad.responsive_display_ad.square_marketing_images": [], "ad_group_ad.ad.responsive_display_ad.youtube_videos": [], "ad_group_ad.ad.responsive_search_ad.descriptions": ["text: \"Behind The Scenes: Testing The Airbyte Maintainer Program\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Airbyte | Open-Source Data Integration Platform | ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n policy_topic_entries {\n topic: \"TRADEMARKS_IN_AD_TEXT\"\n type_: LIMITED\n evidences {\n text_list {\n texts: \"airbyte\"\n }\n }\n constraints {\n reseller_constraint {\n }\n }\n }\n review_status: REVIEWED\n approval_status: APPROVED_LIMITED\n}\n", "text: \"Upgrading Our Discourse And Slack To Support Our Community Growth\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Consolidate your data in your data warehouses, lakes and databases\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"], "ad_group_ad.ad.responsive_search_ad.headlines": ["text: \"Airbyte\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Open-source Data Integration\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"], "ad_group_ad.ad.responsive_search_ad.path1": "", "ad_group_ad.ad.responsive_search_ad.path2": "", "ad_group_ad.ad.shopping_comparison_listing_ad.headline": "", "ad_group_ad.ad.shopping_product_ad": "", "ad_group_ad.ad.shopping_smart_ad": "", "ad_group_ad.ad.smart_campaign_ad.descriptions": [], "ad_group_ad.ad.smart_campaign_ad.headlines": [], "ad_group_ad.ad.system_managed_resource_source": "UNSPECIFIED", "ad_group_ad.ad.text_ad.description1": "", "ad_group_ad.ad.text_ad.description2": "", "ad_group_ad.ad.text_ad.headline": "", "ad_group_ad.ad.tracking_url_template": "", "ad_group_ad.ad.type": "RESPONSIVE_SEARCH_AD", "ad_group_ad.ad.url_collections": [], "ad_group_ad.ad.url_custom_parameters": [], "ad_group_ad.ad.video_ad.in_feed.description1": "", "ad_group_ad.ad.video_ad.in_feed.description2": "", "ad_group_ad.ad.video_ad.in_feed.headline": "", "ad_group_ad.ad.video_ad.in_stream.action_button_label": "", "ad_group_ad.ad.video_ad.in_stream.action_headline": "", "ad_group_ad.ad.video_ad.out_stream.description": "", "ad_group_ad.ad.video_ad.out_stream.headline": "", "ad_group_ad.ad.video_responsive_ad.call_to_actions": [], "ad_group_ad.ad.video_responsive_ad.companion_banners": [], "ad_group_ad.ad.video_responsive_ad.descriptions": [], "ad_group_ad.ad.video_responsive_ad.headlines": [], "ad_group_ad.ad.video_responsive_ad.long_headlines": [], "ad_group_ad.ad.video_responsive_ad.videos": [], "ad_group_ad.ad_group": "customers/4651612872/adGroups/137020701042", "ad_group_ad.ad_strength": "POOR", "ad_group_ad.labels": ["customers/4651612872/labels/21906377810"], "ad_group_ad.policy_summary.approval_status": "APPROVED_LIMITED", "ad_group_ad.policy_summary.policy_topic_entries": ["topic: \"TRADEMARKS_IN_AD_TEXT\"\ntype_: LIMITED\nevidences {\n text_list {\n texts: \"airbyte\"\n }\n}\nconstraints {\n reseller_constraint {\n }\n}\n"], "ad_group_ad.policy_summary.review_status": "REVIEWED", "ad_group_ad.resource_name": "customers/4651612872/adGroupAds/137020701042~592078631218", "ad_group_ad.status": "ENABLED", "segments.date": "2022-05-19"}, "emitted_at": 1693824391447} +{"stream": "ad_group_ads", "data": {"ad_group_ad.ad.added_by_google_ads": false, "ad_group_ad.ad.app_ad.descriptions": [], "ad_group_ad.ad.app_ad.headlines": [], "ad_group_ad.ad.app_ad.html5_media_bundles": [], "ad_group_ad.ad.app_ad.images": [], "ad_group_ad.ad.app_ad.mandatory_ad_text": "", "ad_group_ad.ad.app_ad.youtube_videos": [], "ad_group_ad.ad.app_engagement_ad.descriptions": [], "ad_group_ad.ad.app_engagement_ad.headlines": [], "ad_group_ad.ad.app_engagement_ad.images": [], "ad_group_ad.ad.app_engagement_ad.videos": [], "ad_group_ad.ad.call_ad.business_name": "", "ad_group_ad.ad.call_ad.call_tracked": false, "ad_group_ad.ad.call_ad.conversion_action": "", "ad_group_ad.ad.call_ad.conversion_reporting_state": "UNSPECIFIED", "ad_group_ad.ad.call_ad.country_code": "", "ad_group_ad.ad.call_ad.description1": "", "ad_group_ad.ad.call_ad.description2": "", "ad_group_ad.ad.call_ad.disable_call_conversion": false, "ad_group_ad.ad.call_ad.headline1": "", "ad_group_ad.ad.call_ad.headline2": "", "ad_group_ad.ad.call_ad.path1": "", "ad_group_ad.ad.call_ad.path2": "", "ad_group_ad.ad.call_ad.phone_number": "", "ad_group_ad.ad.call_ad.phone_number_verification_url": "", "ad_group_ad.ad.device_preference": "UNSPECIFIED", "ad_group_ad.ad.display_upload_ad.display_upload_product_type": "UNSPECIFIED", "ad_group_ad.ad.display_upload_ad.media_bundle": "", "ad_group_ad.ad.display_url": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.description": "", "ad_group_ad.ad.expanded_text_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.headline_part1": "", "ad_group_ad.ad.expanded_text_ad.headline_part2": "", "ad_group_ad.ad.expanded_text_ad.headline_part3": "", "ad_group_ad.ad.expanded_text_ad.path1": "", "ad_group_ad.ad.expanded_text_ad.path2": "", "ad_group_ad.ad.final_app_urls": [], "ad_group_ad.ad.final_mobile_urls": [], "ad_group_ad.ad.final_url_suffix": "", "ad_group_ad.ad.final_urls": ["https://airbyte.com"], "ad_group_ad.ad.hotel_ad": "", "ad_group_ad.ad.id": 592078631218, "ad_group_ad.ad.image_ad.image_url": "", "ad_group_ad.ad.image_ad.mime_type": "UNSPECIFIED", "ad_group_ad.ad.image_ad.name": "", "ad_group_ad.ad.image_ad.pixel_height": 0, "ad_group_ad.ad.image_ad.pixel_width": 0, "ad_group_ad.ad.image_ad.preview_image_url": "", "ad_group_ad.ad.image_ad.preview_pixel_height": 0, "ad_group_ad.ad.image_ad.preview_pixel_width": 0, "ad_group_ad.ad.legacy_app_install_ad": "", "ad_group_ad.ad.legacy_responsive_display_ad.accent_color": "", "ad_group_ad.ad.legacy_responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.legacy_responsive_display_ad.business_name": "", "ad_group_ad.ad.legacy_responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.legacy_responsive_display_ad.description": "", "ad_group_ad.ad.legacy_responsive_display_ad.format_setting": "UNSPECIFIED", "ad_group_ad.ad.legacy_responsive_display_ad.logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.long_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.main_color": "", "ad_group_ad.ad.legacy_responsive_display_ad.marketing_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.price_prefix": "", "ad_group_ad.ad.legacy_responsive_display_ad.promo_text": "", "ad_group_ad.ad.legacy_responsive_display_ad.short_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_marketing_image": "", "ad_group_ad.ad.local_ad.call_to_actions": [], "ad_group_ad.ad.local_ad.descriptions": [], "ad_group_ad.ad.local_ad.headlines": [], "ad_group_ad.ad.local_ad.logo_images": [], "ad_group_ad.ad.local_ad.marketing_images": [], "ad_group_ad.ad.local_ad.path1": "", "ad_group_ad.ad.local_ad.path2": "", "ad_group_ad.ad.local_ad.videos": [], "ad_group_ad.ad.name": "", "ad_group_ad.ad.resource_name": "customers/4651612872/ads/592078631218", "ad_group_ad.ad.responsive_display_ad.accent_color": "", "ad_group_ad.ad.responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.responsive_display_ad.business_name": "", "ad_group_ad.ad.responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.responsive_display_ad.control_spec.enable_asset_enhancements": false, "ad_group_ad.ad.responsive_display_ad.control_spec.enable_autogen_video": false, "ad_group_ad.ad.responsive_display_ad.descriptions": [], "ad_group_ad.ad.responsive_display_ad.format_setting": "UNSPECIFIED", "ad_group_ad.ad.responsive_display_ad.headlines": [], "ad_group_ad.ad.responsive_display_ad.logo_images": [], "ad_group_ad.ad.responsive_display_ad.long_headline": "", "ad_group_ad.ad.responsive_display_ad.main_color": "", "ad_group_ad.ad.responsive_display_ad.marketing_images": [], "ad_group_ad.ad.responsive_display_ad.price_prefix": "", "ad_group_ad.ad.responsive_display_ad.promo_text": "", "ad_group_ad.ad.responsive_display_ad.square_logo_images": [], "ad_group_ad.ad.responsive_display_ad.square_marketing_images": [], "ad_group_ad.ad.responsive_display_ad.youtube_videos": [], "ad_group_ad.ad.responsive_search_ad.descriptions": ["text: \"Behind The Scenes: Testing The Airbyte Maintainer Program\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Airbyte | Open-Source Data Integration Platform | ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n policy_topic_entries {\n topic: \"TRADEMARKS_IN_AD_TEXT\"\n type_: LIMITED\n evidences {\n text_list {\n texts: \"airbyte\"\n }\n }\n constraints {\n reseller_constraint {\n }\n }\n }\n review_status: REVIEWED\n approval_status: APPROVED_LIMITED\n}\n", "text: \"Upgrading Our Discourse And Slack To Support Our Community Growth\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Consolidate your data in your data warehouses, lakes and databases\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"], "ad_group_ad.ad.responsive_search_ad.headlines": ["text: \"Airbyte\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"ELT tool\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n", "text: \"Open-source Data Integration\"\nasset_performance_label: PENDING\npolicy_summary_info {\n review_status: REVIEWED\n approval_status: APPROVED\n}\n"], "ad_group_ad.ad.responsive_search_ad.path1": "", "ad_group_ad.ad.responsive_search_ad.path2": "", "ad_group_ad.ad.shopping_comparison_listing_ad.headline": "", "ad_group_ad.ad.shopping_product_ad": "", "ad_group_ad.ad.shopping_smart_ad": "", "ad_group_ad.ad.smart_campaign_ad.descriptions": [], "ad_group_ad.ad.smart_campaign_ad.headlines": [], "ad_group_ad.ad.system_managed_resource_source": "UNSPECIFIED", "ad_group_ad.ad.text_ad.description1": "", "ad_group_ad.ad.text_ad.description2": "", "ad_group_ad.ad.text_ad.headline": "", "ad_group_ad.ad.tracking_url_template": "", "ad_group_ad.ad.type": "RESPONSIVE_SEARCH_AD", "ad_group_ad.ad.url_collections": [], "ad_group_ad.ad.url_custom_parameters": [], "ad_group_ad.ad.video_ad.in_feed.description1": "", "ad_group_ad.ad.video_ad.in_feed.description2": "", "ad_group_ad.ad.video_ad.in_feed.headline": "", "ad_group_ad.ad.video_ad.in_stream.action_button_label": "", "ad_group_ad.ad.video_ad.in_stream.action_headline": "", "ad_group_ad.ad.video_ad.out_stream.description": "", "ad_group_ad.ad.video_ad.out_stream.headline": "", "ad_group_ad.ad.video_responsive_ad.call_to_actions": [], "ad_group_ad.ad.video_responsive_ad.companion_banners": [], "ad_group_ad.ad.video_responsive_ad.descriptions": [], "ad_group_ad.ad.video_responsive_ad.headlines": [], "ad_group_ad.ad.video_responsive_ad.long_headlines": [], "ad_group_ad.ad.video_responsive_ad.videos": [], "ad_group_ad.ad_group": "customers/4651612872/adGroups/137020701042", "ad_group_ad.ad_strength": "POOR", "ad_group_ad.labels": ["customers/4651612872/labels/21906377810"], "ad_group_ad.policy_summary.approval_status": "APPROVED_LIMITED", "ad_group_ad.policy_summary.policy_topic_entries": ["topic: \"TRADEMARKS_IN_AD_TEXT\"\ntype_: LIMITED\nevidences {\n text_list {\n texts: \"airbyte\"\n }\n}\nconstraints {\n reseller_constraint {\n }\n}\n"], "ad_group_ad.policy_summary.review_status": "REVIEWED", "ad_group_ad.resource_name": "customers/4651612872/adGroupAds/137020701042~592078631218", "ad_group_ad.status": "ENABLED", "segments.date": "2022-05-20"}, "emitted_at": 1693824391451} +{"stream": "ad_group_bidding_strategies", "data": {"ad_group.id": 137020701042, "bidding_strategy.aligned_campaign_budget_id": 0, "bidding_strategy.campaign_count": 0, "bidding_strategy.currency_code": "", "bidding_strategy.effective_currency_code": "", "bidding_strategy.enhanced_cpc": "", "bidding_strategy.id": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversion_value.target_roas": 0.0, "bidding_strategy.maximize_conversions.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversions.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversions.target_cpa_micros": 0, "bidding_strategy.name": "", "bidding_strategy.non_removed_campaign_count": 0, "bidding_strategy.resource_name": "", "bidding_strategy.status": "UNSPECIFIED", "bidding_strategy.target_cpa.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_cpa.cpc_bid_floor_micros": 0, "bidding_strategy.target_cpa.target_cpa_micros": 0, "bidding_strategy.target_impression_share.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_impression_share.location": "UNSPECIFIED", "bidding_strategy.target_impression_share.location_fraction_micros": 0, "bidding_strategy.target_roas.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_roas.cpc_bid_floor_micros": 0, "bidding_strategy.target_roas.target_roas": 0.0, "bidding_strategy.target_spend.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_spend.target_spend_micros": 0, "bidding_strategy.type": "UNSPECIFIED", "segments.date": "2022-05-18"}, "emitted_at": 1693824417842} +{"stream": "ad_group_bidding_strategies", "data": {"ad_group.id": 137020701042, "bidding_strategy.aligned_campaign_budget_id": 0, "bidding_strategy.campaign_count": 0, "bidding_strategy.currency_code": "", "bidding_strategy.effective_currency_code": "", "bidding_strategy.enhanced_cpc": "", "bidding_strategy.id": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversion_value.target_roas": 0.0, "bidding_strategy.maximize_conversions.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversions.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversions.target_cpa_micros": 0, "bidding_strategy.name": "", "bidding_strategy.non_removed_campaign_count": 0, "bidding_strategy.resource_name": "", "bidding_strategy.status": "UNSPECIFIED", "bidding_strategy.target_cpa.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_cpa.cpc_bid_floor_micros": 0, "bidding_strategy.target_cpa.target_cpa_micros": 0, "bidding_strategy.target_impression_share.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_impression_share.location": "UNSPECIFIED", "bidding_strategy.target_impression_share.location_fraction_micros": 0, "bidding_strategy.target_roas.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_roas.cpc_bid_floor_micros": 0, "bidding_strategy.target_roas.target_roas": 0.0, "bidding_strategy.target_spend.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_spend.target_spend_micros": 0, "bidding_strategy.type": "UNSPECIFIED", "segments.date": "2022-05-19"}, "emitted_at": 1693824417844} +{"stream": "ad_group_bidding_strategies", "data": {"ad_group.id": 137020701042, "bidding_strategy.aligned_campaign_budget_id": 0, "bidding_strategy.campaign_count": 0, "bidding_strategy.currency_code": "", "bidding_strategy.effective_currency_code": "", "bidding_strategy.enhanced_cpc": "", "bidding_strategy.id": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversion_value.target_roas": 0.0, "bidding_strategy.maximize_conversions.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversions.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversions.target_cpa_micros": 0, "bidding_strategy.name": "", "bidding_strategy.non_removed_campaign_count": 0, "bidding_strategy.resource_name": "", "bidding_strategy.status": "UNSPECIFIED", "bidding_strategy.target_cpa.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_cpa.cpc_bid_floor_micros": 0, "bidding_strategy.target_cpa.target_cpa_micros": 0, "bidding_strategy.target_impression_share.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_impression_share.location": "UNSPECIFIED", "bidding_strategy.target_impression_share.location_fraction_micros": 0, "bidding_strategy.target_roas.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_roas.cpc_bid_floor_micros": 0, "bidding_strategy.target_roas.target_roas": 0.0, "bidding_strategy.target_spend.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_spend.target_spend_micros": 0, "bidding_strategy.type": "UNSPECIFIED", "segments.date": "2022-05-20"}, "emitted_at": 1693824417845} +{"stream": "ad_group_criterion_labels", "data": {"ad_group_criterion_label.ad_group_criterion": "customers/4651612872/adGroupCriteria/137051662444~10766861", "ad_group_criterion_label.label": "customers/4651612872/labels/21902092838", "ad_group_criterion_label.resource_name": "customers/4651612872/adGroupCriterionLabels/137051662444~10766861~21902092838", "ad_group_criterion.criterion_id": 10766861}, "emitted_at": 1693824427878} +{"stream": "ad_group_criterion_labels", "data": {"ad_group_criterion_label.ad_group_criterion": "customers/4651612872/adGroupCriteria/137051662444~528912986", "ad_group_criterion_label.label": "customers/4651612872/labels/21906377810", "ad_group_criterion_label.resource_name": "customers/4651612872/adGroupCriterionLabels/137051662444~528912986~21906377810", "ad_group_criterion.criterion_id": 528912986}, "emitted_at": 1693824427881} +{"stream": "ad_group_criterions", "data": {"deleted_at": null, "change_status.last_change_date_time": null, "ad_group.id": 123273719655, "ad_group_criterion.ad_group": "customers/4651612872/adGroups/123273719655", "ad_group_criterion.age_range.type": "UNSPECIFIED", "ad_group_criterion.app_payment_model.type": "UNSPECIFIED", "ad_group_criterion.approval_status": "APPROVED", "ad_group_criterion.audience.audience": "", "ad_group_criterion.bid_modifier": 0.0, "ad_group_criterion.combined_audience.combined_audience": "", "ad_group_criterion.cpc_bid_micros": 0, "ad_group_criterion.cpm_bid_micros": 0, "ad_group_criterion.cpv_bid_micros": 0, "ad_group_criterion.criterion_id": 10515001, "ad_group_criterion.custom_affinity.custom_affinity": "", "ad_group_criterion.custom_audience.custom_audience": "", "ad_group_criterion.custom_intent.custom_intent": "", "ad_group_criterion.disapproval_reasons": [], "ad_group_criterion.display_name": "data warehouses", "ad_group_criterion.effective_cpc_bid_micros": 10000, "ad_group_criterion.effective_cpc_bid_source": "AD_GROUP", "ad_group_criterion.effective_cpm_bid_micros": 10000, "ad_group_criterion.effective_cpm_bid_source": "AD_GROUP", "ad_group_criterion.effective_cpv_bid_micros": 0, "ad_group_criterion.effective_cpv_bid_source": "UNSPECIFIED", "ad_group_criterion.effective_percent_cpc_bid_micros": 0, "ad_group_criterion.effective_percent_cpc_bid_source": "UNSPECIFIED", "ad_group_criterion.final_mobile_urls": [], "ad_group_criterion.final_url_suffix": "", "ad_group_criterion.final_urls": [], "ad_group_criterion.gender.type": "UNSPECIFIED", "ad_group_criterion.income_range.type": "UNSPECIFIED", "ad_group_criterion.keyword.match_type": "BROAD", "ad_group_criterion.keyword.text": "data warehouses", "ad_group_criterion.labels": [], "ad_group_criterion.mobile_app_category.mobile_app_category_constant": "", "ad_group_criterion.mobile_application.app_id": "", "ad_group_criterion.mobile_application.name": "", "ad_group_criterion.negative": false, "ad_group_criterion.parental_status.type": "UNSPECIFIED", "ad_group_criterion.percent_cpc_bid_micros": 0, "ad_group_criterion.placement.url": "", "ad_group_criterion.position_estimates.estimated_add_clicks_at_first_position_cpc": 0, "ad_group_criterion.position_estimates.estimated_add_cost_at_first_position_cpc": 0, "ad_group_criterion.position_estimates.first_page_cpc_micros": 0, "ad_group_criterion.position_estimates.first_position_cpc_micros": 0, "ad_group_criterion.position_estimates.top_of_page_cpc_micros": 0, "ad_group_criterion.quality_info.creative_quality_score": "UNSPECIFIED", "ad_group_criterion.quality_info.post_click_quality_score": "UNSPECIFIED", "ad_group_criterion.quality_info.quality_score": 0, "ad_group_criterion.quality_info.search_predicted_ctr": "UNSPECIFIED", "ad_group_criterion.resource_name": "customers/4651612872/adGroupCriteria/123273719655~10515001", "ad_group_criterion.status": "ENABLED", "ad_group_criterion.system_serving_status": "ELIGIBLE", "ad_group_criterion.topic.path": [], "ad_group_criterion.topic.topic_constant": "", "ad_group_criterion.tracking_url_template": "", "ad_group_criterion.type": "KEYWORD", "ad_group_criterion.url_custom_parameters": [], "ad_group_criterion.user_interest.user_interest_category": "", "ad_group_criterion.user_list.user_list": "", "ad_group_criterion.webpage.conditions": [], "ad_group_criterion.webpage.coverage_percentage": 0.0, "ad_group_criterion.webpage.criterion_name": "", "ad_group_criterion.webpage.sample.sample_urls": [], "ad_group_criterion.youtube_channel.channel_id": "", "ad_group_criterion.youtube_video.video_id": ""}, "emitted_at": 1693824419898} +{"stream": "ad_group_criterions", "data": {"deleted_at": null, "change_status.last_change_date_time": null, "ad_group.id": 123273719655, "ad_group_criterion.ad_group": "customers/4651612872/adGroups/123273719655", "ad_group_criterion.age_range.type": "UNSPECIFIED", "ad_group_criterion.app_payment_model.type": "UNSPECIFIED", "ad_group_criterion.approval_status": "UNSPECIFIED", "ad_group_criterion.audience.audience": "", "ad_group_criterion.bid_modifier": 0.0, "ad_group_criterion.combined_audience.combined_audience": "", "ad_group_criterion.cpc_bid_micros": 0, "ad_group_criterion.cpm_bid_micros": 0, "ad_group_criterion.cpv_bid_micros": 0, "ad_group_criterion.criterion_id": 10683521, "ad_group_criterion.custom_affinity.custom_affinity": "", "ad_group_criterion.custom_audience.custom_audience": "", "ad_group_criterion.custom_intent.custom_intent": "", "ad_group_criterion.disapproval_reasons": [], "ad_group_criterion.display_name": "database software", "ad_group_criterion.effective_cpc_bid_micros": 0, "ad_group_criterion.effective_cpc_bid_source": "UNSPECIFIED", "ad_group_criterion.effective_cpm_bid_micros": 0, "ad_group_criterion.effective_cpm_bid_source": "UNSPECIFIED", "ad_group_criterion.effective_cpv_bid_micros": 0, "ad_group_criterion.effective_cpv_bid_source": "UNSPECIFIED", "ad_group_criterion.effective_percent_cpc_bid_micros": 0, "ad_group_criterion.effective_percent_cpc_bid_source": "UNSPECIFIED", "ad_group_criterion.final_mobile_urls": [], "ad_group_criterion.final_url_suffix": "", "ad_group_criterion.final_urls": [], "ad_group_criterion.gender.type": "UNSPECIFIED", "ad_group_criterion.income_range.type": "UNSPECIFIED", "ad_group_criterion.keyword.match_type": "BROAD", "ad_group_criterion.keyword.text": "database software", "ad_group_criterion.labels": [], "ad_group_criterion.mobile_app_category.mobile_app_category_constant": "", "ad_group_criterion.mobile_application.app_id": "", "ad_group_criterion.mobile_application.name": "", "ad_group_criterion.negative": false, "ad_group_criterion.parental_status.type": "UNSPECIFIED", "ad_group_criterion.percent_cpc_bid_micros": 0, "ad_group_criterion.placement.url": "", "ad_group_criterion.position_estimates.estimated_add_clicks_at_first_position_cpc": 0, "ad_group_criterion.position_estimates.estimated_add_cost_at_first_position_cpc": 0, "ad_group_criterion.position_estimates.first_page_cpc_micros": 0, "ad_group_criterion.position_estimates.first_position_cpc_micros": 0, "ad_group_criterion.position_estimates.top_of_page_cpc_micros": 0, "ad_group_criterion.quality_info.creative_quality_score": "UNSPECIFIED", "ad_group_criterion.quality_info.post_click_quality_score": "UNSPECIFIED", "ad_group_criterion.quality_info.quality_score": 0, "ad_group_criterion.quality_info.search_predicted_ctr": "UNSPECIFIED", "ad_group_criterion.resource_name": "customers/4651612872/adGroupCriteria/123273719655~10683521", "ad_group_criterion.status": "REMOVED", "ad_group_criterion.system_serving_status": "UNSPECIFIED", "ad_group_criterion.topic.path": [], "ad_group_criterion.topic.topic_constant": "", "ad_group_criterion.tracking_url_template": "", "ad_group_criterion.type": "KEYWORD", "ad_group_criterion.url_custom_parameters": [], "ad_group_criterion.user_interest.user_interest_category": "", "ad_group_criterion.user_list.user_list": "", "ad_group_criterion.webpage.conditions": [], "ad_group_criterion.webpage.coverage_percentage": 0.0, "ad_group_criterion.webpage.criterion_name": "", "ad_group_criterion.webpage.sample.sample_urls": [], "ad_group_criterion.youtube_channel.channel_id": "", "ad_group_criterion.youtube_video.video_id": ""}, "emitted_at": 1693824419901} +{"stream": "ad_group_criterions", "data": {"deleted_at": null, "change_status.last_change_date_time": null, "ad_group.id": 123273719655, "ad_group_criterion.ad_group": "customers/4651612872/adGroups/123273719655", "ad_group_criterion.age_range.type": "UNSPECIFIED", "ad_group_criterion.app_payment_model.type": "UNSPECIFIED", "ad_group_criterion.approval_status": "APPROVED", "ad_group_criterion.audience.audience": "", "ad_group_criterion.bid_modifier": 0.0, "ad_group_criterion.combined_audience.combined_audience": "", "ad_group_criterion.cpc_bid_micros": 0, "ad_group_criterion.cpm_bid_micros": 0, "ad_group_criterion.cpv_bid_micros": 0, "ad_group_criterion.criterion_id": 11100571, "ad_group_criterion.custom_affinity.custom_affinity": "", "ad_group_criterion.custom_audience.custom_audience": "", "ad_group_criterion.custom_intent.custom_intent": "", "ad_group_criterion.disapproval_reasons": [], "ad_group_criterion.display_name": "integration software", "ad_group_criterion.effective_cpc_bid_micros": 10000, "ad_group_criterion.effective_cpc_bid_source": "AD_GROUP", "ad_group_criterion.effective_cpm_bid_micros": 10000, "ad_group_criterion.effective_cpm_bid_source": "AD_GROUP", "ad_group_criterion.effective_cpv_bid_micros": 0, "ad_group_criterion.effective_cpv_bid_source": "UNSPECIFIED", "ad_group_criterion.effective_percent_cpc_bid_micros": 0, "ad_group_criterion.effective_percent_cpc_bid_source": "UNSPECIFIED", "ad_group_criterion.final_mobile_urls": [], "ad_group_criterion.final_url_suffix": "", "ad_group_criterion.final_urls": [], "ad_group_criterion.gender.type": "UNSPECIFIED", "ad_group_criterion.income_range.type": "UNSPECIFIED", "ad_group_criterion.keyword.match_type": "BROAD", "ad_group_criterion.keyword.text": "integration software", "ad_group_criterion.labels": [], "ad_group_criterion.mobile_app_category.mobile_app_category_constant": "", "ad_group_criterion.mobile_application.app_id": "", "ad_group_criterion.mobile_application.name": "", "ad_group_criterion.negative": false, "ad_group_criterion.parental_status.type": "UNSPECIFIED", "ad_group_criterion.percent_cpc_bid_micros": 0, "ad_group_criterion.placement.url": "", "ad_group_criterion.position_estimates.estimated_add_clicks_at_first_position_cpc": 0, "ad_group_criterion.position_estimates.estimated_add_cost_at_first_position_cpc": 0, "ad_group_criterion.position_estimates.first_page_cpc_micros": 0, "ad_group_criterion.position_estimates.first_position_cpc_micros": 0, "ad_group_criterion.position_estimates.top_of_page_cpc_micros": 0, "ad_group_criterion.quality_info.creative_quality_score": "UNSPECIFIED", "ad_group_criterion.quality_info.post_click_quality_score": "UNSPECIFIED", "ad_group_criterion.quality_info.quality_score": 0, "ad_group_criterion.quality_info.search_predicted_ctr": "UNSPECIFIED", "ad_group_criterion.resource_name": "customers/4651612872/adGroupCriteria/123273719655~11100571", "ad_group_criterion.status": "ENABLED", "ad_group_criterion.system_serving_status": "ELIGIBLE", "ad_group_criterion.topic.path": [], "ad_group_criterion.topic.topic_constant": "", "ad_group_criterion.tracking_url_template": "", "ad_group_criterion.type": "KEYWORD", "ad_group_criterion.url_custom_parameters": [], "ad_group_criterion.user_interest.user_interest_category": "", "ad_group_criterion.user_list.user_list": "", "ad_group_criterion.webpage.conditions": [], "ad_group_criterion.webpage.coverage_percentage": 0.0, "ad_group_criterion.webpage.criterion_name": "", "ad_group_criterion.webpage.sample.sample_urls": [], "ad_group_criterion.youtube_channel.channel_id": "", "ad_group_criterion.youtube_video.video_id": ""}, "emitted_at": 1693824419903} +{"stream": "ad_group_custom", "data": {"ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n", "targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n"], "segments.date": "2022-05-18"}, "emitted_at": 1693824371148} +{"stream": "ad_group_custom", "data": {"ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n", "targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n"], "segments.date": "2022-05-19"}, "emitted_at": 1693824371150} +{"stream": "ad_group_custom", "data": {"ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n", "targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n"], "segments.date": "2022-05-20"}, "emitted_at": 1693824371151} +{"stream": "ad_group_labels", "data": {"ad_group.resource_name": "customers/4651612872/adGroups/123273719655", "ad_group_label.resource_name": "customers/4651612872/adGroupLabels/123273719655~21585034471", "label.name": "edgao-example-label", "label.resource_name": "customers/4651612872/labels/21585034471"}, "emitted_at": 1693824400332} +{"stream": "ad_group_labels", "data": {"ad_group.resource_name": "customers/4651612872/adGroups/138643385242", "ad_group_label.resource_name": "customers/4651612872/adGroupLabels/138643385242~21585034471", "label.name": "edgao-example-label", "label.resource_name": "customers/4651612872/labels/21585034471"}, "emitted_at": 1693824400334} +{"stream": "ad_group_labels", "data": {"ad_group.resource_name": "customers/4651612872/adGroups/137020701042", "ad_group_label.resource_name": "customers/4651612872/adGroupLabels/137020701042~21906377810", "label.name": "Test Delete label customer", "label.resource_name": "customers/4651612872/labels/21906377810"}, "emitted_at": 1693824400334} +{"stream": "ad_groups", "data": {"ad_group.ad_rotation_mode": "UNSPECIFIED", "ad_group.base_ad_group": "customers/4651612872/adGroups/137020701042", "ad_group.campaign": "customers/4651612872/campaigns/16820250687", "ad_group.cpc_bid_micros": 10000, "ad_group.cpm_bid_micros": 10000, "ad_group.cpv_bid_micros": 0, "ad_group.display_custom_bid_dimension": "UNSPECIFIED", "ad_group.effective_target_cpa_micros": 0, "ad_group.effective_target_cpa_source": "UNSPECIFIED", "ad_group.effective_target_roas": 0.0, "ad_group.effective_target_roas_source": "UNSPECIFIED", "ad_group.excluded_parent_asset_field_types": [], "ad_group.optimized_targeting_enabled": false, "ad_group.final_url_suffix": "", "ad_group.id": 137020701042, "ad_group.labels": ["customers/4651612872/labels/21906377810"], "ad_group.name": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00a02", "ad_group.percent_cpc_bid_micros": 0, "ad_group.resource_name": "customers/4651612872/adGroups/137020701042", "ad_group.status": "ENABLED", "ad_group.target_cpa_micros": 0, "ad_group.target_cpm_micros": 10000, "ad_group.target_roas": 0.0, "ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n", "targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n"], "ad_group.tracking_url_template": "", "ad_group.type": "SEARCH_STANDARD", "ad_group.url_custom_parameters": [], "segments.date": "2022-05-18"}, "emitted_at": 1693824393478} +{"stream": "ad_groups", "data": {"ad_group.ad_rotation_mode": "UNSPECIFIED", "ad_group.base_ad_group": "customers/4651612872/adGroups/137020701042", "ad_group.campaign": "customers/4651612872/campaigns/16820250687", "ad_group.cpc_bid_micros": 10000, "ad_group.cpm_bid_micros": 10000, "ad_group.cpv_bid_micros": 0, "ad_group.display_custom_bid_dimension": "UNSPECIFIED", "ad_group.effective_target_cpa_micros": 0, "ad_group.effective_target_cpa_source": "UNSPECIFIED", "ad_group.effective_target_roas": 0.0, "ad_group.effective_target_roas_source": "UNSPECIFIED", "ad_group.excluded_parent_asset_field_types": [], "ad_group.optimized_targeting_enabled": false, "ad_group.final_url_suffix": "", "ad_group.id": 137020701042, "ad_group.labels": ["customers/4651612872/labels/21906377810"], "ad_group.name": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00a02", "ad_group.percent_cpc_bid_micros": 0, "ad_group.resource_name": "customers/4651612872/adGroups/137020701042", "ad_group.status": "ENABLED", "ad_group.target_cpa_micros": 0, "ad_group.target_cpm_micros": 10000, "ad_group.target_roas": 0.0, "ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n", "targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n"], "ad_group.tracking_url_template": "", "ad_group.type": "SEARCH_STANDARD", "ad_group.url_custom_parameters": [], "segments.date": "2022-05-19"}, "emitted_at": 1693824393481} +{"stream": "ad_groups", "data": {"ad_group.ad_rotation_mode": "UNSPECIFIED", "ad_group.base_ad_group": "customers/4651612872/adGroups/137020701042", "ad_group.campaign": "customers/4651612872/campaigns/16820250687", "ad_group.cpc_bid_micros": 10000, "ad_group.cpm_bid_micros": 10000, "ad_group.cpv_bid_micros": 0, "ad_group.display_custom_bid_dimension": "UNSPECIFIED", "ad_group.effective_target_cpa_micros": 0, "ad_group.effective_target_cpa_source": "UNSPECIFIED", "ad_group.effective_target_roas": 0.0, "ad_group.effective_target_roas_source": "UNSPECIFIED", "ad_group.excluded_parent_asset_field_types": [], "ad_group.optimized_targeting_enabled": false, "ad_group.final_url_suffix": "", "ad_group.id": 137020701042, "ad_group.labels": ["customers/4651612872/labels/21906377810"], "ad_group.name": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00a02", "ad_group.percent_cpc_bid_micros": 0, "ad_group.resource_name": "customers/4651612872/adGroups/137020701042", "ad_group.status": "ENABLED", "ad_group.target_cpa_micros": 0, "ad_group.target_cpm_micros": 10000, "ad_group.target_roas": 0.0, "ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n", "targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n"], "ad_group.tracking_url_template": "", "ad_group.type": "SEARCH_STANDARD", "ad_group.url_custom_parameters": [], "segments.date": "2022-05-20"}, "emitted_at": 1693824393482} +{"stream": "ad_listing_group_criterions", "data": {"deleted_at": null, "change_status.last_change_date_time": null, "ad_group_criterion.resource_name": "customers/4651612872/adGroupCriteria/123273719655~10515001", "ad_group.id": 123273719655, "ad_group_criterion.criterion_id": 10515001, "ad_group_criterion.listing_group.case_value.activity_country.value": "", "ad_group_criterion.listing_group.case_value.activity_id.value": "", "ad_group_criterion.listing_group.case_value.activity_rating.value": 0, "ad_group_criterion.listing_group.case_value.hotel_city.city_criterion": "", "ad_group_criterion.listing_group.case_value.hotel_class.value": 0, "ad_group_criterion.listing_group.case_value.hotel_country_region.country_region_criterion": "", "ad_group_criterion.listing_group.case_value.hotel_id.value": "", "ad_group_criterion.listing_group.case_value.hotel_state.state_criterion": "", "ad_group_criterion.listing_group.case_value.product_bidding_category.id": 0, "ad_group_criterion.listing_group.case_value.product_bidding_category.level": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_brand.value": "", "ad_group_criterion.listing_group.case_value.product_channel.channel": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_channel_exclusivity.channel_exclusivity": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_condition.condition": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_custom_attribute.index": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_custom_attribute.value": "", "ad_group_criterion.listing_group.case_value.product_item_id.value": "", "ad_group_criterion.listing_group.case_value.product_type.level": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_type.value": "", "ad_group_criterion.listing_group.parent_ad_group_criterion": "", "ad_group_criterion.listing_group.type": "UNSPECIFIED"}, "emitted_at": 1693824427243} +{"stream": "ad_listing_group_criterions", "data": {"deleted_at": null, "change_status.last_change_date_time": null, "ad_group_criterion.resource_name": "customers/4651612872/adGroupCriteria/123273719655~10683521", "ad_group.id": 123273719655, "ad_group_criterion.criterion_id": 10683521, "ad_group_criterion.listing_group.case_value.activity_country.value": "", "ad_group_criterion.listing_group.case_value.activity_id.value": "", "ad_group_criterion.listing_group.case_value.activity_rating.value": 0, "ad_group_criterion.listing_group.case_value.hotel_city.city_criterion": "", "ad_group_criterion.listing_group.case_value.hotel_class.value": 0, "ad_group_criterion.listing_group.case_value.hotel_country_region.country_region_criterion": "", "ad_group_criterion.listing_group.case_value.hotel_id.value": "", "ad_group_criterion.listing_group.case_value.hotel_state.state_criterion": "", "ad_group_criterion.listing_group.case_value.product_bidding_category.id": 0, "ad_group_criterion.listing_group.case_value.product_bidding_category.level": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_brand.value": "", "ad_group_criterion.listing_group.case_value.product_channel.channel": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_channel_exclusivity.channel_exclusivity": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_condition.condition": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_custom_attribute.index": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_custom_attribute.value": "", "ad_group_criterion.listing_group.case_value.product_item_id.value": "", "ad_group_criterion.listing_group.case_value.product_type.level": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_type.value": "", "ad_group_criterion.listing_group.parent_ad_group_criterion": "", "ad_group_criterion.listing_group.type": "UNSPECIFIED"}, "emitted_at": 1693824427249} +{"stream": "ad_listing_group_criterions", "data": {"deleted_at": null, "change_status.last_change_date_time": null, "ad_group_criterion.resource_name": "customers/4651612872/adGroupCriteria/123273719655~11100571", "ad_group.id": 123273719655, "ad_group_criterion.criterion_id": 11100571, "ad_group_criterion.listing_group.case_value.activity_country.value": "", "ad_group_criterion.listing_group.case_value.activity_id.value": "", "ad_group_criterion.listing_group.case_value.activity_rating.value": 0, "ad_group_criterion.listing_group.case_value.hotel_city.city_criterion": "", "ad_group_criterion.listing_group.case_value.hotel_class.value": 0, "ad_group_criterion.listing_group.case_value.hotel_country_region.country_region_criterion": "", "ad_group_criterion.listing_group.case_value.hotel_id.value": "", "ad_group_criterion.listing_group.case_value.hotel_state.state_criterion": "", "ad_group_criterion.listing_group.case_value.product_bidding_category.id": 0, "ad_group_criterion.listing_group.case_value.product_bidding_category.level": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_brand.value": "", "ad_group_criterion.listing_group.case_value.product_channel.channel": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_channel_exclusivity.channel_exclusivity": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_condition.condition": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_custom_attribute.index": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_custom_attribute.value": "", "ad_group_criterion.listing_group.case_value.product_item_id.value": "", "ad_group_criterion.listing_group.case_value.product_type.level": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_type.value": "", "ad_group_criterion.listing_group.parent_ad_group_criterion": "", "ad_group_criterion.listing_group.type": "UNSPECIFIED"}, "emitted_at": 1693824427252} +{"stream": "audience", "data": {"audience.description": "", "audience.dimensions": ["audience_segments {\n segments {\n custom_audience {\n custom_audience: \"customers/4651612872/customAudiences/523469909\"\n }\n }\n}\n"], "audience.exclusion_dimension": "", "audience.id": 47792633, "audience.name": "Audience name 1", "audience.resource_name": "customers/4651612872/audiences/47792633", "audience.status": "ENABLED"}, "emitted_at": 1693824406682} +{"stream": "campaign_bidding_strategies", "data": {"campaign.id": 16820250687, "bidding_strategy.aligned_campaign_budget_id": 0, "bidding_strategy.campaign_count": 0, "bidding_strategy.currency_code": "", "bidding_strategy.effective_currency_code": "", "bidding_strategy.enhanced_cpc": "", "bidding_strategy.id": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversion_value.target_roas": 0.0, "bidding_strategy.maximize_conversions.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversions.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversions.target_cpa_micros": 0, "bidding_strategy.name": "", "bidding_strategy.non_removed_campaign_count": 0, "bidding_strategy.resource_name": "", "bidding_strategy.status": "UNSPECIFIED", "bidding_strategy.target_cpa.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_cpa.cpc_bid_floor_micros": 0, "bidding_strategy.target_cpa.target_cpa_micros": 0, "bidding_strategy.target_impression_share.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_impression_share.location": "UNSPECIFIED", "bidding_strategy.target_impression_share.location_fraction_micros": 0, "bidding_strategy.target_roas.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_roas.cpc_bid_floor_micros": 0, "bidding_strategy.target_roas.target_roas": 0.0, "bidding_strategy.target_spend.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_spend.target_spend_micros": 0, "bidding_strategy.type": "UNSPECIFIED", "segments.date": "2022-05-18"}, "emitted_at": 1693824416612} +{"stream": "campaign_bidding_strategies", "data": {"campaign.id": 16820250687, "bidding_strategy.aligned_campaign_budget_id": 0, "bidding_strategy.campaign_count": 0, "bidding_strategy.currency_code": "", "bidding_strategy.effective_currency_code": "", "bidding_strategy.enhanced_cpc": "", "bidding_strategy.id": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversion_value.target_roas": 0.0, "bidding_strategy.maximize_conversions.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversions.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversions.target_cpa_micros": 0, "bidding_strategy.name": "", "bidding_strategy.non_removed_campaign_count": 0, "bidding_strategy.resource_name": "", "bidding_strategy.status": "UNSPECIFIED", "bidding_strategy.target_cpa.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_cpa.cpc_bid_floor_micros": 0, "bidding_strategy.target_cpa.target_cpa_micros": 0, "bidding_strategy.target_impression_share.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_impression_share.location": "UNSPECIFIED", "bidding_strategy.target_impression_share.location_fraction_micros": 0, "bidding_strategy.target_roas.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_roas.cpc_bid_floor_micros": 0, "bidding_strategy.target_roas.target_roas": 0.0, "bidding_strategy.target_spend.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_spend.target_spend_micros": 0, "bidding_strategy.type": "UNSPECIFIED", "segments.date": "2022-05-19"}, "emitted_at": 1693824416617} +{"stream": "campaign_bidding_strategies", "data": {"campaign.id": 16820250687, "bidding_strategy.aligned_campaign_budget_id": 0, "bidding_strategy.campaign_count": 0, "bidding_strategy.currency_code": "", "bidding_strategy.effective_currency_code": "", "bidding_strategy.enhanced_cpc": "", "bidding_strategy.id": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversion_value.target_roas": 0.0, "bidding_strategy.maximize_conversions.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversions.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversions.target_cpa_micros": 0, "bidding_strategy.name": "", "bidding_strategy.non_removed_campaign_count": 0, "bidding_strategy.resource_name": "", "bidding_strategy.status": "UNSPECIFIED", "bidding_strategy.target_cpa.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_cpa.cpc_bid_floor_micros": 0, "bidding_strategy.target_cpa.target_cpa_micros": 0, "bidding_strategy.target_impression_share.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_impression_share.location": "UNSPECIFIED", "bidding_strategy.target_impression_share.location_fraction_micros": 0, "bidding_strategy.target_roas.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_roas.cpc_bid_floor_micros": 0, "bidding_strategy.target_roas.target_roas": 0.0, "bidding_strategy.target_spend.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_spend.target_spend_micros": 0, "bidding_strategy.type": "UNSPECIFIED", "segments.date": "2022-05-20"}, "emitted_at": 1693824416621} +{"stream": "campaign_budget", "data": {"campaign_budget.aligned_bidding_strategy_id": 0, "campaign_budget.amount_micros": 750000, "campaign_budget.delivery_method": ["STANDARD"], "campaign_budget.explicitly_shared": false, "campaign_budget.has_recommended_budget": false, "campaign_budget.id": 10695604507, "campaign_budget.name": "Website traffic-Search-15", "campaign_budget.period": ["DAILY"], "campaign_budget.recommended_budget_amount_micros": 0, "campaign_budget.recommended_budget_estimated_change_weekly_clicks": 0, "campaign_budget.recommended_budget_estimated_change_weekly_cost_micros": 0, "campaign_budget.recommended_budget_estimated_change_weekly_interactions": 0, "campaign_budget.recommended_budget_estimated_change_weekly_views": 0, "campaign_budget.reference_count": 0, "campaign_budget.resource_name": "customers/4651612872/campaignBudgets/10695604507", "campaign_budget.status": ["REMOVED"], "campaign_budget.total_amount_micros": 0, "campaign_budget.type": ["STANDARD"], "segments.date": "2022-05-18", "segments.budget_campaign_association_status.campaign": "customers/4651612872/campaigns/16820250687", "segments.budget_campaign_association_status.status": ["REMOVED"], "metrics.all_conversions": 0.0, "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.average_cost": 197500.0, "metrics.average_cpc": 197500.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 15490196.078431372, "metrics.average_cpv": 0.0, "metrics.clicks": 4, "metrics.conversions": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 790000, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0784313725490196, "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "metrics.impressions": 51, "metrics.interaction_event_types": ["InteractionEventType.CLICK"], "metrics.interaction_rate": 0.0784313725490196, "metrics.interactions": 4, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0}, "emitted_at": 1693824369176} +{"stream": "campaign_budget", "data": {"campaign_budget.aligned_bidding_strategy_id": 0, "campaign_budget.amount_micros": 750000, "campaign_budget.delivery_method": ["STANDARD"], "campaign_budget.explicitly_shared": false, "campaign_budget.has_recommended_budget": false, "campaign_budget.id": 10695604507, "campaign_budget.name": "Website traffic-Search-15", "campaign_budget.period": ["DAILY"], "campaign_budget.recommended_budget_amount_micros": 0, "campaign_budget.recommended_budget_estimated_change_weekly_clicks": 0, "campaign_budget.recommended_budget_estimated_change_weekly_cost_micros": 0, "campaign_budget.recommended_budget_estimated_change_weekly_interactions": 0, "campaign_budget.recommended_budget_estimated_change_weekly_views": 0, "campaign_budget.reference_count": 0, "campaign_budget.resource_name": "customers/4651612872/campaignBudgets/10695604507", "campaign_budget.status": ["REMOVED"], "campaign_budget.total_amount_micros": 0, "campaign_budget.type": ["STANDARD"], "segments.date": "2022-05-19", "segments.budget_campaign_association_status.campaign": "customers/4651612872/campaigns/16820250687", "segments.budget_campaign_association_status.status": ["REMOVED"], "metrics.all_conversions": 0.0, "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.average_cost": 143333.33333333334, "metrics.average_cpc": 143333.33333333334, "metrics.average_cpe": 0.0, "metrics.average_cpm": 31851851.85185185, "metrics.average_cpv": 0.0, "metrics.clicks": 6, "metrics.conversions": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 860000, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.2222222222222222, "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "metrics.impressions": 27, "metrics.interaction_event_types": ["InteractionEventType.CLICK"], "metrics.interaction_rate": 0.2222222222222222, "metrics.interactions": 6, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0}, "emitted_at": 1693824369183} +{"stream": "campaign_budget", "data": {"campaign_budget.aligned_bidding_strategy_id": 0, "campaign_budget.amount_micros": 750000, "campaign_budget.delivery_method": ["STANDARD"], "campaign_budget.explicitly_shared": false, "campaign_budget.has_recommended_budget": false, "campaign_budget.id": 10695604507, "campaign_budget.name": "Website traffic-Search-15", "campaign_budget.period": ["DAILY"], "campaign_budget.recommended_budget_amount_micros": 0, "campaign_budget.recommended_budget_estimated_change_weekly_clicks": 0, "campaign_budget.recommended_budget_estimated_change_weekly_cost_micros": 0, "campaign_budget.recommended_budget_estimated_change_weekly_interactions": 0, "campaign_budget.recommended_budget_estimated_change_weekly_views": 0, "campaign_budget.reference_count": 0, "campaign_budget.resource_name": "customers/4651612872/campaignBudgets/10695604507", "campaign_budget.status": ["REMOVED"], "campaign_budget.total_amount_micros": 0, "campaign_budget.type": ["STANDARD"], "segments.date": "2022-05-20", "segments.budget_campaign_association_status.campaign": "customers/4651612872/campaigns/16820250687", "segments.budget_campaign_association_status.status": ["REMOVED"], "metrics.all_conversions": 0.0, "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.average_cost": 215000.0, "metrics.average_cpc": 215000.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 16538461.53846154, "metrics.average_cpv": 0.0, "metrics.clicks": 2, "metrics.conversions": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 430000, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.07692307692307693, "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "metrics.impressions": 26, "metrics.interaction_event_types": ["InteractionEventType.CLICK"], "metrics.interaction_rate": 0.07692307692307693, "metrics.interactions": 2, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0}, "emitted_at": 1693824369188} +{"stream": "campaign_criterion", "data": {"deleted_at": null, "change_status.last_change_date_time": null, "campaign.id": 9660123292, "campaign_criterion.resource_name": "customers/4651612872/campaignCriteria/9660123292~2124", "campaign_criterion.campaign": "customers/4651612872/campaigns/9660123292", "campaign_criterion.age_range.type": "UNSPECIFIED", "campaign_criterion.mobile_application.name": "", "campaign_criterion.negative": false, "campaign_criterion.youtube_channel.channel_id": "", "campaign_criterion.youtube_video.video_id": ""}, "emitted_at": 1693824428496} +{"stream": "campaign_criterion", "data": {"deleted_at": null, "change_status.last_change_date_time": null, "campaign.id": 9660123292, "campaign_criterion.resource_name": "customers/4651612872/campaignCriteria/9660123292~2250", "campaign_criterion.campaign": "customers/4651612872/campaigns/9660123292", "campaign_criterion.age_range.type": "UNSPECIFIED", "campaign_criterion.mobile_application.name": "", "campaign_criterion.negative": false, "campaign_criterion.youtube_channel.channel_id": "", "campaign_criterion.youtube_video.video_id": ""}, "emitted_at": 1693824428499} +{"stream": "campaign_criterion", "data": {"deleted_at": null, "change_status.last_change_date_time": null, "campaign.id": 9660123292, "campaign_criterion.resource_name": "customers/4651612872/campaignCriteria/9660123292~2276", "campaign_criterion.campaign": "customers/4651612872/campaigns/9660123292", "campaign_criterion.age_range.type": "UNSPECIFIED", "campaign_criterion.mobile_application.name": "", "campaign_criterion.negative": false, "campaign_criterion.youtube_channel.channel_id": "", "campaign_criterion.youtube_video.video_id": ""}, "emitted_at": 1693824428501} +{"stream": "campaign_labels", "data": {"campaign.resource_name": "customers/4651612872/campaigns/12124071339", "campaign_label.resource_name": "customers/4651612872/campaignLabels/12124071339~21585034471", "label.name": "edgao-example-label", "label.resource_name": "customers/4651612872/labels/21585034471"}, "emitted_at": 1693824399922} +{"stream": "campaign_labels", "data": {"campaign.resource_name": "customers/4651612872/campaigns/13284356762", "campaign_label.resource_name": "customers/4651612872/campaignLabels/13284356762~21585034471", "label.name": "edgao-example-label", "label.resource_name": "customers/4651612872/labels/21585034471"}, "emitted_at": 1693824399924} +{"stream": "campaign_labels", "data": {"campaign.resource_name": "customers/4651612872/campaigns/16820250687", "campaign_label.resource_name": "customers/4651612872/campaignLabels/16820250687~21906377810", "label.name": "Test Delete label customer", "label.resource_name": "customers/4651612872/labels/21906377810"}, "emitted_at": 1693824399925} +{"stream": "campaigns", "data": {"campaign.accessible_bidding_strategy": "", "campaign.ad_serving_optimization_status": "OPTIMIZE", "campaign.advertising_channel_sub_type": "UNSPECIFIED", "campaign.advertising_channel_type": "SEARCH", "campaign.app_campaign_setting.app_id": "", "campaign.app_campaign_setting.app_store": "UNSPECIFIED", "campaign.app_campaign_setting.bidding_strategy_goal_type": "UNSPECIFIED", "campaign.base_campaign": "customers/4651612872/campaigns/16820250687", "campaign.bidding_strategy": "", "campaign.bidding_strategy_type": "MAXIMIZE_CONVERSIONS", "campaign.campaign_budget": "customers/4651612872/campaignBudgets/12862729190", "campaign_budget.amount_micros": 1000000, "campaign.commission.commission_rate_micros": 0, "campaign.dynamic_search_ads_setting.domain_name": "", "campaign.dynamic_search_ads_setting.feeds": [], "campaign.dynamic_search_ads_setting.language_code": "", "campaign.dynamic_search_ads_setting.use_supplied_urls_only": false, "campaign.end_date": "2037-12-30", "campaign.excluded_parent_asset_field_types": [], "campaign.experiment_type": "BASE", "campaign.final_url_suffix": "", "campaign.frequency_caps": [], "campaign.geo_target_type_setting.negative_geo_target_type": "PRESENCE", "campaign.geo_target_type_setting.positive_geo_target_type": "PRESENCE_OR_INTEREST", "campaign.hotel_setting.hotel_center_id": 0, "campaign.id": 16820250687, "campaign.labels": ["customers/4651612872/labels/21906377810"], "campaign.local_campaign_setting.location_source_type": "UNSPECIFIED", "campaign.manual_cpc.enhanced_cpc_enabled": false, "campaign.manual_cpm": "", "campaign.manual_cpv": "", "campaign.maximize_conversion_value.target_roas": 0.0, "campaign.maximize_conversions.target_cpa_micros": 0, "campaign.name": "Website traffic-Search-15", "campaign.network_settings.target_content_network": true, "campaign.network_settings.target_google_search": true, "campaign.network_settings.target_partner_search_network": false, "campaign.network_settings.target_search_network": true, "campaign.optimization_goal_setting.optimization_goal_types": [], "campaign.optimization_score": 0.0, "campaign.payment_mode": "CLICKS", "campaign.percent_cpc.cpc_bid_ceiling_micros": 0, "campaign.percent_cpc.enhanced_cpc_enabled": false, "campaign.real_time_bidding_setting.opt_in": false, "campaign.resource_name": "customers/4651612872/campaigns/16820250687", "campaign.selective_optimization.conversion_actions": [], "campaign.serving_status": "SERVING", "campaign.shopping_setting.campaign_priority": 0, "campaign.shopping_setting.enable_local": false, "campaign.shopping_setting.merchant_id": 0, "campaign.shopping_setting.sales_country": "", "campaign.start_date": "2022-04-08", "campaign.status": "PAUSED", "campaign.target_cpa.cpc_bid_ceiling_micros": 0, "campaign.target_cpa.cpc_bid_floor_micros": 0, "campaign.target_cpa.target_cpa_micros": 0, "campaign.target_cpm.target_frequency_goal.target_count": 0, "campaign.target_cpm.target_frequency_goal.time_unit": "UNSPECIFIED", "campaign.target_impression_share.cpc_bid_ceiling_micros": 0, "campaign.target_impression_share.location": "UNSPECIFIED", "campaign.target_impression_share.location_fraction_micros": 0, "campaign.target_roas.cpc_bid_ceiling_micros": 0, "campaign.target_roas.cpc_bid_floor_micros": 0, "campaign.target_roas.target_roas": 0.0, "campaign.target_spend.cpc_bid_ceiling_micros": 0, "campaign.target_spend.target_spend_micros": 0, "campaign.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n"], "campaign.tracking_setting.tracking_url": "", "campaign.tracking_url_template": "", "campaign.url_custom_parameters": [], "campaign.vanity_pharma.vanity_pharma_display_url_mode": "UNSPECIFIED", "campaign.vanity_pharma.vanity_pharma_text": "UNSPECIFIED", "campaign.video_brand_safety_suitability": "UNSPECIFIED", "metrics.clicks": 0, "metrics.ctr": 0.0, "metrics.conversions": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 0, "metrics.impressions": 1.0, "metrics.video_views": 0.0, "metrics.video_quartile_p100_rate": 0.0, "metrics.active_view_cpm": 0.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpm": 0.0, "metrics.interactions": 0, "metrics.interaction_event_types": "[]", "metrics.value_per_conversion": 0.0, "metrics.cost_per_conversion": 0.0, "segments.date": "2022-05-18", "segments.hour": 1.0, "segments.ad_network_type": "SEARCH"}, "emitted_at": 1693824396741} +{"stream": "campaigns", "data": {"campaign.accessible_bidding_strategy": "", "campaign.ad_serving_optimization_status": "OPTIMIZE", "campaign.advertising_channel_sub_type": "UNSPECIFIED", "campaign.advertising_channel_type": "SEARCH", "campaign.app_campaign_setting.app_id": "", "campaign.app_campaign_setting.app_store": "UNSPECIFIED", "campaign.app_campaign_setting.bidding_strategy_goal_type": "UNSPECIFIED", "campaign.base_campaign": "customers/4651612872/campaigns/16820250687", "campaign.bidding_strategy": "", "campaign.bidding_strategy_type": "MAXIMIZE_CONVERSIONS", "campaign.campaign_budget": "customers/4651612872/campaignBudgets/12862729190", "campaign_budget.amount_micros": 1000000, "campaign.commission.commission_rate_micros": 0, "campaign.dynamic_search_ads_setting.domain_name": "", "campaign.dynamic_search_ads_setting.feeds": [], "campaign.dynamic_search_ads_setting.language_code": "", "campaign.dynamic_search_ads_setting.use_supplied_urls_only": false, "campaign.end_date": "2037-12-30", "campaign.excluded_parent_asset_field_types": [], "campaign.experiment_type": "BASE", "campaign.final_url_suffix": "", "campaign.frequency_caps": [], "campaign.geo_target_type_setting.negative_geo_target_type": "PRESENCE", "campaign.geo_target_type_setting.positive_geo_target_type": "PRESENCE_OR_INTEREST", "campaign.hotel_setting.hotel_center_id": 0, "campaign.id": 16820250687, "campaign.labels": ["customers/4651612872/labels/21906377810"], "campaign.local_campaign_setting.location_source_type": "UNSPECIFIED", "campaign.manual_cpc.enhanced_cpc_enabled": false, "campaign.manual_cpm": "", "campaign.manual_cpv": "", "campaign.maximize_conversion_value.target_roas": 0.0, "campaign.maximize_conversions.target_cpa_micros": 0, "campaign.name": "Website traffic-Search-15", "campaign.network_settings.target_content_network": true, "campaign.network_settings.target_google_search": true, "campaign.network_settings.target_partner_search_network": false, "campaign.network_settings.target_search_network": true, "campaign.optimization_goal_setting.optimization_goal_types": [], "campaign.optimization_score": 0.0, "campaign.payment_mode": "CLICKS", "campaign.percent_cpc.cpc_bid_ceiling_micros": 0, "campaign.percent_cpc.enhanced_cpc_enabled": false, "campaign.real_time_bidding_setting.opt_in": false, "campaign.resource_name": "customers/4651612872/campaigns/16820250687", "campaign.selective_optimization.conversion_actions": [], "campaign.serving_status": "SERVING", "campaign.shopping_setting.campaign_priority": 0, "campaign.shopping_setting.enable_local": false, "campaign.shopping_setting.merchant_id": 0, "campaign.shopping_setting.sales_country": "", "campaign.start_date": "2022-04-08", "campaign.status": "PAUSED", "campaign.target_cpa.cpc_bid_ceiling_micros": 0, "campaign.target_cpa.cpc_bid_floor_micros": 0, "campaign.target_cpa.target_cpa_micros": 0, "campaign.target_cpm.target_frequency_goal.target_count": 0, "campaign.target_cpm.target_frequency_goal.time_unit": "UNSPECIFIED", "campaign.target_impression_share.cpc_bid_ceiling_micros": 0, "campaign.target_impression_share.location": "UNSPECIFIED", "campaign.target_impression_share.location_fraction_micros": 0, "campaign.target_roas.cpc_bid_ceiling_micros": 0, "campaign.target_roas.cpc_bid_floor_micros": 0, "campaign.target_roas.target_roas": 0.0, "campaign.target_spend.cpc_bid_ceiling_micros": 0, "campaign.target_spend.target_spend_micros": 0, "campaign.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n"], "campaign.tracking_setting.tracking_url": "", "campaign.tracking_url_template": "", "campaign.url_custom_parameters": [], "campaign.vanity_pharma.vanity_pharma_display_url_mode": "UNSPECIFIED", "campaign.vanity_pharma.vanity_pharma_text": "UNSPECIFIED", "campaign.video_brand_safety_suitability": "UNSPECIFIED", "metrics.clicks": 0, "metrics.ctr": 0.0, "metrics.conversions": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 0, "metrics.impressions": 2.0, "metrics.video_views": 0.0, "metrics.video_quartile_p100_rate": 0.0, "metrics.active_view_cpm": 0.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpm": 0.0, "metrics.interactions": 0, "metrics.interaction_event_types": "[]", "metrics.value_per_conversion": 0.0, "metrics.cost_per_conversion": 0.0, "segments.date": "2022-05-18", "segments.hour": 2.0, "segments.ad_network_type": "SEARCH"}, "emitted_at": 1693824396744} +{"stream": "campaigns", "data": {"campaign.accessible_bidding_strategy": "", "campaign.ad_serving_optimization_status": "OPTIMIZE", "campaign.advertising_channel_sub_type": "UNSPECIFIED", "campaign.advertising_channel_type": "SEARCH", "campaign.app_campaign_setting.app_id": "", "campaign.app_campaign_setting.app_store": "UNSPECIFIED", "campaign.app_campaign_setting.bidding_strategy_goal_type": "UNSPECIFIED", "campaign.base_campaign": "customers/4651612872/campaigns/16820250687", "campaign.bidding_strategy": "", "campaign.bidding_strategy_type": "MAXIMIZE_CONVERSIONS", "campaign.campaign_budget": "customers/4651612872/campaignBudgets/12862729190", "campaign_budget.amount_micros": 1000000, "campaign.commission.commission_rate_micros": 0, "campaign.dynamic_search_ads_setting.domain_name": "", "campaign.dynamic_search_ads_setting.feeds": [], "campaign.dynamic_search_ads_setting.language_code": "", "campaign.dynamic_search_ads_setting.use_supplied_urls_only": false, "campaign.end_date": "2037-12-30", "campaign.excluded_parent_asset_field_types": [], "campaign.experiment_type": "BASE", "campaign.final_url_suffix": "", "campaign.frequency_caps": [], "campaign.geo_target_type_setting.negative_geo_target_type": "PRESENCE", "campaign.geo_target_type_setting.positive_geo_target_type": "PRESENCE_OR_INTEREST", "campaign.hotel_setting.hotel_center_id": 0, "campaign.id": 16820250687, "campaign.labels": ["customers/4651612872/labels/21906377810"], "campaign.local_campaign_setting.location_source_type": "UNSPECIFIED", "campaign.manual_cpc.enhanced_cpc_enabled": false, "campaign.manual_cpm": "", "campaign.manual_cpv": "", "campaign.maximize_conversion_value.target_roas": 0.0, "campaign.maximize_conversions.target_cpa_micros": 0, "campaign.name": "Website traffic-Search-15", "campaign.network_settings.target_content_network": true, "campaign.network_settings.target_google_search": true, "campaign.network_settings.target_partner_search_network": false, "campaign.network_settings.target_search_network": true, "campaign.optimization_goal_setting.optimization_goal_types": [], "campaign.optimization_score": 0.0, "campaign.payment_mode": "CLICKS", "campaign.percent_cpc.cpc_bid_ceiling_micros": 0, "campaign.percent_cpc.enhanced_cpc_enabled": false, "campaign.real_time_bidding_setting.opt_in": false, "campaign.resource_name": "customers/4651612872/campaigns/16820250687", "campaign.selective_optimization.conversion_actions": [], "campaign.serving_status": "SERVING", "campaign.shopping_setting.campaign_priority": 0, "campaign.shopping_setting.enable_local": false, "campaign.shopping_setting.merchant_id": 0, "campaign.shopping_setting.sales_country": "", "campaign.start_date": "2022-04-08", "campaign.status": "PAUSED", "campaign.target_cpa.cpc_bid_ceiling_micros": 0, "campaign.target_cpa.cpc_bid_floor_micros": 0, "campaign.target_cpa.target_cpa_micros": 0, "campaign.target_cpm.target_frequency_goal.target_count": 0, "campaign.target_cpm.target_frequency_goal.time_unit": "UNSPECIFIED", "campaign.target_impression_share.cpc_bid_ceiling_micros": 0, "campaign.target_impression_share.location": "UNSPECIFIED", "campaign.target_impression_share.location_fraction_micros": 0, "campaign.target_roas.cpc_bid_ceiling_micros": 0, "campaign.target_roas.cpc_bid_floor_micros": 0, "campaign.target_roas.target_roas": 0.0, "campaign.target_spend.cpc_bid_ceiling_micros": 0, "campaign.target_spend.target_spend_micros": 0, "campaign.targeting_setting.target_restrictions": ["targeting_dimension: AUDIENCE\nbid_only: true\n"], "campaign.tracking_setting.tracking_url": "", "campaign.tracking_url_template": "", "campaign.url_custom_parameters": [], "campaign.vanity_pharma.vanity_pharma_display_url_mode": "UNSPECIFIED", "campaign.vanity_pharma.vanity_pharma_text": "UNSPECIFIED", "campaign.video_brand_safety_suitability": "UNSPECIFIED", "metrics.clicks": 0, "metrics.ctr": 0.0, "metrics.conversions": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 0, "metrics.impressions": 2.0, "metrics.video_views": 0.0, "metrics.video_quartile_p100_rate": 0.0, "metrics.active_view_cpm": 0.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpm": 0.0, "metrics.interactions": 0, "metrics.interaction_event_types": "[]", "metrics.value_per_conversion": 0.0, "metrics.cost_per_conversion": 0.0, "segments.date": "2022-05-18", "segments.hour": 3.0, "segments.ad_network_type": "SEARCH"}, "emitted_at": 1693824396747} +{"stream": "custom_audience", "data": {"custom_audience.description": "", "custom_audience.name": "Airbyet", "custom_audience.id": 523469909, "custom_audience.members": ["member_type: KEYWORD\nkeyword: \"etl elt\"\n", "member_type: KEYWORD\nkeyword: \"cloud data management and analytics\"\n", "member_type: KEYWORD\nkeyword: \"data integration\"\n", "member_type: KEYWORD\nkeyword: \"big data analytics database\"\n", "member_type: KEYWORD\nkeyword: \"data\"\n", "member_type: KEYWORD\nkeyword: \"data sherid nada\"\n", "member_type: KEYWORD\nkeyword: \"airbyteforeveryone\"\n", "member_type: KEYWORD\nkeyword: \"Airbyte\"\n"], "custom_audience.resource_name": "customers/4651612872/customAudiences/523469909", "custom_audience.status": "ENABLED", "custom_audience.type": "AUTO"}, "emitted_at": 1693824406375} +{"stream": "display_keyword_performance_report", "data": {"customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 10012000.0, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 1, "metrics.active_view_measurability": 1.0, "metrics.active_view_measurable_cost_micros": 10012, "metrics.active_view_measurable_impressions": 1, "metrics.active_view_viewability": 1.0, "ad_group.id": 143992182864, "ad_group.name": "Video Non-skippable - 2022-05-30", "ad_group.status": "ENABLED", "segments.ad_network_type": "YOUTUBE_WATCH", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 10012000.0, "metrics.average_cpv": 0.0, "ad_group.base_ad_group": "customers/4651612872/adGroups/143992182864", "campaign.base_campaign": "customers/4651612872/campaigns/17354032686", "campaign.bidding_strategy": "", "campaign.bidding_strategy_type": "TARGET_CPM", "campaign.id": 17354032686, "campaign.name": "Video Non-skippable - 2022-05-30", "campaign.status": "ENABLED", "metrics.clicks": 0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 10012, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "ad_group_criterion.effective_cpc_bid_micros": 10000, "ad_group_criterion.effective_cpc_bid_source": "AD_GROUP", "ad_group_criterion.effective_cpm_bid_micros": 10000, "ad_group_criterion.effective_cpm_bid_source": "AD_GROUP", "ad_group_criterion.effective_cpv_bid_micros": 10000, "ad_group_criterion.effective_cpv_bid_source": "AD_GROUP", "ad_group_criterion.keyword.text": "big data software", "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "segments.day_of_week": "TUESDAY", "segments.device": "MOBILE", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "customer.id": 4651612872, "ad_group_criterion.final_mobile_urls": [], "ad_group_criterion.final_urls": [], "metrics.gmail_forwards": 0, "metrics.gmail_saves": 0, "metrics.gmail_secondary_clicks": 0, "ad_group_criterion.criterion_id": 26160872903, "metrics.impressions": 1, "metrics.interaction_rate": 0.0, "metrics.interaction_event_types": [], "metrics.interactions": 0, "ad_group_criterion.negative": false, "ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n", "targeting_dimension: TOPIC\nbid_only: false\n"], "segments.month": "2022-05-01", "segments.quarter": "2022-04-01", "ad_group_criterion.status": "ENABLED", "ad_group_criterion.tracking_url_template": "", "ad_group_criterion.keyword.match_type": "BROAD", "ad_group_criterion.url_custom_parameters": [], "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_quartile_p100_rate": 0.0, "metrics.video_quartile_p25_rate": 0.0, "metrics.video_quartile_p50_rate": 0.0, "metrics.video_quartile_p75_rate": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2022-05-30", "segments.year": 2022, "segments.date": "2022-05-31"}, "emitted_at": 1693824381188} +{"stream": "geographic_report", "data": {"customer.descriptive_name": "", "geographic_view.country_criterion_id": 2840, "geographic_view.location_type": "AREA_OF_INTEREST", "ad_group.id": 137020701042, "segments.date": "2022-05-18"}, "emitted_at": 1693824374836} +{"stream": "geographic_report", "data": {"customer.descriptive_name": "", "geographic_view.country_criterion_id": 2124, "geographic_view.location_type": "LOCATION_OF_PRESENCE", "ad_group.id": 137020701042, "segments.date": "2022-05-18"}, "emitted_at": 1693824374838} +{"stream": "geographic_report", "data": {"customer.descriptive_name": "", "geographic_view.country_criterion_id": 2840, "geographic_view.location_type": "LOCATION_OF_PRESENCE", "ad_group.id": 137020701042, "segments.date": "2022-05-18"}, "emitted_at": 1693824374839} +{"stream": "happytable", "data": {"campaign.accessible_bidding_strategy": "", "segments.ad_destination_type": "NOT_APPLICABLE", "campaign.start_date": "2022-04-08", "campaign.end_date": "2037-12-30", "segments.date": "2022-05-18"}, "emitted_at": 1693824403710} +{"stream": "happytable", "data": {"campaign.accessible_bidding_strategy": "", "segments.ad_destination_type": "NOT_APPLICABLE", "campaign.start_date": "2022-04-08", "campaign.end_date": "2037-12-30", "segments.date": "2022-05-19"}, "emitted_at": 1693824403711} +{"stream": "happytable", "data": {"campaign.accessible_bidding_strategy": "", "segments.ad_destination_type": "NOT_APPLICABLE", "campaign.start_date": "2022-04-08", "campaign.end_date": "2037-12-30", "segments.date": "2022-05-20"}, "emitted_at": 1693824403711} +{"stream": "keyword_report", "data": {"customer.descriptive_name": "", "ad_group.id": 137020701042, "ad_group_criterion.type": "KEYWORD", "ad_group_criterion.keyword.text": "data integration software", "ad_group_criterion.negative": false, "ad_group_criterion.keyword.match_type": "BROAD", "metrics.historical_quality_score": 0, "metrics.ctr": 0.0, "segments.date": "2022-05-18", "campaign.bidding_strategy_type": "MAXIMIZE_CONVERSIONS", "metrics.clicks": 0, "metrics.cost_micros": 0, "metrics.impressions": 2, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "metrics.conversions": 0.0, "metrics.conversions_value": 0.0, "metrics.interactions": 0, "metrics.interaction_event_types": [], "metrics.view_through_conversions": 0, "ad_group_criterion.criterion_id": 18697003}, "emitted_at": 1693824376478} +{"stream": "keyword_report", "data": {"customer.descriptive_name": "", "ad_group.id": 137020701042, "ad_group_criterion.type": "KEYWORD", "ad_group_criterion.keyword.text": "informatica software", "ad_group_criterion.negative": false, "ad_group_criterion.keyword.match_type": "BROAD", "metrics.historical_quality_score": 0, "metrics.ctr": 0.0, "segments.date": "2022-05-18", "campaign.bidding_strategy_type": "MAXIMIZE_CONVERSIONS", "metrics.clicks": 0, "metrics.cost_micros": 0, "metrics.impressions": 3, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "metrics.conversions": 0.0, "metrics.conversions_value": 0.0, "metrics.interactions": 0, "metrics.interaction_event_types": [], "metrics.view_through_conversions": 0, "ad_group_criterion.criterion_id": 27723800}, "emitted_at": 1693824376481} +{"stream": "keyword_report", "data": {"customer.descriptive_name": "", "ad_group.id": 137020701042, "ad_group_criterion.type": "KEYWORD", "ad_group_criterion.keyword.text": "etl extract transform load", "ad_group_criterion.negative": false, "ad_group_criterion.keyword.match_type": "BROAD", "metrics.historical_quality_score": 0, "metrics.ctr": 0.0, "segments.date": "2022-05-18", "campaign.bidding_strategy_type": "MAXIMIZE_CONVERSIONS", "metrics.clicks": 0, "metrics.cost_micros": 0, "metrics.impressions": 4, "metrics.active_view_impressions": 0, "metrics.active_view_measurability": 0.0, "metrics.active_view_measurable_cost_micros": 0, "metrics.active_view_measurable_impressions": 0, "metrics.active_view_viewability": 0.0, "metrics.conversions": 0.0, "metrics.conversions_value": 0.0, "metrics.interactions": 0, "metrics.interaction_event_types": [], "metrics.view_through_conversions": 0, "ad_group_criterion.criterion_id": 439152736}, "emitted_at": 1693824376483} +{"stream": "labels", "data": {"label.id": 21585034471, "label.name": "edgao-example-label", "label.resource_name": "customers/4651612872/labels/21585034471", "label.status": "ENABLED", "label.text_label.background_color": "#E993EB", "label.text_label.description": "example label for edgao"}, "emitted_at": 1693824415876} +{"stream": "labels", "data": {"label.id": 21902092838, "label.name": "Test Label", "label.resource_name": "customers/4651612872/labels/21902092838", "label.status": "ENABLED", "label.text_label.background_color": "#8BCBD2", "label.text_label.description": "Description to test label"}, "emitted_at": 1693824415878} +{"stream": "labels", "data": {"label.id": 21906377810, "label.name": "Test Delete label customer", "label.resource_name": "customers/4651612872/labels/21906377810", "label.status": "ENABLED", "label.text_label.background_color": "#8266C9", "label.text_label.description": ""}, "emitted_at": 1693824415879} +{"stream": "user_interest", "data": {"user_interest.availabilities": [], "user_interest.launched_to_all": true, "user_interest.name": "Arts & Entertainment", "user_interest.resource_name": "customers/4651612872/userInterests/3", "user_interest.taxonomy_type": "VERTICAL_GEO", "user_interest.user_interest_id": 3, "user_interest.user_interest_parent": ""}, "emitted_at": 1693824410084} +{"stream": "user_interest", "data": {"user_interest.availabilities": [], "user_interest.launched_to_all": true, "user_interest.name": "Computers & Electronics", "user_interest.resource_name": "customers/4651612872/userInterests/5", "user_interest.taxonomy_type": "VERTICAL_GEO", "user_interest.user_interest_id": 5, "user_interest.user_interest_parent": ""}, "emitted_at": 1693824410086} +{"stream": "user_interest", "data": {"user_interest.availabilities": [], "user_interest.launched_to_all": true, "user_interest.name": "Finance", "user_interest.resource_name": "customers/4651612872/userInterests/7", "user_interest.taxonomy_type": "VERTICAL_GEO", "user_interest.user_interest_id": 7, "user_interest.user_interest_parent": ""}, "emitted_at": 1693824410087} +{"stream": "user_location_report", "data": {"segments.date": "2022-05-18", "segments.day_of_week": "WEDNESDAY", "segments.month": "2022-05-01", "segments.week": "2022-05-16", "segments.quarter": "2022-04-01", "segments.year": 2022, "segments.ad_network_type": "SEARCH", "customer.currency_code": "USD", "customer.id": 4651612872, "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "user_location_view.country_criterion_id": 2356, "user_location_view.resource_name": "customers/4651612872/userLocationViews/2356~false", "campaign.base_campaign": "customers/4651612872/campaigns/16820250687", "campaign.id": 16820250687, "campaign.name": "Website traffic-Search-15", "campaign.status": "PAUSED", "ad_group.name": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00a02", "ad_group.status": "ENABLED", "ad_group.base_ad_group": "customers/4651612872/adGroups/137020701042", "metrics.all_conversions": 0.0, "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpm": 0.0, "metrics.average_cpv": 0.0, "metrics.clicks": 0, "metrics.conversions": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 0, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "metrics.impressions": 3, "metrics.interaction_event_types": [], "metrics.interaction_rate": 0.0, "metrics.interactions": 0, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0}, "emitted_at": 1693824401429} +{"stream": "user_location_report", "data": {"segments.date": "2022-05-18", "segments.day_of_week": "WEDNESDAY", "segments.month": "2022-05-01", "segments.week": "2022-05-16", "segments.quarter": "2022-04-01", "segments.year": 2022, "segments.ad_network_type": "SEARCH", "customer.currency_code": "USD", "customer.id": 4651612872, "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "user_location_view.country_criterion_id": 2484, "user_location_view.resource_name": "customers/4651612872/userLocationViews/2484~false", "campaign.base_campaign": "customers/4651612872/campaigns/16820250687", "campaign.id": 16820250687, "campaign.name": "Website traffic-Search-15", "campaign.status": "PAUSED", "ad_group.name": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00a02", "ad_group.status": "ENABLED", "ad_group.base_ad_group": "customers/4651612872/adGroups/137020701042", "metrics.all_conversions": 0.0, "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpm": 0.0, "metrics.average_cpv": 0.0, "metrics.clicks": 0, "metrics.conversions": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 0, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "metrics.impressions": 1, "metrics.interaction_event_types": [], "metrics.interaction_rate": 0.0, "metrics.interactions": 0, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0}, "emitted_at": 1693824401430} +{"stream": "user_location_report", "data": {"segments.date": "2022-05-18", "segments.day_of_week": "WEDNESDAY", "segments.month": "2022-05-01", "segments.week": "2022-05-16", "segments.quarter": "2022-04-01", "segments.year": 2022, "segments.ad_network_type": "SEARCH", "customer.currency_code": "USD", "customer.id": 4651612872, "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "user_location_view.country_criterion_id": 2124, "user_location_view.resource_name": "customers/4651612872/userLocationViews/2124~true", "campaign.base_campaign": "customers/4651612872/campaigns/16820250687", "campaign.id": 16820250687, "campaign.name": "Website traffic-Search-15", "campaign.status": "PAUSED", "ad_group.name": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00a02", "ad_group.status": "ENABLED", "ad_group.base_ad_group": "customers/4651612872/adGroups/137020701042", "metrics.all_conversions": 0.0, "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.average_cost": 253333.33333333334, "metrics.average_cpc": 253333.33333333334, "metrics.average_cpm": 36190476.190476194, "metrics.average_cpv": 0.0, "metrics.clicks": 3, "metrics.conversions": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 760000, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.14285714285714285, "metrics.impressions": 21, "metrics.interaction_event_types": ["InteractionEventType.CLICK"], "metrics.interaction_rate": 0.14285714285714285, "metrics.interactions": 3, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0}, "emitted_at": 1693824401431} diff --git a/airbyte-integrations/connectors/source-google-ads/integration_tests/expected_records_click.jsonl b/airbyte-integrations/connectors/source-google-ads/integration_tests/expected_records_click.jsonl new file mode 100644 index 000000000000..ce2689fde905 --- /dev/null +++ b/airbyte-integrations/connectors/source-google-ads/integration_tests/expected_records_click.jsonl @@ -0,0 +1,73 @@ +{"stream": "account_performance_report", "data": {"customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 322678.1115879828, "metrics.active_view_ctr": 0.001430615164520744, "metrics.active_view_impressions": 699, "metrics.active_view_measurability": 1.0, "metrics.active_view_measurable_cost_micros": 225552, "metrics.active_view_measurable_impressions": 868, "metrics.active_view_viewability": 0.8052995391705069, "segments.ad_network_type": "CONTENT", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "metrics.average_cost": 225552.0, "metrics.average_cpc": 225552.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 259852.53456221198, "metrics.average_cpv": 0.0, "customer.manager": false, "metrics.clicks": 1, "metrics.content_budget_lost_impression_share": 0.0, "metrics.content_impression_share": 0.0999, "metrics.content_rank_lost_impression_share": 0.9001, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 225552, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.001152073732718894, "segments.date": "2023-08-31", "segments.day_of_week": "THURSDAY", "segments.device": "DESKTOP", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "customer.id": 4651612872, "metrics.impressions": 868, "metrics.interaction_rate": 0.001152073732718894, "metrics.interaction_event_types": ["InteractionEventType.CLICK"], "metrics.interactions": 1, "customer.auto_tagging_enabled": true, "customer.test_account": false, "segments.month": "2023-08-01", "segments.quarter": "2023-07-01", "metrics.search_budget_lost_impression_share": 0.0, "metrics.search_exact_match_impression_share": 0.0, "metrics.search_impression_share": 0.0, "metrics.search_rank_lost_impression_share": 0.0, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2023-08-28", "segments.year": 2023}, "emitted_at": 1695082684514} +{"stream": "account_performance_report", "data": {"customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 849618.904224174, "metrics.active_view_ctr": 0.001589293182768716, "metrics.active_view_impressions": 11955, "metrics.active_view_measurability": 1.0, "metrics.active_view_measurable_cost_micros": 10157194, "metrics.active_view_measurable_impressions": 12717, "metrics.active_view_viewability": 0.9400802075961312, "segments.ad_network_type": "CONTENT", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "metrics.average_cost": 534589.1578947369, "metrics.average_cpc": 534589.1578947369, "metrics.average_cpe": 0.0, "metrics.average_cpm": 798709.915860659, "metrics.average_cpv": 0.0, "customer.manager": false, "metrics.clicks": 19, "metrics.content_budget_lost_impression_share": 0.9001, "metrics.content_impression_share": 0.0999, "metrics.content_rank_lost_impression_share": 0.008972127521976223, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 10157194, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0014940630651883305, "segments.date": "2023-08-31", "segments.day_of_week": "THURSDAY", "segments.device": "MOBILE", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "customer.id": 4651612872, "metrics.impressions": 12717, "metrics.interaction_rate": 0.0014940630651883305, "metrics.interaction_event_types": ["InteractionEventType.CLICK"], "metrics.interactions": 19, "customer.auto_tagging_enabled": true, "customer.test_account": false, "segments.month": "2023-08-01", "segments.quarter": "2023-07-01", "metrics.search_budget_lost_impression_share": 0.0, "metrics.search_exact_match_impression_share": 0.0, "metrics.search_impression_share": 0.0, "metrics.search_rank_lost_impression_share": 0.0, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2023-08-28", "segments.year": 2023}, "emitted_at": 1695082684518} +{"stream": "account_performance_report", "data": {"customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 768549.1573033708, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 712, "metrics.active_view_measurability": 1.0, "metrics.active_view_measurable_cost_micros": 547207, "metrics.active_view_measurable_impressions": 740, "metrics.active_view_viewability": 0.9621621621621622, "segments.ad_network_type": "CONTENT", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 739468.9189189189, "metrics.average_cpv": 0.0, "customer.manager": false, "metrics.clicks": 0, "metrics.content_budget_lost_impression_share": 0.9001, "metrics.content_impression_share": 0.0999, "metrics.content_rank_lost_impression_share": 0.002987251805929501, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 547207, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "segments.date": "2023-08-31", "segments.day_of_week": "THURSDAY", "segments.device": "TABLET", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "customer.id": 4651612872, "metrics.impressions": 740, "metrics.interaction_rate": 0.0, "metrics.interaction_event_types": [], "metrics.interactions": 0, "customer.auto_tagging_enabled": true, "customer.test_account": false, "segments.month": "2023-08-01", "segments.quarter": "2023-07-01", "metrics.search_budget_lost_impression_share": 0.0, "metrics.search_exact_match_impression_share": 0.0, "metrics.search_impression_share": 0.0, "metrics.search_rank_lost_impression_share": 0.0, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2023-08-28", "segments.year": 2023}, "emitted_at": 1695082684519} +{"stream": "accounts", "data": {"customer.auto_tagging_enabled": true, "customer.call_reporting_setting.call_conversion_action": "customers/4651612872/conversionActions/179", "customer.call_reporting_setting.call_conversion_reporting_enabled": true, "customer.call_reporting_setting.call_reporting_enabled": true, "customer.conversion_tracking_setting.conversion_tracking_id": 657981234, "customer.conversion_tracking_setting.cross_account_conversion_tracking_id": 0, "customer.currency_code": "USD", "customer.descriptive_name": "", "customer.final_url_suffix": "", "customer.has_partners_badge": false, "customer.id": 4651612872, "customer.manager": false, "customer.optimization_score": 0.7498652, "customer.optimization_score_weight": 94.716119, "customer.pay_per_conversion_eligibility_failure_reasons": ["CustomerPayPerConversionEligibilityFailureReason.NOT_ENOUGH_CONVERSIONS"], "customer.remarketing_setting.google_global_site_tag": "\n\n\n", "customer.resource_name": "customers/4651612872", "customer.test_account": false, "customer.time_zone": "America/Los_Angeles", "customer.tracking_url_template": "", "segments.date": "2023-08-31"}, "emitted_at": 1695082693928} +{"stream": "accounts", "data": {"customer.auto_tagging_enabled": true, "customer.call_reporting_setting.call_conversion_action": "customers/4651612872/conversionActions/179", "customer.call_reporting_setting.call_conversion_reporting_enabled": true, "customer.call_reporting_setting.call_reporting_enabled": true, "customer.conversion_tracking_setting.conversion_tracking_id": 657981234, "customer.conversion_tracking_setting.cross_account_conversion_tracking_id": 0, "customer.currency_code": "USD", "customer.descriptive_name": "", "customer.final_url_suffix": "", "customer.has_partners_badge": false, "customer.id": 4651612872, "customer.manager": false, "customer.optimization_score": 0.7498652, "customer.optimization_score_weight": 94.716119, "customer.pay_per_conversion_eligibility_failure_reasons": ["CustomerPayPerConversionEligibilityFailureReason.NOT_ENOUGH_CONVERSIONS"], "customer.remarketing_setting.google_global_site_tag": "\n\n\n", "customer.resource_name": "customers/4651612872", "customer.test_account": false, "customer.time_zone": "America/Los_Angeles", "customer.tracking_url_template": "", "segments.date": "2023-09-01"}, "emitted_at": 1695082693930} +{"stream": "accounts", "data": {"customer.auto_tagging_enabled": true, "customer.call_reporting_setting.call_conversion_action": "customers/4651612872/conversionActions/179", "customer.call_reporting_setting.call_conversion_reporting_enabled": true, "customer.call_reporting_setting.call_reporting_enabled": true, "customer.conversion_tracking_setting.conversion_tracking_id": 657981234, "customer.conversion_tracking_setting.cross_account_conversion_tracking_id": 0, "customer.currency_code": "USD", "customer.descriptive_name": "", "customer.final_url_suffix": "", "customer.has_partners_badge": false, "customer.id": 4651612872, "customer.manager": false, "customer.optimization_score": 0.7498652, "customer.optimization_score_weight": 94.716119, "customer.pay_per_conversion_eligibility_failure_reasons": ["CustomerPayPerConversionEligibilityFailureReason.NOT_ENOUGH_CONVERSIONS"], "customer.remarketing_setting.google_global_site_tag": "\n\n\n", "customer.resource_name": "customers/4651612872", "customer.test_account": false, "customer.time_zone": "America/Los_Angeles", "customer.tracking_url_template": "", "segments.date": "2023-09-02"}, "emitted_at": 1695082693932} +{"stream": "ad_group_ad_labels", "data": {"ad_group_ad.ad.resource_name": "customers/4651612872/ads/524518584182", "ad_group_ad_label.resource_name": "customers/4651612872/adGroupAdLabels/123273719655~524518584182~21585034471", "label.name": "edgao-example-label", "label.resource_name": "customers/4651612872/labels/21585034471"}, "emitted_at": 1695082701711} +{"stream": "ad_group_ad_labels", "data": {"ad_group_ad.ad.resource_name": "customers/4651612872/ads/592078631218", "ad_group_ad_label.resource_name": "customers/4651612872/adGroupAdLabels/137020701042~592078631218~21906377810", "label.name": "Test Delete label customer", "label.resource_name": "customers/4651612872/labels/21906377810"}, "emitted_at": 1695082701713} +{"stream": "ad_group_ad_report", "data": {"ad_group_ad.ad.legacy_responsive_display_ad.accent_color": "", "ad_group.id": 144799120517, "customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 817743.0046386354, "metrics.active_view_ctr": 0.0014963339817447255, "metrics.active_view_impressions": 13366, "metrics.active_view_measurability": 1.0, "metrics.active_view_measurable_cost_micros": 10929953, "metrics.active_view_measurable_impressions": 14325, "metrics.active_view_viewability": 0.9330541012216405, "ad_group_ad.ad_group": "customers/4651612872/adGroups/144799120517", "ad_group.name": "Ad group 1", "ad_group.status": "ENABLED", "segments.ad_network_type": "CONTENT", "ad_group_ad.ad_strength": "AVERAGE", "ad_group_ad.ad.type": "RESPONSIVE_DISPLAY_AD", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "ad_group_ad.ad.legacy_responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.added_by_google_ads": false, "metrics.average_cost": 546497.65, "metrics.average_cpc": 546497.65, "metrics.average_cpe": 0.0, "metrics.average_cpm": 762998.4642233857, "metrics.average_cpv": 0.0, "metrics.average_page_views": 0.0, "metrics.average_time_on_site": 0.0, "ad_group.base_ad_group": "customers/4651612872/adGroups/144799120517", "campaign.base_campaign": "customers/4651612872/campaigns/19410069806", "metrics.bounce_rate": 0.0, "ad_group_ad.ad.legacy_responsive_display_ad.business_name": "", "ad_group_ad.ad.legacy_responsive_display_ad.call_to_action_text": "", "campaign.id": 19410069806, "campaign.name": "Brand awareness and reach-Display-1", "campaign.status": "ENABLED", "metrics.clicks": 20, "ad_group_ad.policy_summary.approval_status": "APPROVED", "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 10929953, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cost_per_current_model_attributed_conversion": 0.0, "ad_group_ad.ad.final_mobile_urls": [], "ad_group_ad.ad.final_urls": ["https://airbyte.com"], "ad_group_ad.ad.tracking_url_template": "", "ad_group_ad.ad.url_custom_parameters": [], "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0013961605584642235, "metrics.current_model_attributed_conversions_value": 0.0, "metrics.current_model_attributed_conversions": 0.0, "segments.date": "2023-08-31", "segments.day_of_week": "THURSDAY", "ad_group_ad.ad.expanded_text_ad.description": "", "ad_group_ad.ad.text_ad.description1": "", "ad_group_ad.ad.text_ad.description2": "", "ad_group_ad.ad.device_preference": "UNSPECIFIED", "ad_group_ad.ad.display_url": "", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "ad_group_ad.ad.legacy_responsive_display_ad.logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.marketing_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_marketing_image": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description": "", "ad_group_ad.ad.expanded_text_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.headline_part3": "", "customer.id": 4651612872, "ad_group_ad.ad.legacy_responsive_display_ad.format_setting": "UNSPECIFIED", "metrics.gmail_forwards": 0, "metrics.gmail_saves": 0, "metrics.gmail_secondary_clicks": 0, "ad_group_ad.ad.text_ad.headline": "", "ad_group_ad.ad.expanded_text_ad.headline_part1": "", "ad_group_ad.ad.expanded_text_ad.headline_part2": "", "ad_group_ad.ad.id": 643022056303, "ad_group_ad.ad.image_ad.image_url": "", "ad_group_ad.ad.image_ad.pixel_height": 0, "ad_group_ad.ad.image_ad.pixel_width": 0, "ad_group_ad.ad.image_ad.mime_type": "UNSPECIFIED", "ad_group_ad.ad.image_ad.name": "", "metrics.impressions": 14325, "metrics.interaction_rate": 0.0013961605584642235, "metrics.interaction_event_types": ["InteractionEventType.CLICK"], "metrics.interactions": 20, "ad_group_ad.ad.legacy_responsive_display_ad.long_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.main_color": "", "segments.month": "2023-08-01", "ad_group_ad.ad.responsive_display_ad.accent_color": "", "ad_group_ad.ad.responsive_display_ad.allow_flexible_color": true, "ad_group_ad.ad.responsive_display_ad.business_name": "c", "ad_group_ad.ad.responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.responsive_display_ad.descriptions": ["text: \"Airbyte | Open-Source Data Integration Platform | ELT tool\"\n", "text: \"\u30c6\u30ec\u30d3CM\u3067\u8a71\u984c\"\n", "text: \"modern ELT\"\n"], "ad_group_ad.ad.responsive_display_ad.price_prefix": "", "ad_group_ad.ad.responsive_display_ad.promo_text": "", "ad_group_ad.ad.responsive_display_ad.format_setting": "ALL_FORMATS", "ad_group_ad.ad.responsive_display_ad.headlines": ["text: \"ELT\"\n"], "ad_group_ad.ad.responsive_display_ad.logo_images": [], "ad_group_ad.ad.responsive_display_ad.square_logo_images": [], "ad_group_ad.ad.responsive_display_ad.long_headline": "text: \"ELT data portability\"\n", "ad_group_ad.ad.responsive_display_ad.main_color": "", "ad_group_ad.ad.responsive_display_ad.marketing_images": ["asset: \"customers/4651612872/assets/39906715549\"\n", "asset: \"customers/4651612872/assets/40179016327\"\n"], "ad_group_ad.ad.responsive_display_ad.square_marketing_images": ["asset: \"customers/4651612872/assets/39906715552\"\n", "asset: \"customers/4651612872/assets/40179014782\"\n"], "ad_group_ad.ad.responsive_display_ad.youtube_videos": [], "ad_group_ad.ad.expanded_text_ad.path1": "", "ad_group_ad.ad.expanded_text_ad.path2": "", "metrics.percent_new_visitors": 0.0, "ad_group_ad.ad.legacy_responsive_display_ad.price_prefix": "", "ad_group_ad.ad.legacy_responsive_display_ad.promo_text": "", "segments.quarter": "2023-07-01", "ad_group_ad.ad.responsive_search_ad.descriptions": [], "ad_group_ad.ad.responsive_search_ad.headlines": [], "ad_group_ad.ad.responsive_search_ad.path1": "", "ad_group_ad.ad.responsive_search_ad.path2": "", "ad_group_ad.ad.legacy_responsive_display_ad.short_headline": "", "ad_group_ad.status": "ENABLED", "ad_group_ad.ad.system_managed_resource_source": "UNSPECIFIED", "metrics.top_impression_percentage": 0.0, "ad_group_ad.ad.app_ad.descriptions": [], "ad_group_ad.ad.app_ad.headlines": [], "ad_group_ad.ad.app_ad.html5_media_bundles": [], "ad_group_ad.ad.app_ad.images": [], "ad_group_ad.ad.app_ad.mandatory_ad_text": "", "ad_group_ad.ad.app_ad.youtube_videos": [], "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.value_per_current_model_attributed_conversion": 0.0, "metrics.video_quartile_p100_rate": 0.0, "metrics.video_quartile_p25_rate": 0.0, "metrics.video_quartile_p50_rate": 0.0, "metrics.video_quartile_p75_rate": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2023-08-28", "segments.year": 2023}, "emitted_at": 1695082682059} +{"stream": "ad_group_ad_report", "data": {"ad_group_ad.ad.legacy_responsive_display_ad.accent_color": "", "ad_group.id": 144799120517, "customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 801880.5223334146, "metrics.active_view_ctr": 0.00183060776177691, "metrics.active_view_impressions": 16388, "metrics.active_view_measurability": 1.0, "metrics.active_view_measurable_cost_micros": 13141218, "metrics.active_view_measurable_impressions": 17733, "metrics.active_view_viewability": 0.9241527096373992, "ad_group_ad.ad_group": "customers/4651612872/adGroups/144799120517", "ad_group.name": "Ad group 1", "ad_group.status": "ENABLED", "segments.ad_network_type": "CONTENT", "ad_group_ad.ad_strength": "AVERAGE", "ad_group_ad.ad.type": "RESPONSIVE_DISPLAY_AD", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "ad_group_ad.ad.legacy_responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.added_by_google_ads": false, "metrics.average_cost": 438040.6, "metrics.average_cpc": 438040.6, "metrics.average_cpe": 0.0, "metrics.average_cpm": 741060.0575198783, "metrics.average_cpv": 0.0, "metrics.average_page_views": 0.0, "metrics.average_time_on_site": 0.0, "ad_group.base_ad_group": "customers/4651612872/adGroups/144799120517", "campaign.base_campaign": "customers/4651612872/campaigns/19410069806", "metrics.bounce_rate": 0.0, "ad_group_ad.ad.legacy_responsive_display_ad.business_name": "", "ad_group_ad.ad.legacy_responsive_display_ad.call_to_action_text": "", "campaign.id": 19410069806, "campaign.name": "Brand awareness and reach-Display-1", "campaign.status": "ENABLED", "metrics.clicks": 30, "ad_group_ad.policy_summary.approval_status": "APPROVED", "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 13141218, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cost_per_current_model_attributed_conversion": 0.0, "ad_group_ad.ad.final_mobile_urls": [], "ad_group_ad.ad.final_urls": ["https://airbyte.com"], "ad_group_ad.ad.tracking_url_template": "", "ad_group_ad.ad.url_custom_parameters": [], "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.001691761123329386, "metrics.current_model_attributed_conversions_value": 0.0, "metrics.current_model_attributed_conversions": 0.0, "segments.date": "2023-09-01", "segments.day_of_week": "FRIDAY", "ad_group_ad.ad.expanded_text_ad.description": "", "ad_group_ad.ad.text_ad.description1": "", "ad_group_ad.ad.text_ad.description2": "", "ad_group_ad.ad.device_preference": "UNSPECIFIED", "ad_group_ad.ad.display_url": "", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "ad_group_ad.ad.legacy_responsive_display_ad.logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.marketing_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_marketing_image": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description": "", "ad_group_ad.ad.expanded_text_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.headline_part3": "", "customer.id": 4651612872, "ad_group_ad.ad.legacy_responsive_display_ad.format_setting": "UNSPECIFIED", "metrics.gmail_forwards": 0, "metrics.gmail_saves": 0, "metrics.gmail_secondary_clicks": 0, "ad_group_ad.ad.text_ad.headline": "", "ad_group_ad.ad.expanded_text_ad.headline_part1": "", "ad_group_ad.ad.expanded_text_ad.headline_part2": "", "ad_group_ad.ad.id": 643022056303, "ad_group_ad.ad.image_ad.image_url": "", "ad_group_ad.ad.image_ad.pixel_height": 0, "ad_group_ad.ad.image_ad.pixel_width": 0, "ad_group_ad.ad.image_ad.mime_type": "UNSPECIFIED", "ad_group_ad.ad.image_ad.name": "", "metrics.impressions": 17733, "metrics.interaction_rate": 0.001691761123329386, "metrics.interaction_event_types": ["InteractionEventType.CLICK"], "metrics.interactions": 30, "ad_group_ad.ad.legacy_responsive_display_ad.long_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.main_color": "", "segments.month": "2023-09-01", "ad_group_ad.ad.responsive_display_ad.accent_color": "", "ad_group_ad.ad.responsive_display_ad.allow_flexible_color": true, "ad_group_ad.ad.responsive_display_ad.business_name": "c", "ad_group_ad.ad.responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.responsive_display_ad.descriptions": ["text: \"Airbyte | Open-Source Data Integration Platform | ELT tool\"\n", "text: \"\u30c6\u30ec\u30d3CM\u3067\u8a71\u984c\"\n", "text: \"modern ELT\"\n"], "ad_group_ad.ad.responsive_display_ad.price_prefix": "", "ad_group_ad.ad.responsive_display_ad.promo_text": "", "ad_group_ad.ad.responsive_display_ad.format_setting": "ALL_FORMATS", "ad_group_ad.ad.responsive_display_ad.headlines": ["text: \"ELT\"\n"], "ad_group_ad.ad.responsive_display_ad.logo_images": [], "ad_group_ad.ad.responsive_display_ad.square_logo_images": [], "ad_group_ad.ad.responsive_display_ad.long_headline": "text: \"ELT data portability\"\n", "ad_group_ad.ad.responsive_display_ad.main_color": "", "ad_group_ad.ad.responsive_display_ad.marketing_images": ["asset: \"customers/4651612872/assets/39906715549\"\n", "asset: \"customers/4651612872/assets/40179016327\"\n"], "ad_group_ad.ad.responsive_display_ad.square_marketing_images": ["asset: \"customers/4651612872/assets/39906715552\"\n", "asset: \"customers/4651612872/assets/40179014782\"\n"], "ad_group_ad.ad.responsive_display_ad.youtube_videos": [], "ad_group_ad.ad.expanded_text_ad.path1": "", "ad_group_ad.ad.expanded_text_ad.path2": "", "metrics.percent_new_visitors": 0.0, "ad_group_ad.ad.legacy_responsive_display_ad.price_prefix": "", "ad_group_ad.ad.legacy_responsive_display_ad.promo_text": "", "segments.quarter": "2023-07-01", "ad_group_ad.ad.responsive_search_ad.descriptions": [], "ad_group_ad.ad.responsive_search_ad.headlines": [], "ad_group_ad.ad.responsive_search_ad.path1": "", "ad_group_ad.ad.responsive_search_ad.path2": "", "ad_group_ad.ad.legacy_responsive_display_ad.short_headline": "", "ad_group_ad.status": "ENABLED", "ad_group_ad.ad.system_managed_resource_source": "UNSPECIFIED", "metrics.top_impression_percentage": 0.0, "ad_group_ad.ad.app_ad.descriptions": [], "ad_group_ad.ad.app_ad.headlines": [], "ad_group_ad.ad.app_ad.html5_media_bundles": [], "ad_group_ad.ad.app_ad.images": [], "ad_group_ad.ad.app_ad.mandatory_ad_text": "", "ad_group_ad.ad.app_ad.youtube_videos": [], "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.value_per_current_model_attributed_conversion": 0.0, "metrics.video_quartile_p100_rate": 0.0, "metrics.video_quartile_p25_rate": 0.0, "metrics.video_quartile_p50_rate": 0.0, "metrics.video_quartile_p75_rate": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2023-08-28", "segments.year": 2023}, "emitted_at": 1695082682069} +{"stream": "ad_group_ad_report", "data": {"ad_group_ad.ad.legacy_responsive_display_ad.accent_color": "", "ad_group.id": 144799120517, "customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 789581.4073226545, "metrics.active_view_ctr": 0.002059496567505721, "metrics.active_view_impressions": 17480, "metrics.active_view_measurability": 1.0, "metrics.active_view_measurable_cost_micros": 13801883, "metrics.active_view_measurable_impressions": 19049, "metrics.active_view_viewability": 0.917633471573311, "ad_group_ad.ad_group": "customers/4651612872/adGroups/144799120517", "ad_group.name": "Ad group 1", "ad_group.status": "ENABLED", "segments.ad_network_type": "CONTENT", "ad_group_ad.ad_strength": "AVERAGE", "ad_group_ad.ad.type": "RESPONSIVE_DISPLAY_AD", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "ad_group_ad.ad.legacy_responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.added_by_google_ads": false, "metrics.average_cost": 383385.6388888889, "metrics.average_cpc": 383385.6388888889, "metrics.average_cpe": 0.0, "metrics.average_cpm": 724546.3278912279, "metrics.average_cpv": 0.0, "metrics.average_page_views": 0.0, "metrics.average_time_on_site": 0.0, "ad_group.base_ad_group": "customers/4651612872/adGroups/144799120517", "campaign.base_campaign": "customers/4651612872/campaigns/19410069806", "metrics.bounce_rate": 0.0, "ad_group_ad.ad.legacy_responsive_display_ad.business_name": "", "ad_group_ad.ad.legacy_responsive_display_ad.call_to_action_text": "", "campaign.id": 19410069806, "campaign.name": "Brand awareness and reach-Display-1", "campaign.status": "ENABLED", "metrics.clicks": 36, "ad_group_ad.policy_summary.approval_status": "APPROVED", "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 13801883, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cost_per_current_model_attributed_conversion": 0.0, "ad_group_ad.ad.final_mobile_urls": [], "ad_group_ad.ad.final_urls": ["https://airbyte.com"], "ad_group_ad.ad.tracking_url_template": "", "ad_group_ad.ad.url_custom_parameters": [], "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0018898629849335923, "metrics.current_model_attributed_conversions_value": 0.0, "metrics.current_model_attributed_conversions": 0.0, "segments.date": "2023-09-02", "segments.day_of_week": "SATURDAY", "ad_group_ad.ad.expanded_text_ad.description": "", "ad_group_ad.ad.text_ad.description1": "", "ad_group_ad.ad.text_ad.description2": "", "ad_group_ad.ad.device_preference": "UNSPECIFIED", "ad_group_ad.ad.display_url": "", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "ad_group_ad.ad.legacy_responsive_display_ad.logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.marketing_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_marketing_image": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description": "", "ad_group_ad.ad.expanded_text_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.headline_part3": "", "customer.id": 4651612872, "ad_group_ad.ad.legacy_responsive_display_ad.format_setting": "UNSPECIFIED", "metrics.gmail_forwards": 0, "metrics.gmail_saves": 0, "metrics.gmail_secondary_clicks": 0, "ad_group_ad.ad.text_ad.headline": "", "ad_group_ad.ad.expanded_text_ad.headline_part1": "", "ad_group_ad.ad.expanded_text_ad.headline_part2": "", "ad_group_ad.ad.id": 643022056303, "ad_group_ad.ad.image_ad.image_url": "", "ad_group_ad.ad.image_ad.pixel_height": 0, "ad_group_ad.ad.image_ad.pixel_width": 0, "ad_group_ad.ad.image_ad.mime_type": "UNSPECIFIED", "ad_group_ad.ad.image_ad.name": "", "metrics.impressions": 19049, "metrics.interaction_rate": 0.0018898629849335923, "metrics.interaction_event_types": ["InteractionEventType.CLICK"], "metrics.interactions": 36, "ad_group_ad.ad.legacy_responsive_display_ad.long_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.main_color": "", "segments.month": "2023-09-01", "ad_group_ad.ad.responsive_display_ad.accent_color": "", "ad_group_ad.ad.responsive_display_ad.allow_flexible_color": true, "ad_group_ad.ad.responsive_display_ad.business_name": "c", "ad_group_ad.ad.responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.responsive_display_ad.descriptions": ["text: \"Airbyte | Open-Source Data Integration Platform | ELT tool\"\n", "text: \"\u30c6\u30ec\u30d3CM\u3067\u8a71\u984c\"\n", "text: \"modern ELT\"\n"], "ad_group_ad.ad.responsive_display_ad.price_prefix": "", "ad_group_ad.ad.responsive_display_ad.promo_text": "", "ad_group_ad.ad.responsive_display_ad.format_setting": "ALL_FORMATS", "ad_group_ad.ad.responsive_display_ad.headlines": ["text: \"ELT\"\n"], "ad_group_ad.ad.responsive_display_ad.logo_images": [], "ad_group_ad.ad.responsive_display_ad.square_logo_images": [], "ad_group_ad.ad.responsive_display_ad.long_headline": "text: \"ELT data portability\"\n", "ad_group_ad.ad.responsive_display_ad.main_color": "", "ad_group_ad.ad.responsive_display_ad.marketing_images": ["asset: \"customers/4651612872/assets/39906715549\"\n", "asset: \"customers/4651612872/assets/40179016327\"\n"], "ad_group_ad.ad.responsive_display_ad.square_marketing_images": ["asset: \"customers/4651612872/assets/39906715552\"\n", "asset: \"customers/4651612872/assets/40179014782\"\n"], "ad_group_ad.ad.responsive_display_ad.youtube_videos": [], "ad_group_ad.ad.expanded_text_ad.path1": "", "ad_group_ad.ad.expanded_text_ad.path2": "", "metrics.percent_new_visitors": 0.0, "ad_group_ad.ad.legacy_responsive_display_ad.price_prefix": "", "ad_group_ad.ad.legacy_responsive_display_ad.promo_text": "", "segments.quarter": "2023-07-01", "ad_group_ad.ad.responsive_search_ad.descriptions": [], "ad_group_ad.ad.responsive_search_ad.headlines": [], "ad_group_ad.ad.responsive_search_ad.path1": "", "ad_group_ad.ad.responsive_search_ad.path2": "", "ad_group_ad.ad.legacy_responsive_display_ad.short_headline": "", "ad_group_ad.status": "ENABLED", "ad_group_ad.ad.system_managed_resource_source": "UNSPECIFIED", "metrics.top_impression_percentage": 0.0, "ad_group_ad.ad.app_ad.descriptions": [], "ad_group_ad.ad.app_ad.headlines": [], "ad_group_ad.ad.app_ad.html5_media_bundles": [], "ad_group_ad.ad.app_ad.images": [], "ad_group_ad.ad.app_ad.mandatory_ad_text": "", "ad_group_ad.ad.app_ad.youtube_videos": [], "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.value_per_current_model_attributed_conversion": 0.0, "metrics.video_quartile_p100_rate": 0.0, "metrics.video_quartile_p25_rate": 0.0, "metrics.video_quartile_p50_rate": 0.0, "metrics.video_quartile_p75_rate": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2023-08-28", "segments.year": 2023}, "emitted_at": 1695082682073} +{"stream": "ad_group_ads", "data": {"ad_group_ad.ad.added_by_google_ads": false, "ad_group_ad.ad.app_ad.descriptions": [], "ad_group_ad.ad.app_ad.headlines": [], "ad_group_ad.ad.app_ad.html5_media_bundles": [], "ad_group_ad.ad.app_ad.images": [], "ad_group_ad.ad.app_ad.mandatory_ad_text": "", "ad_group_ad.ad.app_ad.youtube_videos": [], "ad_group_ad.ad.app_engagement_ad.descriptions": [], "ad_group_ad.ad.app_engagement_ad.headlines": [], "ad_group_ad.ad.app_engagement_ad.images": [], "ad_group_ad.ad.app_engagement_ad.videos": [], "ad_group_ad.ad.call_ad.business_name": "", "ad_group_ad.ad.call_ad.call_tracked": false, "ad_group_ad.ad.call_ad.conversion_action": "", "ad_group_ad.ad.call_ad.conversion_reporting_state": "UNSPECIFIED", "ad_group_ad.ad.call_ad.country_code": "", "ad_group_ad.ad.call_ad.description1": "", "ad_group_ad.ad.call_ad.description2": "", "ad_group_ad.ad.call_ad.disable_call_conversion": false, "ad_group_ad.ad.call_ad.headline1": "", "ad_group_ad.ad.call_ad.headline2": "", "ad_group_ad.ad.call_ad.path1": "", "ad_group_ad.ad.call_ad.path2": "", "ad_group_ad.ad.call_ad.phone_number": "", "ad_group_ad.ad.call_ad.phone_number_verification_url": "", "ad_group_ad.ad.device_preference": "UNSPECIFIED", "ad_group_ad.ad.display_upload_ad.display_upload_product_type": "UNSPECIFIED", "ad_group_ad.ad.display_upload_ad.media_bundle": "", "ad_group_ad.ad.display_url": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.description": "", "ad_group_ad.ad.expanded_text_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.headline_part1": "", "ad_group_ad.ad.expanded_text_ad.headline_part2": "", "ad_group_ad.ad.expanded_text_ad.headline_part3": "", "ad_group_ad.ad.expanded_text_ad.path1": "", "ad_group_ad.ad.expanded_text_ad.path2": "", "ad_group_ad.ad.final_app_urls": [], "ad_group_ad.ad.final_mobile_urls": [], "ad_group_ad.ad.final_url_suffix": "", "ad_group_ad.ad.final_urls": ["https://airbyte.com"], "ad_group_ad.ad.hotel_ad": "", "ad_group_ad.ad.id": 643022056303, "ad_group_ad.ad.image_ad.image_url": "", "ad_group_ad.ad.image_ad.mime_type": "UNSPECIFIED", "ad_group_ad.ad.image_ad.name": "", "ad_group_ad.ad.image_ad.pixel_height": 0, "ad_group_ad.ad.image_ad.pixel_width": 0, "ad_group_ad.ad.image_ad.preview_image_url": "", "ad_group_ad.ad.image_ad.preview_pixel_height": 0, "ad_group_ad.ad.image_ad.preview_pixel_width": 0, "ad_group_ad.ad.legacy_app_install_ad": "", "ad_group_ad.ad.legacy_responsive_display_ad.accent_color": "", "ad_group_ad.ad.legacy_responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.legacy_responsive_display_ad.business_name": "", "ad_group_ad.ad.legacy_responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.legacy_responsive_display_ad.description": "", "ad_group_ad.ad.legacy_responsive_display_ad.format_setting": "UNSPECIFIED", "ad_group_ad.ad.legacy_responsive_display_ad.logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.long_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.main_color": "", "ad_group_ad.ad.legacy_responsive_display_ad.marketing_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.price_prefix": "", "ad_group_ad.ad.legacy_responsive_display_ad.promo_text": "", "ad_group_ad.ad.legacy_responsive_display_ad.short_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_marketing_image": "", "ad_group_ad.ad.local_ad.call_to_actions": [], "ad_group_ad.ad.local_ad.descriptions": [], "ad_group_ad.ad.local_ad.headlines": [], "ad_group_ad.ad.local_ad.logo_images": [], "ad_group_ad.ad.local_ad.marketing_images": [], "ad_group_ad.ad.local_ad.path1": "", "ad_group_ad.ad.local_ad.path2": "", "ad_group_ad.ad.local_ad.videos": [], "ad_group_ad.ad.name": "", "ad_group_ad.ad.resource_name": "customers/4651612872/ads/643022056303", "ad_group_ad.ad.responsive_display_ad.accent_color": "", "ad_group_ad.ad.responsive_display_ad.allow_flexible_color": true, "ad_group_ad.ad.responsive_display_ad.business_name": "c", "ad_group_ad.ad.responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.responsive_display_ad.control_spec.enable_asset_enhancements": true, "ad_group_ad.ad.responsive_display_ad.control_spec.enable_autogen_video": true, "ad_group_ad.ad.responsive_display_ad.descriptions": ["text: \"Airbyte | Open-Source Data Integration Platform | ELT tool\"\n", "text: \"\u30c6\u30ec\u30d3CM\u3067\u8a71\u984c\"\n", "text: \"modern ELT\"\n"], "ad_group_ad.ad.responsive_display_ad.format_setting": "ALL_FORMATS", "ad_group_ad.ad.responsive_display_ad.headlines": ["text: \"ELT\"\n"], "ad_group_ad.ad.responsive_display_ad.logo_images": [], "ad_group_ad.ad.responsive_display_ad.long_headline": "text: \"ELT data portability\"\n", "ad_group_ad.ad.responsive_display_ad.main_color": "", "ad_group_ad.ad.responsive_display_ad.marketing_images": ["asset: \"customers/4651612872/assets/39906715549\"\n", "asset: \"customers/4651612872/assets/40179016327\"\n"], "ad_group_ad.ad.responsive_display_ad.price_prefix": "", "ad_group_ad.ad.responsive_display_ad.promo_text": "", "ad_group_ad.ad.responsive_display_ad.square_logo_images": [], "ad_group_ad.ad.responsive_display_ad.square_marketing_images": ["asset: \"customers/4651612872/assets/39906715552\"\n", "asset: \"customers/4651612872/assets/40179014782\"\n"], "ad_group_ad.ad.responsive_display_ad.youtube_videos": [], "ad_group_ad.ad.responsive_search_ad.descriptions": [], "ad_group_ad.ad.responsive_search_ad.headlines": [], "ad_group_ad.ad.responsive_search_ad.path1": "", "ad_group_ad.ad.responsive_search_ad.path2": "", "ad_group_ad.ad.shopping_comparison_listing_ad.headline": "", "ad_group_ad.ad.shopping_product_ad": "", "ad_group_ad.ad.shopping_smart_ad": "", "ad_group_ad.ad.smart_campaign_ad.descriptions": [], "ad_group_ad.ad.smart_campaign_ad.headlines": [], "ad_group_ad.ad.system_managed_resource_source": "UNSPECIFIED", "ad_group_ad.ad.text_ad.description1": "", "ad_group_ad.ad.text_ad.description2": "", "ad_group_ad.ad.text_ad.headline": "", "ad_group_ad.ad.tracking_url_template": "", "ad_group_ad.ad.type": "RESPONSIVE_DISPLAY_AD", "ad_group_ad.ad.url_collections": [], "ad_group_ad.ad.url_custom_parameters": [], "ad_group_ad.ad.video_ad.in_feed.description1": "", "ad_group_ad.ad.video_ad.in_feed.description2": "", "ad_group_ad.ad.video_ad.in_feed.headline": "", "ad_group_ad.ad.video_ad.in_stream.action_button_label": "", "ad_group_ad.ad.video_ad.in_stream.action_headline": "", "ad_group_ad.ad.video_ad.out_stream.description": "", "ad_group_ad.ad.video_ad.out_stream.headline": "", "ad_group_ad.ad.video_responsive_ad.call_to_actions": [], "ad_group_ad.ad.video_responsive_ad.companion_banners": [], "ad_group_ad.ad.video_responsive_ad.descriptions": [], "ad_group_ad.ad.video_responsive_ad.headlines": [], "ad_group_ad.ad.video_responsive_ad.long_headlines": [], "ad_group_ad.ad.video_responsive_ad.videos": [], "ad_group_ad.ad_group": "customers/4651612872/adGroups/144799120517", "ad_group_ad.ad_strength": "AVERAGE", "ad_group_ad.labels": [], "ad_group_ad.policy_summary.approval_status": "APPROVED", "ad_group_ad.policy_summary.policy_topic_entries": [], "ad_group_ad.policy_summary.review_status": "REVIEWED", "ad_group_ad.resource_name": "customers/4651612872/adGroupAds/144799120517~643022056303", "ad_group_ad.status": "ENABLED", "segments.date": "2023-08-31"}, "emitted_at": 1695082692815} +{"stream": "ad_group_ads", "data": {"ad_group_ad.ad.added_by_google_ads": false, "ad_group_ad.ad.app_ad.descriptions": [], "ad_group_ad.ad.app_ad.headlines": [], "ad_group_ad.ad.app_ad.html5_media_bundles": [], "ad_group_ad.ad.app_ad.images": [], "ad_group_ad.ad.app_ad.mandatory_ad_text": "", "ad_group_ad.ad.app_ad.youtube_videos": [], "ad_group_ad.ad.app_engagement_ad.descriptions": [], "ad_group_ad.ad.app_engagement_ad.headlines": [], "ad_group_ad.ad.app_engagement_ad.images": [], "ad_group_ad.ad.app_engagement_ad.videos": [], "ad_group_ad.ad.call_ad.business_name": "", "ad_group_ad.ad.call_ad.call_tracked": false, "ad_group_ad.ad.call_ad.conversion_action": "", "ad_group_ad.ad.call_ad.conversion_reporting_state": "UNSPECIFIED", "ad_group_ad.ad.call_ad.country_code": "", "ad_group_ad.ad.call_ad.description1": "", "ad_group_ad.ad.call_ad.description2": "", "ad_group_ad.ad.call_ad.disable_call_conversion": false, "ad_group_ad.ad.call_ad.headline1": "", "ad_group_ad.ad.call_ad.headline2": "", "ad_group_ad.ad.call_ad.path1": "", "ad_group_ad.ad.call_ad.path2": "", "ad_group_ad.ad.call_ad.phone_number": "", "ad_group_ad.ad.call_ad.phone_number_verification_url": "", "ad_group_ad.ad.device_preference": "UNSPECIFIED", "ad_group_ad.ad.display_upload_ad.display_upload_product_type": "UNSPECIFIED", "ad_group_ad.ad.display_upload_ad.media_bundle": "", "ad_group_ad.ad.display_url": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.description": "", "ad_group_ad.ad.expanded_text_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.headline_part1": "", "ad_group_ad.ad.expanded_text_ad.headline_part2": "", "ad_group_ad.ad.expanded_text_ad.headline_part3": "", "ad_group_ad.ad.expanded_text_ad.path1": "", "ad_group_ad.ad.expanded_text_ad.path2": "", "ad_group_ad.ad.final_app_urls": [], "ad_group_ad.ad.final_mobile_urls": [], "ad_group_ad.ad.final_url_suffix": "", "ad_group_ad.ad.final_urls": ["https://airbyte.com"], "ad_group_ad.ad.hotel_ad": "", "ad_group_ad.ad.id": 643022056303, "ad_group_ad.ad.image_ad.image_url": "", "ad_group_ad.ad.image_ad.mime_type": "UNSPECIFIED", "ad_group_ad.ad.image_ad.name": "", "ad_group_ad.ad.image_ad.pixel_height": 0, "ad_group_ad.ad.image_ad.pixel_width": 0, "ad_group_ad.ad.image_ad.preview_image_url": "", "ad_group_ad.ad.image_ad.preview_pixel_height": 0, "ad_group_ad.ad.image_ad.preview_pixel_width": 0, "ad_group_ad.ad.legacy_app_install_ad": "", "ad_group_ad.ad.legacy_responsive_display_ad.accent_color": "", "ad_group_ad.ad.legacy_responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.legacy_responsive_display_ad.business_name": "", "ad_group_ad.ad.legacy_responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.legacy_responsive_display_ad.description": "", "ad_group_ad.ad.legacy_responsive_display_ad.format_setting": "UNSPECIFIED", "ad_group_ad.ad.legacy_responsive_display_ad.logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.long_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.main_color": "", "ad_group_ad.ad.legacy_responsive_display_ad.marketing_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.price_prefix": "", "ad_group_ad.ad.legacy_responsive_display_ad.promo_text": "", "ad_group_ad.ad.legacy_responsive_display_ad.short_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_marketing_image": "", "ad_group_ad.ad.local_ad.call_to_actions": [], "ad_group_ad.ad.local_ad.descriptions": [], "ad_group_ad.ad.local_ad.headlines": [], "ad_group_ad.ad.local_ad.logo_images": [], "ad_group_ad.ad.local_ad.marketing_images": [], "ad_group_ad.ad.local_ad.path1": "", "ad_group_ad.ad.local_ad.path2": "", "ad_group_ad.ad.local_ad.videos": [], "ad_group_ad.ad.name": "", "ad_group_ad.ad.resource_name": "customers/4651612872/ads/643022056303", "ad_group_ad.ad.responsive_display_ad.accent_color": "", "ad_group_ad.ad.responsive_display_ad.allow_flexible_color": true, "ad_group_ad.ad.responsive_display_ad.business_name": "c", "ad_group_ad.ad.responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.responsive_display_ad.control_spec.enable_asset_enhancements": true, "ad_group_ad.ad.responsive_display_ad.control_spec.enable_autogen_video": true, "ad_group_ad.ad.responsive_display_ad.descriptions": ["text: \"Airbyte | Open-Source Data Integration Platform | ELT tool\"\n", "text: \"\u30c6\u30ec\u30d3CM\u3067\u8a71\u984c\"\n", "text: \"modern ELT\"\n"], "ad_group_ad.ad.responsive_display_ad.format_setting": "ALL_FORMATS", "ad_group_ad.ad.responsive_display_ad.headlines": ["text: \"ELT\"\n"], "ad_group_ad.ad.responsive_display_ad.logo_images": [], "ad_group_ad.ad.responsive_display_ad.long_headline": "text: \"ELT data portability\"\n", "ad_group_ad.ad.responsive_display_ad.main_color": "", "ad_group_ad.ad.responsive_display_ad.marketing_images": ["asset: \"customers/4651612872/assets/39906715549\"\n", "asset: \"customers/4651612872/assets/40179016327\"\n"], "ad_group_ad.ad.responsive_display_ad.price_prefix": "", "ad_group_ad.ad.responsive_display_ad.promo_text": "", "ad_group_ad.ad.responsive_display_ad.square_logo_images": [], "ad_group_ad.ad.responsive_display_ad.square_marketing_images": ["asset: \"customers/4651612872/assets/39906715552\"\n", "asset: \"customers/4651612872/assets/40179014782\"\n"], "ad_group_ad.ad.responsive_display_ad.youtube_videos": [], "ad_group_ad.ad.responsive_search_ad.descriptions": [], "ad_group_ad.ad.responsive_search_ad.headlines": [], "ad_group_ad.ad.responsive_search_ad.path1": "", "ad_group_ad.ad.responsive_search_ad.path2": "", "ad_group_ad.ad.shopping_comparison_listing_ad.headline": "", "ad_group_ad.ad.shopping_product_ad": "", "ad_group_ad.ad.shopping_smart_ad": "", "ad_group_ad.ad.smart_campaign_ad.descriptions": [], "ad_group_ad.ad.smart_campaign_ad.headlines": [], "ad_group_ad.ad.system_managed_resource_source": "UNSPECIFIED", "ad_group_ad.ad.text_ad.description1": "", "ad_group_ad.ad.text_ad.description2": "", "ad_group_ad.ad.text_ad.headline": "", "ad_group_ad.ad.tracking_url_template": "", "ad_group_ad.ad.type": "RESPONSIVE_DISPLAY_AD", "ad_group_ad.ad.url_collections": [], "ad_group_ad.ad.url_custom_parameters": [], "ad_group_ad.ad.video_ad.in_feed.description1": "", "ad_group_ad.ad.video_ad.in_feed.description2": "", "ad_group_ad.ad.video_ad.in_feed.headline": "", "ad_group_ad.ad.video_ad.in_stream.action_button_label": "", "ad_group_ad.ad.video_ad.in_stream.action_headline": "", "ad_group_ad.ad.video_ad.out_stream.description": "", "ad_group_ad.ad.video_ad.out_stream.headline": "", "ad_group_ad.ad.video_responsive_ad.call_to_actions": [], "ad_group_ad.ad.video_responsive_ad.companion_banners": [], "ad_group_ad.ad.video_responsive_ad.descriptions": [], "ad_group_ad.ad.video_responsive_ad.headlines": [], "ad_group_ad.ad.video_responsive_ad.long_headlines": [], "ad_group_ad.ad.video_responsive_ad.videos": [], "ad_group_ad.ad_group": "customers/4651612872/adGroups/144799120517", "ad_group_ad.ad_strength": "AVERAGE", "ad_group_ad.labels": [], "ad_group_ad.policy_summary.approval_status": "APPROVED", "ad_group_ad.policy_summary.policy_topic_entries": [], "ad_group_ad.policy_summary.review_status": "REVIEWED", "ad_group_ad.resource_name": "customers/4651612872/adGroupAds/144799120517~643022056303", "ad_group_ad.status": "ENABLED", "segments.date": "2023-09-01"}, "emitted_at": 1695082692822} +{"stream": "ad_group_ads", "data": {"ad_group_ad.ad.added_by_google_ads": false, "ad_group_ad.ad.app_ad.descriptions": [], "ad_group_ad.ad.app_ad.headlines": [], "ad_group_ad.ad.app_ad.html5_media_bundles": [], "ad_group_ad.ad.app_ad.images": [], "ad_group_ad.ad.app_ad.mandatory_ad_text": "", "ad_group_ad.ad.app_ad.youtube_videos": [], "ad_group_ad.ad.app_engagement_ad.descriptions": [], "ad_group_ad.ad.app_engagement_ad.headlines": [], "ad_group_ad.ad.app_engagement_ad.images": [], "ad_group_ad.ad.app_engagement_ad.videos": [], "ad_group_ad.ad.call_ad.business_name": "", "ad_group_ad.ad.call_ad.call_tracked": false, "ad_group_ad.ad.call_ad.conversion_action": "", "ad_group_ad.ad.call_ad.conversion_reporting_state": "UNSPECIFIED", "ad_group_ad.ad.call_ad.country_code": "", "ad_group_ad.ad.call_ad.description1": "", "ad_group_ad.ad.call_ad.description2": "", "ad_group_ad.ad.call_ad.disable_call_conversion": false, "ad_group_ad.ad.call_ad.headline1": "", "ad_group_ad.ad.call_ad.headline2": "", "ad_group_ad.ad.call_ad.path1": "", "ad_group_ad.ad.call_ad.path2": "", "ad_group_ad.ad.call_ad.phone_number": "", "ad_group_ad.ad.call_ad.phone_number_verification_url": "", "ad_group_ad.ad.device_preference": "UNSPECIFIED", "ad_group_ad.ad.display_upload_ad.display_upload_product_type": "UNSPECIFIED", "ad_group_ad.ad.display_upload_ad.media_bundle": "", "ad_group_ad.ad.display_url": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description": "", "ad_group_ad.ad.expanded_dynamic_search_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.description": "", "ad_group_ad.ad.expanded_text_ad.description2": "", "ad_group_ad.ad.expanded_text_ad.headline_part1": "", "ad_group_ad.ad.expanded_text_ad.headline_part2": "", "ad_group_ad.ad.expanded_text_ad.headline_part3": "", "ad_group_ad.ad.expanded_text_ad.path1": "", "ad_group_ad.ad.expanded_text_ad.path2": "", "ad_group_ad.ad.final_app_urls": [], "ad_group_ad.ad.final_mobile_urls": [], "ad_group_ad.ad.final_url_suffix": "", "ad_group_ad.ad.final_urls": ["https://airbyte.com"], "ad_group_ad.ad.hotel_ad": "", "ad_group_ad.ad.id": 643022056303, "ad_group_ad.ad.image_ad.image_url": "", "ad_group_ad.ad.image_ad.mime_type": "UNSPECIFIED", "ad_group_ad.ad.image_ad.name": "", "ad_group_ad.ad.image_ad.pixel_height": 0, "ad_group_ad.ad.image_ad.pixel_width": 0, "ad_group_ad.ad.image_ad.preview_image_url": "", "ad_group_ad.ad.image_ad.preview_pixel_height": 0, "ad_group_ad.ad.image_ad.preview_pixel_width": 0, "ad_group_ad.ad.legacy_app_install_ad": "", "ad_group_ad.ad.legacy_responsive_display_ad.accent_color": "", "ad_group_ad.ad.legacy_responsive_display_ad.allow_flexible_color": false, "ad_group_ad.ad.legacy_responsive_display_ad.business_name": "", "ad_group_ad.ad.legacy_responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.legacy_responsive_display_ad.description": "", "ad_group_ad.ad.legacy_responsive_display_ad.format_setting": "UNSPECIFIED", "ad_group_ad.ad.legacy_responsive_display_ad.logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.long_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.main_color": "", "ad_group_ad.ad.legacy_responsive_display_ad.marketing_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.price_prefix": "", "ad_group_ad.ad.legacy_responsive_display_ad.promo_text": "", "ad_group_ad.ad.legacy_responsive_display_ad.short_headline": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_logo_image": "", "ad_group_ad.ad.legacy_responsive_display_ad.square_marketing_image": "", "ad_group_ad.ad.local_ad.call_to_actions": [], "ad_group_ad.ad.local_ad.descriptions": [], "ad_group_ad.ad.local_ad.headlines": [], "ad_group_ad.ad.local_ad.logo_images": [], "ad_group_ad.ad.local_ad.marketing_images": [], "ad_group_ad.ad.local_ad.path1": "", "ad_group_ad.ad.local_ad.path2": "", "ad_group_ad.ad.local_ad.videos": [], "ad_group_ad.ad.name": "", "ad_group_ad.ad.resource_name": "customers/4651612872/ads/643022056303", "ad_group_ad.ad.responsive_display_ad.accent_color": "", "ad_group_ad.ad.responsive_display_ad.allow_flexible_color": true, "ad_group_ad.ad.responsive_display_ad.business_name": "c", "ad_group_ad.ad.responsive_display_ad.call_to_action_text": "", "ad_group_ad.ad.responsive_display_ad.control_spec.enable_asset_enhancements": true, "ad_group_ad.ad.responsive_display_ad.control_spec.enable_autogen_video": true, "ad_group_ad.ad.responsive_display_ad.descriptions": ["text: \"Airbyte | Open-Source Data Integration Platform | ELT tool\"\n", "text: \"\u30c6\u30ec\u30d3CM\u3067\u8a71\u984c\"\n", "text: \"modern ELT\"\n"], "ad_group_ad.ad.responsive_display_ad.format_setting": "ALL_FORMATS", "ad_group_ad.ad.responsive_display_ad.headlines": ["text: \"ELT\"\n"], "ad_group_ad.ad.responsive_display_ad.logo_images": [], "ad_group_ad.ad.responsive_display_ad.long_headline": "text: \"ELT data portability\"\n", "ad_group_ad.ad.responsive_display_ad.main_color": "", "ad_group_ad.ad.responsive_display_ad.marketing_images": ["asset: \"customers/4651612872/assets/39906715549\"\n", "asset: \"customers/4651612872/assets/40179016327\"\n"], "ad_group_ad.ad.responsive_display_ad.price_prefix": "", "ad_group_ad.ad.responsive_display_ad.promo_text": "", "ad_group_ad.ad.responsive_display_ad.square_logo_images": [], "ad_group_ad.ad.responsive_display_ad.square_marketing_images": ["asset: \"customers/4651612872/assets/39906715552\"\n", "asset: \"customers/4651612872/assets/40179014782\"\n"], "ad_group_ad.ad.responsive_display_ad.youtube_videos": [], "ad_group_ad.ad.responsive_search_ad.descriptions": [], "ad_group_ad.ad.responsive_search_ad.headlines": [], "ad_group_ad.ad.responsive_search_ad.path1": "", "ad_group_ad.ad.responsive_search_ad.path2": "", "ad_group_ad.ad.shopping_comparison_listing_ad.headline": "", "ad_group_ad.ad.shopping_product_ad": "", "ad_group_ad.ad.shopping_smart_ad": "", "ad_group_ad.ad.smart_campaign_ad.descriptions": [], "ad_group_ad.ad.smart_campaign_ad.headlines": [], "ad_group_ad.ad.system_managed_resource_source": "UNSPECIFIED", "ad_group_ad.ad.text_ad.description1": "", "ad_group_ad.ad.text_ad.description2": "", "ad_group_ad.ad.text_ad.headline": "", "ad_group_ad.ad.tracking_url_template": "", "ad_group_ad.ad.type": "RESPONSIVE_DISPLAY_AD", "ad_group_ad.ad.url_collections": [], "ad_group_ad.ad.url_custom_parameters": [], "ad_group_ad.ad.video_ad.in_feed.description1": "", "ad_group_ad.ad.video_ad.in_feed.description2": "", "ad_group_ad.ad.video_ad.in_feed.headline": "", "ad_group_ad.ad.video_ad.in_stream.action_button_label": "", "ad_group_ad.ad.video_ad.in_stream.action_headline": "", "ad_group_ad.ad.video_ad.out_stream.description": "", "ad_group_ad.ad.video_ad.out_stream.headline": "", "ad_group_ad.ad.video_responsive_ad.call_to_actions": [], "ad_group_ad.ad.video_responsive_ad.companion_banners": [], "ad_group_ad.ad.video_responsive_ad.descriptions": [], "ad_group_ad.ad.video_responsive_ad.headlines": [], "ad_group_ad.ad.video_responsive_ad.long_headlines": [], "ad_group_ad.ad.video_responsive_ad.videos": [], "ad_group_ad.ad_group": "customers/4651612872/adGroups/144799120517", "ad_group_ad.ad_strength": "AVERAGE", "ad_group_ad.labels": [], "ad_group_ad.policy_summary.approval_status": "APPROVED", "ad_group_ad.policy_summary.policy_topic_entries": [], "ad_group_ad.policy_summary.review_status": "REVIEWED", "ad_group_ad.resource_name": "customers/4651612872/adGroupAds/144799120517~643022056303", "ad_group_ad.status": "ENABLED", "segments.date": "2023-09-02"}, "emitted_at": 1695082692826} +{"stream": "ad_group_bidding_strategies", "data": {"ad_group.id": 144799120517, "bidding_strategy.aligned_campaign_budget_id": 0, "bidding_strategy.campaign_count": 0, "bidding_strategy.currency_code": "", "bidding_strategy.effective_currency_code": "", "bidding_strategy.enhanced_cpc": "", "bidding_strategy.id": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversion_value.target_roas": 0.0, "bidding_strategy.maximize_conversions.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversions.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversions.target_cpa_micros": 0, "bidding_strategy.name": "", "bidding_strategy.non_removed_campaign_count": 0, "bidding_strategy.resource_name": "", "bidding_strategy.status": "UNSPECIFIED", "bidding_strategy.target_cpa.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_cpa.cpc_bid_floor_micros": 0, "bidding_strategy.target_cpa.target_cpa_micros": 0, "bidding_strategy.target_impression_share.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_impression_share.location": "UNSPECIFIED", "bidding_strategy.target_impression_share.location_fraction_micros": 0, "bidding_strategy.target_roas.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_roas.cpc_bid_floor_micros": 0, "bidding_strategy.target_roas.target_roas": 0.0, "bidding_strategy.target_spend.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_spend.target_spend_micros": 0, "bidding_strategy.type": "UNSPECIFIED", "segments.date": "2023-08-31"}, "emitted_at": 1695082710704} +{"stream": "ad_group_bidding_strategies", "data": {"ad_group.id": 144799120517, "bidding_strategy.aligned_campaign_budget_id": 0, "bidding_strategy.campaign_count": 0, "bidding_strategy.currency_code": "", "bidding_strategy.effective_currency_code": "", "bidding_strategy.enhanced_cpc": "", "bidding_strategy.id": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversion_value.target_roas": 0.0, "bidding_strategy.maximize_conversions.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversions.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversions.target_cpa_micros": 0, "bidding_strategy.name": "", "bidding_strategy.non_removed_campaign_count": 0, "bidding_strategy.resource_name": "", "bidding_strategy.status": "UNSPECIFIED", "bidding_strategy.target_cpa.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_cpa.cpc_bid_floor_micros": 0, "bidding_strategy.target_cpa.target_cpa_micros": 0, "bidding_strategy.target_impression_share.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_impression_share.location": "UNSPECIFIED", "bidding_strategy.target_impression_share.location_fraction_micros": 0, "bidding_strategy.target_roas.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_roas.cpc_bid_floor_micros": 0, "bidding_strategy.target_roas.target_roas": 0.0, "bidding_strategy.target_spend.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_spend.target_spend_micros": 0, "bidding_strategy.type": "UNSPECIFIED", "segments.date": "2023-09-01"}, "emitted_at": 1695082710711} +{"stream": "ad_group_bidding_strategies", "data": {"ad_group.id": 144799120517, "bidding_strategy.aligned_campaign_budget_id": 0, "bidding_strategy.campaign_count": 0, "bidding_strategy.currency_code": "", "bidding_strategy.effective_currency_code": "", "bidding_strategy.enhanced_cpc": "", "bidding_strategy.id": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversion_value.target_roas": 0.0, "bidding_strategy.maximize_conversions.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversions.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversions.target_cpa_micros": 0, "bidding_strategy.name": "", "bidding_strategy.non_removed_campaign_count": 0, "bidding_strategy.resource_name": "", "bidding_strategy.status": "UNSPECIFIED", "bidding_strategy.target_cpa.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_cpa.cpc_bid_floor_micros": 0, "bidding_strategy.target_cpa.target_cpa_micros": 0, "bidding_strategy.target_impression_share.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_impression_share.location": "UNSPECIFIED", "bidding_strategy.target_impression_share.location_fraction_micros": 0, "bidding_strategy.target_roas.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_roas.cpc_bid_floor_micros": 0, "bidding_strategy.target_roas.target_roas": 0.0, "bidding_strategy.target_spend.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_spend.target_spend_micros": 0, "bidding_strategy.type": "UNSPECIFIED", "segments.date": "2023-09-02"}, "emitted_at": 1695082710714} +{"stream": "ad_group_criterion_labels", "data": {"ad_group_criterion_label.ad_group_criterion": "customers/4651612872/adGroupCriteria/137051662444~10766861", "ad_group_criterion_label.label": "customers/4651612872/labels/21902092838", "ad_group_criterion_label.resource_name": "customers/4651612872/adGroupCriterionLabels/137051662444~10766861~21902092838", "ad_group_criterion.criterion_id": 10766861}, "emitted_at": 1695082713372} +{"stream": "ad_group_criterion_labels", "data": {"ad_group_criterion_label.ad_group_criterion": "customers/4651612872/adGroupCriteria/137051662444~528912986", "ad_group_criterion_label.label": "customers/4651612872/labels/21906377810", "ad_group_criterion_label.resource_name": "customers/4651612872/adGroupCriterionLabels/137051662444~528912986~21906377810", "ad_group_criterion.criterion_id": 528912986}, "emitted_at": 1695082713374} +{"stream": "ad_group_criterions", "data": {"deleted_at": null, "change_status.last_change_date_time": null, "ad_group.id": 123273719655, "ad_group_criterion.ad_group": "customers/4651612872/adGroups/123273719655", "ad_group_criterion.age_range.type": "UNSPECIFIED", "ad_group_criterion.app_payment_model.type": "UNSPECIFIED", "ad_group_criterion.approval_status": "APPROVED", "ad_group_criterion.audience.audience": "", "ad_group_criterion.bid_modifier": 0.0, "ad_group_criterion.combined_audience.combined_audience": "", "ad_group_criterion.cpc_bid_micros": 0, "ad_group_criterion.cpm_bid_micros": 0, "ad_group_criterion.cpv_bid_micros": 0, "ad_group_criterion.criterion_id": 10515001, "ad_group_criterion.custom_affinity.custom_affinity": "", "ad_group_criterion.custom_audience.custom_audience": "", "ad_group_criterion.custom_intent.custom_intent": "", "ad_group_criterion.disapproval_reasons": [], "ad_group_criterion.display_name": "data warehouses", "ad_group_criterion.effective_cpc_bid_micros": 10000, "ad_group_criterion.effective_cpc_bid_source": "AD_GROUP", "ad_group_criterion.effective_cpm_bid_micros": 10000, "ad_group_criterion.effective_cpm_bid_source": "AD_GROUP", "ad_group_criterion.effective_cpv_bid_micros": 0, "ad_group_criterion.effective_cpv_bid_source": "UNSPECIFIED", "ad_group_criterion.effective_percent_cpc_bid_micros": 0, "ad_group_criterion.effective_percent_cpc_bid_source": "UNSPECIFIED", "ad_group_criterion.final_mobile_urls": [], "ad_group_criterion.final_url_suffix": "", "ad_group_criterion.final_urls": [], "ad_group_criterion.gender.type": "UNSPECIFIED", "ad_group_criterion.income_range.type": "UNSPECIFIED", "ad_group_criterion.keyword.match_type": "BROAD", "ad_group_criterion.keyword.text": "data warehouses", "ad_group_criterion.labels": [], "ad_group_criterion.mobile_app_category.mobile_app_category_constant": "", "ad_group_criterion.mobile_application.app_id": "", "ad_group_criterion.mobile_application.name": "", "ad_group_criterion.negative": false, "ad_group_criterion.parental_status.type": "UNSPECIFIED", "ad_group_criterion.percent_cpc_bid_micros": 0, "ad_group_criterion.placement.url": "", "ad_group_criterion.position_estimates.estimated_add_clicks_at_first_position_cpc": 0, "ad_group_criterion.position_estimates.estimated_add_cost_at_first_position_cpc": 0, "ad_group_criterion.position_estimates.first_page_cpc_micros": 0, "ad_group_criterion.position_estimates.first_position_cpc_micros": 0, "ad_group_criterion.position_estimates.top_of_page_cpc_micros": 0, "ad_group_criterion.quality_info.creative_quality_score": "UNSPECIFIED", "ad_group_criterion.quality_info.post_click_quality_score": "UNSPECIFIED", "ad_group_criterion.quality_info.quality_score": 0, "ad_group_criterion.quality_info.search_predicted_ctr": "UNSPECIFIED", "ad_group_criterion.resource_name": "customers/4651612872/adGroupCriteria/123273719655~10515001", "ad_group_criterion.status": "ENABLED", "ad_group_criterion.system_serving_status": "ELIGIBLE", "ad_group_criterion.topic.path": [], "ad_group_criterion.topic.topic_constant": "", "ad_group_criterion.tracking_url_template": "", "ad_group_criterion.type": "KEYWORD", "ad_group_criterion.url_custom_parameters": [], "ad_group_criterion.user_interest.user_interest_category": "", "ad_group_criterion.user_list.user_list": "", "ad_group_criterion.webpage.conditions": [], "ad_group_criterion.webpage.coverage_percentage": 0.0, "ad_group_criterion.webpage.criterion_name": "", "ad_group_criterion.webpage.sample.sample_urls": [], "ad_group_criterion.youtube_channel.channel_id": "", "ad_group_criterion.youtube_video.video_id": ""}, "emitted_at": 1695082711550} +{"stream": "ad_group_criterions", "data": {"deleted_at": null, "change_status.last_change_date_time": null, "ad_group.id": 123273719655, "ad_group_criterion.ad_group": "customers/4651612872/adGroups/123273719655", "ad_group_criterion.age_range.type": "UNSPECIFIED", "ad_group_criterion.app_payment_model.type": "UNSPECIFIED", "ad_group_criterion.approval_status": "UNSPECIFIED", "ad_group_criterion.audience.audience": "", "ad_group_criterion.bid_modifier": 0.0, "ad_group_criterion.combined_audience.combined_audience": "", "ad_group_criterion.cpc_bid_micros": 0, "ad_group_criterion.cpm_bid_micros": 0, "ad_group_criterion.cpv_bid_micros": 0, "ad_group_criterion.criterion_id": 10683521, "ad_group_criterion.custom_affinity.custom_affinity": "", "ad_group_criterion.custom_audience.custom_audience": "", "ad_group_criterion.custom_intent.custom_intent": "", "ad_group_criterion.disapproval_reasons": [], "ad_group_criterion.display_name": "database software", "ad_group_criterion.effective_cpc_bid_micros": 0, "ad_group_criterion.effective_cpc_bid_source": "UNSPECIFIED", "ad_group_criterion.effective_cpm_bid_micros": 0, "ad_group_criterion.effective_cpm_bid_source": "UNSPECIFIED", "ad_group_criterion.effective_cpv_bid_micros": 0, "ad_group_criterion.effective_cpv_bid_source": "UNSPECIFIED", "ad_group_criterion.effective_percent_cpc_bid_micros": 0, "ad_group_criterion.effective_percent_cpc_bid_source": "UNSPECIFIED", "ad_group_criterion.final_mobile_urls": [], "ad_group_criterion.final_url_suffix": "", "ad_group_criterion.final_urls": [], "ad_group_criterion.gender.type": "UNSPECIFIED", "ad_group_criterion.income_range.type": "UNSPECIFIED", "ad_group_criterion.keyword.match_type": "BROAD", "ad_group_criterion.keyword.text": "database software", "ad_group_criterion.labels": [], "ad_group_criterion.mobile_app_category.mobile_app_category_constant": "", "ad_group_criterion.mobile_application.app_id": "", "ad_group_criterion.mobile_application.name": "", "ad_group_criterion.negative": false, "ad_group_criterion.parental_status.type": "UNSPECIFIED", "ad_group_criterion.percent_cpc_bid_micros": 0, "ad_group_criterion.placement.url": "", "ad_group_criterion.position_estimates.estimated_add_clicks_at_first_position_cpc": 0, "ad_group_criterion.position_estimates.estimated_add_cost_at_first_position_cpc": 0, "ad_group_criterion.position_estimates.first_page_cpc_micros": 0, "ad_group_criterion.position_estimates.first_position_cpc_micros": 0, "ad_group_criterion.position_estimates.top_of_page_cpc_micros": 0, "ad_group_criterion.quality_info.creative_quality_score": "UNSPECIFIED", "ad_group_criterion.quality_info.post_click_quality_score": "UNSPECIFIED", "ad_group_criterion.quality_info.quality_score": 0, "ad_group_criterion.quality_info.search_predicted_ctr": "UNSPECIFIED", "ad_group_criterion.resource_name": "customers/4651612872/adGroupCriteria/123273719655~10683521", "ad_group_criterion.status": "REMOVED", "ad_group_criterion.system_serving_status": "UNSPECIFIED", "ad_group_criterion.topic.path": [], "ad_group_criterion.topic.topic_constant": "", "ad_group_criterion.tracking_url_template": "", "ad_group_criterion.type": "KEYWORD", "ad_group_criterion.url_custom_parameters": [], "ad_group_criterion.user_interest.user_interest_category": "", "ad_group_criterion.user_list.user_list": "", "ad_group_criterion.webpage.conditions": [], "ad_group_criterion.webpage.coverage_percentage": 0.0, "ad_group_criterion.webpage.criterion_name": "", "ad_group_criterion.webpage.sample.sample_urls": [], "ad_group_criterion.youtube_channel.channel_id": "", "ad_group_criterion.youtube_video.video_id": ""}, "emitted_at": 1695082711557} +{"stream": "ad_group_criterions", "data": {"deleted_at": null, "change_status.last_change_date_time": null, "ad_group.id": 123273719655, "ad_group_criterion.ad_group": "customers/4651612872/adGroups/123273719655", "ad_group_criterion.age_range.type": "UNSPECIFIED", "ad_group_criterion.app_payment_model.type": "UNSPECIFIED", "ad_group_criterion.approval_status": "APPROVED", "ad_group_criterion.audience.audience": "", "ad_group_criterion.bid_modifier": 0.0, "ad_group_criterion.combined_audience.combined_audience": "", "ad_group_criterion.cpc_bid_micros": 0, "ad_group_criterion.cpm_bid_micros": 0, "ad_group_criterion.cpv_bid_micros": 0, "ad_group_criterion.criterion_id": 11100571, "ad_group_criterion.custom_affinity.custom_affinity": "", "ad_group_criterion.custom_audience.custom_audience": "", "ad_group_criterion.custom_intent.custom_intent": "", "ad_group_criterion.disapproval_reasons": [], "ad_group_criterion.display_name": "integration software", "ad_group_criterion.effective_cpc_bid_micros": 10000, "ad_group_criterion.effective_cpc_bid_source": "AD_GROUP", "ad_group_criterion.effective_cpm_bid_micros": 10000, "ad_group_criterion.effective_cpm_bid_source": "AD_GROUP", "ad_group_criterion.effective_cpv_bid_micros": 0, "ad_group_criterion.effective_cpv_bid_source": "UNSPECIFIED", "ad_group_criterion.effective_percent_cpc_bid_micros": 0, "ad_group_criterion.effective_percent_cpc_bid_source": "UNSPECIFIED", "ad_group_criterion.final_mobile_urls": [], "ad_group_criterion.final_url_suffix": "", "ad_group_criterion.final_urls": [], "ad_group_criterion.gender.type": "UNSPECIFIED", "ad_group_criterion.income_range.type": "UNSPECIFIED", "ad_group_criterion.keyword.match_type": "BROAD", "ad_group_criterion.keyword.text": "integration software", "ad_group_criterion.labels": [], "ad_group_criterion.mobile_app_category.mobile_app_category_constant": "", "ad_group_criterion.mobile_application.app_id": "", "ad_group_criterion.mobile_application.name": "", "ad_group_criterion.negative": false, "ad_group_criterion.parental_status.type": "UNSPECIFIED", "ad_group_criterion.percent_cpc_bid_micros": 0, "ad_group_criterion.placement.url": "", "ad_group_criterion.position_estimates.estimated_add_clicks_at_first_position_cpc": 0, "ad_group_criterion.position_estimates.estimated_add_cost_at_first_position_cpc": 0, "ad_group_criterion.position_estimates.first_page_cpc_micros": 0, "ad_group_criterion.position_estimates.first_position_cpc_micros": 0, "ad_group_criterion.position_estimates.top_of_page_cpc_micros": 0, "ad_group_criterion.quality_info.creative_quality_score": "UNSPECIFIED", "ad_group_criterion.quality_info.post_click_quality_score": "UNSPECIFIED", "ad_group_criterion.quality_info.quality_score": 0, "ad_group_criterion.quality_info.search_predicted_ctr": "UNSPECIFIED", "ad_group_criterion.resource_name": "customers/4651612872/adGroupCriteria/123273719655~11100571", "ad_group_criterion.status": "ENABLED", "ad_group_criterion.system_serving_status": "ELIGIBLE", "ad_group_criterion.topic.path": [], "ad_group_criterion.topic.topic_constant": "", "ad_group_criterion.tracking_url_template": "", "ad_group_criterion.type": "KEYWORD", "ad_group_criterion.url_custom_parameters": [], "ad_group_criterion.user_interest.user_interest_category": "", "ad_group_criterion.user_list.user_list": "", "ad_group_criterion.webpage.conditions": [], "ad_group_criterion.webpage.coverage_percentage": 0.0, "ad_group_criterion.webpage.criterion_name": "", "ad_group_criterion.webpage.sample.sample_urls": [], "ad_group_criterion.youtube_channel.channel_id": "", "ad_group_criterion.youtube_video.video_id": ""}, "emitted_at": 1695082711560} +{"stream": "ad_group_custom", "data": {"ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n", "targeting_dimension: TOPIC\nbid_only: true\n"], "segments.date": "2023-08-31"}, "emitted_at": 1695082683674} +{"stream": "ad_group_custom", "data": {"ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n", "targeting_dimension: TOPIC\nbid_only: true\n"], "segments.date": "2023-09-01"}, "emitted_at": 1695082683676} +{"stream": "ad_group_custom", "data": {"ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n", "targeting_dimension: TOPIC\nbid_only: true\n"], "segments.date": "2023-09-02"}, "emitted_at": 1695082683677} +{"stream": "ad_group_labels", "data": {"ad_group.resource_name": "customers/4651612872/adGroups/123273719655", "ad_group_label.resource_name": "customers/4651612872/adGroupLabels/123273719655~21585034471", "label.name": "edgao-example-label", "label.resource_name": "customers/4651612872/labels/21585034471"}, "emitted_at": 1695082701095} +{"stream": "ad_group_labels", "data": {"ad_group.resource_name": "customers/4651612872/adGroups/138643385242", "ad_group_label.resource_name": "customers/4651612872/adGroupLabels/138643385242~21585034471", "label.name": "edgao-example-label", "label.resource_name": "customers/4651612872/labels/21585034471"}, "emitted_at": 1695082701096} +{"stream": "ad_group_labels", "data": {"ad_group.resource_name": "customers/4651612872/adGroups/137020701042", "ad_group_label.resource_name": "customers/4651612872/adGroupLabels/137020701042~21906377810", "label.name": "Test Delete label customer", "label.resource_name": "customers/4651612872/labels/21906377810"}, "emitted_at": 1695082701096} +{"stream": "ad_groups", "data": {"ad_group.ad_rotation_mode": "UNSPECIFIED", "ad_group.base_ad_group": "customers/4651612872/adGroups/144799120517", "ad_group.campaign": "customers/4651612872/campaigns/19410069806", "ad_group.cpc_bid_micros": 10000, "ad_group.cpm_bid_micros": 2000000, "ad_group.cpv_bid_micros": 0, "ad_group.display_custom_bid_dimension": "UNSPECIFIED", "ad_group.effective_target_cpa_micros": 0, "ad_group.effective_target_cpa_source": "UNSPECIFIED", "ad_group.effective_target_roas": 0.0, "ad_group.effective_target_roas_source": "UNSPECIFIED", "ad_group.excluded_parent_asset_field_types": [], "ad_group.optimized_targeting_enabled": true, "ad_group.final_url_suffix": "", "ad_group.id": 144799120517, "ad_group.labels": [], "ad_group.name": "Ad group 1", "ad_group.percent_cpc_bid_micros": 0, "ad_group.resource_name": "customers/4651612872/adGroups/144799120517", "ad_group.status": "ENABLED", "ad_group.target_cpa_micros": 0, "ad_group.target_cpm_micros": 10000, "ad_group.target_roas": 0.0, "ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n", "targeting_dimension: TOPIC\nbid_only: true\n"], "ad_group.tracking_url_template": "", "ad_group.type": "DISPLAY_STANDARD", "ad_group.url_custom_parameters": [], "segments.date": "2023-08-31"}, "emitted_at": 1695082693264} +{"stream": "ad_groups", "data": {"ad_group.ad_rotation_mode": "UNSPECIFIED", "ad_group.base_ad_group": "customers/4651612872/adGroups/144799120517", "ad_group.campaign": "customers/4651612872/campaigns/19410069806", "ad_group.cpc_bid_micros": 10000, "ad_group.cpm_bid_micros": 2000000, "ad_group.cpv_bid_micros": 0, "ad_group.display_custom_bid_dimension": "UNSPECIFIED", "ad_group.effective_target_cpa_micros": 0, "ad_group.effective_target_cpa_source": "UNSPECIFIED", "ad_group.effective_target_roas": 0.0, "ad_group.effective_target_roas_source": "UNSPECIFIED", "ad_group.excluded_parent_asset_field_types": [], "ad_group.optimized_targeting_enabled": true, "ad_group.final_url_suffix": "", "ad_group.id": 144799120517, "ad_group.labels": [], "ad_group.name": "Ad group 1", "ad_group.percent_cpc_bid_micros": 0, "ad_group.resource_name": "customers/4651612872/adGroups/144799120517", "ad_group.status": "ENABLED", "ad_group.target_cpa_micros": 0, "ad_group.target_cpm_micros": 10000, "ad_group.target_roas": 0.0, "ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n", "targeting_dimension: TOPIC\nbid_only: true\n"], "ad_group.tracking_url_template": "", "ad_group.type": "DISPLAY_STANDARD", "ad_group.url_custom_parameters": [], "segments.date": "2023-09-01"}, "emitted_at": 1695082693267} +{"stream": "ad_groups", "data": {"ad_group.ad_rotation_mode": "UNSPECIFIED", "ad_group.base_ad_group": "customers/4651612872/adGroups/144799120517", "ad_group.campaign": "customers/4651612872/campaigns/19410069806", "ad_group.cpc_bid_micros": 10000, "ad_group.cpm_bid_micros": 2000000, "ad_group.cpv_bid_micros": 0, "ad_group.display_custom_bid_dimension": "UNSPECIFIED", "ad_group.effective_target_cpa_micros": 0, "ad_group.effective_target_cpa_source": "UNSPECIFIED", "ad_group.effective_target_roas": 0.0, "ad_group.effective_target_roas_source": "UNSPECIFIED", "ad_group.excluded_parent_asset_field_types": [], "ad_group.optimized_targeting_enabled": true, "ad_group.final_url_suffix": "", "ad_group.id": 144799120517, "ad_group.labels": [], "ad_group.name": "Ad group 1", "ad_group.percent_cpc_bid_micros": 0, "ad_group.resource_name": "customers/4651612872/adGroups/144799120517", "ad_group.status": "ENABLED", "ad_group.target_cpa_micros": 0, "ad_group.target_cpm_micros": 10000, "ad_group.target_roas": 0.0, "ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n", "targeting_dimension: TOPIC\nbid_only: true\n"], "ad_group.tracking_url_template": "", "ad_group.type": "DISPLAY_STANDARD", "ad_group.url_custom_parameters": [], "segments.date": "2023-09-02"}, "emitted_at": 1695082693270} +{"stream": "ad_listing_group_criterions", "data": {"deleted_at": null, "change_status.last_change_date_time": null, "ad_group_criterion.resource_name": "customers/4651612872/adGroupCriteria/123273719655~10515001", "ad_group.id": 123273719655, "ad_group_criterion.criterion_id": 10515001, "ad_group_criterion.listing_group.case_value.activity_country.value": "", "ad_group_criterion.listing_group.case_value.activity_id.value": "", "ad_group_criterion.listing_group.case_value.activity_rating.value": 0, "ad_group_criterion.listing_group.case_value.hotel_city.city_criterion": "", "ad_group_criterion.listing_group.case_value.hotel_class.value": 0, "ad_group_criterion.listing_group.case_value.hotel_country_region.country_region_criterion": "", "ad_group_criterion.listing_group.case_value.hotel_id.value": "", "ad_group_criterion.listing_group.case_value.hotel_state.state_criterion": "", "ad_group_criterion.listing_group.case_value.product_bidding_category.id": 0, "ad_group_criterion.listing_group.case_value.product_bidding_category.level": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_brand.value": "", "ad_group_criterion.listing_group.case_value.product_channel.channel": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_channel_exclusivity.channel_exclusivity": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_condition.condition": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_custom_attribute.index": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_custom_attribute.value": "", "ad_group_criterion.listing_group.case_value.product_item_id.value": "", "ad_group_criterion.listing_group.case_value.product_type.level": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_type.value": "", "ad_group_criterion.listing_group.parent_ad_group_criterion": "", "ad_group_criterion.listing_group.type": "UNSPECIFIED"}, "emitted_at": 1695082712683} +{"stream": "ad_listing_group_criterions", "data": {"deleted_at": null, "change_status.last_change_date_time": null, "ad_group_criterion.resource_name": "customers/4651612872/adGroupCriteria/123273719655~10683521", "ad_group.id": 123273719655, "ad_group_criterion.criterion_id": 10683521, "ad_group_criterion.listing_group.case_value.activity_country.value": "", "ad_group_criterion.listing_group.case_value.activity_id.value": "", "ad_group_criterion.listing_group.case_value.activity_rating.value": 0, "ad_group_criterion.listing_group.case_value.hotel_city.city_criterion": "", "ad_group_criterion.listing_group.case_value.hotel_class.value": 0, "ad_group_criterion.listing_group.case_value.hotel_country_region.country_region_criterion": "", "ad_group_criterion.listing_group.case_value.hotel_id.value": "", "ad_group_criterion.listing_group.case_value.hotel_state.state_criterion": "", "ad_group_criterion.listing_group.case_value.product_bidding_category.id": 0, "ad_group_criterion.listing_group.case_value.product_bidding_category.level": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_brand.value": "", "ad_group_criterion.listing_group.case_value.product_channel.channel": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_channel_exclusivity.channel_exclusivity": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_condition.condition": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_custom_attribute.index": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_custom_attribute.value": "", "ad_group_criterion.listing_group.case_value.product_item_id.value": "", "ad_group_criterion.listing_group.case_value.product_type.level": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_type.value": "", "ad_group_criterion.listing_group.parent_ad_group_criterion": "", "ad_group_criterion.listing_group.type": "UNSPECIFIED"}, "emitted_at": 1695082712690} +{"stream": "ad_listing_group_criterions", "data": {"deleted_at": null, "change_status.last_change_date_time": null, "ad_group_criterion.resource_name": "customers/4651612872/adGroupCriteria/123273719655~11100571", "ad_group.id": 123273719655, "ad_group_criterion.criterion_id": 11100571, "ad_group_criterion.listing_group.case_value.activity_country.value": "", "ad_group_criterion.listing_group.case_value.activity_id.value": "", "ad_group_criterion.listing_group.case_value.activity_rating.value": 0, "ad_group_criterion.listing_group.case_value.hotel_city.city_criterion": "", "ad_group_criterion.listing_group.case_value.hotel_class.value": 0, "ad_group_criterion.listing_group.case_value.hotel_country_region.country_region_criterion": "", "ad_group_criterion.listing_group.case_value.hotel_id.value": "", "ad_group_criterion.listing_group.case_value.hotel_state.state_criterion": "", "ad_group_criterion.listing_group.case_value.product_bidding_category.id": 0, "ad_group_criterion.listing_group.case_value.product_bidding_category.level": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_brand.value": "", "ad_group_criterion.listing_group.case_value.product_channel.channel": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_channel_exclusivity.channel_exclusivity": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_condition.condition": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_custom_attribute.index": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_custom_attribute.value": "", "ad_group_criterion.listing_group.case_value.product_item_id.value": "", "ad_group_criterion.listing_group.case_value.product_type.level": "UNSPECIFIED", "ad_group_criterion.listing_group.case_value.product_type.value": "", "ad_group_criterion.listing_group.parent_ad_group_criterion": "", "ad_group_criterion.listing_group.type": "UNSPECIFIED"}, "emitted_at": 1695082712693} +{"stream": "audience", "data": {"audience.description": "", "audience.dimensions": ["audience_segments {\n segments {\n custom_audience {\n custom_audience: \"customers/4651612872/customAudiences/523469909\"\n }\n }\n}\n"], "audience.exclusion_dimension": "", "audience.id": 47792633, "audience.name": "Audience name 1", "audience.resource_name": "customers/4651612872/audiences/47792633", "audience.status": "ENABLED"}, "emitted_at": 1695082704782} +{"stream": "audience", "data": {"audience.description": "", "audience.dimensions": ["audience_segments {\n segments {\n user_interest {\n user_interest_category: \"customers/4651612872/userInterests/80276\"\n }\n }\n segments {\n user_interest {\n user_interest_category: \"customers/4651612872/userInterests/80279\"\n }\n }\n segments {\n user_interest {\n user_interest_category: \"customers/4651612872/userInterests/80520\"\n }\n }\n segments {\n user_interest {\n user_interest_category: \"customers/4651612872/userInterests/80530\"\n }\n }\n segments {\n user_interest {\n user_interest_category: \"customers/4651612872/userInterests/92931\"\n }\n }\n}\n"], "audience.exclusion_dimension": "", "audience.id": 97300129, "audience.name": "Upgraded Audience 1", "audience.resource_name": "customers/4651612872/audiences/97300129", "audience.status": "ENABLED"}, "emitted_at": 1695082704785} +{"stream": "campaign_bidding_strategies", "data": {"campaign.id": 19410069806, "bidding_strategy.aligned_campaign_budget_id": 0, "bidding_strategy.campaign_count": 0, "bidding_strategy.currency_code": "", "bidding_strategy.effective_currency_code": "", "bidding_strategy.enhanced_cpc": "", "bidding_strategy.id": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversion_value.target_roas": 0.0, "bidding_strategy.maximize_conversions.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversions.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversions.target_cpa_micros": 0, "bidding_strategy.name": "", "bidding_strategy.non_removed_campaign_count": 0, "bidding_strategy.resource_name": "", "bidding_strategy.status": "UNSPECIFIED", "bidding_strategy.target_cpa.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_cpa.cpc_bid_floor_micros": 0, "bidding_strategy.target_cpa.target_cpa_micros": 0, "bidding_strategy.target_impression_share.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_impression_share.location": "UNSPECIFIED", "bidding_strategy.target_impression_share.location_fraction_micros": 0, "bidding_strategy.target_roas.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_roas.cpc_bid_floor_micros": 0, "bidding_strategy.target_roas.target_roas": 0.0, "bidding_strategy.target_spend.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_spend.target_spend_micros": 0, "bidding_strategy.type": "UNSPECIFIED", "segments.date": "2023-08-31"}, "emitted_at": 1695082710268} +{"stream": "campaign_bidding_strategies", "data": {"campaign.id": 19959839954, "bidding_strategy.aligned_campaign_budget_id": 0, "bidding_strategy.campaign_count": 0, "bidding_strategy.currency_code": "", "bidding_strategy.effective_currency_code": "", "bidding_strategy.enhanced_cpc": "", "bidding_strategy.id": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversion_value.target_roas": 0.0, "bidding_strategy.maximize_conversions.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversions.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversions.target_cpa_micros": 0, "bidding_strategy.name": "", "bidding_strategy.non_removed_campaign_count": 0, "bidding_strategy.resource_name": "", "bidding_strategy.status": "UNSPECIFIED", "bidding_strategy.target_cpa.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_cpa.cpc_bid_floor_micros": 0, "bidding_strategy.target_cpa.target_cpa_micros": 0, "bidding_strategy.target_impression_share.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_impression_share.location": "UNSPECIFIED", "bidding_strategy.target_impression_share.location_fraction_micros": 0, "bidding_strategy.target_roas.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_roas.cpc_bid_floor_micros": 0, "bidding_strategy.target_roas.target_roas": 0.0, "bidding_strategy.target_spend.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_spend.target_spend_micros": 0, "bidding_strategy.type": "UNSPECIFIED", "segments.date": "2023-08-31"}, "emitted_at": 1695082710274} +{"stream": "campaign_bidding_strategies", "data": {"campaign.id": 19410069806, "bidding_strategy.aligned_campaign_budget_id": 0, "bidding_strategy.campaign_count": 0, "bidding_strategy.currency_code": "", "bidding_strategy.effective_currency_code": "", "bidding_strategy.enhanced_cpc": "", "bidding_strategy.id": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversion_value.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversion_value.target_roas": 0.0, "bidding_strategy.maximize_conversions.cpc_bid_ceiling_micros": 0, "bidding_strategy.maximize_conversions.cpc_bid_floor_micros": 0, "bidding_strategy.maximize_conversions.target_cpa_micros": 0, "bidding_strategy.name": "", "bidding_strategy.non_removed_campaign_count": 0, "bidding_strategy.resource_name": "", "bidding_strategy.status": "UNSPECIFIED", "bidding_strategy.target_cpa.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_cpa.cpc_bid_floor_micros": 0, "bidding_strategy.target_cpa.target_cpa_micros": 0, "bidding_strategy.target_impression_share.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_impression_share.location": "UNSPECIFIED", "bidding_strategy.target_impression_share.location_fraction_micros": 0, "bidding_strategy.target_roas.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_roas.cpc_bid_floor_micros": 0, "bidding_strategy.target_roas.target_roas": 0.0, "bidding_strategy.target_spend.cpc_bid_ceiling_micros": 0, "bidding_strategy.target_spend.target_spend_micros": 0, "bidding_strategy.type": "UNSPECIFIED", "segments.date": "2023-09-01"}, "emitted_at": 1695082710278} +{"stream": "campaign_budget", "data": {"campaign_budget.aligned_bidding_strategy_id": 0, "campaign_budget.amount_micros": 13000000, "campaign_budget.delivery_method": ["STANDARD"], "campaign_budget.explicitly_shared": false, "campaign_budget.has_recommended_budget": true, "campaign_budget.id": 12199001897, "campaign_budget.name": "Brand awareness and reach-Display-1", "campaign_budget.period": ["DAILY"], "campaign_budget.recommended_budget_amount_micros": 45000000, "campaign_budget.recommended_budget_estimated_change_weekly_clicks": 0, "campaign_budget.recommended_budget_estimated_change_weekly_cost_micros": 224000000, "campaign_budget.recommended_budget_estimated_change_weekly_interactions": 451, "campaign_budget.recommended_budget_estimated_change_weekly_views": 0, "campaign_budget.reference_count": 1, "campaign_budget.resource_name": "customers/4651612872/campaignBudgets/12199001897", "campaign_budget.status": ["ENABLED"], "campaign_budget.total_amount_micros": 0, "campaign_budget.type": ["STANDARD"], "segments.date": "2023-08-31", "segments.budget_campaign_association_status.campaign": "customers/4651612872/campaigns/19410069806", "segments.budget_campaign_association_status.status": ["ENABLED"], "metrics.all_conversions": 0.0, "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.average_cost": 546497.65, "metrics.average_cpc": 546497.65, "metrics.average_cpe": 0.0, "metrics.average_cpm": 762998.4642233857, "metrics.average_cpv": 0.0, "metrics.clicks": 20, "metrics.conversions": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 10929953, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0013961605584642235, "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "metrics.impressions": 14325, "metrics.interaction_event_types": ["InteractionEventType.CLICK"], "metrics.interaction_rate": 0.0013961605584642235, "metrics.interactions": 20, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0}, "emitted_at": 1695082682667} +{"stream": "campaign_budget", "data": {"campaign_budget.aligned_bidding_strategy_id": 0, "campaign_budget.amount_micros": 10000000, "campaign_budget.delivery_method": ["STANDARD"], "campaign_budget.explicitly_shared": false, "campaign_budget.has_recommended_budget": false, "campaign_budget.id": 12516167002, "campaign_budget.name": "Performance Max-5", "campaign_budget.period": ["DAILY"], "campaign_budget.recommended_budget_amount_micros": 0, "campaign_budget.recommended_budget_estimated_change_weekly_clicks": 0, "campaign_budget.recommended_budget_estimated_change_weekly_cost_micros": 0, "campaign_budget.recommended_budget_estimated_change_weekly_interactions": 0, "campaign_budget.recommended_budget_estimated_change_weekly_views": 0, "campaign_budget.reference_count": 1, "campaign_budget.resource_name": "customers/4651612872/campaignBudgets/12516167002", "campaign_budget.status": ["ENABLED"], "campaign_budget.total_amount_micros": 0, "campaign_budget.type": ["STANDARD"], "segments.date": "2023-08-31", "segments.budget_campaign_association_status.campaign": "customers/4651612872/campaigns/19959839954", "segments.budget_campaign_association_status.status": ["ENABLED"], "metrics.all_conversions": 0.0, "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 0.0, "metrics.average_cpv": 0.0, "metrics.clicks": 0, "metrics.conversions": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 0, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "metrics.impressions": 1, "metrics.interaction_event_types": [], "metrics.interaction_rate": 0.0, "metrics.interactions": 0, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0}, "emitted_at": 1695082682674} +{"stream": "campaign_budget", "data": {"campaign_budget.aligned_bidding_strategy_id": 0, "campaign_budget.amount_micros": 13000000, "campaign_budget.delivery_method": ["STANDARD"], "campaign_budget.explicitly_shared": false, "campaign_budget.has_recommended_budget": true, "campaign_budget.id": 12199001897, "campaign_budget.name": "Brand awareness and reach-Display-1", "campaign_budget.period": ["DAILY"], "campaign_budget.recommended_budget_amount_micros": 45000000, "campaign_budget.recommended_budget_estimated_change_weekly_clicks": 0, "campaign_budget.recommended_budget_estimated_change_weekly_cost_micros": 224000000, "campaign_budget.recommended_budget_estimated_change_weekly_interactions": 451, "campaign_budget.recommended_budget_estimated_change_weekly_views": 0, "campaign_budget.reference_count": 1, "campaign_budget.resource_name": "customers/4651612872/campaignBudgets/12199001897", "campaign_budget.status": ["ENABLED"], "campaign_budget.total_amount_micros": 0, "campaign_budget.type": ["STANDARD"], "segments.date": "2023-09-01", "segments.budget_campaign_association_status.campaign": "customers/4651612872/campaigns/19410069806", "segments.budget_campaign_association_status.status": ["ENABLED"], "metrics.all_conversions": 0.0, "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.average_cost": 438040.6, "metrics.average_cpc": 438040.6, "metrics.average_cpe": 0.0, "metrics.average_cpm": 741060.0575198783, "metrics.average_cpv": 0.0, "metrics.clicks": 30, "metrics.conversions": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 13141218, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.001691761123329386, "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "metrics.impressions": 17733, "metrics.interaction_event_types": ["InteractionEventType.CLICK"], "metrics.interaction_rate": 0.001691761123329386, "metrics.interactions": 30, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0}, "emitted_at": 1695082682679} +{"stream": "campaign_criterion", "data": {"deleted_at": null, "change_status.last_change_date_time": null, "campaign.id": 9660123292, "campaign_criterion.resource_name": "customers/4651612872/campaignCriteria/9660123292~2124", "campaign_criterion.campaign": "customers/4651612872/campaigns/9660123292", "campaign_criterion.age_range.type": "UNSPECIFIED", "campaign_criterion.mobile_application.name": "", "campaign_criterion.negative": false, "campaign_criterion.youtube_channel.channel_id": "", "campaign_criterion.youtube_video.video_id": ""}, "emitted_at": 1695082713924} +{"stream": "campaign_criterion", "data": {"deleted_at": null, "change_status.last_change_date_time": null, "campaign.id": 9660123292, "campaign_criterion.resource_name": "customers/4651612872/campaignCriteria/9660123292~2250", "campaign_criterion.campaign": "customers/4651612872/campaigns/9660123292", "campaign_criterion.age_range.type": "UNSPECIFIED", "campaign_criterion.mobile_application.name": "", "campaign_criterion.negative": false, "campaign_criterion.youtube_channel.channel_id": "", "campaign_criterion.youtube_video.video_id": ""}, "emitted_at": 1695082713927} +{"stream": "campaign_criterion", "data": {"deleted_at": null, "change_status.last_change_date_time": null, "campaign.id": 9660123292, "campaign_criterion.resource_name": "customers/4651612872/campaignCriteria/9660123292~2276", "campaign_criterion.campaign": "customers/4651612872/campaigns/9660123292", "campaign_criterion.age_range.type": "UNSPECIFIED", "campaign_criterion.mobile_application.name": "", "campaign_criterion.negative": false, "campaign_criterion.youtube_channel.channel_id": "", "campaign_criterion.youtube_video.video_id": ""}, "emitted_at": 1695082713928} +{"stream": "campaign_labels", "data": {"campaign.resource_name": "customers/4651612872/campaigns/12124071339", "campaign_label.resource_name": "customers/4651612872/campaignLabels/12124071339~21585034471", "label.name": "edgao-example-label", "label.resource_name": "customers/4651612872/labels/21585034471"}, "emitted_at": 1695082695339} +{"stream": "campaign_labels", "data": {"campaign.resource_name": "customers/4651612872/campaigns/13284356762", "campaign_label.resource_name": "customers/4651612872/campaignLabels/13284356762~21585034471", "label.name": "edgao-example-label", "label.resource_name": "customers/4651612872/labels/21585034471"}, "emitted_at": 1695082695341} +{"stream": "campaign_labels", "data": {"campaign.resource_name": "customers/4651612872/campaigns/16820250687", "campaign_label.resource_name": "customers/4651612872/campaignLabels/16820250687~21906377810", "label.name": "Test Delete label customer", "label.resource_name": "customers/4651612872/labels/21906377810"}, "emitted_at": 1695082695342} +{"stream": "campaigns", "data": {"campaign.accessible_bidding_strategy": "", "campaign.ad_serving_optimization_status": "OPTIMIZE", "campaign.advertising_channel_sub_type": "UNSPECIFIED", "campaign.advertising_channel_type": "DISPLAY", "campaign.app_campaign_setting.app_id": "", "campaign.app_campaign_setting.app_store": "UNSPECIFIED", "campaign.app_campaign_setting.bidding_strategy_goal_type": "UNSPECIFIED", "campaign.base_campaign": "customers/4651612872/campaigns/19410069806", "campaign.bidding_strategy": "", "campaign.bidding_strategy_type": "MANUAL_CPM", "campaign.campaign_budget": "customers/4651612872/campaignBudgets/12199001897", "campaign_budget.amount_micros": 13000000, "campaign.commission.commission_rate_micros": 0, "campaign.dynamic_search_ads_setting.domain_name": "", "campaign.dynamic_search_ads_setting.feeds": [], "campaign.dynamic_search_ads_setting.language_code": "", "campaign.dynamic_search_ads_setting.use_supplied_urls_only": false, "campaign.end_date": "2037-12-30", "campaign.excluded_parent_asset_field_types": [], "campaign.experiment_type": "BASE", "campaign.final_url_suffix": "", "campaign.frequency_caps": [], "campaign.geo_target_type_setting.negative_geo_target_type": "PRESENCE", "campaign.geo_target_type_setting.positive_geo_target_type": "PRESENCE_OR_INTEREST", "campaign.hotel_setting.hotel_center_id": 0, "campaign.id": 19410069806, "campaign.labels": [], "campaign.local_campaign_setting.location_source_type": "UNSPECIFIED", "campaign.manual_cpc.enhanced_cpc_enabled": false, "campaign.manual_cpm": "", "campaign.manual_cpv": "", "campaign.maximize_conversion_value.target_roas": 0.0, "campaign.maximize_conversions.target_cpa_micros": 0, "campaign.name": "Brand awareness and reach-Display-1", "campaign.network_settings.target_content_network": true, "campaign.network_settings.target_google_search": false, "campaign.network_settings.target_partner_search_network": false, "campaign.network_settings.target_search_network": false, "campaign.optimization_goal_setting.optimization_goal_types": [], "campaign.optimization_score": 0.7508164894347843, "campaign.payment_mode": "UNKNOWN", "campaign.percent_cpc.cpc_bid_ceiling_micros": 0, "campaign.percent_cpc.enhanced_cpc_enabled": false, "campaign.real_time_bidding_setting.opt_in": false, "campaign.resource_name": "customers/4651612872/campaigns/19410069806", "campaign.selective_optimization.conversion_actions": [], "campaign.serving_status": "SERVING", "campaign.shopping_setting.campaign_priority": 0, "campaign.shopping_setting.enable_local": false, "campaign.shopping_setting.merchant_id": 0, "campaign.shopping_setting.sales_country": "", "campaign.start_date": "2022-12-28", "campaign.status": "ENABLED", "campaign.target_cpa.cpc_bid_ceiling_micros": 0, "campaign.target_cpa.cpc_bid_floor_micros": 0, "campaign.target_cpa.target_cpa_micros": 0, "campaign.target_cpm.target_frequency_goal.target_count": 0, "campaign.target_cpm.target_frequency_goal.time_unit": "UNSPECIFIED", "campaign.target_impression_share.cpc_bid_ceiling_micros": 0, "campaign.target_impression_share.location": "UNSPECIFIED", "campaign.target_impression_share.location_fraction_micros": 0, "campaign.target_roas.cpc_bid_ceiling_micros": 0, "campaign.target_roas.cpc_bid_floor_micros": 0, "campaign.target_roas.target_roas": 0.0, "campaign.target_spend.cpc_bid_ceiling_micros": 0, "campaign.target_spend.target_spend_micros": 0, "campaign.targeting_setting.target_restrictions": [], "campaign.tracking_setting.tracking_url": "", "campaign.tracking_url_template": "", "campaign.url_custom_parameters": [], "campaign.vanity_pharma.vanity_pharma_display_url_mode": "UNSPECIFIED", "campaign.vanity_pharma.vanity_pharma_text": "UNSPECIFIED", "campaign.video_brand_safety_suitability": "UNSPECIFIED", "metrics.clicks": 1, "metrics.ctr": 0.0013440860215053765, "metrics.conversions": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 514885, "metrics.impressions": 744.0, "metrics.video_views": 0.0, "metrics.video_quartile_p100_rate": 0.0, "metrics.active_view_cpm": 762792.5925925926, "metrics.active_view_ctr": 0.0014814814814814814, "metrics.active_view_impressions": 675, "metrics.active_view_measurability": 1.0, "metrics.active_view_measurable_cost_micros": 514885, "metrics.active_view_measurable_impressions": 744, "metrics.active_view_viewability": 0.907258064516129, "metrics.average_cost": 514885.0, "metrics.average_cpc": 514885.0, "metrics.average_cpm": 692049.7311827956, "metrics.interactions": 1, "metrics.interaction_event_types": "['InteractionEventType.CLICK']", "metrics.value_per_conversion": 0.0, "metrics.cost_per_conversion": 0.0, "segments.date": "2023-08-31", "segments.hour": 0.0, "segments.ad_network_type": "CONTENT"}, "emitted_at": 1695082694759} +{"stream": "campaigns", "data": {"campaign.accessible_bidding_strategy": "", "campaign.ad_serving_optimization_status": "OPTIMIZE", "campaign.advertising_channel_sub_type": "UNSPECIFIED", "campaign.advertising_channel_type": "DISPLAY", "campaign.app_campaign_setting.app_id": "", "campaign.app_campaign_setting.app_store": "UNSPECIFIED", "campaign.app_campaign_setting.bidding_strategy_goal_type": "UNSPECIFIED", "campaign.base_campaign": "customers/4651612872/campaigns/19410069806", "campaign.bidding_strategy": "", "campaign.bidding_strategy_type": "MANUAL_CPM", "campaign.campaign_budget": "customers/4651612872/campaignBudgets/12199001897", "campaign_budget.amount_micros": 13000000, "campaign.commission.commission_rate_micros": 0, "campaign.dynamic_search_ads_setting.domain_name": "", "campaign.dynamic_search_ads_setting.feeds": [], "campaign.dynamic_search_ads_setting.language_code": "", "campaign.dynamic_search_ads_setting.use_supplied_urls_only": false, "campaign.end_date": "2037-12-30", "campaign.excluded_parent_asset_field_types": [], "campaign.experiment_type": "BASE", "campaign.final_url_suffix": "", "campaign.frequency_caps": [], "campaign.geo_target_type_setting.negative_geo_target_type": "PRESENCE", "campaign.geo_target_type_setting.positive_geo_target_type": "PRESENCE_OR_INTEREST", "campaign.hotel_setting.hotel_center_id": 0, "campaign.id": 19410069806, "campaign.labels": [], "campaign.local_campaign_setting.location_source_type": "UNSPECIFIED", "campaign.manual_cpc.enhanced_cpc_enabled": false, "campaign.manual_cpm": "", "campaign.manual_cpv": "", "campaign.maximize_conversion_value.target_roas": 0.0, "campaign.maximize_conversions.target_cpa_micros": 0, "campaign.name": "Brand awareness and reach-Display-1", "campaign.network_settings.target_content_network": true, "campaign.network_settings.target_google_search": false, "campaign.network_settings.target_partner_search_network": false, "campaign.network_settings.target_search_network": false, "campaign.optimization_goal_setting.optimization_goal_types": [], "campaign.optimization_score": 0.7508164894347843, "campaign.payment_mode": "UNKNOWN", "campaign.percent_cpc.cpc_bid_ceiling_micros": 0, "campaign.percent_cpc.enhanced_cpc_enabled": false, "campaign.real_time_bidding_setting.opt_in": false, "campaign.resource_name": "customers/4651612872/campaigns/19410069806", "campaign.selective_optimization.conversion_actions": [], "campaign.serving_status": "SERVING", "campaign.shopping_setting.campaign_priority": 0, "campaign.shopping_setting.enable_local": false, "campaign.shopping_setting.merchant_id": 0, "campaign.shopping_setting.sales_country": "", "campaign.start_date": "2022-12-28", "campaign.status": "ENABLED", "campaign.target_cpa.cpc_bid_ceiling_micros": 0, "campaign.target_cpa.cpc_bid_floor_micros": 0, "campaign.target_cpa.target_cpa_micros": 0, "campaign.target_cpm.target_frequency_goal.target_count": 0, "campaign.target_cpm.target_frequency_goal.time_unit": "UNSPECIFIED", "campaign.target_impression_share.cpc_bid_ceiling_micros": 0, "campaign.target_impression_share.location": "UNSPECIFIED", "campaign.target_impression_share.location_fraction_micros": 0, "campaign.target_roas.cpc_bid_ceiling_micros": 0, "campaign.target_roas.cpc_bid_floor_micros": 0, "campaign.target_roas.target_roas": 0.0, "campaign.target_spend.cpc_bid_ceiling_micros": 0, "campaign.target_spend.target_spend_micros": 0, "campaign.targeting_setting.target_restrictions": [], "campaign.tracking_setting.tracking_url": "", "campaign.tracking_url_template": "", "campaign.url_custom_parameters": [], "campaign.vanity_pharma.vanity_pharma_display_url_mode": "UNSPECIFIED", "campaign.vanity_pharma.vanity_pharma_text": "UNSPECIFIED", "campaign.video_brand_safety_suitability": "UNSPECIFIED", "metrics.clicks": 0, "metrics.ctr": 0.0, "metrics.conversions": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 646461, "metrics.impressions": 916.0, "metrics.video_views": 0.0, "metrics.video_quartile_p100_rate": 0.0, "metrics.active_view_cpm": 753451.048951049, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 858, "metrics.active_view_measurability": 1.0, "metrics.active_view_measurable_cost_micros": 646461, "metrics.active_view_measurable_impressions": 916, "metrics.active_view_viewability": 0.9366812227074236, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpm": 705743.4497816594, "metrics.interactions": 0, "metrics.interaction_event_types": "[]", "metrics.value_per_conversion": 0.0, "metrics.cost_per_conversion": 0.0, "segments.date": "2023-08-31", "segments.hour": 1.0, "segments.ad_network_type": "CONTENT"}, "emitted_at": 1695082694769} +{"stream": "campaigns", "data": {"campaign.accessible_bidding_strategy": "", "campaign.ad_serving_optimization_status": "OPTIMIZE", "campaign.advertising_channel_sub_type": "UNSPECIFIED", "campaign.advertising_channel_type": "DISPLAY", "campaign.app_campaign_setting.app_id": "", "campaign.app_campaign_setting.app_store": "UNSPECIFIED", "campaign.app_campaign_setting.bidding_strategy_goal_type": "UNSPECIFIED", "campaign.base_campaign": "customers/4651612872/campaigns/19410069806", "campaign.bidding_strategy": "", "campaign.bidding_strategy_type": "MANUAL_CPM", "campaign.campaign_budget": "customers/4651612872/campaignBudgets/12199001897", "campaign_budget.amount_micros": 13000000, "campaign.commission.commission_rate_micros": 0, "campaign.dynamic_search_ads_setting.domain_name": "", "campaign.dynamic_search_ads_setting.feeds": [], "campaign.dynamic_search_ads_setting.language_code": "", "campaign.dynamic_search_ads_setting.use_supplied_urls_only": false, "campaign.end_date": "2037-12-30", "campaign.excluded_parent_asset_field_types": [], "campaign.experiment_type": "BASE", "campaign.final_url_suffix": "", "campaign.frequency_caps": [], "campaign.geo_target_type_setting.negative_geo_target_type": "PRESENCE", "campaign.geo_target_type_setting.positive_geo_target_type": "PRESENCE_OR_INTEREST", "campaign.hotel_setting.hotel_center_id": 0, "campaign.id": 19410069806, "campaign.labels": [], "campaign.local_campaign_setting.location_source_type": "UNSPECIFIED", "campaign.manual_cpc.enhanced_cpc_enabled": false, "campaign.manual_cpm": "", "campaign.manual_cpv": "", "campaign.maximize_conversion_value.target_roas": 0.0, "campaign.maximize_conversions.target_cpa_micros": 0, "campaign.name": "Brand awareness and reach-Display-1", "campaign.network_settings.target_content_network": true, "campaign.network_settings.target_google_search": false, "campaign.network_settings.target_partner_search_network": false, "campaign.network_settings.target_search_network": false, "campaign.optimization_goal_setting.optimization_goal_types": [], "campaign.optimization_score": 0.7508164894347843, "campaign.payment_mode": "UNKNOWN", "campaign.percent_cpc.cpc_bid_ceiling_micros": 0, "campaign.percent_cpc.enhanced_cpc_enabled": false, "campaign.real_time_bidding_setting.opt_in": false, "campaign.resource_name": "customers/4651612872/campaigns/19410069806", "campaign.selective_optimization.conversion_actions": [], "campaign.serving_status": "SERVING", "campaign.shopping_setting.campaign_priority": 0, "campaign.shopping_setting.enable_local": false, "campaign.shopping_setting.merchant_id": 0, "campaign.shopping_setting.sales_country": "", "campaign.start_date": "2022-12-28", "campaign.status": "ENABLED", "campaign.target_cpa.cpc_bid_ceiling_micros": 0, "campaign.target_cpa.cpc_bid_floor_micros": 0, "campaign.target_cpa.target_cpa_micros": 0, "campaign.target_cpm.target_frequency_goal.target_count": 0, "campaign.target_cpm.target_frequency_goal.time_unit": "UNSPECIFIED", "campaign.target_impression_share.cpc_bid_ceiling_micros": 0, "campaign.target_impression_share.location": "UNSPECIFIED", "campaign.target_impression_share.location_fraction_micros": 0, "campaign.target_roas.cpc_bid_ceiling_micros": 0, "campaign.target_roas.cpc_bid_floor_micros": 0, "campaign.target_roas.target_roas": 0.0, "campaign.target_spend.cpc_bid_ceiling_micros": 0, "campaign.target_spend.target_spend_micros": 0, "campaign.targeting_setting.target_restrictions": [], "campaign.tracking_setting.tracking_url": "", "campaign.tracking_url_template": "", "campaign.url_custom_parameters": [], "campaign.vanity_pharma.vanity_pharma_display_url_mode": "UNSPECIFIED", "campaign.vanity_pharma.vanity_pharma_text": "UNSPECIFIED", "campaign.video_brand_safety_suitability": "UNSPECIFIED", "metrics.clicks": 1, "metrics.ctr": 0.0009746588693957114, "metrics.conversions": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 720408, "metrics.impressions": 1026.0, "metrics.video_views": 0.0, "metrics.video_quartile_p100_rate": 0.0, "metrics.active_view_cpm": 759924.0506329114, "metrics.active_view_ctr": 0.0010548523206751054, "metrics.active_view_impressions": 948, "metrics.active_view_measurability": 1.0, "metrics.active_view_measurable_cost_micros": 720408, "metrics.active_view_measurable_impressions": 1026, "metrics.active_view_viewability": 0.9239766081871345, "metrics.average_cost": 720408.0, "metrics.average_cpc": 720408.0, "metrics.average_cpm": 702152.0467836257, "metrics.interactions": 1, "metrics.interaction_event_types": "['InteractionEventType.CLICK']", "metrics.value_per_conversion": 0.0, "metrics.cost_per_conversion": 0.0, "segments.date": "2023-08-31", "segments.hour": 2.0, "segments.ad_network_type": "CONTENT"}, "emitted_at": 1695082694773} +{"stream": "click_view", "data": {"ad_group.name": "Ad group 1", "click_view.gclid": "Cj0KCQjw9MCnBhCYARIsAB1WQVUIRLTdkamVscRiXquP1eII_RaEdkhIWLZH-4pheDHLztk14iU0q6AaAnAqEALw_wcB", "click_view.ad_group_ad": "customers/4651612872/adGroupAds/144799120517~643022056303", "click_view.keyword": "", "click_view.keyword_info.match_type": "UNSPECIFIED", "click_view.keyword_info.text": "", "campaign.id": 19410069806, "ad_group.id": 144799120517, "segments.date": "2023-08-31", "customer.id": 4651612872, "campaign.name": "Brand awareness and reach-Display-1", "segments.ad_network_type": "CONTENT", "campaign.network_settings.target_content_network": true, "campaign.network_settings.target_google_search": false, "campaign.network_settings.target_partner_search_network": false, "campaign.network_settings.target_search_network": false}, "emitted_at": 1695082685022} +{"stream": "click_view", "data": {"ad_group.name": "Ad group 1", "click_view.gclid": "Cj0KCQjw9MCnBhCYARIsAB1WQVUW_kB70LlXrJjshH0iPvI55YQpnWPqPBbZiyCyh3XThG84yXubRJQaArTeEALw_wcB", "click_view.ad_group_ad": "customers/4651612872/adGroupAds/144799120517~643022056303", "click_view.keyword": "", "click_view.keyword_info.match_type": "UNSPECIFIED", "click_view.keyword_info.text": "", "campaign.id": 19410069806, "ad_group.id": 144799120517, "segments.date": "2023-08-31", "customer.id": 4651612872, "campaign.name": "Brand awareness and reach-Display-1", "segments.ad_network_type": "CONTENT", "campaign.network_settings.target_content_network": true, "campaign.network_settings.target_google_search": false, "campaign.network_settings.target_partner_search_network": false, "campaign.network_settings.target_search_network": false}, "emitted_at": 1695082685026} +{"stream": "click_view", "data": {"ad_group.name": "Ad group 1", "click_view.gclid": "Cj0KCQjw9MCnBhCYARIsAB1WQVVEPTT3Df-dDQUH5AFq2jb7BFWVIF1iouyQLuBlmdZOW2jlPn51t8waAn4UEALw_wcB", "click_view.ad_group_ad": "customers/4651612872/adGroupAds/144799120517~643022056303", "click_view.keyword": "", "click_view.keyword_info.match_type": "UNSPECIFIED", "click_view.keyword_info.text": "", "campaign.id": 19410069806, "ad_group.id": 144799120517, "segments.date": "2023-08-31", "customer.id": 4651612872, "campaign.name": "Brand awareness and reach-Display-1", "segments.ad_network_type": "CONTENT", "campaign.network_settings.target_content_network": true, "campaign.network_settings.target_google_search": false, "campaign.network_settings.target_partner_search_network": false, "campaign.network_settings.target_search_network": false}, "emitted_at": 1695082685028} +{"stream": "custom_audience", "data": {"custom_audience.description": "", "custom_audience.name": "Airbyet", "custom_audience.id": 523469909, "custom_audience.members": ["member_type: KEYWORD\nkeyword: \"etl elt\"\n", "member_type: KEYWORD\nkeyword: \"cloud data management and analytics\"\n", "member_type: KEYWORD\nkeyword: \"data integration\"\n", "member_type: KEYWORD\nkeyword: \"big data analytics database\"\n", "member_type: KEYWORD\nkeyword: \"data\"\n", "member_type: KEYWORD\nkeyword: \"data sherid nada\"\n", "member_type: KEYWORD\nkeyword: \"airbyteforeveryone\"\n", "member_type: KEYWORD\nkeyword: \"Airbyte\"\n"], "custom_audience.resource_name": "customers/4651612872/customAudiences/523469909", "custom_audience.status": "ENABLED", "custom_audience.type": "AUTO"}, "emitted_at": 1695082704386} +{"stream": "display_topics_performance_report", "data": {"customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 443457.14285714284, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 35, "metrics.active_view_measurability": 1.0, "metrics.active_view_measurable_cost_micros": 15521, "metrics.active_view_measurable_impressions": 44, "metrics.active_view_viewability": 0.7954545454545454, "ad_group.id": 144799120517, "ad_group.name": "Ad group 1", "ad_group.status": "ENABLED", "segments.ad_network_type": "CONTENT", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 352750.0, "metrics.average_cpv": 0.0, "ad_group.base_ad_group": "customers/4651612872/adGroups/144799120517", "campaign.base_campaign": "customers/4651612872/campaigns/19410069806", "ad_group_criterion.bid_modifier": 0.0, "campaign.bidding_strategy": "", "campaign.bidding_strategy_type": "MANUAL_CPM", "campaign.id": 19410069806, "campaign.name": "Brand awareness and reach-Display-1", "campaign.status": "ENABLED", "metrics.clicks": 0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 15521, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "ad_group_criterion.effective_cpc_bid_micros": 10000, "ad_group_criterion.effective_cpc_bid_source": "AD_GROUP", "ad_group_criterion.effective_cpm_bid_micros": 2000000, "ad_group_criterion.effective_cpm_bid_source": "AD_GROUP", "ad_group_criterion.topic.path": ["", "Online Communities"], "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "segments.date": "2023-08-31", "segments.day_of_week": "THURSDAY", "segments.device": "DESKTOP", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "customer.id": 4651612872, "ad_group_criterion.final_mobile_urls": [], "ad_group_criterion.final_urls": [], "metrics.gmail_forwards": 0, "metrics.gmail_saves": 0, "metrics.gmail_secondary_clicks": 0, "ad_group_criterion.criterion_id": 945751797, "metrics.impressions": 44, "metrics.interaction_rate": 0.0, "metrics.interaction_event_types": [], "metrics.interactions": 0, "ad_group_criterion.negative": false, "ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n", "targeting_dimension: TOPIC\nbid_only: true\n"], "segments.month": "2023-08-01", "segments.quarter": "2023-07-01", "ad_group_criterion.status": "ENABLED", "ad_group_criterion.tracking_url_template": "", "ad_group_criterion.url_custom_parameters": [], "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "ad_group_criterion.topic.topic_constant": "topicConstants/299", "metrics.video_quartile_p100_rate": 0.0, "metrics.video_quartile_p25_rate": 0.0, "metrics.video_quartile_p50_rate": 0.0, "metrics.video_quartile_p75_rate": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2023-08-28", "segments.year": 2023}, "emitted_at": 1695082690224} +{"stream": "display_topics_performance_report", "data": {"customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 422666.6666666667, "metrics.active_view_ctr": 0.0, "metrics.active_view_impressions": 3, "metrics.active_view_measurability": 1.0, "metrics.active_view_measurable_cost_micros": 1268, "metrics.active_view_measurable_impressions": 11, "metrics.active_view_viewability": 0.2727272727272727, "ad_group.id": 144799120517, "ad_group.name": "Ad group 1", "ad_group.status": "ENABLED", "segments.ad_network_type": "CONTENT", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 115272.72727272726, "metrics.average_cpv": 0.0, "ad_group.base_ad_group": "customers/4651612872/adGroups/144799120517", "campaign.base_campaign": "customers/4651612872/campaigns/19410069806", "ad_group_criterion.bid_modifier": 0.0, "campaign.bidding_strategy": "", "campaign.bidding_strategy_type": "MANUAL_CPM", "campaign.id": 19410069806, "campaign.name": "Brand awareness and reach-Display-1", "campaign.status": "ENABLED", "metrics.clicks": 0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 1268, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "ad_group_criterion.effective_cpc_bid_micros": 10000, "ad_group_criterion.effective_cpc_bid_source": "AD_GROUP", "ad_group_criterion.effective_cpm_bid_micros": 2000000, "ad_group_criterion.effective_cpm_bid_source": "AD_GROUP", "ad_group_criterion.topic.path": ["", "Shopping"], "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "segments.date": "2023-08-31", "segments.day_of_week": "THURSDAY", "segments.device": "DESKTOP", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "customer.id": 4651612872, "ad_group_criterion.final_mobile_urls": [], "ad_group_criterion.final_urls": [], "metrics.gmail_forwards": 0, "metrics.gmail_saves": 0, "metrics.gmail_secondary_clicks": 0, "ad_group_criterion.criterion_id": 1543464477, "metrics.impressions": 11, "metrics.interaction_rate": 0.0, "metrics.interaction_event_types": [], "metrics.interactions": 0, "ad_group_criterion.negative": false, "ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n", "targeting_dimension: TOPIC\nbid_only: true\n"], "segments.month": "2023-08-01", "segments.quarter": "2023-07-01", "ad_group_criterion.status": "ENABLED", "ad_group_criterion.tracking_url_template": "", "ad_group_criterion.url_custom_parameters": [], "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "ad_group_criterion.topic.topic_constant": "topicConstants/18", "metrics.video_quartile_p100_rate": 0.0, "metrics.video_quartile_p25_rate": 0.0, "metrics.video_quartile_p50_rate": 0.0, "metrics.video_quartile_p75_rate": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2023-08-28", "segments.year": 2023}, "emitted_at": 1695082690229} +{"stream": "display_topics_performance_report", "data": {"customer.currency_code": "USD", "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "metrics.active_view_cpm": 312102.08816705336, "metrics.active_view_ctr": 0.002320185614849188, "metrics.active_view_impressions": 431, "metrics.active_view_measurability": 1.0, "metrics.active_view_measurable_cost_micros": 134516, "metrics.active_view_measurable_impressions": 509, "metrics.active_view_viewability": 0.8467583497053045, "ad_group.id": 144799120517, "ad_group.name": "Ad group 1", "ad_group.status": "ENABLED", "segments.ad_network_type": "CONTENT", "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.all_conversions": 0.0, "metrics.average_cost": 134516.0, "metrics.average_cpc": 134516.0, "metrics.average_cpe": 0.0, "metrics.average_cpm": 264275.0491159135, "metrics.average_cpv": 0.0, "ad_group.base_ad_group": "customers/4651612872/adGroups/144799120517", "campaign.base_campaign": "customers/4651612872/campaigns/19410069806", "ad_group_criterion.bid_modifier": 0.0, "campaign.bidding_strategy": "", "campaign.bidding_strategy_type": "MANUAL_CPM", "campaign.id": 19410069806, "campaign.name": "Brand awareness and reach-Display-1", "campaign.status": "ENABLED", "metrics.clicks": 1, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.conversions": 0.0, "metrics.cost_micros": 134516, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "ad_group_criterion.effective_cpc_bid_micros": 10000, "ad_group_criterion.effective_cpc_bid_source": "AD_GROUP", "ad_group_criterion.effective_cpm_bid_micros": 2000000, "ad_group_criterion.effective_cpm_bid_source": "AD_GROUP", "ad_group_criterion.topic.path": ["", "Arts & Entertainment"], "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0019646365422396855, "segments.date": "2023-08-31", "segments.day_of_week": "THURSDAY", "segments.device": "DESKTOP", "metrics.engagement_rate": 0.0, "metrics.engagements": 0, "customer.id": 4651612872, "ad_group_criterion.final_mobile_urls": [], "ad_group_criterion.final_urls": [], "metrics.gmail_forwards": 0, "metrics.gmail_saves": 0, "metrics.gmail_secondary_clicks": 0, "ad_group_criterion.criterion_id": 1543465137, "metrics.impressions": 509, "metrics.interaction_rate": 0.0019646365422396855, "metrics.interaction_event_types": ["InteractionEventType.CLICK"], "metrics.interactions": 1, "ad_group_criterion.negative": false, "ad_group.targeting_setting.target_restrictions": ["targeting_dimension: AGE_RANGE\nbid_only: true\n", "targeting_dimension: GENDER\nbid_only: true\n", "targeting_dimension: PARENTAL_STATUS\nbid_only: true\n", "targeting_dimension: INCOME_RANGE\nbid_only: true\n", "targeting_dimension: TOPIC\nbid_only: true\n"], "segments.month": "2023-08-01", "segments.quarter": "2023-07-01", "ad_group_criterion.status": "ENABLED", "ad_group_criterion.tracking_url_template": "", "ad_group_criterion.url_custom_parameters": [], "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "ad_group_criterion.topic.topic_constant": "topicConstants/3", "metrics.video_quartile_p100_rate": 0.0, "metrics.video_quartile_p25_rate": 0.0, "metrics.video_quartile_p50_rate": 0.0, "metrics.video_quartile_p75_rate": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0, "segments.week": "2023-08-28", "segments.year": 2023}, "emitted_at": 1695082690231} +{"stream": "geographic_report", "data": {"customer.descriptive_name": "", "geographic_view.country_criterion_id": 2410, "geographic_view.location_type": "AREA_OF_INTEREST", "ad_group.id": 144799120517, "segments.date": "2023-08-31"}, "emitted_at": 1695082687579} +{"stream": "geographic_report", "data": {"customer.descriptive_name": "", "geographic_view.country_criterion_id": 2410, "geographic_view.location_type": "LOCATION_OF_PRESENCE", "ad_group.id": 144799120517, "segments.date": "2023-08-31"}, "emitted_at": 1695082687581} +{"stream": "geographic_report", "data": {"customer.descriptive_name": "", "geographic_view.country_criterion_id": 2410, "geographic_view.location_type": "AREA_OF_INTEREST", "ad_group.id": 144799120517, "segments.date": "2023-09-01"}, "emitted_at": 1695082687582} +{"stream": "happytable", "data": {"campaign.accessible_bidding_strategy": "", "segments.ad_destination_type": "NOT_APPLICABLE", "campaign.start_date": "2022-12-28", "campaign.end_date": "2037-12-30", "segments.date": "2023-08-31"}, "emitted_at": 1695082703544} +{"stream": "happytable", "data": {"campaign.accessible_bidding_strategy": "", "segments.ad_destination_type": "NOT_APPLICABLE", "campaign.start_date": "2023-04-10", "campaign.end_date": "2037-12-30", "segments.date": "2023-08-31"}, "emitted_at": 1695082703544} +{"stream": "happytable", "data": {"campaign.accessible_bidding_strategy": "", "segments.ad_destination_type": "NOT_APPLICABLE", "campaign.start_date": "2022-12-28", "campaign.end_date": "2037-12-30", "segments.date": "2023-09-01"}, "emitted_at": 1695082703545} +{"stream": "labels", "data": {"label.id": 21585034471, "label.name": "edgao-example-label", "label.resource_name": "customers/4651612872/labels/21585034471", "label.status": "ENABLED", "label.text_label.background_color": "#E993EB", "label.text_label.description": "example label for edgao"}, "emitted_at": 1695082709391} +{"stream": "labels", "data": {"label.id": 21902092838, "label.name": "Test Label", "label.resource_name": "customers/4651612872/labels/21902092838", "label.status": "ENABLED", "label.text_label.background_color": "#8BCBD2", "label.text_label.description": "Description to test label"}, "emitted_at": 1695082709393} +{"stream": "labels", "data": {"label.id": 21906377810, "label.name": "Test Delete label customer", "label.resource_name": "customers/4651612872/labels/21906377810", "label.status": "ENABLED", "label.text_label.background_color": "#8266C9", "label.text_label.description": ""}, "emitted_at": 1695082709393} +{"stream": "user_interest", "data": {"user_interest.availabilities": [], "user_interest.launched_to_all": true, "user_interest.name": "Arts & Entertainment", "user_interest.resource_name": "customers/4651612872/userInterests/3", "user_interest.taxonomy_type": "VERTICAL_GEO", "user_interest.user_interest_id": 3, "user_interest.user_interest_parent": ""}, "emitted_at": 1695082706438} +{"stream": "user_interest", "data": {"user_interest.availabilities": [], "user_interest.launched_to_all": true, "user_interest.name": "Computers & Electronics", "user_interest.resource_name": "customers/4651612872/userInterests/5", "user_interest.taxonomy_type": "VERTICAL_GEO", "user_interest.user_interest_id": 5, "user_interest.user_interest_parent": ""}, "emitted_at": 1695082706440} +{"stream": "user_interest", "data": {"user_interest.availabilities": [], "user_interest.launched_to_all": true, "user_interest.name": "Finance", "user_interest.resource_name": "customers/4651612872/userInterests/7", "user_interest.taxonomy_type": "VERTICAL_GEO", "user_interest.user_interest_id": 7, "user_interest.user_interest_parent": ""}, "emitted_at": 1695082706440} +{"stream": "user_location_report", "data": {"segments.date": "2023-08-31", "segments.day_of_week": "THURSDAY", "segments.month": "2023-08-01", "segments.week": "2023-08-28", "segments.quarter": "2023-07-01", "segments.year": 2023, "segments.ad_network_type": "CONTENT", "customer.currency_code": "USD", "customer.id": 4651612872, "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "user_location_view.country_criterion_id": 2040, "user_location_view.resource_name": "customers/4651612872/userLocationViews/2040~false", "campaign.base_campaign": "customers/4651612872/campaigns/19410069806", "campaign.id": 19410069806, "campaign.name": "Brand awareness and reach-Display-1", "campaign.status": "ENABLED", "ad_group.name": "Ad group 1", "ad_group.status": "ENABLED", "ad_group.base_ad_group": "customers/4651612872/adGroups/144799120517", "metrics.all_conversions": 0.0, "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpm": 69333.33333333333, "metrics.average_cpv": 0.0, "metrics.clicks": 0, "metrics.conversions": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 208, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "metrics.impressions": 3, "metrics.interaction_event_types": [], "metrics.interaction_rate": 0.0, "metrics.interactions": 0, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0}, "emitted_at": 1695082702428} +{"stream": "user_location_report", "data": {"segments.date": "2023-08-31", "segments.day_of_week": "THURSDAY", "segments.month": "2023-08-01", "segments.week": "2023-08-28", "segments.quarter": "2023-07-01", "segments.year": 2023, "segments.ad_network_type": "CONTENT", "customer.currency_code": "USD", "customer.id": 4651612872, "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "user_location_view.country_criterion_id": 2124, "user_location_view.resource_name": "customers/4651612872/userLocationViews/2124~false", "campaign.base_campaign": "customers/4651612872/campaigns/19410069806", "campaign.id": 19410069806, "campaign.name": "Brand awareness and reach-Display-1", "campaign.status": "ENABLED", "ad_group.name": "Ad group 1", "ad_group.status": "ENABLED", "ad_group.base_ad_group": "customers/4651612872/adGroups/144799120517", "metrics.all_conversions": 0.0, "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpm": 0.0, "metrics.average_cpv": 0.0, "metrics.clicks": 0, "metrics.conversions": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 0, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "metrics.impressions": 1, "metrics.interaction_event_types": [], "metrics.interaction_rate": 0.0, "metrics.interactions": 0, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0}, "emitted_at": 1695082702430} +{"stream": "user_location_report", "data": {"segments.date": "2023-08-31", "segments.day_of_week": "THURSDAY", "segments.month": "2023-08-01", "segments.week": "2023-08-28", "segments.quarter": "2023-07-01", "segments.year": 2023, "segments.ad_network_type": "CONTENT", "customer.currency_code": "USD", "customer.id": 4651612872, "customer.descriptive_name": "", "customer.time_zone": "America/Los_Angeles", "user_location_view.country_criterion_id": 2344, "user_location_view.resource_name": "customers/4651612872/userLocationViews/2344~false", "campaign.base_campaign": "customers/4651612872/campaigns/19410069806", "campaign.id": 19410069806, "campaign.name": "Brand awareness and reach-Display-1", "campaign.status": "ENABLED", "ad_group.name": "Ad group 1", "ad_group.status": "ENABLED", "ad_group.base_ad_group": "customers/4651612872/adGroups/144799120517", "metrics.all_conversions": 0.0, "metrics.all_conversions_from_interactions_rate": 0.0, "metrics.all_conversions_value": 0.0, "metrics.average_cost": 0.0, "metrics.average_cpc": 0.0, "metrics.average_cpm": 612683.3333333333, "metrics.average_cpv": 0.0, "metrics.clicks": 0, "metrics.conversions": 0.0, "metrics.conversions_from_interactions_rate": 0.0, "metrics.conversions_value": 0.0, "metrics.cost_micros": 36761, "metrics.cost_per_all_conversions": 0.0, "metrics.cost_per_conversion": 0.0, "metrics.cross_device_conversions": 0.0, "metrics.ctr": 0.0, "metrics.impressions": 60, "metrics.interaction_event_types": [], "metrics.interaction_rate": 0.0, "metrics.interactions": 0, "metrics.value_per_all_conversions": 0.0, "metrics.value_per_conversion": 0.0, "metrics.video_view_rate": 0.0, "metrics.video_views": 0, "metrics.view_through_conversions": 0}, "emitted_at": 1695082702432} diff --git a/airbyte-integrations/connectors/source-google-ads/integration_tests/incremental_catalog.json b/airbyte-integrations/connectors/source-google-ads/integration_tests/incremental_catalog.json index 12bb06914012..be0812b94b42 100644 --- a/airbyte-integrations/connectors/source-google-ads/integration_tests/incremental_catalog.json +++ b/airbyte-integrations/connectors/source-google-ads/integration_tests/incremental_catalog.json @@ -5,11 +5,23 @@ "name": "account_performance_report", "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_primary_key": [ + ["customer.id"], + ["segments.date"], + ["segments.ad_network_type"], + ["segments.device"] + ], "source_defined_cursor": true, "default_cursor_field": ["segments.date"] }, "sync_mode": "incremental", "destination_sync_mode": "overwrite", + "primary_key": [ + ["customer.id"], + ["segments.date"], + ["segments.ad_network_type"], + ["segments.device"] + ], "cursor_field": ["segments.date"] }, { @@ -18,24 +30,46 @@ "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, - "source_defined_primary_key": [["click_view.gclid"], ["segments.date"]], + "source_defined_primary_key": [ + ["customer.id"], + ["click_view.gclid"], + ["segments.date"], + ["segments.ad_network_type"] + ], "default_cursor_field": ["segments.date"] }, "sync_mode": "incremental", "destination_sync_mode": "overwrite", "cursor_field": ["segments.date"], - "primary_key": [["click_view.gclid"], ["segments.date"]] + "primary_key": [ + ["customer.id"], + ["click_view.gclid"], + ["segments.date"], + ["segments.ad_network_type"] + ] }, { "stream": { "name": "geographic_report", "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_primary_key": [ + ["customer.id"], + ["geographic_view.country_criterion_id"], + ["geographic_view.location_type"], + ["segments.date"] + ], "source_defined_cursor": true, "default_cursor_field": ["segments.date"] }, "sync_mode": "incremental", "destination_sync_mode": "overwrite", + "primary_key": [ + ["customer.id"], + ["geographic_view.country_criterion_id"], + ["geographic_view.location_type"], + ["segments.date"] + ], "cursor_field": ["segments.date"] }, { @@ -43,11 +77,23 @@ "name": "keyword_report", "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_primary_key": [ + ["customer.id"], + ["ad_group_criterion.criterion_id"], + ["ad_group.id"], + ["segments.date"] + ], "source_defined_cursor": true, "default_cursor_field": ["segments.date"] }, "sync_mode": "incremental", "destination_sync_mode": "overwrite", + "primary_key": [ + ["customer.id"], + ["ad_group_criterion.criterion_id"], + ["ad_group.id"], + ["segments.date"] + ], "cursor_field": ["segments.date"] }, { @@ -55,22 +101,50 @@ "name": "display_topics_performance_report", "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_primary_key": [ + ["customer.id"], + ["ad_group.id"], + ["ad_group_criterion.criterion_id"], + ["segments.date"], + ["segments.ad_network_type"], + ["segments.device"] + ], "source_defined_cursor": true, "default_cursor_field": ["segments.date"] }, "sync_mode": "incremental", "destination_sync_mode": "overwrite", - "cursor_field": ["segments.date"] + "cursor_field": ["segments.date"], + "primary_key": [ + ["customer.id"], + ["ad_group.id"], + ["ad_group_criterion.criterion_id"], + ["segments.date"], + ["segments.ad_network_type"], + ["segments.device"] + ] }, { "stream": { "name": "shopping_performance_report", "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_primary_key": [ + ["customer.id"], + ["segments.date"], + ["segments.ad_network_type"], + ["segments.device"] + ], "source_defined_cursor": true, "default_cursor_field": ["segments.date"] }, "sync_mode": "incremental", + "primary_key": [ + ["customer.id"], + ["segments.date"], + ["segments.ad_network_type"], + ["segments.device"] + ], "destination_sync_mode": "overwrite", "cursor_field": ["segments.date"] }, @@ -81,6 +155,7 @@ "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, "source_defined_primary_key": [ + ["customer.id"], ["ad_group_ad.ad.id"], ["segments.date"] ], @@ -89,7 +164,7 @@ "sync_mode": "incremental", "destination_sync_mode": "overwrite", "cursor_field": ["segments.date"], - "primary_key": [["ad_group_ad.ad.id"], ["segments.date"]] + "primary_key": [["customer.id"], ["ad_group_ad.ad.id"], ["segments.date"]] }, { "stream": { @@ -98,12 +173,16 @@ "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, "default_cursor_field": ["segments.date"], - "source_defined_primary_key": [["ad_group.id"], ["segments.date"]] + "source_defined_primary_key": [ + ["customer.id"], + ["ad_group.id"], + ["segments.date"] + ] }, "sync_mode": "incremental", "destination_sync_mode": "overwrite", "cursor_field": ["segments.date"], - "primary_key": [["ad_group.id"], ["segments.date"]] + "primary_key": [["customer.id"], ["ad_group.id"], ["segments.date"]] }, { "stream": { @@ -156,10 +235,24 @@ "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, + "source_defined_primary_key": [ + ["customer.id"], + ["user_location_view.country_criterion_id"], + ["user_location_view.targeting_location"], + ["segments.date"], + ["segments.ad_network_type"] + ], "default_cursor_field": ["segments.date"] }, "sync_mode": "incremental", "destination_sync_mode": "overwrite", + "primary_key": [ + ["customer.id"], + ["user_location_view.country_criterion_id"], + ["user_location_view.targeting_location"], + ["segments.date"], + ["segments.ad_network_type"] + ], "cursor_field": ["segments.date"] }, { @@ -168,10 +261,22 @@ "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, + "source_defined_primary_key": [ + ["customer.id"], + ["ad_group_ad.ad.id"], + ["segments.date"], + ["segments.ad_network_type"] + ], "default_cursor_field": ["segments.date"] }, "sync_mode": "incremental", "destination_sync_mode": "overwrite", + "primary_key": [ + ["customer.id"], + ["ad_group_ad.ad.id"], + ["segments.date"], + ["segments.ad_network_type"] + ], "cursor_field": ["segments.date"] }, { @@ -179,11 +284,27 @@ "name": "display_keyword_performance_report", "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_primary_key": [ + ["customer.id"], + ["ad_group.id"], + ["ad_group_criterion.criterion_id"], + ["segments.date"], + ["segments.ad_network_type"], + ["segments.device"] + ], "source_defined_cursor": true, "default_cursor_field": ["segments.date"] }, "sync_mode": "incremental", "destination_sync_mode": "overwrite", + "primary_key": [ + ["customer.id"], + ["ad_group.id"], + ["ad_group_criterion.criterion_id"], + ["segments.date"], + ["segments.ad_network_type"], + ["segments.device"] + ], "cursor_field": ["segments.date"] }, { @@ -192,6 +313,7 @@ "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_primary_key": [ + ["customer.id"], ["campaign.id"], ["bidding_strategy.id"], ["segments.date"] @@ -199,9 +321,10 @@ "source_defined_cursor": true, "default_cursor_field": ["segments.date"] }, - "sync_mode": "incremental", - "destination_sync_mode": "append", + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite", "primary_key": [ + ["customer.id"], ["campaign.id"], ["bidding_strategy.id"], ["segments.date"] @@ -214,6 +337,7 @@ "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_primary_key": [ + ["customer.id"], ["ad_group.id"], ["bidding_strategy.id"], ["segments.date"] @@ -221,14 +345,37 @@ "source_defined_cursor": true, "default_cursor_field": ["segments.date"] }, - "sync_mode": "incremental", - "destination_sync_mode": "append", + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite", "primary_key": [ + ["customer.id"], ["ad_group.id"], ["bidding_strategy.id"], ["segments.date"] ], "cursor_field": ["segments.date"] + }, + { + "stream": { + "name": "ad_group_criterions", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_primary_key": [["ad_group_criterion.resource_name"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["ad_group_criterion.resource_name"]] + }, + { + "stream": { + "name": "campaign_criterion", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_primary_key": [["campaign_criterion.resource_name"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["campaign_criterion.resource_name"]] } ] } diff --git a/airbyte-integrations/connectors/source-google-ads/integration_tests/state.json b/airbyte-integrations/connectors/source-google-ads/integration_tests/state.json new file mode 100644 index 000000000000..95d5f3756347 --- /dev/null +++ b/airbyte-integrations/connectors/source-google-ads/integration_tests/state.json @@ -0,0 +1,73 @@ +[ + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "ad_groups" + }, + "stream_state": { + "4651612872": { + "segments.date": "2022-04-09" + } + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "campaigns" + }, + "stream_state": { + "4651612872": { + "segments.date": "2022-04-09" + } + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "ad_group_criterions" + }, + "stream_state": { + "change_status": { + "4651612872": { + "change_status.last_change_date_time": "2023-08-01 13:20:01.003295" + } + } + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "ad_listing_group_criterions" + }, + "stream_state": { + "change_status": { + "4651612872": { + "change_status.last_change_date_time": "2023-08-01 13:20:01.003295" + } + } + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "campaign_criterion" + }, + "stream_state": { + "change_status": { + "4651612872": { + "change_status.last_change_date_time": "2023-08-01 13:20:01.003295" + } + } + } + } + } +] diff --git a/airbyte-integrations/connectors/source-google-ads/metadata.yaml b/airbyte-integrations/connectors/source-google-ads/metadata.yaml index 381177418962..e2e2ed0c9ef8 100644 --- a/airbyte-integrations/connectors/source-google-ads/metadata.yaml +++ b/airbyte-integrations/connectors/source-google-ads/metadata.yaml @@ -6,7 +6,7 @@ data: connectorSubtype: api connectorType: source definitionId: 253487c0-2246-43ba-a21f-5116b20a2c50 - dockerImageTag: 0.7.4 + dockerImageTag: 0.9.0 dockerRepository: airbyte/source-google-ads githubIssueLabel: source-google-ads icon: google-adwords.svg diff --git a/airbyte-integrations/connectors/source-google-ads/setup.py b/airbyte-integrations/connectors/source-google-ads/setup.py index 35bfce507db0..581c3b2d0159 100644 --- a/airbyte-integrations/connectors/source-google-ads/setup.py +++ b/airbyte-integrations/connectors/source-google-ads/setup.py @@ -7,7 +7,7 @@ # pin protobuf==3.20.0 as other versions may cause problems on different architectures # (see https://github.com/airbytehq/airbyte/issues/13580) -MAIN_REQUIREMENTS = ["airbyte-cdk>=0.2.2", "google-ads==20.0.0", "protobuf", "pendulum"] +MAIN_REQUIREMENTS = ["airbyte-cdk>=0.51.3", "google-ads==20.0.0", "protobuf", "pendulum"] TEST_REQUIREMENTS = ["pytest~=6.1", "pytest-mock", "freezegun", "requests-mock"] diff --git a/airbyte-integrations/connectors/source-google-ads/source_google_ads/google_ads.py b/airbyte-integrations/connectors/source-google-ads/source_google_ads/google_ads.py index dc67173a5d85..80dd5aa3db0a 100644 --- a/airbyte-integrations/connectors/source-google-ads/source_google_ads/google_ads.py +++ b/airbyte-integrations/connectors/source-google-ads/source_google_ads/google_ads.py @@ -5,7 +5,7 @@ import logging from enum import Enum -from typing import Any, Iterator, List, Mapping, MutableMapping +from typing import Any, Iterable, Iterator, List, Mapping, MutableMapping import backoff from airbyte_cdk.models import FailureType @@ -16,36 +16,6 @@ from google.auth import exceptions from proto.marshal.collections import Repeated, RepeatedComposite -REPORT_MAPPING = { - "accounts": "customer", - "account_labels": "customer_label", - "account_performance_report": "customer", - "ad_group_ads": "ad_group_ad", - "ad_group_ad_labels": "ad_group_ad_label", - "ad_group_ad_report": "ad_group_ad", - "ad_groups": "ad_group", - "ad_group_bidding_strategies": "ad_group", - "ad_group_criterions": "ad_group_criterion", - "ad_group_criterion_labels": "ad_group_criterion_label", - "ad_group_labels": "ad_group_label", - "ad_listing_group_criterions": "ad_group_criterion", - "audience": "audience", - "campaigns": "campaign", - "campaign_real_time_bidding_settings": "campaign", - "campaign_bidding_strategies": "campaign", - "campaign_budget": "campaign_budget", - "campaign_labels": "campaign_label", - "click_view": "click_view", - "display_keyword_performance_report": "display_keyword_view", - "display_topics_performance_report": "topic_view", - "geographic_report": "geographic_view", - "keyword_report": "keyword_view", - "labels": "label", - "service_accounts": "customer", - "shopping_performance_report": "shopping_performance_view", - "user_interest": "user_interest", - "user_location_report": "user_location_view", -} API_VERSION = "v13" logger = logging.getLogger("airbyte") @@ -113,16 +83,36 @@ def get_fields_from_schema(schema: Mapping[str, Any]) -> List[str]: @staticmethod def convert_schema_into_query( - schema: Mapping[str, Any], report_name: str, from_date: str = None, to_date: str = None, cursor_field: str = None + fields: Iterable[str], + table_name: str, + conditions: List[str] = None, + order_field: str = None, + limit: int = None, ) -> str: - from_category = REPORT_MAPPING[report_name] - fields = GoogleAds.get_fields_from_schema(schema) - fields = ", ".join(fields) + """ + Constructs a Google Ads query based on the provided parameters. + + Args: + - fields (Iterable[str]): List of fields to be selected in the query. + - table_name (str): Name of the table from which data will be selected. + - conditions (List[str], optional): List of conditions to be applied in the WHERE clause. Defaults to None. + - order_field (str, optional): Field by which the results should be ordered. Defaults to None. + - limit (int, optional): Maximum number of results to be returned. Defaults to None. + + Returns: + - str: Constructed Google Ads query. + """ + + query_template = f"SELECT {', '.join(fields)} FROM {table_name}" + + if conditions: + query_template += " WHERE " + " AND ".join(conditions) - query_template = f"SELECT {fields} FROM {from_category}" + if order_field: + query_template += f" ORDER BY {order_field} ASC" - if cursor_field: - query_template += f" WHERE {cursor_field} >= '{from_date}' AND {cursor_field} <= '{to_date}' ORDER BY {cursor_field} ASC" + if limit: + query_template += f" LIMIT {limit}" return query_template diff --git a/airbyte-integrations/connectors/source-google-ads/source_google_ads/schemas/ad_group_criterions.json b/airbyte-integrations/connectors/source-google-ads/source_google_ads/schemas/ad_group_criterions.json index bf90272fbb3c..4cf5d21bb533 100644 --- a/airbyte-integrations/connectors/source-google-ads/source_google_ads/schemas/ad_group_criterions.json +++ b/airbyte-integrations/connectors/source-google-ads/source_google_ads/schemas/ad_group_criterions.json @@ -2,6 +2,12 @@ "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "properties": { + "deleted_at": { + "type": ["null", "string"] + }, + "change_status.last_change_date_time": { + "type": ["null", "string"] + }, "ad_group.id": { "type": ["null", "integer"] }, diff --git a/airbyte-integrations/connectors/source-google-ads/source_google_ads/schemas/ad_listing_group_criterions.json b/airbyte-integrations/connectors/source-google-ads/source_google_ads/schemas/ad_listing_group_criterions.json index bfd193ddef36..0d205b62f057 100644 --- a/airbyte-integrations/connectors/source-google-ads/source_google_ads/schemas/ad_listing_group_criterions.json +++ b/airbyte-integrations/connectors/source-google-ads/source_google_ads/schemas/ad_listing_group_criterions.json @@ -2,6 +2,15 @@ "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "properties": { + "deleted_at": { + "type": ["null", "string"] + }, + "change_status.last_change_date_time": { + "type": ["null", "string"] + }, + "ad_group_criterion.resource_name": { + "type": ["null", "string"] + }, "ad_group.id": { "type": ["null", "integer"] }, diff --git a/airbyte-integrations/connectors/source-google-ads/source_google_ads/schemas/campaign_criterion.json b/airbyte-integrations/connectors/source-google-ads/source_google_ads/schemas/campaign_criterion.json new file mode 100644 index 000000000000..dc5b2f8109a2 --- /dev/null +++ b/airbyte-integrations/connectors/source-google-ads/source_google_ads/schemas/campaign_criterion.json @@ -0,0 +1,36 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": { + "deleted_at": { + "type": ["null", "string"] + }, + "change_status.last_change_date_time": { + "type": ["null", "string"] + }, + "campaign.id": { + "type": ["null", "integer"] + }, + "campaign_criterion.resource_name": { + "type": ["null", "string"] + }, + "campaign_criterion.campaign": { + "type": ["null", "string"] + }, + "campaign_criterion.age_range.type": { + "type": ["null", "string"] + }, + "campaign_criterion.mobile_application.name": { + "type": ["null", "string"] + }, + "campaign_criterion.negative": { + "type": ["null", "boolean"] + }, + "campaign_criterion.youtube_channel.channel_id": { + "type": ["null", "string"] + }, + "campaign_criterion.youtube_video.video_id": { + "type": ["null", "string"] + } + } +} diff --git a/airbyte-integrations/connectors/source-google-ads/source_google_ads/schemas/change_status.json b/airbyte-integrations/connectors/source-google-ads/source_google_ads/schemas/change_status.json new file mode 100644 index 000000000000..8bbc0ebe8142 --- /dev/null +++ b/airbyte-integrations/connectors/source-google-ads/source_google_ads/schemas/change_status.json @@ -0,0 +1,46 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": { + "change_status.last_change_date_time": { + "type": ["null", "string"] + }, + "change_status.resource_type": { + "type": ["null", "string"], + "enum": [ + "AD_GROUP", + "AD_GROUP_AD", + "AD_GROUP_ASSET", + "AD_GROUP_BID_MODIFIER", + "AD_GROUP_CRITERION", + "AD_GROUP_FEED", + "ASSET", + "CAMPAIGN", + "CAMPAIGN_ASSET", + "CAMPAIGN_CRITERION", + "CAMPAIGN_FEED", + "CAMPAIGN_SHARED_SET", + "COMBINED_AUDIENCE", + "CUSTOMER_ASSET", + "FEED", + "FEED_ITEM", + "SHARED_SET", + "UNKNOWN", + "UNSPECIFIED" + ] + }, + "change_status.resource_status": { + "type": ["null", "string"], + "enum": ["ADDED", "CHANGED", "REMOVED", "UNKNOWN", "UNSPECIFIED"] + }, + "change_status.resource_name": { + "type": ["null", "string"] + }, + "change_status.ad_group_criterion": { + "type": ["null", "string"] + }, + "change_status.campaign_criterion": { + "type": ["null", "string"] + } + } +} diff --git a/airbyte-integrations/connectors/source-google-ads/source_google_ads/schemas/display_keyword_performance_report.json b/airbyte-integrations/connectors/source-google-ads/source_google_ads/schemas/display_keyword_performance_report.json index 0eb6676e558f..646b76e87fed 100644 --- a/airbyte-integrations/connectors/source-google-ads/source_google_ads/schemas/display_keyword_performance_report.json +++ b/airbyte-integrations/connectors/source-google-ads/source_google_ads/schemas/display_keyword_performance_report.json @@ -153,10 +153,10 @@ "type": ["null", "integer"] }, "ad_group_criterion.final_mobile_urls": { - "type": ["null", "string", "array"] + "type": ["null", "array"] }, "ad_group_criterion.final_urls": { - "type": ["null", "string", "array"] + "type": ["null", "array"] }, "metrics.gmail_forwards": { "type": ["null", "integer"] diff --git a/airbyte-integrations/connectors/source-google-ads/source_google_ads/schemas/display_topics_performance_report.json b/airbyte-integrations/connectors/source-google-ads/source_google_ads/schemas/display_topics_performance_report.json index 1d6cbeab5ede..3ae4c2968a04 100644 --- a/airbyte-integrations/connectors/source-google-ads/source_google_ads/schemas/display_topics_performance_report.json +++ b/airbyte-integrations/connectors/source-google-ads/source_google_ads/schemas/display_topics_performance_report.json @@ -157,10 +157,10 @@ "type": ["null", "integer"] }, "ad_group_criterion.final_mobile_urls": { - "type": ["null", "string", "array"] + "type": ["null", "array"] }, "ad_group_criterion.final_urls": { - "type": ["null", "string", "array"] + "type": ["null", "array"] }, "metrics.gmail_forwards": { "type": ["null", "integer"] diff --git a/airbyte-integrations/connectors/source-google-ads/source_google_ads/source.py b/airbyte-integrations/connectors/source-google-ads/source_google_ads/source.py index e7c485e08e63..3dfa216f35ff 100644 --- a/airbyte-integrations/connectors/source-google-ads/source_google_ads/source.py +++ b/airbyte-integrations/connectors/source-google-ads/source_google_ads/source.py @@ -35,6 +35,7 @@ Audience, CampaignBiddingStrategies, CampaignBudget, + CampaignCriterion, CampaignLabels, Campaigns, ClickView, @@ -50,7 +51,14 @@ ) from .utils import GAQL -FULL_REFRESH_CUSTOM_TABLE = ["asset", "asset_group_listing_group_filter", "custom_audience", "geo_target_constant"] +FULL_REFRESH_CUSTOM_TABLE = [ + "asset", + "asset_group_listing_group_filter", + "custom_audience", + "geo_target_constant", + "change_event", + "change_status", +] class SourceGoogleAds(AbstractSource): @@ -80,14 +88,19 @@ def get_credentials(config: Mapping[str, Any]) -> MutableMapping[str, Any]: @staticmethod def get_incremental_stream_config(google_api: GoogleAds, config: Mapping[str, Any], customers: List[Customer]): + # date range is mandatory parameter for incremental streams, so default start day is used + start_date = config.get("start_date", today().subtract(years=2).to_date_string()) + end_date = config.get("end_date") - if end_date: - end_date = min(today(), parse(end_date)).to_date_string() + # check if end_date is not in the future, set to today if it is + end_date = min(today(), parse(end_date)) if end_date else today() + end_date = end_date.to_date_string() + incremental_stream_config = dict( api=google_api, customers=customers, conversion_window_days=config["conversion_window_days"], - start_date=config["start_date"], + start_date=start_date, end_date=end_date, ) return incremental_stream_config @@ -150,26 +163,28 @@ def streams(self, config: Mapping[str, Any]) -> List[Stream]: accounts = self.get_account_info(google_api, config) customers = Customer.from_accounts(accounts) non_manager_accounts = [customer for customer in customers if not customer.is_manager_account] + default_config = dict(api=google_api, customers=customers) incremental_config = self.get_incremental_stream_config(google_api, config, customers) non_manager_incremental_config = self.get_incremental_stream_config(google_api, config, non_manager_accounts) streams = [ AdGroupAds(**incremental_config), - AdGroupAdLabels(google_api, customers=customers), + AdGroupAdLabels(**default_config), AdGroups(**incremental_config), AdGroupBiddingStrategies(**incremental_config), - AdGroupCriterions(google_api, customers=customers), - AdGroupCriterionLabels(google_api, customers=customers), - AdGroupLabels(google_api, customers=customers), - AdListingGroupCriterions(google_api, customers=customers), + AdGroupCriterions(**default_config), + AdGroupCriterionLabels(**default_config), + AdGroupLabels(**default_config), + AdListingGroupCriterions(**default_config), Accounts(**incremental_config), - AccountLabels(google_api, customers=customers), - Audience(google_api, customers=customers), + AccountLabels(**default_config), + Audience(**default_config), CampaignBiddingStrategies(**incremental_config), + CampaignCriterion(**default_config), CampaignBudget(**incremental_config), - CampaignLabels(google_api, customers=customers), + CampaignLabels(**default_config), ClickView(**incremental_config), - Labels(google_api, customers=customers), - UserInterest(google_api, customers=customers), + Labels(**default_config), + UserInterest(**default_config), ] # Metrics streams cannot be requested for a manager account. if non_manager_accounts: diff --git a/airbyte-integrations/connectors/source-google-ads/source_google_ads/spec.json b/airbyte-integrations/connectors/source-google-ads/source_google_ads/spec.json index 73e4eca612b0..8a15796874fc 100644 --- a/airbyte-integrations/connectors/source-google-ads/source_google_ads/spec.json +++ b/airbyte-integrations/connectors/source-google-ads/source_google_ads/spec.json @@ -4,7 +4,7 @@ "$schema": "http://json-schema.org/draft-07/schema#", "title": "Google Ads Spec", "type": "object", - "required": ["credentials", "start_date", "customer_id"], + "required": ["credentials", "customer_id"], "additionalProperties": true, "properties": { "credentials": { @@ -67,7 +67,7 @@ "start_date": { "type": "string", "title": "Start Date", - "description": "UTC date in the format YYYY-MM-DD. Any data before this date will not be replicated.", + "description": "UTC date in the format YYYY-MM-DD. Any data before this date will not be replicated. (Default value of two years ago is used if not set)", "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$", "pattern_descriptor": "YYYY-MM-DD", "examples": ["2017-01-25"], @@ -77,7 +77,7 @@ "end_date": { "type": "string", "title": "End Date", - "description": "UTC date in the format YYYY-MM-DD. Any data after this date will not be replicated.", + "description": "UTC date in the format YYYY-MM-DD. Any data after this date will not be replicated. (Default value of today is used if not set)", "pattern": "^$|^[0-9]{4}-[0-9]{2}-[0-9]{2}$", "pattern_descriptor": "YYYY-MM-DD", "examples": ["2017-01-30"], diff --git a/airbyte-integrations/connectors/source-google-ads/source_google_ads/streams.py b/airbyte-integrations/connectors/source-google-ads/source_google_ads/streams.py index 1cebedf2abd6..9005f797b31e 100644 --- a/airbyte-integrations/connectors/source-google-ads/source_google_ads/streams.py +++ b/airbyte-integrations/connectors/source-google-ads/source_google_ads/streams.py @@ -2,39 +2,23 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # -import logging -from abc import ABC +from abc import ABC, abstractmethod from typing import Any, Iterable, List, Mapping, MutableMapping, Optional import pendulum from airbyte_cdk.models import SyncMode from airbyte_cdk.sources.streams import IncrementalMixin, Stream from airbyte_cdk.sources.utils.transform import TransformConfig, TypeTransformer +from airbyte_cdk.utils import AirbyteTracedException +from airbyte_protocol.models import FailureType from google.ads.googleads.errors import GoogleAdsException from google.ads.googleads.v11.errors.types.authorization_error import AuthorizationErrorEnum from google.ads.googleads.v11.errors.types.request_error import RequestErrorEnum from google.ads.googleads.v11.services.services.google_ads_service.pagers import SearchPager -from .google_ads import GoogleAds +from .google_ads import GoogleAds, logger from .models import Customer - - -class cyclic_sieve: - def __init__(self, logger: logging.Logger, fraction: int = 10): - self._logger = logger - self._cycle_counter = 0 - self._fraction = fraction - - def __getattr__(self, item): - if self._cycle_counter % self._fraction == 0: - return getattr(self._logger, item) - return self.stub - - def stub(self, *args, **kwargs): - pass - - def bump(self): - self._cycle_counter += 1 +from .utils import REPORT_MAPPING def parse_dates(stream_slice): @@ -45,21 +29,40 @@ def parse_dates(stream_slice): def chunk_date_range( start_date: str, - conversion_window: int, end_date: str = None, + conversion_window: int = 0, days_of_data_storage: int = None, - range_days: int = None, time_zone=None, + time_format="YYYY-MM-DD", + slice_duration: pendulum.Duration = pendulum.duration(days=14), + slice_step: pendulum.Duration = pendulum.duration(days=1), ) -> Iterable[Optional[MutableMapping[str, any]]]: """ - Returns `start_date` and `end_date` for the given stream_slice. - If (end_date - start_date) is a big date range (>= 1 month), it can take more than 2 hours to process all the records from the given slice. - After 2 hours next page tokens will be expired, finally resulting in page token expired error - Currently this method returns `start_date` and `end_date` with `range_days` difference which is 15 days in most cases. + Splits a date range into smaller chunks based on the provided parameters. + + Args: + start_date (str): The beginning date of the range. + end_date (str, optional): The ending date of the range. Defaults to today's date. + conversion_window (int): Number of days to subtract from the start date. Defaults to 0. + days_of_data_storage (int, optional): Maximum age of data that can be retrieved. Used to adjust the start date. + time_zone: Time zone to be used for date parsing and today's date calculation. If not provided, the default time zone is used. + time_format (str): Format to be used when returning dates. Defaults to 'YYYY-MM-DD'. + slice_duration (pendulum.Duration): Duration of each chunk. Defaults to 14 days. + slice_step (pendulum.Duration): Step size to move to the next chunk. Defaults to 1 day. + + Returns: + Iterable[Optional[MutableMapping[str, any]]]: An iterable of dictionaries containing start and end dates for each chunk. + If the adjusted start date is greater than the end date, returns a list with a None value. + + Notes: + - If the difference between `end_date` and `start_date` is large (e.g., >= 1 month), processing all records might take a long time. + - Tokens for fetching subsequent pages of data might expire after 2 hours, leading to potential errors. + - The function adjusts the start date based on `days_of_data_storage` and `conversion_window` to adhere to certain data retrieval policies, such as Google Ads' policy of only retrieving data not older than a certain number of days. + - The method returns `start_date` and `end_date` with a difference typically spanning 15 days to avoid token expiration issues. """ - today = pendulum.today(tz=time_zone) - end_date = min(pendulum.parse(end_date, tz=time_zone), today) if end_date else today start_date = pendulum.parse(start_date, tz=time_zone) + today = pendulum.today(tz=time_zone) + end_date = pendulum.parse(end_date, tz=time_zone) if end_date else today # For some metrics we can only get data not older than N days, it is Google Ads policy if days_of_data_storage: @@ -73,13 +76,13 @@ def chunk_date_range( start_date = start_date.subtract(days=conversion_window) slice_start = start_date - while slice_start.date() <= end_date.date(): - slice_end = min(end_date, slice_start.add(days=range_days - 1)) + while slice_start <= end_date: + slice_end = min(end_date, slice_start + slice_duration) yield { - "start_date": slice_start.to_date_string(), - "end_date": slice_end.to_date_string(), + "start_date": slice_start.format(time_format), + "end_date": slice_end.format(time_format), } - slice_start = slice_end.add(days=1) + slice_start = slice_end + slice_step class GoogleAdsStream(Stream, ABC): @@ -88,13 +91,14 @@ class GoogleAdsStream(Stream, ABC): def __init__(self, api: GoogleAds, customers: List[Customer]): self.google_ads_client = api self.customers = customers - self.base_sieve_logger = cyclic_sieve(self.logger, 10) def get_query(self, stream_slice: Mapping[str, Any]) -> str: - query = GoogleAds.convert_schema_into_query(schema=self.get_json_schema(), report_name=self.name) + fields = GoogleAds.get_fields_from_schema(self.get_json_schema()) + table_name = REPORT_MAPPING[self.name] + query = GoogleAds.convert_schema_into_query(fields=fields, table_name=table_name) return query - def parse_response(self, response: SearchPager) -> Iterable[Mapping]: + def parse_response(self, response: SearchPager, stream_slice: Optional[Mapping[str, Any]] = None) -> Iterable[Mapping]: for result in response: yield self.google_ads_client.parse_single_result(self.get_json_schema(), result) @@ -103,8 +107,6 @@ def stream_slices(self, stream_state: Mapping[str, Any] = None, **kwargs) -> Ite yield {"customer_id": customer.id} def read_records(self, sync_mode, stream_slice: Optional[Mapping[str, Any]] = None, **kwargs) -> Iterable[Mapping[str, Any]]: - self.base_sieve_logger.bump() - self.base_sieve_logger.info(f"Read records using g-ads client. Stream slice is {stream_slice}") if stream_slice is None: return [] @@ -112,26 +114,29 @@ def read_records(self, sync_mode, stream_slice: Optional[Mapping[str, Any]] = No try: response_records = self.google_ads_client.send_request(self.get_query(stream_slice), customer_id=customer_id) for response in response_records: - yield from self.parse_response(response) + yield from self.parse_response(response, stream_slice) except GoogleAdsException as exc: exc.customer_id = customer_id if not self.CATCH_API_ERRORS: raise for error in exc.failure.errors: if error.error_code.authorization_error == AuthorizationErrorEnum.AuthorizationError.CUSTOMER_NOT_ENABLED: - self.base_sieve_logger.error(error.message) + logger.error(error.message) continue # log and ignore only CUSTOMER_NOT_ENABLED error, otherwise - raise further raise class IncrementalGoogleAdsStream(GoogleAdsStream, IncrementalMixin, ABC): + primary_key = None days_of_data_storage = None cursor_field = "segments.date" - primary_key = None - # Date range is set to 15 days, because for conversion_window_days default value is 14. - # Range less than 15 days will break the integration tests. - range_days = 15 + cursor_time_format = "YYYY-MM-DD" + # Slice duration is set to 14 days, because for conversion_window_days default value is 14. + # Range less than 14 days will break the integration tests. + slice_duration = pendulum.duration(days=14) + # slice step is difference from one slice end_date and next slice start_date + slice_step = pendulum.duration(days=1) def __init__(self, start_date: str, conversion_window_days: int, end_date: str = None, **kwargs): self.conversion_window_days = conversion_window_days @@ -139,7 +144,11 @@ def __init__(self, start_date: str, conversion_window_days: int, end_date: str = self._end_date = end_date self._state = {} super().__init__(**kwargs) - self.incremental_sieve_logger = cyclic_sieve(self.logger, 10) + + @property + def state_checkpoint_interval(self) -> int: + # default page size is 10000, so set to 10% of it + return 1000 @property def state(self) -> MutableMapping[str, Any]: @@ -149,13 +158,12 @@ def state(self) -> MutableMapping[str, Any]: def state(self, value: MutableMapping[str, Any]): self._state.update(value) - def current_state(self, customer_id, default=None): + def get_current_state(self, customer_id, default=None): default = default or self.state.get(self.cursor_field) return self.state.get(customer_id, {}).get(self.cursor_field) or default def stream_slices(self, stream_state: Mapping[str, Any] = None, **kwargs) -> Iterable[Optional[MutableMapping[str, any]]]: for customer in self.customers: - logger = cyclic_sieve(self.logger, 10) stream_state = stream_state or {} if stream_state.get(customer.id): start_date = stream_state[customer.id].get(self.cursor_field) or self._start_date @@ -167,22 +175,54 @@ def stream_slices(self, stream_state: Mapping[str, Any] = None, **kwargs) -> Ite start_date = self._start_date end_date = self._end_date - logger.info(f"Generating slices for customer {customer.id}. Start date is {start_date}, end date is {end_date}") for chunk in chunk_date_range( start_date=start_date, end_date=end_date, conversion_window=self.conversion_window_days, days_of_data_storage=self.days_of_data_storage, - range_days=self.range_days, time_zone=customer.time_zone, + time_format=self.cursor_time_format, + slice_duration=self.slice_duration, + slice_step=self.slice_step, ): if chunk: chunk["customer_id"] = customer.id - logger.info(f"Next slice is {chunk}") - logger.bump() yield chunk + def _update_state(self, customer_id: str, record: MutableMapping[str, Any]): + """Update the state based on the latest record's cursor value.""" + current_state = self.get_current_state(customer_id) + if current_state: + date_in_current_stream = pendulum.parse(current_state) + date_in_latest_record = pendulum.parse(record[self.cursor_field]) + cursor_value = (max(date_in_current_stream, date_in_latest_record)).format(self.cursor_time_format) + self.state = {customer_id: {self.cursor_field: cursor_value}} + else: + self.state = {customer_id: {self.cursor_field: record[self.cursor_field]}} + + def _handle_expired_page_exception(self, exception: GoogleAdsException, stream_slice: MutableMapping[str, Any], customer_id: str): + """ + Handle GoogleAdsException errors, specifically, the EXPIRED_PAGE_TOKEN error by updating the stream slice. + """ + error = next(iter(exception.failure.errors)) + if error.error_code.request_error == RequestErrorEnum.RequestError.EXPIRED_PAGE_TOKEN: + start_date, end_date = parse_dates(stream_slice) + current_state = self.get_current_state(customer_id) + + if end_date - start_date <= self.slice_step: + # If range days less than slice_step, no need in retry, because it's the minimum date range + raise exception + elif current_state == stream_slice["start_date"]: + # It couldn't read all the records within one day, it will enter an infinite loop, + # so raise the error + raise exception + # Retry reading records from where it crushed + stream_slice["start_date"] = self.get_current_state(customer_id, default=stream_slice["start_date"]) + else: + # raise caught error for other error statuses + raise exception + def read_records( self, sync_mode: SyncMode, cursor_field: List[str] = None, stream_slice: MutableMapping[str, Any] = None, **kwargs ) -> Iterable[Mapping[str, Any]]: @@ -190,64 +230,30 @@ def read_records( This method is overridden to handle GoogleAdsException with EXPIRED_PAGE_TOKEN error code, and update `start_date` key in the `stream_slice` with the latest read record's cursor value, then retry the sync. """ - self.incremental_sieve_logger.bump() while True: - self.incremental_sieve_logger.info("Starting a while loop iteration") customer_id = stream_slice and stream_slice["customer_id"] + try: + # count records to update slice date range with latest record time when limit is hit records = super().read_records(sync_mode, stream_slice=stream_slice) for record in records: - current_state = self.current_state(customer_id) - if current_state: - date_in_current_stream = pendulum.parse(current_state) - date_in_latest_record = pendulum.parse(record[self.cursor_field]) - cursor_value = (max(date_in_current_stream, date_in_latest_record)).to_date_string() - self.state = {customer_id: {self.cursor_field: cursor_value}} - # When large amount of data this log produces so much records so the enire log is not usable - # See: https://github.com/airbytehq/oncall/issues/2460 - # self.incremental_sieve_logger.info(f"Updated state for customer {customer_id}. Full state is {self.state}.") - yield record - continue - self.state = {customer_id: {self.cursor_field: record[self.cursor_field]}} - self.incremental_sieve_logger.info(f"Initialized state for customer {customer_id}. Full state is {self.state}.") + self._update_state(customer_id, record) yield record - continue except GoogleAdsException as exception: - self.incremental_sieve_logger.info(f"Caught a GoogleAdsException: {str(exception)}") - error = next(iter(exception.failure.errors)) - if error.error_code.request_error == RequestErrorEnum.RequestError.EXPIRED_PAGE_TOKEN: - start_date, end_date = parse_dates(stream_slice) - current_state = self.current_state(customer_id) - self.incremental_sieve_logger.info( - f"Start date is {start_date}. End date is {end_date}. Current state is {current_state}" - ) - if (end_date - start_date).days == 1: - # If range days is 1, no need in retry, because it's the minimum date range - self.incremental_sieve_logger.error("Page token has expired.") - raise exception - elif current_state == stream_slice["start_date"]: - # It couldn't read all the records within one day, it will enter an infinite loop, - # so raise the error - self.incremental_sieve_logger.error("Page token has expired.") - raise exception - # Retry reading records from where it crushed - stream_slice["start_date"] = self.current_state(customer_id, default=stream_slice["start_date"]) - self.incremental_sieve_logger.info(f"Retry reading records from where it crushed with a modified slice: {stream_slice}") - else: - # raise caught error for other error statuses - raise exception + # stream_slice will be updated in _handle_expired_page_exception if needed + self._handle_expired_page_exception(exception, stream_slice, customer_id) else: - # return the control if no exception is raised - self.incremental_sieve_logger.info("Current slice has been read. Exiting read_records()") return def get_query(self, stream_slice: Mapping[str, Any] = None) -> str: + fields = GoogleAds.get_fields_from_schema(self.get_json_schema()) + table_name = REPORT_MAPPING[self.name] + + start_date, end_date = stream_slice.get("start_date"), stream_slice.get("end_date") + cursor_condition = [f"{self.cursor_field} >= '{start_date}' AND {self.cursor_field} <= '{end_date}'"] + query = GoogleAds.convert_schema_into_query( - schema=self.get_json_schema(), - report_name=self.name, - from_date=stream_slice.get("start_date"), - to_date=stream_slice.get("end_date"), - cursor_field=self.cursor_field, + fields=fields, table_name=table_name, conditions=cursor_condition, order_field=self.cursor_field ) return query @@ -259,6 +265,12 @@ class Accounts(IncrementalGoogleAdsStream): primary_key = ["customer.id", "segments.date"] + def parse_response(self, response: SearchPager, stream_slice: Optional[Mapping[str, Any]] = None) -> Iterable[Mapping]: + for record in super().parse_response(response): + if isinstance(record.get("customer.optimization_score_weight"), int): + record["customer.optimization_score_weight"] = float(record["customer.optimization_score_weight"]) + yield record + class AccountLabels(GoogleAdsStream): """ @@ -339,15 +351,6 @@ class AdGroupBiddingStrategies(IncrementalGoogleAdsStream): primary_key = ["ad_group.id", "bidding_strategy.id", "segments.date"] -class AdGroupCriterions(GoogleAdsStream): - """ - Ad Group Criterions stream: https://developers.google.com/google-ads/api/fields/v14/ad_group_criterion - """ - - transformer = TypeTransformer(TransformConfig.DefaultSchemaNormalization) - primary_key = ["ad_group.id", "ad_group_criterion.criterion_id"] - - class AdGroupCriterionLabels(GoogleAdsStream): """ Ad Group Criterion Labels stream: https://developers.google.com/google-ads/api/fields/v14/ad_group_criterion_label @@ -357,15 +360,6 @@ class AdGroupCriterionLabels(GoogleAdsStream): primary_key = ["ad_group_criterion_label.resource_name"] -class AdListingGroupCriterions(GoogleAdsStream): - """ - Ad Group Criterions stream: https://developers.google.com/google-ads/api/fields/v14/ad_group_criterion - """ - - transformer = TypeTransformer(TransformConfig.DefaultSchemaNormalization) - primary_key = ["ad_group.id", "ad_group_criterion.criterion_id"] - - class AdGroupAds(IncrementalGoogleAdsStream): """ AdGroups stream: https://developers.google.com/google-ads/api/fields/v11/ad_group_ad @@ -444,7 +438,9 @@ class ClickView(IncrementalGoogleAdsStream): primary_key = ["click_view.gclid", "segments.date", "segments.ad_network_type"] days_of_data_storage = 90 - range_days = 1 + # where clause for cursor is inclusive from both sides, duration 0 will result in - '"2022-01-01" <= cursor AND "2022-01-01" >= cursor' + # Queries including ClickView must have a filter limiting the results to one day + slice_duration = pendulum.duration(days=0) class UserInterest(GoogleAdsStream): @@ -469,3 +465,264 @@ class Labels(GoogleAdsStream): """ primary_key = ["label.id"] + + +class ChangeStatus(IncrementalGoogleAdsStream): + """ + Change status stream: https://developers.google.com/google-ads/api/fields/v14/change_status + Stream is only used internally to implement incremental updates for child streams of IncrementalEventsStream + """ + + cursor_field = "change_status.last_change_date_time" + slice_step = pendulum.duration(microseconds=1) + days_of_data_storage = 90 + cursor_time_format = "YYYY-MM-DD HH:mm:ss.SSSSSS" + + def __init__(self, **kwargs): + # date range is not used for these streams, only state is used to sync recent records, otherwise full refresh + for key in ["start_date", "conversion_window_days", "end_date"]: + kwargs.pop(key, None) + super().__init__(start_date=None, conversion_window_days=0, end_date=None, **kwargs) + + @property + def query_limit(self) -> Optional[int]: + "Queries for ChangeStatus resource have to include limit in it" + return 10000 + + def read_records( + self, sync_mode: SyncMode, cursor_field: List[str] = None, stream_slice: MutableMapping[str, Any] = None, **kwargs + ) -> Iterable[Mapping[str, Any]]: + """ + This method is overridden to handle GoogleAdsException with EXPIRED_PAGE_TOKEN error code, + and update `start_date` key in the `stream_slice` with the latest read record's cursor value, then retry the sync. + """ + while True: + records_count = 0 + customer_id = stream_slice and stream_slice["customer_id"] + + try: + # count records to update slice date range with latest record time when limit is hit + records = super().read_records(sync_mode, stream_slice=stream_slice) + for records_count, record in enumerate(records, start=1): + self._update_state(customer_id, record) + yield record + except GoogleAdsException as exception: + # stream_slice will be updated in _handle_expired_page_exception if needed + self._handle_expired_page_exception(exception, stream_slice, customer_id) + else: + # if records limit is hit - update slice with new start_date to continue reading + if self.query_limit and records_count == self.query_limit: + # if state was not updated before hitting limit - raise error to avoid infinite loop + if stream_slice["start_date"] == self.get_current_state(customer_id): + raise AirbyteTracedException( + message=f"More then limit {self.query_limit} records with same cursor field. Incremental sync is not possible for this stream.", + failure_type=FailureType.system_error, + ) + + current_state = self.get_current_state(customer_id, default=stream_slice["start_date"]) + stream_slice["start_date"] = current_state + else: + return + + def get_query(self, stream_slice: Mapping[str, Any] = None) -> str: + fields = GoogleAds.get_fields_from_schema(self.get_json_schema()) + table_name = REPORT_MAPPING[self.name] + + start_date, end_date = stream_slice.get("start_date"), stream_slice.get("end_date") + conditions = [f"{self.cursor_field} >= '{start_date}' AND {self.cursor_field} <= '{end_date}'"] + + resource_type = stream_slice.get("resource_type") + conditions.append(f"change_status.resource_type = '{resource_type}'") + + query = GoogleAds.convert_schema_into_query( + fields=fields, table_name=table_name, conditions=conditions, order_field=self.cursor_field, limit=self.query_limit + ) + return query + + +class IncrementalEventsStream(GoogleAdsStream, IncrementalMixin, ABC): + """ + Abstract class used for getting incremental updates based on events returned from ChangeStatus stream. + Only Ad Group Criterion and Campaign Criterion streams are fetched using this class, for other resources + like Campaigns, Ad Groups, Ad Group Ads, and Campaign Budget we already fetch incremental updates based on date. + Also, these resources, unlike criterions, can't be deleted, only marked as "Removed". + """ + + def __init__(self, **kwargs): + self.parent_stream = ChangeStatus(api=kwargs.get("api"), customers=kwargs.get("customers")) + self.parent_stream_name: str = self.parent_stream.name + self.parent_cursor_field: str = self.parent_stream.cursor_field + + super().__init__(**kwargs) + + self._state = {self.parent_stream_name: {customer.id: None for customer in self.customers}} + + @property + @abstractmethod + def id_field(self) -> str: + "Name of field used for getting records by id" + pass + + @property + @abstractmethod + def parent_id_field(self) -> str: + "Field name of id from parent record" + pass + + @property + @abstractmethod + def resource_type(self) -> str: + "Resource type used for filtering parent records" + pass + + @property + def state(self) -> MutableMapping[str, Any]: + return self._state + + @state.setter + def state(self, value: MutableMapping[str, Any]): + self._state.update(value) + self.parent_stream.state = self._state.get(self.parent_stream_name, {}) + + def get_current_state(self, customer_id, default=None): + return self.parent_stream.get_current_state(customer_id, default) + + def stream_slices(self, stream_state: Mapping[str, Any] = None, **kwargs) -> Iterable[Optional[MutableMapping[str, any]]]: + """ + If state exists read updates from parent stream otherwise return slices with only customer id to sync all records for stream + """ + if stream_state: + slices_generator = self.read_parent_stream(SyncMode.incremental, self.parent_cursor_field, stream_state) + yield from slices_generator + else: + for customer in self.customers: + yield {"customer_id": customer.id, "updated_ids": set(), "deleted_ids": set(), "record_changed_time_map": dict()} + + def _process_parent_record(self, parent_record: MutableMapping[str, Any], child_slice: MutableMapping[str, Any]) -> bool: + """Process a single parent_record and update the child_slice.""" + substream_id = parent_record.get(self.parent_id_field) + if not substream_id: + return False + + # Save time of change + child_slice["record_changed_time_map"][substream_id] = parent_record[self.parent_cursor_field] + + # Add record id to list of changed or deleted items depending on status + slice_id_list = "deleted_ids" if parent_record.get("change_status.resource_status") == "REMOVED" else "updated_ids" + child_slice[slice_id_list].add(substream_id) + + return True + + def read_parent_stream( + self, sync_mode: SyncMode, cursor_field: Optional[str], stream_state: Mapping[str, Any] + ) -> Iterable[Mapping[str, Any]]: + for parent_slice in self.parent_stream.stream_slices( + sync_mode=sync_mode, cursor_field=cursor_field, stream_state=stream_state.get(self.parent_stream_name) + ): + customer_id = parent_slice.get("customer_id") + child_slice = {"customer_id": customer_id, "updated_ids": set(), "deleted_ids": set(), "record_changed_time_map": dict()} + if not self.get_current_state(customer_id): + yield child_slice + continue + + parent_slice["resource_type"] = self.resource_type + for parent_record in self.parent_stream.read_records(sync_mode=sync_mode, cursor_field=cursor_field, stream_slice=parent_slice): + self._process_parent_record(parent_record, child_slice) + + # yield child slice if any records where read + if child_slice["record_changed_time_map"]: + yield child_slice + + def parse_response(self, response: SearchPager, stream_slice: MutableMapping[str, Any] = None) -> Iterable[Mapping]: + # update records with time obtained from parent stream + for record in super().parse_response(response): + primary_key_value = record[self.primary_key[0]] + + # cursor value obtained from parent stream + cursor_value = stream_slice.get("record_changed_time_map", dict()).get(primary_key_value) + + record[self.cursor_field] = cursor_value + yield record + + def _update_state(self): + # if parent stream was used - copy state from it, otherwise set default state + if self.parent_stream.state: + self._state = {self.parent_stream_name: self.parent_stream.state} + else: + # full refresh sync without parent stream + self._state = { + self.parent_stream_name: { + self.parent_cursor_field: pendulum.today().start_of("day").format(self.parent_stream.cursor_time_format) + } + } + + def _read_deleted_records(self, stream_slice: MutableMapping[str, Any] = None): + # yield deleted records with id and time when record was deleted + for deleted_record_id in stream_slice.get("deleted_ids", []): + yield {self.id_field: deleted_record_id, "deleted_at": stream_slice["record_changed_time_map"].get(deleted_record_id)} + + def read_records( + self, sync_mode: SyncMode, cursor_field: List[str] = None, stream_slice: MutableMapping[str, Any] = None, **kwargs + ) -> Iterable[Mapping[str, Any]]: + """ + This method is overridden to read records using parent stream + """ + # if state is present read records by ids from slice otherwise full refresh sync + yield from super().read_records(sync_mode, stream_slice=stream_slice) + + # yield deleted items + yield from self._read_deleted_records(stream_slice) + + self._update_state() + + def get_query(self, stream_slice: Mapping[str, Any] = None) -> str: + table_name = REPORT_MAPPING[self.name] + + fields = GoogleAds.get_fields_from_schema(self.get_json_schema()) + # delete fields that are obtained from parent stream and should not be requested from API + delete_fields = ["change_status.last_change_date_time", "deleted_at"] + fields = [field_name for field_name in fields if field_name not in delete_fields] + + conditions = [] + # filter by ids obtained from parent stream + updated_ids = stream_slice.get("updated_ids") + if updated_ids: + id_list_str = ", ".join(f"'{str(id_)}'" for id_ in updated_ids) + conditions.append(f"{self.id_field} IN ({id_list_str})") + + query = GoogleAds.convert_schema_into_query(fields=fields, table_name=table_name, conditions=conditions) + return query + + +class AdGroupCriterions(IncrementalEventsStream): + """ + Ad Group Criterions stream: https://developers.google.com/google-ads/api/fields/v14/ad_group_criterion + """ + + transformer = TypeTransformer(TransformConfig.DefaultSchemaNormalization) + primary_key = ["ad_group_criterion.resource_name"] + parent_id_field = "change_status.ad_group_criterion" + id_field = "ad_group_criterion.resource_name" + resource_type = "AD_GROUP_CRITERION" + cursor_field = "change_status.last_change_date_time" + + +class AdListingGroupCriterions(AdGroupCriterions): + """ + Ad Listing Group Criterions stream: https://developers.google.com/google-ads/api/fields/v14/ad_group_criterion + While this stream utilizes the same resource as the AdGroupCriterions, + it specifically targets the listing group and has distinct schemas. + """ + + +class CampaignCriterion(IncrementalEventsStream): + """ + Campaign Criterion stream: https://developers.google.com/google-ads/api/fields/v14/campaign_criterion + """ + + transformer = TypeTransformer(TransformConfig.DefaultSchemaNormalization) + primary_key = ["campaign_criterion.resource_name"] + parent_id_field = "change_status.campaign_criterion" + id_field = "campaign_criterion.resource_name" + resource_type = "CAMPAIGN_CRITERION" + cursor_field = "change_status.last_change_date_time" diff --git a/airbyte-integrations/connectors/source-google-ads/source_google_ads/utils.py b/airbyte-integrations/connectors/source-google-ads/source_google_ads/utils.py index ff3c66feafb7..43732adbb538 100644 --- a/airbyte-integrations/connectors/source-google-ads/source_google_ads/utils.py +++ b/airbyte-integrations/connectors/source-google-ads/source_google_ads/utils.py @@ -6,6 +6,40 @@ from dataclasses import dataclass from typing import Optional, Tuple +# maps stream name to name of resource in Google Ads +REPORT_MAPPING = { + "accounts": "customer", + "account_labels": "customer_label", + "account_performance_report": "customer", + "ad_group_ads": "ad_group_ad", + "ad_group_ad_labels": "ad_group_ad_label", + "ad_group_ad_report": "ad_group_ad", + "ad_groups": "ad_group", + "ad_group_bidding_strategies": "ad_group", + "ad_group_criterions": "ad_group_criterion", + "ad_group_criterion_labels": "ad_group_criterion_label", + "ad_group_labels": "ad_group_label", + "ad_listing_group_criterions": "ad_group_criterion", + "audience": "audience", + "campaigns": "campaign", + "campaign_real_time_bidding_settings": "campaign", + "campaign_criterion": "campaign_criterion", + "campaign_bidding_strategies": "campaign", + "campaign_budget": "campaign_budget", + "campaign_labels": "campaign_label", + "change_status": "change_status", + "click_view": "click_view", + "display_keyword_performance_report": "display_keyword_view", + "display_topics_performance_report": "topic_view", + "geographic_report": "geographic_view", + "keyword_report": "keyword_view", + "labels": "label", + "service_accounts": "customer", + "shopping_performance_report": "shopping_performance_view", + "user_interest": "user_interest", + "user_location_report": "user_location_view", +} + @dataclass(repr=False, eq=False, frozen=True) class GAQL: diff --git a/airbyte-integrations/connectors/source-google-ads/unit_tests/common.py b/airbyte-integrations/connectors/source-google-ads/unit_tests/common.py index 426f3995dc85..cc9ab2fd5629 100644 --- a/airbyte-integrations/connectors/source-google-ads/unit_tests/common.py +++ b/airbyte-integrations/connectors/source-google-ads/unit_tests/common.py @@ -13,6 +13,7 @@ class MockSearchRequest: query = None page_size = 100 page_token = None + next_page_token = None # Mocking Classes diff --git a/airbyte-integrations/connectors/source-google-ads/unit_tests/test_google_ads.py b/airbyte-integrations/connectors/source-google-ads/unit_tests/test_google_ads.py index cdd5285a051d..1281c9af6882 100644 --- a/airbyte-integrations/connectors/source-google-ads/unit_tests/test_google_ads.py +++ b/airbyte-integrations/connectors/source-google-ads/unit_tests/test_google_ads.py @@ -4,6 +4,7 @@ from datetime import date +import pendulum import pytest from airbyte_cdk.utils import AirbyteTracedException from google.auth import exceptions @@ -92,7 +93,11 @@ def test_interval_chunking(): {"start_date": "2021-07-27", "end_date": "2021-08-05"}, {"start_date": "2021-08-06", "end_date": "2021-08-10"}, ] - intervals = list(chunk_date_range("2021-07-01", 14, "2021-08-10", range_days=10, time_zone="UTC")) + intervals = list( + chunk_date_range( + start_date="2021-07-01", end_date="2021-08-10", conversion_window=14, slice_duration=pendulum.Duration(days=9), time_zone="UTC" + ) + ) assert mock_intervals == intervals @@ -100,60 +105,39 @@ def test_interval_chunking(): @pytest.mark.parametrize( - "stream_schema, report_name, slice_start, slice_end, cursor, expected_sql", + "fields, table_name, conditions, order_field, limit, expected_sql", ( + # Basic test case ( - generic_schema, - "ad_group_ads", - "2020-01-01", - "2020-01-10", + ["ad_group_id", "segments.date", "campaign_id", "account_id"], + "ad_group_ad", + ["segments.date >= '2020-01-01'", "segments.date <= '2020-01-10'"], "segments.date", - "SELECT ad_group_id, segments.date, campaign_id, account_id FROM ad_group_ad WHERE segments.date >= '2020-01-01' AND segments.date <= '2020-01-10' ORDER BY segments.date ASC" - ), - ( - generic_schema, - "ad_group_ads", - "2020-01-01", - "2020-01-02", - "segments.date", - "SELECT ad_group_id, segments.date, campaign_id, account_id FROM ad_group_ad WHERE segments.date >= '2020-01-01' AND segments.date <= '2020-01-02' ORDER BY segments.date ASC" + None, + "SELECT ad_group_id, segments.date, campaign_id, account_id FROM ad_group_ad WHERE segments.date >= '2020-01-01' AND segments.date <= '2020-01-10' ORDER BY segments.date ASC", ), + # Test with no conditions ( - generic_schema, - "ad_group_ads", + ["ad_group_id", "segments.date", "campaign_id", "account_id"], + "ad_group_ad", None, None, None, - "SELECT ad_group_id, segments.date, campaign_id, account_id FROM ad_group_ad" - ), - ( - generic_schema, - "click_view", - "2020-01-01", - "2020-01-10", - "segments.date", - "SELECT ad_group_id, segments.date, campaign_id, account_id FROM click_view WHERE segments.date >= '2020-01-01' AND segments.date <= '2020-01-10' ORDER BY segments.date ASC" + "SELECT ad_group_id, segments.date, campaign_id, account_id FROM ad_group_ad", ), + # Test order with limit ( - generic_schema, + ["ad_group_id", "segments.date", "campaign_id", "account_id"], "click_view", - "2020-01-01", - "2020-01-02", - "segments.date", - "SELECT ad_group_id, segments.date, campaign_id, account_id FROM click_view WHERE segments.date >= '2020-01-01' AND segments.date <= '2020-01-02' ORDER BY segments.date ASC" - ), - ( - generic_schema, - "click_view", - None, - None, None, - "SELECT ad_group_id, segments.date, campaign_id, account_id FROM click_view" + "ad_group_id", + 5, + "SELECT ad_group_id, segments.date, campaign_id, account_id FROM click_view ORDER BY ad_group_id ASC LIMIT 5", ), ), ) -def test_convert_schema_into_query(stream_schema, report_name, slice_start, slice_end, cursor, expected_sql): - query = GoogleAds.convert_schema_into_query(stream_schema, report_name, slice_start, slice_end, cursor) +def test_convert_schema_into_query(fields, table_name, conditions, order_field, limit, expected_sql): + query = GoogleAds.convert_schema_into_query(fields, table_name, conditions, order_field, limit) assert query == expected_sql diff --git a/airbyte-integrations/connectors/source-google-ads/unit_tests/test_incremental_events_streams.py b/airbyte-integrations/connectors/source-google-ads/unit_tests/test_incremental_events_streams.py new file mode 100644 index 000000000000..44a558e07def --- /dev/null +++ b/airbyte-integrations/connectors/source-google-ads/unit_tests/test_incremental_events_streams.py @@ -0,0 +1,304 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + +from copy import deepcopy +from unittest.mock import DEFAULT, Mock, call + +import pytest +from airbyte_cdk.models import SyncMode +from airbyte_cdk.utils import AirbyteTracedException +from source_google_ads.google_ads import GoogleAds +from source_google_ads.streams import CampaignCriterion, ChangeStatus + +from .common import MockGoogleAdsClient as MockGoogleAdsClient + + +@pytest.fixture +def mock_ads_client(mocker, config): + """Mock google ads library method, so it returns mocked Client""" + mocker.patch("source_google_ads.google_ads.GoogleAdsClient.load_from_dict", return_value=MockGoogleAdsClient(config)) + + +def mock_response_parent(): + yield [ + {"change_status.last_change_date_time": "2023-06-13 12:36:01.772447", + "change_status.resource_type": "CAMPAIGN_CRITERION", "change_status.resource_status": "ADDED", + "change_status.campaign_criterion": "1"}, + {"change_status.last_change_date_time": "2023-06-13 12:36:02.772447", + "change_status.resource_type": "CAMPAIGN_CRITERION", "change_status.resource_status": "ADDED", + "change_status.campaign_criterion": "2"}, + {"change_status.last_change_date_time": "2023-06-13 12:36:03.772447", + "change_status.resource_type": "CAMPAIGN_CRITERION", "change_status.resource_status": "REMOVED", + "change_status.campaign_criterion": "3"}, + {"change_status.last_change_date_time": "2023-06-13 12:36:04.772447", + "change_status.resource_type": "CAMPAIGN_CRITERION", "change_status.resource_status": "REMOVED", + "change_status.campaign_criterion": "4"}, + ] + + +def mock_response_child(): + yield [ + {"customer.id": 123, "campaign.id": 1, "campaign_criterion.resource_name": "1"}, + {"customer.id": 123, "campaign.id": 1, "campaign_criterion.resource_name": "2"}, + ] + + +class MockGoogleAds(GoogleAds): + def parse_single_result(self, schema, result): + return result + + def send_request(self, query: str, customer_id: str): + if query == "query_parent": + return mock_response_parent() + else: + return mock_response_child() + + +def test_change_status_stream(mock_ads_client, config, customers): + """ + """ + customer_id = next(iter(customers)).id + stream_slice = {"customer_id": customer_id} + + google_api = MockGoogleAds(credentials=config["credentials"]) + + stream = ChangeStatus(api=google_api, customers=customers) + + stream.get_query = Mock() + stream.get_query.return_value = "query_parent" + + result = list( + stream.read_records(sync_mode=SyncMode.incremental, cursor_field=["change_status.last_change_date_time"], + stream_slice=stream_slice)) + assert len(result) == 4 + assert stream.get_query.call_count == 1 + stream.get_query.assert_called_with({"customer_id": customer_id}) + + +def test_child_incremental_events_read(mock_ads_client, config, customers): + """ + Page token expired while reading records on date 2021-01-03 + The latest read record is {"segments.date": "2021-01-03", "click_view.gclid": "4"} + It should retry reading starting from 2021-01-03, already read records will be reread again from that date. + It shouldn't read records on 2021-01-01, 2021-01-02 + """ + customer_id = next(iter(customers)).id + parent_stream_slice = {"customer_id": customer_id, "resource_type": "CAMPAIGN_CRITERION"} + stream_state = { + "change_status": {customer_id: {"change_status.last_change_date_time": "2023-08-16 13:20:01.003295"}}} + + google_api = MockGoogleAds(credentials=config["credentials"]) + + stream = CampaignCriterion(api=google_api, customers=customers) + parent_stream = stream.parent_stream + + parent_stream.get_query = Mock() + parent_stream.get_query.return_value = "query_parent" + + parent_stream.stream_slices = Mock() + parent_stream.stream_slices.return_value = [parent_stream_slice] + + parent_stream.state = {customer_id: {"change_status.last_change_date_time": "2023-05-16 13:20:01.003295"}} + + stream.get_query = Mock() + stream.get_query.return_value = "query_child" + + stream_slices = list(stream.stream_slices(stream_state=stream_state)) + + assert stream_slices == [{'customer_id': '123', 'updated_ids': {'2', '1'}, 'deleted_ids': {'3', '4'}, + 'record_changed_time_map': {'1': '2023-06-13 12:36:01.772447', '2': '2023-06-13 12:36:02.772447', + '3': '2023-06-13 12:36:03.772447', '4': '2023-06-13 12:36:04.772447'}}] + + result = list( + stream.read_records(sync_mode=SyncMode.incremental, cursor_field=["change_status.last_change_date_time"], + stream_slice=stream_slices[0])) + expected_result = [{'campaign.id': 1, + 'campaign_criterion.resource_name': '1', + 'change_status.last_change_date_time': '2023-06-13 12:36:01.772447', + 'customer.id': 123}, + {'campaign.id': 1, + 'campaign_criterion.resource_name': '2', + 'change_status.last_change_date_time': '2023-06-13 12:36:02.772447', + 'customer.id': 123}, + {'campaign_criterion.resource_name': '3', + 'deleted_at': '2023-06-13 12:36:03.772447'}, + {'campaign_criterion.resource_name': '4', + 'deleted_at': '2023-06-13 12:36:04.772447'}] + + assert all([expected_row in result for expected_row in expected_result]) + + assert stream.state == {'change_status': {'123': {'change_status.last_change_date_time': '2023-06-13 12:36:04.772447'}}} + + assert stream.get_query.call_count == 1 + + +def mock_response_1(): + yield [ + { + "change_status.last_change_date_time": "2023-06-13 12:36:01.772447", + "change_status.resource_type": "CAMPAIGN_CRITERION", + "change_status.resource_status": "ADDED", + "change_status.campaign_criterion": "1", + }, + { + "change_status.last_change_date_time": "2023-06-13 12:36:02.772447", + "change_status.resource_type": "CAMPAIGN_CRITERION", + "change_status.resource_status": "ADDED", + "change_status.campaign_criterion": "2", + }, + ] + + +def mock_response_2(): + yield [ + { + "change_status.last_change_date_time": "2023-06-13 12:36:03.772447", + "change_status.resource_type": "CAMPAIGN_CRITERION", + "change_status.resource_status": "REMOVED", + "change_status.campaign_criterion": "3", + }, + { + "change_status.last_change_date_time": "2023-06-13 12:36:04.772447", + "change_status.resource_type": "CAMPAIGN_CRITERION", + "change_status.resource_status": "REMOVED", + "change_status.campaign_criterion": "4", + }, + ] + + +def mock_response_3(): + yield [ + { + "change_status.last_change_date_time": "2023-06-13 12:36:04.772447", + "change_status.resource_type": "CAMPAIGN_CRITERION", + "change_status.resource_status": "REMOVED", + "change_status.campaign_criterion": "6", + }, + ] + + +def mock_response_4(): + yield [ + { + "change_status.last_change_date_time": "2023-06-13 12:36:04.772447", + "change_status.resource_type": "CAMPAIGN_CRITERION", + "change_status.resource_status": "REMOVED", + "change_status.campaign_criterion": "6", + }, + { + "change_status.last_change_date_time": "2023-06-13 12:36:04.772447", + "change_status.resource_type": "CAMPAIGN_CRITERION", + "change_status.resource_status": "REMOVED", + "change_status.campaign_criterion": "7", + }, + ] + + +class MockGoogleAdsLimit(GoogleAds): + count = 0 + + def parse_single_result(self, schema, result): + return result + + def send_request(self, query: str, customer_id: str): + self.count += 1 + if self.count == 1: + return mock_response_1() + elif self.count == 2: + return mock_response_2() + else: + return mock_response_3() + + +def mock_query_limit(self) -> int: + return 2 # or whatever value you want for testing + + +def copy_call_args(mock): + new_mock = Mock() + + def side_effect(*args, **kwargs): + args = deepcopy(args) + kwargs = deepcopy(kwargs) + new_mock(*args, **kwargs) + return DEFAULT + + mock.side_effect = side_effect + return new_mock + + +def test_query_limit_hit(mock_ads_client, config, customers): + """ + Test the behavior of the `read_records` method in the `ChangeStatus` stream when the query limit is hit. + + This test simulates a scenario where the limit is hit and slice start_date is updated with latest record cursor + """ + customer_id = next(iter(customers)).id + stream_slice = {"customer_id": customer_id, "start_date": "2023-06-13 11:35:04.772447", "end_date": "2023-06-13 13:36:04.772447"} + + google_api = MockGoogleAdsLimit(credentials=config["credentials"]) + stream_config = dict( + api=google_api, + customers=customers, + ) + stream = ChangeStatus(**stream_config) + ChangeStatus.query_limit = property(mock_query_limit) + stream.get_query = Mock(return_value="query") + get_query_mock = copy_call_args(stream.get_query) + + result = list( + stream.read_records(sync_mode=SyncMode.incremental, cursor_field=["change_status.last_change_date_time"], stream_slice=stream_slice) + ) + + assert len(result) == 5 + assert stream.get_query.call_count == 3 + + get_query_calls = [ + call({"customer_id": "123", "start_date": "2023-06-13 11:35:04.772447", "end_date": "2023-06-13 13:36:04.772447"}), + call({"customer_id": "123", "start_date": "2023-06-13 12:36:02.772447", "end_date": "2023-06-13 13:36:04.772447"}), + call({"customer_id": "123", "start_date": "2023-06-13 12:36:04.772447", "end_date": "2023-06-13 13:36:04.772447"}), + ] + + get_query_mock.assert_has_calls(get_query_calls) + + +class MockGoogleAdsLimitException(MockGoogleAdsLimit): + def send_request(self, query: str, customer_id: str): + self.count += 1 + if self.count == 1: + return mock_response_1() + elif self.count == 2: + return mock_response_2() + elif self.count == 3: + return mock_response_4() + + +def test_query_limit_hit_exception(mock_ads_client, config, customers): + """ + Test the behavior of the `read_records` method in the `ChangeStatus` stream when the query limit is hit. + + This test simulates a scenario where the limit is hit and there are more than query_limit number of records with same cursor, + then error will be raised + """ + customer_id = next(iter(customers)).id + stream_slice = {"customer_id": customer_id, "start_date": "2023-06-13 11:35:04.772447", "end_date": "2023-06-13 13:36:04.772447"} + + google_api = MockGoogleAdsLimitException(credentials=config["credentials"]) + stream_config = dict( + api=google_api, + customers=customers, + ) + stream = ChangeStatus(**stream_config) + ChangeStatus.query_limit = property(mock_query_limit) + stream.get_query = Mock(return_value="query") + + with pytest.raises(AirbyteTracedException) as e: + list( + stream.read_records( + sync_mode=SyncMode.incremental, cursor_field=["change_status.last_change_date_time"], stream_slice=stream_slice + ) + ) + + expected_message = "More then limit 2 records with same cursor field. Incremental sync is not possible for this stream." + assert e.value.message == expected_message diff --git a/airbyte-integrations/connectors/source-google-ads/unit_tests/test_source.py b/airbyte-integrations/connectors/source-google-ads/unit_tests/test_source.py index c520140822b7..20809ee9030a 100644 --- a/airbyte-integrations/connectors/source-google-ads/unit_tests/test_source.py +++ b/airbyte-integrations/connectors/source-google-ads/unit_tests/test_source.py @@ -6,9 +6,9 @@ from collections import namedtuple from unittest.mock import Mock +import pendulum import pytest from airbyte_cdk import AirbyteLogger -from freezegun import freeze_time from google.ads.googleads.errors import GoogleAdsException from google.ads.googleads.v11.errors.types.authorization_error import AuthorizationErrorEnum from pendulum import today @@ -105,31 +105,12 @@ def mock_fields_meta_data(): return Mock(get_fields_metadata=Mock(return_value={node.name: node for node in nodes})) -# Test chunk date range without end date -@freeze_time("2022-01-30") -def test_chunk_date_range_without_end_date(): - start_date_str = "2022-01-24" - conversion_window = 0 - slices = list(chunk_date_range( - start_date=start_date_str, conversion_window=conversion_window, end_date=None, days_of_data_storage=None, range_days=1, time_zone="UTC" - )) - expected_response = [ - {"start_date": "2022-01-24", "end_date": "2022-01-24"}, - {"start_date": "2022-01-25", "end_date": "2022-01-25"}, - {"start_date": "2022-01-26", "end_date": "2022-01-26"}, - {"start_date": "2022-01-27", "end_date": "2022-01-27"}, - {"start_date": "2022-01-28", "end_date": "2022-01-28"}, - {"start_date": "2022-01-29", "end_date": "2022-01-29"}, - {"start_date": "2022-01-30", "end_date": "2022-01-30"}, - ] - assert expected_response == slices - - def test_chunk_date_range(): start_date = "2021-03-04" end_date = "2021-05-04" conversion_window = 14 - slices = list(chunk_date_range(start_date, conversion_window, end_date, range_days=10, time_zone="UTC")) + slices = list(chunk_date_range(start_date=start_date, end_date=end_date, conversion_window=conversion_window, + slice_duration=pendulum.Duration(days=9), time_zone="UTC")) assert [ {"start_date": "2021-02-18", "end_date": "2021-02-27"}, {"start_date": "2021-02-28", "end_date": "2021-03-09"}, @@ -145,7 +126,7 @@ def test_chunk_date_range(): def test_streams_count(config, mock_account_info): source = SourceGoogleAds() streams = source.streams(config) - expected_streams_number = 29 + expected_streams_number = 30 assert len(streams) == expected_streams_number diff --git a/airbyte-integrations/connectors/source-google-ads/unit_tests/test_streams.py b/airbyte-integrations/connectors/source-google-ads/unit_tests/test_streams.py index 7c0f38fdd34a..df9b6dc12e86 100644 --- a/airbyte-integrations/connectors/source-google-ads/unit_tests/test_streams.py +++ b/airbyte-integrations/connectors/source-google-ads/unit_tests/test_streams.py @@ -2,7 +2,6 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # -import logging from unittest.mock import Mock import pytest @@ -13,7 +12,7 @@ from google.api_core.exceptions import DataLoss, InternalServerError, ResourceExhausted, TooManyRequests from grpc import RpcError from source_google_ads.google_ads import GoogleAds -from source_google_ads.streams import ClickView, cyclic_sieve +from source_google_ads.streams import ClickView from .common import MockGoogleAdsClient as MockGoogleAdsClient @@ -219,15 +218,3 @@ def test_retry_transient_errors(mocker, config, customers, error_cls): records = list(stream.read_records(sync_mode=SyncMode.incremental, cursor_field=["segments.date"], stream_slice=stream_slice)) assert mocked_search.call_count == 5 assert records == [] - - -def test_cyclic_sieve(caplog): - original_logger = logging.getLogger("test") - original_logger.setLevel(logging.DEBUG) - sieve = cyclic_sieve(original_logger, fraction=10) - for _ in range(20): - sieve.info("Ground Control to Major Tom") - sieve.info("Your circuit's dead, there's something wrong") - sieve.info("Can you hear me, Major Tom?") - sieve.bump() - assert len(caplog.records) == 6 # 20 * 3 / 10 diff --git a/airbyte-integrations/connectors/source-google-analytics-data-api/Dockerfile b/airbyte-integrations/connectors/source-google-analytics-data-api/Dockerfile index 6c3b35f5861b..57cc9aadc25f 100644 --- a/airbyte-integrations/connectors/source-google-analytics-data-api/Dockerfile +++ b/airbyte-integrations/connectors/source-google-analytics-data-api/Dockerfile @@ -28,5 +28,5 @@ COPY source_google_analytics_data_api ./source_google_analytics_data_api ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=1.1.3 +LABEL io.airbyte.version=1.5.0 LABEL io.airbyte.name=airbyte/source-google-analytics-data-api diff --git a/airbyte-integrations/connectors/source-google-analytics-data-api/acceptance-test-config.yml b/airbyte-integrations/connectors/source-google-analytics-data-api/acceptance-test-config.yml index c3206c26c842..5d610eb04132 100644 --- a/airbyte-integrations/connectors/source-google-analytics-data-api/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-google-analytics-data-api/acceptance-test-config.yml @@ -7,7 +7,7 @@ acceptance_tests: tests: - spec_path: "source_google_analytics_data_api/spec.json" backward_compatibility_tests_config: - disable_for_version: 0.2.1 + disable_for_version: 1.3.0 connection: tests: - config_path: "secrets/config.json" @@ -17,57 +17,89 @@ acceptance_tests: discovery: tests: - config_path: "secrets/config.json" + backward_compatibility_tests_config: + disable_for_version: 1.3.0 basic_read: tests: - config_path: "secrets/config.json" + expect_records: + path: "integration_tests/expected_records.jsonl" empty_streams: - name: "traffic_sources" bypass_reason: "The data contains business information" - expect_records: - path: "integration_tests/expected_records.jsonl" - extra_fields: no - exact_order: no - extra_records: yes + - name: "demographic_interest_report" + bypass_reason: "The test resource does not collect interest" + - name: "demographic_age_report" + bypass_reason: "The test resource does not collect age" + - name: "demographic_gender_report" + bypass_reason: "The test resource does not collect gender" + - name: "ecommerce_purchases_item_name_report" + bypass_reason: "The test resource does not work with ecommerce purchases" + - name: "ecommerce_purchases_item_category_report_combined" + bypass_reason: "The test resource does not work with ecommerce purchases" + - name: "ecommerce_purchases_item_brand_report" + bypass_reason: "The test resource does not work with ecommerce purchases" + - name: "ecommerce_purchases_item_category_report" + bypass_reason: "The test resource does not work with ecommerce purchases" + - name: "ecommerce_purchases_item_category_2_report" + bypass_reason: "The test resource does not work with ecommerce purchases" + - name: "ecommerce_purchases_item_category_3_report" + bypass_reason: "The test resource does not work with ecommerce purchases" + - name: "ecommerce_purchases_item_category_4_report" + bypass_reason: "The test resource does not work with ecommerce purchases" + - name: "ecommerce_purchases_item_category_5_report" + bypass_reason: "The test resource does not work with ecommerce purchases" + - name: "ecommerce_purchases_item_id_report" + bypass_reason: "The test resource does not work with ecommerce purchases" + - name: "publisher_ads_ad_unit_report" + bypass_reason: "The test resource does not work with publisher ads" + - name: "publisher_ads_ad_source_report" + bypass_reason: "The test resource does not work with publisher ads" + - name: "publisher_ads_page_path_report" + bypass_reason: "The test resource does not work with publisher ads" + - name: "publisher_ads_ad_format_report" + bypass_reason: "The test resource does not work with publisher ads" ignored_fields: devices: - - name: averageSessionDuration - bypass_reason: "dynamic field" + - name: "averageSessionDuration" + bypass_reason: "Dynamic field" locations: - - name: averageSessionDuration - bypass_reason: "dynamic field" + - name: "averageSessionDuration" + bypass_reason: "Dynamic field" pages: - - name: screenPageViews - bypass_reason: "dynamically created field" - - name: bounceRate - bypass_reason: "dynamically created field" + - name: "screenPageViews" + bypass_reason: "Dynamically created field" + - name: "bounceRate" + bypass_reason: "Dynamically created field" website_overview: - - name: averageSessionDuration - bypass_reason: "dynamically created field" + - name: "averageSessionDuration" + bypass_reason: "Dynamically created field" pivot_report: - - name: sessions - bypass_reason: "volatile data" + - name: "sessions" + bypass_reason: "Volatile data" + - name: "endDate" + bypass_reason: "Dynamic field" full_refresh: tests: - config_path: "secrets/config.json" configured_catalog_path: "integration_tests/configured_catalog.json" ignored_fields: devices: - - name: averageSessionDuration - bypass_reason: "dynamic field" + - name: "averageSessionDuration" + bypass_reason: "Dynamic field" locations: - - name: averageSessionDuration - bypass_reason: "dynamic field" + - name: "averageSessionDuration" + bypass_reason: "Dynamic field" traffic_sources: - - name: averageSessionDuration - bypass_reason: "dynamically created field" + - name: "averageSessionDuration" + bypass_reason: "Dynamically created field" website_overview: - - name: averageSessionDuration - bypass_reason: "dynamically created field" + - name: "averageSessionDuration" + bypass_reason: "Dynamically created field" incremental: tests: - config_path: "secrets/config.json" - timeout_seconds: 3600 + timeout_seconds: 10800 configured_catalog_path: "integration_tests/configured_catalog.json" future_state: future_state_path: "integration_tests/abnormal_state.json" - threshold_days: 2 diff --git a/airbyte-integrations/connectors/source-google-analytics-data-api/integration_tests/abnormal_state.json b/airbyte-integrations/connectors/source-google-analytics-data-api/integration_tests/abnormal_state.json index cd3adac6a364..bf47ea0d9690 100644 --- a/airbyte-integrations/connectors/source-google-analytics-data-api/integration_tests/abnormal_state.json +++ b/airbyte-integrations/connectors/source-google-analytics-data-api/integration_tests/abnormal_state.json @@ -86,5 +86,544 @@ "date": "20990101" } } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "user_acquisition_first_user_medium_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "user_acquisition_first_user_source_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "user_acquisition_first_user_source_medium_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "user_acquisition_first_user_source_platform_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "user_acquisition_first_user_campaign_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "user_acquisition_first_user_google_ads_ad_network_type_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "user_acquisition_first_user_google_ads_ad_group_name_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "traffic_acquisition_session_source_medium_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "traffic_acquisition_session_medium_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "traffic_acquisition_session_source_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "traffic_acquisition_session_campaign_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "traffic_acquisition_session_default_channel_grouping_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "traffic_acquisition_session_source_platform_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "events_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "conversions_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "pages_title_and_screen_class_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "pages_path_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "pages_title_and_screen_name_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "content_group_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "ecommerce_purchases_item_id_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "demographic_country_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "demographic_region_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "demographic_city_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "demographic_language_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "tech_browser_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "tech_device_category_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "tech_device_model_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "tech_screen_resolution_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "tech_app_version_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "tech_platform_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "tech_platform_device_category_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "tech_operating_system_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "tech_os_with_version_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "demographic_interest_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "ecommerce_purchases_item_category_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "ecommerce_purchases_item_category_report_combined" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "ecommerce_purchases_item_category_3_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "publisher_ads_ad_unit_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "demographic_age_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "publisher_ads_ad_format_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "ecommerce_purchases_item_category_4_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "ecommerce_purchases_item_category_5_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "ecommerce_purchases_item_category_2_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "ecommerce_purchases_item_name_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "publisher_ads_page_path_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "demographic_gender_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "ecommerce_purchases_item_brand_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "publisher_ads_ad_source_report" + }, + "stream_state": { + "date": "20990101" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_descriptor": { + "name": "weekly_events_report" + }, + "stream_state": { + "yearWeek": "209915" + } + } } ] diff --git a/airbyte-integrations/connectors/source-google-analytics-data-api/integration_tests/configured_catalog.json b/airbyte-integrations/connectors/source-google-analytics-data-api/integration_tests/configured_catalog.json index c1da32d744dc..842b35eff4f1 100644 --- a/airbyte-integrations/connectors/source-google-analytics-data-api/integration_tests/configured_catalog.json +++ b/airbyte-integrations/connectors/source-google-analytics-data-api/integration_tests/configured_catalog.json @@ -187,6 +187,643 @@ ["startDate"], ["endDate"] ] + }, + { + "stream": { + "name": "user_acquisition_first_user_medium_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "user_acquisition_first_user_source_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "user_acquisition_first_user_source_medium_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "user_acquisition_first_user_source_platform_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "user_acquisition_first_user_campaign_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "user_acquisition_first_user_google_ads_ad_network_type_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "user_acquisition_first_user_google_ads_ad_group_name_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "traffic_acquisition_session_source_medium_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "traffic_acquisition_session_medium_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "traffic_acquisition_session_source_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "traffic_acquisition_session_campaign_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "traffic_acquisition_session_default_channel_grouping_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "traffic_acquisition_session_source_platform_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "events_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "conversions_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "pages_title_and_screen_class_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "pages_path_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "pages_title_and_screen_name_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "content_group_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "ecommerce_purchases_item_name_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "ecommerce_purchases_item_id_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "ecommerce_purchases_item_category_report_combined", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "ecommerce_purchases_item_category_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "ecommerce_purchases_item_category_2_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "ecommerce_purchases_item_category_3_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "ecommerce_purchases_item_category_4_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "ecommerce_purchases_item_category_5_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "ecommerce_purchases_item_brand_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "publisher_ads_ad_unit_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "publisher_ads_page_path_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "publisher_ads_ad_format_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "publisher_ads_ad_source_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "demographic_country_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "demographic_region_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "demographic_city_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "demographic_language_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "demographic_age_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "demographic_gender_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "demographic_interest_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "tech_browser_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "tech_device_category_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "tech_device_model_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "tech_screen_resolution_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "tech_app_version_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "tech_platform_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "tech_platform_device_category_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "tech_operating_system_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "tech_os_with_version_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["date"], + "source_defined_primary_key": [["property_id"], ["date"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["date"]] + }, + { + "stream": { + "name": "weekly_events_report", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["yearWeek"], + "source_defined_primary_key": [["property_id"], ["yearWeek"], ["eventName"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "overwrite", + "primary_key": [["property_id"], ["yearWeek"], ["eventName"]] } ] } diff --git a/airbyte-integrations/connectors/source-google-analytics-data-api/integration_tests/expected_records.jsonl b/airbyte-integrations/connectors/source-google-analytics-data-api/integration_tests/expected_records.jsonl index 861748826431..6b9cbd7dcb16 100644 --- a/airbyte-integrations/connectors/source-google-analytics-data-api/integration_tests/expected_records.jsonl +++ b/airbyte-integrations/connectors/source-google-analytics-data-api/integration_tests/expected_records.jsonl @@ -1,90 +1,107 @@ -{"stream":"daily_active_users","data":{"property_id":"314186564","date":"20230406","active1DayUsers":2562},"emitted_at":1681405954033} -{"stream":"daily_active_users","data":{"property_id":"314186564","date":"20230403","active1DayUsers":2521},"emitted_at":1681405954034} -{"stream":"daily_active_users","data":{"property_id":"314186564","date":"20230404","active1DayUsers":2386},"emitted_at":1681405954034} -{"stream":"daily_active_users","data":{"property_id":"314186564","date":"20230405","active1DayUsers":2318},"emitted_at":1681405954035} -{"stream":"daily_active_users","data":{"property_id":"314186564","date":"20230411","active1DayUsers":2248},"emitted_at":1681405954035} -{"stream":"daily_active_users","data":{"property_id":"314186564","date":"20230412","active1DayUsers":2164},"emitted_at":1681405954036} -{"stream":"daily_active_users","data":{"property_id":"314186564","date":"20230410","active1DayUsers":2021},"emitted_at":1681405954036} -{"stream":"daily_active_users","data":{"property_id":"314186564","date":"20230407","active1DayUsers":1628},"emitted_at":1681405954037} -{"stream":"daily_active_users","data":{"property_id":"314186564","date":"20230409","active1DayUsers":1009},"emitted_at":1681405954037} -{"stream":"daily_active_users","data":{"property_id":"314186564","date":"20230402","active1DayUsers":978},"emitted_at":1681405954038} -{"stream":"weekly_active_users","data":{"property_id":"314186564","date":"20230403","active7DayUsers":11840},"emitted_at":1681405954684} -{"stream":"weekly_active_users","data":{"property_id":"314186564","date":"20230406","active7DayUsers":11828},"emitted_at":1681405954685} -{"stream":"weekly_active_users","data":{"property_id":"314186564","date":"20230404","active7DayUsers":11812},"emitted_at":1681405954685} -{"stream":"weekly_active_users","data":{"property_id":"314186564","date":"20230405","active7DayUsers":11751},"emitted_at":1681405954685} -{"stream":"weekly_active_users","data":{"property_id":"314186564","date":"20230408","active7DayUsers":11745},"emitted_at":1681405954685} -{"stream":"weekly_active_users","data":{"property_id":"314186564","date":"20230409","active7DayUsers":11739},"emitted_at":1681405954685} -{"stream":"weekly_active_users","data":{"property_id":"314186564","date":"20230407","active7DayUsers":11637},"emitted_at":1681405954685} -{"stream":"weekly_active_users","data":{"property_id":"314186564","date":"20230401","active7DayUsers":11547},"emitted_at":1681405954685} -{"stream":"weekly_active_users","data":{"property_id":"314186564","date":"20230402","active7DayUsers":11521},"emitted_at":1681405954685} -{"stream":"weekly_active_users","data":{"property_id":"314186564","date":"20230410","active7DayUsers":11369},"emitted_at":1681405954686} -{"stream":"four_weekly_active_users","data":{"property_id":"314186564","date":"20230401","active28DayUsers":48082},"emitted_at":1681405955854} -{"stream":"four_weekly_active_users","data":{"property_id":"314186564","date":"20230402","active28DayUsers":47927},"emitted_at":1681405955854} -{"stream":"four_weekly_active_users","data":{"property_id":"314186564","date":"20230403","active28DayUsers":44678},"emitted_at":1681405955854} -{"stream":"four_weekly_active_users","data":{"property_id":"314186564","date":"20230404","active28DayUsers":42997},"emitted_at":1681405955854} -{"stream":"four_weekly_active_users","data":{"property_id":"314186564","date":"20230405","active28DayUsers":42219},"emitted_at":1681405955855} -{"stream":"four_weekly_active_users","data":{"property_id":"314186564","date":"20230406","active28DayUsers":42028},"emitted_at":1681405955855} -{"stream":"four_weekly_active_users","data":{"property_id":"314186564","date":"20230407","active28DayUsers":41851},"emitted_at":1681405955855} -{"stream":"four_weekly_active_users","data":{"property_id":"314186564","date":"20230408","active28DayUsers":41775},"emitted_at":1681405955855} -{"stream":"four_weekly_active_users","data":{"property_id":"314186564","date":"20230409","active28DayUsers":41717},"emitted_at":1681405955855} -{"stream":"four_weekly_active_users","data":{"property_id":"314186564","date":"20230410","active28DayUsers":41212},"emitted_at":1681405955855} -{"stream":"devices","data":{"property_id":"314186564","date":"20230411","deviceCategory":"desktop","operatingSystem":"Macintosh","browser":"Chrome","totalUsers":973,"newUsers":368,"sessions":1667,"sessionsPerUser":2.110126582278481,"averageSessionDuration":308.8923676994601,"screenPageViews":5367,"screenPageViewsPerSession":3.2195560887822436,"bounceRate":0.498500299940012},"emitted_at":1681405958296} -{"stream":"devices","data":{"property_id":"314186564","date":"20230412","deviceCategory":"desktop","operatingSystem":"Macintosh","browser":"Chrome","totalUsers":969,"newUsers":350,"sessions":1588,"sessionsPerUser":2.0025220680958387,"averageSessionDuration":336.108126070529,"screenPageViews":4726,"screenPageViewsPerSession":2.9760705289672544,"bounceRate":0.5012594458438288},"emitted_at":1681405958296} -{"stream":"devices","data":{"property_id":"314186564","date":"20230404","deviceCategory":"desktop","operatingSystem":"Macintosh","browser":"Chrome","totalUsers":942,"newUsers":352,"sessions":1554,"sessionsPerUser":2.007751937984496,"averageSessionDuration":328.66656451029604,"screenPageViews":5217,"screenPageViewsPerSession":3.357142857142857,"bounceRate":0.4954954954954955},"emitted_at":1681405958296} -{"stream":"devices","data":{"property_id":"314186564","date":"20230406","deviceCategory":"desktop","operatingSystem":"Macintosh","browser":"Chrome","totalUsers":942,"newUsers":389,"sessions":1551,"sessionsPerUser":1.9783163265306123,"averageSessionDuration":357.5382107272727,"screenPageViews":5102,"screenPageViewsPerSession":3.289490651192779,"bounceRate":0.49258542875564154},"emitted_at":1681405958297} -{"stream":"devices","data":{"property_id":"314186564","date":"20230403","deviceCategory":"desktop","operatingSystem":"Macintosh","browser":"Chrome","totalUsers":929,"newUsers":341,"sessions":1546,"sessionsPerUser":2.0558510638297873,"averageSessionDuration":315.4776974385511,"screenPageViews":5116,"screenPageViewsPerSession":3.309184993531695,"bounceRate":0.5071151358344114},"emitted_at":1681405958297} -{"stream":"devices","data":{"property_id":"314186564","date":"20230405","deviceCategory":"desktop","operatingSystem":"Macintosh","browser":"Chrome","totalUsers":926,"newUsers":363,"sessions":1573,"sessionsPerUser":2.0428571428571427,"averageSessionDuration":346.09502719898285,"screenPageViews":5032,"screenPageViewsPerSession":3.1989828353464715,"bounceRate":0.4869675778766688},"emitted_at":1681405958297} -{"stream":"devices","data":{"property_id":"314186564","date":"20230410","deviceCategory":"desktop","operatingSystem":"Macintosh","browser":"Chrome","totalUsers":920,"newUsers":374,"sessions":1524,"sessionsPerUser":2.0456375838926175,"averageSessionDuration":255.77025801837266,"screenPageViews":4025,"screenPageViewsPerSession":2.641076115485564,"bounceRate":0.5255905511811023},"emitted_at":1681405958297} -{"stream":"devices","data":{"property_id":"314186564","date":"20230403","deviceCategory":"desktop","operatingSystem":"Windows","browser":"Chrome","totalUsers":781,"newUsers":366,"sessions":1184,"sessionsPerUser":1.8528951486697967,"averageSessionDuration":278.84846059881755,"screenPageViews":2993,"screenPageViewsPerSession":2.5278716216216215,"bounceRate":0.5616554054054054},"emitted_at":1681405958297} -{"stream":"devices","data":{"property_id":"314186564","date":"20230411","deviceCategory":"desktop","operatingSystem":"Windows","browser":"Chrome","totalUsers":760,"newUsers":365,"sessions":1155,"sessionsPerUser":1.896551724137931,"averageSessionDuration":264.1307251896104,"screenPageViews":2452,"screenPageViewsPerSession":2.122943722943723,"bounceRate":0.5316017316017316},"emitted_at":1681405958298} -{"stream":"devices","data":{"property_id":"314186564","date":"20230404","deviceCategory":"desktop","operatingSystem":"Windows","browser":"Chrome","totalUsers":727,"newUsers":345,"sessions":1137,"sessionsPerUser":1.8517915309446253,"averageSessionDuration":252.06245670272648,"screenPageViews":2601,"screenPageViewsPerSession":2.287598944591029,"bounceRate":0.5488126649076517},"emitted_at":1681405958298} -{"stream":"locations","data":{"property_id":"314186564","region":"New York","country":"United States","city":"New York","date":"20230406","totalUsers":108,"newUsers":62,"sessions":157,"sessionsPerUser":1.6354166666666667,"averageSessionDuration":435.44268001273895,"screenPageViews":534,"screenPageViewsPerSession":3.4012738853503186,"bounceRate":0.5031847133757962},"emitted_at":1681405962136} -{"stream":"locations","data":{"property_id":"314186564","region":"New York","country":"United States","city":"New York","date":"20230405","totalUsers":95,"newUsers":54,"sessions":123,"sessionsPerUser":1.5769230769230769,"averageSessionDuration":499.2074986666667,"screenPageViews":481,"screenPageViewsPerSession":3.910569105691057,"bounceRate":0.44715447154471544},"emitted_at":1681405962136} -{"stream":"locations","data":{"property_id":"314186564","region":"New York","country":"United States","city":"New York","date":"20230403","totalUsers":94,"newUsers":46,"sessions":126,"sessionsPerUser":1.68,"averageSessionDuration":424.00281903174607,"screenPageViews":499,"screenPageViewsPerSession":3.9603174603174605,"bounceRate":0.5238095238095238},"emitted_at":1681405962136} -{"stream":"locations","data":{"property_id":"314186564","region":"New York","country":"United States","city":"New York","date":"20230404","totalUsers":85,"newUsers":47,"sessions":121,"sessionsPerUser":1.6575342465753424,"averageSessionDuration":378.81275640495863,"screenPageViews":434,"screenPageViewsPerSession":3.5867768595041323,"bounceRate":0.48760330578512395},"emitted_at":1681405962136} -{"stream":"locations","data":{"property_id":"314186564","region":"New York","country":"United States","city":"New York","date":"20230412","totalUsers":85,"newUsers":49,"sessions":131,"sessionsPerUser":1.8194444444444444,"averageSessionDuration":379.1322029236641,"screenPageViews":391,"screenPageViewsPerSession":2.984732824427481,"bounceRate":0.5267175572519084},"emitted_at":1681405962137} -{"stream":"locations","data":{"property_id":"314186564","region":"New York","country":"United States","city":"New York","date":"20230410","totalUsers":81,"newUsers":42,"sessions":135,"sessionsPerUser":1.9565217391304348,"averageSessionDuration":303.13140742962963,"screenPageViews":376,"screenPageViewsPerSession":2.785185185185185,"bounceRate":0.5407407407407407},"emitted_at":1681405962137} -{"stream":"locations","data":{"property_id":"314186564","region":"New York","country":"United States","city":"New York","date":"20230411","totalUsers":81,"newUsers":38,"sessions":123,"sessionsPerUser":1.9523809523809523,"averageSessionDuration":362.51537134146344,"screenPageViews":312,"screenPageViewsPerSession":2.5365853658536586,"bounceRate":0.5934959349593496},"emitted_at":1681405962137} -{"stream":"locations","data":{"property_id":"314186564","region":"Karnataka","country":"India","city":"Bengaluru","date":"20230411","totalUsers":76,"newUsers":52,"sessions":123,"sessionsPerUser":1.8636363636363635,"averageSessionDuration":203.00314456910567,"screenPageViews":261,"screenPageViewsPerSession":2.1219512195121952,"bounceRate":0.4959349593495935},"emitted_at":1681405962137} -{"stream":"locations","data":{"property_id":"314186564","region":"Karnataka","country":"India","city":"Bengaluru","date":"20230403","totalUsers":69,"newUsers":34,"sessions":102,"sessionsPerUser":1.728813559322034,"averageSessionDuration":256.4942830490196,"screenPageViews":216,"screenPageViewsPerSession":2.1176470588235294,"bounceRate":0.5490196078431373},"emitted_at":1681405962137} -{"stream":"locations","data":{"property_id":"314186564","region":"New York","country":"United States","city":"New York","date":"20230407","totalUsers":69,"newUsers":30,"sessions":98,"sessionsPerUser":1.849056603773585,"averageSessionDuration":489.54009168367344,"screenPageViews":376,"screenPageViewsPerSession":3.836734693877551,"bounceRate":0.4489795918367347},"emitted_at":1681405962137} -{"stream":"pages","data":{"property_id":"314186564","date":"20230405","hostName":"airbyte.com","pagePathPlusQueryString":"/","screenPageViews":1190,"bounceRate":0.5516393442622951},"emitted_at":1681405967183} -{"stream":"pages","data":{"property_id":"314186564","date":"20230411","hostName":"airbyte.com","pagePathPlusQueryString":"/","screenPageViews":1151,"bounceRate":0.5400641025641025},"emitted_at":1681405967184} -{"stream":"pages","data":{"property_id":"314186564","date":"20230404","hostName":"airbyte.com","pagePathPlusQueryString":"/","screenPageViews":1137,"bounceRate":0.5617232808616405},"emitted_at":1681405967184} -{"stream":"pages","data":{"property_id":"314186564","date":"20230410","hostName":"airbyte.com","pagePathPlusQueryString":"/","screenPageViews":1099,"bounceRate":0.5416666666666666},"emitted_at":1681405967184} -{"stream":"pages","data":{"property_id":"314186564","date":"20230403","hostName":"airbyte.com","pagePathPlusQueryString":"/","screenPageViews":1092,"bounceRate":0.5569070373588184},"emitted_at":1681405967184} -{"stream":"pages","data":{"property_id":"314186564","date":"20230412","hostName":"airbyte.com","pagePathPlusQueryString":"/","screenPageViews":1089,"bounceRate":0.5690515806988353},"emitted_at":1681405967184} -{"stream":"pages","data":{"property_id":"314186564","date":"20230406","hostName":"airbyte.com","pagePathPlusQueryString":"/","screenPageViews":1005,"bounceRate":0.5516279069767441},"emitted_at":1681405967185} -{"stream":"pages","data":{"property_id":"314186564","date":"20230407","hostName":"airbyte.com","pagePathPlusQueryString":"/","screenPageViews":734,"bounceRate":0.571619812583668},"emitted_at":1681405967185} -{"stream":"pages","data":{"property_id":"314186564","date":"20230403","hostName":"airbyte.com","pagePathPlusQueryString":"/blog/data-modeling-unsung-hero-data-engineering-introduction","screenPageViews":541,"bounceRate":0.7192691029900332},"emitted_at":1681405967185} -{"stream":"pages","data":{"property_id":"314186564","date":"20230402","hostName":"airbyte.com","pagePathPlusQueryString":"/","screenPageViews":529,"bounceRate":0.5614678899082569},"emitted_at":1681405967185} -{"stream":"website_overview","data":{"property_id":"314186564","date":"20230406","totalUsers":3014,"newUsers":1539,"sessions":4257,"sessionsPerUser":1.661592505854801,"averageSessionDuration":270.9253856281419,"screenPageViews":10839,"screenPageViewsPerSession":2.5461592670894997,"bounceRate":0.5391120507399577},"emitted_at":1681405971634} -{"stream":"website_overview","data":{"property_id":"314186564","date":"20230403","totalUsers":2988,"newUsers":1461,"sessions":4350,"sessionsPerUser":1.725505751685839,"averageSessionDuration":246.36103450390806,"screenPageViews":10749,"screenPageViewsPerSession":2.4710344827586206,"bounceRate":0.5618390804597702},"emitted_at":1681405971634} -{"stream":"website_overview","data":{"property_id":"314186564","date":"20230404","totalUsers":2817,"newUsers":1367,"sessions":4153,"sessionsPerUser":1.7405699916177704,"averageSessionDuration":259.69049313965803,"screenPageViews":10653,"screenPageViewsPerSession":2.5651336383337346,"bounceRate":0.5379243920057789},"emitted_at":1681405971635} -{"stream":"website_overview","data":{"property_id":"314186564","date":"20230405","totalUsers":2754,"newUsers":1333,"sessions":4004,"sessionsPerUser":1.727351164797239,"averageSessionDuration":290.08648263536463,"screenPageViews":10737,"screenPageViewsPerSession":2.6815684315684316,"bounceRate":0.5072427572427572},"emitted_at":1681405971635} -{"stream":"website_overview","data":{"property_id":"314186564","date":"20230411","totalUsers":2730,"newUsers":1273,"sessions":4006,"sessionsPerUser":1.7820284697508897,"averageSessionDuration":256.8832527284074,"screenPageViews":10073,"screenPageViewsPerSession":2.514478282576136,"bounceRate":0.5162256615077384},"emitted_at":1681405971635} -{"stream":"website_overview","data":{"property_id":"314186564","date":"20230412","totalUsers":2642,"newUsers":1215,"sessions":3940,"sessionsPerUser":1.820702402957486,"averageSessionDuration":281.3629124893401,"screenPageViews":10621,"screenPageViewsPerSession":2.6956852791878174,"bounceRate":0.5309644670050762},"emitted_at":1681405971635} -{"stream":"website_overview","data":{"property_id":"314186564","date":"20230410","totalUsers":2409,"newUsers":1173,"sessions":3602,"sessionsPerUser":1.7822859970311726,"averageSessionDuration":252.51497996779568,"screenPageViews":8973,"screenPageViewsPerSession":2.491116046640755,"bounceRate":0.524153248195447},"emitted_at":1681405971635} -{"stream":"website_overview","data":{"property_id":"314186564","date":"20230407","totalUsers":1950,"newUsers":974,"sessions":2710,"sessionsPerUser":1.6646191646191646,"averageSessionDuration":261.6388968815498,"screenPageViews":6972,"screenPageViewsPerSession":2.572693726937269,"bounceRate":0.5431734317343173},"emitted_at":1681405971635} -{"stream":"website_overview","data":{"property_id":"314186564","date":"20230409","totalUsers":1277,"newUsers":664,"sessions":1661,"sessionsPerUser":1.6461843409316155,"averageSessionDuration":199.5610062384106,"screenPageViews":3300,"screenPageViewsPerSession":1.9867549668874172,"bounceRate":0.5605057194461168},"emitted_at":1681405971635} -{"stream":"website_overview","data":{"property_id":"314186564","date":"20230402","totalUsers":1185,"newUsers":605,"sessions":1505,"sessionsPerUser":1.5388548057259714,"averageSessionDuration":221.2044838358804,"screenPageViews":3260,"screenPageViewsPerSession":2.166112956810631,"bounceRate":0.5348837209302325},"emitted_at":1681405971636} -{"stream":"cohort_report","data":{"property_id":"314186564","cohort":"cohort_0","cohortNthDay":"0000","cohortActiveUsers":731},"emitted_at":1681405973101} -{"stream":"cohort_report","data":{"property_id":"314186564","cohort":"cohort_0","cohortNthDay":"0001","cohortActiveUsers":25},"emitted_at":1681405973101} -{"stream":"cohort_report","data":{"property_id":"314186564","cohort":"cohort_0","cohortNthDay":"0002","cohortActiveUsers":9},"emitted_at":1681405973101} -{"stream":"cohort_report","data":{"property_id":"314186564","cohort":"cohort_0","cohortNthDay":"0003","cohortActiveUsers":6},"emitted_at":1681405973101} -{"stream":"cohort_report","data":{"property_id":"314186564","cohort":"cohort_0","cohortNthDay":"0004","cohortActiveUsers":4},"emitted_at":1681405973101} -{"stream":"cohort_report","data":{"property_id":"314186564","cohort":"cohort_0","cohortNthDay":"0009","cohortActiveUsers":4},"emitted_at":1681405973102} -{"stream":"cohort_report","data":{"property_id":"314186564","cohort":"cohort_0","cohortNthDay":"0010","cohortActiveUsers":4},"emitted_at":1681405973102} -{"stream":"cohort_report","data":{"property_id":"314186564","cohort":"cohort_0","cohortNthDay":"0011","cohortActiveUsers":4},"emitted_at":1681405973102} -{"stream":"cohort_report","data":{"property_id":"314186564","cohort":"cohort_0","cohortNthDay":"0013","cohortActiveUsers":4},"emitted_at":1681405973102} -{"stream":"cohort_report","data":{"property_id":"314186564","cohort":"cohort_0","cohortNthDay":"0025","cohortActiveUsers":4},"emitted_at":1681405973102} -{"stream":"pivot_report","data":{"property_id":"314186564","browser":"Chrome","country":"United States","language":"English","sessions":24293,"startDate":"2023-04-01","endDate":"2023-04-30"},"emitted_at":1685012261616} -{"stream":"pivot_report","data":{"property_id":"314186564","browser":"Chrome","country":"India","language":"English","sessions":9419,"startDate":"2023-04-01","endDate":"2023-04-30"},"emitted_at":1685012261618} -{"stream":"pivot_report","data":{"property_id":"314186564","browser":"Safari","country":"United States","language":"English","sessions":3863,"startDate":"2023-04-01","endDate":"2023-04-30"},"emitted_at":1685012261618} -{"stream":"pivot_report","data":{"property_id":"314186564","browser":"Chrome","country":"Canada","language":"English","sessions":2560,"startDate":"2023-04-01","endDate":"2023-04-30"},"emitted_at":1685012261618} -{"stream":"pivot_report","data":{"property_id":"314186564","browser":"Chrome","country":"United Kingdom","language":"English","sessions":1964,"startDate":"2023-04-01","endDate":"2023-04-30"},"emitted_at":1685012261618} -{"stream":"pivot_report","data":{"property_id":"314186564","browser":"Edge","country":"United States","language":"English","sessions":1351,"startDate":"2023-04-01","endDate":"2023-04-30"},"emitted_at":1685012261619} -{"stream":"pivot_report","data":{"property_id":"314186564","browser":"Chrome","country":"Australia","language":"English","sessions":1307,"startDate":"2023-04-01","endDate":"2023-04-30"},"emitted_at":1685012261619} -{"stream":"pivot_report","data":{"property_id":"314186564","browser":"Chrome","country":"Brazil","language":"Portuguese","sessions":1302,"startDate":"2023-04-01","endDate":"2023-04-30"},"emitted_at":1685012261619} -{"stream":"pivot_report","data":{"property_id":"314186564","browser":"Chrome","country":"Vietnam","language":"English","sessions":1196,"startDate":"2023-04-01","endDate":"2023-04-30"},"emitted_at":1685012261619} -{"stream":"pivot_report","data":{"property_id":"314186564","browser":"Chrome","country":"Germany","language":"English","sessions":963,"startDate":"2023-04-01","endDate":"2023-04-30"},"emitted_at":1685012261619} +{"stream": "daily_active_users", "data": {"property_id": "314186564", "date": "20230909", "active1DayUsers": 993}, "emitted_at": 1694468998026} +{"stream": "daily_active_users", "data": {"property_id": "314186564", "date": "20230902", "active1DayUsers": 981}, "emitted_at": 1694468998026} +{"stream": "weekly_active_users", "data": {"property_id": "314186564", "date": "20230901", "active7DayUsers": 14068}, "emitted_at": 1694468999170} +{"stream": "weekly_active_users", "data": {"property_id": "314186564", "date": "20230904", "active7DayUsers": 13916}, "emitted_at": 1694468999171} +{"stream": "four_weekly_active_users", "data": {"property_id": "314186564", "date": "20230906", "active28DayUsers": 50716}, "emitted_at": 1694468999874} +{"stream": "devices", "data": {"property_id": "314186564", "date": "20230908", "deviceCategory": "desktop", "operatingSystem": "Windows", "browser": "Coc Coc", "totalUsers": 1, "newUsers": 1, "sessions": 1, "sessionsPerUser": 1.0, "averageSessionDuration": 18.264283, "screenPageViews": 1, "screenPageViewsPerSession": 1.0, "bounceRate": 0.0}, "emitted_at": 1694470835327} +{"stream": "devices", "data": {"property_id": "314186564", "date": "20230908", "deviceCategory": "mobile", "operatingSystem": "Android", "browser": "Opera", "totalUsers": 1, "newUsers": 0, "sessions": 2, "sessionsPerUser": 0.0, "averageSessionDuration": 5.3349965, "screenPageViews": 2, "screenPageViewsPerSession": 1.0, "bounceRate": 0.5}, "emitted_at": 1694470835327} +{"stream": "devices", "data": {"property_id": "314186564", "date": "20230909", "deviceCategory": "desktop", "operatingSystem": "Chrome OS", "browser": "Chrome", "totalUsers": 1, "newUsers": 1, "sessions": 1, "sessionsPerUser": 1.0, "averageSessionDuration": 51.171701, "screenPageViews": 2, "screenPageViewsPerSession": 2.0, "bounceRate": 0.0}, "emitted_at": 1694470835327} +{"stream": "locations", "data": {"property_id": "314186564", "region": "Ontario", "country": "Canada", "city": "Oakville", "date": "20230906", "totalUsers": 2, "newUsers": 1, "sessions": 2, "sessionsPerUser": 2.0, "averageSessionDuration": 172.972881, "screenPageViews": 1, "screenPageViewsPerSession": 0.5, "bounceRate": 0.5}, "emitted_at": 1694469006081} +{"stream": "locations", "data": {"property_id": "314186564", "region": "Ontario", "country": "Canada", "city": "Ottawa", "date": "20230904", "totalUsers": 2, "newUsers": 2, "sessions": 2, "sessionsPerUser": 1.0, "averageSessionDuration": 102.616519, "screenPageViews": 8, "screenPageViewsPerSession": 4.0, "bounceRate": 0.0}, "emitted_at": 1694469006081} +{"stream": "pages", "data": {"property_id": "314186564", "date": "20230901", "hostName": "airbyte.com", "pagePathPlusQueryString": "/", "screenPageViews": 807, "bounceRate": 0.3905882352941176}, "emitted_at": 1694471097644} +{"stream": "pages", "data": {"property_id": "314186564", "date": "20230908", "hostName": "airbyte.com", "pagePathPlusQueryString": "/", "screenPageViews": 799, "bounceRate": 0.5740740740740741}, "emitted_at": 1694471097644} +{"stream": "website_overview", "data": {"property_id": "314186564", "date": "20230902", "totalUsers": 1183, "newUsers": 658, "sessions": 1448, "sessionsPerUser": 1.4760448521916412, "averageSessionDuration": 274.2388035814917, "screenPageViews": 4996, "screenPageViewsPerSession": 3.4502762430939224, "bounceRate": 0.505524861878453}, "emitted_at": 1694469328404} +{"stream": "website_overview", "data": {"property_id": "314186564", "date": "20230909", "totalUsers": 1181, "newUsers": 641, "sessions": 1447, "sessionsPerUser": 1.457200402819738, "averageSessionDuration": 263.1897190352454, "screenPageViews": 4850, "screenPageViewsPerSession": 3.3517622667588114, "bounceRate": 0.5210780926053905}, "emitted_at": 1694469328405} +{"stream": "cohort_report", "data": {"property_id": "314186564", "cohort": "cohort_0", "cohortNthDay": "0070", "cohortActiveUsers": 1}, "emitted_at": 1694469328983} +{"stream": "cohort_report", "data": {"property_id": "314186564", "cohort": "cohort_0", "cohortNthDay": "0090", "cohortActiveUsers": 1}, "emitted_at": 1694469328983} +{"stream": "cohort_report", "data": {"property_id": "314186564", "cohort": "cohort_0", "cohortNthDay": "0094", "cohortActiveUsers": 1}, "emitted_at": 1694469328983} +{"stream": "pivot_report", "data": {"property_id": "314186564", "browser": "Edge", "country": "Burundi", "language": "Portuguese", "sessions": 0, "startDate": "2023-09-01", "endDate": "2023-09-11"}, "emitted_at": 1694469331257} +{"stream": "pivot_report", "data": {"property_id": "314186564", "browser": "Edge", "country": "Burundi", "language": "Russian", "sessions": 0, "startDate": "2023-09-01", "endDate": "2023-09-11"}, "emitted_at": 1694469331257} +{"stream": "pivot_report", "data": {"property_id": "314186564", "browser": "Edge", "country": "Burundi", "language": "Spanish", "sessions": 0, "startDate": "2023-09-01", "endDate": "2023-09-11"}, "emitted_at": 1694469331258} +{"stream": "user_acquisition_first_user_medium_report", "data": {"property_id": "314186564", "date": "20230909", "firstUserMedium": "ppc", "newUsers": 1, "engagedSessions": 0, "engagementRate": 0.0, "eventCount": 4, "conversions": 0.0, "totalRevenue": 0.0, "totalUsers": 1, "userEngagementDuration": 0.0}, "emitted_at": 1694473274377} +{"stream": "user_acquisition_first_user_medium_report", "data": {"property_id": "314186564", "date": "20230909", "firstUserMedium": "social", "newUsers": 1, "engagedSessions": 6, "engagementRate": 0.6, "eventCount": 47, "conversions": 2.0, "totalRevenue": 0.0, "totalUsers": 8, "userEngagementDuration": 265.0}, "emitted_at": 1694473274379} +{"stream": "user_acquisition_first_user_source_report", "data": {"property_id": "314186564", "date": "20230901", "firstUserSource": "linkedin.com", "newUsers": 26, "engagedSessions": 22, "engagementRate": 0.5238095238095238, "eventCount": 172, "conversions": 15.0, "totalRevenue": 0.0, "totalUsers": 37, "userEngagementDuration": 917.0}, "emitted_at": 1694503254368} +{"stream": "user_acquisition_first_user_source_report", "data": {"property_id": "314186564", "date": "20230904", "firstUserSource": "linkedin.com", "newUsers": 23, "engagedSessions": 15, "engagementRate": 0.3488372093023256, "eventCount": 133, "conversions": 0.0, "totalRevenue": 0.0, "totalUsers": 37, "userEngagementDuration": 641.0}, "emitted_at": 1694503254370} +{"stream": "user_acquisition_first_user_source_report", "data": {"property_id": "314186564", "date": "20230905", "firstUserSource": "bing", "newUsers": 23, "engagedSessions": 33, "engagementRate": 0.6226415094339622, "eventCount": 271, "conversions": 0.0, "totalRevenue": 0.0, "totalUsers": 42, "userEngagementDuration": 3206.0}, "emitted_at": 1694503254371} +{"stream": "user_acquisition_first_user_source_medium_report", "data": {"property_id": "314186564", "date": "20230904", "firstUserSource": "google", "firstUserMedium": "cpc", "newUsers": 15, "engagedSessions": 16, "engagementRate": 0.5333333333333333, "eventCount": 170, "conversions": 2.0, "totalRevenue": 0.0, "totalUsers": 18, "userEngagementDuration": 1335.0}, "emitted_at": 1694503256582} +{"stream": "user_acquisition_first_user_source_medium_report", "data": {"property_id": "314186564", "date": "20230905", "firstUserSource": "github.com", "firstUserMedium": "referral", "newUsers": 15, "engagedSessions": 29, "engagementRate": 0.7631578947368421, "eventCount": 621, "conversions": 0.0, "totalRevenue": 0.0, "totalUsers": 22, "userEngagementDuration": 3724.0}, "emitted_at": 1694503256582} +{"stream": "user_acquisition_first_user_source_platform_report", "data": {"property_id": "314186564", "date": "20230901", "firstUserSourcePlatform": "Manual", "newUsers": 851, "engagedSessions": 1236, "engagementRate": 0.7304964539007093, "eventCount": 11698, "conversions": 1047.0, "totalRevenue": 0.0, "totalUsers": 1358, "userEngagementDuration": 96700.0}, "emitted_at": 1694503258929} +{"stream": "user_acquisition_first_user_source_platform_report", "data": {"property_id": "314186564", "date": "20230905", "firstUserSourcePlatform": "(not set)", "newUsers": 675, "engagedSessions": 1639, "engagementRate": 0.5477941176470589, "eventCount": 30513, "conversions": 213.0, "totalRevenue": 0.0, "totalUsers": 2246, "userEngagementDuration": 361827.0}, "emitted_at": 1694503258930} +{"stream": "user_acquisition_first_user_source_platform_report", "data": {"property_id": "314186564", "date": "20230906", "firstUserSourcePlatform": "(not set)", "newUsers": 635, "engagedSessions": 1545, "engagementRate": 0.529835390946502, "eventCount": 28862, "conversions": 201.0, "totalRevenue": 0.0, "totalUsers": 2199, "userEngagementDuration": 356742.0}, "emitted_at": 1694503258930} +{"stream": "user_acquisition_first_user_campaign_report", "data": {"property_id": "314186564", "date": "20230907", "firstUserCampaignName": "(not set)", "newUsers": 96, "engagedSessions": 42, "engagementRate": 0.3387096774193548, "eventCount": 530, "conversions": 0.0, "totalRevenue": 0.0, "totalUsers": 110, "userEngagementDuration": 4357.0}, "emitted_at": 1694503260418} +{"stream": "user_acquisition_first_user_campaign_report", "data": {"property_id": "314186564", "date": "20230903", "firstUserCampaignName": "(referral)", "newUsers": 91, "engagedSessions": 79, "engagementRate": 0.5337837837837838, "eventCount": 919, "conversions": 5.0, "totalRevenue": 0.0, "totalUsers": 125, "userEngagementDuration": 8139.0}, "emitted_at": 1694503260419} +{"stream": "user_acquisition_first_user_campaign_report", "data": {"property_id": "314186564", "date": "20230902", "firstUserCampaignName": "(referral)", "newUsers": 84, "engagedSessions": 68, "engagementRate": 0.4722222222222222, "eventCount": 804, "conversions": 19.0, "totalRevenue": 0.0, "totalUsers": 120, "userEngagementDuration": 5436.0}, "emitted_at": 1694503260419} +{"stream": "user_acquisition_first_user_google_ads_ad_network_type_report", "data": {"property_id": "314186564", "date": "20230903", "firstUserGoogleAdsAdNetworkType": "(not set)", "newUsers": 796, "engagedSessions": 973, "engagementRate": 0.5010298661174047, "eventCount": 12817, "conversions": 121.0, "totalRevenue": 0.0, "totalUsers": 1594, "userEngagementDuration": 142765.0}, "emitted_at": 1694503261571} +{"stream": "user_acquisition_first_user_google_ads_ad_network_type_report", "data": {"property_id": "314186564", "date": "20230902", "firstUserGoogleAdsAdNetworkType": "(not set)", "newUsers": 658, "engagedSessions": 716, "engagementRate": 0.494475138121547, "eventCount": 10314, "conversions": 343.0, "totalRevenue": 0.0, "totalUsers": 1183, "userEngagementDuration": 114895.0}, "emitted_at": 1694503261572} +{"stream": "user_acquisition_first_user_google_ads_ad_network_type_report", "data": {"property_id": "314186564", "date": "20230909", "firstUserGoogleAdsAdNetworkType": "(not set)", "newUsers": 641, "engagedSessions": 693, "engagementRate": 0.47892190739460955, "eventCount": 9878, "conversions": 105.0, "totalRevenue": 0.0, "totalUsers": 1181, "userEngagementDuration": 108054.0}, "emitted_at": 1694503261572} +{"stream": "user_acquisition_first_user_google_ads_ad_group_name_report", "data": {"property_id": "314186564", "date": "20230903", "firstUserGoogleAdsAdGroupName": "(not set)", "newUsers": 796, "engagedSessions": 973, "engagementRate": 0.5010298661174047, "eventCount": 12817, "conversions": 121.0, "totalRevenue": 0.0, "totalUsers": 1594, "userEngagementDuration": 142765.0}, "emitted_at": 1694503262664} +{"stream": "user_acquisition_first_user_google_ads_ad_group_name_report", "data": {"property_id": "314186564", "date": "20230902", "firstUserGoogleAdsAdGroupName": "(not set)", "newUsers": 658, "engagedSessions": 716, "engagementRate": 0.494475138121547, "eventCount": 10314, "conversions": 343.0, "totalRevenue": 0.0, "totalUsers": 1183, "userEngagementDuration": 114895.0}, "emitted_at": 1694503262665} +{"stream": "user_acquisition_first_user_google_ads_ad_group_name_report", "data": {"property_id": "314186564", "date": "20230909", "firstUserGoogleAdsAdGroupName": "(not set)", "newUsers": 641, "engagedSessions": 693, "engagementRate": 0.47892190739460955, "eventCount": 9878, "conversions": 105.0, "totalRevenue": 0.0, "totalUsers": 1181, "userEngagementDuration": 108054.0}, "emitted_at": 1694503262665} +{"stream": "traffic_acquisition_session_source_medium_report", "data": {"property_id": "314186564", "date": "20230906", "sessionSource": "bing", "sessionMedium": "organic", "totalUsers": 48, "sessions": 56, "engagedSessions": 28, "eventsPerSession": 5.053571428571429, "engagementRate": 0.5, "eventCount": 283, "conversions": 12.0, "totalRevenue": 0.0, "userEngagementDuration": 5900.0}, "emitted_at": 1694503263943} +{"stream": "traffic_acquisition_session_source_medium_report", "data": {"property_id": "314186564", "date": "20230905", "sessionSource": "google", "sessionMedium": "cpc", "totalUsers": 45, "sessions": 53, "engagedSessions": 28, "eventsPerSession": 5.30188679245283, "engagementRate": 0.5283018867924528, "eventCount": 281, "conversions": 0.0, "totalRevenue": 0.0, "userEngagementDuration": 2303.0}, "emitted_at": 1694503263944} +{"stream": "traffic_acquisition_session_source_medium_report", "data": {"property_id": "314186564", "date": "20230907", "sessionSource": "bing", "sessionMedium": "organic", "totalUsers": 45, "sessions": 62, "engagedSessions": 27, "eventsPerSession": 3.9516129032258065, "engagementRate": 0.43548387096774194, "eventCount": 245, "conversions": 4.0, "totalRevenue": 0.0, "userEngagementDuration": 2497.0}, "emitted_at": 1694503263945} +{"stream": "traffic_acquisition_session_medium_report", "data": {"property_id": "314186564", "date": "20230901", "sessionMedium": "referral", "totalUsers": 328, "sessions": 504, "engagedSessions": 363, "eventsPerSession": 15.107142857142858, "engagementRate": 0.7202380952380952, "eventCount": 7614, "conversions": 466.0, "totalRevenue": 0.0, "userEngagementDuration": 64393.0}, "emitted_at": 1694503266539} +{"stream": "traffic_acquisition_session_medium_report", "data": {"property_id": "314186564", "date": "20230902", "sessionMedium": "(none)", "totalUsers": 324, "sessions": 441, "engagedSessions": 255, "eventsPerSession": 10.81859410430839, "engagementRate": 0.5782312925170068, "eventCount": 4771, "conversions": 213.0, "totalRevenue": 0.0, "userEngagementDuration": 52486.0}, "emitted_at": 1694503266540} +{"stream": "traffic_acquisition_session_medium_report", "data": {"property_id": "314186564", "date": "20230908", "sessionMedium": "referral", "totalUsers": 294, "sessions": 458, "engagedSessions": 278, "eventsPerSession": 9.687772925764191, "engagementRate": 0.6069868995633187, "eventCount": 4437, "conversions": 7.0, "totalRevenue": 0.0, "userEngagementDuration": 44737.0}, "emitted_at": 1694503266540} +{"stream": "traffic_acquisition_session_source_report", "data": {"property_id": "314186564", "date": "20230908", "sessionSource": "link.edgepilot.com", "totalUsers": 1, "sessions": 1, "engagedSessions": 0, "eventsPerSession": 3.0, "engagementRate": 0.0, "eventCount": 3, "conversions": 0.0, "totalRevenue": 0.0, "userEngagementDuration": 0.0}, "emitted_at": 1694503668768} +{"stream": "traffic_acquisition_session_source_report", "data": {"property_id": "314186564", "date": "20230908", "sessionSource": "linktr.ee", "totalUsers": 1, "sessions": 2, "engagedSessions": 0, "eventsPerSession": 2.0, "engagementRate": 0.0, "eventCount": 4, "conversions": 0.0, "totalRevenue": 0.0, "userEngagementDuration": 0.0}, "emitted_at": 1694503668768} +{"stream": "traffic_acquisition_session_source_report", "data": {"property_id": "314186564", "date": "20230908", "sessionSource": "lnkd.in", "totalUsers": 1, "sessions": 1, "engagedSessions": 0, "eventsPerSession": 3.0, "engagementRate": 0.0, "eventCount": 3, "conversions": 0.0, "totalRevenue": 0.0, "userEngagementDuration": 0.0}, "emitted_at": 1694503668769} +{"stream": "traffic_acquisition_session_campaign_report", "data": {"property_id": "314186564", "date": "20230905", "sessionCampaignName": "Airbyte - Brand", "totalUsers": 1, "sessions": 1, "engagedSessions": 0, "eventsPerSession": 3.0, "engagementRate": 0.0, "eventCount": 3, "conversions": 0.0, "totalRevenue": 0.0, "userEngagementDuration": 0.0}, "emitted_at": 1694503669694} +{"stream": "traffic_acquisition_session_campaign_report", "data": {"property_id": "314186564", "date": "20230905", "sessionCampaignName": "Credit Block Expiry (7 days)", "totalUsers": 1, "sessions": 1, "engagedSessions": 0, "eventsPerSession": 2.0, "engagementRate": 0.0, "eventCount": 2, "conversions": 0.0, "totalRevenue": 0.0, "userEngagementDuration": 0.0}, "emitted_at": 1694503669694} +{"stream": "traffic_acquisition_session_campaign_report", "data": {"property_id": "314186564", "date": "20230905", "sessionCampaignName": "Source Connector Disable", "totalUsers": 1, "sessions": 2, "engagedSessions": 1, "eventsPerSession": 4.0, "engagementRate": 0.5, "eventCount": 8, "conversions": 0.0, "totalRevenue": 0.0, "userEngagementDuration": 25.0}, "emitted_at": 1694503669694} +{"stream": "traffic_acquisition_session_default_channel_grouping_report", "data": {"property_id": "314186564", "date": "20230908", "sessionDefaultChannelGrouping": "Organic Social", "totalUsers": 72, "sessions": 92, "engagedSessions": 43, "eventsPerSession": 5.75, "engagementRate": 0.4673913043478261, "eventCount": 529, "conversions": 0.0, "totalRevenue": 0.0, "userEngagementDuration": 4875.0}, "emitted_at": 1694503670512} +{"stream": "traffic_acquisition_session_default_channel_grouping_report", "data": {"property_id": "314186564", "date": "20230909", "sessionDefaultChannelGrouping": "Referral", "totalUsers": 71, "sessions": 88, "engagedSessions": 43, "eventsPerSession": 9.068181818181818, "engagementRate": 0.48863636363636365, "eventCount": 798, "conversions": 4.0, "totalRevenue": 0.0, "userEngagementDuration": 4383.0}, "emitted_at": 1694503670513} +{"stream": "traffic_acquisition_session_default_channel_grouping_report", "data": {"property_id": "314186564", "date": "20230902", "sessionDefaultChannelGrouping": "Organic Social", "totalUsers": 60, "sessions": 72, "engagedSessions": 22, "eventsPerSession": 4.111111111111111, "engagementRate": 0.3055555555555556, "eventCount": 296, "conversions": 1.0, "totalRevenue": 0.0, "userEngagementDuration": 3027.0}, "emitted_at": 1694503670513} +{"stream": "traffic_acquisition_session_source_platform_report", "data": {"property_id": "314186564", "date": "20230908", "sessionSourcePlatform": "Manual", "totalUsers": 1741, "sessions": 2367, "engagedSessions": 1260, "eventsPerSession": 5.593578369243769, "engagementRate": 0.532319391634981, "eventCount": 13240, "conversions": 45.0, "totalRevenue": 0.0, "userEngagementDuration": 136465.0}, "emitted_at": 1694503671150} +{"stream": "traffic_acquisition_session_source_platform_report", "data": {"property_id": "314186564", "date": "20230901", "sessionSourcePlatform": "Manual", "totalUsers": 1702, "sessions": 2245, "engagedSessions": 1611, "eventsPerSession": 8.009354120267261, "engagementRate": 0.7175946547884187, "eventCount": 17981, "conversions": 1447.0, "totalRevenue": 0.0, "userEngagementDuration": 147126.0}, "emitted_at": 1694503671151} +{"stream": "traffic_acquisition_session_source_platform_report", "data": {"property_id": "314186564", "date": "20230904", "sessionSourcePlatform": "Manual", "totalUsers": 1692, "sessions": 2322, "engagedSessions": 1233, "eventsPerSession": 5.554263565891473, "engagementRate": 0.5310077519379846, "eventCount": 12897, "conversions": 43.0, "totalRevenue": 0.0, "userEngagementDuration": 125141.0}, "emitted_at": 1694503671151} +{"stream": "events_report", "data": {"property_id": "314186564", "date": "20230902", "eventName": "session_start", "eventCount": 1357, "totalUsers": 1012, "eventCountPerUser": 1.6753086419753087, "totalRevenue": 0.0}, "emitted_at": 1694503671928} +{"stream": "events_report", "data": {"property_id": "314186564", "date": "20230909", "eventName": "session_start", "eventCount": 1343, "totalUsers": 1006, "eventCountPerUser": 1.6418092909535453, "totalRevenue": 0.0}, "emitted_at": 1694503671928} +{"stream": "events_report", "data": {"property_id": "314186564", "date": "20230908", "eventName": "first_visit", "eventCount": 1337, "totalUsers": 1267, "eventCountPerUser": 1.0552486187845305, "totalRevenue": 0.0}, "emitted_at": 1694503671928} +{"stream": "conversions_report", "data": {"property_id": "314186564", "date": "20230901", "eventName": "visited_demo", "conversions": 2237.0, "totalUsers": 1460, "totalRevenue": 0.0}, "emitted_at": 1693570408919} +{"stream": "pages_title_and_screen_class_report", "data": {"property_id": "314186564", "date": "20230905", "unifiedScreenClass": "Airbyte | Connections", "screenPageViews": 3185, "totalUsers": 614, "newUsers": 9, "eventCount": 3968, "conversions": 17.0, "totalRevenue": 0.0, "userEngagementDuration": 56884.0}, "emitted_at": 1693570639792} +{"stream": "pages_path_report", "data": {"property_id": "314186564", "date": "20230907", "pagePath": "/tutorials/postgresql-database-to-snowflake", "screenPageViews": 7, "totalUsers": 6, "newUsers": 3, "eventCount": 21, "conversions": 0.0, "totalRevenue": 0.0, "userEngagementDuration": 298.0}, "emitted_at": 1694472681019} +{"stream": "pages_path_report", "data": {"property_id": "314186564", "date": "20230907", "pagePath": "/workspaces/000adcf6-99b6-4a91-847c-d24a68e77eff/connections", "screenPageViews": 7, "totalUsers": 1, "newUsers": 0, "eventCount": 7, "conversions": 0.0, "totalRevenue": 0.0, "userEngagementDuration": 25.0}, "emitted_at": 1694472681019} +{"stream": "pages_path_report", "data": {"property_id": "314186564", "date": "20230907", "pagePath": "/workspaces/095383e5-9d06-4c5c-be63-2d828c348578/connections/1820a981-0f25-48f4-b2ce-799744268889/job-history", "screenPageViews": 7, "totalUsers": 1, "newUsers": 0, "eventCount": 12, "conversions": 0.0, "totalRevenue": 0.0, "userEngagementDuration": 197.0}, "emitted_at": 1694472681019} +{"stream": "content_group_report", "data": {"property_id": "314186564", "date": "20230907", "contentGroup": "(not set)", "screenPageViews": 22352, "totalUsers": 4024, "newUsers": 1887, "eventCount": 41685, "conversions": 308.0, "totalRevenue": 0.0, "userEngagementDuration": 464005.0}, "emitted_at": 1694472750121} +{"stream": "content_group_report", "data": {"property_id": "314186564", "date": "20230908", "contentGroup": "(not set)", "screenPageViews": 18494, "totalUsers": 3005, "newUsers": 1337, "eventCount": 32807, "conversions": 149.0, "totalRevenue": 0.0, "userEngagementDuration": 418359.0}, "emitted_at": 1694472750122} +{"stream": "content_group_report", "data": {"property_id": "314186564", "date": "20230904", "contentGroup": "(not set)", "screenPageViews": 16669, "totalUsers": 2889, "newUsers": 1401, "eventCount": 30590, "conversions": 231.0, "totalRevenue": 0.0, "userEngagementDuration": 335968.0}, "emitted_at": 1694472750123} +{"stream": "pages_title_and_screen_name_report", "data": {"property_id": "314186564", "date": "20230904", "unifiedScreenName": "Airbyte | Connections | MongoDB Atlas (Production) \u2192 Postgres - Performance dashboard (Production)", "screenPageViews": 48, "totalUsers": 2, "newUsers": 0, "eventCount": 49, "conversions": 0.0, "totalRevenue": 0.0, "userEngagementDuration": 408.0}, "emitted_at": 1694472743024} +{"stream": "pages_title_and_screen_name_report", "data": {"property_id": "314186564", "date": "20230905", "unifiedScreenName": "Airbyte | Settings | Destinations", "screenPageViews": 48, "totalUsers": 38, "newUsers": 0, "eventCount": 62, "conversions": 0.0, "totalRevenue": 0.0, "userEngagementDuration": 965.0}, "emitted_at": 1694472743025} +{"stream": "pages_title_and_screen_name_report", "data": {"property_id": "314186564", "date": "20230906", "unifiedScreenName": "Powered by Airbyte | Add 100+ integrations instantly", "screenPageViews": 48, "totalUsers": 35, "newUsers": 2, "eventCount": 118, "conversions": 0.0, "totalRevenue": 0.0, "userEngagementDuration": 1607.0}, "emitted_at": 1694472743026} +{"stream": "demographic_country_report", "data": {"property_id": "314186564", "date": "20230909", "country": "India", "totalUsers": 180, "newUsers": 113, "engagedSessions": 132, "engagementRate": 0.5569620253164557, "conversions": 14.0, "totalRevenue": 0.0}, "emitted_at": 1694472763355} +{"stream": "demographic_country_report", "data": {"property_id": "314186564", "date": "20230907", "country": "Canada", "totalUsers": 157, "newUsers": 78, "engagedSessions": 150, "engagementRate": 0.5703422053231939, "conversions": 18.0, "totalRevenue": 0.0}, "emitted_at": 1694472763355} +{"stream": "demographic_country_report", "data": {"property_id": "314186564", "date": "20230905", "country": "Canada", "totalUsers": 153, "newUsers": 89, "engagedSessions": 147, "engagementRate": 0.5568181818181818, "conversions": 30.0, "totalRevenue": 0.0}, "emitted_at": 1694472763356} +{"stream": "demographic_region_report", "data": {"property_id": "314186564", "date": "20230909", "region": "(not set)", "totalUsers": 146, "newUsers": 34, "engagedSessions": 33, "engagementRate": 0.4925373134328358, "conversions": 29.0, "totalRevenue": 0.0}, "emitted_at": 1694472766095} +{"stream": "demographic_region_report", "data": {"property_id": "314186564", "date": "20230907", "region": "New York", "totalUsers": 142, "newUsers": 79, "engagedSessions": 114, "engagementRate": 0.5205479452054794, "conversions": 10.0, "totalRevenue": 0.0}, "emitted_at": 1694472766096} +{"stream": "demographic_region_report", "data": {"property_id": "314186564", "date": "20230904", "region": "California", "totalUsers": 134, "newUsers": 82, "engagedSessions": 96, "engagementRate": 0.463768115942029, "conversions": 2.0, "totalRevenue": 0.0}, "emitted_at": 1694472766096} +{"stream": "demographic_city_report", "data": {"property_id": "314186564", "date": "20230905", "city": "San Francisco", "totalUsers": 61, "newUsers": 24, "engagedSessions": 73, "engagementRate": 0.6083333333333333, "conversions": 15.0, "totalRevenue": 0.0}, "emitted_at": 1694472770488} +{"stream": "demographic_city_report", "data": {"property_id": "314186564", "date": "20230905", "city": "London", "totalUsers": 59, "newUsers": 12, "engagedSessions": 54, "engagementRate": 0.47368421052631576, "conversions": 10.0, "totalRevenue": 0.0}, "emitted_at": 1694472770488} +{"stream": "demographic_city_report", "data": {"property_id": "314186564", "date": "20230906", "city": "San Francisco", "totalUsers": 57, "newUsers": 23, "engagedSessions": 56, "engagementRate": 0.5, "conversions": 0.0, "totalRevenue": 0.0}, "emitted_at": 1694472770488} +{"stream": "demographic_language_report", "data": {"property_id": "314186564", "date": "20230908", "language": "(other)", "totalUsers": 279, "newUsers": 0, "engagedSessions": 0, "engagementRate": 0.0, "conversions": 40.0, "totalRevenue": 0.0}, "emitted_at": 1694472774887} +{"stream": "demographic_language_report", "data": {"property_id": "314186564", "date": "20230903", "language": "(other)", "totalUsers": 135, "newUsers": 0, "engagedSessions": 0, "engagementRate": 0.0, "conversions": 18.0, "totalRevenue": 0.0}, "emitted_at": 1694472774887} +{"stream": "demographic_language_report", "data": {"property_id": "314186564", "date": "20230905", "language": "Chinese", "totalUsers": 124, "newUsers": 65, "engagedSessions": 91, "engagementRate": 0.4918918918918919, "conversions": 9.0, "totalRevenue": 0.0}, "emitted_at": 1694472774888} +{"stream": "tech_browser_report", "data": {"property_id": "314186564", "date": "20230904", "browser": "(not set)", "totalUsers": 314, "newUsers": 4, "engagedSessions": 2, "engagementRate": 0.5, "eventCount": 735, "conversions": 45.0, "totalRevenue": 0.0}, "emitted_at": 1694472779543} +{"stream": "tech_browser_report", "data": {"property_id": "314186564", "date": "20230906", "browser": "Safari", "totalUsers": 294, "newUsers": 198, "engagedSessions": 149, "engagementRate": 0.41274238227146814, "eventCount": 1944, "conversions": 30.0, "totalRevenue": 0.0}, "emitted_at": 1694472779544} +{"stream": "tech_browser_report", "data": {"property_id": "314186564", "date": "20230905", "browser": "Safari", "totalUsers": 284, "newUsers": 181, "engagedSessions": 174, "engagementRate": 0.45910290237467016, "eventCount": 2979, "conversions": 32.0, "totalRevenue": 0.0}, "emitted_at": 1694472779544} +{"stream": "tech_device_category_report", "data": {"property_id": "314186564", "date": "20230906", "deviceCategory": "mobile", "totalUsers": 387, "newUsers": 271, "engagedSessions": 169, "engagementRate": 0.3730684326710817, "eventCount": 1841, "conversions": 18.0, "totalRevenue": 0.0}, "emitted_at": 1694472780909} +{"stream": "tech_device_category_report", "data": {"property_id": "314186564", "date": "20230908", "deviceCategory": "mobile", "totalUsers": 374, "newUsers": 250, "engagedSessions": 198, "engagementRate": 0.4267241379310345, "eventCount": 2025, "conversions": 8.0, "totalRevenue": 0.0}, "emitted_at": 1694472780909} +{"stream": "tech_device_category_report", "data": {"property_id": "314186564", "date": "20230904", "deviceCategory": "mobile", "totalUsers": 355, "newUsers": 235, "engagedSessions": 176, "engagementRate": 0.4055299539170507, "eventCount": 1759, "conversions": 13.0, "totalRevenue": 0.0}, "emitted_at": 1694472780909} +{"stream": "tech_device_model_report", "data": {"property_id": "314186564", "date": "20230903", "deviceModel": "(not set)", "totalUsers": 1594, "newUsers": 796, "engagedSessions": 973, "engagementRate": 0.5010298661174047, "eventCount": 12817, "conversions": 121.0, "totalRevenue": 0.0}, "emitted_at": 1694472782023} +{"stream": "tech_device_model_report", "data": {"property_id": "314186564", "date": "20230902", "deviceModel": "(not set)", "totalUsers": 1183, "newUsers": 658, "engagedSessions": 716, "engagementRate": 0.494475138121547, "eventCount": 10314, "conversions": 343.0, "totalRevenue": 0.0}, "emitted_at": 1694472782023} +{"stream": "tech_screen_resolution_report", "data": {"property_id": "314186564", "date": "20230904", "screenResolution": "(not set)", "totalUsers": 310, "newUsers": 0, "engagedSessions": 0, "engagementRate": 0.0, "eventCount": 721, "conversions": 45.0, "totalRevenue": 0.0}, "emitted_at": 1694472783852} +{"stream": "tech_screen_resolution_report", "data": {"property_id": "314186564", "date": "20230906", "screenResolution": "1440x900", "totalUsers": 290, "newUsers": 139, "engagedSessions": 243, "engagementRate": 0.5203426124197003, "eventCount": 3719, "conversions": 16.0, "totalRevenue": 0.0}, "emitted_at": 1694472783852} +{"stream": "tech_screen_resolution_report", "data": {"property_id": "314186564", "date": "20230907", "screenResolution": "1440x900", "totalUsers": 288, "newUsers": 135, "engagedSessions": 242, "engagementRate": 0.5342163355408388, "eventCount": 3689, "conversions": 50.0, "totalRevenue": 0.0}, "emitted_at": 1694472783852} +{"stream": "tech_app_version_report", "data": {"property_id": "314186564", "date": "20230901", "appVersion": "(not set)", "totalUsers": 2568, "newUsers": 1242, "engagedSessions": 2423, "engagementRate": 0.6881567736438512, "eventCount": 31553, "conversions": 2315.0, "totalRevenue": 0.0}, "emitted_at": 1694472785234} +{"stream": "tech_app_version_report", "data": {"property_id": "314186564", "date": "20230903", "appVersion": "(not set)", "totalUsers": 1594, "newUsers": 796, "engagedSessions": 973, "engagementRate": 0.5010298661174047, "eventCount": 12817, "conversions": 121.0, "totalRevenue": 0.0}, "emitted_at": 1694472785234} +{"stream": "tech_platform_report", "data": {"property_id": "314186564", "date": "20230902", "platform": "web", "totalUsers": 1183, "newUsers": 658, "engagedSessions": 716, "engagementRate": 0.494475138121547, "eventCount": 10314, "conversions": 343.0, "totalRevenue": 0.0}, "emitted_at": 1694705714014} +{"stream": "tech_platform_report", "data": {"property_id": "314186564", "date": "20230909", "platform": "web", "totalUsers": 1181, "newUsers": 641, "engagedSessions": 693, "engagementRate": 0.47892190739460955, "eventCount": 9878, "conversions": 105.0, "totalRevenue": 0.0}, "emitted_at": 1694705714014} +{"stream": "tech_platform_device_category_report", "data": {"property_id": "314186564", "date": "20230905", "platform": "web", "deviceCategory": "mobile", "totalUsers": 412, "newUsers": 280, "engagedSessions": 202, "engagementRate": 0.41821946169772256, "eventCount": 2087, "conversions": 14.0, "totalRevenue": 0.0}, "emitted_at": 1694472787846} +{"stream": "tech_platform_device_category_report", "data": {"property_id": "314186564", "date": "20230906", "platform": "web", "deviceCategory": "mobile", "totalUsers": 387, "newUsers": 271, "engagedSessions": 169, "engagementRate": 0.3730684326710817, "eventCount": 1841, "conversions": 18.0, "totalRevenue": 0.0}, "emitted_at": 1694472787847} +{"stream": "tech_platform_device_category_report", "data": {"property_id": "314186564", "date": "20230908", "platform": "web", "deviceCategory": "mobile", "totalUsers": 374, "newUsers": 250, "engagedSessions": 198, "engagementRate": 0.4267241379310345, "eventCount": 2025, "conversions": 8.0, "totalRevenue": 0.0}, "emitted_at": 1694472787848} +{"stream": "tech_operating_system_report", "data": {"property_id": "314186564", "date": "20230902", "operatingSystem": "Macintosh", "totalUsers": 382, "newUsers": 202, "engagedSessions": 286, "engagementRate": 0.5416666666666666, "eventCount": 4798, "conversions": 223.0, "totalRevenue": 0.0}, "emitted_at": 1694472788894} +{"stream": "tech_operating_system_report", "data": {"property_id": "314186564", "date": "20230906", "operatingSystem": "(not set)", "totalUsers": 363, "newUsers": 8, "engagedSessions": 5, "engagementRate": 0.625, "eventCount": 828, "conversions": 54.0, "totalRevenue": 0.0}, "emitted_at": 1694472788895} +{"stream": "tech_os_with_version_report", "data": {"property_id": "314186564", "date": "20230901", "operatingSystemWithVersion": "Macintosh Intel 13.5", "totalUsers": 277, "newUsers": 118, "engagedSessions": 283, "engagementRate": 0.6835748792270532, "eventCount": 3506, "conversions": 273.0, "totalRevenue": 0.0}, "emitted_at": 1694472790051} +{"stream": "tech_os_with_version_report", "data": {"property_id": "314186564", "date": "20230904", "operatingSystemWithVersion": "Macintosh Intel 13.5", "totalUsers": 269, "newUsers": 113, "engagedSessions": 226, "engagementRate": 0.5159817351598174, "eventCount": 3436, "conversions": 18.0, "totalRevenue": 0.0}, "emitted_at": 1694472790051} +{"stream": "tech_os_with_version_report", "data": {"property_id": "314186564", "date": "20230905", "operatingSystemWithVersion": "Macintosh Intel 13.4", "totalUsers": 266, "newUsers": 100, "engagedSessions": 245, "engagementRate": 0.5212765957446809, "eventCount": 3422, "conversions": 21.0, "totalRevenue": 0.0}, "emitted_at": 1694472790051} +{"stream": "weekly_events_report", "data": {"property_id": "314186564", "yearWeek": "202335", "eventName": "visited_demo", "eventCount": 8798, "totalUsers": 1494, "eventCountPerUser": 6.31586503948313, "totalRevenue": 0.0, "startDate": "2023-09-01", "endDate": "2023-09-19"}, "emitted_at": 1695124087279} diff --git a/airbyte-integrations/connectors/source-google-analytics-data-api/integration_tests/invalid_config.json b/airbyte-integrations/connectors/source-google-analytics-data-api/integration_tests/invalid_config.json index 10e4173e92e8..ade383bf022c 100644 --- a/airbyte-integrations/connectors/source-google-analytics-data-api/integration_tests/invalid_config.json +++ b/airbyte-integrations/connectors/source-google-analytics-data-api/integration_tests/invalid_config.json @@ -1,5 +1,5 @@ { - "property_id": "1", + "property_id": ["1"], "json_credentials": "wrong", "report_name": "crash_report", "dimensions": "date, operatingSystem, streamId", diff --git a/airbyte-integrations/connectors/source-google-analytics-data-api/main.py b/airbyte-integrations/connectors/source-google-analytics-data-api/main.py index 3e6c130dfeb8..e9aec0270a9d 100644 --- a/airbyte-integrations/connectors/source-google-analytics-data-api/main.py +++ b/airbyte-integrations/connectors/source-google-analytics-data-api/main.py @@ -7,7 +7,9 @@ from airbyte_cdk.entrypoint import launch from source_google_analytics_data_api import SourceGoogleAnalyticsDataApi +from source_google_analytics_data_api.config_migrations import MigrateCustomReports if __name__ == "__main__": source = SourceGoogleAnalyticsDataApi() + MigrateCustomReports.migrate(sys.argv[1:], source) launch(source, sys.argv[1:]) diff --git a/airbyte-integrations/connectors/source-google-analytics-data-api/metadata.yaml b/airbyte-integrations/connectors/source-google-analytics-data-api/metadata.yaml index 26825ee071fc..9120920d9779 100644 --- a/airbyte-integrations/connectors/source-google-analytics-data-api/metadata.yaml +++ b/airbyte-integrations/connectors/source-google-analytics-data-api/metadata.yaml @@ -7,7 +7,7 @@ data: connectorSubtype: api connectorType: source definitionId: 3cc2eafd-84aa-4dca-93af-322d9dfeec1a - dockerImageTag: 1.1.3 + dockerImageTag: 1.5.0 dockerRepository: airbyte/source-google-analytics-data-api githubIssueLabel: source-google-analytics-data-api icon: google-analytics.svg @@ -19,6 +19,17 @@ data: oss: enabled: true releaseStage: generally_available + suggestedStreams: + streams: + - website_overview + - daily_active_users + - traffic_sources + - pages + - weekly_active_users + - devices + - locations + - four_weekly_active_users + - sessions documentationUrl: https://docs.airbyte.com/integrations/sources/google-analytics-data-api tags: - language:python diff --git a/airbyte-integrations/connectors/source-google-analytics-data-api/setup.py b/airbyte-integrations/connectors/source-google-analytics-data-api/setup.py index d93d394a4354..b11a793a8d5f 100644 --- a/airbyte-integrations/connectors/source-google-analytics-data-api/setup.py +++ b/airbyte-integrations/connectors/source-google-analytics-data-api/setup.py @@ -5,7 +5,7 @@ from setuptools import find_packages, setup -MAIN_REQUIREMENTS = ["airbyte-cdk", "PyJWT==2.4.0", "cryptography==37.0.4", "requests"] +MAIN_REQUIREMENTS = ["airbyte-cdk", "PyJWT==2.4.0", "cryptography==37.0.4", "requests", "pandas"] TEST_REQUIREMENTS = [ "freezegun", diff --git a/airbyte-integrations/connectors/source-google-analytics-data-api/source_google_analytics_data_api/config_migrations.py b/airbyte-integrations/connectors/source-google-analytics-data-api/source_google_analytics_data_api/config_migrations.py new file mode 100644 index 000000000000..53a7d4f6bb49 --- /dev/null +++ b/airbyte-integrations/connectors/source-google-analytics-data-api/source_google_analytics_data_api/config_migrations.py @@ -0,0 +1,86 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + + +import logging +from typing import Any, List, Mapping + +from airbyte_cdk.config_observation import create_connector_config_control_message +from airbyte_cdk.entrypoint import AirbyteEntrypoint +from airbyte_cdk.sources import Source +from airbyte_cdk.sources.message import InMemoryMessageRepository, MessageRepository + +logger = logging.getLogger("airbyte_logger") + + +class MigrateCustomReports: + """ + This class stands for migrating the config at runtime, + while providing the backward compatibility when falling back to the previous source version. + + Specifically, starting from `1.3.0`, the `property_id` property should be like : + > List(["", "", ..., ""]) + instead of, in `1.2.0`: + > JSON STR: "" + """ + + message_repository: MessageRepository = InMemoryMessageRepository() + migrate_from_key: str = "property_id" + migrate_to_key: str = "property_ids" + + @classmethod + def should_migrate(cls, config: Mapping[str, Any]) -> bool: + """ + This method determines whether config require migration. + Returns: + > True, if the transformation is neccessary + > False, otherwise. + """ + if cls.migrate_from_key in config: + return True + return False + + @classmethod + def transform_to_array(cls, config: Mapping[str, Any], source: Source = None) -> Mapping[str, Any]: + # assign old values to new property that will be used within the new version + config[cls.migrate_to_key] = config[cls.migrate_to_key] if cls.migrate_to_key in config else [] + data = config.pop(cls.migrate_from_key) + if data not in config[cls.migrate_to_key]: + config[cls.migrate_to_key].append(data) + return config + + @classmethod + def modify_and_save(cls, config_path: str, source: Source, config: Mapping[str, Any]) -> Mapping[str, Any]: + # modify the config + migrated_config = cls.transform_to_array(config, source) + # save the config + source.write_config(migrated_config, config_path) + # return modified config + return migrated_config + + @classmethod + def emit_control_message(cls, migrated_config: Mapping[str, Any]) -> None: + # add the Airbyte Control Message to message repo + cls.message_repository.emit_message(create_connector_config_control_message(migrated_config)) + # emit the Airbyte Control Message from message queue to stdout + for message in cls.message_repository._message_queue: + print(message.json(exclude_unset=True)) + + @classmethod + def migrate(cls, args: List[str], source: Source) -> None: + """ + This method checks the input args, should the config be migrated, + transform if neccessary and emit the CONTROL message. + """ + # get config path + config_path = AirbyteEntrypoint(source).extract_config(args) + # proceed only if `--config` arg is provided + if config_path: + # read the existing config + config = source.read_config(config_path) + # migration check + if cls.should_migrate(config): + cls.emit_control_message( + cls.modify_and_save(config_path, source, config), + ) diff --git a/airbyte-integrations/connectors/source-google-analytics-data-api/source_google_analytics_data_api/defaults/default_reports.json b/airbyte-integrations/connectors/source-google-analytics-data-api/source_google_analytics_data_api/defaults/default_reports.json index 53ad0ee14727..ee9f5e39d8f0 100644 --- a/airbyte-integrations/connectors/source-google-analytics-data-api/source_google_analytics_data_api/defaults/default_reports.json +++ b/airbyte-integrations/connectors/source-google-analytics-data-api/source_google_analytics_data_api/defaults/default_reports.json @@ -74,5 +74,736 @@ "screenPageViewsPerSession", "bounceRate" ] + }, + { + "name": "user_acquisition_first_user_medium_report", + "dimensions": ["date", "firstUserMedium"], + "metrics": [ + "newUsers", + "engagedSessions", + "engagementRate", + "eventCount", + "conversions", + "totalRevenue", + "totalUsers", + "userEngagementDuration" + ] + }, + { + "name": "user_acquisition_first_user_source_report", + "dimensions": ["date", "firstUserSource"], + "metrics": [ + "newUsers", + "engagedSessions", + "engagementRate", + "eventCount", + "conversions", + "totalRevenue", + "totalUsers", + "userEngagementDuration" + ] + }, + { + "name": "user_acquisition_first_user_source_medium_report", + "dimensions": ["date", "firstUserSource", "firstUserMedium"], + "metrics": [ + "newUsers", + "engagedSessions", + "engagementRate", + "eventCount", + "conversions", + "totalRevenue", + "totalUsers", + "userEngagementDuration" + ] + }, + { + "name": "user_acquisition_first_user_source_platform_report", + "dimensions": ["date", "firstUserSourcePlatform"], + "metrics": [ + "newUsers", + "engagedSessions", + "engagementRate", + "eventCount", + "conversions", + "totalRevenue", + "totalUsers", + "userEngagementDuration" + ] + }, + { + "name": "user_acquisition_first_user_campaign_report", + "dimensions": ["date", "firstUserCampaignName"], + "metrics": [ + "newUsers", + "engagedSessions", + "engagementRate", + "eventCount", + "conversions", + "totalRevenue", + "totalUsers", + "userEngagementDuration" + ] + }, + { + "name": "user_acquisition_first_user_google_ads_ad_network_type_report", + "dimensions": ["date", "firstUserGoogleAdsAdNetworkType"], + "metrics": [ + "newUsers", + "engagedSessions", + "engagementRate", + "eventCount", + "conversions", + "totalRevenue", + "totalUsers", + "userEngagementDuration" + ] + }, + { + "name": "user_acquisition_first_user_google_ads_ad_group_name_report", + "dimensions": ["date", "firstUserGoogleAdsAdGroupName"], + "metrics": [ + "newUsers", + "engagedSessions", + "engagementRate", + "eventCount", + "conversions", + "totalRevenue", + "totalUsers", + "userEngagementDuration" + ] + }, + { + "name": "traffic_acquisition_session_source_medium_report", + "dimensions": ["date", "sessionSource", "sessionMedium"], + "metrics": [ + "totalUsers", + "sessions", + "engagedSessions", + "eventsPerSession", + "engagementRate", + "eventCount", + "conversions", + "totalRevenue", + "userEngagementDuration" + ] + }, + { + "name": "traffic_acquisition_session_medium_report", + "dimensions": ["date", "sessionMedium"], + "metrics": [ + "totalUsers", + "sessions", + "engagedSessions", + "eventsPerSession", + "engagementRate", + "eventCount", + "conversions", + "totalRevenue", + "userEngagementDuration" + ] + }, + { + "name": "traffic_acquisition_session_source_report", + "dimensions": ["date", "sessionSource"], + "metrics": [ + "totalUsers", + "sessions", + "engagedSessions", + "eventsPerSession", + "engagementRate", + "eventCount", + "conversions", + "totalRevenue", + "userEngagementDuration" + ] + }, + { + "name": "traffic_acquisition_session_campaign_report", + "dimensions": ["date", "sessionCampaignName"], + "metrics": [ + "totalUsers", + "sessions", + "engagedSessions", + "eventsPerSession", + "engagementRate", + "eventCount", + "conversions", + "totalRevenue", + "userEngagementDuration" + ] + }, + { + "name": "traffic_acquisition_session_default_channel_grouping_report", + "dimensions": ["date", "sessionDefaultChannelGrouping"], + "metrics": [ + "totalUsers", + "sessions", + "engagedSessions", + "eventsPerSession", + "engagementRate", + "eventCount", + "conversions", + "totalRevenue", + "userEngagementDuration" + ] + }, + { + "name": "traffic_acquisition_session_source_platform_report", + "dimensions": ["date", "sessionSourcePlatform"], + "metrics": [ + "totalUsers", + "sessions", + "engagedSessions", + "eventsPerSession", + "engagementRate", + "eventCount", + "conversions", + "totalRevenue", + "userEngagementDuration" + ] + }, + { + "name" : "events_report", + "dimensions" : [ + "date", + "eventName" + ], + "metrics" : [ + "eventCount", + "totalUsers", + "eventCountPerUser", + "totalRevenue" + ] + }, + { + "name" : "weekly_events_report", + "dimensions" : [ + "yearWeek", + "eventName" + ], + "metrics" : [ + "eventCount", + "totalUsers", + "eventCountPerUser", + "totalRevenue" + ] + }, + { + "name" : "conversions_report", + "dimensions" : [ + "date", + "eventName" + ], + "metrics" : [ + "conversions", + "totalUsers", + "totalRevenue" + ] + }, + { + "name" : "pages_title_and_screen_class_report", + "dimensions" : [ + "date", + "unifiedScreenClass" + ], + "metrics" : [ + "screenPageViews", + "totalUsers", + "newUsers", + "eventCount", + "conversions", + "totalRevenue", + "userEngagementDuration" + ] + }, + { + "name" : "pages_path_report", + "dimensions" : [ + "date", + "pagePath" + ], + "metrics" : [ + "screenPageViews", + "totalUsers", + "newUsers", + "eventCount", + "conversions", + "totalRevenue", + "userEngagementDuration" + ] + }, + { + "name" : "pages_title_and_screen_name_report", + "dimensions" : [ + "date", + "unifiedScreenName" + ], + "metrics" : [ + "screenPageViews", + "totalUsers", + "newUsers", + "eventCount", + "conversions", + "totalRevenue", + "userEngagementDuration" + ] + }, + { + "name" : "content_group_report", + "dimensions" : [ + "date", + "contentGroup" + ], + "metrics" : [ + "screenPageViews", + "totalUsers", + "newUsers", + "eventCount", + "conversions", + "totalRevenue", + "userEngagementDuration" + ] + }, + { + "name" : "ecommerce_purchases_item_name_report", + "dimensions" : [ + "date", + "itemName" + ], + "metrics" : [ + "cartToViewRate", + "purchaseToViewRate", + "itemsPurchased", + "itemRevenue", + "itemsAddedToCart", + "itemsViewed" + ] + }, + { + "name" : "ecommerce_purchases_item_id_report", + "dimensions" : [ + "date", + "itemId" + ], + "metrics" : [ + "cartToViewRate", + "purchaseToViewRate", + "itemsPurchased", + "itemRevenue", + "itemsAddedToCart", + "itemsViewed" + ] + }, + { + "name" : "ecommerce_purchases_item_category_report_combined", + "dimensions" : [ + "date", + "itemCategory", + "itemCategory2", + "itemCategory3", + "itemCategory4", + "itemCategory5" + ], + "metrics" : [ + "cartToViewRate", + "purchaseToViewRate", + "itemsPurchased", + "itemRevenue", + "itemsAddedToCart", + "itemsViewed" + ] + }, + { + "name" : "ecommerce_purchases_item_category_report", + "dimensions" : [ + "date", + "itemCategory" + ], + "metrics" : [ + "cartToViewRate", + "purchaseToViewRate", + "itemsPurchased", + "itemRevenue", + "itemsAddedToCart", + "itemsViewed" + ] + }, + { + "name" : "ecommerce_purchases_item_category_2_report", + "dimensions" : [ + "date", + "itemCategory2" + ], + "metrics" : [ + "cartToViewRate", + "purchaseToViewRate", + "itemsPurchased", + "itemRevenue", + "itemsAddedToCart", + "itemsViewed" + ] + }, + { + "name" : "ecommerce_purchases_item_category_3_report", + "dimensions" : [ + "date", + "itemCategory3" + ], + "metrics" : [ + "cartToViewRate", + "purchaseToViewRate", + "itemsPurchased", + "itemRevenue", + "itemsAddedToCart", + "itemsViewed" + ] + }, + { + "name" : "ecommerce_purchases_item_category_4_report", + "dimensions" : [ + "date", + "itemCategory4" + ], + "metrics" : [ + "cartToViewRate", + "purchaseToViewRate", + "itemsPurchased", + "itemRevenue", + "itemsAddedToCart", + "itemsViewed" + ] + }, + { + "name" : "ecommerce_purchases_item_category_5_report", + "dimensions" : [ + "date", + "itemCategory5" + ], + "metrics" : [ + "cartToViewRate", + "purchaseToViewRate", + "itemsPurchased", + "itemRevenue", + "itemsAddedToCart", + "itemsViewed" + ] + }, + { + "name" : "ecommerce_purchases_item_brand_report", + "dimensions" : [ + "date", + "itemBrand" + ], + "metrics" : [ + "cartToViewRate", + "purchaseToViewRate", + "itemsPurchased", + "itemRevenue", + "itemsAddedToCart", + "itemsViewed" + ] + }, + { + "name" : "publisher_ads_ad_unit_report", + "dimensions" : [ + "date", + "adUnitName" + ], + "metrics" : [ + "publisherAdImpressions", + "adUnitExposure", + "publisherAdClicks", + "totalAdRevenue" + ] + }, + { + "name" : "publisher_ads_page_path_report", + "dimensions" : [ + "date", + "pagePath" + ], + "metrics" : [ + "publisherAdImpressions", + "adUnitExposure", + "publisherAdClicks", + "totalAdRevenue" + ] + }, + { + "name" : "publisher_ads_ad_format_report", + "dimensions" : [ + "date", + "adFormat" + ], + "metrics" : [ + "publisherAdImpressions", + "adUnitExposure", + "publisherAdClicks", + "totalAdRevenue" + ] + }, + { + "name" : "publisher_ads_ad_source_report", + "dimensions" : [ + "date", + "adSourceName" + ], + "metrics" : [ + "publisherAdImpressions", + "adUnitExposure", + "publisherAdClicks", + "totalAdRevenue" + ] + }, + { + "name" : "demographic_country_report", + "dimensions" : [ + "date", + "country" + ], + "metrics" : [ + "totalUsers", + "newUsers", + "engagedSessions", + "engagementRate", + "conversions", + "totalRevenue" + ] + }, + { + "name" : "demographic_region_report", + "dimensions" : [ + "date", + "region" + ], + "metrics" : [ + "totalUsers", + "newUsers", + "engagedSessions", + "engagementRate", + "conversions", + "totalRevenue" + ] + }, + { + "name" : "demographic_city_report", + "dimensions" : [ + "date", + "city" + ], + "metrics" : [ + "totalUsers", + "newUsers", + "engagedSessions", + "engagementRate", + "conversions", + "totalRevenue" + ] + }, + { + "name" : "demographic_language_report", + "dimensions" : [ + "date", + "language" + ], + "metrics" : [ + "totalUsers", + "newUsers", + "engagedSessions", + "engagementRate", + "conversions", + "totalRevenue" + ] + }, + { + "name" : "demographic_age_report", + "dimensions" : [ + "date", + "userAgeBracket" + ], + "metrics" : [ + "totalUsers", + "newUsers", + "engagedSessions", + "engagementRate", + "conversions", + "totalRevenue" + ] + }, + { + "name" : "demographic_gender_report", + "dimensions" : [ + "date", + "userGender" + ], + "metrics" : [ + "totalUsers", + "newUsers", + "engagedSessions", + "engagementRate", + "conversions", + "totalRevenue" + ] + }, + { + "name" : "demographic_interest_report", + "dimensions" : [ + "date", + "brandingInterest" + ], + "metrics" : [ + "totalUsers", + "newUsers", + "engagedSessions", + "engagementRate", + "conversions", + "totalRevenue" + ] + }, + { + "name" : "tech_browser_report", + "dimensions" : [ + "date", + "browser" + ], + "metrics" : [ + "totalUsers", + "newUsers", + "engagedSessions", + "engagementRate", + "eventCount", + "conversions", + "totalRevenue" + ] + }, + { + "name" : "tech_device_category_report", + "dimensions" : [ + "date", + "deviceCategory" + ], + "metrics" : [ + "totalUsers", + "newUsers", + "engagedSessions", + "engagementRate", + "eventCount", + "conversions", + "totalRevenue" + ] + }, + { + "name" : "tech_device_model_report", + "dimensions" : [ + "date", + "deviceModel" + ], + "metrics" : [ + "totalUsers", + "newUsers", + "engagedSessions", + "engagementRate", + "eventCount", + "conversions", + "totalRevenue" + ] + }, + { + "name" : "tech_screen_resolution_report", + "dimensions" : [ + "date", + "screenResolution" + ], + "metrics" : [ + "totalUsers", + "newUsers", + "engagedSessions", + "engagementRate", + "eventCount", + "conversions", + "totalRevenue" + ] + }, + { + "name" : "tech_app_version_report", + "dimensions" : [ + "date", + "appVersion" + ], + "metrics" : [ + "totalUsers", + "newUsers", + "engagedSessions", + "engagementRate", + "eventCount", + "conversions", + "totalRevenue" + ] + }, + { + "name" : "tech_platform_report", + "dimensions" : [ + "date", + "platform" + ], + "metrics" : [ + "totalUsers", + "newUsers", + "engagedSessions", + "engagementRate", + "eventCount", + "conversions", + "totalRevenue" + ] + }, + { + "name" : "tech_platform_device_category_report", + "dimensions" : [ + "date", + "platform", + "deviceCategory" + ], + "metrics" : [ + "totalUsers", + "newUsers", + "engagedSessions", + "engagementRate", + "eventCount", + "conversions", + "totalRevenue" + ] + }, + { + "name" : "tech_operating_system_report", + "dimensions" : [ + "date", + "operatingSystem" + ], + "metrics" : [ + "totalUsers", + "newUsers", + "engagedSessions", + "engagementRate", + "eventCount", + "conversions", + "totalRevenue" + ] + }, + { + "name" : "tech_os_with_version_report", + "dimensions" : [ + "date", + "operatingSystemWithVersion" + ], + "metrics" : [ + "totalUsers", + "newUsers", + "engagedSessions", + "engagementRate", + "eventCount", + "conversions", + "totalRevenue" + ] } ] diff --git a/airbyte-integrations/connectors/source-google-analytics-data-api/source_google_analytics_data_api/source.py b/airbyte-integrations/connectors/source-google-analytics-data-api/source_google_analytics_data_api/source.py index 5d7091cf431c..4a2db60d3f2b 100644 --- a/airbyte-integrations/connectors/source-google-analytics-data-api/source_google_analytics_data_api/source.py +++ b/airbyte-integrations/connectors/source-google-analytics-data-api/source_google_analytics_data_api/source.py @@ -13,6 +13,7 @@ import dpath import jsonschema +import pendulum import requests from airbyte_cdk.models import FailureType, SyncMode from airbyte_cdk.sources import AbstractSource @@ -32,6 +33,7 @@ get_metrics_type, get_source_defined_primary_key, metrics_type_to_python, + serialize_to_date_string, ) # set the quota handler globaly since limitations are the same for all streams @@ -52,7 +54,19 @@ def __init__(self): def __get__(self, instance, owner): if not self._metadata: stream = GoogleAnalyticsDataApiMetadataStream(config=instance.config, authenticator=instance.config["authenticator"]) - metadata = next(stream.read_records(sync_mode=SyncMode.full_refresh), None) + + try: + metadata = next(stream.read_records(sync_mode=SyncMode.full_refresh), None) + except HTTPError as e: + if e.response.status_code == HTTPStatus.UNAUTHORIZED: + internal_message = "Unauthorized error reached." + message = "Can not get metadata with unauthorized credentials. Try to re-authenticate in source settings." + + unauthorized_error = AirbyteTracedException( + message=message, internal_message=internal_message, failure_type=FailureType.config_error + ) + raise unauthorized_error + if not metadata: raise Exception("failed to get metadata, over quota, try later") self._metadata = { @@ -118,7 +132,11 @@ class GoogleAnalyticsDataApiBaseStream(GoogleAnalyticsDataApiAbstractStream): @property def cursor_field(self) -> Optional[str]: - return "date" if "date" in self.config.get("dimensions", []) else [] + date_fields = ["date", "yearWeek", "yearMonth", "year"] + for field in date_fields: + if field in self.config.get("dimensions", []): + return field + return [] @property def primary_key(self): @@ -156,7 +174,10 @@ def get_json_schema(self) -> Mapping[str, Any]: schema["properties"].update( { - d: {"type": get_dimensions_type(d), "description": self.metadata["dimensions"].get(d, {}).get("description", d)} + d.replace(":", "_"): { + "type": get_dimensions_type(d), + "description": self.metadata["dimensions"].get(d, {}).get("description", d), + } for d in self.config["dimensions"] } ) @@ -171,7 +192,7 @@ def get_json_schema(self) -> Mapping[str, Any]: schema["properties"].update( { - m: { + m.replace(":", "_"): { "type": ["null", get_metrics_type(self.metadata["metrics"].get(m, {}).get("type"))], "description": self.metadata["metrics"].get(m, {}).get("description", m), } @@ -213,9 +234,9 @@ def parse_response( ) -> Iterable[Mapping]: r = response.json() - dimensions = [h.get("name") for h in r.get("dimensionHeaders", [{}])] - metrics = [h.get("name") for h in r.get("metricHeaders", [{}])] - metrics_type_map = {h.get("name"): h.get("type") for h in r.get("metricHeaders", [{}])} + dimensions = [h.get("name").replace(":", "_") if "name" in h else None for h in r.get("dimensionHeaders", [{}])] + metrics = [h.get("name").replace(":", "_") if "name" in h else None for h in r.get("metricHeaders", [{}])] + metrics_type_map = {h.get("name").replace(":", "_"): h.get("type") for h in r.get("metricHeaders", [{}]) if "name" in h} for row in r.get("rows", []): record = { @@ -238,12 +259,22 @@ def parse_response( yield record def get_updated_state(self, current_stream_state: MutableMapping[str, Any], latest_record: Mapping[str, Any]): - updated_state = utils.string_to_date(latest_record[self.cursor_field], self._record_date_format) + updated_state = ( + utils.string_to_date(latest_record[self.cursor_field], self._record_date_format) + if self.cursor_field == "date" + else latest_record[self.cursor_field] + ) stream_state_value = current_stream_state.get(self.cursor_field) if stream_state_value: - stream_state_value = utils.string_to_date(stream_state_value, self._record_date_format, old_format=DATE_FORMAT) + stream_state_value = ( + utils.string_to_date(stream_state_value, self._record_date_format, old_format=DATE_FORMAT) + if self.cursor_field == "date" + else stream_state_value + ) updated_state = max(updated_state, stream_state_value) - current_stream_state[self.cursor_field] = updated_state.strftime(self._record_date_format) + current_stream_state[self.cursor_field] = ( + updated_state.strftime(self._record_date_format) if self.cursor_field == "date" else updated_state + ) return current_stream_state def request_body_json( @@ -252,7 +283,6 @@ def request_body_json( stream_slice: Mapping[str, Any] = None, next_page_token: Mapping[str, Any] = None, ) -> Optional[Mapping]: - payload = { "metrics": [{"name": m} for m in self.config["metrics"]], "dimensions": [{"name": d} for d in self.config["dimensions"]], @@ -261,6 +291,7 @@ def request_body_json( "offset": str(0), "limit": str(self.page_size), } + if next_page_token and next_page_token.get("offset") is not None: payload.update({"offset": str(next_page_token["offset"])}) return payload @@ -268,11 +299,13 @@ def request_body_json( def stream_slices( self, *, sync_mode: SyncMode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None ) -> Iterable[Optional[Mapping[str, Any]]]: - today: datetime.date = datetime.date.today() start_date = stream_state and stream_state.get(self.cursor_field) if start_date: + start_date = ( + serialize_to_date_string(start_date, DATE_FORMAT, self.cursor_field) if not self.cursor_field == "date" else start_date + ) start_date = utils.string_to_date(start_date, self._record_date_format, old_format=DATE_FORMAT) start_date -= LOOKBACK_WINDOW start_date = max(start_date, self.config["date_ranges_start_date"]) @@ -358,6 +391,21 @@ def parse_response(self, response: requests.Response, **kwargs) -> Iterable[Mapp class SourceGoogleAnalyticsDataApi(AbstractSource): + @property + def default_date_ranges_start_date(self) -> str: + # set default date ranges start date to 2 years ago + return pendulum.now(tz="UTC").subtract(years=2).format("YYYY-MM-DD") + + def _validate_and_transform_start_date(self, start_date: str) -> datetime.date: + start_date = self.default_date_ranges_start_date if not start_date else start_date + + try: + start_date = utils.string_to_date(start_date) + except ValueError as e: + raise ConfigurationError(str(e)) + + return start_date + def _validate_and_transform(self, config: Mapping[str, Any], report_names: Set[str]): if "custom_reports" in config: if isinstance(config["custom_reports"], str): @@ -396,10 +444,7 @@ def _validate_and_transform(self, config: Mapping[str, Any], report_names: Set[s except ValueError: raise ConfigurationError("credentials.credentials_json is not valid JSON") - try: - config["date_ranges_start_date"] = utils.string_to_date(config["date_ranges_start_date"]) - except ValueError as e: - raise ConfigurationError(str(e)) + config["date_ranges_start_date"] = self._validate_and_transform_start_date(config.get("date_ranges_start_date")) if not config.get("window_in_days"): source_spec = self.spec(logging.getLogger("airbyte")) @@ -413,67 +458,79 @@ def get_authenticator(self, config: Mapping[str, Any]): return authenticator_class(**get_credentials(credentials)) def check_connection(self, logger: logging.Logger, config: Mapping[str, Any]) -> Tuple[bool, Optional[Any]]: - reports = json.loads(pkgutil.get_data("source_google_analytics_data_api", "defaults/default_reports.json")) - try: - config = self._validate_and_transform(config, report_names={r["name"] for r in reports}) - except ConfigurationError as e: - return False, str(e) - config["authenticator"] = self.get_authenticator(config) + for property_id in config["property_ids"]: + reports = json.loads(pkgutil.get_data("source_google_analytics_data_api", "defaults/default_reports.json")) + try: + config = self._validate_and_transform(config, report_names={r["name"] for r in reports}) + except ConfigurationError as e: + return False, str(e) + config["authenticator"] = self.get_authenticator(config) - metadata = None - try: - # explicitly setting small page size for the check operation not to cause OOM issues - stream = GoogleAnalyticsDataApiMetadataStream(config=config, authenticator=config["authenticator"]) - metadata = next(stream.read_records(sync_mode=SyncMode.full_refresh), None) - except HTTPError as e: - error_list = [HTTPStatus.BAD_REQUEST, HTTPStatus.FORBIDDEN] - if e.response.status_code in error_list: - internal_message = f"Incorrect Property ID: {config['property_id']}" - property_id_docs_url = ( - "https://developers.google.com/analytics/devguides/reporting/data/v1/property-id#what_is_my_property_id" - ) - message = f"Access was denied to the property ID entered. Check your access to the Property ID or use Google Analytics {property_id_docs_url} to find your Property ID." - - wrong_property_id_error = AirbyteTracedException( - message=message, internal_message=internal_message, failure_type=FailureType.config_error - ) - raise wrong_property_id_error - - if not metadata: - return False, "failed to get metadata, over quota, try later" - - dimensions = {d["apiName"] for d in metadata["dimensions"]} - metrics = {d["apiName"] for d in metadata["metrics"]} - - for report in config["custom_reports"]: - invalid_dimensions = set(report["dimensions"]) - dimensions - if invalid_dimensions: - invalid_dimensions = ", ".join(invalid_dimensions) - return False, WRONG_DIMENSIONS.format(fields=invalid_dimensions, report_name=report["name"]) - invalid_metrics = set(report["metrics"]) - metrics - if invalid_metrics: - invalid_metrics = ", ".join(invalid_metrics) - return False, WRONG_METRICS.format(fields=invalid_metrics, report_name=report["name"]) - report_stream = self.instantiate_report_class(report, config, page_size=100) - # check if custom_report dimensions + metrics can be combined and report generated - stream_slice = next(report_stream.stream_slices(sync_mode=SyncMode.full_refresh)) - next(report_stream.read_records(sync_mode=SyncMode.full_refresh, stream_slice=stream_slice), None) - return True, None + _config = config.copy() + _config["property_id"] = property_id + + metadata = None + try: + # explicitly setting small page size for the check operation not to cause OOM issues + stream = GoogleAnalyticsDataApiMetadataStream(config=_config, authenticator=_config["authenticator"]) + metadata = next(stream.read_records(sync_mode=SyncMode.full_refresh), None) + except HTTPError as e: + error_list = [HTTPStatus.BAD_REQUEST, HTTPStatus.FORBIDDEN] + if e.response.status_code in error_list: + internal_message = f"Incorrect Property ID: {property_id}" + property_id_docs_url = ( + "https://developers.google.com/analytics/devguides/reporting/data/v1/property-id#what_is_my_property_id" + ) + message = f"Access was denied to the property ID entered. Check your access to the Property ID or use Google Analytics {property_id_docs_url} to find your Property ID." + + wrong_property_id_error = AirbyteTracedException( + message=message, internal_message=internal_message, failure_type=FailureType.config_error + ) + raise wrong_property_id_error + + if not metadata: + return False, "Failed to get metadata, over quota, try later" + + dimensions = {d["apiName"] for d in metadata["dimensions"]} + metrics = {d["apiName"] for d in metadata["metrics"]} + + for report in _config["custom_reports"]: + # Check if custom report dimensions supported. Compare them with dimensions provided by GA API + invalid_dimensions = set(report["dimensions"]) - dimensions + if invalid_dimensions: + invalid_dimensions = ", ".join(invalid_dimensions) + return False, WRONG_DIMENSIONS.format(fields=invalid_dimensions, report_name=report["name"]) + + # Check if custom report metrics supported. Compare them with metrics provided by GA API + invalid_metrics = set(report["metrics"]) - metrics + if invalid_metrics: + invalid_metrics = ", ".join(invalid_metrics) + return False, WRONG_METRICS.format(fields=invalid_metrics, report_name=report["name"]) + + report_stream = self.instantiate_report_class(report, _config, page_size=100) + # check if custom_report dimensions + metrics can be combined and report generated + stream_slice = next(report_stream.stream_slices(sync_mode=SyncMode.full_refresh)) + next(report_stream.read_records(sync_mode=SyncMode.full_refresh, stream_slice=stream_slice), None) + + return True, None def streams(self, config: Mapping[str, Any]) -> List[Stream]: reports = json.loads(pkgutil.get_data("source_google_analytics_data_api", "defaults/default_reports.json")) config = self._validate_and_transform(config, report_names={r["name"] for r in reports}) config["authenticator"] = self.get_authenticator(config) - return [self.instantiate_report_class(report, config) for report in reports + config["custom_reports"]] + return [stream for report in reports + config["custom_reports"] for stream in self.instantiate_report_streams(report, config)] - @staticmethod - def instantiate_report_class(report: dict, config: Mapping[str, Any], **extra_kwargs) -> GoogleAnalyticsDataApiBaseStream: + def instantiate_report_streams(self, report: dict, config: Mapping[str, Any], **extra_kwargs) -> GoogleAnalyticsDataApiBaseStream: + for property_id in config["property_ids"]: + yield self.instantiate_report_class(report=report, config={**config, "property_id": property_id}) + + def instantiate_report_class(self, report: dict, config: Mapping[str, Any], **extra_kwargs) -> GoogleAnalyticsDataApiBaseStream: cohort_spec = report.get("cohortSpec") pivots = report.get("pivots") stream_config = { + **config, "metrics": report["metrics"], "dimensions": report["dimensions"], - **config, } report_class_tuple = (GoogleAnalyticsDataApiBaseStream,) if pivots: diff --git a/airbyte-integrations/connectors/source-google-analytics-data-api/source_google_analytics_data_api/spec.json b/airbyte-integrations/connectors/source-google-analytics-data-api/source_google_analytics_data_api/spec.json index 051338214db1..6d5703a4d63c 100644 --- a/airbyte-integrations/connectors/source-google-analytics-data-api/source_google_analytics_data_api/spec.json +++ b/airbyte-integrations/connectors/source-google-analytics-data-api/source_google_analytics_data_api/spec.json @@ -4,7 +4,7 @@ "$schema": "https://json-schema.org/draft-07/schema#", "title": "Google Analytics (Data API) Spec", "type": "object", - "required": ["property_id", "date_ranges_start_date"], + "required": ["property_ids"], "additionalProperties": true, "properties": { "credentials": { @@ -76,14 +76,16 @@ } ] }, - "property_id": { - "type": "string", - "title": "Property ID", + "property_ids": { + "title": "A list of your Property IDs", "description": "The Property ID is a unique number assigned to each property in Google Analytics, found in your GA4 property URL. This ID allows the connector to track the specific events associated with your property. Refer to the Google Analytics documentation to locate your property ID.", - "pattern": "^[0-9]*$", - "pattern_descriptor": "123...", - "examples": ["1738294", "5729978930"], - "order": 1 + "order": 1, + "type": "array", + "items": { + "type": "string", + "pattern": "^[0-9]*$" + }, + "examples": [["1738294", "5729978930"]] }, "date_ranges_start_date": { "type": "string", diff --git a/airbyte-integrations/connectors/source-google-analytics-data-api/source_google_analytics_data_api/utils.py b/airbyte-integrations/connectors/source-google-analytics-data-api/source_google_analytics_data_api/utils.py index c4336453ca06..de0fc9aec85e 100644 --- a/airbyte-integrations/connectors/source-google-analytics-data-api/source_google_analytics_data_api/utils.py +++ b/airbyte-integrations/connectors/source-google-analytics-data-api/source_google_analytics_data_api/utils.py @@ -11,6 +11,7 @@ from typing import Dict import jsonschema +import pandas as pd from airbyte_cdk.sources.streams.http import auth from source_google_analytics_data_api.authenticator import GoogleServiceKeyAuthenticator @@ -135,3 +136,29 @@ def get_source_defined_primary_key(stream): catalog = json.loads(open(args.catalog).read()) res = {s["stream"]["name"]: s["stream"].get("source_defined_primary_key") for s in catalog["streams"]} return res.get(stream) + + +def serialize_to_date_string(date: str, date_format: str, date_type: str) -> str: + """ + Serialize a date string to a different date format based on the date_type. + + Parameters: + - date (str): The input date string. + - date_format (str): The desired output format for the date string. + - date_type (str): The type of the date string ('yearWeek', 'yearMonth', or 'year'). + + Returns: + str: The date string formatted according to date_format. + + Examples: + '202245' -> '2022-11-07' + '202210' -> '2022-10-01' + '2022' -> '2022-01-01' + """ + if date_type == "yearWeek": + return pd.to_datetime(f"{date}1", format="%Y%W%w").strftime(date_format) + elif date_type == "yearMonth": + year = int(date[:-2]) + month = int(date[-2:]) + return datetime.datetime(year, month, 1).strftime(date_format) + return datetime.datetime(int(date), 1, 1).strftime(date_format) diff --git a/airbyte-integrations/connectors/source-google-analytics-data-api/unit_tests/conftest.py b/airbyte-integrations/connectors/source-google-analytics-data-api/unit_tests/conftest.py new file mode 100644 index 000000000000..ac7e7ef2f28c --- /dev/null +++ b/airbyte-integrations/connectors/source-google-analytics-data-api/unit_tests/conftest.py @@ -0,0 +1,83 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + + +import datetime +import json +from copy import deepcopy + +import pytest + +# json credentials with fake private key +json_credentials = """ +{ + "type": "service_account", + "project_id": "unittest-project-id", + "private_key_id": "9qf98e52oda52g5ne23al6evnf13649c2u077162c", + "private_key": "-----BEGIN PRIVATE KEY-----\\nMIIBVQIBADANBgkqhkiG9w0BAQEFAASCAT8wggE7AgEAAkEA3slcXL+dA36ESmOi\\n1xBhZmp5Hn0WkaHDtW4naba3plva0ibloBNWhFhjQOh7Ff01PVjhT4D5jgqXBIgc\\nz9Gv3QIDAQABAkEArlhYPoD5SB2/O1PjwHgiMPrL1C9B9S/pr1cH4vPJnpY3VKE3\\n5hvdil14YwRrcbmIxMkK2iRLi9lM4mJmdWPy4QIhAPsRFXZSGx0TZsDxD9V0ZJmZ\\n0AuDCj/NF1xB5KPLmp7pAiEA4yoFox6w7ql/a1pUVaLt0NJkDfE+22pxYGNQaiXU\\nuNUCIQCsFLaIJZiN4jlgbxlyLVeya9lLuqIwvqqPQl6q4ad12QIgS9gG48xmdHig\\n8z3IdIMedZ8ZCtKmEun6Cp1+BsK0wDUCIF0nHfSuU+eTQ2qAON2SHIrJf8UeFO7N\\nzdTN1IwwQqjI\\n-----END PRIVATE KEY-----\\n", + "client_email": "google-analytics-access@unittest-project-id.iam.gserviceaccount.com", + "client_id": "213243192021686092537", + "auth_uri": "https://accounts.google.com/o/oauth2/auth", + "token_uri": "https://oauth2.googleapis.com/token", + "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs", + "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/google-analytics-access%40unittest-project-id.iam.gserviceaccount.com" +} +""" + + +@pytest.fixture +def one_year_ago(): + return datetime.datetime.strftime((datetime.datetime.now() - datetime.timedelta(days=1)), "%Y-%m-%d") + + +@pytest.fixture +def config(one_year_ago): + return { + "property_id": "108176369", + "property_ids": ["108176369"], + "credentials": {"auth_type": "Service", "credentials_json": json_credentials}, + "date_ranges_start_date": one_year_ago, + "dimensions": ["date", "deviceCategory", "operatingSystem", "browser"], + "metrics": [ + "totalUsers", + "newUsers", + "sessions", + "sessionsPerUser", + "averageSessionDuration", + "screenPageViews", + "screenPageViewsPerSession", + "bounceRate", + ], + "custom_reports": json.dumps([{ + "name": "report1", + "dimensions": ["date", "browser"], + "metrics": ["totalUsers", "sessions", "screenPageViews"], + }]), + } + + +@pytest.fixture +def config_without_date_range(): + return { + "property_id": "108176369", + "property_ids": ["108176369"], + "credentials": {"auth_type": "Service", "credentials_json": json_credentials}, + "custom_reports": [], + } + + +@pytest.fixture +def patch_base_class(one_year_ago, config_without_date_range): + return {"config": config_without_date_range} + + +@pytest.fixture +def config_gen(config): + def inner(**kwargs): + new_config = deepcopy(config) + # WARNING, no support deep dictionaries + new_config.update(kwargs) + return {k: v for k, v in new_config.items() if v is not ...} + + return inner diff --git a/airbyte-integrations/connectors/source-google-analytics-data-api/unit_tests/test_migration.py b/airbyte-integrations/connectors/source-google-analytics-data-api/unit_tests/test_migration.py new file mode 100644 index 000000000000..1130bf99b266 --- /dev/null +++ b/airbyte-integrations/connectors/source-google-analytics-data-api/unit_tests/test_migration.py @@ -0,0 +1,39 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + +from unittest.mock import patch + +from airbyte_cdk.entrypoint import AirbyteEntrypoint +from source_google_analytics_data_api import SourceGoogleAnalyticsDataApi +from source_google_analytics_data_api.config_migrations import MigrateCustomReports + + +@patch.object(SourceGoogleAnalyticsDataApi, "read_config") +@patch.object(SourceGoogleAnalyticsDataApi, "write_config") +@patch.object(AirbyteEntrypoint, "extract_config") +def test_migration(ab_entrypoint_extract_config_mock, source_write_config_mock, source_read_config_mock): + source = SourceGoogleAnalyticsDataApi() + + source_read_config_mock.return_value = { + "credentials": { + "auth_type": "Service", + "credentials_json": "" + }, + "custom_reports": "", + "date_ranges_start_date": "2023-09-01", + "window_in_days": 30, + "property_id": "111111111" + } + ab_entrypoint_extract_config_mock.return_value = "/path/to/config.json" + + def check_migrated_value(new_config, path): + assert path == "/path/to/config.json" + assert "property_id" not in new_config + assert "property_ids" in new_config + assert "111111111" in new_config["property_ids"] + assert len(new_config["property_ids"]) == 1 + + source_write_config_mock.side_effect = check_migrated_value + + MigrateCustomReports.migrate(["--config", "/path/to/config.json"], source) diff --git a/airbyte-integrations/connectors/source-google-analytics-data-api/unit_tests/test_source.py b/airbyte-integrations/connectors/source-google-analytics-data-api/unit_tests/test_source.py index e2ca394d1147..c1a5410c4e42 100644 --- a/airbyte-integrations/connectors/source-google-analytics-data-api/unit_tests/test_source.py +++ b/airbyte-integrations/connectors/source-google-analytics-data-api/unit_tests/test_source.py @@ -2,9 +2,6 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # -import datetime -import json -from copy import deepcopy from unittest.mock import MagicMock import pytest @@ -13,57 +10,6 @@ from source_google_analytics_data_api import SourceGoogleAnalyticsDataApi from source_google_analytics_data_api.utils import NO_DIMENSIONS, NO_METRICS, NO_NAME, WRONG_JSON_SYNTAX -json_credentials = """ -{ - "type": "service_account", - "project_id": "unittest-project-id", - "private_key_id": "9qf98e52oda52g5ne23al6evnf13649c2u077162c", - "private_key": "-----BEGIN PRIVATE KEY-----\\nMIIBVQIBADANBgkqhkiG9w0BAQEFAASCAT8wggE7AgEAAkEA3slcXL+dA36ESmOi\\n1xBhZmp5Hn0WkaHDtW4naba3plva0ibloBNWhFhjQOh7Ff01PVjhT4D5jgqXBIgc\\nz9Gv3QIDAQABAkEArlhYPoD5SB2/O1PjwHgiMPrL1C9B9S/pr1cH4vPJnpY3VKE3\\n5hvdil14YwRrcbmIxMkK2iRLi9lM4mJmdWPy4QIhAPsRFXZSGx0TZsDxD9V0ZJmZ\\n0AuDCj/NF1xB5KPLmp7pAiEA4yoFox6w7ql/a1pUVaLt0NJkDfE+22pxYGNQaiXU\\nuNUCIQCsFLaIJZiN4jlgbxlyLVeya9lLuqIwvqqPQl6q4ad12QIgS9gG48xmdHig\\n8z3IdIMedZ8ZCtKmEun6Cp1+BsK0wDUCIF0nHfSuU+eTQ2qAON2SHIrJf8UeFO7N\\nzdTN1IwwQqjI\\n-----END PRIVATE KEY-----\\n", - "client_email": "google-analytics-access@unittest-project-id.iam.gserviceaccount.com", - "client_id": "213243192021686092537", - "auth_uri": "https://accounts.google.com/o/oauth2/auth", - "token_uri": "https://oauth2.googleapis.com/token", - "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs", - "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/google-analytics-access%40unittest-project-id.iam.gserviceaccount.com" -} -""" - - -@pytest.fixture -def patch_base_class(): - return { - "config": { - "property_id": "108176369", - "credentials": {"auth_type": "Service", "credentials_json": json_credentials}, - "date_ranges_start_date": datetime.datetime.strftime((datetime.datetime.now() - datetime.timedelta(days=1)), "%Y-%m-%d"), - } - } - - -@pytest.fixture -def config(): - return { - "property_id": "108176369", - "credentials": {"auth_type": "Service", "credentials_json": json_credentials}, - "date_ranges_start_date": datetime.datetime.strftime((datetime.datetime.now() - datetime.timedelta(days=1)), "%Y-%m-%d"), - "custom_reports": json.dumps([{ - "name": "report1", - "dimensions": ["date", "country"], - "metrics": ["totalUsers", "screenPageViews"] - }]), - } - - -@pytest.fixture -def config_gen(config): - def inner(**kwargs): - new_config = deepcopy(config) - # WARNING, no support deep dictionaries - new_config.update(kwargs) - return {k: v for k, v in new_config.items() if v is not ...} - - return inner - @pytest.mark.parametrize( "config_values, is_successful, message", @@ -117,7 +63,7 @@ def test_check(requests_mock, config_gen, config_values, is_successful, message) assert source.check(logger, config_gen(**config_values)) == AirbyteConnectionStatus(status=is_successful, message=message) if not is_successful: with pytest.raises(AirbyteTracedException) as e: - source.check(logger, config_gen(property_id="UA-11111111")) + source.check(logger, config_gen(property_ids=["UA-11111111"])) assert e.value.failure_type == FailureType.config_error @@ -128,5 +74,5 @@ def test_streams(mocker, patch_base_class): config_mock.__getitem__.side_effect = patch_base_class["config"].__getitem__ streams = source.streams(patch_base_class["config"]) - expected_streams_number = 8 - assert len(streams) == expected_streams_number + expected_streams_number = 57 + assert len(set(streams)) == expected_streams_number diff --git a/airbyte-integrations/connectors/source-google-analytics-data-api/unit_tests/test_streams.py b/airbyte-integrations/connectors/source-google-analytics-data-api/unit_tests/test_streams.py index 4654981e70bb..5d976968bd2d 100644 --- a/airbyte-integrations/connectors/source-google-analytics-data-api/unit_tests/test_streams.py +++ b/airbyte-integrations/connectors/source-google-analytics-data-api/unit_tests/test_streams.py @@ -14,47 +14,15 @@ from .utils import read_incremental -json_credentials = """ -{ - "type": "service_account", - "project_id": "unittest-project-id", - "private_key_id": "9qf98e52oda52g5ne23al6evnf13649c2u077162c", - "private_key": "", - "client_email": "google-analytics-access@unittest-project-id.iam.gserviceaccount.com", - "client_id": "213243192021686092537", - "auth_uri": "https://accounts.google.com/o/oauth2/auth", - "token_uri": "https://oauth2.googleapis.com/token", - "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs", - "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/google-analytics-access%40unittest-project-id.iam.gserviceaccount.com" -} -""" - @pytest.fixture -def patch_base_class(mocker): +def patch_base_class(mocker, config): # Mock abstract methods to enable instantiating abstract class mocker.patch.object(GoogleAnalyticsDataApiBaseStream, "path", f"{random.randint(100000000, 999999999)}:runReport") mocker.patch.object(GoogleAnalyticsDataApiBaseStream, "primary_key", "test_primary_key") mocker.patch.object(GoogleAnalyticsDataApiBaseStream, "__abstractmethods__", set()) - return { - "config": { - "property_id": "496180525", - "credentials": {"auth_type": "Service", "credentials_json": json_credentials}, - "dimensions": ["date", "deviceCategory", "operatingSystem", "browser"], - "metrics": [ - "totalUsers", - "newUsers", - "sessions", - "sessionsPerUser", - "averageSessionDuration", - "screenPageViews", - "screenPageViewsPerSession", - "bounceRate", - ], - "date_ranges_start_date": datetime.datetime.strftime((datetime.datetime.now() - datetime.timedelta(days=1)), "%Y-%m-%d"), - } - } + return {"config": config} def test_request_params(patch_base_class): @@ -159,7 +127,7 @@ def test_parse_response(patch_base_class): {"name": "totalUsers", "type": "TYPE_INTEGER"}, {"name": "newUsers", "type": "TYPE_INTEGER"}, {"name": "sessions", "type": "TYPE_INTEGER"}, - {"name": "sessionsPerUser", "type": "TYPE_FLOAT"}, + {"name": "sessionsPerUser:", "type": "TYPE_FLOAT"}, {"name": "averageSessionDuration", "type": "TYPE_SECONDS"}, {"name": "screenPageViews", "type": "TYPE_INTEGER"}, {"name": "screenPageViewsPerSession", "type": "TYPE_FLOAT"}, @@ -200,7 +168,7 @@ def test_parse_response(patch_base_class): expected_data = [ { - "property_id": "496180525", + "property_id": "108176369", "date": "20220731", "deviceCategory": "desktop", "operatingSystem": "Macintosh", @@ -208,14 +176,14 @@ def test_parse_response(patch_base_class): "totalUsers": 344, "newUsers": 169, "sessions": 420, - "sessionsPerUser": 1.2209302325581395, + "sessionsPerUser_": 1.2209302325581395, "averageSessionDuration": 194.76313766428572, "screenPageViews": 614, "screenPageViewsPerSession": 1.4619047619047618, "bounceRate": 0.47857142857142859, }, { - "property_id": "496180525", + "property_id": "108176369", "date": "20220731", "deviceCategory": "desktop", "operatingSystem": "Windows", @@ -223,7 +191,7 @@ def test_parse_response(patch_base_class): "totalUsers": 322, "newUsers": 211, "sessions": 387, - "sessionsPerUser": 1.2018633540372672, + "sessionsPerUser_": 1.2018633540372672, "averageSessionDuration": 249.21595714211884, "screenPageViews": 669, "screenPageViewsPerSession": 1.7286821705426356, @@ -307,10 +275,11 @@ def test_stream_slices(): def test_read_incremental(requests_mock): config = { + "property_ids": [123], "property_id": 123, - "date_ranges_start_date": datetime.date(2022, 12, 29), + "date_ranges_start_date": datetime.date(2022, 1, 6), "window_in_days": 1, - "dimensions": ["date"], + "dimensions": ["yearWeek"], "metrics": ["totalUsers"], } @@ -319,52 +288,52 @@ def test_read_incremental(requests_mock): responses = [ { - "dimensionHeaders": [{"name": "date"}], + "dimensionHeaders": [{"name": "yearWeek"}], "metricHeaders": [{"name": "totalUsers", "type": "TYPE_INTEGER"}], - "rows": [{"dimensionValues": [{"value": "20221229"}], "metricValues": [{"value": "100"}]}], + "rows": [{"dimensionValues": [{"value": "202201"}], "metricValues": [{"value": "100"}]}], "rowCount": 1, }, { - "dimensionHeaders": [{"name": "date"}], + "dimensionHeaders": [{"name": "yearWeek"}], "metricHeaders": [{"name": "totalUsers", "type": "TYPE_INTEGER"}], - "rows": [{"dimensionValues": [{"value": "20221230"}], "metricValues": [{"value": "110"}]}], + "rows": [{"dimensionValues": [{"value": "202201"}], "metricValues": [{"value": "110"}]}], "rowCount": 1, }, { - "dimensionHeaders": [{"name": "date"}], + "dimensionHeaders": [{"name": "yearWeek"}], "metricHeaders": [{"name": "totalUsers", "type": "TYPE_INTEGER"}], - "rows": [{"dimensionValues": [{"value": "20221231"}], "metricValues": [{"value": "120"}]}], + "rows": [{"dimensionValues": [{"value": "202201"}], "metricValues": [{"value": "120"}]}], "rowCount": 1, }, { - "dimensionHeaders": [{"name": "date"}], + "dimensionHeaders": [{"name": "yearWeek"}], "metricHeaders": [{"name": "totalUsers", "type": "TYPE_INTEGER"}], - "rows": [{"dimensionValues": [{"value": "20230101"}], "metricValues": [{"value": "130"}]}], + "rows": [{"dimensionValues": [{"value": "202202"}], "metricValues": [{"value": "130"}]}], "rowCount": 1, }, # 2-nd incremental read { - "dimensionHeaders": [{"name": "date"}], + "dimensionHeaders": [{"name": "yearWeek"}], "metricHeaders": [{"name": "totalUsers", "type": "TYPE_INTEGER"}], - "rows": [{"dimensionValues": [{"value": "20221230"}], "metricValues": [{"value": "112"}]}], + "rows": [{"dimensionValues": [{"value": "202202"}], "metricValues": [{"value": "112"}]}], "rowCount": 1 }, { - "dimensionHeaders": [{"name": "date"}], + "dimensionHeaders": [{"name": "yearWeek"}], "metricHeaders": [{"name": "totalUsers", "type": "TYPE_INTEGER"}], - "rows": [{"dimensionValues": [{"value": "20221231"}], "metricValues": [{"value": "125"}]}], + "rows": [{"dimensionValues": [{"value": "202202"}], "metricValues": [{"value": "125"}]}], "rowCount": 1 }, { - "dimensionHeaders": [{"name": "date"}], + "dimensionHeaders": [{"name": "yearWeek"}], "metricHeaders": [{"name": "totalUsers", "type": "TYPE_INTEGER"}], - "rows": [{"dimensionValues": [{"value": "20230101"}], "metricValues": [{"value": "140"}]}], + "rows": [{"dimensionValues": [{"value": "202202"}], "metricValues": [{"value": "140"}]}], "rowCount": 1, }, { - "dimensionHeaders": [{"name": "date"}], + "dimensionHeaders": [{"name": "yearWeek"}], "metricHeaders": [{"name": "totalUsers", "type": "TYPE_INTEGER"}], - "rows": [{"dimensionValues": [{"value": "20230102"}], "metricValues": [{"value": "150"}]}], + "rows": [{"dimensionValues": [{"value": "202202"}], "metricValues": [{"value": "150"}]}], "rowCount": 1, }, ] @@ -375,24 +344,23 @@ def test_read_incremental(requests_mock): json=lambda request, context: responses.pop(0), ) - with freeze_time("2023-01-01 12:00:00"): + with freeze_time("2022-01-09 12:00:00"): records = list(read_incremental(stream, stream_state)) - + print(records) assert records == [ - {"date": "20221229", "totalUsers": 100, "property_id": 123}, - {"date": "20221230", "totalUsers": 110, "property_id": 123}, - {"date": "20221231", "totalUsers": 120, "property_id": 123}, - {"date": "20230101", "totalUsers": 130, "property_id": 123}, + {"property_id": 123, "yearWeek": "202201", "totalUsers": 100, "startDate": "2022-01-06", "endDate": "2022-01-06"}, + {"property_id": 123, "yearWeek": "202201", "totalUsers": 110, "startDate": "2022-01-07", "endDate": "2022-01-07"}, + {"property_id": 123, "yearWeek": "202201", "totalUsers": 120, "startDate": "2022-01-08", "endDate": "2022-01-08"}, + {"property_id": 123, "yearWeek": "202202", "totalUsers": 130, "startDate": "2022-01-09", "endDate": "2022-01-09"}, ] - assert stream_state == {"date": "20230101"} + assert stream_state == {"yearWeek": "202202"} - with freeze_time("2023-01-02 12:00:00"): + with freeze_time("2022-01-10 12:00:00"): records = list(read_incremental(stream, stream_state)) assert records == [ - {"date": "20221230", "totalUsers": 112, "property_id": 123}, - {"date": "20221231", "totalUsers": 125, "property_id": 123}, - {"date": "20230101", "totalUsers": 140, "property_id": 123}, - {"date": "20230102", "totalUsers": 150, "property_id": 123}, + {"property_id": 123, "yearWeek": "202202", "totalUsers": 112, "startDate": "2022-01-08", "endDate": "2022-01-08"}, + {"property_id": 123, "yearWeek": "202202", "totalUsers": 125, "startDate": "2022-01-09", "endDate": "2022-01-09"}, + {"property_id": 123, "yearWeek": "202202", "totalUsers": 140, "startDate": "2022-01-10", "endDate": "2022-01-10"}, ] diff --git a/airbyte-integrations/connectors/source-google-analytics-data-api/unit_tests/test_utils.py b/airbyte-integrations/connectors/source-google-analytics-data-api/unit_tests/test_utils.py new file mode 100644 index 000000000000..b323b6d5953b --- /dev/null +++ b/airbyte-integrations/connectors/source-google-analytics-data-api/unit_tests/test_utils.py @@ -0,0 +1,17 @@ +import pytest +from source_google_analytics_data_api.utils import ( + serialize_to_date_string, # Replace 'your_module' with the actual module where serialize_to_date_string is defined +) + + +def test_serialize_to_date_string_yearWeek(): + assert serialize_to_date_string("202105", "%Y-%m-%d", "yearWeek") == "2021-02-01" + + +def test_serialize_to_date_string_yearMonth(): + assert serialize_to_date_string("202105", "%Y-%m-%d", "yearMonth") == "2021-05-01" + + +def test_serialize_to_date_string_invalid_type(): + with pytest.raises(ValueError): # Assumes that an invalid date_type will raise a ValueError + serialize_to_date_string("202105", "%Y-%m-%d", "invalidType") diff --git a/airbyte-integrations/connectors/source-google-analytics-v4/acceptance-test-config.yml b/airbyte-integrations/connectors/source-google-analytics-v4/acceptance-test-config.yml index f14f9a0d4cf7..e7e9b896674e 100644 --- a/airbyte-integrations/connectors/source-google-analytics-v4/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-google-analytics-v4/acceptance-test-config.yml @@ -28,7 +28,6 @@ acceptance_tests: timeout_seconds: 2400 future_state: future_state_path: integration_tests/abnormal_state.json - threshold_days: 2 spec: tests: - spec_path: source_google_analytics_v4/spec.json diff --git a/airbyte-integrations/connectors/source-google-search-console/Dockerfile b/airbyte-integrations/connectors/source-google-search-console/Dockerfile index b77accca79fe..19516cb5a1d6 100755 --- a/airbyte-integrations/connectors/source-google-search-console/Dockerfile +++ b/airbyte-integrations/connectors/source-google-search-console/Dockerfile @@ -12,5 +12,5 @@ RUN pip install . ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=1.3.2 +LABEL io.airbyte.version=1.3.3 LABEL io.airbyte.name=airbyte/source-google-search-console diff --git a/airbyte-integrations/connectors/source-google-search-console/README.md b/airbyte-integrations/connectors/source-google-search-console/README.md index 88a1e80b9119..15746e2369c9 100755 --- a/airbyte-integrations/connectors/source-google-search-console/README.md +++ b/airbyte-integrations/connectors/source-google-search-console/README.md @@ -121,9 +121,10 @@ We split dependencies between two groups, dependencies that are: * required for the testing need to go to `TEST_REQUIREMENTS` list ### Publishing a new version of the connector + You've checked out the repo, implemented a million dollar feature, and you're ready to share your changes with the world. Now what? 1. Make sure your changes are passing unit and integration tests. -2. Bump the connector version in `Dockerfile` -- just increment the value of the `LABEL io.airbyte.version` appropriately (we use [SemVer](https://semver.org/)). -3. Create a Pull Request. -4. Pat yourself on the back for being an awesome contributor. -5. Someone from Airbyte will take a look at your PR and iterate with you to merge it into master. +1. Bump the connector version in `Dockerfile` -- just increment the value of the `LABEL io.airbyte.version` appropriately (we use [SemVer](https://semver.org/)). +1. Create a Pull Request. +1. Pat yourself on the back for being an awesome contributor. +1. Someone from Airbyte will take a look at your PR and iterate with you to merge it into master. diff --git a/airbyte-integrations/connectors/source-google-search-console/acceptance-test-config.yml b/airbyte-integrations/connectors/source-google-search-console/acceptance-test-config.yml index de661af6035d..090097426ad5 100755 --- a/airbyte-integrations/connectors/source-google-search-console/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-google-search-console/acceptance-test-config.yml @@ -6,6 +6,10 @@ acceptance_tests: spec: tests: - spec_path: "source_google_search_console/spec.json" + backward_compatibility_tests_config: + # changed the structure of `custom_reports` + # from `json string` to `list[reports]` + disable_for_version: "1.3.2" connection: tests: - config_path: "secrets/config.json" diff --git a/airbyte-integrations/connectors/source-google-search-console/main.py b/airbyte-integrations/connectors/source-google-search-console/main.py index 656bc5fa8a61..001c63af4464 100755 --- a/airbyte-integrations/connectors/source-google-search-console/main.py +++ b/airbyte-integrations/connectors/source-google-search-console/main.py @@ -7,7 +7,11 @@ from airbyte_cdk.entrypoint import launch from source_google_search_console import SourceGoogleSearchConsole +from source_google_search_console.config_migrations import MigrateCustomReports if __name__ == "__main__": source = SourceGoogleSearchConsole() + # migarte config at runtime + MigrateCustomReports.migrate(sys.argv[1:], source) + # run the connector launch(source, sys.argv[1:]) diff --git a/airbyte-integrations/connectors/source-google-search-console/metadata.yaml b/airbyte-integrations/connectors/source-google-search-console/metadata.yaml index be4242be9cbf..23763938f094 100644 --- a/airbyte-integrations/connectors/source-google-search-console/metadata.yaml +++ b/airbyte-integrations/connectors/source-google-search-console/metadata.yaml @@ -5,7 +5,7 @@ data: connectorSubtype: api connectorType: source definitionId: eb4c9e00-db83-4d63-a386-39cfa91012a8 - dockerImageTag: 1.3.2 + dockerImageTag: 1.3.3 dockerRepository: airbyte/source-google-search-console githubIssueLabel: source-google-search-console icon: googlesearchconsole.svg diff --git a/airbyte-integrations/connectors/source-google-search-console/source_google_search_console/config_migrations.py b/airbyte-integrations/connectors/source-google-search-console/source_google_search_console/config_migrations.py new file mode 100644 index 000000000000..781e6d41197f --- /dev/null +++ b/airbyte-integrations/connectors/source-google-search-console/source_google_search_console/config_migrations.py @@ -0,0 +1,96 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + + +import logging +from typing import Any, List, Mapping + +from airbyte_cdk.config_observation import create_connector_config_control_message +from airbyte_cdk.entrypoint import AirbyteEntrypoint +from airbyte_cdk.sources import Source +from airbyte_cdk.sources.message import InMemoryMessageRepository, MessageRepository + +logger = logging.getLogger("airbyte_logger") + + +class MigrateCustomReports: + """ + This class stands for migrating the config at runtime, + while providing the backward compatibility when falling back to the previous source version. + + Specifically, starting from `1.3.3`, the `custom_reports` property should be like : + > List([{name: my_report}, {dimensions: [a,b,c]}], [], ...) + instead of, in `1.3.2`: + > JSON STR: "{name: my_report}, {dimensions: [a,b,c]}" + """ + + message_repository: MessageRepository = InMemoryMessageRepository() + migrate_from_key: str = "custom_reports" + migrate_to_key: str = "custom_reports_array" + + @classmethod + def should_migrate(cls, config: Mapping[str, Any]) -> bool: + """ + This method determines wether or not the config should be migrated to have the new structure for the `custom_reports`, + based on the source spec. + Returns: + > True, if the transformation is neccessary + > False, otherwise. + > Raises the Exception if the structure could not be migrated. + """ + # If the config was already migrated, there is no need to do this again. + # but if the customer has already switched to the new version, + # corrected the old config and switches back to the new version, + # we should try to migrate the modified old custom reports. + if cls.migrate_to_key in config: + return not len(config[cls.migrate_to_key]) > 0 + + if cls.migrate_from_key in config: + custom_reports = config[cls.migrate_from_key] + # check the old structure vs new spec + if isinstance(custom_reports, str): + return True + return False + + @classmethod + def transform_to_array(cls, config: Mapping[str, Any], source: Source = None) -> Mapping[str, Any]: + # assign old values to new property that will be used within the new version + config[cls.migrate_to_key] = config[cls.migrate_from_key] + # transfom `json_str` to `list` of objects + return source._validate_custom_reports(config) + + @classmethod + def modify_and_save(cls, config_path: str, source: Source, config: Mapping[str, Any]) -> Mapping[str, Any]: + # modify the config + migrated_config = cls.transform_to_array(config, source) + # save the config + source.write_config(migrated_config, config_path) + # return modified config + return migrated_config + + @classmethod + def emit_control_message(cls, migrated_config: Mapping[str, Any]) -> None: + # add the Airbyte Control Message to message repo + cls.message_repository.emit_message(create_connector_config_control_message(migrated_config)) + # emit the Airbyte Control Message from message queue to stdout + for message in cls.message_repository._message_queue: + print(message.json(exclude_unset=True)) + + @classmethod + def migrate(cls, args: List[str], source: Source) -> None: + """ + This method checks the input args, should the config be migrated, + transform if neccessary and emit the CONTROL message. + """ + # get config path + config_path = AirbyteEntrypoint(source).extract_config(args) + # proceed only if `--config` arg is provided + if config_path: + # read the existing config + config = source.read_config(config_path) + # migration check + if cls.should_migrate(config): + cls.emit_control_message( + cls.modify_and_save(config_path, source, config), + ) diff --git a/airbyte-integrations/connectors/source-google-search-console/source_google_search_console/source.py b/airbyte-integrations/connectors/source-google-search-console/source_google_search_console/source.py index 5fbc3b7f9a77..ce817585031b 100755 --- a/airbyte-integrations/connectors/source-google-search-console/source_google_search_console/source.py +++ b/airbyte-integrations/connectors/source-google-search-console/source_google_search_console/source.py @@ -70,16 +70,7 @@ def _validate_and_transform(self, config: Mapping[str, Any]): raise Exception("authorization.service_account_info is not valid JSON") # custom report validation - if "custom_reports" in config: - try: - config["custom_reports"] = json.loads(config["custom_reports"]) - except ValueError: - raise Exception("custom_reports is not valid JSON") - jsonschema.validate(config["custom_reports"], custom_reports_schema) - for report in config["custom_reports"]: - for dimension in report["dimensions"]: - if dimension not in SearchAnalyticsByCustomDimensions.dimension_to_property_schema_map: - raise Exception(f"dimension: '{dimension}' not found") + config = self._validate_custom_reports(config) # start date checks pendulum.parse(config.get("start_date", "2021-01-01")) # `2021-01-01` is the default value @@ -95,6 +86,24 @@ def _validate_and_transform(self, config: Mapping[str, Any]): config["data_state"] = config.get("data_state", "final") return config + def _validate_custom_reports(self, config: Mapping[str, Any]) -> Mapping[str, Any]: + if "custom_reports_array" in config: + try: + custom_reports = config["custom_reports_array"] + if isinstance(custom_reports, str): + # load the json_str old report structure and transform it into valid JSON Object + config["custom_reports_array"] = json.loads(config["custom_reports_array"]) + elif isinstance(custom_reports, list): + pass # allow the list structure only + except ValueError: + raise Exception("Custom Reports provided is not valid List of Object (reports)") + jsonschema.validate(config["custom_reports_array"], custom_reports_schema) + for report in config["custom_reports_array"]: + for dimension in report["dimensions"]: + if dimension not in SearchAnalyticsByCustomDimensions.dimension_to_property_schema_map: + raise Exception(f"dimension: '{dimension}' not found") + return config + def check_connection(self, logger: AirbyteLogger, config: Mapping[str, Any]) -> Tuple[bool, Any]: try: config = self._validate_and_transform(config) @@ -181,7 +190,7 @@ def streams(self, config: Mapping[str, Any]) -> List[Stream]: def get_custom_reports(self, config: Mapping[str, Any], stream_config: Mapping[str, Any]) -> List[Optional[Stream]]: return [ type(report["name"], (SearchAnalyticsByCustomDimensions,), {})(dimensions=report["dimensions"], **stream_config) - for report in config.get("custom_reports", []) + for report in config.get("custom_reports_array", []) ] def get_stream_kwargs(self, config: Mapping[str, Any]) -> Mapping[str, Any]: diff --git a/airbyte-integrations/connectors/source-google-search-console/source_google_search_console/spec.json b/airbyte-integrations/connectors/source-google-search-console/source_google_search_console/spec.json index ff26efd0e224..03bbb51777fa 100755 --- a/airbyte-integrations/connectors/source-google-search-console/source_google_search_console/spec.json +++ b/airbyte-integrations/connectors/source-google-search-console/source_google_search_console/spec.json @@ -23,6 +23,7 @@ "default": "2021-01-01", "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$", "pattern_descriptor": "YYYY-MM-DD", + "always_show": true, "order": 1, "format": "date" }, @@ -115,7 +116,37 @@ "order": 4, "type": "string", "title": "Custom Reports", - "description": "A JSON array describing the custom reports you want to sync from Google Search Console. See our documentation for more information on formulating custom reports." + "airbyte_hidden": true, + "description": "(DEPRCATED) A JSON array describing the custom reports you want to sync from Google Search Console. See our documentation for more information on formulating custom reports." + }, + "custom_reports_array": { + "title": "Custom Reports", + "description": "You can add your Custom Analytics report by creating one.", + "order": 5, + "type": "array", + "items": { + "title": "Custom Report Config", + "type": "object", + "properties": { + "name": { + "title": "Name", + "description": "The name of the custom report, this name would be used as stream name", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "description": "A list of dimensions (country, date, device, page, query)", + "type": "array", + "items": { + "title": "ValidEnums", + "description": "An enumeration of dimensions.", + "enum": ["country", "date", "device", "page", "query"] + }, + "minItems": 1 + } + }, + "required": ["name", "dimensions"] + } }, "data_state": { "type": "string", @@ -124,7 +155,7 @@ "description": "If set to 'final', the returned data will include only finalized, stable data. If set to 'all', fresh data will be included. When using Incremental sync mode, we do not recommend setting this parameter to 'all' as it may cause data loss. More information can be found in our full documentation.", "examples": ["final", "all"], "default": "final", - "order": 5 + "order": 6 } } }, diff --git a/airbyte-integrations/connectors/source-google-search-console/source_google_search_console/streams.py b/airbyte-integrations/connectors/source-google-search-console/source_google_search_console/streams.py index f707e527f8ff..a6c51c68920c 100755 --- a/airbyte-integrations/connectors/source-google-search-console/source_google_search_console/streams.py +++ b/airbyte-integrations/connectors/source-google-search-console/source_google_search_console/streams.py @@ -25,7 +25,6 @@ class QueryAggregationType(Enum): class GoogleSearchConsole(HttpStream, ABC): url_base = BASE_URL - primary_key = None data_field = "" raise_on_http_errors = True @@ -74,6 +73,11 @@ def should_retry(self, response: requests.Response) -> bool: self.logger.error(f"Stream {self.name}. {error.get('message')}. Skipping.") setattr(self, "raise_on_http_errors", False) return False + # handle the `HTTP-400` - Bad query params with `aggregationType` + if error.get("code", 0) == 400: + self.logger.error(f"Stream `{self.name}`. {error.get('message')}. Trying with `aggregationType = auto` instead.") + self.aggregation_type = QueryAggregationType.auto + setattr(self, "raise_on_http_errors", False) return super().should_retry(response) @@ -82,6 +86,8 @@ class Sites(GoogleSearchConsole): API docs: https://developers.google.com/webmaster-tools/search-console-api-original/v3/sites """ + primary_key = None + def path( self, stream_state: Mapping[str, Any] = None, @@ -96,6 +102,7 @@ class Sitemaps(GoogleSearchConsole): API docs: https://developers.google.com/webmaster-tools/search-console-api-original/v3/sitemaps """ + primary_key = None data_field = "sitemap" def path( @@ -212,6 +219,7 @@ def request_body_json( "rowLimit": ROW_LIMIT, "dataState": stream_slice.get("data_state"), } + return data def _get_end_date(self) -> pendulum.date: @@ -300,30 +308,36 @@ def get_updated_state( class SearchAnalyticsByDate(SearchAnalytics): + primary_key = ["site_url", "date", "search_type"] search_types = ["web", "news", "image", "video", "discover", "googleNews"] dimensions = ["date"] class SearchAnalyticsByCountry(SearchAnalytics): + primary_key = ["site_url", "date", "country", "search_type"] search_types = ["web", "news", "image", "video", "discover", "googleNews"] dimensions = ["date", "country"] class SearchAnalyticsByDevice(SearchAnalytics): + primary_key = ["site_url", "date", "device", "search_type"] search_types = ["web", "news", "image", "video", "googleNews"] dimensions = ["date", "device"] class SearchAnalyticsByPage(SearchAnalytics): + primary_key = ["site_url", "date", "page", "search_type"] search_types = ["web", "news", "image", "video", "discover", "googleNews"] dimensions = ["date", "page"] class SearchAnalyticsByQuery(SearchAnalytics): + primary_key = ["site_url", "date", "query", "search_type"] dimensions = ["date", "query"] class SearchAnalyticsAllFields(SearchAnalytics): + primary_key = ["site_url", "date", "country", "device", "query", "page", "search_type"] dimensions = ["date", "country", "device", "page", "query"] @@ -334,6 +348,7 @@ class SearchAppearance(SearchAnalytics): https://developers.google.com/webmaster-tools/v1/how-tos/all-your-data#search-appearance-data """ + primary_key = None dimensions = ["searchAppearance"] @@ -354,7 +369,6 @@ def request_body_json( stream = SearchAppearance(self.authenticator, self._site_urls, self._start_date, self._end_date) keywords_records = stream.read_records(sync_mode=SyncMode.full_refresh, stream_state=stream_state, stream_slice=stream_slice) keywords = {record["searchAppearance"] for record in keywords_records} - filters = [] for keyword in keywords: filters.append({"dimension": "searchAppearance", "operator": "equals", "expression": keyword}) @@ -365,31 +379,37 @@ def request_body_json( class SearchAnalyticsKeywordPageReport(SearchByKeyword): + primary_key = ["site_url", "date", "country", "device", "query", "page", "search_type"] dimensions = ["date", "country", "device", "query", "page"] class SearchAnalyticsKeywordSiteReportByPage(SearchByKeyword): + primary_key = ["site_url", "date", "country", "device", "query", "search_type"] dimensions = ["date", "country", "device", "query"] aggregation_type = QueryAggregationType.by_page class SearchAnalyticsKeywordSiteReportBySite(SearchByKeyword): + primary_key = ["site_url", "date", "country", "device", "query", "search_type"] dimensions = ["date", "country", "device", "query"] aggregation_type = QueryAggregationType.by_property class SearchAnalyticsSiteReportBySite(SearchAnalytics): + primary_key = ["site_url", "date", "country", "device", "search_type"] dimensions = ["date", "country", "device"] aggregation_type = QueryAggregationType.by_property class SearchAnalyticsSiteReportByPage(SearchAnalytics): + primary_key = ["site_url", "date", "country", "device", "search_type"] search_types = ["web", "news", "image", "video", "googleNews"] dimensions = ["date", "country", "device"] aggregation_type = QueryAggregationType.by_page class SearchAnalyticsPageReport(SearchAnalytics): + primary_key = ["site_url", "date", "country", "device", "search_type", "page"] search_types = ["web", "news", "image", "video", "googleNews"] dimensions = ["date", "country", "device", "page"] @@ -401,11 +421,16 @@ class SearchAnalyticsByCustomDimensions(SearchAnalytics): "device": [{"device": {"type": ["null", "string"]}}], "page": [{"page": {"type": ["null", "string"]}}], "query": [{"query": {"type": ["null", "string"]}}], + "search_type": [{"search_type": {"type": ["null", "string"]}}], } + primary_key = None + def __init__(self, dimensions: List[str], *args, **kwargs): super(SearchAnalyticsByCustomDimensions, self).__init__(*args, **kwargs) self.dimensions = dimensions + # assign the dimensions as PK for the custom report stream + self.primary_key = dimensions def get_json_schema(self) -> Mapping[str, Any]: try: diff --git a/airbyte-integrations/connectors/source-google-search-console/unit_tests/conftest.py b/airbyte-integrations/connectors/source-google-search-console/unit_tests/conftest.py index 3c201316fcaf..a8a077b21ccf 100644 --- a/airbyte-integrations/connectors/source-google-search-console/unit_tests/conftest.py +++ b/airbyte-integrations/connectors/source-google-search-console/unit_tests/conftest.py @@ -19,7 +19,8 @@ def config_fixture(requests_mock): "client_secret": "client_secret", "refresh_token": "refresh_token", }, - "custom_reports": '[{"name": "custom_dimensions", "dimensions": ["date", "country", "device"]}]', + "custom_reports": "[{\"name\": \"custom_dimensions\", \"dimensions\": [\"date\", \"country\", \"device\"]}]", + "custom_reports_array": [{"name": "custom_dimensions", "dimensions": ["date", "country", "device"]}], } @@ -34,12 +35,13 @@ def config_service_account_fixture(requests_mock): "service_account_info": "{\n \"type\": \"service_account\",\n \"project_id\": \"test\",\n \"private_key_id\": \"123\",\n \"private_key\": \"-----BEGIN PRIVATE KEY-----\\nMIIEvQIBADANBgkqhkiG9w0BBQEFAASCBKcwggSjAgEAAoIBAQDCJPUvep0vXeWb\\nqiwnDxWdd8D75FWJBaYB3rjZvBBhZiY3sA7DmEOj+NJHl4PiPzP8tDZl9MyLBWEc\\neTFSmHSBYSqxax9AOLzWXfLzUezjediIRsGC/Eq9Ue0rkDdMcdcfzQ5J9RDDI1DF\\n1UBxVHFOf7DOSOU7meNPFjAO68aITErvnTh/XL1wWC28PYL351hs57WwLSQTuW0e\\ncUw9XUOE977+qJ4Cs3ZM5c10eid5DDWS4heFG/9hEkobXy34BNdeDodfe9xGSJxD\\nFoAhADj6jMn1z7YgsUG7zpsyW8yh2LtnYdT+fMqIl0FeB4dt0kB3uU1f6vqgo97p\\ndibK6DQ3AgMBAAECggEADWZPz+eZreyNDbnokzrDMw7SMIof1AKIsZKMPDPAE1Pu\\ndlbkWS0LGhs92p6DOUKqFWdHMkrh/tEvuy94L1G1CAr+gqe4mY4KjPPuC7I1wRuM\\n50ovWtlliGL9SIDxkbw+IB4SJIBrS3SgCg+AA6WgezQ5lHtLUXPh6ivHXfhGLlKR\\nI+Gow93UklbxcT57ezeDZVn0U3iUG1H7NkE0livyTTGEMm6GxUqxje7axA4ZVfRL\\nRVrNAHQTihPTThmN/p47Wbh6C8m7o1/cutYDk52CuCjuifxNINlak1ZimSEJ7mcY\\nSIglnTmndQImwiyeDbITtJ3gyYiJerjHnMAYH+VInQKBgQD5HH1tKBxZouozdweu\\n6lpTyko+TBa/3Eo2pgFxbJrKe3pBhkNWVLrCukZxWDFkKSbC+5xaSNGnh/lP/6FX\\nWHWBuBL8R5os9bfNQ9xnArZX7OhzN+aIh8aK5gmEPJE1JaepPyC0X8vaTBqFiQlK\\n6aRB89RqOUlB86B9vzJca7p7LQKBgQDHg1h9A6X9EkWewW5cSOuScw4FElK8N62v\\n5oVByBZZb/Ys9zP04m0yG7VdRSjk8xyCH5+GDS5m9jTxJdctON2AOPL7de8KOtga\\nJSHivUdDLkt7wSmvblc/JYnNs5+B783gTOpdBrXhV6Wo+QpVw1Pcx15b10WLAs8l\\nMzk7LG27cwKBgDJPorVNCIzB7nL+czrMcfnCPURfsaiGISbwWBJEUO7cCVD6gNcK\\nvb1eSaPSoAcOmJmAn49MbatcNuoFQtyVLQZJ2uvAuk6iQcdfF8BmN9WCL2A1xgWF\\nBoA+/WULpngJZtczvLMxNcac4C5gAtRyY44+ZIQflcAQKDW9S7qGt17xAoGBAJ37\\npLtBg1PU/yoJ81DCMT/DOYvMiZUe5bsO5+BCB2iE3sOWcB7umRb/l+qmVA6Pb7ie\\nP9yPXXoMZbm6hBv8FnFtJwL1zPYlyG9TjfSUevR4mS8CsvaGhjGvkOJA5QKoGDcP\\n0Nke8jDhDX2yzntA84w0lsRUv22nKM5FNIFl2fJ/AoGAOAVtlKRPPi2YrjUqqy6F\\nYr9RXwDZIaHQv9RKzkhPN346zXrYOuAGoL7V7F/MyUH3nX3pzHJDns71+S4Ms5qq\\n6ZjMCu/ic/RsCIoCH5IQsubLpI5bnSsHVt8wLMNR9LwQ/lbRJPWF4LmMnDNJCuC0\\nqJd/bEiNrFhu8IgD6NCT7dQ=\\n-----END PRIVATE KEY-----\\n\",\n \"client_email\": \"search-console-integration-tes@airbyte.iam.gserviceaccount.com\",\n \"client_id\": \"123\",\n \"auth_uri\": \"https://accounts.google.com/o/oauth2/auth\",\n \"token_uri\": \"https://oauth2.googleapis.com/token\",\n \"auth_provider_x509_cert_url\": \"https://www.googleapis.com/oauth2/v1/certs\",\n \"client_x509_cert_url\": \"https://www.googleapis.com/robot/v1/metadata/x509/search-console-integration-test%40dairbyte.iam.gserviceaccount.com\"\n}", "email": "test@example.com" }, - "custom_reports": "[{\"name\": \"custom_dimensions\", \"dimensions\": [\"date\", \"country\", \"device\"]}]" + "custom_reports": "[{\"name\": \"custom_dimensions\", \"dimensions\": [\"date\", \"country\", \"device\"]}]", + "custom_reports_array": [{"name": "custom_dimensions", "dimensions": ["date", "country", "device"]}], } @fixture(name="forbidden_error_message_json") -def forbidden_error_message_json(requests_mock): +def forbidden_error_message_json(): return { "error": { "code": 403, @@ -55,6 +57,25 @@ def forbidden_error_message_json(requests_mock): } +@fixture(name="bad_aggregation_type") +def bad_aggregation_type(): + return { + "error": { + "code": 400, + "message": "'BY_PROPERTY' is not a valid aggregation type in the context of the request.", + "errors": [ + { + "message": "'BY_PROPERTY' is not a valid aggregation type in the context of the request.", + "domain": "global", + "reason": "invalidParameter", + "location": "aggregation_type", + "locationType": "parameter" + } + ] + } + } + + @fixture def config_gen(config): def inner(**kwargs): diff --git a/airbyte-integrations/connectors/source-google-search-console/unit_tests/test_migrations/test_config.json b/airbyte-integrations/connectors/source-google-search-console/unit_tests/test_migrations/test_config.json new file mode 100644 index 000000000000..dbde2f0aa6d2 --- /dev/null +++ b/airbyte-integrations/connectors/source-google-search-console/unit_tests/test_migrations/test_config.json @@ -0,0 +1,13 @@ +{ + "site_urls": ["https://airbyte.io/"], + "_limit": 6, + "start_date": "2021-09-14", + "end_date": "2025-08-31", + "authorization": { + "auth_type": "Client", + "client_id": "client_id", + "client_secret": "client_secret", + "refresh_token": "refresh_token" + }, + "custom_reports": "[{\"name\": \"custom_dimensions\", \"dimensions\": [\"date\", \"country\", \"device\"]}]" +} diff --git a/airbyte-integrations/connectors/source-google-search-console/unit_tests/test_migrations/test_config_migrations.py b/airbyte-integrations/connectors/source-google-search-console/unit_tests/test_migrations/test_config_migrations.py new file mode 100644 index 000000000000..e2b58b1ae6e0 --- /dev/null +++ b/airbyte-integrations/connectors/source-google-search-console/unit_tests/test_migrations/test_config_migrations.py @@ -0,0 +1,75 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + + +import json +from typing import Any, Mapping + +from airbyte_cdk.models import OrchestratorType, Type +from airbyte_cdk.sources import Source +from source_google_search_console.config_migrations import MigrateCustomReports +from source_google_search_console.source import SourceGoogleSearchConsole + +# BASE ARGS +CMD = "check" +TEST_CONFIG_PATH = "unit_tests/test_migrations/test_config.json" +SOURCE_INPUT_ARGS = [CMD, "--config", TEST_CONFIG_PATH] +SOURCE: Source = SourceGoogleSearchConsole() + + +# HELPERS +def load_config(config_path: str = TEST_CONFIG_PATH) -> Mapping[str, Any]: + with open(config_path, "r") as config: + return json.load(config) + + +def revert_migration(config_path: str = TEST_CONFIG_PATH) -> None: + with open(config_path, "r") as test_config: + config = json.load(test_config) + config.pop("custom_reports_array") + with open(config_path, "w") as updated_config: + config = json.dumps(config) + updated_config.write(config) + + +def test_migrate_config(): + migration_instance = MigrateCustomReports() + original_config = load_config() + # migrate the test_config + migration_instance.migrate(SOURCE_INPUT_ARGS, SOURCE) + # load the updated config + test_migrated_config = load_config() + # check migrated property + assert "custom_reports_array" in test_migrated_config + assert isinstance(test_migrated_config["custom_reports_array"], list) + # check the old property is in place + assert "custom_reports" in test_migrated_config + assert isinstance(test_migrated_config["custom_reports"], str) + # check the migration should be skipped, once already done + assert not migration_instance.should_migrate(test_migrated_config) + # load the old custom reports VS migrated + assert json.loads(original_config["custom_reports"]) == test_migrated_config["custom_reports_array"] + # test CONTROL MESSAGE was emitted + control_msg = migration_instance.message_repository._message_queue[0] + assert control_msg.type == Type.CONTROL + assert control_msg.control.type == OrchestratorType.CONNECTOR_CONFIG + # old custom_reports are stil type(str) + assert isinstance(control_msg.control.connectorConfig.config["custom_reports"], str) + # new custom_reports are type(list) + assert isinstance(control_msg.control.connectorConfig.config["custom_reports_array"], list) + # check the migrated values + assert control_msg.control.connectorConfig.config["custom_reports_array"][0]["name"] == "custom_dimensions" + assert control_msg.control.connectorConfig.config["custom_reports_array"][0]["dimensions"] == ["date", "country", "device"] + # revert the test_config to the starting point + revert_migration() + + +def test_config_is_reverted(): + # check the test_config state, it has to be the same as before tests + test_config = load_config() + # check the config no longer has the migarted property + assert "custom_reports_array" not in test_config + # check the old property is still there + assert "custom_reports" in test_config + assert isinstance(test_config["custom_reports"], str) diff --git a/airbyte-integrations/connectors/source-google-search-console/unit_tests/unit_test.py b/airbyte-integrations/connectors/source-google-search-console/unit_tests/unit_test.py index 304b5e3cf540..8aaceeef2013 100755 --- a/airbyte-integrations/connectors/source-google-search-console/unit_tests/unit_test.py +++ b/airbyte-integrations/connectors/source-google-search-console/unit_tests/unit_test.py @@ -15,8 +15,10 @@ from source_google_search_console.streams import ( ROW_LIMIT, GoogleSearchConsole, + QueryAggregationType, SearchAnalyticsByCustomDimensions, SearchAnalyticsByDate, + SearchAnalyticsKeywordSiteReportBySite, Sites, ) from utils import command_check @@ -131,6 +133,21 @@ def test_forbidden_should_retry(requests_mock, forbidden_error_message_json): assert stream.raise_on_http_errors is False +def test_bad_aggregation_type_should_retry(requests_mock, bad_aggregation_type): + stream = SearchAnalyticsKeywordSiteReportBySite(None, ["https://example.com"], "2021-01-01", "2021-01-02") + slice = list(stream.stream_slices(None))[0] + url = stream.url_base + stream.path(None, slice) + requests_mock.get(url, status_code=400, json=bad_aggregation_type) + test_response = requests.get(url) + # before should_retry, the aggregation_type should be set to `by_propety` + assert stream.aggregation_type == QueryAggregationType.by_property + # trigger should retry + assert stream.should_retry(test_response) is False + # after should_retry, the aggregation_type should be set to `auto` + assert stream.aggregation_type == QueryAggregationType.auto + assert stream.raise_on_http_errors is False + + @pytest.mark.parametrize( "stream_class, expected", [ @@ -198,13 +215,15 @@ def test_check_connection(config_gen, config, mocker, requests_mock): ) # test custom_reports - assert command_check(source, config_gen(custom_reports="")) == AirbyteConnectionStatus( - status=Status.FAILED, - message="\"Unable to check connectivity to Google Search Console API - Exception('custom_reports is not valid JSON')\"", - ) - assert command_check(source, config_gen(custom_reports="{}")) == AirbyteConnectionStatus( - status=Status.FAILED, message="''" - ) + with pytest.raises(AirbyteTracedException): + assert command_check(source, config_gen(custom_reports_array="")) == AirbyteConnectionStatus( + status=Status.FAILED, + message="''", + ) + with pytest.raises(AirbyteTracedException): + assert command_check(source, config_gen(custom_reports_array="{}")) == AirbyteConnectionStatus( + status=Status.FAILED, message="''" + ) @pytest.mark.parametrize( @@ -229,7 +248,7 @@ def test_streams(config_gen): source = SourceGoogleSearchConsole() streams = source.streams(config_gen()) assert len(streams) == 15 - streams = source.streams(config_gen(custom_reports=...)) + streams = source.streams(config_gen(custom_reports_array=...)) assert len(streams) == 14 diff --git a/airbyte-integrations/connectors/source-harvest/acceptance-test-config.yml b/airbyte-integrations/connectors/source-harvest/acceptance-test-config.yml index c8c4baf80d8d..e58f79698121 100644 --- a/airbyte-integrations/connectors/source-harvest/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-harvest/acceptance-test-config.yml @@ -29,9 +29,6 @@ acceptance_tests: configured_catalog_path: "integration_tests/incremental_catalog.json" future_state: future_state_path: "integration_tests/abnormal_state.json" - cursor_paths: - contacts: ["updated_at"] - expenses_clients: ["to"] timeout_seconds: 2400 full_refresh: tests: diff --git a/airbyte-integrations/connectors/source-hubplanner/Dockerfile b/airbyte-integrations/connectors/source-hubplanner/Dockerfile index ba50ba0758fb..7472843e16cb 100644 --- a/airbyte-integrations/connectors/source-hubplanner/Dockerfile +++ b/airbyte-integrations/connectors/source-hubplanner/Dockerfile @@ -1,16 +1,38 @@ -FROM python:3.9-slim +FROM python:3.9.11-alpine3.15 as base + +# build and load all requirements +FROM base as builder +WORKDIR /airbyte/integration_code + +# upgrade pip to the latest version +RUN apk --no-cache upgrade \ + && pip install --upgrade pip \ + && apk --no-cache add tzdata build-base -# Bash is installed for more convenient debugging. -RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* +COPY setup.py ./ +# install necessary packages to a temporary folder +RUN pip install --prefix=/install . + +# build a clean environment +FROM base WORKDIR /airbyte/integration_code -COPY source_hubplanner ./source_hubplanner + +# copy all loaded and built libraries to a pure basic image +COPY --from=builder /install /usr/local +# add default timezone settings +COPY --from=builder /usr/share/zoneinfo/Etc/UTC /etc/localtime +RUN echo "Etc/UTC" > /etc/timezone + +# bash is installed for more convenient debugging. +RUN apk --no-cache add bash + +# copy payload code only COPY main.py ./ -COPY setup.py ./ -RUN pip install . +COPY source_hubplanner ./source_hubplanner ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=0.1.0 +LABEL io.airbyte.version=0.2.0 LABEL io.airbyte.name=airbyte/source-hubplanner diff --git a/airbyte-integrations/connectors/source-hubplanner/README.md b/airbyte-integrations/connectors/source-hubplanner/README.md index e58e8e540395..f12df841228e 100644 --- a/airbyte-integrations/connectors/source-hubplanner/README.md +++ b/airbyte-integrations/connectors/source-hubplanner/README.md @@ -1,35 +1,10 @@ # Hubplanner Source -This is the repository for the Hubplanner source connector, written in Python. -For information about how to use this connector within Airbyte, see [the documentation](https://docs.airbyte.io/integrations/sources/hubplanner). +This is the repository for the Hubplanner configuration based source connector. +For information about how to use this connector within Airbyte, see [the documentation](https://docs.airbyte.com/integrations/sources/hubplanner). ## Local development -### Prerequisites -**To iterate on this connector, make sure to complete this prerequisites section.** - -#### Minimum Python version required `= 3.7.0` - -#### Build & Activate Virtual Environment and install dependencies -From this connector directory, create a virtual environment: -``` -python -m venv .venv -``` - -This will generate a virtualenv for this module in `.venv/`. Make sure this venv is active in your -development environment of choice. To activate it from the terminal, run: -``` -source .venv/bin/activate -pip install -r requirements.txt -pip install '.[tests]' -``` -If you are in an IDE, follow your IDE's instructions to activate the virtualenv. - -Note that while we are installing dependencies from `requirements.txt`, you should only edit `setup.py` for your dependencies. `requirements.txt` is -used for editable installs (`pip install -e`) to pull in Python dependencies from the monorepo and will call `setup.py`. -If this is mumbo jumbo to you, don't worry about it, just put your deps in `setup.py` but install using `pip install -r requirements.txt` and everything -should work as you expect. - #### Building via Gradle You can also build the connector in Gradle. This is typically used in CI and not needed for your development workflow. @@ -39,22 +14,14 @@ To build using Gradle, from the Airbyte repository root, run: ``` #### Create credentials -**If you are a community contributor**, follow the instructions in the [documentation](https://docs.airbyte.io/integrations/sources/hubplanner) -to generate the necessary credentials. Then create a file `secrets/config.json` conforming to the `source_hubplanner/spec.json` file. +**If you are a community contributor**, follow the instructions in the [documentation](https://docs.airbyte.com/integrations/sources/hubplanner) +to generate the necessary credentials. Then create a file `secrets/config.json` conforming to the `source_hubplanner/spec.yaml` file. Note that any directory named `secrets` is gitignored across the entire Airbyte repo, so there is no danger of accidentally checking in sensitive information. See `integration_tests/sample_config.json` for a sample config file. **If you are an Airbyte core member**, copy the credentials in Lastpass under the secret name `source hubplanner test creds` and place them into `secrets/config.json`. -### Locally running the connector -``` -python main.py spec -python main.py check --config secrets/config.json -python main.py discover --config secrets/config.json -python main.py read --config secrets/config.json --catalog integration_tests/configured_catalog.json -``` - ### Locally running the connector docker image #### Build @@ -79,32 +46,15 @@ docker run --rm -v $(pwd)/secrets:/secrets airbyte/source-hubplanner:dev discove docker run --rm -v $(pwd)/secrets:/secrets -v $(pwd)/integration_tests:/integration_tests airbyte/source-hubplanner:dev read --config /secrets/config.json --catalog /integration_tests/configured_catalog.json ``` ## Testing -Make sure to familiarize yourself with [pytest test discovery](https://docs.pytest.org/en/latest/goodpractices.html#test-discovery) to know how your test files and methods should be named. -First install test dependencies into your virtual environment: -``` -pip install .[tests] -``` -### Unit Tests -To run unit tests locally, from the connector directory run: -``` -python -m pytest unit_tests -``` -### Integration Tests -There are two types of integration tests: Acceptance Tests (Airbyte's test suite for all source connectors) and custom integration tests (which are specific to this connector). -#### Custom Integration tests -Place custom tests inside `integration_tests/` folder, then, from the connector root, run -``` -python -m pytest integration_tests -``` #### Acceptance Tests -Customize `acceptance-test-config.yml` file to configure tests. See [Connector Acceptance Tests](https://docs.airbyte.io/connector-development/testing-connectors/connector-acceptance-tests-reference) for more information. +Customize `acceptance-test-config.yml` file to configure tests. See [Connector Acceptance Tests](https://docs.airbyte.com/connector-development/testing-connectors/connector-acceptance-tests-reference) for more information. If your connector requires to create or destroy resources for use during acceptance tests create fixtures for it and place them inside integration_tests/acceptance.py. -To run your integration tests with acceptance tests, from the connector root, run + +To run your integration tests with Docker, run: ``` -python -m pytest integration_tests -p integration_tests.acceptance +./acceptance-test-docker.sh ``` -To run your integration tests with docker ### Using gradle to run tests All commands should be run from airbyte project root. diff --git a/airbyte-integrations/connectors/source-hubplanner/__init__.py b/airbyte-integrations/connectors/source-hubplanner/__init__.py new file mode 100644 index 000000000000..c941b3045795 --- /dev/null +++ b/airbyte-integrations/connectors/source-hubplanner/__init__.py @@ -0,0 +1,3 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# diff --git a/airbyte-integrations/connectors/source-hubplanner/acceptance-test-config.yml b/airbyte-integrations/connectors/source-hubplanner/acceptance-test-config.yml index 8ca311be523e..bb95983d90b9 100644 --- a/airbyte-integrations/connectors/source-hubplanner/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-hubplanner/acceptance-test-config.yml @@ -1,26 +1,31 @@ # See [Connector Acceptance Tests](https://docs.airbyte.com/connector-development/testing-connectors/connector-acceptance-tests-reference) # for more information about how to configure these tests connector_image: airbyte/source-hubplanner:dev -tests: +acceptance_tests: spec: - - spec_path: "source_hubplanner/spec.json" + tests: + - spec_path: "source_hubplanner/spec.yaml" connection: - - config_path: "secrets/config.json" - status: "succeed" - - config_path: "integration_tests/invalid_config.json" - status: "failed" + tests: + - config_path: "secrets/config.json" + status: "succeed" + - config_path: "integration_tests/invalid_config.json" + status: "failed" discovery: - - config_path: "secrets/config.json" + tests: + - config_path: "secrets/config.json" + backward_compatibility_tests_config: + disable_for_version: "0.1.0" basic_read: - - config_path: "secrets/config.json" - configured_catalog_path: "integration_tests/configured_catalog.json" - empty_streams: ["holidays"] - # TODO uncomment this block to specify that the tests should assert the connector outputs the records provided in the input file a file - # expect_records: - # path: "integration_tests/expected_records.jsonl" - # extra_fields: no - # exact_order: no - # extra_records: yes + tests: + - config_path: "secrets/config.json" + configured_catalog_path: "integration_tests/configured_catalog.json" + empty_streams: + - name: clients + - name: holidays + incremental: + bypass_reason: "This connector does not implement incremental sync" full_refresh: - - config_path: "secrets/config.json" - configured_catalog_path: "integration_tests/configured_catalog.json" + tests: + - config_path: "secrets/config.json" + configured_catalog_path: "integration_tests/configured_catalog.json" diff --git a/airbyte-integrations/connectors/source-hubplanner/acceptance-test-docker.sh b/airbyte-integrations/connectors/source-hubplanner/acceptance-test-docker.sh old mode 100644 new mode 100755 index 5797d20fe9a7..b6d65deeccb4 --- a/airbyte-integrations/connectors/source-hubplanner/acceptance-test-docker.sh +++ b/airbyte-integrations/connectors/source-hubplanner/acceptance-test-docker.sh @@ -1,2 +1,3 @@ #!/usr/bin/env sh + source "$(git rev-parse --show-toplevel)/airbyte-integrations/bases/connector-acceptance-test/acceptance-test-docker.sh" diff --git a/airbyte-integrations/connectors/source-hubplanner/integration_tests/__init__.py b/airbyte-integrations/connectors/source-hubplanner/integration_tests/__init__.py index 46b7376756ec..c941b3045795 100644 --- a/airbyte-integrations/connectors/source-hubplanner/integration_tests/__init__.py +++ b/airbyte-integrations/connectors/source-hubplanner/integration_tests/__init__.py @@ -1,3 +1,3 @@ # -# Copyright (c) 2021 Airbyte, Inc., all rights reserved. +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. # diff --git a/airbyte-integrations/connectors/source-hubplanner/integration_tests/abnormal_state.json b/airbyte-integrations/connectors/source-hubplanner/integration_tests/abnormal_state.json new file mode 100644 index 000000000000..52b0f2c2118f --- /dev/null +++ b/airbyte-integrations/connectors/source-hubplanner/integration_tests/abnormal_state.json @@ -0,0 +1,5 @@ +{ + "todo-stream-name": { + "todo-field-name": "todo-abnormal-value" + } +} diff --git a/airbyte-integrations/connectors/source-hubplanner/integration_tests/invalid_config.json b/airbyte-integrations/connectors/source-hubplanner/integration_tests/invalid_config.json index 92a71d900e59..d5ae35771339 100644 --- a/airbyte-integrations/connectors/source-hubplanner/integration_tests/invalid_config.json +++ b/airbyte-integrations/connectors/source-hubplanner/integration_tests/invalid_config.json @@ -1,3 +1,3 @@ { - "api_key": "invalid-api-key" + "api_key": "invalid_api_key" } diff --git a/airbyte-integrations/connectors/source-hubplanner/integration_tests/sample_config.json b/airbyte-integrations/connectors/source-hubplanner/integration_tests/sample_config.json new file mode 100644 index 000000000000..0cc92f7a010d --- /dev/null +++ b/airbyte-integrations/connectors/source-hubplanner/integration_tests/sample_config.json @@ -0,0 +1,3 @@ +{ + "api_key": "api_key" +} diff --git a/airbyte-integrations/connectors/source-hubplanner/integration_tests/sample_state.json b/airbyte-integrations/connectors/source-hubplanner/integration_tests/sample_state.json new file mode 100644 index 000000000000..3587e579822d --- /dev/null +++ b/airbyte-integrations/connectors/source-hubplanner/integration_tests/sample_state.json @@ -0,0 +1,5 @@ +{ + "todo-stream-name": { + "todo-field-name": "value" + } +} diff --git a/airbyte-integrations/connectors/source-hubplanner/metadata.yaml b/airbyte-integrations/connectors/source-hubplanner/metadata.yaml index 8b0907752bb1..ab23f4f28def 100644 --- a/airbyte-integrations/connectors/source-hubplanner/metadata.yaml +++ b/airbyte-integrations/connectors/source-hubplanner/metadata.yaml @@ -1,24 +1,28 @@ data: + allowedHosts: + hosts: + - "*" # Please change to the hostname of the source. + registries: + cloud: + enabled: true + oss: + enabled: true connectorSubtype: api connectorType: source definitionId: 8097ceb9-383f-42f6-9f92-d3fd4bcc7689 - dockerImageTag: 0.1.0 + dockerImageTag: 0.2.0 dockerRepository: airbyte/source-hubplanner githubIssueLabel: source-hubplanner icon: hubplanner.svg license: MIT name: Hubplanner - registries: - cloud: - enabled: true - oss: - enabled: true + releaseDate: "2021-08-10" releaseStage: alpha + supportLevel: community documentationUrl: https://docs.airbyte.com/integrations/sources/hubplanner tags: - - language:python + - language:lowcode ab_internal: sl: 100 ql: 100 - supportLevel: community metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-hubplanner/sample_files/configured_catalog.json b/airbyte-integrations/connectors/source-hubplanner/sample_files/configured_catalog.json deleted file mode 100644 index 4fac0c64d90b..000000000000 --- a/airbyte-integrations/connectors/source-hubplanner/sample_files/configured_catalog.json +++ /dev/null @@ -1,137 +0,0 @@ -{ - "streams": [ - { - "stream": { - "name": "billing_rates", - "json_schema": { - "$schema": "http://json-schema.org/draft-04/schema#", - "type": "object", - "properties": { - "api_key": { - "type": "string", - "description": "Hubplanner API key. See here for more details.", - "airbyte_secret": true - } - } - }, - "supported_sync_modes": ["full_refresh"] - }, - "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite" - }, - { - "stream": { - "name": "bookings", - "json_schema": { - "$schema": "http://json-schema.org/draft-04/schema#", - "type": "object", - "properties": { - "api_key": { - "type": "string", - "description": "Hubplanner API key. See here for more details.", - "airbyte_secret": true - } - } - }, - "supported_sync_modes": ["full_refresh"] - }, - "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite" - }, - { - "stream": { - "name": "clients", - "json_schema": { - "$schema": "http://json-schema.org/draft-04/schema#", - "type": "object", - "properties": { - "api_key": { - "type": "string", - "description": "Hubplanner API key. See here for more details.", - "airbyte_secret": true - } - } - }, - "supported_sync_modes": ["full_refresh"] - }, - "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite" - }, - { - "stream": { - "name": "events", - "json_schema": { - "$schema": "http://json-schema.org/draft-04/schema#", - "type": "object", - "properties": { - "api_key": { - "type": "string", - "description": "Hubplanner API key. See here for more details.", - "airbyte_secret": true - } - } - }, - "supported_sync_modes": ["full_refresh"] - }, - "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite" - }, - { - "stream": { - "name": "holidays", - "json_schema": { - "$schema": "http://json-schema.org/draft-04/schema#", - "type": "object", - "properties": { - "api_key": { - "type": "string", - "description": "Hubplanner API key. See here for more details.", - "airbyte_secret": true - } - } - }, - "supported_sync_modes": ["full_refresh"] - }, - "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite" - }, - { - "stream": { - "name": "projects", - "json_schema": { - "$schema": "http://json-schema.org/draft-04/schema#", - "type": "object", - "properties": { - "api_key": { - "type": "string", - "description": "Hubplanner API key. See here for more details.", - "airbyte_secret": true - } - } - }, - "supported_sync_modes": ["full_refresh"] - }, - "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite" - }, - { - "stream": { - "name": "resources", - "json_schema": { - "$schema": "http://json-schema.org/draft-04/schema#", - "type": "object", - "properties": { - "api_key": { - "type": "string", - "description": "Hubplanner API key. See here for more details.", - "airbyte_secret": true - } - } - }, - "supported_sync_modes": ["full_refresh"] - }, - "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite" - } - ] -} diff --git a/airbyte-integrations/connectors/source-hubplanner/setup.py b/airbyte-integrations/connectors/source-hubplanner/setup.py index 0aa78f28fe34..5a7474d7c180 100644 --- a/airbyte-integrations/connectors/source-hubplanner/setup.py +++ b/airbyte-integrations/connectors/source-hubplanner/setup.py @@ -10,6 +10,7 @@ ] TEST_REQUIREMENTS = [ + "pytest~=6.2", "requests-mock~=1.9.3", "pytest~=6.1", "pytest-mock~=3.6.1", @@ -22,7 +23,7 @@ author_email="contact@airbyte.io", packages=find_packages(), install_requires=MAIN_REQUIREMENTS, - package_data={"": ["*.json", "schemas/*.json", "schemas/shared/*.json"]}, + package_data={"": ["*.json", "*.yaml", "schemas/*.json", "schemas/shared/*.json"]}, extras_require={ "tests": TEST_REQUIREMENTS, }, diff --git a/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/__init__.py b/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/__init__.py index 3bcd0c2b2b7a..3e8b2578cf36 100644 --- a/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/__init__.py +++ b/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/__init__.py @@ -1,5 +1,5 @@ # -# Copyright (c) 2021 Airbyte, Inc., all rights reserved. +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. # diff --git a/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/manifest.yaml b/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/manifest.yaml new file mode 100644 index 000000000000..984b017ebd8b --- /dev/null +++ b/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/manifest.yaml @@ -0,0 +1,108 @@ +version: "0.29.0" + +definitions: + selector: + type: RecordSelector + extractor: + type: DpathExtractor + field_path: [] + requester: + type: HttpRequester + url_base: "https://api.hubplanner.com/v1" + http_method: "GET" + authenticator: + type: ApiKeyAuthenticator + header: Authorization + api_token: "{{ config['api_key'] }}" + request_parameters: + limit: "100" + retriever: + type: SimpleRetriever + record_selector: + $ref: "#/definitions/selector" + paginator: + type: "DefaultPaginator" + pagination_strategy: + type: "PageIncrement" + page_size: 100 + page_token_option: + type: "RequestOption" + inject_into: "request_parameter" + field_name: "page" + requester: + $ref: "#/definitions/requester" + base_stream: + type: DeclarativeStream + retriever: + $ref: "#/definitions/retriever" + + billing_rates_stream: + $ref: "#/definitions/base_stream" + name: "billing_rates" + $parameters: + path: "billingRate" + + bookings_stream: + $ref: "#/definitions/base_stream" + name: "bookings" + $parameters: + path: "booking" + + clients_stream: + $ref: "#/definitions/base_stream" + name: "clients" + $parameters: + path: "client" + + events_stream: + $ref: "#/definitions/base_stream" + name: "events" + $parameters: + path: "event" + + holidays_stream: + $ref: "#/definitions/base_stream" + name: "holidays" + $parameters: + path: "holiday" + + projects_stream: + $ref: "#/definitions/base_stream" + name: "projects" + $parameters: + path: "project" + + resources_stream: + $ref: "#/definitions/base_stream" + name: "resources" + $parameters: + path: "resource" + +streams: + - "#/definitions/billing_rates_stream" + - "#/definitions/bookings_stream" + - "#/definitions/clients_stream" + - "#/definitions/events_stream" + - "#/definitions/holidays_stream" + - "#/definitions/projects_stream" + - "#/definitions/resources_stream" + +check: + type: CheckStream + stream_names: + - "billing_rates" + +spec: + type: Spec + documentation_url: https://docs.airbyte.com/integrations/sources/hubplanner + connection_specification: + title: Hubplanner Spec + type: object + required: + - api_key + additionalProperties: true + properties: + api_key: + type: string + description: Hubplanner API key. See https://github.com/hubplanner/API#authentication for more details. + airbyte_secret: true diff --git a/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/schemas/bookings.json b/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/schemas/bookings.json index d359bcf702a9..ec9db2e860c4 100644 --- a/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/schemas/bookings.json +++ b/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/schemas/bookings.json @@ -149,6 +149,12 @@ "lastUpdatedById": { "type": ["null", "string"] }, + "deletedById": { + "type": ["null", "string"] + }, + "billable": { + "type": ["null", "boolean"] + }, "backgroundColor": { "type": ["null", "string"] } diff --git a/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/schemas/projects.json b/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/schemas/projects.json index af3395edabc2..24e456bf861a 100644 --- a/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/schemas/projects.json +++ b/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/schemas/projects.json @@ -160,6 +160,36 @@ "metadata": { "type": ["null", "string"] }, + "defaultCategory": { + "type": ["null", "string"] + }, + "categoryGroups": { + "type": ["null", "array"], + "items": { + "type": ["null", "string"] + } + }, + "customers": { + "type": ["null", "array"], + "items": { + "type": ["null", "string"] + } + }, + "budgetCategories": { + "type": ["null", "array"], + "items": { + "type": ["null", "object"] + } + }, + "private": { + "type": ["null", "boolean"] + }, + "billable": { + "type": ["null", "boolean"] + }, + "fixedCosts": { + "type": ["null", "array"] + }, "customFields": { "items": { "properties": { diff --git a/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/schemas/resources.json b/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/schemas/resources.json index 1b123381b9cc..fc646a589cb0 100644 --- a/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/schemas/resources.json +++ b/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/schemas/resources.json @@ -39,6 +39,18 @@ "properties": {}, "type": ["null", "object"] }, + "billable": { + "type": ["null", "boolean"] + }, + "calendarIds": { + "type": ["null", "array"], + "items": { + "type": ["null", "string"] + } + }, + "isApprover": { + "type": ["null", "boolean"] + }, "billing": { "properties": { "useDefault": { diff --git a/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/source.py b/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/source.py index 0267c67e86c5..5266d29cbcc3 100644 --- a/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/source.py +++ b/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/source.py @@ -2,247 +2,17 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # +from airbyte_cdk.sources.declarative.yaml_declarative_source import YamlDeclarativeSource -from abc import ABC -from typing import Any, Iterable, List, Mapping, MutableMapping, Optional, Tuple +""" +This file provides the necessary constructs to interpret a provided declarative YAML configuration file into +source connector. -import requests -from airbyte_cdk.sources import AbstractSource -from airbyte_cdk.sources.streams import Stream -from airbyte_cdk.sources.streams.http import HttpStream -from airbyte_cdk.sources.streams.http.auth import HttpAuthenticator +WARNING: Do not modify this file. +""" -# Basic full refresh stream -class HubplannerStream(HttpStream, ABC): - - url_base = "https://api.hubplanner.com/v1" - - def next_page_token(self, response: requests.Response) -> Optional[Mapping[str, Any]]: - """ - TODO: Override this method to define a pagination strategy. If you will not be using pagination, no action is required - just return None. - - This method should return a Mapping (e.g: dict) containing whatever information required to make paginated requests. This dict is passed - to most other methods in this class to help you form headers, request bodies, query params, etc.. - - For example, if the API accepts a 'page' parameter to determine which page of the result to return, and a response from the API contains a - 'page' number, then this method should probably return a dict {'page': response.json()['page'] + 1} to increment the page count by 1. - The request_params method should then read the input next_page_token and set the 'page' param to next_page_token['page']. - - :param response: the most recent response from the API - :return If there is another page in the result, a mapping (e.g: dict) containing information needed to query the next page in the response. - If there are no more pages in the result, return None. - """ - return None - - def request_params( - self, stream_state: Mapping[str, Any], stream_slice: Mapping[str, any] = None, next_page_token: Mapping[str, Any] = None - ) -> MutableMapping[str, Any]: - """ - TODO: Override this method to define any query parameters to be set. Remove this method if you don't need to define request params. - Usually contains common params e.g. pagination size etc. - """ - return {} - - def parse_response(self, response: requests.Response, **kwargs) -> Iterable[Mapping]: - """ - TODO: Override this method to define how a response is parsed. - :return an iterable containing each record in the response - """ - yield {} - - -# Basic incremental stream -class IncrementalHubplannerStream(HubplannerStream, ABC): - """ - TODO fill in details of this class to implement functionality related to incremental syncs for your connector. - if you do not need to implement incremental sync for any streams, remove this class. - """ - - # TODO: Fill in to checkpoint stream reads after N records. This prevents re-reading of data if the stream fails for any reason. - state_checkpoint_interval = None - - @property - def cursor_field(self) -> str: - """ - TODO - Override to return the cursor field used by this stream e.g: an API entity might always use created_at as the cursor field. This is - usually id or date based. This field's presence tells the framework this in an incremental stream. Required for incremental. - - :return str: The name of the cursor field. - """ - return [] - - def get_updated_state(self, current_stream_state: MutableMapping[str, Any], latest_record: Mapping[str, Any]) -> Mapping[str, Any]: - """ - Override to determine the latest state after reading the latest record. This typically compared the cursor_field from the latest record and - the current state and picks the 'most' recent cursor. This is how a stream's state is determined. Required for incremental. - """ - return {} - - -class HubplannerAuthenticator(HttpAuthenticator): - def __init__(self, token: str, auth_header: str = "Authorization"): - self.auth_header = auth_header - self._token = token - - def get_auth_header(self) -> Mapping[str, Any]: - return {self.auth_header: f"{self._token}"} - - -class BillingRates(HubplannerStream): - primary_key = "_id" - - def path( - self, stream_state: Mapping[str, Any] = None, stream_slice: Mapping[str, Any] = None, next_page_token: Mapping[str, Any] = None - ) -> str: - return "v1/billingRate" - - def request_params( - self, stream_state: Mapping[str, Any], stream_slice: Mapping[str, any] = None, next_page_token: Mapping[str, Any] = None - ) -> MutableMapping[str, Any]: - return super().request_params(stream_state, stream_slice, next_page_token) - - def parse_response(self, response: requests.Response, **kwargs) -> Iterable[Mapping]: - return response.json() - - -class Bookings(HubplannerStream): - primary_key = "_id" - - def path( - self, stream_state: Mapping[str, Any] = None, stream_slice: Mapping[str, Any] = None, next_page_token: Mapping[str, Any] = None - ) -> str: - return "v1/booking" - - def request_params( - self, stream_state: Mapping[str, Any], stream_slice: Mapping[str, any] = None, next_page_token: Mapping[str, Any] = None - ) -> MutableMapping[str, Any]: - return super().request_params(stream_state, stream_slice, next_page_token) - - def parse_response(self, response: requests.Response, **kwargs) -> Iterable[Mapping]: - return response.json() - - -class Clients(HubplannerStream): - primary_key = "_id" - - def path( - self, stream_state: Mapping[str, Any] = None, stream_slice: Mapping[str, Any] = None, next_page_token: Mapping[str, Any] = None - ) -> str: - return "v1/client" - - def request_params( - self, stream_state: Mapping[str, Any], stream_slice: Mapping[str, any] = None, next_page_token: Mapping[str, Any] = None - ) -> MutableMapping[str, Any]: - return super().request_params(stream_state, stream_slice, next_page_token) - - def parse_response(self, response: requests.Response, **kwargs) -> Iterable[Mapping]: - return response.json() - - -class Events(HubplannerStream): - primary_key = "_id" - - def path( - self, stream_state: Mapping[str, Any] = None, stream_slice: Mapping[str, Any] = None, next_page_token: Mapping[str, Any] = None - ) -> str: - return "v1/event" - - def request_params( - self, stream_state: Mapping[str, Any], stream_slice: Mapping[str, any] = None, next_page_token: Mapping[str, Any] = None - ) -> MutableMapping[str, Any]: - return super().request_params(stream_state, stream_slice, next_page_token) - - def parse_response(self, response: requests.Response, **kwargs) -> Iterable[Mapping]: - return response.json() - - -class Holidays(HubplannerStream): - primary_key = "_id" - - def path( - self, stream_state: Mapping[str, Any] = None, stream_slice: Mapping[str, Any] = None, next_page_token: Mapping[str, Any] = None - ) -> str: - return "v1/holiday" - - def request_params( - self, stream_state: Mapping[str, Any], stream_slice: Mapping[str, any] = None, next_page_token: Mapping[str, Any] = None - ) -> MutableMapping[str, Any]: - return super().request_params(stream_state, stream_slice, next_page_token) - - def parse_response(self, response: requests.Response, **kwargs) -> Iterable[Mapping]: - return response.json() - - -class Projects(HubplannerStream): - primary_key = "_id" - - def path( - self, stream_state: Mapping[str, Any] = None, stream_slice: Mapping[str, Any] = None, next_page_token: Mapping[str, Any] = None - ) -> str: - return "v1/project" - - def request_params( - self, stream_state: Mapping[str, Any], stream_slice: Mapping[str, any] = None, next_page_token: Mapping[str, Any] = None - ) -> MutableMapping[str, Any]: - return super().request_params(stream_state, stream_slice, next_page_token) - - def parse_response(self, response: requests.Response, **kwargs) -> Iterable[Mapping]: - return response.json() - - -class Resources(HubplannerStream): - primary_key = "_id" - - def path( - self, stream_state: Mapping[str, Any] = None, stream_slice: Mapping[str, Any] = None, next_page_token: Mapping[str, Any] = None - ) -> str: - return "v1/resource" - - def request_params( - self, stream_state: Mapping[str, Any], stream_slice: Mapping[str, any] = None, next_page_token: Mapping[str, Any] = None - ) -> MutableMapping[str, Any]: - return super().request_params(stream_state, stream_slice, next_page_token) - - def parse_response(self, response: requests.Response, **kwargs) -> Iterable[Mapping]: - return response.json() - - -# Source -class SourceHubplanner(AbstractSource): - def check_connection(self, logger, config) -> Tuple[bool, any]: - """ - :param config: the user-input config object conforming to the connector's spec.json - :param logger: logger object - :return Tuple[bool, any]: (True, None) if the input config can be used to connect to the API successfully, (False, error) otherwise. - """ - - url_base = "https://api.hubplanner.com/v1" - - try: - url = f"{url_base}/project" - - authenticator = HubplannerAuthenticator(token=config["api_key"]) - - session = requests.get(url, headers=authenticator.get_auth_header()) - session.raise_for_status() - - return True, None - except requests.exceptions.RequestException as e: - return False, e - - def streams(self, config: Mapping[str, Any]) -> List[Stream]: - """ - :param config: A Mapping of the user input configuration as defined in the connector spec. - """ - authenticator = HubplannerAuthenticator(token=config["api_key"]) - return [ - BillingRates(authenticator=authenticator), - Bookings(authenticator=authenticator), - Clients(authenticator=authenticator), - Events(authenticator=authenticator), - Holidays(authenticator=authenticator), - Projects(authenticator=authenticator), - Resources(authenticator=authenticator), - ] +# Declarative Source +class SourceHubplanner(YamlDeclarativeSource): + def __init__(self): + super().__init__(**{"path_to_yaml": "manifest.yaml"}) diff --git a/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/spec.json b/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/spec.json deleted file mode 100644 index 97897dc9370a..000000000000 --- a/airbyte-integrations/connectors/source-hubplanner/source_hubplanner/spec.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "documentationUrl": "https://docs.airbyte.com/integrations/sources/hubplanner", - "connectionSpecification": { - "$schema": "http://json-schema.org/draft-07/schema#", - "title": "Hubplanner Spec", - "type": "object", - "required": ["api_key"], - "additionalProperties": true, - "properties": { - "api_key": { - "type": "string", - "description": "Hubplanner API key. See https://github.com/hubplanner/API#authentication for more details.", - "airbyte_secret": true - } - } - } -} diff --git a/airbyte-integrations/connectors/source-hubplanner/unit_tests/__init__.py b/airbyte-integrations/connectors/source-hubplanner/unit_tests/__init__.py deleted file mode 100644 index 46b7376756ec..000000000000 --- a/airbyte-integrations/connectors/source-hubplanner/unit_tests/__init__.py +++ /dev/null @@ -1,3 +0,0 @@ -# -# Copyright (c) 2021 Airbyte, Inc., all rights reserved. -# diff --git a/airbyte-integrations/connectors/source-hubplanner/unit_tests/test_source.py b/airbyte-integrations/connectors/source-hubplanner/unit_tests/test_source.py deleted file mode 100644 index 3412ccc3a1da..000000000000 --- a/airbyte-integrations/connectors/source-hubplanner/unit_tests/test_source.py +++ /dev/null @@ -1,15 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -from unittest.mock import MagicMock - -from source_hubplanner.source import SourceHubplanner - - -def test_streams(mocker): - source = SourceHubplanner() - config_mock = MagicMock() - streams = source.streams(config_mock) - expected_streams_number = 7 - assert len(streams) == expected_streams_number diff --git a/airbyte-integrations/connectors/source-hubplanner/unit_tests/test_streams.py b/airbyte-integrations/connectors/source-hubplanner/unit_tests/test_streams.py deleted file mode 100644 index f716cf012dbb..000000000000 --- a/airbyte-integrations/connectors/source-hubplanner/unit_tests/test_streams.py +++ /dev/null @@ -1,79 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -from http import HTTPStatus -from unittest.mock import MagicMock - -import pytest -from source_hubplanner.source import HubplannerStream - - -@pytest.fixture -def patch_base_class(mocker): - # Mock abstract methods to enable instantiating abstract class - mocker.patch.object(HubplannerStream, "path", "v0/example_endpoint") - mocker.patch.object(HubplannerStream, "primary_key", "test_primary_key") - mocker.patch.object(HubplannerStream, "__abstractmethods__", set()) - - -def test_request_params(patch_base_class): - stream = HubplannerStream() - inputs = {"stream_slice": None, "stream_state": None, "next_page_token": None} - expected_params = {} - assert stream.request_params(**inputs) == expected_params - - -def test_next_page_token(patch_base_class): - stream = HubplannerStream() - inputs = {"response": MagicMock()} - expected_token = None - assert stream.next_page_token(**inputs) == expected_token - - -def test_parse_response(patch_base_class): - stream = HubplannerStream() - # TODO: replace this with your input parameters - inputs = {"response": MagicMock()} - # TODO: replace this with your expected parced object - expected_parsed_object = {} - assert next(stream.parse_response(**inputs)) == expected_parsed_object - - -def test_request_headers(patch_base_class): - stream = HubplannerStream() - # TODO: replace this with your input parameters - inputs = {"stream_slice": None, "stream_state": None, "next_page_token": None} - # TODO: replace this with your expected request headers - expected_headers = {} - assert stream.request_headers(**inputs) == expected_headers - - -def test_http_method(patch_base_class): - stream = HubplannerStream() - # TODO: replace this with your expected http request method - expected_method = "GET" - assert stream.http_method == expected_method - - -@pytest.mark.parametrize( - ("http_status", "should_retry"), - [ - (HTTPStatus.OK, False), - (HTTPStatus.BAD_REQUEST, False), - (HTTPStatus.TOO_MANY_REQUESTS, True), - (HTTPStatus.INTERNAL_SERVER_ERROR, True), - ], -) -def test_should_retry(patch_base_class, http_status, should_retry): - response_mock = MagicMock() - response_mock.status_code = http_status - stream = HubplannerStream() - assert stream.should_retry(response_mock) == should_retry - - -def test_backoff_time(patch_base_class): - response_mock = MagicMock() - stream = HubplannerStream() - expected_backoff_time = None - assert stream.backoff_time(response_mock) == expected_backoff_time diff --git a/airbyte-integrations/connectors/source-hubspot/integration_tests/expected_records.jsonl b/airbyte-integrations/connectors/source-hubspot/integration_tests/expected_records.jsonl index e2fbf2217f1d..85aa962b9eaa 100644 --- a/airbyte-integrations/connectors/source-hubspot/integration_tests/expected_records.jsonl +++ b/airbyte-integrations/connectors/source-hubspot/integration_tests/expected_records.jsonl @@ -34,8 +34,8 @@ {"stream": "forms", "data": {"id": "0a7fd84f-471e-444a-a4e0-ca36d39f8af7", "name": "New form 27", "createdAt": "2023-02-13T16:45:22.640Z", "updatedAt": "2023-02-13T16:45:22.640Z", "archived": false, "fieldGroups": [{"groupType": "default_group", "richTextType": "text", "fields": [{"objectTypeId": "0-1", "name": "email", "label": "Email", "required": true, "hidden": false, "fieldType": "email", "validation": {"blockedEmailDomains": [], "useDefaultBlockList": false}}]}], "configuration": {"language": "en", "cloneable": true, "postSubmitAction": {"type": "thank_you", "value": "Thanks for submitting the form."}, "editable": true, "archivable": true, "recaptchaEnabled": false, "notifyContactOwner": false, "notifyRecipients": ["12282590"], "createNewContactForNewEmail": false, "prePopulateKnownValues": true, "allowLinkToResetKnownValues": false}, "displayOptions": {"renderRawHtml": false, "theme": "default_style", "submitButtonText": "Submit", "style": {"fontFamily": "arial, helvetica, sans-serif", "backgroundWidth": "100%", "labelTextColor": "#33475b", "labelTextSize": "14px", "helpTextColor": "#7C98B6", "helpTextSize": "11px", "legalConsentTextColor": "#33475b", "legalConsentTextSize": "14px", "submitColor": "#ff7a59", "submitAlignment": "left", "submitFontColor": "#ffffff", "submitSize": "12px"}, "cssClass": "hs-form stacked"}, "legalConsentOptions": {"type": "implicit_consent_to_process", "communicationConsentText": "integrationtest is committed to protecting and respecting your privacy, and we\u2019ll only use your personal information to administer your account and to provide the products and services you requested from us. From time to time, we would like to contact you about our products and services, as well as other content that may be of interest to you. If you consent to us contacting you for this purpose, please tick below to say how you would like us to contact you:", "communicationsCheckboxes": [{"required": false, "subscriptionTypeId": 23704464, "label": "I agree to receive other communications from [MAIN] integration test account."}], "privacyText": "You may unsubscribe from these communications at any time. For more information on how to unsubscribe, our privacy practices, and how we are committed to protecting and respecting your privacy, please review our Privacy Policy.", "consentToProcessText": "By clicking submit below, you consent to allow integrationtest to store and process the personal information submitted above to provide you the content requested."}, "formType": "hubspot"}, "emitted_at": 1685387195425} {"stream": "forms", "data": {"id": "0bf0c00f-e68d-4de2-8cd9-d9b04e41072f", "name": "New form 55", "createdAt": "2023-02-13T16:50:27.345Z", "updatedAt": "2023-02-13T16:50:27.345Z", "archived": false, "fieldGroups": [{"groupType": "default_group", "richTextType": "text", "fields": [{"objectTypeId": "0-1", "name": "email", "label": "Email", "required": true, "hidden": false, "fieldType": "email", "validation": {"blockedEmailDomains": [], "useDefaultBlockList": false}}]}], "configuration": {"language": "en", "cloneable": true, "postSubmitAction": {"type": "thank_you", "value": "Thanks for submitting the form."}, "editable": true, "archivable": true, "recaptchaEnabled": false, "notifyContactOwner": false, "notifyRecipients": ["12282590"], "createNewContactForNewEmail": false, "prePopulateKnownValues": true, "allowLinkToResetKnownValues": false}, "displayOptions": {"renderRawHtml": false, "theme": "default_style", "submitButtonText": "Submit", "style": {"fontFamily": "arial, helvetica, sans-serif", "backgroundWidth": "100%", "labelTextColor": "#33475b", "labelTextSize": "14px", "helpTextColor": "#7C98B6", "helpTextSize": "11px", "legalConsentTextColor": "#33475b", "legalConsentTextSize": "14px", "submitColor": "#ff7a59", "submitAlignment": "left", "submitFontColor": "#ffffff", "submitSize": "12px"}, "cssClass": "hs-form stacked"}, "legalConsentOptions": {"type": "implicit_consent_to_process", "communicationConsentText": "integrationtest is committed to protecting and respecting your privacy, and we\u2019ll only use your personal information to administer your account and to provide the products and services you requested from us. From time to time, we would like to contact you about our products and services, as well as other content that may be of interest to you. If you consent to us contacting you for this purpose, please tick below to say how you would like us to contact you:", "communicationsCheckboxes": [{"required": false, "subscriptionTypeId": 23704464, "label": "I agree to receive other communications from [MAIN] integration test account."}], "privacyText": "You may unsubscribe from these communications at any time. For more information on how to unsubscribe, our privacy practices, and how we are committed to protecting and respecting your privacy, please review our Privacy Policy.", "consentToProcessText": "By clicking submit below, you consent to allow integrationtest to store and process the personal information submitted above to provide you the content requested."}, "formType": "hubspot"}, "emitted_at": 1685387195425} {"stream": "goals", "data": {"id": "221880757009", "properties": {"hs__migration_soft_delete": null, "hs_ad_account_asset_ids": null, "hs_ad_campaign_asset_ids": null, "hs_all_accessible_team_ids": null, "hs_all_assigned_business_unit_ids": null, "hs_all_owner_ids": null, "hs_all_team_ids": null, "hs_assignee_team_id": null, "hs_assignee_user_id": 26748728, "hs_contact_lifecycle_stage": null, "hs_created_by_user_id": 12282590, "hs_createdate": "2023-04-10T13:57:36.691000+00:00", "hs_currency": null, "hs_deal_pipeline_ids": null, "hs_edit_updates_notification_frequency": "weekly", "hs_end_date": null, "hs_end_datetime": "2023-07-31T23:59:59.999000+00:00", "hs_fiscal_year_offset": 0, "hs_goal_name": "Integration Test Goal Hubspot", "hs_goal_target_group_id": 221880750627, "hs_goal_type": "average_ticket_response_time", "hs_group_correlation_uuid": "5c49f251-be20-43c6-87c7-dd273732b3a4", "hs_is_forecastable": "true", "hs_is_legacy": null, "hs_kpi_display_unit": "hour", "hs_kpi_filter_groups": "[{\"filters\":[{\"property\":\"hs_pipeline\",\"operator\":\"IN\",\"values\":[\"0\"]},{\"property\":\"hubspot_owner_id\",\"operator\":\"EQ\",\"value\":\"111730024\"}]}]", "hs_kpi_metric_type": "AVG", "hs_kpi_object_type": "TICKET", "hs_kpi_object_type_id": "0-5", "hs_kpi_progress_percent": null, "hs_kpi_property_name": "time_to_first_agent_reply", "hs_kpi_single_object_custom_goal_type_name": "avg_time_to_first_agent_reply_0-5", "hs_kpi_time_period_property": "createdate", "hs_kpi_tracking_method": "LOWER_IS_BETTER", "hs_kpi_unit_type": "duration", "hs_kpi_value": 0.0, "hs_kpi_value_calculated_at": null, "hs_kpi_value_last_calculated_at": "2023-08-01T00:45:14.830000+00:00", "hs_lastmodifieddate": "2023-08-18T14:59:25.726000+00:00", "hs_legacy_active": null, "hs_legacy_created_at": null, "hs_legacy_created_by": null, "hs_legacy_quarterly_target_composite_id": null, "hs_legacy_sql_id": null, "hs_legacy_unique_sql_id": null, "hs_legacy_updated_at": null, "hs_legacy_updated_by": null, "hs_merged_object_ids": null, "hs_migration_soft_delete": null, "hs_milestone": "monthly", "hs_object_id": 221880757009, "hs_object_source": null, "hs_object_source_id": null, "hs_object_source_user_id": null, "hs_outcome": "completed", "hs_owner_ids_of_all_owners": "111730024", "hs_participant_type": "users", "hs_pipelines": "0", "hs_progress_updates_notification_frequency": "weekly", "hs_read_only": null, "hs_should_notify_on_achieved": "false", "hs_should_notify_on_edit_updates": "false", "hs_should_notify_on_exceeded": "false", "hs_should_notify_on_kickoff": "false", "hs_should_notify_on_missed": "false", "hs_should_notify_on_progress_updates": "false", "hs_should_recalculate": "false", "hs_start_date": null, "hs_start_datetime": "2023-07-01T00:00:00+00:00", "hs_static_kpi_filter_groups": "[]", "hs_status": "achieved", "hs_status_display_order": 4, "hs_target_amount": 0.0, "hs_target_amount_in_home_currency": 0.0, "hs_team_id": null, "hs_ticket_pipeline_ids": "0", "hs_unique_creation_key": null, "hs_updated_by_user_id": 12282590, "hs_user_id": null, "hs_user_ids_of_all_notification_followers": null, "hs_user_ids_of_all_notification_unfollowers": null, "hs_user_ids_of_all_owners": "26748728", "hs_was_imported": null, "hubspot_owner_assigneddate": null, "hubspot_owner_id": null, "hubspot_team_id": null}, "createdAt": "2023-04-10T13:57:36.691Z", "updatedAt": "2023-08-18T14:59:25.726Z", "archived": false}, "emitted_at": 1692530575531} -{"stream": "goals", "data": {"id": "221880757010", "properties": {"hs__migration_soft_delete": null, "hs_ad_account_asset_ids": null, "hs_ad_campaign_asset_ids": null, "hs_all_accessible_team_ids": null, "hs_all_assigned_business_unit_ids": null, "hs_all_owner_ids": null, "hs_all_team_ids": null, "hs_assignee_team_id": null, "hs_assignee_user_id": 26748728, "hs_contact_lifecycle_stage": null, "hs_created_by_user_id": 12282590, "hs_createdate": "2023-04-10T13:57:36.691000+00:00", "hs_currency": null, "hs_deal_pipeline_ids": null, "hs_edit_updates_notification_frequency": "weekly", "hs_end_date": null, "hs_end_datetime": "2023-09-30T23:59:59.999000+00:00", "hs_fiscal_year_offset": 0, "hs_goal_name": "Integration Test Goal Hubspot", "hs_goal_target_group_id": 221880750627, "hs_goal_type": "average_ticket_response_time", "hs_group_correlation_uuid": "5c49f251-be20-43c6-87c7-dd273732b3a4", "hs_is_forecastable": "true", "hs_is_legacy": null, "hs_kpi_display_unit": "hour", "hs_kpi_filter_groups": "[{\"filters\":[{\"property\":\"hs_pipeline\",\"operator\":\"IN\",\"values\":[\"0\"]},{\"property\":\"hubspot_owner_id\",\"operator\":\"EQ\",\"value\":\"111730024\"}]}]", "hs_kpi_metric_type": "AVG", "hs_kpi_object_type": "TICKET", "hs_kpi_object_type_id": "0-5", "hs_kpi_progress_percent": null, "hs_kpi_property_name": "time_to_first_agent_reply", "hs_kpi_single_object_custom_goal_type_name": "avg_time_to_first_agent_reply_0-5", "hs_kpi_time_period_property": "createdate", "hs_kpi_tracking_method": "LOWER_IS_BETTER", "hs_kpi_unit_type": "duration", "hs_kpi_value": 0.0, "hs_kpi_value_calculated_at": null, "hs_kpi_value_last_calculated_at": "2023-04-10T22:31:22.345000+00:00", "hs_lastmodifieddate": "2023-08-18T14:59:25.726000+00:00", "hs_legacy_active": null, "hs_legacy_created_at": null, "hs_legacy_created_by": null, "hs_legacy_quarterly_target_composite_id": null, "hs_legacy_sql_id": null, "hs_legacy_unique_sql_id": null, "hs_legacy_updated_at": null, "hs_legacy_updated_by": null, "hs_merged_object_ids": null, "hs_migration_soft_delete": null, "hs_milestone": "monthly", "hs_object_id": 221880757010, "hs_object_source": null, "hs_object_source_id": null, "hs_object_source_user_id": null, "hs_outcome": "in_progress", "hs_owner_ids_of_all_owners": "111730024", "hs_participant_type": "users", "hs_pipelines": "0", "hs_progress_updates_notification_frequency": "weekly", "hs_read_only": null, "hs_should_notify_on_achieved": "false", "hs_should_notify_on_edit_updates": "false", "hs_should_notify_on_exceeded": "false", "hs_should_notify_on_kickoff": "false", "hs_should_notify_on_missed": "false", "hs_should_notify_on_progress_updates": "false", "hs_should_recalculate": "false", "hs_start_date": null, "hs_start_datetime": "2023-09-01T00:00:00+00:00", "hs_static_kpi_filter_groups": "[]", "hs_status": "pending", "hs_status_display_order": 5, "hs_target_amount": 0.0, "hs_target_amount_in_home_currency": 0.0, "hs_team_id": null, "hs_ticket_pipeline_ids": "0", "hs_unique_creation_key": null, "hs_updated_by_user_id": 12282590, "hs_user_id": null, "hs_user_ids_of_all_notification_followers": null, "hs_user_ids_of_all_notification_unfollowers": null, "hs_user_ids_of_all_owners": "26748728", "hs_was_imported": null, "hubspot_owner_assigneddate": null, "hubspot_owner_id": null, "hubspot_team_id": null}, "createdAt": "2023-04-10T13:57:36.691Z", "updatedAt": "2023-08-18T14:59:25.726Z", "archived": false}, "emitted_at": 1692530575532} -{"stream": "goals", "data": {"id": "221880757011", "properties": {"hs__migration_soft_delete": null, "hs_ad_account_asset_ids": null, "hs_ad_campaign_asset_ids": null, "hs_all_accessible_team_ids": null, "hs_all_assigned_business_unit_ids": null, "hs_all_owner_ids": null, "hs_all_team_ids": null, "hs_assignee_team_id": null, "hs_assignee_user_id": 26748728, "hs_contact_lifecycle_stage": null, "hs_created_by_user_id": 12282590, "hs_createdate": "2023-04-10T13:57:36.691000+00:00", "hs_currency": null, "hs_deal_pipeline_ids": null, "hs_edit_updates_notification_frequency": "weekly", "hs_end_date": null, "hs_end_datetime": "2023-08-31T23:59:59.999000+00:00", "hs_fiscal_year_offset": 0, "hs_goal_name": "Integration Test Goal Hubspot", "hs_goal_target_group_id": 221880750627, "hs_goal_type": "average_ticket_response_time", "hs_group_correlation_uuid": "5c49f251-be20-43c6-87c7-dd273732b3a4", "hs_is_forecastable": "true", "hs_is_legacy": null, "hs_kpi_display_unit": "hour", "hs_kpi_filter_groups": "[{\"filters\":[{\"property\":\"hs_pipeline\",\"operator\":\"IN\",\"values\":[\"0\"]},{\"property\":\"hubspot_owner_id\",\"operator\":\"EQ\",\"value\":\"111730024\"}]}]", "hs_kpi_metric_type": "AVG", "hs_kpi_object_type": "TICKET", "hs_kpi_object_type_id": "0-5", "hs_kpi_progress_percent": null, "hs_kpi_property_name": "time_to_first_agent_reply", "hs_kpi_single_object_custom_goal_type_name": "avg_time_to_first_agent_reply_0-5", "hs_kpi_time_period_property": "createdate", "hs_kpi_tracking_method": "LOWER_IS_BETTER", "hs_kpi_unit_type": "duration", "hs_kpi_value": 0.0, "hs_kpi_value_calculated_at": null, "hs_kpi_value_last_calculated_at": "2023-08-19T22:11:13.040000+00:00", "hs_lastmodifieddate": "2023-08-19T22:11:13.080000+00:00", "hs_legacy_active": null, "hs_legacy_created_at": null, "hs_legacy_created_by": null, "hs_legacy_quarterly_target_composite_id": null, "hs_legacy_sql_id": null, "hs_legacy_unique_sql_id": null, "hs_legacy_updated_at": null, "hs_legacy_updated_by": null, "hs_merged_object_ids": null, "hs_migration_soft_delete": null, "hs_milestone": "monthly", "hs_object_id": 221880757011, "hs_object_source": null, "hs_object_source_id": null, "hs_object_source_user_id": null, "hs_outcome": "in_progress", "hs_owner_ids_of_all_owners": "111730024", "hs_participant_type": "users", "hs_pipelines": "0", "hs_progress_updates_notification_frequency": "weekly", "hs_read_only": null, "hs_should_notify_on_achieved": "false", "hs_should_notify_on_edit_updates": "false", "hs_should_notify_on_exceeded": "false", "hs_should_notify_on_kickoff": "false", "hs_should_notify_on_missed": "false", "hs_should_notify_on_progress_updates": "false", "hs_should_recalculate": "false", "hs_start_date": null, "hs_start_datetime": "2023-08-01T00:00:00+00:00", "hs_static_kpi_filter_groups": "[]", "hs_status": "in_progress", "hs_status_display_order": 1, "hs_target_amount": 0.0, "hs_target_amount_in_home_currency": 0.0, "hs_team_id": null, "hs_ticket_pipeline_ids": "0", "hs_unique_creation_key": null, "hs_updated_by_user_id": 12282590, "hs_user_id": null, "hs_user_ids_of_all_notification_followers": null, "hs_user_ids_of_all_notification_unfollowers": null, "hs_user_ids_of_all_owners": "26748728", "hs_was_imported": null, "hubspot_owner_assigneddate": null, "hubspot_owner_id": null, "hubspot_team_id": null}, "createdAt": "2023-04-10T13:57:36.691Z", "updatedAt": "2023-08-19T22:11:13.080Z", "archived": false}, "emitted_at": 1692530575532} +{"stream": "goals", "data": {"id": "221880757010", "properties": {"hs__migration_soft_delete": null, "hs_ad_account_asset_ids": null, "hs_ad_campaign_asset_ids": null, "hs_all_accessible_team_ids": null, "hs_all_assigned_business_unit_ids": null, "hs_all_owner_ids": null, "hs_all_team_ids": null, "hs_assignee_team_id": null, "hs_assignee_user_id": 26748728, "hs_contact_lifecycle_stage": null, "hs_created_by_user_id": 12282590, "hs_createdate": "2023-04-10T13:57:36.691000+00:00", "hs_currency": null, "hs_deal_pipeline_ids": null, "hs_edit_updates_notification_frequency": "weekly", "hs_end_date": null, "hs_end_datetime": "2023-09-30T23:59:59.999000+00:00", "hs_fiscal_year_offset": 0, "hs_goal_name": "Integration Test Goal Hubspot", "hs_goal_target_group_id": 221880750627, "hs_goal_type": "average_ticket_response_time", "hs_group_correlation_uuid": "5c49f251-be20-43c6-87c7-dd273732b3a4", "hs_is_forecastable": "true", "hs_is_legacy": null, "hs_kpi_display_unit": "hour", "hs_kpi_filter_groups": "[{\"filters\":[{\"property\":\"hs_pipeline\",\"operator\":\"IN\",\"values\":[\"0\"]},{\"property\":\"hubspot_owner_id\",\"operator\":\"EQ\",\"value\":\"111730024\"}]}]", "hs_kpi_metric_type": "AVG", "hs_kpi_object_type": "TICKET", "hs_kpi_object_type_id": "0-5", "hs_kpi_progress_percent": null, "hs_kpi_property_name": "time_to_first_agent_reply", "hs_kpi_single_object_custom_goal_type_name": "avg_time_to_first_agent_reply_0-5", "hs_kpi_time_period_property": "createdate", "hs_kpi_tracking_method": "LOWER_IS_BETTER", "hs_kpi_unit_type": "duration", "hs_kpi_value": 0.0, "hs_kpi_value_calculated_at": null, "hs_kpi_value_last_calculated_at": "2023-09-05T22:31:41.442000+00:00", "hs_lastmodifieddate": "2023-09-05T22:31:41.494000+00:00", "hs_legacy_active": null, "hs_legacy_created_at": null, "hs_legacy_created_by": null, "hs_legacy_quarterly_target_composite_id": null, "hs_legacy_sql_id": null, "hs_legacy_unique_sql_id": null, "hs_legacy_updated_at": null, "hs_legacy_updated_by": null, "hs_merged_object_ids": null, "hs_migration_soft_delete": null, "hs_milestone": "monthly", "hs_object_id": 221880757010, "hs_object_source": null, "hs_object_source_id": null, "hs_object_source_user_id": null, "hs_outcome": "in_progress", "hs_owner_ids_of_all_owners": "111730024", "hs_participant_type": "users", "hs_pipelines": "0", "hs_progress_updates_notification_frequency": "weekly", "hs_read_only": null, "hs_should_notify_on_achieved": "false", "hs_should_notify_on_edit_updates": "false", "hs_should_notify_on_exceeded": "false", "hs_should_notify_on_kickoff": "false", "hs_should_notify_on_missed": "false", "hs_should_notify_on_progress_updates": "false", "hs_should_recalculate": "false", "hs_start_date": null, "hs_start_datetime": "2023-09-01T00:00:00+00:00", "hs_static_kpi_filter_groups": "[]", "hs_status": "in_progress", "hs_status_display_order": 1, "hs_target_amount": 0.0, "hs_target_amount_in_home_currency": 0.0, "hs_team_id": null, "hs_ticket_pipeline_ids": "0", "hs_unique_creation_key": null, "hs_updated_by_user_id": 12282590, "hs_user_id": null, "hs_user_ids_of_all_notification_followers": null, "hs_user_ids_of_all_notification_unfollowers": null, "hs_user_ids_of_all_owners": "26748728", "hs_was_imported": null, "hubspot_owner_assigneddate": null, "hubspot_owner_id": null, "hubspot_team_id": null}, "createdAt": "2023-04-10T13:57:36.691Z", "updatedAt": "2023-09-05T22:31:41.494Z", "archived": false}, "emitted_at": 1693998129101} +{"stream": "goals", "data": {"id": "221880757011", "properties": {"hs__migration_soft_delete": null, "hs_ad_account_asset_ids": null, "hs_ad_campaign_asset_ids": null, "hs_all_accessible_team_ids": null, "hs_all_assigned_business_unit_ids": null, "hs_all_owner_ids": null, "hs_all_team_ids": null, "hs_assignee_team_id": null, "hs_assignee_user_id": 26748728, "hs_contact_lifecycle_stage": null, "hs_created_by_user_id": 12282590, "hs_createdate": "2023-04-10T13:57:36.691000+00:00", "hs_currency": null, "hs_deal_pipeline_ids": null, "hs_edit_updates_notification_frequency": "weekly", "hs_end_date": null, "hs_end_datetime": "2023-08-31T23:59:59.999000+00:00", "hs_fiscal_year_offset": 0, "hs_goal_name": "Integration Test Goal Hubspot", "hs_goal_target_group_id": 221880750627, "hs_goal_type": "average_ticket_response_time", "hs_group_correlation_uuid": "5c49f251-be20-43c6-87c7-dd273732b3a4", "hs_is_forecastable": "true", "hs_is_legacy": null, "hs_kpi_display_unit": "hour", "hs_kpi_filter_groups": "[{\"filters\":[{\"property\":\"hs_pipeline\",\"operator\":\"IN\",\"values\":[\"0\"]},{\"property\":\"hubspot_owner_id\",\"operator\":\"EQ\",\"value\":\"111730024\"}]}]", "hs_kpi_metric_type": "AVG", "hs_kpi_object_type": "TICKET", "hs_kpi_object_type_id": "0-5", "hs_kpi_progress_percent": null, "hs_kpi_property_name": "time_to_first_agent_reply", "hs_kpi_single_object_custom_goal_type_name": "avg_time_to_first_agent_reply_0-5", "hs_kpi_time_period_property": "createdate", "hs_kpi_tracking_method": "LOWER_IS_BETTER", "hs_kpi_unit_type": "duration", "hs_kpi_value": 0.0, "hs_kpi_value_calculated_at": null, "hs_kpi_value_last_calculated_at": "2023-09-01T15:26:00.500000+00:00", "hs_lastmodifieddate": "2023-09-01T15:26:00.599000+00:00", "hs_legacy_active": null, "hs_legacy_created_at": null, "hs_legacy_created_by": null, "hs_legacy_quarterly_target_composite_id": null, "hs_legacy_sql_id": null, "hs_legacy_unique_sql_id": null, "hs_legacy_updated_at": null, "hs_legacy_updated_by": null, "hs_merged_object_ids": null, "hs_migration_soft_delete": null, "hs_milestone": "monthly", "hs_object_id": 221880757011, "hs_object_source": null, "hs_object_source_id": null, "hs_object_source_user_id": null, "hs_outcome": "completed", "hs_owner_ids_of_all_owners": "111730024", "hs_participant_type": "users", "hs_pipelines": "0", "hs_progress_updates_notification_frequency": "weekly", "hs_read_only": null, "hs_should_notify_on_achieved": "false", "hs_should_notify_on_edit_updates": "false", "hs_should_notify_on_exceeded": "false", "hs_should_notify_on_kickoff": "false", "hs_should_notify_on_missed": "false", "hs_should_notify_on_progress_updates": "false", "hs_should_recalculate": "false", "hs_start_date": null, "hs_start_datetime": "2023-08-01T00:00:00+00:00", "hs_static_kpi_filter_groups": "[]", "hs_status": "achieved", "hs_status_display_order": 4, "hs_target_amount": 0.0, "hs_target_amount_in_home_currency": 0.0, "hs_team_id": null, "hs_ticket_pipeline_ids": "0", "hs_unique_creation_key": null, "hs_updated_by_user_id": 12282590, "hs_user_id": null, "hs_user_ids_of_all_notification_followers": null, "hs_user_ids_of_all_notification_unfollowers": null, "hs_user_ids_of_all_owners": "26748728", "hs_was_imported": null, "hubspot_owner_assigneddate": null, "hubspot_owner_id": null, "hubspot_team_id": null}, "createdAt": "2023-04-10T13:57:36.691Z", "updatedAt": "2023-09-01T15:26:00.599Z", "archived": false}, "emitted_at": 1693998129101} {"stream": "line_items", "data": {"id": "4617680695", "properties": {"amount": 34.0, "createdate": "2023-01-31T00:31:29.812000+00:00", "description": null, "discount": null, "hs_acv": 34.0, "hs_all_accessible_team_ids": null, "hs_all_assigned_business_unit_ids": null, "hs_all_owner_ids": null, "hs_all_team_ids": null, "hs_allow_buyer_selected_quantity": null, "hs_arr": 0.0, "hs_billing_start_delay_days": null, "hs_billing_start_delay_months": null, "hs_billing_start_delay_type": null, "hs_cost_of_goods_sold": null, "hs_created_by_user_id": 12282590, "hs_createdate": null, "hs_discount_percentage": null, "hs_external_id": null, "hs_images": null, "hs_lastmodifieddate": "2023-01-31T00:31:29.812000+00:00", "hs_line_item_currency_code": null, "hs_margin": 34.0, "hs_margin_acv": 34.0, "hs_margin_arr": 0.0, "hs_margin_mrr": 0.0, "hs_margin_tcv": 34.0, "hs_merged_object_ids": null, "hs_mrr": 0.0, "hs_object_id": 4617680695, "hs_object_source": null, "hs_object_source_id": null, "hs_object_source_user_id": null, "hs_position_on_quote": 0, "hs_pre_discount_amount": 34.0, "hs_product_id": null, "hs_product_type": null, "hs_read_only": null, "hs_recurring_billing_end_date": null, "hs_recurring_billing_number_of_payments": 1, "hs_recurring_billing_period": null, "hs_recurring_billing_start_date": null, "hs_recurring_billing_terms": null, "hs_sku": null, "hs_sync_amount": null, "hs_tcv": 34.0, "hs_term_in_months": null, "hs_total_discount": 0.0, "hs_unique_creation_key": null, "hs_updated_by_user_id": 12282590, "hs_url": null, "hs_user_ids_of_all_notification_followers": null, "hs_user_ids_of_all_notification_unfollowers": null, "hs_user_ids_of_all_owners": null, "hs_variant_id": null, "hs_was_imported": null, "hubspot_owner_assigneddate": null, "hubspot_owner_id": null, "hubspot_team_id": null, "name": "test", "price": 34, "quantity": 1, "recurringbillingfrequency": null, "tax": null, "test": null, "test_product_price": null}, "createdAt": "2023-01-31T00:31:29.812Z", "updatedAt": "2023-01-31T00:31:29.812Z", "archived": false}, "emitted_at": 1689697250135} {"stream": "line_items", "data": {"id": "5153237390", "properties": {"amount": 95.0, "createdate": "2023-04-04T21:28:36.663000+00:00", "description": "Baseball hat, medium", "discount": 5, "hs_acv": 95.0, "hs_all_accessible_team_ids": null, "hs_all_assigned_business_unit_ids": null, "hs_all_owner_ids": null, "hs_all_team_ids": null, "hs_allow_buyer_selected_quantity": null, "hs_arr": 0.0, "hs_billing_start_delay_days": null, "hs_billing_start_delay_months": null, "hs_billing_start_delay_type": null, "hs_cost_of_goods_sold": 5, "hs_created_by_user_id": 12282590, "hs_createdate": null, "hs_discount_percentage": null, "hs_external_id": null, "hs_images": null, "hs_lastmodifieddate": "2023-04-04T21:28:36.663000+00:00", "hs_line_item_currency_code": null, "hs_margin": 90.0, "hs_margin_acv": 90.0, "hs_margin_arr": 0.0, "hs_margin_mrr": 0.0, "hs_margin_tcv": 90.0, "hs_merged_object_ids": null, "hs_mrr": 0.0, "hs_object_id": 5153237390, "hs_object_source": null, "hs_object_source_id": null, "hs_object_source_user_id": null, "hs_position_on_quote": 0, "hs_pre_discount_amount": 100.0, "hs_product_id": 646778218, "hs_product_type": null, "hs_read_only": null, "hs_recurring_billing_end_date": null, "hs_recurring_billing_number_of_payments": 1, "hs_recurring_billing_period": null, "hs_recurring_billing_start_date": null, "hs_recurring_billing_terms": null, "hs_sku": null, "hs_sync_amount": null, "hs_tcv": 95.0, "hs_term_in_months": null, "hs_total_discount": 5.0, "hs_unique_creation_key": null, "hs_updated_by_user_id": 12282590, "hs_url": null, "hs_user_ids_of_all_notification_followers": null, "hs_user_ids_of_all_notification_unfollowers": null, "hs_user_ids_of_all_owners": null, "hs_variant_id": null, "hs_was_imported": null, "hubspot_owner_assigneddate": null, "hubspot_owner_id": null, "hubspot_team_id": null, "name": "Blue Hat", "price": 100, "quantity": 1, "recurringbillingfrequency": null, "tax": null, "test": null, "test_product_price": null}, "createdAt": "2023-04-04T21:28:36.663Z", "updatedAt": "2023-04-04T21:28:36.663Z", "archived": false}, "emitted_at": 1689697250136} {"stream":"marketing_emails","data":{"ab":false,"abHoursToWait":4,"abSampleSizeDefault":null,"abSamplingDefault":null,"abSuccessMetric":null,"abTestPercentage":50,"abVariation":false,"absoluteUrl":"http://integrationtest-dev-8727216-8727216.hs-sites.com/-temporary-slug-86812db1-e3c8-43cd-ae80-69a0934cd1de","allEmailCampaignIds":[243851494],"analyticsPageId":"100523515217","analyticsPageType":"email","archivedAt":0,"archivedInDashboard":false,"audienceAccess":"PUBLIC","author":"integration-test@airbyte.io","authorName":"Team-1 Airbyte","blogRssSettings":null,"canSpamSettingsId":36765207029,"categoryId":2,"contentAccessRuleIds":[],"contentAccessRuleTypes":[],"contentTypeCategory":2,"createPage":false,"created":1675121582718,"createdById":12282590,"currentState":"PUBLISHED","currentlyPublished":true,"customReplyTo":"","customReplyToEnabled":false,"domain":"","emailBody":"{% content_attribute \"email_body\" %}{{ default_email_body }}{% end_content_attribute %}","emailNote":"","emailTemplateMode":"DRAG_AND_DROP","emailType":"BATCH_EMAIL","emailbodyPlaintext":"","feedbackSurveyId":null,"flexAreas":{"main":{"boxed":false,"isSingleColumnFullWidth":false,"sections":[{"columns":[{"id":"column-0-0","widgets":["module-0-0-0"],"width":12}],"id":"section-0","style":{"backgroundColor":"#eaf0f6","backgroundType":"CONTENT","paddingBottom":"10px","paddingTop":"10px"}},{"columns":[{"id":"column-1-0","widgets":["module-1-0-0"],"width":12}],"id":"section-1","style":{"backgroundType":"CONTENT","paddingBottom":"30px","paddingTop":"30px"}},{"columns":[{"id":"column-2-0","widgets":["module-2-0-0"],"width":12}],"id":"section-2","style":{"backgroundColor":"","backgroundType":"CONTENT","paddingBottom":"20px","paddingTop":"20px"}}]}},"freezeDate":1675121645993,"fromName":"Team Airbyte","hasContentAccessRules":false,"htmlTitle":"","id":100523515217,"isCreatedFomSandboxSync":false,"isGraymailSuppressionEnabled":true,"isInstanceLayoutPage":false,"isPublished":true,"isRecipientFatigueSuppressionEnabled":null,"language":"en","layoutSections":{},"liveDomain":"integrationtest-dev-8727216-8727216.hs-sites.com","mailingListsExcluded":[],"mailingListsIncluded":[],"maxRssEntries":5,"metaDescription":"","name":"test","pageExpiryEnabled":false,"pageRedirected":false,"pastMabExperimentIds":[],"portalId":8727216,"previewKey":"nlkwziGL","primaryEmailCampaignId":243851494,"processingStatus":"PUBLISHED","publishDate":1675121645997,"publishImmediately":true,"publishedAt":1675121646297,"publishedByEmail":"integration-test@airbyte.io","publishedById":12282590,"publishedByName":"Team-1 Airbyte","publishedUrl":"http://integrationtest-dev-8727216-8727216.hs-sites.com/-temporary-slug-86812db1-e3c8-43cd-ae80-69a0934cd1de","replyTo":"integration-test@airbyte.io","resolvedDomain":"integrationtest-dev-8727216-8727216.hs-sites.com","rssEmailByText":"By","rssEmailClickThroughText":"Read more »","rssEmailCommentText":"Comment »","rssEmailEntryTemplateEnabled":false,"rssEmailImageMaxWidth":0,"rssEmailUrl":"","sections":{},"securityState":"NONE","selected":0,"slug":"-temporary-slug-86812db1-e3c8-43cd-ae80-69a0934cd1de","smartEmailFields":{},"state":"PUBLISHED","stats":{"counters":{"sent":0,"open":0,"delivered":0,"bounce":0,"unsubscribed":0,"click":0,"reply":0,"dropped":1,"selected":1,"spamreport":0,"suppressed":0,"hardbounced":0,"softbounced":0,"pending":0,"contactslost":0,"notsent":1},"deviceBreakdown":{"open_device_type":{"computer":0,"mobile":0,"unknown":0},"click_device_type":{"computer":0,"mobile":0,"unknown":0}},"failedToLoad":false,"qualifierStats":{},"ratios":{"clickratio":0,"clickthroughratio":0,"deliveredratio":0,"openratio":0,"replyratio":0,"unsubscribedratio":0,"spamreportratio":0,"bounceratio":0,"hardbounceratio":0,"softbounceratio":0,"contactslostratio":0,"pendingratio":0,"notsentratio":100}},"styleSettings":{"background_color":"#EAF0F6","background_image":null,"background_image_type":null,"body_border_color":"#EAF0F6","body_border_color_choice":"BORDER_MANUAL","body_border_width":"1","body_color":"#ffffff","color_picker_favorite1":null,"color_picker_favorite2":null,"color_picker_favorite3":null,"color_picker_favorite4":null,"color_picker_favorite5":null,"color_picker_favorite6":null,"email_body_padding":null,"email_body_width":null,"heading_one_font":{"bold":null,"color":null,"font":null,"font_style":{},"italic":null,"size":"28","underline":null},"heading_two_font":{"bold":null,"color":null,"font":null,"font_style":{},"italic":null,"size":"22","underline":null},"links_font":{"bold":false,"color":"#00a4bd","font":null,"font_style":{},"italic":false,"size":null,"underline":true},"primary_accent_color":null,"primary_font":"Arial, sans-serif","primary_font_color":"#23496d","primary_font_line_height":null,"primary_font_size":"15","secondary_accent_color":null,"secondary_font":"Arial, sans-serif","secondary_font_color":"#23496d","secondary_font_line_height":null,"secondary_font_size":"12","use_email_client_default_settings":false,"user_module_defaults":{"button_email":{"background_color":"#00a4bd","corner_radius":8,"font":"Arial, sans-serif","font_color":"#ffffff","font_size":16,"font_style":{"color":"#ffffff","font":"Arial, sans-serif","size":{"units":"px","value":16},"styles":{"bold":false,"italic":false,"underline":false}}},"email_divider":{"color":{"color":"#23496d","opacity":100},"height":1,"line_type":"solid"}}},"subcategory":"batch","subject":"test","subscription":23704464,"subscriptionName":"Test sub","teamPerms":[],"templatePath":"@hubspot/email/dnd/welcome.html","transactional":false,"translations":{},"unpublishedAt":0,"updated":1675121702583,"updatedById":12282590,"url":"http://integrationtest-dev-8727216-8727216.hs-sites.com/-temporary-slug-86812db1-e3c8-43cd-ae80-69a0934cd1de","useRssHeadlineAsSubject":false,"userPerms":[],"vidsExcluded":[],"vidsIncluded":[2501],"visibleToAll":true},"emitted_at":1688060624527} diff --git a/airbyte-integrations/connectors/source-instagram/acceptance-test-config.yml b/airbyte-integrations/connectors/source-instagram/acceptance-test-config.yml index 295efd229c13..382e6f6554ea 100644 --- a/airbyte-integrations/connectors/source-instagram/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-instagram/acceptance-test-config.yml @@ -72,8 +72,6 @@ acceptance_tests: configured_catalog_path: "integration_tests/incremental_catalog.json" future_state: future_state_path: "integration_tests/abnormal_state.json" - cursor_paths: - user_insights: ["17841408147298757", "date"] # because state is complex and stores values for different accounts on one hand # and there's no way we can set multiple cursor paths for a single stream on the other, # this test should be skipped as it is false negative. diff --git a/airbyte-integrations/connectors/source-intercom/acceptance-test-config.yml b/airbyte-integrations/connectors/source-intercom/acceptance-test-config.yml index 2bcc47ce0751..dd8a39b2dc35 100644 --- a/airbyte-integrations/connectors/source-intercom/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-intercom/acceptance-test-config.yml @@ -6,7 +6,7 @@ acceptance_tests: spec: tests: - spec_path: "source_intercom/spec.json" - # Spec fix: advanced auth configuration contain `client_id` and `client_secret` fields but they were missing in spec. + # Spec fix: advanced auth configuration contain `client_id` and `client_secret` fields but they were missing in spec. backward_compatibility_tests_config: disable_for_version: "0.2.1" connection: @@ -32,14 +32,6 @@ acceptance_tests: configured_catalog_path: "integration_tests/incremental_catalog.json" future_state: future_state_path: "integration_tests/abnormal_state.json" - threshold_days: 365 - cursor_paths: - companies: ["updated_at"] - company_segments: ["updated_at"] - conversations: ["updated_at"] - conversation_parts: ["updated_at"] - contacts: ["updated_at"] - segments: ["updated_at"] full_refresh: tests: - config_path: "secrets/config.json" diff --git a/airbyte-integrations/connectors/source-jdbc/.dockerignore b/airbyte-integrations/connectors/source-jdbc/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/source-jdbc/.dockerignore +++ b/airbyte-integrations/connectors/source-jdbc/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/source-jdbc/build.gradle b/airbyte-integrations/connectors/source-jdbc/build.gradle index 488357c8ec51..773b4b9f127a 100644 --- a/airbyte-integrations/connectors/source-jdbc/build.gradle +++ b/airbyte-integrations/connectors/source-jdbc/build.gradle @@ -30,12 +30,12 @@ dependencies { testImplementation project(':airbyte-test-utils') testImplementation libs.postgresql - testImplementation libs.connectors.testcontainers.postgresql + testImplementation libs.testcontainers.postgresql testImplementation libs.junit.jupiter.system.stubs integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') - integrationTestJavaImplementation libs.connectors.testcontainers.postgresql + integrationTestJavaImplementation libs.testcontainers.postgresql testFixturesImplementation "org.hamcrest:hamcrest-all:1.3" testFixturesImplementation libs.airbyte.protocol @@ -53,5 +53,4 @@ dependencies { testFixturesImplementation 'org.junit.jupiter:junit-jupiter-params:5.4.2' testFixturesImplementation group: 'org.mockito', name: 'mockito-junit-jupiter', version: '4.0.0' - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors/source-jdbc/src/testFixtures/java/io/airbyte/integrations/source/jdbc/test/JdbcSourceAcceptanceTest.java b/airbyte-integrations/connectors/source-jdbc/src/testFixtures/java/io/airbyte/integrations/source/jdbc/test/JdbcSourceAcceptanceTest.java index 3f4c420cac77..e6718a3b207e 100644 --- a/airbyte-integrations/connectors/source-jdbc/src/testFixtures/java/io/airbyte/integrations/source/jdbc/test/JdbcSourceAcceptanceTest.java +++ b/airbyte-integrations/connectors/source-jdbc/src/testFixtures/java/io/airbyte/integrations/source/jdbc/test/JdbcSourceAcceptanceTest.java @@ -512,12 +512,12 @@ void testReadMultipleTables() throws Exception { assertTrue(actualMessages.containsAll(expectedMessages)); } - protected List getAirbyteMessagesSecondSync(final String streamName2) { + protected List getAirbyteMessagesSecondSync(final String streamName) { return getTestMessages() .stream() .map(Jsons::clone) .peek(m -> { - m.getRecord().setStream(streamName2); + m.getRecord().setStream(streamName); m.getRecord().setNamespace(getDefaultNamespace()); ((ObjectNode) m.getRecord().getData()).remove(COL_UPDATED_AT); ((ObjectNode) m.getRecord().getData()).replace(COL_ID, @@ -857,6 +857,7 @@ public void testIncrementalWithConcurrentInsertion() throws Exception { namespace, Field.of(COL_NAME, JsonSchemaType.STRING), Field.of(COL_TIMESTAMP, JsonSchemaType.STRING_TIMESTAMP_WITHOUT_TIMEZONE))))); + configuredCatalog.getStreams().forEach(airbyteStream -> { airbyteStream.setSyncMode(SyncMode.INCREMENTAL); airbyteStream.setCursorField(List.of(COL_TIMESTAMP)); @@ -1274,4 +1275,33 @@ protected AirbyteMessage createStateMessage(final DbStreamState dbStreamState, f } } + protected List extractSpecificFieldFromCombinedMessages(final List messages, + final String streamName, + final String field) { + return extractStateMessage(messages).stream() + .filter(s -> s.getStream().getStreamDescriptor().getName().equals(streamName)) + .map(s -> s.getStream().getStreamState().get(field) != null ? s.getStream().getStreamState().get(field).asText() : "").toList(); + } + + protected List filterRecords(final List messages) { + return messages.stream().filter(r -> r.getType() == Type.RECORD) + .collect(Collectors.toList()); + } + + protected List extractStateMessage(final List messages) { + return messages.stream().filter(r -> r.getType() == Type.STATE).map(AirbyteMessage::getState) + .collect(Collectors.toList()); + } + + protected List extractStateMessage(final List messages, final String streamName) { + return messages.stream().filter(r -> r.getType() == Type.STATE && + r.getState().getStream().getStreamDescriptor().getName().equals(streamName)).map(AirbyteMessage::getState) + .collect(Collectors.toList()); + } + + protected AirbyteMessage createRecord(final String stream, final String namespace, final Map data) { + return new AirbyteMessage().withType(Type.RECORD) + .withRecord(new AirbyteRecordMessage().withData(Jsons.jsonNode(data)).withStream(stream).withNamespace(namespace)); + } + } diff --git a/airbyte-integrations/connectors/source-jira/Dockerfile b/airbyte-integrations/connectors/source-jira/Dockerfile index 5a183bdb9b25..cd02c640b41d 100644 --- a/airbyte-integrations/connectors/source-jira/Dockerfile +++ b/airbyte-integrations/connectors/source-jira/Dockerfile @@ -12,5 +12,5 @@ RUN pip install . ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=0.3.12 +LABEL io.airbyte.version=0.6.2 LABEL io.airbyte.name=airbyte/source-jira diff --git a/airbyte-integrations/connectors/source-jira/acceptance-test-config.yml b/airbyte-integrations/connectors/source-jira/acceptance-test-config.yml index 669f5e2e4ccc..c1092a481f9a 100644 --- a/airbyte-integrations/connectors/source-jira/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-jira/acceptance-test-config.yml @@ -30,7 +30,6 @@ acceptance_tests: - name: fields/updated bypass_reason: "Unstable data" timeout_seconds: 2400 - fail_on_extra_columns: false incremental: tests: - config_path: "secrets/config.json" diff --git a/airbyte-integrations/connectors/source-jira/integration_tests/configured_catalog.json b/airbyte-integrations/connectors/source-jira/integration_tests/configured_catalog.json index 41150ae12b29..487f0f84b0a9 100644 --- a/airbyte-integrations/connectors/source-jira/integration_tests/configured_catalog.json +++ b/airbyte-integrations/connectors/source-jira/integration_tests/configured_catalog.json @@ -214,6 +214,16 @@ }, "sync_mode": "full_refresh", "destination_sync_mode": "append" + }, + { + "stream": { + "name": "issue_transitions", + "json_schema": {}, + "supported_sync_modes": ["full_refresh"], + "source_defined_primary_key": [["issueId"], ["id"]] + }, + "sync_mode": "full_refresh", + "destination_sync_mode": "append" }, { "stream": { diff --git a/airbyte-integrations/connectors/source-jira/integration_tests/expected_records.jsonl b/airbyte-integrations/connectors/source-jira/integration_tests/expected_records.jsonl index 8b1db037ebac..905c9b05243e 100644 --- a/airbyte-integrations/connectors/source-jira/integration_tests/expected_records.jsonl +++ b/airbyte-integrations/connectors/source-jira/integration_tests/expected_records.jsonl @@ -20,8 +20,8 @@ {"stream": "groups", "data": {"name": "Test group 17", "groupId": "022bc924-ac57-442d-80c9-df042b73ad87"}, "emitted_at": 1685112927902} {"stream": "groups", "data": {"name": "administrators", "groupId": "0ca6e087-7a61-4986-a269-98fe268854a1"}, "emitted_at": 1685112927903} {"stream": "groups", "data": {"name": "jira-users", "groupId": "2513da2e-08cf-4415-9bcd-cbbd32fa227d"}, "emitted_at": 1685112927903} -{"stream": "issues", "data": {"expand": "operations,customfield_10030.properties,versionedRepresentations,editmeta,changelog,customfield_10029.properties,customfield_10010.requestTypePractice,renderedFields", "id": "10627", "self": "https://airbyteio.atlassian.net/rest/api/3/issue/10627", "key": "TESTKEY13-1", "fields": {"statuscategorychangedate": "2022-06-09T16:29:32.382-0700", "issuetype": {"self": "https://airbyteio.atlassian.net/rest/api/3/issuetype/10000", "id": "10000", "description": "A big user story that needs to be broken down. Created by Jira Software - do not edit or delete.", "iconUrl": "https://airbyteio.atlassian.net/images/icons/issuetypes/epic.svg", "name": "Epic", "subtask": false, "hierarchyLevel": 1}, "timespent": null, "customfield_10030": null, "project": {"self": "https://airbyteio.atlassian.net/rest/api/3/project/10016", "id": "10016", "key": "TESTKEY13", "name": "Test project 13", "projectTypeKey": "software", "simplified": false, "avatarUrls": {"48x48": "https://airbyteio.atlassian.net/rest/api/3/universal_avatar/view/type/project/avatar/10425", "24x24": "https://airbyteio.atlassian.net/rest/api/3/universal_avatar/view/type/project/avatar/10425?size=small", "16x16": "https://airbyteio.atlassian.net/rest/api/3/universal_avatar/view/type/project/avatar/10425?size=xsmall", "32x32": "https://airbyteio.atlassian.net/rest/api/3/universal_avatar/view/type/project/avatar/10425?size=medium"}, "projectCategory": {"self": "https://airbyteio.atlassian.net/rest/api/3/projectCategory/10000", "id": "10000", "description": "Category 1", "name": "Category 1"}}, "fixVersions": [{"self": "https://airbyteio.atlassian.net/rest/api/3/version/10066", "id": "10066", "description": "An excellent version", "name": "New Version 1", "archived": false, "released": true, "releaseDate": "2010-07-06"}], "aggregatetimespent": null, "resolution": null, "customfield_10225": null, "customfield_10226": null, "customfield_10227": null, "customfield_10029": null, "customfield_10228": null, "resolutiondate": null, "workratio": -1, "lastViewed": "2023-07-05T12:49:36.121-0700", "watches": {"self": "https://airbyteio.atlassian.net/rest/api/3/issue/TESTKEY13-1/watchers", "watchCount": 1, "isWatching": true}, "issuerestriction": {"issuerestrictions": {}, "shouldDisplay": false}, "customfield_10181": null, "created": "2022-06-09T16:29:31.871-0700", "customfield_10020": [{"id": 2, "name": "IT Sprint 1", "state": "active", "boardId": 1, "goal": "Deliver results", "startDate": "2022-05-17T11:25:59.072Z", "endDate": "2022-05-31T11:25:00.000Z"}], "customfield_10021": null, "customfield_10022": null, "customfield_10220": null, "customfield_10221": null, "priority": {"self": "https://airbyteio.atlassian.net/rest/api/3/priority/4", "iconUrl": "https://airbyteio.atlassian.net/images/icons/priorities/low.svg", "name": "Low", "id": "4"}, "customfield_10023": null, "customfield_10222": null, "customfield_10024": null, "customfield_10025": null, "customfield_10223": null, "labels": ["test"], "customfield_10026": 3.0, "customfield_10224": null, "customfield_10016": null, "customfield_10214": null, "customfield_10017": "dark_orange", "customfield_10215": null, "customfield_10216": null, "customfield_10018": {"hasEpicLinkFieldDependency": false, "showField": false, "nonEditableReason": {"reason": "PLUGIN_LICENSE_ERROR", "message": "The Parent Link is only available to Jira Premium users."}}, "customfield_10217": [], "customfield_10019": "0|i0077b:", "customfield_10218": null, "timeestimate": null, "aggregatetimeoriginalestimate": null, "versions": [], "customfield_10219": null, "issuelinks": [], "assignee": {"self": "https://airbyteio.atlassian.net/rest/api/3/user?accountId=5fc9e78d2730d800760becc4", "accountId": "5fc9e78d2730d800760becc4", "emailAddress": "integration-test@airbyte.io", "avatarUrls": {"48x48": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "24x24": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "16x16": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "32x32": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png"}, "displayName": "integration test", "active": true, "timeZone": "America/Los_Angeles", "accountType": "atlassian"}, "updated": "2023-04-04T04:36:21.195-0700", "status": {"self": "https://airbyteio.atlassian.net/rest/api/3/status/10000", "description": "", "iconUrl": "https://airbyteio.atlassian.net/", "name": "To Do", "id": "10000", "statusCategory": {"self": "https://airbyteio.atlassian.net/rest/api/3/statuscategory/2", "id": 2, "key": "new", "colorName": "blue-gray", "name": "To Do"}}, "components": [{"self": "https://airbyteio.atlassian.net/rest/api/3/component/10065", "id": "10065", "name": "Component 0", "description": "This is a Jira component"}], "timeoriginalestimate": null, "description": {"version": 1, "type": "doc", "content": [{"type": "paragraph", "content": [{"type": "text", "text": "Test issue"}]}]}, "customfield_10010": null, "customfield_10011": "EPIC NAME TEXT", "customfield_10210": null, "customfield_10012": {"self": "https://airbyteio.atlassian.net/rest/api/3/customFieldOption/10016", "value": "To Do", "id": "10016"}, "customfield_10013": "ghx-label-14", "customfield_10211": null, "customfield_10014": null, "customfield_10212": null, "customfield_10015": null, "customfield_10213": null, "timetracking": {}, "customfield_10005": null, "customfield_10006": null, "customfield_10007": null, "security": null, "customfield_10008": null, "attachment": [], "aggregatetimeestimate": null, "customfield_10009": "2022-12-09T00:00:00.000-0800", "customfield_10209": null, "summary": "My Summary", "creator": {"self": "https://airbyteio.atlassian.net/rest/api/3/user?accountId=5fc9e78d2730d800760becc4", "accountId": "5fc9e78d2730d800760becc4", "emailAddress": "integration-test@airbyte.io", "avatarUrls": {"48x48": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "24x24": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "16x16": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "32x32": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png"}, "displayName": "integration test", "active": true, "timeZone": "America/Los_Angeles", "accountType": "atlassian"}, "subtasks": [], "reporter": {"self": "https://airbyteio.atlassian.net/rest/api/3/user?accountId=5fc9e78d2730d800760becc4", "accountId": "5fc9e78d2730d800760becc4", "emailAddress": "integration-test@airbyte.io", "avatarUrls": {"48x48": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "24x24": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "16x16": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "32x32": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png"}, "displayName": "integration test", "active": true, "timeZone": "America/Los_Angeles", "accountType": "atlassian"}, "aggregateprogress": {"progress": 0, "total": 0}, "customfield_10001": null, "customfield_10002": null, "customfield_10047": null, "customfield_10003": [{"self": "https://airbyteio.atlassian.net/rest/api/3/user?accountId=5fc9e78d2730d800760becc4", "accountId": "5fc9e78d2730d800760becc4", "emailAddress": "integration-test@airbyte.io", "avatarUrls": {"48x48": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "24x24": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "16x16": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "32x32": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png"}, "displayName": "integration test", "active": true, "timeZone": "America/Los_Angeles", "accountType": "atlassian"}], "customfield_10004": null, "environment": null, "duedate": null, "progress": {"progress": 0, "total": 0}, "comment": {"comments": [], "self": "https://airbyteio.atlassian.net/rest/api/3/issue/10627/comment", "maxResults": 0, "total": 0, "startAt": 0}, "votes": {"self": "https://airbyteio.atlassian.net/rest/api/3/issue/TESTKEY13-1/votes", "votes": 0, "hasVoted": false}, "worklog": {"startAt": 0, "maxResults": 20, "total": 0, "worklogs": []}}, "projectId": "10016", "projectKey": "TESTKEY13", "created": "2022-06-09T16:29:31.871-0700", "updated": "2023-04-04T04:36:21.195-0700"}, "emitted_at": 1690193760166} -{"stream": "issues", "data": {"expand": "operations,customfield_10030.properties,versionedRepresentations,editmeta,changelog,customfield_10029.properties,customfield_10010.requestTypePractice,renderedFields", "id": "10625", "self": "https://airbyteio.atlassian.net/rest/api/3/issue/10625", "key": "IT-25", "fields": {"statuscategorychangedate": "2022-05-17T04:06:24.675-0700", "issuetype": {"self": "https://airbyteio.atlassian.net/rest/api/3/issuetype/10000", "id": "10000", "description": "A big user story that needs to be broken down. Created by Jira Software - do not edit or delete.", "iconUrl": "https://airbyteio.atlassian.net/images/icons/issuetypes/epic.svg", "name": "Epic", "subtask": false, "hierarchyLevel": 1}, "timespent": null, "customfield_10030": null, "project": {"self": "https://airbyteio.atlassian.net/rest/api/3/project/10000", "id": "10000", "key": "IT", "name": "integration-tests", "projectTypeKey": "software", "simplified": false, "avatarUrls": {"48x48": "https://airbyteio.atlassian.net/rest/api/3/universal_avatar/view/type/project/avatar/10424", "24x24": "https://airbyteio.atlassian.net/rest/api/3/universal_avatar/view/type/project/avatar/10424?size=small", "16x16": "https://airbyteio.atlassian.net/rest/api/3/universal_avatar/view/type/project/avatar/10424?size=xsmall", "32x32": "https://airbyteio.atlassian.net/rest/api/3/universal_avatar/view/type/project/avatar/10424?size=medium"}, "projectCategory": {"self": "https://airbyteio.atlassian.net/rest/api/3/projectCategory/10004", "id": "10004", "description": "Test Project Category 2", "name": "Test category 2"}}, "fixVersions": [], "aggregatetimespent": null, "resolution": null, "customfield_10225": null, "customfield_10226": null, "customfield_10029": null, "customfield_10227": null, "customfield_10228": null, "resolutiondate": null, "workratio": -1, "issuerestriction": {"issuerestrictions": {}, "shouldDisplay": false}, "lastViewed": null, "watches": {"self": "https://airbyteio.atlassian.net/rest/api/3/issue/IT-25/watchers", "watchCount": 1, "isWatching": true}, "customfield_10181": null, "created": "2022-05-17T04:06:24.048-0700", "customfield_10020": null, "customfield_10021": null, "customfield_10220": null, "customfield_10022": null, "priority": {"self": "https://airbyteio.atlassian.net/rest/api/3/priority/4", "iconUrl": "https://airbyteio.atlassian.net/images/icons/priorities/low.svg", "name": "Low", "id": "4"}, "customfield_10221": null, "customfield_10023": null, "customfield_10024": null, "customfield_10222": null, "customfield_10223": null, "customfield_10025": null, "customfield_10224": null, "labels": [], "customfield_10026": null, "customfield_10016": null, "customfield_10214": null, "customfield_10017": "dark_yellow", "customfield_10215": null, "customfield_10216": null, "customfield_10018": {"hasEpicLinkFieldDependency": false, "showField": false, "nonEditableReason": {"reason": "PLUGIN_LICENSE_ERROR", "message": "The Parent Link is only available to Jira Premium users."}}, "customfield_10019": "0|i0076v:", "customfield_10217": [], "customfield_10218": null, "aggregatetimeoriginalestimate": null, "timeestimate": null, "versions": [], "customfield_10219": null, "issuelinks": [{"id": "10263", "self": "https://airbyteio.atlassian.net/rest/api/3/issueLink/10263", "type": {"id": "10001", "name": "Cloners", "inward": "is cloned by", "outward": "clones", "self": "https://airbyteio.atlassian.net/rest/api/3/issueLinkType/10001"}, "inwardIssue": {"id": "10626", "key": "IT-26", "self": "https://airbyteio.atlassian.net/rest/api/3/issue/10626", "fields": {"summary": "CLONE - Aggregate issues", "status": {"self": "https://airbyteio.atlassian.net/rest/api/3/status/10000", "description": "", "iconUrl": "https://airbyteio.atlassian.net/", "name": "To Do", "id": "10000", "statusCategory": {"self": "https://airbyteio.atlassian.net/rest/api/3/statuscategory/2", "id": 2, "key": "new", "colorName": "blue-gray", "name": "To Do"}}, "priority": {"self": "https://airbyteio.atlassian.net/rest/api/3/priority/4", "iconUrl": "https://airbyteio.atlassian.net/images/icons/priorities/low.svg", "name": "Low", "id": "4"}, "issuetype": {"self": "https://airbyteio.atlassian.net/rest/api/3/issuetype/10000", "id": "10000", "description": "A big user story that needs to be broken down. Created by Jira Software - do not edit or delete.", "iconUrl": "https://airbyteio.atlassian.net/images/icons/issuetypes/epic.svg", "name": "Epic", "subtask": false, "hierarchyLevel": 1}}}}], "assignee": {"self": "https://airbyteio.atlassian.net/rest/api/3/user?accountId=5fc9e78d2730d800760becc4", "accountId": "5fc9e78d2730d800760becc4", "emailAddress": "integration-test@airbyte.io", "avatarUrls": {"48x48": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "24x24": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "16x16": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "32x32": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png"}, "displayName": "integration test", "active": true, "timeZone": "America/Los_Angeles", "accountType": "atlassian"}, "updated": "2022-05-17T04:28:19.876-0700", "status": {"self": "https://airbyteio.atlassian.net/rest/api/3/status/10000", "description": "", "iconUrl": "https://airbyteio.atlassian.net/", "name": "To Do", "id": "10000", "statusCategory": {"self": "https://airbyteio.atlassian.net/rest/api/3/statuscategory/2", "id": 2, "key": "new", "colorName": "blue-gray", "name": "To Do"}}, "components": [{"self": "https://airbyteio.atlassian.net/rest/api/3/component/10049", "id": "10049", "name": "Component 3", "description": "This is a Jira component"}], "timeoriginalestimate": null, "description": {"version": 1, "type": "doc", "content": [{"type": "paragraph", "content": [{"type": "text", "text": "Implement OAUth"}]}]}, "customfield_10010": null, "customfield_10011": "Test 2", "customfield_10210": null, "customfield_10012": {"self": "https://airbyteio.atlassian.net/rest/api/3/customFieldOption/10016", "value": "To Do", "id": "10016"}, "customfield_10211": null, "customfield_10013": "ghx-label-2", "customfield_10212": null, "customfield_10014": null, "customfield_10015": null, "customfield_10213": null, "timetracking": {}, "customfield_10005": null, "customfield_10006": null, "customfield_10007": null, "security": null, "customfield_10008": null, "attachment": [], "customfield_10009": null, "aggregatetimeestimate": null, "customfield_10209": null, "summary": "Aggregate issues", "creator": {"self": "https://airbyteio.atlassian.net/rest/api/3/user?accountId=5fc9e78d2730d800760becc4", "accountId": "5fc9e78d2730d800760becc4", "emailAddress": "integration-test@airbyte.io", "avatarUrls": {"48x48": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "24x24": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "16x16": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "32x32": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png"}, "displayName": "integration test", "active": true, "timeZone": "America/Los_Angeles", "accountType": "atlassian"}, "subtasks": [], "reporter": {"self": "https://airbyteio.atlassian.net/rest/api/3/user?accountId=5fc9e78d2730d800760becc4", "accountId": "5fc9e78d2730d800760becc4", "emailAddress": "integration-test@airbyte.io", "avatarUrls": {"48x48": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "24x24": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "16x16": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "32x32": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png"}, "displayName": "integration test", "active": true, "timeZone": "America/Los_Angeles", "accountType": "atlassian"}, "aggregateprogress": {"progress": 0, "total": 0}, "customfield_10001": null, "customfield_10002": null, "customfield_10047": null, "customfield_10003": null, "customfield_10004": null, "environment": null, "duedate": null, "progress": {"progress": 0, "total": 0}, "votes": {"self": "https://airbyteio.atlassian.net/rest/api/3/issue/IT-25/votes", "votes": 0, "hasVoted": false}, "comment": {"comments": [{"self": "https://airbyteio.atlassian.net/rest/api/3/issue/10625/comment/10755", "id": "10755", "author": {"self": "https://airbyteio.atlassian.net/rest/api/3/user?accountId=5fc9e78d2730d800760becc4", "accountId": "5fc9e78d2730d800760becc4", "emailAddress": "integration-test@airbyte.io", "avatarUrls": {"48x48": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "24x24": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "16x16": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "32x32": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png"}, "displayName": "integration test", "active": true, "timeZone": "America/Los_Angeles", "accountType": "atlassian"}, "body": {"version": 1, "type": "doc", "content": [{"type": "paragraph", "content": [{"type": "text", "text": "Closed"}]}]}, "updateAuthor": {"self": "https://airbyteio.atlassian.net/rest/api/3/user?accountId=5fc9e78d2730d800760becc4", "accountId": "5fc9e78d2730d800760becc4", "emailAddress": "integration-test@airbyte.io", "avatarUrls": {"48x48": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "24x24": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "16x16": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "32x32": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png"}, "displayName": "integration test", "active": true, "timeZone": "America/Los_Angeles", "accountType": "atlassian"}, "created": "2022-05-17T04:06:55.076-0700", "updated": "2022-05-17T04:06:55.076-0700", "jsdPublic": true}], "self": "https://airbyteio.atlassian.net/rest/api/3/issue/10625/comment", "maxResults": 1, "total": 1, "startAt": 0}, "worklog": {"startAt": 0, "maxResults": 20, "total": 0, "worklogs": []}}, "projectId": "10000", "projectKey": "IT", "created": "2022-05-17T04:06:24.048-0700", "updated": "2022-05-17T04:28:19.876-0700"}, "emitted_at": 1690193759636} +{"stream":"issues","data":{"expand":"operations,customfield_10030.properties,versionedRepresentations,editmeta,changelog,customfield_10029.properties,customfield_10010.requestTypePractice,renderedFields","id":"10627","self":"https://airbyteio.atlassian.net/rest/api/3/issue/10627","key":"TESTKEY13-1","fields":{"statuscategorychangedate":"2022-06-09T16:29:32.382-0700","issuetype":{"self":"https://airbyteio.atlassian.net/rest/api/3/issuetype/10000","id":"10000","description":"A big user story that needs to be broken down. Created by Jira Software - do not edit or delete.","iconUrl":"https://airbyteio.atlassian.net/images/icons/issuetypes/epic.svg","name":"Epic","subtask":false,"hierarchyLevel":1},"timespent":null,"customfield_10030":null,"project":{"self":"https://airbyteio.atlassian.net/rest/api/3/project/10016","id":"10016","key":"TESTKEY13","name":"Test project 13","projectTypeKey":"software","simplified":false,"avatarUrls":{"48x48":"https://airbyteio.atlassian.net/rest/api/3/universal_avatar/view/type/project/avatar/10425","24x24":"https://airbyteio.atlassian.net/rest/api/3/universal_avatar/view/type/project/avatar/10425?size=small","16x16":"https://airbyteio.atlassian.net/rest/api/3/universal_avatar/view/type/project/avatar/10425?size=xsmall","32x32":"https://airbyteio.atlassian.net/rest/api/3/universal_avatar/view/type/project/avatar/10425?size=medium"},"projectCategory":{"self":"https://airbyteio.atlassian.net/rest/api/3/projectCategory/10000","id":"10000","description":"Category 1","name":"Category 1"}},"fixVersions":[{"self":"https://airbyteio.atlassian.net/rest/api/3/version/10066","id":"10066","description":"An excellent version","name":"New Version 1","archived":false,"released":true,"releaseDate":"2010-07-06"}],"aggregatetimespent":null,"resolution":null,"customfield_10225":null,"customfield_10226":null,"customfield_10227":null,"customfield_10029":null,"customfield_10228":null,"resolutiondate":null,"workratio":-1,"lastViewed":"2023-09-19T04:46:19.750-0700","issuerestriction":{"issuerestrictions":{},"shouldDisplay":false},"watches":{"self":"https://airbyteio.atlassian.net/rest/api/3/issue/TESTKEY13-1/watchers","watchCount":1,"isWatching":true},"customfield_10181":null,"created":"2022-06-09T16:29:31.871-0700","customfield_10020":[{"id":2,"name":"IT Sprint 1","state":"active","boardId":1,"goal":"Deliver results","startDate":"2022-05-17T11:25:59.072Z","endDate":"2022-05-31T11:25:00.000Z"}],"customfield_10021":null,"customfield_10022":null,"customfield_10220":null,"customfield_10221":null,"priority":{"self":"https://airbyteio.atlassian.net/rest/api/3/priority/4","iconUrl":"https://airbyteio.atlassian.net/images/icons/priorities/low.svg","name":"Low","id":"4"},"customfield_10023":null,"customfield_10222":null,"customfield_10024":null,"customfield_10223":null,"customfield_10025":null,"customfield_10224":null,"customfield_10026":3,"labels":["test"],"customfield_10016":null,"customfield_10214":null,"customfield_10017":"dark_orange","customfield_10215":null,"customfield_10018":{"hasEpicLinkFieldDependency":false,"showField":false,"nonEditableReason":{"reason":"PLUGIN_LICENSE_ERROR","message":"The Parent Link is only available to Jira Premium users."}},"customfield_10216":null,"customfield_10217":[],"customfield_10019":"0|i0077b:","timeestimate":null,"aggregatetimeoriginalestimate":null,"customfield_10218":null,"versions":[],"customfield_10219":null,"issuelinks":[],"assignee":{"self":"https://airbyteio.atlassian.net/rest/api/3/user?accountId=5fc9e78d2730d800760becc4","accountId":"5fc9e78d2730d800760becc4","emailAddress":"integration-test@airbyte.io","avatarUrls":{"48x48":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","24x24":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","16x16":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","32x32":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png"},"displayName":"integration test","active":true,"timeZone":"America/Los_Angeles","accountType":"atlassian"},"updated":"2023-04-04T04:36:21.195-0700","status":{"self":"https://airbyteio.atlassian.net/rest/api/3/status/10000","description":"","iconUrl":"https://airbyteio.atlassian.net/","name":"To Do","id":"10000","statusCategory":{"self":"https://airbyteio.atlassian.net/rest/api/3/statuscategory/2","id":2,"key":"new","colorName":"blue-gray","name":"To Do"}},"components":[{"self":"https://airbyteio.atlassian.net/rest/api/3/component/10065","id":"10065","name":"Component 0","description":"This is a Jira component"}],"timeoriginalestimate":null,"description":{"version":1,"type":"doc","content":[{"type":"paragraph","content":[{"type":"text","text":"Test issue"}]}]},"customfield_10010":null,"customfield_10011":"EPIC NAME TEXT","customfield_10210":null,"customfield_10012":{"self":"https://airbyteio.atlassian.net/rest/api/3/customFieldOption/10016","value":"To Do","id":"10016"},"customfield_10013":"ghx-label-14","customfield_10211":null,"customfield_10212":null,"customfield_10014":null,"customfield_10015":null,"timetracking":{},"customfield_10213":null,"customfield_10005":null,"customfield_10006":null,"customfield_10007":null,"security":null,"customfield_10008":null,"customfield_10009":"2022-12-09T00:00:00.000-0800","attachment":[],"aggregatetimeestimate":null,"customfield_10209":null,"summary":"My Summary","creator":{"self":"https://airbyteio.atlassian.net/rest/api/3/user?accountId=5fc9e78d2730d800760becc4","accountId":"5fc9e78d2730d800760becc4","emailAddress":"integration-test@airbyte.io","avatarUrls":{"48x48":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","24x24":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","16x16":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","32x32":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png"},"displayName":"integration test","active":true,"timeZone":"America/Los_Angeles","accountType":"atlassian"},"subtasks":[],"reporter":{"self":"https://airbyteio.atlassian.net/rest/api/3/user?accountId=5fc9e78d2730d800760becc4","accountId":"5fc9e78d2730d800760becc4","emailAddress":"integration-test@airbyte.io","avatarUrls":{"48x48":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","24x24":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","16x16":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","32x32":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png"},"displayName":"integration test","active":true,"timeZone":"America/Los_Angeles","accountType":"atlassian"},"aggregateprogress":{"progress":0,"total":0},"customfield_10001":null,"customfield_10002":null,"customfield_10047":null,"customfield_10003":[{"self":"https://airbyteio.atlassian.net/rest/api/3/user?accountId=5fc9e78d2730d800760becc4","accountId":"5fc9e78d2730d800760becc4","emailAddress":"integration-test@airbyte.io","avatarUrls":{"48x48":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","24x24":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","16x16":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","32x32":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png"},"displayName":"integration test","active":true,"timeZone":"America/Los_Angeles","accountType":"atlassian"}],"customfield_10004":null,"environment":null,"duedate":null,"progress":{"progress":0,"total":0},"comment":{"comments":[],"self":"https://airbyteio.atlassian.net/rest/api/3/issue/10627/comment","maxResults":0,"total":0,"startAt":0},"votes":{"self":"https://airbyteio.atlassian.net/rest/api/3/issue/TESTKEY13-1/votes","votes":0,"hasVoted":false},"worklog":{"startAt":0,"maxResults":20,"total":0,"worklogs":[]}},"projectId":"10016","projectKey":"TESTKEY13","created":"2022-06-09T16:29:31.871-0700","updated":"2023-04-04T04:36:21.195-0700"},"emitted_at":1695134740253} +{"stream":"issues","data":{"expand":"operations,customfield_10030.properties,versionedRepresentations,editmeta,changelog,customfield_10029.properties,customfield_10010.requestTypePractice,renderedFields","id":"10625","self":"https://airbyteio.atlassian.net/rest/api/3/issue/10625","key":"IT-25","fields":{"statuscategorychangedate":"2022-05-17T04:06:24.675-0700","issuetype":{"self":"https://airbyteio.atlassian.net/rest/api/3/issuetype/10000","id":"10000","description":"A big user story that needs to be broken down. Created by Jira Software - do not edit or delete.","iconUrl":"https://airbyteio.atlassian.net/images/icons/issuetypes/epic.svg","name":"Epic","subtask":false,"hierarchyLevel":1},"timespent":null,"customfield_10030":null,"project":{"self":"https://airbyteio.atlassian.net/rest/api/3/project/10000","id":"10000","key":"IT","name":"integration-tests","projectTypeKey":"software","simplified":false,"avatarUrls":{"48x48":"https://airbyteio.atlassian.net/rest/api/3/universal_avatar/view/type/project/avatar/10424","24x24":"https://airbyteio.atlassian.net/rest/api/3/universal_avatar/view/type/project/avatar/10424?size=small","16x16":"https://airbyteio.atlassian.net/rest/api/3/universal_avatar/view/type/project/avatar/10424?size=xsmall","32x32":"https://airbyteio.atlassian.net/rest/api/3/universal_avatar/view/type/project/avatar/10424?size=medium"},"projectCategory":{"self":"https://airbyteio.atlassian.net/rest/api/3/projectCategory/10004","id":"10004","description":"Test Project Category 2","name":"Test category 2"}},"fixVersions":[],"aggregatetimespent":null,"resolution":null,"customfield_10225":null,"customfield_10226":null,"customfield_10227":null,"customfield_10029":null,"customfield_10228":null,"resolutiondate":null,"workratio":-1,"watches":{"self":"https://airbyteio.atlassian.net/rest/api/3/issue/IT-25/watchers","watchCount":1,"isWatching":true},"lastViewed":null,"issuerestriction":{"issuerestrictions":{},"shouldDisplay":false},"customfield_10181":null,"created":"2022-05-17T04:06:24.048-0700","customfield_10020":null,"customfield_10021":null,"customfield_10022":null,"customfield_10220":null,"customfield_10023":null,"customfield_10221":null,"priority":{"self":"https://airbyteio.atlassian.net/rest/api/3/priority/4","iconUrl":"https://airbyteio.atlassian.net/images/icons/priorities/low.svg","name":"Low","id":"4"},"customfield_10024":null,"customfield_10222":null,"customfield_10025":null,"customfield_10223":null,"customfield_10026":null,"customfield_10224":null,"labels":[],"customfield_10016":null,"customfield_10214":null,"customfield_10215":null,"customfield_10017":"dark_yellow","customfield_10216":null,"customfield_10018":{"hasEpicLinkFieldDependency":false,"showField":false,"nonEditableReason":{"reason":"PLUGIN_LICENSE_ERROR","message":"The Parent Link is only available to Jira Premium users."}},"customfield_10217":[],"customfield_10019":"0|i0076v:","aggregatetimeoriginalestimate":null,"timeestimate":null,"customfield_10218":null,"versions":[],"customfield_10219":null,"issuelinks":[{"id":"10263","self":"https://airbyteio.atlassian.net/rest/api/3/issueLink/10263","type":{"id":"10001","name":"Cloners","inward":"is cloned by","outward":"clones","self":"https://airbyteio.atlassian.net/rest/api/3/issueLinkType/10001"},"inwardIssue":{"id":"10626","key":"IT-26","self":"https://airbyteio.atlassian.net/rest/api/3/issue/10626","fields":{"summary":"CLONE - Aggregate issues","status":{"self":"https://airbyteio.atlassian.net/rest/api/3/status/10000","description":"","iconUrl":"https://airbyteio.atlassian.net/","name":"To Do","id":"10000","statusCategory":{"self":"https://airbyteio.atlassian.net/rest/api/3/statuscategory/2","id":2,"key":"new","colorName":"blue-gray","name":"To Do"}},"priority":{"self":"https://airbyteio.atlassian.net/rest/api/3/priority/4","iconUrl":"https://airbyteio.atlassian.net/images/icons/priorities/low.svg","name":"Low","id":"4"},"issuetype":{"self":"https://airbyteio.atlassian.net/rest/api/3/issuetype/10000","id":"10000","description":"A big user story that needs to be broken down. Created by Jira Software - do not edit or delete.","iconUrl":"https://airbyteio.atlassian.net/images/icons/issuetypes/epic.svg","name":"Epic","subtask":false,"hierarchyLevel":1}}}}],"assignee":{"self":"https://airbyteio.atlassian.net/rest/api/3/user?accountId=5fc9e78d2730d800760becc4","accountId":"5fc9e78d2730d800760becc4","emailAddress":"integration-test@airbyte.io","avatarUrls":{"48x48":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","24x24":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","16x16":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","32x32":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png"},"displayName":"integration test","active":true,"timeZone":"America/Los_Angeles","accountType":"atlassian"},"updated":"2022-05-17T04:28:19.876-0700","status":{"self":"https://airbyteio.atlassian.net/rest/api/3/status/10000","description":"","iconUrl":"https://airbyteio.atlassian.net/","name":"To Do","id":"10000","statusCategory":{"self":"https://airbyteio.atlassian.net/rest/api/3/statuscategory/2","id":2,"key":"new","colorName":"blue-gray","name":"To Do"}},"components":[{"self":"https://airbyteio.atlassian.net/rest/api/3/component/10049","id":"10049","name":"Component 3","description":"This is a Jira component"}],"timeoriginalestimate":null,"description":{"version":1,"type":"doc","content":[{"type":"paragraph","content":[{"type":"text","text":"Implement OAUth"}]}]},"customfield_10010":null,"customfield_10011":"Test 2","customfield_10012":{"self":"https://airbyteio.atlassian.net/rest/api/3/customFieldOption/10016","value":"To Do","id":"10016"},"customfield_10210":null,"customfield_10211":null,"customfield_10013":"ghx-label-2","customfield_10014":null,"customfield_10212":null,"customfield_10213":null,"timetracking":{},"customfield_10015":null,"customfield_10005":null,"customfield_10006":null,"customfield_10007":null,"security":null,"customfield_10008":null,"aggregatetimeestimate":null,"attachment":[],"customfield_10009":null,"customfield_10209":null,"summary":"Aggregate issues","creator":{"self":"https://airbyteio.atlassian.net/rest/api/3/user?accountId=5fc9e78d2730d800760becc4","accountId":"5fc9e78d2730d800760becc4","emailAddress":"integration-test@airbyte.io","avatarUrls":{"48x48":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","24x24":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","16x16":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","32x32":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png"},"displayName":"integration test","active":true,"timeZone":"America/Los_Angeles","accountType":"atlassian"},"subtasks":[],"reporter":{"self":"https://airbyteio.atlassian.net/rest/api/3/user?accountId=5fc9e78d2730d800760becc4","accountId":"5fc9e78d2730d800760becc4","emailAddress":"integration-test@airbyte.io","avatarUrls":{"48x48":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","24x24":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","16x16":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","32x32":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png"},"displayName":"integration test","active":true,"timeZone":"America/Los_Angeles","accountType":"atlassian"},"aggregateprogress":{"progress":0,"total":0},"customfield_10001":null,"customfield_10002":null,"customfield_10047":null,"customfield_10003":null,"customfield_10004":null,"environment":null,"duedate":null,"progress":{"progress":0,"total":0},"votes":{"self":"https://airbyteio.atlassian.net/rest/api/3/issue/IT-25/votes","votes":0,"hasVoted":false},"comment":{"comments":[{"self":"https://airbyteio.atlassian.net/rest/api/3/issue/10625/comment/10755","id":"10755","author":{"self":"https://airbyteio.atlassian.net/rest/api/3/user?accountId=5fc9e78d2730d800760becc4","accountId":"5fc9e78d2730d800760becc4","emailAddress":"integration-test@airbyte.io","avatarUrls":{"48x48":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","24x24":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","16x16":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","32x32":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png"},"displayName":"integration test","active":true,"timeZone":"America/Los_Angeles","accountType":"atlassian"},"body":{"version":1,"type":"doc","content":[{"type":"paragraph","content":[{"type":"text","text":"Closed"}]}]},"updateAuthor":{"self":"https://airbyteio.atlassian.net/rest/api/3/user?accountId=5fc9e78d2730d800760becc4","accountId":"5fc9e78d2730d800760becc4","emailAddress":"integration-test@airbyte.io","avatarUrls":{"48x48":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","24x24":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","16x16":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png","32x32":"https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png"},"displayName":"integration test","active":true,"timeZone":"America/Los_Angeles","accountType":"atlassian"},"created":"2022-05-17T04:06:55.076-0700","updated":"2022-05-17T04:06:55.076-0700","jsdPublic":true}],"self":"https://airbyteio.atlassian.net/rest/api/3/issue/10625/comment","maxResults":1,"total":1,"startAt":0},"worklog":{"startAt":0,"maxResults":20,"total":0,"worklogs":[]}},"projectId":"10000","projectKey":"IT","created":"2022-05-17T04:06:24.048-0700","updated":"2022-05-17T04:28:19.876-0700"},"emitted_at":1695134739570} {"stream": "issue_comments", "data": {"self": "https://airbyteio.atlassian.net/rest/api/3/issue/10625/comment/10755", "id": "10755", "author": {"self": "https://airbyteio.atlassian.net/rest/api/3/user?accountId=5fc9e78d2730d800760becc4", "accountId": "5fc9e78d2730d800760becc4", "emailAddress": "integration-test@airbyte.io", "avatarUrls": {"48x48": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "24x24": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "16x16": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "32x32": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png"}, "displayName": "integration test", "active": true, "timeZone": "America/Los_Angeles", "accountType": "atlassian"}, "body": {"version": 1, "type": "doc", "content": [{"type": "paragraph", "content": [{"type": "text", "text": "Closed"}]}]}, "updateAuthor": {"self": "https://airbyteio.atlassian.net/rest/api/3/user?accountId=5fc9e78d2730d800760becc4", "accountId": "5fc9e78d2730d800760becc4", "emailAddress": "integration-test@airbyte.io", "avatarUrls": {"48x48": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "24x24": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "16x16": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "32x32": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png"}, "displayName": "integration test", "active": true, "timeZone": "America/Los_Angeles", "accountType": "atlassian"}, "created": "2022-05-17T04:06:55.076-0700", "updated": "2022-05-17T04:06:55.076-0700", "jsdPublic": true}, "emitted_at": 1685112937324} {"stream": "issue_comments", "data": {"self": "https://airbyteio.atlassian.net/rest/api/3/issue/10075/comment/10521", "id": "10521", "author": {"self": "https://airbyteio.atlassian.net/rest/api/3/user?accountId=5fc9e78d2730d800760becc4", "accountId": "5fc9e78d2730d800760becc4", "emailAddress": "integration-test@airbyte.io", "avatarUrls": {"48x48": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "24x24": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "16x16": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "32x32": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png"}, "displayName": "integration test", "active": true, "timeZone": "America/Los_Angeles", "accountType": "atlassian"}, "body": {"type": "doc", "version": 1, "content": [{"type": "paragraph", "content": [{"text": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque eget venenatis elit. Duis eu justo eget augue iaculis fermentum. Sed semper quam laoreet nisi egestas at posuere augue semper.", "type": "text"}]}]}, "updateAuthor": {"self": "https://airbyteio.atlassian.net/rest/api/3/user?accountId=5fc9e78d2730d800760becc4", "accountId": "5fc9e78d2730d800760becc4", "emailAddress": "integration-test@airbyte.io", "avatarUrls": {"48x48": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "24x24": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "16x16": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "32x32": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png"}, "displayName": "integration test", "active": true, "timeZone": "America/Los_Angeles", "accountType": "atlassian"}, "created": "2021-04-14T14:32:43.099-0700", "updated": "2021-04-14T14:32:43.099-0700", "jsdPublic": true}, "emitted_at": 1685112937947} {"stream": "issue_comments", "data": {"self": "https://airbyteio.atlassian.net/rest/api/3/issue/10075/comment/10639", "id": "10639", "author": {"self": "https://airbyteio.atlassian.net/rest/api/3/user?accountId=5fc9e78d2730d800760becc4", "accountId": "5fc9e78d2730d800760becc4", "emailAddress": "integration-test@airbyte.io", "avatarUrls": {"48x48": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "24x24": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "16x16": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "32x32": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png"}, "displayName": "integration test", "active": true, "timeZone": "America/Los_Angeles", "accountType": "atlassian"}, "body": {"type": "doc", "version": 1, "content": [{"type": "paragraph", "content": [{"text": "Linked related issue!", "type": "text"}]}]}, "updateAuthor": {"self": "https://airbyteio.atlassian.net/rest/api/3/user?accountId=5fc9e78d2730d800760becc4", "accountId": "5fc9e78d2730d800760becc4", "emailAddress": "integration-test@airbyte.io", "avatarUrls": {"48x48": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "24x24": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "16x16": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png", "32x32": "https://secure.gravatar.com/avatar/0a7841feac7218131ce7b427283c24ef?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FIT-5.png"}, "displayName": "integration test", "active": true, "timeZone": "America/Los_Angeles", "accountType": "atlassian"}, "created": "2021-04-15T00:08:48.998-0700", "updated": "2021-04-15T00:08:48.998-0700", "jsdPublic": true}, "emitted_at": 1685112937947} @@ -58,6 +58,13 @@ {"stream": "issue_security_schemes", "data": {"self": "https://airbyteio.atlassian.net/rest/api/3/issuesecurityschemes/10001", "id": 10001, "name": "Security scheme 2", "description": "Security scheme 2"}, "emitted_at": 1685112999194} {"stream": "issue_security_schemes", "data": {"self": "https://airbyteio.atlassian.net/rest/api/3/issuesecurityschemes/10000", "id": 10000, "name": "Security scheme 1", "description": "Security scheme 1", "defaultSecurityLevelId": 10002}, "emitted_at": 1685112999195} {"stream": "issue_security_schemes", "data": {"self": "https://airbyteio.atlassian.net/rest/api/3/issuesecurityschemes/10002", "id": 10002, "name": "Security scheme 3", "description": "Security scheme 3 test", "defaultSecurityLevelId": 10003}, "emitted_at": 1685112999195} +{"stream":"issue_transitions","data":{"id":"11","name":"To Do","to":{"self":"https://airbyteio.atlassian.net/rest/api/3/status/10000","description":"","iconUrl":"https://airbyteio.atlassian.net/","name":"To Do","id":"10000","statusCategory":{"self":"https://airbyteio.atlassian.net/rest/api/3/statuscategory/2","id":2,"key":"new","colorName":"blue-gray","name":"To Do"}},"hasScreen":false,"isGlobal":true,"isInitial":false,"isAvailable":true,"isConditional":false,"isLooped":false,"issueId":"IT-26"},"emitted_at":1694797618551} +{"stream":"issue_transitions","data":{"id":"21","name":"In Progress","to":{"self":"https://airbyteio.atlassian.net/rest/api/3/status/3","description":"This issue is being actively worked on at the moment by the assignee.","iconUrl":"https://airbyteio.atlassian.net/images/icons/statuses/inprogress.png","name":"In Progress","id":"3","statusCategory":{"self":"https://airbyteio.atlassian.net/rest/api/3/statuscategory/4","id":4,"key":"indeterminate","colorName":"yellow","name":"In Progress"}},"hasScreen":false,"isGlobal":true,"isInitial":false,"isAvailable":true,"isConditional":false,"isLooped":false,"issueId":"IT-26"},"emitted_at":1694797618551} +{"stream":"issue_transitions","data":{"id":"31","name":"Done","to":{"self":"https://airbyteio.atlassian.net/rest/api/3/status/10001","description":"","iconUrl":"https://airbyteio.atlassian.net/","name":"Done","id":"10001","statusCategory":{"self":"https://airbyteio.atlassian.net/rest/api/3/statuscategory/3","id":3,"key":"done","colorName":"green","name":"Done"}},"hasScreen":false,"isGlobal":true,"isInitial":false,"isAvailable":true,"isConditional":false,"isLooped":false,"issueId":"IT-26"},"emitted_at":1694797618551} +{"stream":"issue_transitions","data":{"id":"101","name":"Closed","to":{"self":"https://airbyteio.atlassian.net/rest/api/3/status/6","description":"The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.","iconUrl":"https://airbyteio.atlassian.net/images/icons/statuses/closed.png","name":"Closed","id":"6","statusCategory":{"self":"https://airbyteio.atlassian.net/rest/api/3/statuscategory/3","id":3,"key":"done","colorName":"green","name":"Done"}},"hasScreen":false,"isGlobal":true,"isInitial":false,"isAvailable":true,"isConditional":false,"isLooped":false,"issueId":"IT-1"},"emitted_at":1694797626847} +{"stream":"issue_transitions","data":{"id":"11","name":"To Do","to":{"self":"https://airbyteio.atlassian.net/rest/api/3/status/10000","description":"","iconUrl":"https://airbyteio.atlassian.net/","name":"To Do","id":"10000","statusCategory":{"self":"https://airbyteio.atlassian.net/rest/api/3/statuscategory/2","id":2,"key":"new","colorName":"blue-gray","name":"To Do"}},"hasScreen":false,"isGlobal":true,"isInitial":false,"isAvailable":true,"isConditional":false,"isLooped":false,"issueId":"TESTKEY13-2"},"emitted_at":1694797627727} +{"stream":"issue_transitions","data":{"id":"21","name":"In Progress","to":{"self":"https://airbyteio.atlassian.net/rest/api/3/status/3","description":"This issue is being actively worked on at the moment by the assignee.","iconUrl":"https://airbyteio.atlassian.net/images/icons/statuses/inprogress.png","name":"In Progress","id":"3","statusCategory":{"self":"https://airbyteio.atlassian.net/rest/api/3/statuscategory/4","id":4,"key":"indeterminate","colorName":"yellow","name":"In Progress"}},"hasScreen":false,"isGlobal":true,"isInitial":false,"isAvailable":true,"isConditional":false,"isLooped":false,"issueId":"TESTKEY13-2"},"emitted_at":1694797627728} +{"stream":"issue_transitions","data":{"id":"31","name":"Done","to":{"self":"https://airbyteio.atlassian.net/rest/api/3/status/10001","description":"","iconUrl":"https://airbyteio.atlassian.net/","name":"Done","id":"10001","statusCategory":{"self":"https://airbyteio.atlassian.net/rest/api/3/statuscategory/3","id":3,"key":"done","colorName":"green","name":"Done"}},"hasScreen":false,"isGlobal":true,"isInitial":false,"isAvailable":true,"isConditional":false,"isLooped":false,"issueId":"TESTKEY13-2"},"emitted_at":1694797627728} {"stream": "issue_type_schemes", "data": {"id": "10000", "name": "Default Issue Type Scheme", "description": "Default issue type scheme is the list of global issue types. All newly created issue types will automatically be added to this scheme.", "isDefault": true}, "emitted_at": 1685112999823} {"stream": "issue_type_schemes", "data": {"id": "10126", "name": "IT: Scrum Issue Type Scheme", "defaultIssueTypeId": "10001"}, "emitted_at": 1685112999824} {"stream": "issue_type_schemes", "data": {"id": "10128", "name": "P2: Scrum Issue Type Scheme", "defaultIssueTypeId": "10001"}, "emitted_at": 1685112999824} @@ -117,9 +124,9 @@ {"stream": "screen_schemes", "data": {"id": 1, "name": "Default Screen Scheme", "description": "Default Screen Scheme", "screens": {"default": 1}}, "emitted_at": 1685113161369} {"stream": "screen_schemes", "data": {"id": 10000, "name": "IT: Scrum Default Screen Scheme", "description": "", "screens": {"default": 10000}}, "emitted_at": 1685113161370} {"stream": "screen_schemes", "data": {"id": 10001, "name": "IT: Scrum Bug Screen Scheme", "description": "", "screens": {"default": 10001}}, "emitted_at": 1685113161371} -{"stream": "sprints", "data": {"id": 2, "self": "https://airbyteio.atlassian.net/rest/agile/1.0/sprint/2", "state": "active", "name": "IT Sprint 1", "startDate": "2022-05-17T11:25:59.072Z", "endDate": "2022-05-31T11:25:00.000Z", "originBoardId": 1, "goal": "Deliver results"}, "emitted_at": 1685113162412} -{"stream": "sprints", "data": {"id": 3, "self": "https://airbyteio.atlassian.net/rest/agile/1.0/sprint/3", "state": "future", "name": "IT Sprint 2", "startDate": "2022-05-31T11:25:59.072Z", "endDate": "2022-06-14T11:25:00.000Z", "originBoardId": 1}, "emitted_at": 1685113162413} -{"stream": "sprints", "data": {"id": 4, "self": "https://airbyteio.atlassian.net/rest/agile/1.0/sprint/4", "state": "future", "name": "IT Sprint 3", "startDate": "2022-06-14T11:25:59.072Z", "endDate": "2022-06-28T11:25:00.000Z", "originBoardId": 1}, "emitted_at": 1685113162413} +{"stream":"sprints","data":{"id":2,"self":"https://airbyteio.atlassian.net/rest/agile/1.0/sprint/2","state":"active","name":"IT Sprint 1","startDate":"2022-05-17T11:25:59.072Z","endDate":"2022-05-31T11:25:00.000Z","originBoardId":1,"goal":"Deliver results","boardId":1},"emitted_at":1694710525224} +{"stream":"sprints","data":{"id":3,"self":"https://airbyteio.atlassian.net/rest/agile/1.0/sprint/3","state":"future","name":"IT Sprint 2","startDate":"2022-05-31T11:25:59.072Z","endDate":"2022-06-14T11:25:00.000Z","originBoardId":1,"boardId":1},"emitted_at":1694710525225} +{"stream":"sprints","data":{"id":4,"self":"https://airbyteio.atlassian.net/rest/agile/1.0/sprint/4","state":"future","name":"IT Sprint 3","startDate":"2022-06-14T11:25:59.072Z","endDate":"2022-06-28T11:25:00.000Z","originBoardId":1,"boardId":1},"emitted_at":1694710525225} {"stream": "sprint_issues", "data": {"expand": "operations,versionedRepresentations,editmeta,changelog,renderedFields", "id": "2-10012", "self": "https://airbyteio.atlassian.net/rest/agile/1.0/issue/10012", "key": "IT-6", "fields": {"customfield_10016": null, "updated": "2022-05-17T04:26:21.613-0700", "created": "2021-03-11T06:14:18.085-0800", "status": {"self": "https://airbyteio.atlassian.net/rest/api/2/status/10000", "description": "", "iconUrl": "https://airbyteio.atlassian.net/", "name": "To Do", "id": "10000", "statusCategory": {"self": "https://airbyteio.atlassian.net/rest/api/2/statuscategory/2", "id": 2, "key": "new", "colorName": "blue-gray", "name": "To Do"}}}, "issueId": "10012", "sprintId": 2, "created": "2021-03-11T06:14:18.085-0800", "updated": "2022-05-17T04:26:21.613-0700"}, "emitted_at": 1685113164271} {"stream": "sprint_issues", "data": {"expand": "operations,versionedRepresentations,editmeta,changelog,renderedFields", "id": "2-10019", "self": "https://airbyteio.atlassian.net/rest/agile/1.0/issue/10019", "key": "IT-9", "fields": {"customfield_10016": null, "updated": "2023-04-05T04:57:18.118-0700", "created": "2021-03-11T06:14:24.791-0800", "status": {"self": "https://airbyteio.atlassian.net/rest/api/2/status/10000", "description": "", "iconUrl": "https://airbyteio.atlassian.net/", "name": "To Do", "id": "10000", "statusCategory": {"self": "https://airbyteio.atlassian.net/rest/api/2/statuscategory/2", "id": 2, "key": "new", "colorName": "blue-gray", "name": "To Do"}}}, "issueId": "10019", "sprintId": 2, "created": "2021-03-11T06:14:24.791-0800", "updated": "2023-04-05T04:57:18.118-0700"}, "emitted_at": 1685113164272} {"stream": "sprint_issues", "data": {"expand": "operations,versionedRepresentations,editmeta,changelog,renderedFields", "id": "2-10000", "self": "https://airbyteio.atlassian.net/rest/agile/1.0/issue/10000", "key": "IT-1", "fields": {"customfield_10016": null, "updated": "2022-05-17T04:26:28.885-0700", "created": "2020-12-07T06:12:17.863-0800", "status": {"self": "https://airbyteio.atlassian.net/rest/api/2/status/10001", "description": "", "iconUrl": "https://airbyteio.atlassian.net/", "name": "Done", "id": "10001", "statusCategory": {"self": "https://airbyteio.atlassian.net/rest/api/2/statuscategory/3", "id": 3, "key": "done", "colorName": "green", "name": "Done"}}, "customfield_10026": null}, "issueId": "10000", "sprintId": 2, "created": "2020-12-07T06:12:17.863-0800", "updated": "2022-05-17T04:26:28.885-0700"}, "emitted_at": 1685113164272} diff --git a/airbyte-integrations/connectors/source-jira/main.py b/airbyte-integrations/connectors/source-jira/main.py index 9a560c777bf7..07f8e63587a2 100644 --- a/airbyte-integrations/connectors/source-jira/main.py +++ b/airbyte-integrations/connectors/source-jira/main.py @@ -7,7 +7,9 @@ from airbyte_cdk.entrypoint import launch from source_jira import SourceJira +from source_jira.config_migrations import MigrateIssueExpandProperties if __name__ == "__main__": source = SourceJira() + MigrateIssueExpandProperties.migrate(sys.argv[1:], source) launch(source, sys.argv[1:]) diff --git a/airbyte-integrations/connectors/source-jira/metadata.yaml b/airbyte-integrations/connectors/source-jira/metadata.yaml index ad0753c1bea0..46efdcead4e2 100644 --- a/airbyte-integrations/connectors/source-jira/metadata.yaml +++ b/airbyte-integrations/connectors/source-jira/metadata.yaml @@ -5,7 +5,7 @@ data: connectorSubtype: api connectorType: source definitionId: 68e63de2-bb83-4c7e-93fa-a8a9051e3993 - dockerImageTag: 0.3.12 + dockerImageTag: 0.6.2 maxSecondsBetweenMessages: 21600 dockerRepository: airbyte/source-jira githubIssueLabel: source-jira diff --git a/airbyte-integrations/connectors/source-jira/setup.py b/airbyte-integrations/connectors/source-jira/setup.py index e481ac92aa12..e4d2618dd194 100644 --- a/airbyte-integrations/connectors/source-jira/setup.py +++ b/airbyte-integrations/connectors/source-jira/setup.py @@ -5,7 +5,7 @@ from setuptools import find_packages, setup -MAIN_REQUIREMENTS = ["airbyte-cdk", "requests==2.25.1", "pendulum~=2.1.2"] +MAIN_REQUIREMENTS = ["airbyte-cdk"] TEST_REQUIREMENTS = [ "requests-mock~=1.9.3", diff --git a/airbyte-integrations/connectors/source-jira/source_jira/config_migrations.py b/airbyte-integrations/connectors/source-jira/source_jira/config_migrations.py new file mode 100644 index 000000000000..5667cdea454f --- /dev/null +++ b/airbyte-integrations/connectors/source-jira/source_jira/config_migrations.py @@ -0,0 +1,102 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + + +import logging +from typing import Any, List, Mapping + +from airbyte_cdk.config_observation import create_connector_config_control_message +from airbyte_cdk.entrypoint import AirbyteEntrypoint +from airbyte_cdk.sources import Source +from airbyte_cdk.sources.message import InMemoryMessageRepository, MessageRepository + +logger = logging.getLogger("airbyte") + + +class MigrateIssueExpandProperties: + """ + This class stands for migrating the config at runtime, + while providing the backward compatibility when falling back to the previous source version. + + Specifically, starting from `0.6.1`, the `issues_stream_expand` property should be like : + > List("renderedFields", "transitions", "changelog" ...) + instead of, in `0.6.0`: + > expand_issue_changelog: bool: True + > render_fields: bool: True + > expand_issue_transition: bool: True + """ + + message_repository: MessageRepository = InMemoryMessageRepository() + migrate_from_keys_map: dict = { + "expand_issue_changelog": "changelog", + "render_fields": "renderedFields", + "expand_issue_transition": "transitions", + } + migrate_to_key: str = "issues_stream_expand_with" + + @classmethod + def should_migrate(cls, config: Mapping[str, Any]) -> bool: + """ + This method determines whether the config should be migrated to have the new structure for the `issues_stream_expand_with`, + based on the source spec. + Returns: + > True, if the transformation is necessary + > False, otherwise. + > Raises the Exception if the structure could not be migrated. + """ + # If the config was already migrated, there is no need to do this again. + # but if the customer has already switched to the new version, + # corrected the old config and switches back to the new version, + # we should try to migrate the modified old issue expand properties. + if cls.migrate_to_key in config: + return not len(config[cls.migrate_to_key]) > 0 + + if any(config.get(key) for key in cls.migrate_from_keys_map): + return True + return False + + @classmethod + def transform_to_array(cls, config: Mapping[str, Any]) -> Mapping[str, Any]: + # assign old values to new property that will be used within the new version + config[cls.migrate_to_key] = [] + for k, v in cls.migrate_from_keys_map.items(): + if config.get(k): + config[cls.migrate_to_key].append(v) + # transform boolean flags to `list` of objects + return config + + @classmethod + def modify_and_save(cls, config_path: str, source: Source, config: Mapping[str, Any]) -> Mapping[str, Any]: + # modify the config + migrated_config = cls.transform_to_array(config) + # save the config + source.write_config(migrated_config, config_path) + # return modified config + return migrated_config + + @classmethod + def emit_control_message(cls, migrated_config: Mapping[str, Any]) -> None: + # add the Airbyte Control Message to message repo + cls.message_repository.emit_message(create_connector_config_control_message(migrated_config)) + # emit the Airbyte Control Message from message queue to stdout + for message in cls.message_repository._message_queue: + print(message.json(exclude_unset=True)) + + @classmethod + def migrate(cls, args: List[str], source: Source) -> None: + """ + This method checks the input args, should the config be migrated, + transform if necessary and emit the CONTROL message. + """ + # get config path + config_path = AirbyteEntrypoint(source).extract_config(args) + # proceed only if `--config` arg is provided + if config_path: + # read the existing config + config = source.read_config(config_path) + # migration check + if cls.should_migrate(config): + cls.emit_control_message( + cls.modify_and_save(config_path, source, config), + ) diff --git a/airbyte-integrations/connectors/source-jira/source_jira/schemas/application_roles.json b/airbyte-integrations/connectors/source-jira/source_jira/schemas/application_roles.json index 66bed202fa4d..c313a68d905e 100644 --- a/airbyte-integrations/connectors/source-jira/source_jira/schemas/application_roles.json +++ b/airbyte-integrations/connectors/source-jira/source_jira/schemas/application_roles.json @@ -52,6 +52,23 @@ "type": ["null", "array"], "description": "Group Details", "items": { "type": ["null", "object"] } + }, + "defaultGroupsDetails": { + "type": ["null", "array"], + "items": { + "type": ["null", "object"], + "properties": { + "groupId": { + "type": ["null", "string"] + }, + "name": { + "type": ["null", "string"] + }, + "self": { + "type": ["null", "string"] + } + } + } } }, "additionalProperties": true, diff --git a/airbyte-integrations/connectors/source-jira/source_jira/schemas/boards.json b/airbyte-integrations/connectors/source-jira/source_jira/schemas/boards.json index e8ef7e03931f..8062977e129d 100644 --- a/airbyte-integrations/connectors/source-jira/source_jira/schemas/boards.json +++ b/airbyte-integrations/connectors/source-jira/source_jira/schemas/boards.json @@ -3,22 +3,54 @@ "type": "object", "properties": { "id": { - "type": "integer" + "type": ["null", "integer"] }, "self": { - "type": "string" + "type": ["null", "string"] }, "name": { - "type": "string" + "type": ["null", "string"] }, "type": { - "type": "string" + "type": ["null", "string"] }, "projectId": { - "type": "string" + "type": ["null", "string"] }, "projectKey": { - "type": "string" + "type": ["null", "string"] + }, + "location": { + "type": ["null", "object"], + "properties": { + "projectId": { + "type": ["null", "integer"] + }, + "userId": { + "type": ["null", "integer"] + }, + "userAccountId": { + "type": ["null", "string"] + }, + "displayName": { + "type": ["null", "string"] + }, + "projectName": { + "type": ["null", "string"] + }, + "projectKey": { + "type": ["null", "string"] + }, + "projectTypeKey": { + "type": ["null", "string"] + }, + "avatarURI": { + "type": ["null", "string"] + }, + "name": { + "type": ["null", "string"] + } + } } } } diff --git a/airbyte-integrations/connectors/source-jira/source_jira/schemas/dashboards.json b/airbyte-integrations/connectors/source-jira/source_jira/schemas/dashboards.json index f9a2b9d0a2ef..ea39c4d60056 100644 --- a/airbyte-integrations/connectors/source-jira/source_jira/schemas/dashboards.json +++ b/airbyte-integrations/connectors/source-jira/source_jira/schemas/dashboards.json @@ -2087,6 +2087,44 @@ "view": { "type": "string", "description": "The URL of the dashboard." + }, + "editpermission": { + "type": ["null", "array"], + "items": { + "type": ["null", "object"], + "properties": { + "group": { + "type": ["null", "object"] + }, + "id": { + "type": ["null", "integer"] + }, + "project": { + "type": ["null", "object"] + }, + "role": { + "type": ["null", "object"] + }, + "type": { + "type": ["null", "string"] + }, + "user": { + "type": ["null", "object"] + } + } + } + }, + "isWritable": { + "type": ["null", "boolean"] + }, + "systemDashboard": { + "type": ["null", "boolean"] + }, + "editPermissions": { + "type": ["null", "array"], + "items": { + "type": ["null", "object"] + } } }, "additionalProperties": true, diff --git a/airbyte-integrations/connectors/source-jira/source_jira/schemas/issue_fields.json b/airbyte-integrations/connectors/source-jira/source_jira/schemas/issue_fields.json index 3e9f78138908..301272f3a40b 100644 --- a/airbyte-integrations/connectors/source-jira/source_jira/schemas/issue_fields.json +++ b/airbyte-integrations/connectors/source-jira/source_jira/schemas/issue_fields.json @@ -173,6 +173,9 @@ "readOnly": true } } + }, + "untranslatedName": { + "type": ["null", "string"] } }, "additionalProperties": true, diff --git a/airbyte-integrations/connectors/source-jira/source_jira/schemas/issue_priorities.json b/airbyte-integrations/connectors/source-jira/source_jira/schemas/issue_priorities.json index 5ea312354108..7e6af637a694 100644 --- a/airbyte-integrations/connectors/source-jira/source_jira/schemas/issue_priorities.json +++ b/airbyte-integrations/connectors/source-jira/source_jira/schemas/issue_priorities.json @@ -25,6 +25,9 @@ "id": { "type": "string", "description": "The ID of the issue priority." + }, + "isDefault": { + "type": ["null", "boolean"] } }, "additionalProperties": true, diff --git a/airbyte-integrations/connectors/source-jira/source_jira/schemas/issue_properties.json b/airbyte-integrations/connectors/source-jira/source_jira/schemas/issue_properties.json index c4ac2141d29f..985fbfb111ba 100644 --- a/airbyte-integrations/connectors/source-jira/source_jira/schemas/issue_properties.json +++ b/airbyte-integrations/connectors/source-jira/source_jira/schemas/issue_properties.json @@ -8,8 +8,10 @@ }, "value": { "description": "The value of the property. Required on create and update." + }, + "isdefault": { + "type": ["null", "boolean"] } }, - "additionalProperties": true, "description": "An entity property, for more information see [Entity properties](https://developer.atlassian.com/cloud/jira/platform/jira-entity-properties/)." } diff --git a/airbyte-integrations/connectors/source-jira/source_jira/schemas/issue_resolutions.json b/airbyte-integrations/connectors/source-jira/source_jira/schemas/issue_resolutions.json index 226ad2dd2b1a..cac6937b08aa 100644 --- a/airbyte-integrations/connectors/source-jira/source_jira/schemas/issue_resolutions.json +++ b/airbyte-integrations/connectors/source-jira/source_jira/schemas/issue_resolutions.json @@ -17,6 +17,9 @@ "name": { "type": "string", "description": "The name of the issue resolution." + }, + "isDefault": { + "type": ["null", "boolean"] } }, "additionalProperties": true, diff --git a/airbyte-integrations/connectors/source-jira/source_jira/schemas/issue_transitions.json b/airbyte-integrations/connectors/source-jira/source_jira/schemas/issue_transitions.json new file mode 100644 index 000000000000..741a6dcec2a5 --- /dev/null +++ b/airbyte-integrations/connectors/source-jira/source_jira/schemas/issue_transitions.json @@ -0,0 +1,77 @@ +{ + "$schema": "https://json-schema.org/draft-07/schema#", + "title": "Issue Transitions", + "type": "object", + "properties": { + "fields": { + "type": ["null", "string"] + }, + "hasScreen": { + "type": ["null", "boolean"] + }, + "id": { + "type": ["null", "string"] + }, + "issueId": { + "type": ["null", "string"] + }, + "isAvailable": { + "type": ["null", "boolean"] + }, + "isConditional": { + "type": ["null", "boolean"] + }, + "isGlobal": { + "type": ["null", "boolean"] + }, + "isInitial": { + "type": ["null", "boolean"] + }, + "isLooped": { + "type": ["null", "boolean"] + }, + "name": { + "type": ["null", "string"] + }, + "to": { + "type": ["null", "object"], + "properties": { + "description": { + "type": ["null", "string"] + }, + "iconUrl": { + "type": ["null", "string"] + }, + "id": { + "type": ["null", "string"] + }, + "name": { + "type": ["null", "string"] + }, + "self": { + "type": ["null", "string"] + }, + "statusCategory": { + "type": ["null", "object"], + "properties": { + "colorName": { + "type": ["null", "string"] + }, + "id": { + "type": ["null", "integer"] + }, + "key": { + "type": ["null", "string"] + }, + "name": { + "type": ["null", "string"] + }, + "self": { + "type": ["null", "string"] + } + } + } + } + } + } +} diff --git a/airbyte-integrations/connectors/source-jira/source_jira/schemas/project_components.json b/airbyte-integrations/connectors/source-jira/source_jira/schemas/project_components.json index 23d450ee9c9a..ef1cbbcf0691 100644 --- a/airbyte-integrations/connectors/source-jira/source_jira/schemas/project_components.json +++ b/airbyte-integrations/connectors/source-jira/source_jira/schemas/project_components.json @@ -505,6 +505,12 @@ "type": "integer", "description": "The ID of the project the component is assigned to.", "readOnly": true + }, + "componentBean": { + "type": ["null", "object"] + }, + "issueCount": { + "type": ["null", "integer"] } }, "additionalProperties": true, diff --git a/airbyte-integrations/connectors/source-jira/source_jira/schemas/projects.json b/airbyte-integrations/connectors/source-jira/source_jira/schemas/projects.json index 3183161171e4..98d0b8457fd7 100644 --- a/airbyte-integrations/connectors/source-jira/source_jira/schemas/projects.json +++ b/airbyte-integrations/connectors/source-jira/source_jira/schemas/projects.json @@ -166,6 +166,9 @@ "archivedBy": { "description": "The user who archived the project.", "readOnly": true + }, + "entityId": { + "type": ["null", "string"] } }, "additionalProperties": true, diff --git a/airbyte-integrations/connectors/source-jira/source_jira/schemas/sprints.json b/airbyte-integrations/connectors/source-jira/source_jira/schemas/sprints.json index d91f1e1ff40f..811c4d49c698 100644 --- a/airbyte-integrations/connectors/source-jira/source_jira/schemas/sprints.json +++ b/airbyte-integrations/connectors/source-jira/source_jira/schemas/sprints.json @@ -29,6 +29,10 @@ "originBoardId": { "type": "integer" }, + "boardId": { + "type": "integer", + "description": "Used to determine which board the sprint is a part of. (Not always the same as originBoardId)" + }, "goal": { "type": "string" } diff --git a/airbyte-integrations/connectors/source-jira/source_jira/schemas/workflow_statuses.json b/airbyte-integrations/connectors/source-jira/source_jira/schemas/workflow_statuses.json index 8fcd1436dbd3..b42f1a8b79d9 100644 --- a/airbyte-integrations/connectors/source-jira/source_jira/schemas/workflow_statuses.json +++ b/airbyte-integrations/connectors/source-jira/source_jira/schemas/workflow_statuses.json @@ -58,6 +58,12 @@ "readOnly": true } } + }, + "scope": { + "type": ["null", "object"] + }, + "untranslatedName": { + "type": ["null", "string"] } }, "additionalProperties": true, diff --git a/airbyte-integrations/connectors/source-jira/source_jira/schemas/workflows.json b/airbyte-integrations/connectors/source-jira/source_jira/schemas/workflows.json index 7d65a897489a..3e6990ac18b6 100644 --- a/airbyte-integrations/connectors/source-jira/source_jira/schemas/workflows.json +++ b/airbyte-integrations/connectors/source-jira/source_jira/schemas/workflows.json @@ -140,6 +140,14 @@ } } } + }, + "created": { + "type": ["null", "string"], + "format": "date-time" + }, + "updated": { + "type": ["null", "string"], + "format": "date-time" } }, "readOnly": true diff --git a/airbyte-integrations/connectors/source-jira/source_jira/source.py b/airbyte-integrations/connectors/source-jira/source_jira/source.py index f8ed4ea43abd..f94ffd8ef193 100644 --- a/airbyte-integrations/connectors/source-jira/source_jira/source.py +++ b/airbyte-integrations/connectors/source-jira/source_jira/source.py @@ -34,6 +34,7 @@ IssueResolutions, Issues, IssueSecuritySchemes, + IssueTransitions, IssueTypeSchemes, IssueTypeScreenSchemes, IssueVotes, @@ -96,20 +97,18 @@ def check_connection(self, logger: AirbyteLogger, config: Mapping[str, Any]) -> if unknown_projects: return False, "unknown project(s): " + ", ".join(unknown_projects) return True, None - except (requests.exceptions.RequestException, ValidationError) as e: - return False, e + except ValidationError as validation_error: + return False, validation_error + except requests.exceptions.RequestException as request_error: + message = " ".join(map(str, request_error.response.json().get("errorMessages", ""))) + return False, f"{message} {request_error}" def streams(self, config: Mapping[str, Any]) -> List[Stream]: config = self._validate_and_transform(config) authenticator = self.get_authenticator(config) args = {"authenticator": authenticator, "domain": config["domain"], "projects": config["projects"]} incremental_args = {**args, "start_date": config.get("start_date")} - render_fields = config.get("render_fields", False) - issues_stream = Issues( - **incremental_args, - expand_changelog=config.get("expand_issue_changelog", False), - render_fields=render_fields, - ) + issues_stream = Issues(**incremental_args, expand_fields=config.get("issues_stream_expand_with", [])) issue_fields_stream = IssueFields(**args) experimental_streams = [] if config.get("enable_experimental_streams", False): @@ -138,6 +137,7 @@ def streams(self, config: Mapping[str, Any]) -> List[Stream]: IssueRemoteLinks(**incremental_args), IssueResolutions(**args), IssueSecuritySchemes(**args), + IssueTransitions(**args), IssueTypeSchemes(**args), IssueTypeScreenSchemes(**args), IssueVotes(**incremental_args), diff --git a/airbyte-integrations/connectors/source-jira/source_jira/spec.json b/airbyte-integrations/connectors/source-jira/source_jira/spec.json index 3fa5fe792cb1..a5f68d13f142 100644 --- a/airbyte-integrations/connectors/source-jira/source_jira/spec.json +++ b/airbyte-integrations/connectors/source-jira/source_jira/spec.json @@ -53,23 +53,41 @@ "expand_issue_changelog": { "type": "boolean", "title": "Expand Issue Changelog", - "description": "Expand the changelog when replicating issues.", - "default": false, - "order": 5 + "airbyte_hidden": true, + "description": "(DEPRECATED) Expand the changelog when replicating issues.", + "default": false }, "render_fields": { "type": "boolean", "title": "Render Issue Fields", - "description": "Render issue fields in HTML format in addition to Jira JSON-like format.", - "default": false, - "order": 6 + "airbyte_hidden": true, + "description": "(DEPRECATED) Render issue fields in HTML format in addition to Jira JSON-like format.", + "default": false + }, + "expand_issue_transition": { + "type": "boolean", + "title": "Expand Issue Transitions", + "airbyte_hidden": true, + "description": "(DEPRECATED) Expand the transitions when replicating issues.", + "default": false + }, + "issues_stream_expand_with": { + "type": "array", + "items": { + "type": "string", + "enum": ["renderedFields", "transitions", "changelog"] + }, + "title": "Expand Issues stream", + "description": "Select fields to Expand the `Issues` stream when replicating with: ", + "order": 5, + "default": [] }, "enable_experimental_streams": { "type": "boolean", "title": "Enable Experimental Streams", "description": "Allow the use of experimental streams which rely on undocumented Jira API endpoints. See https://docs.airbyte.com/integrations/sources/jira#experimental-tables for more info.", "default": false, - "order": 7 + "order": 6 } } } diff --git a/airbyte-integrations/connectors/source-jira/source_jira/streams.py b/airbyte-integrations/connectors/source-jira/source_jira/streams.py index cddb6fb1e54e..c101aa54c12d 100644 --- a/airbyte-integrations/connectors/source-jira/source_jira/streams.py +++ b/airbyte-integrations/connectors/source-jira/source_jira/streams.py @@ -10,7 +10,9 @@ import pendulum import requests +from airbyte_cdk.models import FailureType from airbyte_cdk.sources.streams.http import HttpStream +from airbyte_cdk.utils.traced_exception import AirbyteTracedException from requests.exceptions import HTTPError from .utils import read_full_refresh, read_incremental, safe_max @@ -29,6 +31,13 @@ class JiraStream(HttpStream, ABC): api_v1 = False skip_http_status_codes = [] raise_on_http_errors = True + error_messages = { + requests.codes.UNAUTHORIZED: "Invalid creds were provided, please check your api token, domain and/or email.", + requests.codes.FORBIDDEN: "Please check the 'READ' permission(Scopes for Connect apps) and/or the user has Jira Software rights and access.", + } + config_error_status_codes = [ + requests.codes.UNAUTHORIZED, + ] def __init__(self, domain: str, projects: List[str], **kwargs): super().__init__(**kwargs) @@ -90,6 +99,15 @@ def read_records(self, **kwargs) -> Iterable[Mapping[str, Any]]: try: yield from super().read_records(**kwargs) except HTTPError as e: + user_error_message = self.error_messages.get(e.response.status_code) + if user_error_message: + self.logger.error(user_error_message) + if e.response.status_code in self.config_error_status_codes: + raise AirbyteTracedException( + message="Config validation error: " + user_error_message, + internal_message=str(e), + failure_type=FailureType.config_error, + ) from e if not (self.skip_http_status_codes and e.response.status_code in self.skip_http_status_codes): raise e @@ -195,6 +213,11 @@ class Boards(JiraStream): https://developer.atlassian.com/cloud/jira/software/rest/api-group-other-operations/#api-agile-1-0-board-get """ + skip_http_status_codes = [ + # for user that have no valid license + requests.codes.FORBIDDEN + ] + extract_field = "values" use_cache = True api_v1 = True @@ -320,12 +343,13 @@ class Issues(IncrementalJiraStream): cursor_field = "updated" extract_field = "issues" - use_cache = False # disable caching due to OOM errors in kubernetes + use_cache = True + + skip_http_status_codes = [requests.codes.FORBIDDEN] - def __init__(self, expand_changelog: bool = False, render_fields: bool = False, **kwargs): + def __init__(self, expand_fields: list = None, **kwargs): super().__init__(**kwargs) - self._expand_changelog = expand_changelog - self._render_fields = render_fields + self._expand_fields = expand_fields self._project_ids = [] self.issue_fields_stream = IssueFields(authenticator=self.authenticator, domain=self._domain, projects=self._projects) self.projects_stream = Projects(authenticator=self.authenticator, domain=self._domain, projects=self._projects) @@ -345,13 +369,8 @@ def request_params( if self._project_ids: jql_parts.append(f"project in ({stream_slice.get('project_id')})") params["jql"] = " and ".join([p for p in jql_parts if p]) - expand = [] - if self._expand_changelog: - expand.append("changelog") - if self._render_fields: - expand.append("renderedFields") - if expand: - params["expand"] = ",".join(expand) + if self._expand_fields: + params["expand"] = ",".join(self._expand_fields) return params def transform(self, record: MutableMapping[str, Any], **kwargs) -> MutableMapping[str, Any]: @@ -382,7 +401,9 @@ def should_retry(self, response: requests.Response) -> bool: # we should skip the slice with wrong permissions on project level errors = response.json().get("errorMessages") self.logger.error( - f"Stream `{self.name}`. An error occurred, details: {errors}." f"Check permissions for this project. Skipping for now." + f"Stream `{self.name}`. An error occurred, details: {errors}." + f"Check permissions for this project. Skipping for now. " + f"The user doesn't have permission to the project. Please grant the user to the project." ) setattr(self, "raise_on_http_errors", False) return False @@ -649,6 +670,38 @@ def path(self, **kwargs) -> str: return "issuetypescreenscheme" +class IssueTransitions(StartDateJiraStream): + """ + https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issues/#api-rest-api-3-issue-issueidorkey-transitions-get + """ + + primary_key = ["issueId", "id"] + extract_field = "transitions" + + def __init__(self, **kwargs): + super().__init__(**kwargs) + self.issues_stream = Issues( + authenticator=self.authenticator, + domain=self._domain, + projects=self._projects, + start_date=self._start_date, + ) + + def path(self, stream_slice: Mapping[str, Any], **kwargs) -> str: + return f"issue/{stream_slice['key']}/transitions" + + def read_records(self, stream_slice: Optional[Mapping[str, Any]] = None, **kwargs) -> Iterable[Mapping[str, Any]]: + for issue in read_full_refresh(self.issues_stream): + yield from super().read_records(stream_slice={"key": issue["key"]}, **kwargs) + + def next_page_token(self, response: requests.Response) -> Optional[Mapping[str, Any]]: + return None + + def transform(self, record: MutableMapping[str, Any], stream_slice: Mapping[str, Any], **kwargs) -> MutableMapping[str, Any]: + record["issueId"] = stream_slice["key"] + return record + + class IssueVotes(StartDateJiraStream): """ https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-votes/#api-rest-api-3-issue-issueidorkey-votes-get @@ -688,6 +741,10 @@ class IssueWatchers(StartDateJiraStream): # extract_field = "watchers" primary_key = None + skip_http_status_codes = [ + # Issue is not found or the user does not have permission to view it. + requests.codes.NOT_FOUND + ] def __init__(self, **kwargs): super().__init__(**kwargs) @@ -809,6 +866,7 @@ def path(self, **kwargs) -> str: def request_params(self, **kwargs): params = super().request_params(**kwargs) params["expand"] = "description,lead" + params["status"] = ["live", "archived", "deleted"] return params def read_records(self, **kwargs) -> Iterable[Mapping[str, Any]]: @@ -1106,6 +1164,29 @@ def __init__(self, **kwargs): super().__init__(**kwargs) self.boards_stream = Boards(authenticator=self.authenticator, domain=self._domain, projects=self._projects) + def get_user_message_from_error_message(self, errors: List[str]) -> str: + for error_message in errors: + if "The board does not support sprints" in error_message: + return ( + "The board does not support sprints. The board does not have a sprint board. if it's a team-managed one, " + "does it have sprints enabled under project settings? If it's a company-managed one," + " check that it has at least one Scrum board associated with it." + ) + + def should_retry(self, response: requests.Response) -> bool: + if response.status_code == requests.codes.bad_request: + errors = response.json().get("errorMessages") + message = self.get_user_message_from_error_message(errors) + if message: + self.logger.error( + f"Stream `{self.name}`. An error occurred, details: {errors}." + f"Skipping for now. {self.get_user_message_from_error_message(errors)}" + ) + setattr(self, "raise_on_http_errors", False) + return False + else: + return super().should_retry(response) + def path(self, stream_slice: Mapping[str, Any], **kwargs) -> str: return f"board/{stream_slice['board_id']}/sprint" @@ -1117,6 +1198,10 @@ def read_records(self, stream_slice: Optional[Mapping[str, Any]] = None, **kwarg self.logger.info(f"Fetching sprints for board: {board_details}") yield from super().read_records(stream_slice={"board_id": board["id"]}, **kwargs) + def transform(self, record: MutableMapping[str, Any], stream_slice: Mapping[str, Any], **kwargs) -> MutableMapping[str, Any]: + record["boardId"] = stream_slice["board_id"] + return record + class SprintIssues(IncrementalJiraStream): """ @@ -1263,6 +1348,11 @@ class WorkflowStatuses(JiraStream): https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-workflow-statuses/#api-rest-api-3-status-get """ + skip_http_status_codes = [ + # for user that have no valid license + requests.codes.FORBIDDEN + ] + def path(self, **kwargs) -> str: return "status" diff --git a/airbyte-integrations/connectors/source-jira/unit_tests/conftest.py b/airbyte-integrations/connectors/source-jira/unit_tests/conftest.py index 7c5ff589790b..09224b25c185 100644 --- a/airbyte-integrations/connectors/source-jira/unit_tests/conftest.py +++ b/airbyte-integrations/connectors/source-jira/unit_tests/conftest.py @@ -266,7 +266,7 @@ def mock_projects_responses(config, projects_response): Projects.use_cache = False responses.add( responses.GET, - f"https://{config['domain']}/rest/api/3/project/search?maxResults=50&expand=description%2Clead", + f"https://{config['domain']}/rest/api/3/project/search?maxResults=50&expand=description%2Clead&status=live&status=archived&status=deleted", json=projects_response, ) diff --git a/airbyte-integrations/connectors/source-jira/unit_tests/test_migrations/test_config.json b/airbyte-integrations/connectors/source-jira/unit_tests/test_migrations/test_config.json new file mode 100644 index 000000000000..52d5f046634e --- /dev/null +++ b/airbyte-integrations/connectors/source-jira/unit_tests/test_migrations/test_config.json @@ -0,0 +1 @@ +{"api_token": "invalid_token", "domain": "invaliddomain.atlassian.net", "email": "no-reply@domain.com", "start_date": "2023-01-01T00:00:00Z", "projects": ["IT1", "IT1", "IT1"], "expand_issue_changelog": true, "render_fields": true, "expand_issue_transition": false} \ No newline at end of file diff --git a/airbyte-integrations/connectors/source-jira/unit_tests/test_migrations/test_config_migrations.py b/airbyte-integrations/connectors/source-jira/unit_tests/test_migrations/test_config_migrations.py new file mode 100644 index 000000000000..2b124e0e6323 --- /dev/null +++ b/airbyte-integrations/connectors/source-jira/unit_tests/test_migrations/test_config_migrations.py @@ -0,0 +1,68 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + + +import json +import os +from typing import Any, Mapping + +from airbyte_cdk.models import OrchestratorType, Type +from airbyte_cdk.sources import Source +from source_jira.config_migrations import MigrateIssueExpandProperties +from source_jira.source import SourceJira + +# BASE ARGS +CMD = "check" +TEST_CONFIG_PATH = f"{os.path.dirname(__file__)}/test_config.json" +SOURCE_INPUT_ARGS = [CMD, "--config", TEST_CONFIG_PATH] +SOURCE: Source = SourceJira() + + +# HELPERS +def load_config(config_path: str = TEST_CONFIG_PATH) -> Mapping[str, Any]: + with open(config_path, "r") as config: + return json.load(config) + + +def revert_migration(config_path: str = TEST_CONFIG_PATH) -> None: + with open(config_path, "r") as test_config: + config = json.load(test_config) + config.pop("issues_stream_expand_with") + with open(config_path, "w") as updated_config: + config = json.dumps(config) + updated_config.write(config) + + +def test_migrate_config(): + migration_instance = MigrateIssueExpandProperties() + # migrate the test_config + migration_instance.migrate(SOURCE_INPUT_ARGS, SOURCE) + # load the updated config + test_migrated_config = load_config() + # check migrated property + assert "issues_stream_expand_with" in test_migrated_config + assert isinstance(test_migrated_config["issues_stream_expand_with"], list) + # check the old property is in place + assert all(key in test_migrated_config for key in migration_instance.migrate_from_keys_map) + assert all(isinstance(test_migrated_config[key], bool) for key in migration_instance.migrate_from_keys_map) + # check the migration should be skipped, once already done + assert not migration_instance.should_migrate(test_migrated_config) + # test CONTROL MESSAGE was emitted + control_msg = migration_instance.message_repository._message_queue[0] + assert control_msg.type == Type.CONTROL + assert control_msg.control.type == OrchestratorType.CONNECTOR_CONFIG + # check the migrated values + assert control_msg.control.connectorConfig.config["issues_stream_expand_with"] == ["changelog", "renderedFields"] + # revert the test_config to the starting point + revert_migration() + + +def test_config_is_reverted(): + # check the test_config state, it has to be the same as before tests + test_config = load_config() + # check the config no longer has the migrated property + assert "issues_stream_expand_with" not in test_config + # check the old property is still there + assert all(key in test_config for key in MigrateIssueExpandProperties.migrate_from_keys_map) + assert all(isinstance(test_config[key], bool) for key in MigrateIssueExpandProperties.migrate_from_keys_map) diff --git a/airbyte-integrations/connectors/source-jira/unit_tests/test_source.py b/airbyte-integrations/connectors/source-jira/unit_tests/test_source.py index cb9ba9330782..918a0d58596a 100644 --- a/airbyte-integrations/connectors/source-jira/unit_tests/test_source.py +++ b/airbyte-integrations/connectors/source-jira/unit_tests/test_source.py @@ -4,7 +4,9 @@ from unittest.mock import MagicMock +import pytest import responses +from airbyte_cdk.utils.traced_exception import AirbyteTracedException from source_jira.source import SourceJira @@ -12,7 +14,7 @@ def test_streams(config): source = SourceJira() streams = source.streams(config) - expected_streams_number = 51 + expected_streams_number = 52 assert len(streams) == expected_streams_number @@ -20,7 +22,7 @@ def test_streams(config): def test_check_connection(config, projects_response, labels_response): responses.add( responses.GET, - f"https://{config['domain']}/rest/api/3/project/search?maxResults=50&expand=description%2Clead", + f"https://{config['domain']}/rest/api/3/project/search?maxResults=50&expand=description%2Clead&status=live&status=archived&status=deleted", json=projects_response, ) responses.add( @@ -34,6 +36,47 @@ def test_check_connection(config, projects_response, labels_response): assert source.check_connection(logger=logger_mock, config=config) == (True, None) +@responses.activate +def test_check_connection_config_error(config, caplog): + responses.add( + responses.GET, + f"https://{config['domain']}/rest/api/3/project/search?maxResults=50&expand=description%2Clead&status=live&status=archived&status=deleted", + status=401 + ) + responses.add( + responses.GET, + f"https://{config['domain']}/rest/api/3/label?maxResults=50", + status=401 + ) + source = SourceJira() + logger_mock = MagicMock() + with pytest.raises(AirbyteTracedException): + source.check_connection(logger=logger_mock, config=config) + + assert "Invalid creds were provided, please check your api token, domain and/or email." in caplog.text + + +@responses.activate +def test_check_connection_404_error(config): + responses.add( + responses.GET, + f"https://{config['domain']}/rest/api/3/project/search?maxResults=50&expand=description%2Clead&status=live&status=archived&status=deleted", + status=404, + json={'errorMessages': ['Not Found project.']} + ) + responses.add( + responses.GET, + f"https://{config['domain']}/rest/api/3/label?maxResults=50", + status=404, + json={'errorMessages': ['Not Found Labels.']} + ) + source = SourceJira() + logger_mock = MagicMock() + is_connected, reason = source.check_connection(logger=logger_mock, config=config) + assert is_connected is False + assert "Not Found Labels. 404 Client Error: Not Found for url" in reason + + def test_get_authenticator(config): source = SourceJira() authenticator = source.get_authenticator(config=config) diff --git a/airbyte-integrations/connectors/source-jira/unit_tests/test_streams.py b/airbyte-integrations/connectors/source-jira/unit_tests/test_streams.py index 654b49b72715..0a50ab81ea83 100644 --- a/airbyte-integrations/connectors/source-jira/unit_tests/test_streams.py +++ b/airbyte-integrations/connectors/source-jira/unit_tests/test_streams.py @@ -6,6 +6,7 @@ import requests import responses from airbyte_cdk.models import SyncMode +from airbyte_cdk.utils.traced_exception import AirbyteTracedException from requests.exceptions import HTTPError from responses import matchers from source_jira.source import SourceJira @@ -60,6 +61,24 @@ from source_jira.utils import read_full_refresh +@responses.activate +def test_application_roles_stream_401_error(config, caplog): + config['domain'] = "test_application_domain" + responses.add( + responses.GET, + f"https://{config['domain']}/rest/api/3/applicationrole?maxResults=50", + status=401 + ) + + authenticator = SourceJira().get_authenticator(config=config) + args = {"authenticator": authenticator, "domain": config["domain"], "projects": config.get("projects", [])} + stream = ApplicationRoles(**args) + with pytest.raises(AirbyteTracedException) as e: + [r for r in stream.read_records(sync_mode=SyncMode.full_refresh)] + assert e.value.message == "Config validation error: Invalid creds were provided, please check your api token, domain and/or email." + assert "Invalid creds were provided, please check your api token, domain and/or email." in caplog.text + + @responses.activate def test_application_roles_stream(config, application_roles_response): responses.add( @@ -109,6 +128,23 @@ def test_boards_stream(config, boards_response): assert len(responses.calls) == 1 +@responses.activate +def test_board_stream_forbidden(config, boards_response, caplog): + config['domain'] = 'test_boards_domain' + responses.add( + responses.GET, + f"https://{config['domain']}/rest/agile/1.0/board?maxResults=50", + json={'error': f"403 Client Error: Forbidden for url: https://{config['domain']}/rest/agile/1.0/board?maxResults=50"}, + status=403 + ) + authenticator = SourceJira().get_authenticator(config=config) + args = {"authenticator": authenticator, "domain": config["domain"], "projects": config.get("projects", [])} + stream = Boards(**args) + records = [r for r in stream.read_records(sync_mode=SyncMode.full_refresh)] + assert records == [] + assert "Please check the 'READ' permission(Scopes for Connect apps) and/or the user has Jira Software rights and access." in caplog.text + + @responses.activate def test_dashboards_stream(config, dashboards_response): responses.add( @@ -483,7 +519,7 @@ def test_sprints_stream(config, sprints_response): @responses.activate -def test_board_does_not_support_sprints(config): +def test_board_does_not_support_sprints(config, caplog): url = f"https://{config['domain']}/rest/agile/1.0/board/4/sprint?maxResults=50" error = {'errorMessages': ['The board does not support sprints'], 'errors': {}} responses.add(responses.GET, url, json=error, status=400) @@ -493,6 +529,9 @@ def test_board_does_not_support_sprints(config): response = requests.get(url) actual = stream.should_retry(response) assert actual is False + assert ("The board does not support sprints. The board does not have a sprint board. if it's a team-managed one, " + "does it have sprints enabled under project settings? If it's a company-managed one," + " check that it has at least one Scrum board associated with it.") in caplog.text @responses.activate @@ -651,7 +690,7 @@ def test_issues_stream(config, projects_response, mock_issues_responses, issues_ projects_response['values'].append({"id": "3", "key": "Project1"}) responses.add( responses.GET, - f"https://{config['domain']}/rest/api/3/project/search?maxResults=50&expand=description%2Clead", + f"https://{config['domain']}/rest/api/3/project/search?maxResults=50&expand=description%2Clead&status=live&status=archived&status=deleted", json=projects_response, ) responses.add( @@ -667,7 +706,7 @@ def test_issues_stream(config, projects_response, mock_issues_responses, issues_ records = list(read_full_refresh(stream)) assert len(records) == 1 assert len(responses.calls) == 4 - error_message = "Stream `issues`. An error occurred, details: [\"The value '3' does not exist for the field 'project'.\"].Check permissions for this project. Skipping for now." + error_message = "Stream `issues`. An error occurred, details: [\"The value '3' does not exist for the field 'project'.\"].Check permissions for this project. Skipping for now. The user doesn't have permission to the project. Please grant the user to the project." assert error_message in caplog.messages @@ -685,7 +724,7 @@ def test_issue_comments_stream(config, mock_projects_responses, mock_issues_resp records = [r for r in stream.read_records(sync_mode=SyncMode.full_refresh)] assert len(records) == 2 - assert len(responses.calls) == 4 + assert len(responses.calls) == 2 @responses.activate @@ -826,7 +865,7 @@ def test_issue_worklogs_stream(config, mock_projects_responses, mock_issues_resp stream = IssueWorklogs(**args) records = [r for r in stream.read_records(sync_mode=SyncMode.full_refresh)] assert len(records) == 1 - assert len(responses.calls) == 4 + assert len(responses.calls) == 2 @responses.activate @@ -842,7 +881,7 @@ def test_issue_watchers_stream(config, mock_projects_responses, mock_issues_resp stream = IssueWatchers(**args) records = [r for r in stream.read_records(sync_mode=SyncMode.full_refresh)] assert len(records) == 1 - assert len(responses.calls) == 4 + assert len(responses.calls) == 2 @responses.activate @@ -859,7 +898,7 @@ def test_issue_votes_stream(config, mock_projects_responses, mock_issues_respons records = [r for r in stream.read_records(sync_mode=SyncMode.full_refresh, stream_slice={"key": "Project1"})] assert len(records) == 1 - assert len(responses.calls) == 4 + assert len(responses.calls) == 2 @responses.activate @@ -876,7 +915,7 @@ def test_issue_remote_links_stream(config, mock_projects_responses, mock_issues_ records = [r for r in stream.read_records(sync_mode=SyncMode.full_refresh, stream_slice={"key": "Project1"})] assert len(records) == 2 - assert len(responses.calls) == 4 + assert len(responses.calls) == 2 @responses.activate diff --git a/airbyte-integrations/connectors/source-kafka/build.gradle b/airbyte-integrations/connectors/source-kafka/build.gradle index 7edb1fce90a0..170cb4bf78fd 100644 --- a/airbyte-integrations/connectors/source-kafka/build.gradle +++ b/airbyte-integrations/connectors/source-kafka/build.gradle @@ -23,15 +23,15 @@ dependencies { implementation project(':airbyte-config-oss:config-models-oss') implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') - implementation libs.connectors.testcontainers.kafka implementation 'org.apache.kafka:kafka-clients:3.2.1' implementation 'org.apache.kafka:connect-json:3.2.1' implementation 'io.confluent:kafka-avro-serializer:7.2.1' + testImplementation libs.testcontainers.kafka + integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-kafka') - integrationTestJavaImplementation libs.connectors.testcontainers.kafka + integrationTestJavaImplementation libs.testcontainers.kafka - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors/source-kustomer-singer/acceptance-test-config.yml b/airbyte-integrations/connectors/source-kustomer-singer/acceptance-test-config.yml index 4e8535b8f6d6..8da27742f89a 100644 --- a/airbyte-integrations/connectors/source-kustomer-singer/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-kustomer-singer/acceptance-test-config.yml @@ -19,16 +19,6 @@ tests: - config_path: "secrets/config.json" configured_catalog_path: "integration_tests/configured_catalog.json" future_state_path: "integration_tests/abnormal_state.json" - cursor_paths: - conversations: ["bookmarks", "conversations"] - customers: ["bookmarks", "customers"] - kobjects: ["bookmarks", "kobjects"] - messages: ["bookmarks", "messages"] - notes: ["bookmarks", "notes"] - shortcuts: ["bookmarks", "shortcuts"] - tags: ["bookmarks", "tags"] - teams: ["bookmarks", "teams"] - users: ["bookmarks", "users"] full_refresh: - config_path: "secrets/config.json" configured_catalog_path: "integration_tests/configured_catalog.json" diff --git a/airbyte-integrations/connectors/source-lemlist/.dockerignore b/airbyte-integrations/connectors/source-lemlist/.dockerignore index 880323ffc755..ea2ed092f247 100644 --- a/airbyte-integrations/connectors/source-lemlist/.dockerignore +++ b/airbyte-integrations/connectors/source-lemlist/.dockerignore @@ -1,6 +1,5 @@ * !Dockerfile -!Dockerfile.test !main.py !source_lemlist !setup.py diff --git a/airbyte-integrations/connectors/source-lemlist/Dockerfile b/airbyte-integrations/connectors/source-lemlist/Dockerfile index 6519fa94ff94..82459ff84719 100644 --- a/airbyte-integrations/connectors/source-lemlist/Dockerfile +++ b/airbyte-integrations/connectors/source-lemlist/Dockerfile @@ -34,5 +34,5 @@ COPY source_lemlist ./source_lemlist ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=0.1.1 +LABEL io.airbyte.version=0.2.0 LABEL io.airbyte.name=airbyte/source-lemlist diff --git a/airbyte-integrations/connectors/source-lemlist/README.md b/airbyte-integrations/connectors/source-lemlist/README.md index c1d6724ba94d..9effcddefab8 100644 --- a/airbyte-integrations/connectors/source-lemlist/README.md +++ b/airbyte-integrations/connectors/source-lemlist/README.md @@ -1,35 +1,10 @@ # Lemlist Source -This is the repository for the Lemlist source connector, written in Python. -For information about how to use this connector within Airbyte, see [the documentation](https://docs.airbyte.io/integrations/sources/lemlist). +This is the repository for the Lemlist configuration based source connector. +For information about how to use this connector within Airbyte, see [the documentation](https://docs.airbyte.com/integrations/sources/lemlist). ## Local development -### Prerequisites -**To iterate on this connector, make sure to complete this prerequisites section.** - -#### Minimum Python version required `= 3.7.0` - -#### Build & Activate Virtual Environment and install dependencies -From this connector directory, create a virtual environment: -``` -python -m venv .venv -``` - -This will generate a virtualenv for this module in `.venv/`. Make sure this venv is active in your -development environment of choice. To activate it from the terminal, run: -``` -source .venv/bin/activate -pip install -r requirements.txt -pip install '.[tests]' -``` -If you are in an IDE, follow your IDE's instructions to activate the virtualenv. - -Note that while we are installing dependencies from `requirements.txt`, you should only edit `setup.py` for your dependencies. `requirements.txt` is -used for editable installs (`pip install -e`) to pull in Python dependencies from the monorepo and will call `setup.py`. -If this is mumbo jumbo to you, don't worry about it, just put your deps in `setup.py` but install using `pip install -r requirements.txt` and everything -should work as you expect. - #### Building via Gradle You can also build the connector in Gradle. This is typically used in CI and not needed for your development workflow. @@ -39,22 +14,14 @@ To build using Gradle, from the Airbyte repository root, run: ``` #### Create credentials -**If you are a community contributor**, follow the instructions in the [documentation](https://docs.airbyte.io/integrations/sources/lemlist) -to generate the necessary credentials. Then create a file `secrets/config.json` conforming to the `source_lemlist/spec.json` file. +**If you are a community contributor**, follow the instructions in the [documentation](https://docs.airbyte.com/integrations/sources/lemlist) +to generate the necessary credentials. Then create a file `secrets/config.json` conforming to the `source_lemlist/spec.yaml` file. Note that any directory named `secrets` is gitignored across the entire Airbyte repo, so there is no danger of accidentally checking in sensitive information. See `integration_tests/sample_config.json` for a sample config file. **If you are an Airbyte core member**, copy the credentials in Lastpass under the secret name `source lemlist test creds` and place them into `secrets/config.json`. -### Locally running the connector -``` -python main.py spec -python main.py check --config secrets/config.json -python main.py discover --config secrets/config.json -python main.py read --config secrets/config.json --catalog integration_tests/configured_catalog.json -``` - ### Locally running the connector docker image #### Build @@ -79,32 +46,15 @@ docker run --rm -v $(pwd)/secrets:/secrets airbyte/source-lemlist:dev discover - docker run --rm -v $(pwd)/secrets:/secrets -v $(pwd)/integration_tests:/integration_tests airbyte/source-lemlist:dev read --config /secrets/config.json --catalog /integration_tests/configured_catalog.json ``` ## Testing -Make sure to familiarize yourself with [pytest test discovery](https://docs.pytest.org/en/latest/goodpractices.html#test-discovery) to know how your test files and methods should be named. -First install test dependencies into your virtual environment: -``` -pip install .[tests] -``` -### Unit Tests -To run unit tests locally, from the connector directory run: -``` -python -m pytest unit_tests -``` -### Integration Tests -There are two types of integration tests: Acceptance Tests (Airbyte's test suite for all source connectors) and custom integration tests (which are specific to this connector). -#### Custom Integration tests -Place custom tests inside `integration_tests/` folder, then, from the connector root, run -``` -python -m pytest integration_tests -``` #### Acceptance Tests -Customize `acceptance-test-config.yml` file to configure tests. See [Connector Acceptance Tests](https://docs.airbyte.io/connector-development/testing-connectors/connector-acceptance-tests-reference) for more information. +Customize `acceptance-test-config.yml` file to configure tests. See [Connector Acceptance Tests](https://docs.airbyte.com/connector-development/testing-connectors/connector-acceptance-tests-reference) for more information. If your connector requires to create or destroy resources for use during acceptance tests create fixtures for it and place them inside integration_tests/acceptance.py. -To run your integration tests with acceptance tests, from the connector root, run + +To run your integration tests with Docker, run: ``` -python -m pytest integration_tests -p integration_tests.acceptance +./acceptance-test-docker.sh ``` -To run your integration tests with docker ### Using gradle to run tests All commands should be run from airbyte project root. diff --git a/airbyte-integrations/connectors/source-lemlist/__init__.py b/airbyte-integrations/connectors/source-lemlist/__init__.py new file mode 100644 index 000000000000..c941b3045795 --- /dev/null +++ b/airbyte-integrations/connectors/source-lemlist/__init__.py @@ -0,0 +1,3 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# diff --git a/airbyte-integrations/connectors/source-lemlist/acceptance-test-config.yml b/airbyte-integrations/connectors/source-lemlist/acceptance-test-config.yml index 39155271a6b6..0878982761ee 100644 --- a/airbyte-integrations/connectors/source-lemlist/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-lemlist/acceptance-test-config.yml @@ -1,18 +1,30 @@ +# See [Connector Acceptance Tests](https://docs.airbyte.com/connector-development/testing-connectors/connector-acceptance-tests-reference) +# for more information about how to configure these tests connector_image: airbyte/source-lemlist:dev -tests: +acceptance_tests: spec: - - spec_path: "source_lemlist/spec.json" + tests: + - spec_path: "source_lemlist/spec.yaml" connection: - - config_path: "secrets/config.json" - status: "succeed" - - config_path: "integration_tests/invalid_config.json" - status: "failed" + tests: + - config_path: "secrets/config.json" + status: "succeed" + - config_path: "integration_tests/invalid_config.json" + status: "failed" discovery: - - config_path: "secrets/config.json" + tests: + - config_path: "secrets/config.json" basic_read: - - config_path: "secrets/config.json" - configured_catalog_path: "integration_tests/configured_catalog.json" - empty_streams: ["campaigns", "activities", "unsubscribes"] + tests: + - config_path: "secrets/config.json" + configured_catalog_path: "integration_tests/configured_catalog.json" + empty_streams: + - name: campaigns + - name: activities + - name: unsubscribes + incremental: + bypass_reason: "This connector does not implement incremental sync" full_refresh: - - config_path: "secrets/config.json" - configured_catalog_path: "integration_tests/configured_catalog.json" + tests: + - config_path: "secrets/config.json" + configured_catalog_path: "integration_tests/configured_catalog.json" diff --git a/airbyte-integrations/connectors/source-lemlist/acceptance-test-docker.sh b/airbyte-integrations/connectors/source-lemlist/acceptance-test-docker.sh old mode 100644 new mode 100755 index 5797d20fe9a7..b6d65deeccb4 --- a/airbyte-integrations/connectors/source-lemlist/acceptance-test-docker.sh +++ b/airbyte-integrations/connectors/source-lemlist/acceptance-test-docker.sh @@ -1,2 +1,3 @@ #!/usr/bin/env sh + source "$(git rev-parse --show-toplevel)/airbyte-integrations/bases/connector-acceptance-test/acceptance-test-docker.sh" diff --git a/airbyte-integrations/connectors/source-lemlist/bootstrap.md b/airbyte-integrations/connectors/source-lemlist/bootstrap.md deleted file mode 100644 index fde382598176..000000000000 --- a/airbyte-integrations/connectors/source-lemlist/bootstrap.md +++ /dev/null @@ -1,26 +0,0 @@ -# Lemlist - -## API Reference - -API Docs: https://developer.lemlist.com/#introduction - -## Overview - -Lemlist is your sales automation and cold email software. Using its API you can retrieve information about campaigns, activities and unsubscribes. - -- Lemlist API uses Basic Authentication. -- Pagination is offset-based. -- It uses fixed-window rate limiting strategy. - -## Endpoints - -Lemlist API consists of four endpoints which can be extracted data from: - - 1. **Team**: This endpoint retrieves information of your team. - 2. **Campaigns**: This endpoint retrieves the list of all campaigns. - 3. **Activities**: This endpoint retrieves the last 100 activities. - 4. **Unsubscribes**: This endpoint retrieves the list of all people who are unsubscribed. - -## Notes - -- The API doesn't have any way to filter information so it doesn't support incremental syncs. diff --git a/airbyte-integrations/connectors/source-lemlist/integration_tests/__init__.py b/airbyte-integrations/connectors/source-lemlist/integration_tests/__init__.py index 46b7376756ec..c941b3045795 100644 --- a/airbyte-integrations/connectors/source-lemlist/integration_tests/__init__.py +++ b/airbyte-integrations/connectors/source-lemlist/integration_tests/__init__.py @@ -1,3 +1,3 @@ # -# Copyright (c) 2021 Airbyte, Inc., all rights reserved. +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. # diff --git a/airbyte-integrations/connectors/source-lemlist/integration_tests/abnormal_state.json b/airbyte-integrations/connectors/source-lemlist/integration_tests/abnormal_state.json new file mode 100644 index 000000000000..52b0f2c2118f --- /dev/null +++ b/airbyte-integrations/connectors/source-lemlist/integration_tests/abnormal_state.json @@ -0,0 +1,5 @@ +{ + "todo-stream-name": { + "todo-field-name": "todo-abnormal-value" + } +} diff --git a/airbyte-integrations/connectors/source-lemlist/integration_tests/acceptance.py b/airbyte-integrations/connectors/source-lemlist/integration_tests/acceptance.py index 82823254d266..9e6409236281 100644 --- a/airbyte-integrations/connectors/source-lemlist/integration_tests/acceptance.py +++ b/airbyte-integrations/connectors/source-lemlist/integration_tests/acceptance.py @@ -11,4 +11,6 @@ @pytest.fixture(scope="session", autouse=True) def connector_setup(): """This fixture is a placeholder for external resources that acceptance test might require.""" + # TODO: setup test dependencies if needed. otherwise remove the TODO comments yield + # TODO: clean up test dependencies diff --git a/airbyte-integrations/connectors/source-lemlist/integration_tests/sample_state.json b/airbyte-integrations/connectors/source-lemlist/integration_tests/sample_state.json new file mode 100644 index 000000000000..3587e579822d --- /dev/null +++ b/airbyte-integrations/connectors/source-lemlist/integration_tests/sample_state.json @@ -0,0 +1,5 @@ +{ + "todo-stream-name": { + "todo-field-name": "value" + } +} diff --git a/airbyte-integrations/connectors/source-lemlist/metadata.yaml b/airbyte-integrations/connectors/source-lemlist/metadata.yaml index 5585511fa412..1b9d60189c19 100644 --- a/airbyte-integrations/connectors/source-lemlist/metadata.yaml +++ b/airbyte-integrations/connectors/source-lemlist/metadata.yaml @@ -1,24 +1,25 @@ data: + allowedHosts: + hosts: + - api.lemlist.com + registries: + cloud: + enabled: true + oss: + enabled: true connectorSubtype: api connectorType: source definitionId: 789f8e7a-2d28-11ec-8d3d-0242ac130003 - dockerImageTag: 0.1.1 - icon: lemlist.svg + dockerImageTag: 0.2.0 dockerRepository: airbyte/source-lemlist githubIssueLabel: source-lemlist + icon: lemlist.svg license: MIT name: Lemlist - registries: - cloud: - enabled: true - oss: - enabled: true + releaseDate: "2021-10-14" releaseStage: alpha + supportLevel: community documentationUrl: https://docs.airbyte.com/integrations/sources/lemlist tags: - - language:python - ab_internal: - sl: 100 - ql: 100 - supportLevel: community + - language:lowcode metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-lemlist/requirements.txt b/airbyte-integrations/connectors/source-lemlist/requirements.txt index d6e1198b1ab1..cf563bcab685 100644 --- a/airbyte-integrations/connectors/source-lemlist/requirements.txt +++ b/airbyte-integrations/connectors/source-lemlist/requirements.txt @@ -1 +1,2 @@ -e . +-e ../../bases/connector-acceptance-test \ No newline at end of file diff --git a/airbyte-integrations/connectors/source-lemlist/sample_files/configured_catalog.json b/airbyte-integrations/connectors/source-lemlist/sample_files/configured_catalog.json deleted file mode 100644 index 6fdac40ccc0f..000000000000 --- a/airbyte-integrations/connectors/source-lemlist/sample_files/configured_catalog.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "streams": [ - { - "stream": { - "name": "team", - "json_schema": {}, - "supported_sync_modes": ["full_refresh"] - }, - "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite" - }, - { - "stream": { - "name": "campaigns", - "json_schema": {}, - "supported_sync_modes": ["full_refresh"] - }, - "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite" - }, - { - "stream": { - "name": "activities", - "json_schema": {}, - "supported_sync_modes": ["full_refresh"] - }, - "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite" - }, - { - "stream": { - "name": "unsubscribes", - "json_schema": {}, - "supported_sync_modes": ["full_refresh"] - }, - "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite" - } - ] -} diff --git a/airbyte-integrations/connectors/source-lemlist/setup.py b/airbyte-integrations/connectors/source-lemlist/setup.py index 56192197bbfd..b202001b47e2 100644 --- a/airbyte-integrations/connectors/source-lemlist/setup.py +++ b/airbyte-integrations/connectors/source-lemlist/setup.py @@ -6,10 +6,14 @@ from setuptools import find_packages, setup MAIN_REQUIREMENTS = [ - "airbyte-cdk", + "airbyte-cdk~=0.1", ] -TEST_REQUIREMENTS = ["requests-mock~=1.9.3", "pytest~=6.2.5", "pytest-mock~=3.6.1", "responses~=0.14.0"] +TEST_REQUIREMENTS = [ + "requests-mock~=1.9.3", + "pytest~=6.2", + "pytest-mock~=3.6.1", +] setup( name="source_lemlist", @@ -18,7 +22,7 @@ author_email="contact@airbyte.io", packages=find_packages(), install_requires=MAIN_REQUIREMENTS, - package_data={"": ["*.json", "schemas/*.json", "schemas/shared/*.json"]}, + package_data={"": ["*.json", "*.yaml", "schemas/*.json", "schemas/shared/*.json"]}, extras_require={ "tests": TEST_REQUIREMENTS, }, diff --git a/airbyte-integrations/connectors/source-lemlist/source_lemlist/__init__.py b/airbyte-integrations/connectors/source-lemlist/source_lemlist/__init__.py index e7567c6c38da..49e5d2c93d11 100644 --- a/airbyte-integrations/connectors/source-lemlist/source_lemlist/__init__.py +++ b/airbyte-integrations/connectors/source-lemlist/source_lemlist/__init__.py @@ -1,5 +1,5 @@ # -# Copyright (c) 2021 Airbyte, Inc., all rights reserved. +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. # diff --git a/airbyte-integrations/connectors/source-lemlist/source_lemlist/auth.py b/airbyte-integrations/connectors/source-lemlist/source_lemlist/auth.py deleted file mode 100644 index 3937b9d3ec13..000000000000 --- a/airbyte-integrations/connectors/source-lemlist/source_lemlist/auth.py +++ /dev/null @@ -1,15 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -import base64 -from typing import Tuple - -from airbyte_cdk.sources.streams.http.auth import TokenAuthenticator - - -class HttpBasicAuthenticator(TokenAuthenticator): - def __init__(self, auth: Tuple[str, str], auth_method: str = "Basic", **kwargs): - auth_string = f"{auth[0]}:{auth[1]}".encode("utf8") - b64_encoded = base64.b64encode(auth_string).decode("utf8") - super().__init__(token=b64_encoded, auth_method=auth_method, **kwargs) diff --git a/airbyte-integrations/connectors/source-lemlist/source_lemlist/manifest.yaml b/airbyte-integrations/connectors/source-lemlist/source_lemlist/manifest.yaml new file mode 100644 index 000000000000..6b71e2c41425 --- /dev/null +++ b/airbyte-integrations/connectors/source-lemlist/source_lemlist/manifest.yaml @@ -0,0 +1,89 @@ +version: "0.29.0" + +definitions: + selector: + type: RecordSelector + extractor: + type: DpathExtractor + field_path: [] + requester: + type: HttpRequester + url_base: "https://api.lemlist.com/api/" + http_method: "GET" + authenticator: + type: BasicHttpAuthenticator + username: "" + password: "{{ config['api_key'] }}" + request_params: + limit: 100 + + retriever: + type: SimpleRetriever + record_selector: + $ref: "#/definitions/selector" + paginator: + type: "DefaultPaginator" + pagination_strategy: + type: "OffsetIncrement" + page_size: 100 + page_token_option: + type: "RequestOption" + field_name: "offset" + inject_into: "request_parameter" + requester: + $ref: "#/definitions/requester" + base_stream: + type: DeclarativeStream + retriever: + $ref: "#/definitions/retriever" + team_stream: + $ref: "#/definitions/base_stream" + name: "team" + primary_key: "_id" + $parameters: + path: "/team" + campaigns_stream: + $ref: "#/definitions/base_stream" + name: "campaigns" + primary_key: "_id" + $parameters: + path: "/campaigns" + activities_stream: + $ref: "#/definitions/base_stream" + name: "activities" + primary_key: "_id" + $parameters: + path: "/activities" + unsubscribes_stream: + $ref: "#/definitions/base_stream" + name: "unsubscribes" + primary_key: "_id" + $parameters: + path: "/unsubscribes" + +streams: + - "#/definitions/team_stream" + - "#/definitions/campaigns_stream" + - "#/definitions/activities_stream" + - "#/definitions/unsubscribes_stream" + +check: + type: CheckStream + stream_names: + - "team" + +spec: + type: Spec + documentation_url: https://docs.airbyte.com/integrations/sources/lemlist + connection_specification: + title: Lemlist Spec + type: object + required: + - api_key + additionalProperties: true + properties: + api_key: + type: string + title": API key + description: Lemlist API key, + airbyte_secret: true diff --git a/airbyte-integrations/connectors/source-lemlist/source_lemlist/schemas/team.json b/airbyte-integrations/connectors/source-lemlist/source_lemlist/schemas/team.json index 5fe12ac770c5..495ff6d53874 100644 --- a/airbyte-integrations/connectors/source-lemlist/source_lemlist/schemas/team.json +++ b/airbyte-integrations/connectors/source-lemlist/source_lemlist/schemas/team.json @@ -1,15 +1,16 @@ { - "$schema": "http://json-schema.org/draft-04/schema#", + "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", + "additionalProperties": true, "properties": { "_id": { - "type": "string" + "type": ["null", "string"] }, "name": { "type": ["null", "string"] }, "userIds": { - "type": ["null", "array"], + "type": "array", "items": { "type": "string" } @@ -18,24 +19,127 @@ "type": ["null", "string"] }, "createdAt": { + "format": "%Y-%m-%dT%H:%M:%S.%fZ", "type": ["null", "string"] }, - "apiKey": { - "type": ["null", "string"] + "beta": { + "type": "array", + "items": { + "type": "string" + } }, "billing": { - "type": ["null", "object"], + "type": "object", + "properties": { + "products": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "stripeSubscriptionId": { + "type": "string" + }, + "plan": { + "type": "string" + }, + "quantity": { + "type": "integer" + }, + "okUpdatedAt": { + "format": "%Y-%m-%dT%H:%M:%S.%fZ", + "type": ["null", "string"] + }, + "ok": { + "type": ["null", "boolean"] + }, + "freetrialExpiresAt": { + "format": "%Y-%m-%dT%H:%M:%S.%fZ", + "type": ["null", "string"] + } + } + } + } + } + }, + "revenueVisualization": { + "type": "object", + "additionalProperties": true, "properties": { - "quantity": { - "type": ["null", "integer"] + "enabled": { + "type": "boolean" }, - "ok": { - "type": ["null", "boolean"] + "averageContractValue": { + "type": "integer" }, - "plan": { + "averageContractValueCurrency": { + "type": "string" + }, + "conversionRate": { + "type": "integer" + } + } + }, + "_updatedAt": { + "format": "%Y-%m-%dT%H:%M:%S.%fZ", + "type": ["null", "string"] + }, + "dataIntegrityChecksCron": { + "type": "object", + "properties": { + "errors": { + "type": "array", + "items": { + "type": "object", + "additionalProperties": true, + "properties": { + "text": { + "type": "string" + } + } + } + }, + "lastAt": { + "format": "%Y-%m-%dT%H:%M:%S.%fZ", + "type": ["null", "string"] + } + } + }, + "linkedinLastScannedAt": { + "format": "%Y-%m-%dT%H:%M:%S.%fZ", + "type": ["null", "string"] + }, + "ctdCheck": { + "type": "object", + "properties": { + "lastAt": { + "format": "%Y-%m-%dT%H:%M:%S.%fZ", "type": ["null", "string"] } } + }, + "campaignCron": { + "type": "object", + "properties": { + "lastAt": { + "format": "%Y-%m-%dT%H:%M:%S.%fZ", + "type": ["null", "string"] + } + } + }, + "sequencesSafeCheckCron": { + "type": "object", + "properties": { + "lastAt": { + "format": "%Y-%m-%dT%H:%M:%S.%fZ", + "type": ["null", "string"] + } + } + }, + "apiKey": { + "type": ["null", "string"] } } } diff --git a/airbyte-integrations/connectors/source-lemlist/source_lemlist/source.py b/airbyte-integrations/connectors/source-lemlist/source_lemlist/source.py index fa9192cb40ba..40d485fc7eef 100644 --- a/airbyte-integrations/connectors/source-lemlist/source_lemlist/source.py +++ b/airbyte-integrations/connectors/source-lemlist/source_lemlist/source.py @@ -2,40 +2,17 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # +from airbyte_cdk.sources.declarative.yaml_declarative_source import YamlDeclarativeSource -from typing import Any, List, Mapping, Tuple +""" +This file provides the necessary constructs to interpret a provided declarative YAML configuration file into +source connector. -from airbyte_cdk.models import SyncMode -from airbyte_cdk.sources import AbstractSource -from airbyte_cdk.sources.streams import Stream -from source_lemlist.auth import HttpBasicAuthenticator +WARNING: Do not modify this file. +""" -from .streams import Activities, Campaigns, Team, Unsubscribes - -class SourceLemlist(AbstractSource): - def check_connection(self, logger, config) -> Tuple[bool, any]: - try: - auth = HttpBasicAuthenticator( - ( - "", - config["api_key"], - ), - ) - - team_stream = Team(authenticator=auth) - team_gen = team_stream.read_records(sync_mode=SyncMode.full_refresh) - - next(team_gen) - return True, None - except Exception as error: - return False, f"The provided API key {config['api_key']} is invalid. - {repr(error)}" - - def streams(self, config: Mapping[str, Any]) -> List[Stream]: - auth = HttpBasicAuthenticator( - ( - "", - config["api_key"], - ), - ) - return [Team(authenticator=auth), Campaigns(authenticator=auth), Activities(authenticator=auth), Unsubscribes(authenticator=auth)] +# Declarative Source +class SourceLemlist(YamlDeclarativeSource): + def __init__(self): + super().__init__(**{"path_to_yaml": "manifest.yaml"}) diff --git a/airbyte-integrations/connectors/source-lemlist/source_lemlist/spec.json b/airbyte-integrations/connectors/source-lemlist/source_lemlist/spec.json deleted file mode 100644 index 7887c9d90f7d..000000000000 --- a/airbyte-integrations/connectors/source-lemlist/source_lemlist/spec.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "documentationUrl": "https://docs.airbyte.com/integrations/sources/lemlist", - "connectionSpecification": { - "$schema": "http://json-schema.org/draft-07/schema#", - "title": "Lemlist Spec", - "type": "object", - "required": ["api_key"], - "additionalProperties": false, - "properties": { - "api_key": { - "type": "string", - "title": "API key", - "description": "Lemlist API key.", - "airbyte_secret": true - } - } - } -} diff --git a/airbyte-integrations/connectors/source-lemlist/source_lemlist/streams.py b/airbyte-integrations/connectors/source-lemlist/source_lemlist/streams.py deleted file mode 100644 index e9588e6e1bd3..000000000000 --- a/airbyte-integrations/connectors/source-lemlist/source_lemlist/streams.py +++ /dev/null @@ -1,88 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -from typing import Any, Iterable, Mapping, MutableMapping, Optional - -import requests -from airbyte_cdk.sources.streams.http import HttpStream - - -class LemlistStream(HttpStream): - """Default and max value page_size can have is 100""" - - url_base = "https://api.lemlist.com/api/" - primary_key = "_id" - page_size = 100 - initial_offset = 0 - offset = initial_offset - - def __init__(self, **kwargs): - super().__init__(**kwargs) - - def next_page_token(self, response: requests.Response) -> Optional[Mapping[str, Any]]: - """Pagination is offset-based and response doesn't contain a next_page_token - Thus, the only way to know if there are any more pages is to check if the - number of items in current page is equal to the page_size limit""" - - if len(response.json()) == self.page_size: - self.offset += self.page_size - next_page_params = {"offset": self.offset} - return next_page_params - return None - - def path(self, **kwargs) -> str: - return None - - def request_params( - self, stream_state: Mapping[str, Any], stream_slice: Mapping[str, any] = None, next_page_token: Mapping[str, Any] = None, **kwargs - ) -> MutableMapping[str, Any]: - params = super().request_params(stream_state=stream_state, next_page_token=next_page_token, **kwargs) - params["offset"] = self.initial_offset - params["limit"] = self.page_size - if next_page_token: - params.update(**next_page_token) - return params - - def parse_response(self, response: requests.Response, **kwargs) -> Iterable[Mapping]: - records = response.json() - yield from records - - def backoff_time(self, response: requests.Response): - if "Retry-After" in response.headers: - return int(response.headers["Retry-After"]) - else: - self.logger.info("Retry-after header not found. Using default backoff value") - return 2 - - -class Team(LemlistStream): - """https://developer.lemlist.com/#get-team-information""" - - def path(self, **kwargs) -> str: - return "team" - - def parse_response(self, response: requests.Response, **kwargs) -> Iterable[Mapping]: - records = response.json() - yield from [records] - - -class Campaigns(LemlistStream): - """https://developer.lemlist.com/#campaigns""" - - def path(self, **kwargs) -> str: - return "campaigns" - - -class Activities(LemlistStream): - """https://developer.lemlist.com/#activities""" - - def path(self, **kwargs) -> str: - return "activities" - - -class Unsubscribes(LemlistStream): - """https://developer.lemlist.com/#unsubscribes""" - - def path(self, **kwargs) -> str: - return "unsubscribes" diff --git a/airbyte-integrations/connectors/source-lemlist/unit_tests/__init__.py b/airbyte-integrations/connectors/source-lemlist/unit_tests/__init__.py deleted file mode 100644 index 46b7376756ec..000000000000 --- a/airbyte-integrations/connectors/source-lemlist/unit_tests/__init__.py +++ /dev/null @@ -1,3 +0,0 @@ -# -# Copyright (c) 2021 Airbyte, Inc., all rights reserved. -# diff --git a/airbyte-integrations/connectors/source-lemlist/unit_tests/test_source.py b/airbyte-integrations/connectors/source-lemlist/unit_tests/test_source.py deleted file mode 100644 index aeb669e79eeb..000000000000 --- a/airbyte-integrations/connectors/source-lemlist/unit_tests/test_source.py +++ /dev/null @@ -1,26 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -from unittest.mock import MagicMock, patch - -from source_lemlist.source import SourceLemlist - - -@patch("source_lemlist.source.Team.read_records", return_value=iter(["item"])) -def test_check_connection(_): - test_config = {"api_key": "test-api-key"} - logger_mock = MagicMock() - - source = SourceLemlist() - valid_connection, error = source.check_connection(logger_mock, test_config) - - assert valid_connection - - -def test_streams(): - source = SourceLemlist() - config_mock = MagicMock() - streams = source.streams(config_mock) - expected_streams_number = 4 - assert len(streams) == expected_streams_number diff --git a/airbyte-integrations/connectors/source-lemlist/unit_tests/test_streams.py b/airbyte-integrations/connectors/source-lemlist/unit_tests/test_streams.py deleted file mode 100644 index 3de89805735c..000000000000 --- a/airbyte-integrations/connectors/source-lemlist/unit_tests/test_streams.py +++ /dev/null @@ -1,94 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -from http import HTTPStatus -from unittest.mock import MagicMock - -import pytest -import requests -import responses -from source_lemlist.streams import LemlistStream - - -def setup_responses(): - responses.add( - responses.GET, - "https://api.lemlist.com/api/example_endpoint", - json=[ - {"_id": "cam_aaWL92T22Sei3Bz6v", "name": "Campaign1", "labels": ["label 1", "label 2"]}, - {"_id": "cam_aaXwBiebA8pWPKqpK", "name": "Campaign2"}, - ], - ) - - -@pytest.fixture -def patch_base_class(mocker): - # Mock abstract methods to enable instantiating abstract class - mocker.patch.object(LemlistStream, "path", "v0/example_endpoint") - mocker.patch.object(LemlistStream, "primary_key", "test_primary_key") - mocker.patch.object(LemlistStream, "__abstractmethods__", set()) - - -def test_request_params(patch_base_class): - stream = LemlistStream() - inputs = { - "stream_slice": None, - "stream_state": None, - "next_page_token": {"offset": 100}, - } - expected_params = {"limit": stream.page_size, "offset": 100} - assert stream.request_params(**inputs) == expected_params - - -@responses.activate -def test_next_page_token(patch_base_class): - setup_responses() - stream = LemlistStream() - inputs = {"response": requests.get("https://api.lemlist.com/api/example_endpoint")} - expected_token = None - assert stream.next_page_token(**inputs) == expected_token - - -@responses.activate -def test_parse_response(patch_base_class): - setup_responses() - stream = LemlistStream() - inputs = {"response": requests.get("https://api.lemlist.com/api/example_endpoint")} - expected_parsed_object = {"_id": "cam_aaWL92T22Sei3Bz6v", "name": "Campaign1", "labels": ["label 1", "label 2"]} - assert next(stream.parse_response(**inputs)) == expected_parsed_object - - -def test_request_headers(patch_base_class): - stream = LemlistStream() - inputs = {"stream_slice": None, "stream_state": None, "next_page_token": {"offset": 100}} - assert stream.request_headers(**inputs) == {} - - -def test_http_method(patch_base_class): - stream = LemlistStream() - expected_method = "GET" - assert stream.http_method == expected_method - - -@pytest.mark.parametrize( - ("http_status", "should_retry"), - [ - (HTTPStatus.OK, False), - (HTTPStatus.BAD_REQUEST, False), - (HTTPStatus.TOO_MANY_REQUESTS, True), - (HTTPStatus.INTERNAL_SERVER_ERROR, True), - ], -) -def test_should_retry(patch_base_class, http_status, should_retry): - response_mock = MagicMock() - response_mock.status_code = http_status - stream = LemlistStream() - assert stream.should_retry(response_mock) == should_retry - - -def test_backoff_time(patch_base_class): - response_mock = MagicMock() - stream = LemlistStream() - expected_backoff_time = 2 - assert stream.backoff_time(response_mock) == expected_backoff_time diff --git a/airbyte-integrations/connectors/source-mailchimp/acceptance-test-config.yml b/airbyte-integrations/connectors/source-mailchimp/acceptance-test-config.yml index 12461751e83a..ffd9d66cf19b 100644 --- a/airbyte-integrations/connectors/source-mailchimp/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-mailchimp/acceptance-test-config.yml @@ -45,11 +45,6 @@ acceptance_tests: configured_catalog_path: "integration_tests/configured_catalog.json" future_state: future_state_path: "integration_tests/state.json" - cursor_paths: - automations: ["create_time"] - lists: ["date_created"] - campaigns: ["create_time"] - email_activity: ["49d68626f3", "timestamp"] # Email activities stream has working campaigns with email newsletters. # Due to this sequential_reads test could be failed. full_refresh: diff --git a/airbyte-integrations/connectors/source-marketo/Dockerfile b/airbyte-integrations/connectors/source-marketo/Dockerfile index d4276e9ecc21..aa8578b59f3a 100644 --- a/airbyte-integrations/connectors/source-marketo/Dockerfile +++ b/airbyte-integrations/connectors/source-marketo/Dockerfile @@ -34,5 +34,5 @@ COPY source_marketo ./source_marketo ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=1.2.0 +LABEL io.airbyte.version=1.2.1 LABEL io.airbyte.name=airbyte/source-marketo diff --git a/airbyte-integrations/connectors/source-marketo/acceptance-test-config.yml b/airbyte-integrations/connectors/source-marketo/acceptance-test-config.yml index f5fa3a1faf4a..7fe08d8c848a 100644 --- a/airbyte-integrations/connectors/source-marketo/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-marketo/acceptance-test-config.yml @@ -89,6 +89,18 @@ acceptance_tests: bypass_reason: "Marketo does not provide a way to populate this stream without outside interaction" - name: "activities_scheduled_meetingin_dialogue" bypass_reason: "Marketo does not provide a way to populate this stream without outside interaction" + - name: "activities_engagedwithan_agentin_dialogue" + bypass_reason: "Marketo does not provide a way to populate this stream without outside interaction" + - name: "activities_reached_conversational_flow_goal" + bypass_reason: "Marketo does not provide a way to populate this stream without outside interaction" + - name: "activities_engagedwithan_agentin_conversational_flow" + bypass_reason: "Marketo does not provide a way to populate this stream without outside interaction" + - name: "activities_engagedwitha_conversational_flow" + bypass_reason: "Marketo does not provide a way to populate this stream without outside interaction" + - name: "activities_scheduled_meetingin_conversational_flow" + bypass_reason: "Marketo does not provide a way to populate this stream without outside interaction" + - name: "activities_interactedwith_documentin_conversational_flow" + bypass_reason: "Marketo does not provide a way to populate this stream without outside interaction" # 52 streams, most of them use BULK API therefore it takes much time to run a sync timeout_seconds: 9000 fail_on_extra_columns: false diff --git a/airbyte-integrations/connectors/source-marketo/metadata.yaml b/airbyte-integrations/connectors/source-marketo/metadata.yaml index d0fc6429c308..b85246d7a187 100644 --- a/airbyte-integrations/connectors/source-marketo/metadata.yaml +++ b/airbyte-integrations/connectors/source-marketo/metadata.yaml @@ -5,7 +5,7 @@ data: connectorSubtype: api connectorType: source definitionId: 9e0556f4-69df-4522-a3fb-03264d36b348 - dockerImageTag: 1.2.0 + dockerImageTag: 1.2.1 dockerRepository: airbyte/source-marketo githubIssueLabel: source-marketo icon: marketo.svg diff --git a/airbyte-integrations/connectors/source-marketo/source_marketo/source.py b/airbyte-integrations/connectors/source-marketo/source_marketo/source.py index 06ad97f67491..fffc07af0974 100644 --- a/airbyte-integrations/connectors/source-marketo/source_marketo/source.py +++ b/airbyte-integrations/connectors/source-marketo/source_marketo/source.py @@ -342,7 +342,15 @@ def __init__(self, config: Mapping[str, Any]): @property def stream_fields(self): - return list(self.get_json_schema()["properties"].keys()) + standard_properties = set(self.get_json_schema()["properties"]) + resp = self._session.get(f"{self._url_base}rest/v1/leads/describe.json", headers=self.authenticator.get_auth_header()) + available_fields = set(x.get("rest").get("name") for x in resp.json().get("result")) + return list(standard_properties & available_fields) + + def get_json_schema(self) -> Mapping[str, Any]: + # TODO: make schema truly dynamic like in stream Activities + # now blocked by https://github.com/airbytehq/airbyte/issues/30530 due to potentially > 500 fields in schema (can cause OOM) + return super().get_json_schema() class Activities(MarketoExportBase): diff --git a/airbyte-integrations/connectors/source-metabase/metadata.yaml b/airbyte-integrations/connectors/source-metabase/metadata.yaml index 3da269c3938c..1497496cdb84 100644 --- a/airbyte-integrations/connectors/source-metabase/metadata.yaml +++ b/airbyte-integrations/connectors/source-metabase/metadata.yaml @@ -1,4 +1,7 @@ data: + ab_internal: + ql: 300 + sl: 100 allowedHosts: hosts: - "*" @@ -7,6 +10,7 @@ data: definitionId: c7cb421b-942e-4468-99ee-e369bcabaec5 dockerImageTag: 1.0.1 dockerRepository: airbyte/source-metabase + documentationUrl: https://docs.airbyte.com/integrations/sources/metabase githubIssueLabel: source-metabase icon: metabase.svg license: MIT @@ -17,12 +21,8 @@ data: oss: enabled: true releaseStage: beta - documentationUrl: https://docs.airbyte.com/integrations/sources/metabase + supportLevel: community tags: - language:low-code - language:python - ab_internal: - sl: 200 - ql: 300 - supportLevel: certified metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-mixpanel/Dockerfile b/airbyte-integrations/connectors/source-mixpanel/Dockerfile index 4c1d31e45794..8e996e1e9f5a 100644 --- a/airbyte-integrations/connectors/source-mixpanel/Dockerfile +++ b/airbyte-integrations/connectors/source-mixpanel/Dockerfile @@ -13,5 +13,5 @@ ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=0.1.37 +LABEL io.airbyte.version=0.1.39 LABEL io.airbyte.name=airbyte/source-mixpanel diff --git a/airbyte-integrations/connectors/source-mixpanel/acceptance-test-config.yml b/airbyte-integrations/connectors/source-mixpanel/acceptance-test-config.yml index 141b8e19e4b0..ef37478b1a52 100644 --- a/airbyte-integrations/connectors/source-mixpanel/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-mixpanel/acceptance-test-config.yml @@ -56,11 +56,5 @@ acceptance_tests: configured_catalog_path: "integration_tests/configured_catalog_incremental.json" future_state: future_state_path: "integration_tests/abnormal_state.json" - cursor_paths: - cohorts: ["created"] - export: ["time"] - funnels: ["41833532", "date"] - revenue: ["date"] - engage: [ "last_seen" ] - cohort_members: [ "last_seen" ] timeout_seconds: 9000 + skip_comprehensive_incremental_tests: true diff --git a/airbyte-integrations/connectors/source-mixpanel/integration_tests/expected_records.jsonl b/airbyte-integrations/connectors/source-mixpanel/integration_tests/expected_records.jsonl index 02e36881e9c1..9de764f79c4f 100644 --- a/airbyte-integrations/connectors/source-mixpanel/integration_tests/expected_records.jsonl +++ b/airbyte-integrations/connectors/source-mixpanel/integration_tests/expected_records.jsonl @@ -3,7 +3,7 @@ {"stream": "funnels", "data": {"funnel_id": 36152117, "name": "test", "date": "2023-06-27", "steps": [{"count": 0, "avg_time": null, "avg_time_from_start": null, "event": "Purchase", "goal": "Purchase", "step_label": "Purchase", "overall_conv_ratio": 1, "step_conv_ratio": 1}, {"count": 0, "avg_time": null, "avg_time_from_start": null, "event": "$custom_event:1305068", "goal": "$custom_event:1305068", "step_label": "111", "custom_event": true, "custom_event_id": 1305068, "overall_conv_ratio": 0, "step_conv_ratio": 0}], "analysis": {"completion": 0, "starting_amount": 0, "steps": 2, "worst": 1}}, "emitted_at": 1687889775303} {"stream": "engage", "data": {"distinct_id": "integration-test@airbyte.io", "name": "Integration Test1", "test": "test", "email": "integration-test@airbyte.io", "last_seen": "2023-01-01T00:00:00"}, "emitted_at": 1687889778985} {"stream": "engage", "data": {"distinct_id": "integration-test.db4415.mp-service-account", "name": "test", "test": "test", "last_seen": "2023-01-01T00:00:00"}, "emitted_at": 1687889778988} -{"stream": "engage", "data": {"distinct_id": "123@gmail.com", "email": "123@gmail.com", "name": "123", "123": "123456", "last_seen": "2023-01-01T00:00:00"}, "emitted_at": 1687889778988} +{"stream": "engage", "data": {"distinct_id": "123@gmail.com", "email": "123@gmail.com", "name": "123", "123": "123456", "last_seen": "2023-01-01T00:00:00", "how are you": "just fine"}, "emitted_at": 1687889778988} {"stream": "cohorts", "data": {"id": 1478097, "project_id": 2529987, "name": "Cohort1", "description": "", "data_group_id": null, "count": 2, "is_visible": 1, "created": "2021-09-14 15:57:43"}, "emitted_at": 1687889787689} {"stream": "cohort_members", "data": {"distinct_id": "integration-test.db4415.mp-service-account", "name": "test", "test": "test", "last_seen": "2023-01-01T00:00:00", "cohort_id": 1478097}, "emitted_at": 1687889914154} {"stream": "cohort_members", "data": {"distinct_id": "integration-test@airbyte.io", "name": "Integration Test1", "test": "test", "email": "integration-test@airbyte.io", "last_seen": "2023-01-01T00:00:00", "cohort_id": 1478097}, "emitted_at": 1687889914156} diff --git a/airbyte-integrations/connectors/source-mixpanel/metadata.yaml b/airbyte-integrations/connectors/source-mixpanel/metadata.yaml index 4a49e272acc5..8b8772bf1a85 100644 --- a/airbyte-integrations/connectors/source-mixpanel/metadata.yaml +++ b/airbyte-integrations/connectors/source-mixpanel/metadata.yaml @@ -6,7 +6,7 @@ data: connectorSubtype: api connectorType: source definitionId: 12928b32-bf0a-4f1e-964f-07e12e37153a - dockerImageTag: 0.1.37 + dockerImageTag: 0.1.39 dockerRepository: airbyte/source-mixpanel githubIssueLabel: source-mixpanel icon: mixpanel.svg diff --git a/airbyte-integrations/connectors/source-mixpanel/source_mixpanel/streams/base.py b/airbyte-integrations/connectors/source-mixpanel/source_mixpanel/streams/base.py index 3ea5d4cd41b8..9824800e92df 100644 --- a/airbyte-integrations/connectors/source-mixpanel/source_mixpanel/streams/base.py +++ b/airbyte-integrations/connectors/source-mixpanel/source_mixpanel/streams/base.py @@ -147,6 +147,29 @@ def request_params( class DateSlicesMixin: + raise_on_http_errors = True + + def should_retry(self, response: requests.Response) -> bool: + if response.status_code == requests.codes.bad_request: + if "to_date cannot be later than today" in response.text: + self._timezone_mismatch = True + self.logger.warning( + "Your project timezone must be misconfigured. Please set it to the one defined in your Mixpanel project settings. " + "Stopping current stream sync." + ) + setattr(self, "raise_on_http_errors", False) + return False + return super().should_retry(response) + + def __init__(self, *args, **kwargs): + super().__init__(*args, **kwargs) + self._timezone_mismatch = False + + def parse_response(self, *args, **kwargs): + if self._timezone_mismatch: + return [] + yield from super().parse_response(*args, **kwargs) + def stream_slices( self, sync_mode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None ) -> Iterable[Optional[Mapping[str, Any]]]: @@ -168,6 +191,8 @@ def stream_slices( end_date = min(self.end_date, pendulum.today(tz=self.project_timezone).date()) while start_date <= end_date: + if self._timezone_mismatch: + return current_end_date = start_date + timedelta(days=self.date_window_size - 1) # -1 is needed because dates are inclusive stream_slice = { "start_date": str(start_date), diff --git a/airbyte-integrations/connectors/source-mixpanel/source_mixpanel/streams/export.py b/airbyte-integrations/connectors/source-mixpanel/source_mixpanel/streams/export.py index fe297fef6828..05b8d636625a 100644 --- a/airbyte-integrations/connectors/source-mixpanel/source_mixpanel/streams/export.py +++ b/airbyte-integrations/connectors/source-mixpanel/source_mixpanel/streams/export.py @@ -75,7 +75,7 @@ class Export(DateSlicesMixin, IncrementalMixpanelStream): 3 queries per second and 60 queries per hour. """ - primary_key: str = None + primary_key: str = "distinct_id" cursor_field: str = "time" transformer = TypeTransformer(TransformConfig.DefaultSchemaNormalization) diff --git a/airbyte-integrations/connectors/source-mixpanel/unit_tests/test_streams.py b/airbyte-integrations/connectors/source-mixpanel/unit_tests/test_streams.py index d519bc8d124b..123606e4480e 100644 --- a/airbyte-integrations/connectors/source-mixpanel/unit_tests/test_streams.py +++ b/airbyte-integrations/connectors/source-mixpanel/unit_tests/test_streams.py @@ -436,6 +436,17 @@ def test_export_stream(requests_mock, export_response, config): assert records_length == 1 +def test_handle_time_zone_mismatch(requests_mock, config, caplog): + stream = Export(authenticator=MagicMock(), **config) + requests_mock.register_uri("GET", get_url_to_mock(stream), status_code=400, text="to_date cannot be later than today") + records = [] + for slice_ in stream.stream_slices(sync_mode=SyncMode.full_refresh): + records.extend(stream.read_records(sync_mode=SyncMode.full_refresh, stream_slice=slice_)) + assert list(records) == [] + assert "Your project timezone must be misconfigured. Please set it to the one defined in your Mixpanel project settings. " \ + "Stopping current stream sync." in caplog.text + + def test_export_stream_request_params(config): stream = Export(authenticator=MagicMock(), **config) stream_slice = {"start_date": "2017-01-25T00:00:00Z", "end_date": "2017-02-25T00:00:00Z"} diff --git a/airbyte-integrations/connectors/source-monday/acceptance-test-config.yml b/airbyte-integrations/connectors/source-monday/acceptance-test-config.yml index 16ea6d61a9d4..3e5fcd8f3121 100644 --- a/airbyte-integrations/connectors/source-monday/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-monday/acceptance-test-config.yml @@ -72,7 +72,3 @@ acceptance_tests: configured_catalog_path: "integration_tests/incremental_catalog.json" future_state: future_state_path: "integration_tests/abnormal_state.json" - cursor_paths: - items: [ "updated_at_int" ] - boards: [ "updated_at_int" ] - activity_logs: [ "created_at_int" ] diff --git a/airbyte-integrations/connectors/source-mongodb-internal-poc/.dockerignore b/airbyte-integrations/connectors/source-mongodb-internal-poc/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/source-mongodb-internal-poc/.dockerignore +++ b/airbyte-integrations/connectors/source-mongodb-internal-poc/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/source-mongodb-internal-poc/acceptance-test-config.yml b/airbyte-integrations/connectors/source-mongodb-internal-poc/acceptance-test-config.yml index 5db8fa612d87..7767e5f08c84 100644 --- a/airbyte-integrations/connectors/source-mongodb-internal-poc/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-mongodb-internal-poc/acceptance-test-config.yml @@ -32,7 +32,4 @@ acceptance_tests: # tests: # - config_path: "secrets/credentials.json" # configured_catalog_path: "integration_tests/configured_catalog.json" -# cursor_paths: -# listingsAndReviews: ["id"] -# timeout_seconds: 180 diff --git a/airbyte-integrations/connectors/source-mongodb-internal-poc/build.gradle b/airbyte-integrations/connectors/source-mongodb-internal-poc/build.gradle index 29bc652075ba..723ca8435386 100644 --- a/airbyte-integrations/connectors/source-mongodb-internal-poc/build.gradle +++ b/airbyte-integrations/connectors/source-mongodb-internal-poc/build.gradle @@ -18,7 +18,6 @@ dependencies { implementation project(':airbyte-integrations:bases:base-java') implementation project(':airbyte-integrations:bases:debezium') implementation libs.airbyte.protocol - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation 'org.mongodb:mongodb-driver-sync:4.10.2' @@ -27,7 +26,6 @@ dependencies { integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-mongodb-internal-poc') - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } /* diff --git a/airbyte-integrations/connectors/source-mongodb-internal-poc/src/main/java/io/airbyte/integrations/source/mongodb/internal/cdc/MongoDbCdcStateHandler.java b/airbyte-integrations/connectors/source-mongodb-internal-poc/src/main/java/io/airbyte/integrations/source/mongodb/internal/cdc/MongoDbCdcStateHandler.java index de0d62a11879..493598dc75bc 100644 --- a/airbyte-integrations/connectors/source-mongodb-internal-poc/src/main/java/io/airbyte/integrations/source/mongodb/internal/cdc/MongoDbCdcStateHandler.java +++ b/airbyte-integrations/connectors/source-mongodb-internal-poc/src/main/java/io/airbyte/integrations/source/mongodb/internal/cdc/MongoDbCdcStateHandler.java @@ -6,6 +6,7 @@ import io.airbyte.commons.json.Jsons; import io.airbyte.integrations.debezium.CdcStateHandler; +import io.airbyte.integrations.debezium.internals.AirbyteSchemaHistoryStorage.SchemaHistory; import io.airbyte.integrations.source.mongodb.internal.state.MongoDbStateManager; import io.airbyte.protocol.models.v0.AirbyteMessage; import io.airbyte.protocol.models.v0.AirbyteStateMessage; @@ -28,7 +29,7 @@ public MongoDbCdcStateHandler(MongoDbStateManager stateManager) { } @Override - public AirbyteMessage saveState(final Map offset, String dbHistory) { + public AirbyteMessage saveState(final Map offset, SchemaHistory ignored) { final MongoDbCdcState cdcState = new MongoDbCdcState(Jsons.jsonNode(offset)); LOGGER.info("Saving Debezium state {}...", cdcState); diff --git a/airbyte-integrations/connectors/source-mongodb-internal-poc/src/test/java/io/airbyte/integrations/source/mongodb/internal/state/MongoDbCdcStateHandlerTest.java b/airbyte-integrations/connectors/source-mongodb-internal-poc/src/test/java/io/airbyte/integrations/source/mongodb/internal/state/MongoDbCdcStateHandlerTest.java index 2446ead6cf95..fd9bd09be0b6 100644 --- a/airbyte-integrations/connectors/source-mongodb-internal-poc/src/test/java/io/airbyte/integrations/source/mongodb/internal/state/MongoDbCdcStateHandlerTest.java +++ b/airbyte-integrations/connectors/source-mongodb-internal-poc/src/test/java/io/airbyte/integrations/source/mongodb/internal/state/MongoDbCdcStateHandlerTest.java @@ -41,7 +41,7 @@ void testSavingState() { SOURCE_ORDER, String.valueOf(order), SOURCE_RESUME_TOKEN, RESUME_TOKEN); - final AirbyteMessage airbyteMessage = mongoDbCdcStateHandler.saveState(offset, ""); + final AirbyteMessage airbyteMessage = mongoDbCdcStateHandler.saveState(offset, null); assertNotNull(airbyteMessage); assertEquals(AirbyteMessage.Type.STATE, airbyteMessage.getType()); diff --git a/airbyte-integrations/connectors/source-mongodb-strict-encrypt/.dockerignore b/airbyte-integrations/connectors/source-mongodb-strict-encrypt/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/source-mongodb-strict-encrypt/.dockerignore +++ b/airbyte-integrations/connectors/source-mongodb-strict-encrypt/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/source-mongodb-strict-encrypt/build.gradle b/airbyte-integrations/connectors/source-mongodb-strict-encrypt/build.gradle index 6adacf948ad8..2486c208dc2c 100644 --- a/airbyte-integrations/connectors/source-mongodb-strict-encrypt/build.gradle +++ b/airbyte-integrations/connectors/source-mongodb-strict-encrypt/build.gradle @@ -13,12 +13,10 @@ dependencies { implementation project(':airbyte-db:db-lib') implementation project(':airbyte-integrations:bases:base-java') implementation libs.airbyte.protocol - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation project(':airbyte-integrations:connectors:source-relational-db') implementation project(':airbyte-integrations:connectors:source-mongodb-v2') implementation 'org.mongodb:mongodb-driver-sync:4.3.0' integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-mongodb-strict-encrypt') - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors/source-mongodb-v2/.dockerignore b/airbyte-integrations/connectors/source-mongodb-v2/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/source-mongodb-v2/.dockerignore +++ b/airbyte-integrations/connectors/source-mongodb-v2/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/source-mongodb-v2/build.gradle b/airbyte-integrations/connectors/source-mongodb-v2/build.gradle index 896e88e74958..24833a48fd76 100644 --- a/airbyte-integrations/connectors/source-mongodb-v2/build.gradle +++ b/airbyte-integrations/connectors/source-mongodb-v2/build.gradle @@ -14,14 +14,12 @@ dependencies { implementation project(':airbyte-db:db-lib') implementation project(':airbyte-integrations:bases:base-java') implementation libs.airbyte.protocol - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation project(':airbyte-integrations:connectors:source-relational-db') implementation 'org.mongodb:mongodb-driver-sync:4.4.0' - testImplementation libs.connectors.testcontainers.mongodb + testImplementation libs.testcontainers.mongodb integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-mongodb-v2') - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors/source-mongodb/build.gradle b/airbyte-integrations/connectors/source-mongodb/build.gradle index e07be5a8efd6..3a9dd18ad1c3 100644 --- a/airbyte-integrations/connectors/source-mongodb/build.gradle +++ b/airbyte-integrations/connectors/source-mongodb/build.gradle @@ -33,7 +33,3 @@ airbyteStandardSourceTestFile { specPath = "lib/spec.json" } -dependencies { - implementation files(project(':airbyte-integrations:bases:base-standard-source-test-file').airbyteDocker.outputs) -} - diff --git a/airbyte-integrations/connectors/source-mssql-strict-encrypt/.dockerignore b/airbyte-integrations/connectors/source-mssql-strict-encrypt/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/source-mssql-strict-encrypt/.dockerignore +++ b/airbyte-integrations/connectors/source-mssql-strict-encrypt/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/source-mssql-strict-encrypt/build.gradle b/airbyte-integrations/connectors/source-mssql-strict-encrypt/build.gradle index 75f3de23eb74..641e83f83020 100644 --- a/airbyte-integrations/connectors/source-mssql-strict-encrypt/build.gradle +++ b/airbyte-integrations/connectors/source-mssql-strict-encrypt/build.gradle @@ -21,12 +21,10 @@ dependencies { testImplementation testFixtures(project(':airbyte-integrations:connectors:source-jdbc')) testImplementation 'org.apache.commons:commons-lang3:3.11' - testImplementation libs.connectors.testcontainers.mssqlserver + testImplementation libs.testcontainers.mssqlserver integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-mssql-strict-encrypt') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors/source-mssql/.dockerignore b/airbyte-integrations/connectors/source-mssql/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/source-mssql/.dockerignore +++ b/airbyte-integrations/connectors/source-mssql/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/source-mssql/build.gradle b/airbyte-integrations/connectors/source-mssql/build.gradle index 050978a5e7ad..f909c4d658ba 100644 --- a/airbyte-integrations/connectors/source-mssql/build.gradle +++ b/airbyte-integrations/connectors/source-mssql/build.gradle @@ -29,14 +29,11 @@ dependencies { testImplementation testFixtures(project(':airbyte-integrations:connectors:source-jdbc')) testImplementation 'org.apache.commons:commons-lang3:3.11' - testImplementation libs.connectors.testcontainers.mssqlserver + testImplementation libs.testcontainers.mssqlserver integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') performanceTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-mssql') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - performanceTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors/source-mssql/src/main/java/io/airbyte/integrations/source/mssql/MssqlCdcSavedInfoFetcher.java b/airbyte-integrations/connectors/source-mssql/src/main/java/io/airbyte/integrations/source/mssql/MssqlCdcSavedInfoFetcher.java index ecbff0db084e..6056c76778a6 100644 --- a/airbyte-integrations/connectors/source-mssql/src/main/java/io/airbyte/integrations/source/mssql/MssqlCdcSavedInfoFetcher.java +++ b/airbyte-integrations/connectors/source-mssql/src/main/java/io/airbyte/integrations/source/mssql/MssqlCdcSavedInfoFetcher.java @@ -11,7 +11,7 @@ import io.airbyte.integrations.debezium.CdcSavedInfoFetcher; import io.airbyte.integrations.source.relationaldb.models.CdcState; import java.util.Optional; - +import io.airbyte.integrations.debezium.internals.AirbyteSchemaHistoryStorage.SchemaHistory; public class MssqlCdcSavedInfoFetcher implements CdcSavedInfoFetcher { private final JsonNode savedOffset; @@ -29,8 +29,8 @@ public JsonNode getSavedOffset() { } @Override - public Optional getSavedSchemaHistory() { - return Optional.ofNullable(savedSchemaHistory); + public SchemaHistory> getSavedSchemaHistory() { + return new SchemaHistory<>(Optional.ofNullable(savedSchemaHistory), false); } } diff --git a/airbyte-integrations/connectors/source-mssql/src/main/java/io/airbyte/integrations/source/mssql/MssqlCdcStateHandler.java b/airbyte-integrations/connectors/source-mssql/src/main/java/io/airbyte/integrations/source/mssql/MssqlCdcStateHandler.java index 370709517021..27efc6470905 100644 --- a/airbyte-integrations/connectors/source-mssql/src/main/java/io/airbyte/integrations/source/mssql/MssqlCdcStateHandler.java +++ b/airbyte-integrations/connectors/source-mssql/src/main/java/io/airbyte/integrations/source/mssql/MssqlCdcStateHandler.java @@ -10,6 +10,7 @@ import com.fasterxml.jackson.databind.JsonNode; import io.airbyte.commons.json.Jsons; import io.airbyte.integrations.debezium.CdcStateHandler; +import io.airbyte.integrations.debezium.internals.AirbyteSchemaHistoryStorage.SchemaHistory; import io.airbyte.integrations.source.relationaldb.models.CdcState; import io.airbyte.integrations.source.relationaldb.state.StateManager; import io.airbyte.protocol.models.v0.AirbyteMessage; @@ -31,10 +32,10 @@ public MssqlCdcStateHandler(final StateManager stateManager) { } @Override - public AirbyteMessage saveState(final Map offset, final String dbHistory) { + public AirbyteMessage saveState(final Map offset, final SchemaHistory dbHistory) { final Map state = new HashMap<>(); state.put(MSSQL_CDC_OFFSET, offset); - state.put(MSSQL_DB_HISTORY, dbHistory); + state.put(MSSQL_DB_HISTORY, dbHistory.schema()); final JsonNode asJson = Jsons.jsonNode(state); diff --git a/airbyte-integrations/connectors/source-mssql/src/main/java/io/airbyte/integrations/source/mssql/MssqlSource.java b/airbyte-integrations/connectors/source-mssql/src/main/java/io/airbyte/integrations/source/mssql/MssqlSource.java index dc57b3e1911c..092b09a7f967 100644 --- a/airbyte-integrations/connectors/source-mssql/src/main/java/io/airbyte/integrations/source/mssql/MssqlSource.java +++ b/airbyte-integrations/connectors/source-mssql/src/main/java/io/airbyte/integrations/source/mssql/MssqlSource.java @@ -4,7 +4,7 @@ package io.airbyte.integrations.source.mssql; -import static io.airbyte.integrations.debezium.AirbyteDebeziumHandler.shouldUseCDC; +import static io.airbyte.integrations.debezium.AirbyteDebeziumHandler.isAnyStreamIncrementalSyncMode; import static io.airbyte.integrations.debezium.internals.DebeziumEventUtils.CDC_DELETED_AT; import static io.airbyte.integrations.debezium.internals.DebeziumEventUtils.CDC_UPDATED_AT; import static io.airbyte.integrations.source.relationaldb.RelationalDbQueryUtils.enquoteIdentifier; @@ -449,7 +449,7 @@ public List> getIncrementalIterators( final StateManager stateManager, final Instant emittedAt) { final JsonNode sourceConfig = database.getSourceConfig(); - if (MssqlCdcHelper.isCdc(sourceConfig) && shouldUseCDC(catalog)) { + if (MssqlCdcHelper.isCdc(sourceConfig) && isAnyStreamIncrementalSyncMode(catalog)) { LOGGER.info("using CDC: {}", true); final Duration firstRecordWaitTime = FirstRecordWaitTimeUtil.getFirstRecordWaitTime(sourceConfig); final AirbyteDebeziumHandler handler = diff --git a/airbyte-integrations/connectors/source-mysql-strict-encrypt/.dockerignore b/airbyte-integrations/connectors/source-mysql-strict-encrypt/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/source-mysql-strict-encrypt/.dockerignore +++ b/airbyte-integrations/connectors/source-mysql-strict-encrypt/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/source-mysql-strict-encrypt/Dockerfile b/airbyte-integrations/connectors/source-mysql-strict-encrypt/Dockerfile index 4cdbfb8c7f91..45053a8b745c 100644 --- a/airbyte-integrations/connectors/source-mysql-strict-encrypt/Dockerfile +++ b/airbyte-integrations/connectors/source-mysql-strict-encrypt/Dockerfile @@ -24,6 +24,6 @@ ENV APPLICATION source-mysql-strict-encrypt COPY --from=build /airbyte /airbyte -LABEL io.airbyte.version=3.0.3 +LABEL io.airbyte.version=3.0.8 LABEL io.airbyte.name=airbyte/source-mysql-strict-encrypt diff --git a/airbyte-integrations/connectors/source-mysql-strict-encrypt/build.gradle b/airbyte-integrations/connectors/source-mysql-strict-encrypt/build.gradle index c305939e20bf..40c2028ac9db 100644 --- a/airbyte-integrations/connectors/source-mysql-strict-encrypt/build.gradle +++ b/airbyte-integrations/connectors/source-mysql-strict-encrypt/build.gradle @@ -22,11 +22,9 @@ dependencies { testImplementation project(':airbyte-test-utils') testImplementation libs.junit.jupiter.system.stubs - testImplementation libs.connectors.testcontainers.mysql + testImplementation libs.testcontainers.mysql integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors/source-mysql-strict-encrypt/metadata.yaml b/airbyte-integrations/connectors/source-mysql-strict-encrypt/metadata.yaml index 4c49c4e6ea5f..7b3aa325a446 100644 --- a/airbyte-integrations/connectors/source-mysql-strict-encrypt/metadata.yaml +++ b/airbyte-integrations/connectors/source-mysql-strict-encrypt/metadata.yaml @@ -11,7 +11,7 @@ data: connectorSubtype: database connectorType: source definitionId: 435bb9a5-7887-4809-aa58-28c27df0d7ad - dockerImageTag: 3.0.3 + dockerImageTag: 3.0.8 dockerRepository: airbyte/source-mysql-strict-encrypt githubIssueLabel: source-mysql icon: mysql.svg diff --git a/airbyte-integrations/connectors/source-mysql-strict-encrypt/src/test-integration/java/io/airbyte/integrations/source/mysql_strict_encrypt/MySqlStrictEncryptSourceAcceptanceTest.java b/airbyte-integrations/connectors/source-mysql-strict-encrypt/src/test-integration/java/io/airbyte/integrations/source/mysql_strict_encrypt/MySqlStrictEncryptSourceAcceptanceTest.java index da195558d32a..6a4325e5ea77 100644 --- a/airbyte-integrations/connectors/source-mysql-strict-encrypt/src/test-integration/java/io/airbyte/integrations/source/mysql_strict_encrypt/MySqlStrictEncryptSourceAcceptanceTest.java +++ b/airbyte-integrations/connectors/source-mysql-strict-encrypt/src/test-integration/java/io/airbyte/integrations/source/mysql_strict_encrypt/MySqlStrictEncryptSourceAcceptanceTest.java @@ -18,6 +18,7 @@ import io.airbyte.integrations.base.ssh.SshHelpers; import io.airbyte.integrations.standardtest.source.SourceAcceptanceTest; import io.airbyte.integrations.standardtest.source.TestDestinationEnv; +import io.airbyte.integrations.util.HostPortResolver; import io.airbyte.protocol.models.Field; import io.airbyte.protocol.models.JsonSchemaType; import io.airbyte.protocol.models.v0.CatalogHelpers; @@ -51,8 +52,8 @@ protected void setupEnvironment(final TestDestinationEnv environment) throws Exc .put("method", "STANDARD") .build()); config = Jsons.jsonNode(ImmutableMap.builder() - .put(JdbcUtils.HOST_KEY, container.getHost()) - .put(JdbcUtils.PORT_KEY, container.getFirstMappedPort()) + .put(JdbcUtils.HOST_KEY, HostPortResolver.resolveHost(container)) + .put(JdbcUtils.PORT_KEY, HostPortResolver.resolvePort(container)) .put(JdbcUtils.DATABASE_KEY, container.getDatabaseName()) .put(JdbcUtils.USERNAME_KEY, container.getUsername()) .put(JdbcUtils.PASSWORD_KEY, container.getPassword()) @@ -65,8 +66,8 @@ protected void setupEnvironment(final TestDestinationEnv environment) throws Exc config.get(JdbcUtils.PASSWORD_KEY).asText(), DatabaseDriver.MYSQL.getDriverClassName(), String.format("jdbc:mysql://%s:%s/%s?%s", - config.get(JdbcUtils.HOST_KEY).asText(), - config.get(JdbcUtils.PORT_KEY).asText(), + container.getHost(), + container.getFirstMappedPort(), config.get(JdbcUtils.DATABASE_KEY).asText(), String.join("&", SSL_PARAMETERS)), SQLDialect.MYSQL)) { diff --git a/airbyte-integrations/connectors/source-mysql-strict-encrypt/src/test/java/io/airbyte/integrations/source/mysql_strict_encrypt/MySqlPkStrictEncryptJdbcSourceAcceptanceTest.java b/airbyte-integrations/connectors/source-mysql-strict-encrypt/src/test/java/io/airbyte/integrations/source/mysql_strict_encrypt/MySqlPkStrictEncryptJdbcSourceAcceptanceTest.java new file mode 100644 index 000000000000..6079164515d3 --- /dev/null +++ b/airbyte-integrations/connectors/source-mysql-strict-encrypt/src/test/java/io/airbyte/integrations/source/mysql_strict_encrypt/MySqlPkStrictEncryptJdbcSourceAcceptanceTest.java @@ -0,0 +1,682 @@ +/* + * Copyright (c) 2023 Airbyte, Inc., all rights reserved. + */ + +package io.airbyte.integrations.source.mysql_strict_encrypt; + +/* + * Copyright (c) 2023 Airbyte, Inc., all rights reserved. + */ + +import static io.airbyte.integrations.source.mysql.MySqlSource.SSL_PARAMETERS; +import static io.airbyte.integrations.source.mysql.initialsync.MySqlInitialLoadStateManager.STATE_TYPE_KEY; +import static java.util.stream.Collectors.toList; +import static org.assertj.core.api.Assertions.assertThat; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; + +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.node.ObjectNode; +import com.google.common.collect.ImmutableList; +import com.google.common.collect.ImmutableMap; +import com.google.common.collect.Lists; +import io.airbyte.commons.features.EnvVariableFeatureFlags; +import io.airbyte.commons.json.Jsons; +import io.airbyte.commons.resources.MoreResources; +import io.airbyte.commons.string.Strings; +import io.airbyte.commons.util.MoreIterators; +import io.airbyte.db.Database; +import io.airbyte.db.MySqlUtils; +import io.airbyte.db.factory.DSLContextFactory; +import io.airbyte.db.factory.DatabaseDriver; +import io.airbyte.db.jdbc.JdbcUtils; +import io.airbyte.integrations.base.Source; +import io.airbyte.integrations.base.ssh.SshBastionContainer; +import io.airbyte.integrations.base.ssh.SshHelpers; +import io.airbyte.integrations.base.ssh.SshTunnel; +import io.airbyte.integrations.source.jdbc.test.JdbcSourceAcceptanceTest; +import io.airbyte.integrations.source.mysql.MySqlSource; +import io.airbyte.integrations.source.mysql.internal.models.CursorBasedStatus; +import io.airbyte.integrations.source.mysql.internal.models.InternalModels.StateType; +import io.airbyte.integrations.source.relationaldb.models.DbStreamState; +import io.airbyte.protocol.models.Field; +import io.airbyte.protocol.models.JsonSchemaType; +import io.airbyte.protocol.models.v0.AirbyteCatalog; +import io.airbyte.protocol.models.v0.AirbyteConnectionStatus; +import io.airbyte.protocol.models.v0.AirbyteConnectionStatus.Status; +import io.airbyte.protocol.models.v0.AirbyteMessage; +import io.airbyte.protocol.models.v0.AirbyteMessage.Type; +import io.airbyte.protocol.models.v0.AirbyteRecordMessage; +import io.airbyte.protocol.models.v0.AirbyteStateMessage; +import io.airbyte.protocol.models.v0.AirbyteStateMessage.AirbyteStateType; +import io.airbyte.protocol.models.v0.AirbyteStream; +import io.airbyte.protocol.models.v0.AirbyteStreamState; +import io.airbyte.protocol.models.v0.CatalogHelpers; +import io.airbyte.protocol.models.v0.ConfiguredAirbyteCatalog; +import io.airbyte.protocol.models.v0.ConfiguredAirbyteStream; +import io.airbyte.protocol.models.v0.ConnectorSpecification; +import io.airbyte.protocol.models.v0.DestinationSyncMode; +import io.airbyte.protocol.models.v0.StreamDescriptor; +import io.airbyte.protocol.models.v0.SyncMode; +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.stream.Collectors; +import java.util.stream.Stream; +import org.jooq.DSLContext; +import org.jooq.SQLDialect; +import org.junit.jupiter.api.AfterAll; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.testcontainers.containers.MySQLContainer; +import org.testcontainers.containers.Network; +import uk.org.webcompere.systemstubs.environment.EnvironmentVariables; +import uk.org.webcompere.systemstubs.jupiter.SystemStub; +import uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension; + +@ExtendWith(SystemStubsExtension.class) +class MySqlPkStrictEncryptJdbcSourceAcceptanceTest extends JdbcSourceAcceptanceTest { + + @SystemStub + private EnvironmentVariables environmentVariables; + + protected static final String TEST_USER = "test"; + protected static final String TEST_PASSWORD = "test"; + protected static MySQLContainer container; + private static final SshBastionContainer bastion = new SshBastionContainer(); + private static final Network network = Network.newNetwork(); + + protected Database database; + protected DSLContext dslContext; + + @BeforeAll + static void init() throws SQLException { + container = new MySQLContainer<>("mysql:8.0") + .withUsername(TEST_USER) + .withPassword(TEST_PASSWORD) + .withEnv("MYSQL_ROOT_HOST", "%") + .withEnv("MYSQL_ROOT_PASSWORD", TEST_PASSWORD); + container.start(); + final Connection connection = DriverManager.getConnection(container.getJdbcUrl(), "root", container.getPassword()); + connection.createStatement().execute("GRANT ALL PRIVILEGES ON *.* TO '" + TEST_USER + "'@'%';\n"); + } + + @BeforeEach + public void setup() throws Exception { + environmentVariables.set(EnvVariableFeatureFlags.USE_STREAM_CAPABLE_STATE, "true"); + config = Jsons.jsonNode(ImmutableMap.builder() + .put(JdbcUtils.HOST_KEY, container.getHost()) + .put(JdbcUtils.PORT_KEY, container.getFirstMappedPort()) + .put(JdbcUtils.DATABASE_KEY, Strings.addRandomSuffix("db", "_", 10)) + .put(JdbcUtils.USERNAME_KEY, container.getUsername()) + .put(JdbcUtils.PASSWORD_KEY, container.getPassword()) + .put("standard_via_pk", true) + .build()); + + dslContext = DSLContextFactory.create( + config.get(JdbcUtils.USERNAME_KEY).asText(), + config.get(JdbcUtils.PASSWORD_KEY).asText(), + DatabaseDriver.MYSQL.getDriverClassName(), + String.format("jdbc:mysql://%s:%s?%s", + container.getHost(), + container.getFirstMappedPort(), + String.join("&", SSL_PARAMETERS)), + SQLDialect.MYSQL); + database = new Database(dslContext); + + database.query(ctx -> { + ctx.fetch("CREATE DATABASE " + config.get(JdbcUtils.DATABASE_KEY).asText()); + return null; + }); + + super.setup(); + } + + @AfterEach + void tearDownMySql() throws Exception { + dslContext.close(); + super.tearDown(); + } + + @AfterAll + static void cleanUp() { + container.close(); + } + + // MySql does not support schemas in the way most dbs do. Instead we namespace by db name. + @Override + public boolean supportsSchemas() { + return false; + } + + @Override + public MySqlSource getJdbcSource() { + return new MySqlSource(); + } + + @Override + public Source getSource() { + return new MySqlStrictEncryptSource(); + } + + @Override + public String getDriverClass() { + return MySqlSource.DRIVER_CLASS; + } + + @Override + public JsonNode getConfig() { + return Jsons.clone(config); + } + + @Test + void testSpec() throws Exception { + final ConnectorSpecification actual = source.spec(); + final ConnectorSpecification expected = + SshHelpers.injectSshIntoSpec(Jsons.deserialize(MoreResources.readResource("expected_spec.json"), ConnectorSpecification.class)); + assertEquals(expected, actual); + } + + @Override + protected AirbyteCatalog getCatalog(final String defaultNamespace) { + return new AirbyteCatalog().withStreams(List.of( + CatalogHelpers.createAirbyteStream( + TABLE_NAME, + defaultNamespace, + Field.of(COL_ID, JsonSchemaType.INTEGER), + Field.of(COL_NAME, JsonSchemaType.STRING), + Field.of(COL_UPDATED_AT, JsonSchemaType.STRING_DATE)) + .withSupportedSyncModes(List.of(SyncMode.FULL_REFRESH, SyncMode.INCREMENTAL)) + .withSourceDefinedPrimaryKey(List.of(List.of(COL_ID))), + CatalogHelpers.createAirbyteStream( + TABLE_NAME_WITHOUT_PK, + defaultNamespace, + Field.of(COL_ID, JsonSchemaType.INTEGER), + Field.of(COL_NAME, JsonSchemaType.STRING), + Field.of(COL_UPDATED_AT, JsonSchemaType.STRING_DATE)) + .withSupportedSyncModes(List.of(SyncMode.FULL_REFRESH, SyncMode.INCREMENTAL)) + .withSourceDefinedPrimaryKey(Collections.emptyList()), + CatalogHelpers.createAirbyteStream( + TABLE_NAME_COMPOSITE_PK, + defaultNamespace, + Field.of(COL_FIRST_NAME, JsonSchemaType.STRING), + Field.of(COL_LAST_NAME, JsonSchemaType.STRING), + Field.of(COL_UPDATED_AT, JsonSchemaType.STRING_DATE)) + .withSupportedSyncModes(List.of(SyncMode.FULL_REFRESH, SyncMode.INCREMENTAL)) + .withSourceDefinedPrimaryKey( + List.of(List.of(COL_FIRST_NAME), List.of(COL_LAST_NAME))))); + } + + @Test + void testStrictSSLUnsecuredNoTunnel() throws Exception { + final String PASSWORD = "Passw0rd"; + final var certs = MySqlUtils.getCertificate(container, true); + final var sslMode = ImmutableMap.builder() + .put(JdbcUtils.MODE_KEY, "preferred") + .build(); + + final var tunnelMode = ImmutableMap.builder() + .put("tunnel_method", "NO_TUNNEL") + .build(); + ((ObjectNode) config).put(JdbcUtils.PASSWORD_KEY, "fake") + .put(JdbcUtils.SSL_KEY, true) + .putIfAbsent(JdbcUtils.SSL_MODE_KEY, Jsons.jsonNode(sslMode)); + ((ObjectNode) config).putIfAbsent("tunnel_method", Jsons.jsonNode(tunnelMode)); + + final AirbyteConnectionStatus actual = source.check(config); + assertEquals(Status.FAILED, actual.getStatus()); + assertTrue(actual.getMessage().contains("Unsecured connection not allowed")); + } + + @Test + void testStrictSSLSecuredNoTunnel() throws Exception { + final String PASSWORD = "Passw0rd"; + final var certs = MySqlUtils.getCertificate(container, true); + final var sslMode = ImmutableMap.builder() + .put(JdbcUtils.MODE_KEY, "verify_ca") + .put("ca_certificate", certs.getCaCertificate()) + .put("client_certificate", certs.getClientCertificate()) + .put("client_key", certs.getClientKey()) + .put("client_key_password", PASSWORD) + .build(); + + final var tunnelMode = ImmutableMap.builder() + .put("tunnel_method", "NO_TUNNEL") + .build(); + ((ObjectNode) config).put(JdbcUtils.PASSWORD_KEY, "fake") + .put(JdbcUtils.SSL_KEY, true) + .putIfAbsent(JdbcUtils.SSL_MODE_KEY, Jsons.jsonNode(sslMode)); + ((ObjectNode) config).putIfAbsent("tunnel_method", Jsons.jsonNode(tunnelMode)); + + final AirbyteConnectionStatus actual = source.check(config); + assertEquals(Status.FAILED, actual.getStatus()); + assertFalse(actual.getMessage().contains("Unsecured connection not allowed")); + } + + @Test + void testStrictSSLSecuredWithTunnel() throws Exception { + final String PASSWORD = "Passw0rd"; + final var certs = MySqlUtils.getCertificate(container, true); + final var sslMode = ImmutableMap.builder() + .put(JdbcUtils.MODE_KEY, "verify_ca") + .put("ca_certificate", certs.getCaCertificate()) + .put("client_certificate", certs.getClientCertificate()) + .put("client_key", certs.getClientKey()) + .put("client_key_password", PASSWORD) + .build(); + + final var tunnelMode = ImmutableMap.builder() + .put("tunnel_method", "SSH_KEY_AUTH") + .build(); + ((ObjectNode) config).put(JdbcUtils.PASSWORD_KEY, "fake") + .put(JdbcUtils.SSL_KEY, true) + .putIfAbsent(JdbcUtils.SSL_MODE_KEY, Jsons.jsonNode(sslMode)); + ((ObjectNode) config).putIfAbsent("tunnel_method", Jsons.jsonNode(tunnelMode)); + + final AirbyteConnectionStatus actual = source.check(config); + assertEquals(Status.FAILED, actual.getStatus()); + assertTrue(actual.getMessage().contains("Could not connect with provided SSH configuration.")); + } + + @Test + void testStrictSSLUnsecuredWithTunnel() throws Exception { + final String PASSWORD = "Passw0rd"; + final var certs = MySqlUtils.getCertificate(container, true); + final var sslMode = ImmutableMap.builder() + .put(JdbcUtils.MODE_KEY, "preferred") + .build(); + + final var tunnelMode = ImmutableMap.builder() + .put("tunnel_method", "SSH_KEY_AUTH") + .build(); + ((ObjectNode) config).put(JdbcUtils.PASSWORD_KEY, "fake") + .put(JdbcUtils.SSL_KEY, true) + .putIfAbsent(JdbcUtils.SSL_MODE_KEY, Jsons.jsonNode(sslMode)); + ((ObjectNode) config).putIfAbsent("tunnel_method", Jsons.jsonNode(tunnelMode)); + + final AirbyteConnectionStatus actual = source.check(config); + assertEquals(Status.FAILED, actual.getStatus()); + assertTrue(actual.getMessage().contains("Could not connect with provided SSH configuration.")); + } + + @Test + void testCheckWithSSlModeDisabled() throws Exception { + try (final MySQLContainer db = new MySQLContainer<>("mysql:8.0").withNetwork(network)) { + bastion.initAndStartBastion(network); + db.start(); + final JsonNode configWithSSLModeDisabled = bastion.getTunnelConfig(SshTunnel.TunnelMethod.SSH_PASSWORD_AUTH, ImmutableMap.builder() + .put(JdbcUtils.HOST_KEY, Objects.requireNonNull(db.getContainerInfo() + .getNetworkSettings() + .getNetworks() + .entrySet().stream() + .findFirst() + .get().getValue().getIpAddress())) + .put(JdbcUtils.PORT_KEY, db.getExposedPorts().get(0)) + .put(JdbcUtils.DATABASE_KEY, db.getDatabaseName()) + .put(JdbcUtils.SCHEMAS_KEY, List.of("public")) + .put(JdbcUtils.USERNAME_KEY, db.getUsername()) + .put(JdbcUtils.PASSWORD_KEY, db.getPassword()) + .put(JdbcUtils.SSL_MODE_KEY, Map.of(JdbcUtils.MODE_KEY, "disable")), false); + + final AirbyteConnectionStatus actual = source.check(configWithSSLModeDisabled); + assertEquals(AirbyteConnectionStatus.Status.SUCCEEDED, actual.getStatus()); + } finally { + bastion.stopAndClose(); + } + } + + @Test + void testReadMultipleTablesIncrementally() throws Exception { + ((ObjectNode) config).put("sync_checkpoint_records", 1); + final String namespace = getDefaultNamespace(); + final String streamOneName = TABLE_NAME + "one"; + // Create a fresh first table + database.query(connection -> { + connection.fetch(String.format("USE %s;", getDefaultNamespace())); + connection.fetch(String.format("CREATE TABLE %s (\n" + + " id int PRIMARY KEY,\n" + + " name VARCHAR(200) NOT NULL,\n" + + " updated_at VARCHAR(200) NOT NULL\n" + + ");", streamOneName)); + connection.execute( + String.format( + "INSERT INTO %s(id, name, updated_at) VALUES (1,'picard', '2004-10-19')", + getFullyQualifiedTableName(streamOneName))); + connection.execute( + String.format( + "INSERT INTO %s(id, name, updated_at) VALUES (2, 'crusher', '2005-10-19')", + getFullyQualifiedTableName(streamOneName))); + connection.execute( + String.format( + "INSERT INTO %s(id, name, updated_at) VALUES (3, 'vash', '2006-10-19')", + getFullyQualifiedTableName(streamOneName))); + return null; + }); + + // Create a fresh second table + final String streamTwoName = TABLE_NAME + "two"; + final String streamTwoFullyQualifiedName = getFullyQualifiedTableName(streamTwoName); + // Insert records into second table + database.query(ctx -> { + ctx.fetch(String.format("CREATE TABLE %s (\n" + + " id int PRIMARY KEY,\n" + + " name VARCHAR(200) NOT NULL,\n" + + " updated_at DATE NOT NULL\n" + + ");", streamTwoName)); + ctx.execute( + String.format("INSERT INTO %s(id, name, updated_at)" + + "VALUES (40,'Jean Luc','2006-10-19')", + streamTwoFullyQualifiedName)); + ctx.execute( + String.format("INSERT INTO %s(id, name, updated_at)" + + "VALUES (41, 'Groot', '2006-10-19')", + streamTwoFullyQualifiedName)); + ctx.execute( + String.format("INSERT INTO %s(id, name, updated_at)" + + "VALUES (42, 'Thanos','2006-10-19')", + streamTwoFullyQualifiedName)); + return null; + }); + // Create records list that we expect to see in the state message + final List streamTwoExpectedRecords = Arrays.asList( + createRecord(streamTwoName, namespace, ImmutableMap.of( + COL_ID, 40, + COL_NAME, "Jean Luc", + COL_UPDATED_AT, "2006-10-19")), + createRecord(streamTwoName, namespace, ImmutableMap.of( + COL_ID, 41, + COL_NAME, "Groot", + COL_UPDATED_AT, "2006-10-19")), + createRecord(streamTwoName, namespace, ImmutableMap.of( + COL_ID, 42, + COL_NAME, "Thanos", + COL_UPDATED_AT, "2006-10-19"))); + + // Prep and create a configured catalog to perform sync + final AirbyteStream streamOne = getAirbyteStream(streamOneName, namespace); + final AirbyteStream streamTwo = getAirbyteStream(streamTwoName, namespace); + + final ConfiguredAirbyteCatalog configuredCatalog = CatalogHelpers.toDefaultConfiguredCatalog( + new AirbyteCatalog().withStreams(List.of(streamOne, streamTwo))); + configuredCatalog.getStreams().forEach(airbyteStream -> { + airbyteStream.setSyncMode(SyncMode.INCREMENTAL); + airbyteStream.setCursorField(List.of(COL_ID)); + airbyteStream.setDestinationSyncMode(DestinationSyncMode.APPEND); + airbyteStream.withPrimaryKey(List.of(List.of(COL_ID))); + }); + + // Perform initial sync + final List messagesFromFirstSync = MoreIterators + .toList(source.read(config, configuredCatalog, null)); + + final List recordsFromFirstSync = filterRecords(messagesFromFirstSync); + + setEmittedAtToNull(messagesFromFirstSync); + // All records in the 2 configured streams should be present + assertThat(filterRecords(recordsFromFirstSync)).containsExactlyElementsOf( + Stream.concat(getTestMessages(streamOneName).stream().parallel(), + streamTwoExpectedRecords.stream().parallel()).collect(toList())); + + final List actualFirstSyncState = extractStateMessage(messagesFromFirstSync); + // Since we are emitting a state message after each record, we should have 1 state for each record - + // 3 from stream1 and 3 from stream2 + assertEquals(6, actualFirstSyncState.size()); + + // The expected state type should be 2 primaryKey's and the last one being standard + final List expectedStateTypesFromFirstSync = List.of("primary_key", "primary_key", "cursor_based"); + final List stateTypeOfStreamOneStatesFromFirstSync = + extractSpecificFieldFromCombinedMessages(messagesFromFirstSync, streamOneName, STATE_TYPE_KEY); + final List stateTypeOfStreamTwoStatesFromFirstSync = + extractSpecificFieldFromCombinedMessages(messagesFromFirstSync, streamTwoName, STATE_TYPE_KEY); + // It should be the same for stream1 and stream2 + assertEquals(stateTypeOfStreamOneStatesFromFirstSync, expectedStateTypesFromFirstSync); + assertEquals(stateTypeOfStreamTwoStatesFromFirstSync, expectedStateTypesFromFirstSync); + + // Create the expected primaryKeys that we should see + final List expectedPrimaryKeysFromFirstSync = List.of("1", "2"); + final List primaryKeyFromStreamOneStatesFromFirstSync = + extractSpecificFieldFromCombinedMessages(messagesFromFirstSync, streamOneName, "pk_val"); + final List primaryKeyFromStreamTwoStatesFromFirstSync = + extractSpecificFieldFromCombinedMessages(messagesFromFirstSync, streamOneName, "pk_val"); + + // Verifying each element and its index to match. + // Only checking the first 2 elements since we have verified that the last state_type is + // "cursor_based" + assertEquals(primaryKeyFromStreamOneStatesFromFirstSync.get(0), expectedPrimaryKeysFromFirstSync.get(0)); + assertEquals(primaryKeyFromStreamOneStatesFromFirstSync.get(1), expectedPrimaryKeysFromFirstSync.get(1)); + assertEquals(primaryKeyFromStreamTwoStatesFromFirstSync.get(0), expectedPrimaryKeysFromFirstSync.get(0)); + assertEquals(primaryKeyFromStreamTwoStatesFromFirstSync.get(1), expectedPrimaryKeysFromFirstSync.get(1)); + + // Extract only state messages for each stream + final List streamOneStateMessagesFromFirstSync = extractStateMessage(messagesFromFirstSync, streamOneName); + final List streamTwoStateMessagesFromFirstSync = extractStateMessage(messagesFromFirstSync, streamTwoName); + // Extract the incremental states of each stream's first and second state message + final List streamOneIncrementalStatesFromFirstSync = + List.of(streamOneStateMessagesFromFirstSync.get(0).getStream().getStreamState().get("incremental_state"), + streamOneStateMessagesFromFirstSync.get(1).getStream().getStreamState().get("incremental_state")); + final JsonNode streamOneFinalStreamStateFromFirstSync = streamOneStateMessagesFromFirstSync.get(2).getStream().getStreamState(); + + final List streamTwoIncrementalStatesFromFirstSync = + List.of(streamTwoStateMessagesFromFirstSync.get(0).getStream().getStreamState().get("incremental_state"), + streamTwoStateMessagesFromFirstSync.get(1).getStream().getStreamState().get("incremental_state")); + final JsonNode streamTwoFinalStreamStateFromFirstSync = streamTwoStateMessagesFromFirstSync.get(2).getStream().getStreamState(); + + // The incremental_state of each stream's first and second incremental states is expected + // to be identical to the stream_state of the final state message for each stream + assertEquals(streamOneIncrementalStatesFromFirstSync.get(0), streamOneFinalStreamStateFromFirstSync); + assertEquals(streamOneIncrementalStatesFromFirstSync.get(1), streamOneFinalStreamStateFromFirstSync); + assertEquals(streamTwoIncrementalStatesFromFirstSync.get(0), streamTwoFinalStreamStateFromFirstSync); + assertEquals(streamTwoIncrementalStatesFromFirstSync.get(1), streamTwoFinalStreamStateFromFirstSync); + + // Sync should work with a primaryKey state AND a cursor-based state from each stream + // Forcing a sync with + // - stream one state still being the first record read via Primary Key. + // - stream two state being the Primary Key state before the final emitted state before the cursor + // switch + final List messagesFromSecondSyncWithMixedStates = MoreIterators + .toList(source.read(config, configuredCatalog, + Jsons.jsonNode(List.of(streamOneStateMessagesFromFirstSync.get(0), + streamTwoStateMessagesFromFirstSync.get(1))))); + + // Extract only state messages for each stream after second sync + final List streamOneStateMessagesFromSecondSync = + extractStateMessage(messagesFromSecondSyncWithMixedStates, streamOneName); + final List stateTypeOfStreamOneStatesFromSecondSync = + extractSpecificFieldFromCombinedMessages(messagesFromSecondSyncWithMixedStates, streamOneName, STATE_TYPE_KEY); + + final List streamTwoStateMessagesFromSecondSync = + extractStateMessage(messagesFromSecondSyncWithMixedStates, streamTwoName); + final List stateTypeOfStreamTwoStatesFromSecondSync = + extractSpecificFieldFromCombinedMessages(messagesFromSecondSyncWithMixedStates, streamTwoName, STATE_TYPE_KEY); + + // Stream One states after the second sync are expected to have 2 stream states + // - 1 with PrimaryKey state_type and 1 state that is of cursorBased state type + assertEquals(2, streamOneStateMessagesFromSecondSync.size()); + assertEquals(List.of("primary_key", "cursor_based"), stateTypeOfStreamOneStatesFromSecondSync); + + // Stream Two states after the second sync are expected to have 1 stream state + // - The state that is of cursorBased state type + assertEquals(1, streamTwoStateMessagesFromSecondSync.size()); + assertEquals(List.of("cursor_based"), stateTypeOfStreamTwoStatesFromSecondSync); + + // Add some data to each table and perform a third read. + // Expect to see all records be synced via cursorBased method and not primaryKey + + database.query(ctx -> { + ctx.execute( + String.format("INSERT INTO %s(id, name, updated_at)" + + "VALUES (4,'Hooper','2006-10-19')", + getFullyQualifiedTableName(streamOneName))); + ctx.execute( + String.format("INSERT INTO %s(id, name, updated_at)" + + "VALUES (43, 'Iron Man', '2006-10-19')", + streamTwoFullyQualifiedName)); + return null; + }); + + final List messagesFromThirdSync = MoreIterators + .toList(source.read(config, configuredCatalog, + Jsons.jsonNode(List.of(streamOneStateMessagesFromSecondSync.get(1), + streamTwoStateMessagesFromSecondSync.get(0))))); + + // Extract only state messages, state type, and cursor for each stream after second sync + final List streamOneStateMessagesFromThirdSync = + extractStateMessage(messagesFromThirdSync, streamOneName); + final List stateTypeOfStreamOneStatesFromThirdSync = + extractSpecificFieldFromCombinedMessages(messagesFromThirdSync, streamOneName, STATE_TYPE_KEY); + final List cursorOfStreamOneStatesFromThirdSync = + extractSpecificFieldFromCombinedMessages(messagesFromThirdSync, streamOneName, "cursor"); + + final List streamTwoStateMessagesFromThirdSync = + extractStateMessage(messagesFromThirdSync, streamTwoName); + final List stateTypeOfStreamTwoStatesFromThirdSync = + extractSpecificFieldFromCombinedMessages(messagesFromThirdSync, streamTwoName, STATE_TYPE_KEY); + final List cursorOfStreamTwoStatesFromThirdSync = + extractSpecificFieldFromCombinedMessages(messagesFromThirdSync, streamTwoName, "cursor"); + + // Both streams should now be synced via standard cursor and have updated max cursor values + // cursor: 4 for stream one + // cursor: 43 for stream two + assertEquals(1, streamOneStateMessagesFromThirdSync.size()); + assertEquals(List.of("cursor_based"), stateTypeOfStreamOneStatesFromThirdSync); + assertEquals(List.of("4"), cursorOfStreamOneStatesFromThirdSync); + + assertEquals(1, streamTwoStateMessagesFromThirdSync.size()); + assertEquals(List.of("cursor_based"), stateTypeOfStreamTwoStatesFromThirdSync); + assertEquals(List.of("43"), cursorOfStreamTwoStatesFromThirdSync); + } + + @Override + protected boolean supportsPerStream() { + return true; + } + + // Override from parent class as we're no longer including the legacy Data field. + @Override + protected List createExpectedTestMessages(final List states) { + return supportsPerStream() + ? states.stream() + .map(s -> new AirbyteMessage().withType(Type.STATE) + .withState( + new AirbyteStateMessage().withType(AirbyteStateType.STREAM) + .withStream(new AirbyteStreamState() + .withStreamDescriptor(new StreamDescriptor().withNamespace(s.getStreamNamespace()).withName(s.getStreamName())) + .withStreamState(Jsons.jsonNode(s))))) + .collect( + Collectors.toList()) + : List.of(new AirbyteMessage().withType(Type.STATE).withState(new AirbyteStateMessage().withType(AirbyteStateType.LEGACY))); + } + + @Override + protected List createState(final List states) { + return supportsPerStream() + ? states.stream() + .map(s -> new AirbyteStateMessage().withType(AirbyteStateType.STREAM) + .withStream(new AirbyteStreamState() + .withStreamDescriptor(new StreamDescriptor().withNamespace(s.getStreamNamespace()).withName(s.getStreamName())) + .withStreamState(Jsons.jsonNode(s)))) + .collect( + Collectors.toList()) + : List.of(new AirbyteStateMessage().withType(AirbyteStateType.LEGACY)); + } + + @Override + protected JsonNode getStateData(final AirbyteMessage airbyteMessage, final String streamName) { + final JsonNode streamState = airbyteMessage.getState().getStream().getStreamState(); + if (streamState.get("stream_name").asText().equals(streamName)) { + return streamState; + } + + throw new IllegalArgumentException("Stream not found in state message: " + streamName); + } + + @Override + protected DbStreamState buildStreamState(final ConfiguredAirbyteStream configuredAirbyteStream, + final String cursorField, + final String cursorValue) { + return new CursorBasedStatus().withStateType(StateType.CURSOR_BASED).withVersion(2L) + .withStreamName(configuredAirbyteStream.getStream().getName()) + .withStreamNamespace(configuredAirbyteStream.getStream().getNamespace()) + .withCursorField(List.of(cursorField)) + .withCursor(cursorValue) + .withCursorRecordCount(1L); + } + + @Override + protected List getExpectedAirbyteMessagesSecondSync(final String namespace) { + final List expectedMessages = new ArrayList<>(); + expectedMessages.add(new AirbyteMessage().withType(AirbyteMessage.Type.RECORD) + .withRecord(new AirbyteRecordMessage().withStream(streamName).withNamespace(namespace) + .withData(Jsons.jsonNode(ImmutableMap + .of(COL_ID, ID_VALUE_4, + COL_NAME, "riker", + COL_UPDATED_AT, "2006-10-19"))))); + expectedMessages.add(new AirbyteMessage().withType(AirbyteMessage.Type.RECORD) + .withRecord(new AirbyteRecordMessage().withStream(streamName).withNamespace(namespace) + .withData(Jsons.jsonNode(ImmutableMap + .of(COL_ID, ID_VALUE_5, + COL_NAME, "data", + COL_UPDATED_AT, "2006-10-19"))))); + final DbStreamState state = new CursorBasedStatus() + .withStateType(StateType.CURSOR_BASED) + .withVersion(2L) + .withStreamName(streamName) + .withStreamNamespace(namespace) + .withCursorField(ImmutableList.of(COL_ID)) + .withCursor("5") + .withCursorRecordCount(1L); + + expectedMessages.addAll(createExpectedTestMessages(List.of(state))); + return expectedMessages; + } + + @Override + protected List getTestMessages() { + return getTestMessages(streamName); + } + + protected List getTestMessages(final String streamName) { + return List.of( + new AirbyteMessage().withType(Type.RECORD) + .withRecord(new AirbyteRecordMessage().withStream(streamName).withNamespace(getDefaultNamespace()) + .withData(Jsons.jsonNode(Map + .of(COL_ID, ID_VALUE_1, + COL_NAME, "picard", + COL_UPDATED_AT, "2004-10-19")))), + new AirbyteMessage().withType(Type.RECORD) + .withRecord(new AirbyteRecordMessage().withStream(streamName).withNamespace(getDefaultNamespace()) + .withData(Jsons.jsonNode(Map + .of(COL_ID, ID_VALUE_2, + COL_NAME, "crusher", + COL_UPDATED_AT, + "2005-10-19")))), + new AirbyteMessage().withType(Type.RECORD) + .withRecord(new AirbyteRecordMessage().withStream(streamName).withNamespace(getDefaultNamespace()) + .withData(Jsons.jsonNode(Map + .of(COL_ID, ID_VALUE_3, + COL_NAME, "vash", + COL_UPDATED_AT, "2006-10-19"))))); + } + + private AirbyteStream getAirbyteStream(final String tableName, final String namespace) { + return CatalogHelpers.createAirbyteStream( + tableName, + namespace, + Field.of(COL_ID, JsonSchemaType.INTEGER), + Field.of(COL_NAME, JsonSchemaType.STRING), + Field.of(COL_UPDATED_AT, JsonSchemaType.STRING_DATE)) + .withSupportedSyncModes(Lists.newArrayList(SyncMode.FULL_REFRESH, SyncMode.INCREMENTAL)) + .withSourceDefinedPrimaryKey(List.of(List.of(COL_ID))); + } + +} diff --git a/airbyte-integrations/connectors/source-mysql-strict-encrypt/src/test/java/io/airbyte/integrations/source/mysql_strict_encrypt/MySqlStrictEncryptJdbcSourceAcceptanceTest.java b/airbyte-integrations/connectors/source-mysql-strict-encrypt/src/test/java/io/airbyte/integrations/source/mysql_strict_encrypt/MySqlStrictEncryptJdbcSourceAcceptanceTest.java index 82ee0c027787..ac542d79abc7 100644 --- a/airbyte-integrations/connectors/source-mysql-strict-encrypt/src/test/java/io/airbyte/integrations/source/mysql_strict_encrypt/MySqlStrictEncryptJdbcSourceAcceptanceTest.java +++ b/airbyte-integrations/connectors/source-mysql-strict-encrypt/src/test/java/io/airbyte/integrations/source/mysql_strict_encrypt/MySqlStrictEncryptJdbcSourceAcceptanceTest.java @@ -27,21 +27,21 @@ import io.airbyte.integrations.base.ssh.SshTunnel; import io.airbyte.integrations.source.jdbc.test.JdbcSourceAcceptanceTest; import io.airbyte.integrations.source.mysql.MySqlSource; -import io.airbyte.integrations.source.relationaldb.models.DbStreamState; import io.airbyte.protocol.models.Field; import io.airbyte.protocol.models.JsonSchemaType; import io.airbyte.protocol.models.v0.AirbyteCatalog; import io.airbyte.protocol.models.v0.AirbyteConnectionStatus; import io.airbyte.protocol.models.v0.AirbyteConnectionStatus.Status; -import io.airbyte.protocol.models.v0.AirbyteMessage; -import io.airbyte.protocol.models.v0.AirbyteRecordMessage; import io.airbyte.protocol.models.v0.CatalogHelpers; import io.airbyte.protocol.models.v0.ConnectorSpecification; import io.airbyte.protocol.models.v0.SyncMode; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; -import java.util.*; +import java.util.Collections; +import java.util.List; +import java.util.Map; +import java.util.Objects; import org.jooq.DSLContext; import org.jooq.SQLDialect; import org.junit.jupiter.api.AfterAll; @@ -86,11 +86,9 @@ static void init() throws SQLException { @BeforeEach public void setup() throws Exception { environmentVariables.set(EnvVariableFeatureFlags.USE_STREAM_CAPABLE_STATE, "true"); - final var innerContainerAddress = SshHelpers.getInnerContainerAddress(container); - final var outerContainerAddress = SshHelpers.getOuterContainerAddress(container); config = Jsons.jsonNode(ImmutableMap.builder() - .put(JdbcUtils.HOST_KEY, innerContainerAddress.left) - .put(JdbcUtils.PORT_KEY, innerContainerAddress.right) + .put(JdbcUtils.HOST_KEY, container.getHost()) + .put(JdbcUtils.PORT_KEY, container.getFirstMappedPort()) .put(JdbcUtils.DATABASE_KEY, Strings.addRandomSuffix("db", "_", 10)) .put(JdbcUtils.USERNAME_KEY, container.getUsername()) .put(JdbcUtils.PASSWORD_KEY, container.getPassword()) @@ -101,8 +99,8 @@ public void setup() throws Exception { config.get(JdbcUtils.PASSWORD_KEY).asText(), DatabaseDriver.MYSQL.getDriverClassName(), String.format("jdbc:mysql://%s:%s?%s", - outerContainerAddress.left, - outerContainerAddress.right, + container.getHost(), + container.getFirstMappedPort(), String.join("&", SSL_PARAMETERS)), SQLDialect.MYSQL); database = new Database(dslContext); @@ -190,63 +188,6 @@ protected AirbyteCatalog getCatalog(final String defaultNamespace) { List.of(List.of(COL_FIRST_NAME), List.of(COL_LAST_NAME))))); } - @Override - protected void incrementalDateCheck() throws Exception { - incrementalCursorCheck( - COL_UPDATED_AT, - "2005-10-18", - "2006-10-19", - List.of(getTestMessages().get(1), getTestMessages().get(2))); - } - - @Override - protected List getTestMessages() { - return List.of( - new AirbyteMessage().withType(AirbyteMessage.Type.RECORD) - .withRecord(new AirbyteRecordMessage().withStream(streamName).withNamespace(getDefaultNamespace()) - .withData(Jsons.jsonNode(Map - .of(COL_ID, ID_VALUE_1, - COL_NAME, "picard", - COL_UPDATED_AT, "2004-10-19")))), - new AirbyteMessage().withType(AirbyteMessage.Type.RECORD) - .withRecord(new AirbyteRecordMessage().withStream(streamName).withNamespace(getDefaultNamespace()) - .withData(Jsons.jsonNode(Map - .of(COL_ID, ID_VALUE_2, - COL_NAME, "crusher", - COL_UPDATED_AT, - "2005-10-19")))), - new AirbyteMessage().withType(AirbyteMessage.Type.RECORD) - .withRecord(new AirbyteRecordMessage().withStream(streamName).withNamespace(getDefaultNamespace()) - .withData(Jsons.jsonNode(Map - .of(COL_ID, ID_VALUE_3, - COL_NAME, "vash", - COL_UPDATED_AT, "2006-10-19"))))); - } - - @Override - protected List getExpectedAirbyteMessagesSecondSync(final String namespace) { - final List expectedMessages = new ArrayList<>(); - expectedMessages.add(new AirbyteMessage().withType(AirbyteMessage.Type.RECORD) - .withRecord(new AirbyteRecordMessage().withStream(streamName).withNamespace(namespace) - .withData(Jsons.jsonNode(Map - .of(COL_ID, ID_VALUE_4, - COL_NAME, "riker", - COL_UPDATED_AT, "2006-10-19"))))); - expectedMessages.add(new AirbyteMessage().withType(AirbyteMessage.Type.RECORD) - .withRecord(new AirbyteRecordMessage().withStream(streamName).withNamespace(namespace) - .withData(Jsons.jsonNode(Map - .of(COL_ID, ID_VALUE_5, - COL_NAME, "data", - COL_UPDATED_AT, "2006-10-19"))))); - final DbStreamState state = new DbStreamState() - .withStreamName(streamName) - .withStreamNamespace(namespace) - .withCursorField(List.of(COL_ID)) - .withCursor("5") - .withCursorRecordCount(1L); - expectedMessages.addAll(createExpectedTestMessages(List.of(state))); - return expectedMessages; - } @Test void testStrictSSLUnsecuredNoTunnel() throws Exception { diff --git a/airbyte-integrations/connectors/source-mysql/.dockerignore b/airbyte-integrations/connectors/source-mysql/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/source-mysql/.dockerignore +++ b/airbyte-integrations/connectors/source-mysql/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/source-mysql/Dockerfile b/airbyte-integrations/connectors/source-mysql/Dockerfile index d21a955aa636..2e70bc6df316 100644 --- a/airbyte-integrations/connectors/source-mysql/Dockerfile +++ b/airbyte-integrations/connectors/source-mysql/Dockerfile @@ -24,6 +24,6 @@ ENV APPLICATION source-mysql COPY --from=build /airbyte /airbyte -LABEL io.airbyte.version=3.0.3 +LABEL io.airbyte.version=3.0.8 LABEL io.airbyte.name=airbyte/source-mysql diff --git a/airbyte-integrations/connectors/source-mysql/build.gradle b/airbyte-integrations/connectors/source-mysql/build.gradle index 8bacfd89490a..b73af598d411 100644 --- a/airbyte-integrations/connectors/source-mysql/build.gradle +++ b/airbyte-integrations/connectors/source-mysql/build.gradle @@ -30,7 +30,7 @@ dependencies { testImplementation 'org.apache.commons:commons-lang3:3.11' testImplementation 'org.hamcrest:hamcrest-all:1.3' testImplementation libs.junit.jupiter.system.stubs - testImplementation libs.connectors.testcontainers.mysql + testImplementation libs.testcontainers.mysql integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-mysql') @@ -38,9 +38,6 @@ dependencies { performanceTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') performanceTestJavaImplementation project(':airbyte-integrations:connectors:source-mysql') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - performanceTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } jsonSchema2Pojo { diff --git a/airbyte-integrations/connectors/source-mysql/metadata.yaml b/airbyte-integrations/connectors/source-mysql/metadata.yaml index 794d4b6c0e92..8216d7b18ac2 100644 --- a/airbyte-integrations/connectors/source-mysql/metadata.yaml +++ b/airbyte-integrations/connectors/source-mysql/metadata.yaml @@ -1,4 +1,7 @@ data: + ab_internal: + ql: 300 + sl: 100 allowedHosts: hosts: - ${host} @@ -6,8 +9,9 @@ data: connectorSubtype: database connectorType: source definitionId: 435bb9a5-7887-4809-aa58-28c27df0d7ad - dockerImageTag: 3.0.3 + dockerImageTag: 3.0.8 dockerRepository: airbyte/source-mysql + documentationUrl: https://docs.airbyte.com/integrations/sources/mysql githubIssueLabel: source-mysql icon: mysql.svg license: ELv2 @@ -19,17 +23,13 @@ data: oss: enabled: true releaseStage: beta - documentationUrl: https://docs.airbyte.com/integrations/sources/mysql - tags: - - language:java - - language:python releases: breakingChanges: 3.0.0: - message: "Add default cursor for cdc" + message: Add default cursor for cdc upgradeDeadline: "2023-08-17" - ab_internal: - sl: 300 - ql: 300 - supportLevel: certified + supportLevel: community + tags: + - language:java + - language:python metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/MySqlCdcProperties.java b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/MySqlCdcProperties.java index 96e871915da4..902ce156a35e 100644 --- a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/MySqlCdcProperties.java +++ b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/MySqlCdcProperties.java @@ -69,7 +69,11 @@ private static Properties commonProperties(final JdbcDatabase database) { if (sourceConfig.get("replication_method").has("server_time_zone")) { final String serverTimeZone = sourceConfig.get("replication_method").get("server_time_zone").asText(); if (!serverTimeZone.isEmpty()) { - props.setProperty("database.serverTimezone", serverTimeZone); + /** Per Debezium docs, https://debezium.io/documentation/reference/stable/connectors/mysql.html#mysql-temporal-types + * this property is now connectionTimeZone + * {@link com.mysql.cj.conf.PropertyKey#connectionTimeZone} + **/ + props.setProperty("database.connectionTimeZone", serverTimeZone); } } @@ -115,12 +119,6 @@ private static Properties commonProperties(final JdbcDatabase database) { return props; } - static Properties getSnapshotProperties(final JdbcDatabase database) { - final Properties props = commonProperties(database); - props.setProperty("snapshot.mode", "initial_only"); - return props; - } - private static int generateServerID() { final int min = 5400; final int max = 6400; diff --git a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/MySqlCdcSavedInfoFetcher.java b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/MySqlCdcSavedInfoFetcher.java index e99ff2776482..0876f8e17f70 100644 --- a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/MySqlCdcSavedInfoFetcher.java +++ b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/MySqlCdcSavedInfoFetcher.java @@ -4,11 +4,13 @@ package io.airbyte.integrations.source.mysql; -import static io.airbyte.integrations.debezium.internals.mysql.MySqlDebeziumStateUtil.MYSQL_CDC_OFFSET; -import static io.airbyte.integrations.debezium.internals.mysql.MySqlDebeziumStateUtil.MYSQL_DB_HISTORY; +import static io.airbyte.integrations.debezium.internals.mysql.MysqlCdcStateConstants.IS_COMPRESSED; +import static io.airbyte.integrations.debezium.internals.mysql.MysqlCdcStateConstants.MYSQL_CDC_OFFSET; +import static io.airbyte.integrations.debezium.internals.mysql.MysqlCdcStateConstants.MYSQL_DB_HISTORY; import com.fasterxml.jackson.databind.JsonNode; import io.airbyte.integrations.debezium.CdcSavedInfoFetcher; +import io.airbyte.integrations.debezium.internals.AirbyteSchemaHistoryStorage.SchemaHistory; import io.airbyte.integrations.source.relationaldb.models.CdcState; import java.util.Optional; @@ -16,11 +18,14 @@ public class MySqlCdcSavedInfoFetcher implements CdcSavedInfoFetcher { private final JsonNode savedOffset; private final JsonNode savedSchemaHistory; + private final boolean isSavedSchemaHistoryCompressed; public MySqlCdcSavedInfoFetcher(final CdcState savedState) { final boolean savedStatePresent = savedState != null && savedState.getState() != null; this.savedOffset = savedStatePresent ? savedState.getState().get(MYSQL_CDC_OFFSET) : null; this.savedSchemaHistory = savedStatePresent ? savedState.getState().get(MYSQL_DB_HISTORY) : null; + this.isSavedSchemaHistoryCompressed = + savedStatePresent && savedState.getState().has(IS_COMPRESSED) && savedState.getState().get(IS_COMPRESSED).asBoolean(); } @Override @@ -29,8 +34,8 @@ public JsonNode getSavedOffset() { } @Override - public Optional getSavedSchemaHistory() { - return Optional.ofNullable(savedSchemaHistory); + public SchemaHistory> getSavedSchemaHistory() { + return new SchemaHistory<>(Optional.ofNullable(savedSchemaHistory), isSavedSchemaHistoryCompressed); } } diff --git a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/MySqlCdcStateHandler.java b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/MySqlCdcStateHandler.java index 1f3ea8d84c8c..4fe64b18ee0e 100644 --- a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/MySqlCdcStateHandler.java +++ b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/MySqlCdcStateHandler.java @@ -4,18 +4,17 @@ package io.airbyte.integrations.source.mysql; -import static io.airbyte.integrations.debezium.internals.mysql.MySqlDebeziumStateUtil.MYSQL_CDC_OFFSET; -import static io.airbyte.integrations.debezium.internals.mysql.MySqlDebeziumStateUtil.MYSQL_DB_HISTORY; +import static io.airbyte.integrations.debezium.internals.mysql.MySqlDebeziumStateUtil.serialize; +import static io.airbyte.integrations.debezium.internals.mysql.MysqlCdcStateConstants.COMPRESSION_ENABLED; import com.fasterxml.jackson.databind.JsonNode; -import io.airbyte.commons.json.Jsons; import io.airbyte.integrations.debezium.CdcStateHandler; +import io.airbyte.integrations.debezium.internals.AirbyteSchemaHistoryStorage.SchemaHistory; import io.airbyte.integrations.source.relationaldb.models.CdcState; import io.airbyte.integrations.source.relationaldb.state.StateManager; import io.airbyte.protocol.models.v0.AirbyteMessage; import io.airbyte.protocol.models.v0.AirbyteMessage.Type; import io.airbyte.protocol.models.v0.AirbyteStateMessage; -import java.util.HashMap; import java.util.Map; import java.util.Optional; import org.slf4j.Logger; @@ -37,12 +36,8 @@ public boolean isCdcCheckpointEnabled() { } @Override - public AirbyteMessage saveState(final Map offset, final String dbHistory) { - final Map state = new HashMap<>(); - state.put(MYSQL_CDC_OFFSET, offset); - state.put(MYSQL_DB_HISTORY, dbHistory); - - final JsonNode asJson = Jsons.jsonNode(state); + public AirbyteMessage saveState(final Map offset, final SchemaHistory dbHistory) { + final JsonNode asJson = serialize(offset, dbHistory); LOGGER.info("debezium state: {}", asJson); @@ -67,4 +62,8 @@ public AirbyteMessage saveStateAfterCompletionOfSnapshotOfNewStreams() { return new AirbyteMessage().withType(Type.STATE).withState(stateMessage); } + @Override + public boolean compressSchemaHistoryForState() { + return COMPRESSION_ENABLED; + } } diff --git a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/MySqlQueryUtils.java b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/MySqlQueryUtils.java index f487b7605bad..d6598bd5677e 100644 --- a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/MySqlQueryUtils.java +++ b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/MySqlQueryUtils.java @@ -9,8 +9,13 @@ import com.fasterxml.jackson.databind.JsonNode; import com.google.common.base.Preconditions; +import com.google.common.collect.ImmutableList; import io.airbyte.db.jdbc.JdbcDatabase; import io.airbyte.db.jdbc.JdbcUtils; +import io.airbyte.integrations.source.mysql.internal.models.CursorBasedStatus; +import io.airbyte.integrations.source.mysql.internal.models.InternalModels.StateType; +import io.airbyte.integrations.source.relationaldb.CursorInfo; +import io.airbyte.integrations.source.relationaldb.state.StateManager; import io.airbyte.protocol.models.AirbyteStreamNameNamespacePair; import io.airbyte.protocol.models.v0.ConfiguredAirbyteStream; import java.sql.SQLException; @@ -19,7 +24,9 @@ import java.util.HashSet; import java.util.List; import java.util.Map; +import java.util.Optional; import java.util.Set; +import java.util.stream.Collectors; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -47,7 +54,11 @@ public record TableSizeInfo(Long tableSize, Long avgRowLength) {} public static final String SHOW_TABLE_QUERY = """ - SHOW TABLE STATUS; + SHOW TABLE STATUS; + """; + public static final String MAX_CURSOR_VALUE_QUERY = + """ + SELECT %s FROM %s WHERE %s = (SELECT MAX(%s) FROM %s); """; public static final String MAX_PK_COL = "max_pk"; @@ -115,21 +126,89 @@ public static Map getTableSizeInf final String fullTableName = getFullyQualifiedTableNameWithQuoting(name, namespace, quoteString); final List tableEstimateResult = getTableEstimate(database, namespace, name); - Preconditions.checkState(tableEstimateResult.size() == 1); - final long tableEstimateBytes = tableEstimateResult.get(0).get(TABLE_SIZE_BYTES_COL).asLong(); - final long avgTableRowSizeBytes = tableEstimateResult.get(0).get(AVG_ROW_LENGTH).asLong(); - LOGGER.info("Stream {} size estimate is {}, average row size estimate is {}", fullTableName, tableEstimateBytes, avgTableRowSizeBytes); - final TableSizeInfo tableSizeInfo = new TableSizeInfo(tableEstimateBytes, avgTableRowSizeBytes); - final AirbyteStreamNameNamespacePair namespacePair = - new AirbyteStreamNameNamespacePair(stream.getStream().getName(), stream.getStream().getNamespace()); - tableSizeInfoMap.put(namespacePair, tableSizeInfo); - } catch (final SQLException e) { + + if (tableEstimateResult != null + && tableEstimateResult.size() == 1 + && tableEstimateResult.get(0).get(TABLE_SIZE_BYTES_COL) != null + && tableEstimateResult.get(0).get(AVG_ROW_LENGTH) != null) { + final long tableEstimateBytes = tableEstimateResult.get(0).get(TABLE_SIZE_BYTES_COL).asLong(); + final long avgTableRowSizeBytes = tableEstimateResult.get(0).get(AVG_ROW_LENGTH).asLong(); + LOGGER.info("Stream {} size estimate is {}, average row size estimate is {}", fullTableName, tableEstimateBytes, avgTableRowSizeBytes); + final TableSizeInfo tableSizeInfo = new TableSizeInfo(tableEstimateBytes, avgTableRowSizeBytes); + final AirbyteStreamNameNamespacePair namespacePair = + new AirbyteStreamNameNamespacePair(stream.getStream().getName(), stream.getStream().getNamespace()); + tableSizeInfoMap.put(namespacePair, tableSizeInfo); + } + } catch (final Exception e) { LOGGER.warn("Error occurred while attempting to estimate sync size", e); } }); return tableSizeInfoMap; } + + /** + * Iterates through each stream and find the max cursor value and the record count which has that + * value based on each cursor field provided by the customer per stream This information is saved in + * a Hashmap with the mapping being the AirbyteStreamNameNamespacepair -> CursorBasedStatus + * + * @param database the source db + * @param streams streams to be synced + * @param stateManager stream stateManager + * @return Map of streams to statuses + */ + public static Map getCursorBasedSyncStatusForStreams(final JdbcDatabase database, + final List streams, + final StateManager stateManager, + final String quoteString) { + + final Map cursorBasedStatusMap = new HashMap<>(); + streams.forEach(stream -> { + try { + final String name = stream.getStream().getName(); + final String namespace = stream.getStream().getNamespace(); + final String fullTableName = + getFullyQualifiedTableNameWithQuoting(namespace, name, quoteString); + + final Optional cursorInfoOptional = + stateManager.getCursorInfo(new io.airbyte.protocol.models.v0.AirbyteStreamNameNamespacePair(name, namespace)); + if (cursorInfoOptional.isEmpty()) { + throw new RuntimeException(String.format("Stream %s was not provided with an appropriate cursor", stream.getStream().getName())); + } + + LOGGER.info("Querying max cursor value for {}.{}", namespace, name); + final String cursorField = cursorInfoOptional.get().getCursorField(); + final String quotedCursorField = getIdentifierWithQuoting(cursorField, quoteString); + final String cursorBasedSyncStatusQuery = String.format(MAX_CURSOR_VALUE_QUERY, + quotedCursorField, + fullTableName, + quotedCursorField, + quotedCursorField, + fullTableName); + final List jsonNodes = database.bufferedResultSetQuery(conn -> conn.prepareStatement(cursorBasedSyncStatusQuery).executeQuery(), + resultSet -> JdbcUtils.getDefaultSourceOperations().rowToJson(resultSet)); + final CursorBasedStatus cursorBasedStatus = new CursorBasedStatus(); + cursorBasedStatus.setStateType(StateType.CURSOR_BASED); + cursorBasedStatus.setVersion(2L); + cursorBasedStatus.setStreamName(name); + cursorBasedStatus.setStreamNamespace(namespace); + cursorBasedStatus.setCursorField(ImmutableList.of(cursorField)); + + if (!jsonNodes.isEmpty()) { + final JsonNode result = jsonNodes.get(0); + cursorBasedStatus.setCursor(result.get(cursorField).asText()); + cursorBasedStatus.setCursorRecordCount((long) jsonNodes.size()); + } + + cursorBasedStatusMap.put(new io.airbyte.protocol.models.v0.AirbyteStreamNameNamespacePair(name, namespace), cursorBasedStatus); + } catch (final SQLException e) { + throw new RuntimeException(e); + } + }); + + return cursorBasedStatusMap; + } + private static List getTableEstimate(final JdbcDatabase database, final String namespace, final String name) throws SQLException { // Construct the table estimate query. @@ -141,4 +220,17 @@ private static List getTableEstimate(final JdbcDatabase database, fina return jsonNodes; } + public static void logStreamSyncStatus(final List streams, final String syncType) { + if (streams.isEmpty()) { + LOGGER.info("No Streams will be synced via {}.", syncType); + } else { + LOGGER.info("Streams to be synced via {} : {}", syncType, streams.size()); + LOGGER.info("Streams: {}", prettyPrintConfiguredAirbyteStreamList(streams)); + } + } + + public static String prettyPrintConfiguredAirbyteStreamList(final List streamList) { + return streamList.stream().map(s -> "%s.%s".formatted(s.getStream().getNamespace(), s.getStream().getName())).collect(Collectors.joining(", ")); + } + } diff --git a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/MySqlSource.java b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/MySqlSource.java index 940866ac4e42..a55089bde68a 100644 --- a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/MySqlSource.java +++ b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/MySqlSource.java @@ -5,12 +5,18 @@ package io.airbyte.integrations.source.mysql; import static io.airbyte.db.jdbc.JdbcUtils.EQUALS; -import static io.airbyte.integrations.debezium.AirbyteDebeziumHandler.shouldUseCDC; +import static io.airbyte.integrations.debezium.AirbyteDebeziumHandler.isAnyStreamIncrementalSyncMode; import static io.airbyte.integrations.debezium.internals.DebeziumEventUtils.CDC_DELETED_AT; import static io.airbyte.integrations.debezium.internals.DebeziumEventUtils.CDC_UPDATED_AT; import static io.airbyte.integrations.source.jdbc.JdbcDataSourceUtils.DEFAULT_JDBC_PARAMETERS_DELIMITER; import static io.airbyte.integrations.source.jdbc.JdbcDataSourceUtils.assertCustomParametersDontOverwriteDefaultParameters; import static io.airbyte.integrations.source.jdbc.JdbcSSLConnectionUtils.SSL_MODE; +import static io.airbyte.integrations.source.mysql.MySqlQueryUtils.getCursorBasedSyncStatusForStreams; +import static io.airbyte.integrations.source.mysql.MySqlQueryUtils.getTableSizeInfoForStreams; +import static io.airbyte.integrations.source.mysql.MySqlQueryUtils.logStreamSyncStatus; +import static io.airbyte.integrations.source.mysql.initialsync.MySqlInitialReadUtil.convertNameNamespacePairFromV0; +import static io.airbyte.integrations.source.mysql.initialsync.MySqlInitialReadUtil.initPairToPrimaryKeyInfoMap; +import static io.airbyte.integrations.source.mysql.initialsync.MySqlInitialReadUtil.streamsForInitialPrimaryKeyLoad; import static java.util.stream.Collectors.toList; import com.fasterxml.jackson.databind.JsonNode; @@ -27,31 +33,30 @@ import io.airbyte.commons.json.Jsons; import io.airbyte.commons.map.MoreMaps; import io.airbyte.commons.util.AutoCloseableIterator; -import io.airbyte.commons.util.AutoCloseableIterators; import io.airbyte.db.factory.DataSourceFactory; import io.airbyte.db.factory.DatabaseDriver; import io.airbyte.db.jdbc.JdbcDatabase; import io.airbyte.db.jdbc.JdbcUtils; import io.airbyte.db.jdbc.StreamingJdbcDatabase; -import io.airbyte.integrations.base.AirbyteTraceMessageUtility; import io.airbyte.integrations.base.IntegrationRunner; import io.airbyte.integrations.base.Source; import io.airbyte.integrations.base.ssh.SshWrappedSource; -import io.airbyte.integrations.debezium.AirbyteDebeziumHandler; -import io.airbyte.integrations.debezium.internals.DebeziumPropertiesManager; import io.airbyte.integrations.debezium.internals.FirstRecordWaitTimeUtil; -import io.airbyte.integrations.debezium.internals.mysql.MySqlCdcPosition; -import io.airbyte.integrations.debezium.internals.mysql.MySqlCdcTargetPosition; import io.airbyte.integrations.source.jdbc.AbstractJdbcSource; import io.airbyte.integrations.source.jdbc.JdbcDataSourceUtils; import io.airbyte.integrations.source.jdbc.JdbcSSLConnectionUtils; import io.airbyte.integrations.source.jdbc.JdbcSSLConnectionUtils.SslMode; +import io.airbyte.integrations.source.mysql.cursor_based.MySqlCursorBasedStateManager; import io.airbyte.integrations.source.mysql.helpers.CdcConfigurationHelper; import io.airbyte.integrations.source.mysql.initialsync.MySqlFeatureFlags; +import io.airbyte.integrations.source.mysql.initialsync.MySqlInitialLoadHandler; +import io.airbyte.integrations.source.mysql.initialsync.MySqlInitialLoadStreamStateManager; import io.airbyte.integrations.source.mysql.initialsync.MySqlInitialReadUtil; +import io.airbyte.integrations.source.mysql.initialsync.MySqlInitialReadUtil.CursorBasedStreams; +import io.airbyte.integrations.source.mysql.initialsync.MySqlInitialReadUtil.InitialLoadStreams; +import io.airbyte.integrations.source.mysql.internal.models.CursorBasedStatus; import io.airbyte.integrations.source.relationaldb.DbSourceDiscoverUtil; import io.airbyte.integrations.source.relationaldb.TableInfo; -import io.airbyte.integrations.source.relationaldb.models.CdcState; import io.airbyte.integrations.source.relationaldb.state.StateGeneratorUtils; import io.airbyte.integrations.source.relationaldb.state.StateManager; import io.airbyte.integrations.source.relationaldb.state.StateManagerFactory; @@ -61,25 +66,22 @@ import io.airbyte.protocol.models.v0.AirbyteMessage; import io.airbyte.protocol.models.v0.AirbyteStateMessage.AirbyteStateType; import io.airbyte.protocol.models.v0.AirbyteStream; +import io.airbyte.protocol.models.v0.AirbyteStreamNameNamespacePair; import io.airbyte.protocol.models.v0.ConfiguredAirbyteCatalog; import io.airbyte.protocol.models.v0.ConfiguredAirbyteStream; import io.airbyte.protocol.models.v0.SyncMode; import java.sql.SQLException; -import java.time.Duration; import java.time.Instant; import java.util.ArrayList; import java.util.Collection; -import java.util.Collections; import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Objects; import java.util.Optional; -import java.util.OptionalInt; import java.util.Set; import java.util.function.Function; -import java.util.function.Supplier; import java.util.stream.Collectors; import java.util.stream.Stream; import javax.sql.DataSource; @@ -345,53 +347,55 @@ public List> getIncrementalIterators(final final Map>> tableNameToTable, final StateManager stateManager, final Instant emittedAt) { - final JsonNode sourceConfig = database.getSourceConfig(); - final MySqlFeatureFlags featureFlags = new MySqlFeatureFlags(sourceConfig); - if (isCdc(sourceConfig) && shouldUseCDC(catalog)) { - if (featureFlags.isCdcInitialSyncViaPkEnabled()) { - LOGGER.info("Using PK + CDC"); - return MySqlInitialReadUtil.getCdcReadIterators(database, catalog, tableNameToTable, stateManager, emittedAt, getQuoteString()); - } - final Duration firstRecordWaitTime = FirstRecordWaitTimeUtil.getFirstRecordWaitTime(sourceConfig); - LOGGER.info("First record waiting time: {} seconds", firstRecordWaitTime.getSeconds()); - final AirbyteDebeziumHandler handler = - new AirbyteDebeziumHandler<>(sourceConfig, MySqlCdcTargetPosition.targetPosition(database), true, firstRecordWaitTime, OptionalInt.empty()); - - final MySqlCdcStateHandler mySqlCdcStateHandler = new MySqlCdcStateHandler(stateManager); - final MySqlCdcConnectorMetadataInjector mySqlCdcConnectorMetadataInjector = MySqlCdcConnectorMetadataInjector.getInstance(emittedAt); - - final List streamsToSnapshot = identifyStreamsToSnapshot(catalog, stateManager); - final Optional cdcState = Optional.ofNullable(stateManager.getCdcStateManager().getCdcState()); - - final Supplier> incrementalIteratorSupplier = () -> handler.getIncrementalIterators(catalog, - new MySqlCdcSavedInfoFetcher(cdcState.orElse(null)), - new MySqlCdcStateHandler(stateManager), - mySqlCdcConnectorMetadataInjector, - MySqlCdcProperties.getDebeziumProperties(database), - DebeziumPropertiesManager.DebeziumConnectorType.RELATIONALDB, - emittedAt, - false); - - if (streamsToSnapshot.isEmpty()) { - return Collections.singletonList(incrementalIteratorSupplier.get()); - } - final AutoCloseableIterator snapshotIterator = handler.getSnapshotIterators( - new ConfiguredAirbyteCatalog().withStreams(streamsToSnapshot), - mySqlCdcConnectorMetadataInjector, - MySqlCdcProperties.getSnapshotProperties(database), - mySqlCdcStateHandler, - DebeziumPropertiesManager.DebeziumConnectorType.RELATIONALDB, - emittedAt); - - return Collections.singletonList( - AutoCloseableIterators.concatWithEagerClose(AirbyteTraceMessageUtility::emitStreamStatusTrace, snapshotIterator, - AutoCloseableIterators.lazyIterator(incrementalIteratorSupplier, null))); + final JsonNode sourceConfig = database.getSourceConfig(); + final MySqlFeatureFlags mySqlFeatureFlags = new MySqlFeatureFlags(sourceConfig); + if (isCdc(sourceConfig) && isAnyStreamIncrementalSyncMode(catalog)) { + LOGGER.info("Using PK + CDC"); + return MySqlInitialReadUtil.getCdcReadIterators(database, catalog, tableNameToTable, stateManager, emittedAt, getQuoteString()); } else { - LOGGER.info("using CDC: {}", false); - return super.getIncrementalIterators(database, catalog, tableNameToTable, stateManager, - emittedAt); + if (isAnyStreamIncrementalSyncMode(catalog)) { + if (mySqlFeatureFlags.isStandardInitialSyncViaPkEnabled()) { + LOGGER.info("Syncing via Primary Key"); + final MySqlCursorBasedStateManager cursorBasedStateManager = new MySqlCursorBasedStateManager(stateManager.getRawStateMessages(), catalog); + final InitialLoadStreams initialLoadStreams = streamsForInitialPrimaryKeyLoad(cursorBasedStateManager, catalog); + final Map pairToCursorBasedStatus = + getCursorBasedSyncStatusForStreams(database, initialLoadStreams.streamsForInitialLoad(), stateManager, quoteString); + final CursorBasedStreams cursorBasedStreams = + new CursorBasedStreams(MySqlInitialReadUtil.identifyStreamsForCursorBased(catalog, initialLoadStreams.streamsForInitialLoad()), + pairToCursorBasedStatus); + + logStreamSyncStatus(initialLoadStreams.streamsForInitialLoad(), "Primary Key"); + logStreamSyncStatus(cursorBasedStreams.streamsForCursorBased(), "Cursor"); + + final MySqlInitialLoadStreamStateManager mySqlInitialLoadStreamStateManager = + new MySqlInitialLoadStreamStateManager(catalog, initialLoadStreams, + initPairToPrimaryKeyInfoMap(database, initialLoadStreams, tableNameToTable, quoteString)); + final MySqlInitialLoadHandler initialLoadHandler = + new MySqlInitialLoadHandler(sourceConfig, database, new MySqlSourceOperations(), getQuoteString(), mySqlInitialLoadStreamStateManager, + namespacePair -> Jsons.jsonNode(pairToCursorBasedStatus.get(convertNameNamespacePairFromV0(namespacePair))), + getTableSizeInfoForStreams(database, catalog.getStreams(), getQuoteString())); + final List> initialLoadIterator = new ArrayList<>(initialLoadHandler.getIncrementalIterators( + new ConfiguredAirbyteCatalog().withStreams(initialLoadStreams.streamsForInitialLoad()), + tableNameToTable, + emittedAt)); + + // Build Cursor based iterator + final List> cursorBasedIterator = + new ArrayList<>(super.getIncrementalIterators(database, + new ConfiguredAirbyteCatalog().withStreams( + cursorBasedStreams.streamsForCursorBased()), + tableNameToTable, + cursorBasedStateManager, emittedAt)); + + return Stream.of(initialLoadIterator, cursorBasedIterator).flatMap(Collection::stream).collect(Collectors.toList()); + } + } } + + LOGGER.info("using CDC: {}", false); + return super.getIncrementalIterators(database, catalog, tableNameToTable, stateManager, + emittedAt); } @Override diff --git a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/cursor_based/MySqlCursorBasedStateManager.java b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/cursor_based/MySqlCursorBasedStateManager.java new file mode 100644 index 000000000000..4c53b8845229 --- /dev/null +++ b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/cursor_based/MySqlCursorBasedStateManager.java @@ -0,0 +1,81 @@ +package io.airbyte.integrations.source.mysql.cursor_based; + +import com.google.common.collect.Lists; +import io.airbyte.commons.json.Jsons; +import io.airbyte.integrations.source.mysql.internal.models.CursorBasedStatus; +import io.airbyte.integrations.source.mysql.internal.models.InternalModels.StateType; +import io.airbyte.integrations.source.relationaldb.CursorInfo; +import io.airbyte.integrations.source.relationaldb.state.StreamStateManager; +import io.airbyte.protocol.models.v0.AirbyteStateMessage; +import io.airbyte.protocol.models.v0.AirbyteStateMessage.AirbyteStateType; +import io.airbyte.protocol.models.v0.AirbyteStreamNameNamespacePair; +import io.airbyte.protocol.models.v0.AirbyteStreamState; +import io.airbyte.protocol.models.v0.ConfiguredAirbyteCatalog; +import io.airbyte.protocol.models.v0.StreamDescriptor; +import java.util.Collections; +import java.util.List; +import java.util.Map; +import java.util.Optional; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class MySqlCursorBasedStateManager extends StreamStateManager { + + private static final Logger LOGGER = LoggerFactory.getLogger(MySqlCursorBasedStateManager.class); + + public MySqlCursorBasedStateManager(final List airbyteStateMessages, final ConfiguredAirbyteCatalog catalog) { + super(airbyteStateMessages, catalog); + } + + @Override + public AirbyteStateMessage toState(final Optional pair) { + if (pair.isPresent()) { + final Map pairToCursorInfoMap = getPairToCursorInfoMap(); + final Optional cursorInfo = Optional.ofNullable(pairToCursorInfoMap.get(pair.get())); + + if (cursorInfo.isPresent()) { + LOGGER.debug("Generating state message for {}...", pair); + return new AirbyteStateMessage() + .withType(AirbyteStateType.STREAM) + // Temporarily include legacy state for backwards compatibility with the platform + .withStream(generateStreamState(pair.get(), cursorInfo.get())); + } else { + LOGGER.warn("Cursor information could not be located in state for stream {}. Returning a new, empty state message...", pair); + return new AirbyteStateMessage().withType(AirbyteStateType.STREAM).withStream(new AirbyteStreamState()); + } + } else { + LOGGER.warn("Stream not provided. Returning a new, empty state message..."); + return new AirbyteStateMessage().withType(AirbyteStateType.STREAM).withStream(new AirbyteStreamState()); + } + } + + /** + * Generates the stream state for the given stream and cursor information. + * + * @param airbyteStreamNameNamespacePair The stream. + * @param cursorInfo The current cursor. + * @return The {@link AirbyteStreamState} representing the current state of the stream. + */ + private AirbyteStreamState generateStreamState(final AirbyteStreamNameNamespacePair airbyteStreamNameNamespacePair, + final CursorInfo cursorInfo) { + return new AirbyteStreamState() + .withStreamDescriptor( + new StreamDescriptor().withName(airbyteStreamNameNamespacePair.getName()).withNamespace(airbyteStreamNameNamespacePair.getNamespace())) + .withStreamState(Jsons.jsonNode(generateDbStreamState(airbyteStreamNameNamespacePair, cursorInfo))); + } + + private CursorBasedStatus generateDbStreamState(final AirbyteStreamNameNamespacePair airbyteStreamNameNamespacePair, + final CursorInfo cursorInfo) { + final CursorBasedStatus state = new CursorBasedStatus(); + state.setStateType(StateType.CURSOR_BASED); + state.setVersion(2L); + state.setStreamName(airbyteStreamNameNamespacePair.getName()); + state.setStreamNamespace(airbyteStreamNameNamespacePair.getNamespace()); + state.setCursorField(cursorInfo.getCursorField() == null ? Collections.emptyList() : Lists.newArrayList(cursorInfo.getCursorField())); + state.setCursor(cursorInfo.getCursor()); + if (cursorInfo.getCursorRecordCount() > 0L) { + state.setCursorRecordCount(cursorInfo.getCursorRecordCount()); + } + return state; + } +} diff --git a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlFeatureFlags.java b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlFeatureFlags.java index 752406db8c78..f16a4cdf51e7 100644 --- a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlFeatureFlags.java +++ b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlFeatureFlags.java @@ -9,15 +9,15 @@ // Feature flags to gate new primary key load features. public class MySqlFeatureFlags { - public static final String CDC_VIA_PK = "cdc_via_pk"; + public static final String STANDARD_VIA_PK = "standard_via_pk"; private final JsonNode sourceConfig; public MySqlFeatureFlags(final JsonNode sourceConfig) { this.sourceConfig = sourceConfig; } - public boolean isCdcInitialSyncViaPkEnabled() { - return getFlagValue(CDC_VIA_PK); + public boolean isStandardInitialSyncViaPkEnabled() { + return getFlagValue(STANDARD_VIA_PK); } private boolean getFlagValue(final String flag) { diff --git a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialLoadGlobalStateManager.java b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialLoadGlobalStateManager.java index 0b27f40956f5..319f2e90022a 100644 --- a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialLoadGlobalStateManager.java +++ b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialLoadGlobalStateManager.java @@ -21,7 +21,6 @@ import io.airbyte.protocol.models.v0.SyncMode; import java.util.ArrayList; import java.util.Collections; -import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.Map; @@ -40,12 +39,12 @@ public class MySqlInitialLoadGlobalStateManager implements MySqlInitialLoadState // have completed the snapshot. private final Set streamsThatHaveCompletedSnapshot; - MySqlInitialLoadGlobalStateManager(final InitialLoadStreams initialLoadStreams, - final Map pairToPrimaryKeyInfo, - final CdcState cdcState, - final ConfiguredAirbyteCatalog catalog) { + public MySqlInitialLoadGlobalStateManager(final InitialLoadStreams initialLoadStreams, + final Map pairToPrimaryKeyInfo, + final CdcState cdcState, + final ConfiguredAirbyteCatalog catalog) { this.cdcState = cdcState; - this.pairToPrimaryKeyLoadStatus = initPairToPrimaryKeyLoadStatusMap(initialLoadStreams.pairToInitialLoadStatus()); + this.pairToPrimaryKeyLoadStatus = MySqlInitialLoadStateManager.initPairToPrimaryKeyLoadStatusMap(initialLoadStreams.pairToInitialLoadStatus()); this.pairToPrimaryKeyInfo = pairToPrimaryKeyInfo; this.streamsThatHaveCompletedSnapshot = initStreamsCompletedSnapshot(initialLoadStreams, catalog); } @@ -63,16 +62,7 @@ private static Set initStreamsCompletedSnapshot( return streamsThatHaveCompletedSnapshot; } - private static Map initPairToPrimaryKeyLoadStatusMap( - final Map pairToPkStatus) { - final Map map = new HashMap<>(); - pairToPkStatus.forEach((pair, pkStatus) -> { - final AirbyteStreamNameNamespacePair updatedPair = new AirbyteStreamNameNamespacePair(pair.getName(), pair.getNamespace()); - map.put(updatedPair, pkStatus); - }); - return map; - } - + @Override public AirbyteStateMessage createIntermediateStateMessage(final AirbyteStreamNameNamespacePair pair, final PrimaryKeyLoadStatus pkLoadStatus) { final List streamStates = new ArrayList<>(); streamsThatHaveCompletedSnapshot.forEach(stream -> { @@ -95,6 +85,7 @@ public void updatePrimaryKeyLoadState(final AirbyteStreamNameNamespacePair pair, pairToPrimaryKeyLoadStatus.put(pair, pkLoadStatus); } + @Override public AirbyteStateMessage createFinalStateMessage(final AirbyteStreamNameNamespacePair pair, final JsonNode streamStateForIncrementalRun) { streamsThatHaveCompletedSnapshot.add(pair); final List streamStates = new ArrayList<>(); diff --git a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialLoadHandler.java b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialLoadHandler.java index 28541d2bca59..b03d676529cf 100644 --- a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialLoadHandler.java +++ b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialLoadHandler.java @@ -4,14 +4,19 @@ package io.airbyte.integrations.source.mysql.initialsync; +import static io.airbyte.integrations.debezium.DebeziumIteratorConstants.SYNC_CHECKPOINT_DURATION_PROPERTY; +import static io.airbyte.integrations.debezium.DebeziumIteratorConstants.SYNC_CHECKPOINT_RECORDS_PROPERTY; + import com.fasterxml.jackson.databind.JsonNode; import com.google.common.annotations.VisibleForTesting; import com.mysql.cj.MysqlType; import io.airbyte.commons.stream.AirbyteStreamUtils; import io.airbyte.commons.util.AutoCloseableIterator; import io.airbyte.commons.util.AutoCloseableIterators; +import io.airbyte.db.JdbcCompatibleSourceOperations; import io.airbyte.db.jdbc.JdbcDatabase; import io.airbyte.integrations.source.mysql.MySqlQueryUtils.TableSizeInfo; +import io.airbyte.integrations.source.mysql.MySqlSourceOperations; import io.airbyte.integrations.source.mysql.internal.models.PrimaryKeyLoadStatus; import io.airbyte.integrations.source.relationaldb.DbSourceDiscoverUtil; import io.airbyte.integrations.source.relationaldb.TableInfo; @@ -33,6 +38,7 @@ import java.util.concurrent.atomic.AtomicLong; import java.util.function.Function; import java.util.stream.Collectors; +import java.util.stream.Stream; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -43,7 +49,7 @@ public class MySqlInitialLoadHandler { private static final long RECORD_LOGGING_SAMPLE_RATE = 1_000_000; private final JsonNode config; private final JdbcDatabase database; - private final MySqlInitialLoadSourceOperations sourceOperations; + private final JdbcCompatibleSourceOperations sourceOperations; private final String quoteString; private final MySqlInitialLoadStateManager initialLoadStateManager; private final Function streamStateForIncrementalRunSupplier; @@ -54,7 +60,7 @@ public class MySqlInitialLoadHandler { public MySqlInitialLoadHandler(final JsonNode config, final JdbcDatabase database, - final MySqlInitialLoadSourceOperations sourceOperations, + final MySqlSourceOperations sourceOperations, final String quoteString, final MySqlInitialLoadStateManager initialLoadStateManager, final Function streamStateForIncrementalRunSupplier, @@ -77,6 +83,7 @@ public List> getIncrementalIterators( final AirbyteStream stream = airbyteStream.getStream(); final String streamName = stream.getName(); final String namespace = stream.getNamespace(); + final List primaryKeys = stream.getSourceDefinedPrimaryKey().stream().flatMap(pk -> Stream.of(pk.get(0))).toList(); final AirbyteStreamNameNamespacePair pair = new AirbyteStreamNameNamespacePair(streamName, namespace); final String fullyQualifiedTableName = DbSourceDiscoverUtil.getFullyQualifiedTableName(namespace, streamName); if (!tableNameToTable.containsKey(fullyQualifiedTableName)) { @@ -92,6 +99,15 @@ public List> getIncrementalIterators( .map(CommonField::getName) .filter(CatalogHelpers.getTopLevelFieldNames(airbyteStream)::contains) .collect(Collectors.toList()); + + // This is to handle the case if the user de-selects the PK column + // Necessary to query the data via pk but won't be added to the final record + primaryKeys.forEach(pk -> { + if (!selectedDatabaseFields.contains(pk)) { + selectedDatabaseFields.add(0, pk); + } + }); + final AutoCloseableIterator queryStream = new MySqlInitialLoadRecordIterator(database, sourceOperations, quoteString, initialLoadStateManager, selectedDatabaseFields, pair, calculateChunkSize(tableSizeInfoMap.get(pair), pair), isCompositePrimaryKey(airbyteStream)); @@ -164,9 +180,9 @@ private AutoCloseableIterator augmentWithState(final AutoCloseab : currentPkLoadStatus.getIncrementalState(); final Duration syncCheckpointDuration = - config.get("sync_checkpoint_seconds") != null ? Duration.ofSeconds(config.get("sync_checkpoint_seconds").asLong()) + config.get(SYNC_CHECKPOINT_DURATION_PROPERTY) != null ? Duration.ofSeconds(config.get(SYNC_CHECKPOINT_DURATION_PROPERTY).asLong()) : MySqlInitialSyncStateIterator.SYNC_CHECKPOINT_DURATION; - final Long syncCheckpointRecords = config.get("sync_checkpoint_records") != null ? config.get("sync_checkpoint_records").asLong() + final Long syncCheckpointRecords = config.get(SYNC_CHECKPOINT_RECORDS_PROPERTY) != null ? config.get(SYNC_CHECKPOINT_RECORDS_PROPERTY).asLong() : MySqlInitialSyncStateIterator.SYNC_CHECKPOINT_RECORDS; return AutoCloseableIterators.transformIterator( diff --git a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialLoadRecordIterator.java b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialLoadRecordIterator.java index 85069edfcfa5..ca28cceefd68 100644 --- a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialLoadRecordIterator.java +++ b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialLoadRecordIterator.java @@ -12,6 +12,7 @@ import com.mysql.cj.MysqlType; import io.airbyte.commons.util.AutoCloseableIterator; import io.airbyte.commons.util.AutoCloseableIterators; +import io.airbyte.db.JdbcCompatibleSourceOperations; import io.airbyte.db.jdbc.JdbcDatabase; import io.airbyte.integrations.source.mysql.initialsync.MySqlInitialReadUtil.PrimaryKeyInfo; import io.airbyte.integrations.source.mysql.internal.models.PrimaryKeyLoadStatus; @@ -43,7 +44,7 @@ public class MySqlInitialLoadRecordIterator extends AbstractIterator private static final Logger LOGGER = LoggerFactory.getLogger(MySqlInitialLoadRecordIterator.class); - private final MySqlInitialLoadSourceOperations sourceOperations; + private final JdbcCompatibleSourceOperations sourceOperations; private final String quoteString; private final MySqlInitialLoadStateManager initialLoadStateManager; @@ -59,7 +60,7 @@ public class MySqlInitialLoadRecordIterator extends AbstractIterator MySqlInitialLoadRecordIterator( final JdbcDatabase database, - final MySqlInitialLoadSourceOperations sourceOperations, + final JdbcCompatibleSourceOperations sourceOperations, final String quoteString, final MySqlInitialLoadStateManager initialLoadStateManager, final List columnNames, diff --git a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialLoadStateManager.java b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialLoadStateManager.java index f65cc7b270aa..7bb6a7b846ae 100644 --- a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialLoadStateManager.java +++ b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialLoadStateManager.java @@ -9,6 +9,8 @@ import io.airbyte.integrations.source.mysql.internal.models.PrimaryKeyLoadStatus; import io.airbyte.protocol.models.AirbyteStreamNameNamespacePair; import io.airbyte.protocol.models.v0.AirbyteStateMessage; +import java.util.HashMap; +import java.util.Map; public interface MySqlInitialLoadStateManager { @@ -33,4 +35,14 @@ public interface MySqlInitialLoadStateManager { // the column name associated with the stream. PrimaryKeyInfo getPrimaryKeyInfo(final AirbyteStreamNameNamespacePair pair); + static Map initPairToPrimaryKeyLoadStatusMap( + final Map pairToPkStatus) { + final Map map = new HashMap<>(); + pairToPkStatus.forEach((pair, pkStatus) -> { + final AirbyteStreamNameNamespacePair updatedPair = new AirbyteStreamNameNamespacePair(pair.getName(), pair.getNamespace()); + map.put(updatedPair, pkStatus); + }); + return map; + } + } diff --git a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialLoadStreamStateManager.java b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialLoadStreamStateManager.java new file mode 100644 index 000000000000..88859e2ecb84 --- /dev/null +++ b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialLoadStreamStateManager.java @@ -0,0 +1,87 @@ +/* + * Copyright (c) 2023 Airbyte, Inc., all rights reserved. + */ + +package io.airbyte.integrations.source.mysql.initialsync; + +import com.fasterxml.jackson.databind.JsonNode; +import io.airbyte.commons.json.Jsons; +import io.airbyte.integrations.source.mysql.initialsync.MySqlInitialReadUtil.InitialLoadStreams; +import io.airbyte.integrations.source.mysql.initialsync.MySqlInitialReadUtil.PrimaryKeyInfo; +import io.airbyte.integrations.source.mysql.internal.models.PrimaryKeyLoadStatus; +import io.airbyte.protocol.models.v0.AirbyteStateMessage; +import io.airbyte.protocol.models.v0.AirbyteStateMessage.AirbyteStateType; +import io.airbyte.protocol.models.v0.AirbyteStreamState; +import io.airbyte.protocol.models.v0.ConfiguredAirbyteCatalog; +import io.airbyte.protocol.models.v0.StreamDescriptor; +import java.util.Map; +import java.util.Objects; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * This state manager extends the StreamStateManager to enable writing the state_type and version + * keys to the stream state when they're going through the iterator Once we have verified that + * expanding StreamStateManager itself to include this functionality, this class will be removed + */ +public class MySqlInitialLoadStreamStateManager implements MySqlInitialLoadStateManager { + + private final Map pairToPrimaryKeyLoadStatus; + + // Map of pair to the primary key info (field name & data type) associated with it. + private final Map pairToPrimaryKeyInfo; + + private static final Logger LOGGER = LoggerFactory.getLogger(MySqlInitialLoadStreamStateManager.class); + + public MySqlInitialLoadStreamStateManager(final ConfiguredAirbyteCatalog catalog, + final InitialLoadStreams initialLoadStreams, + final Map pairToPrimaryKeyInfo) { + this.pairToPrimaryKeyInfo = pairToPrimaryKeyInfo; + this.pairToPrimaryKeyLoadStatus = MySqlInitialLoadStateManager.initPairToPrimaryKeyLoadStatusMap(initialLoadStreams.pairToInitialLoadStatus()); + } + + @Override + public void updatePrimaryKeyLoadState(final io.airbyte.protocol.models.AirbyteStreamNameNamespacePair pair, + final PrimaryKeyLoadStatus pkLoadStatus) { + pairToPrimaryKeyLoadStatus.put(pair, pkLoadStatus); + } + + @Override + public AirbyteStateMessage createFinalStateMessage(final io.airbyte.protocol.models.AirbyteStreamNameNamespacePair pair, + final JsonNode streamStateForIncrementalRun) { + + return new AirbyteStateMessage() + .withType(AirbyteStateType.STREAM) + .withStream(getAirbyteStreamState(pair, (streamStateForIncrementalRun))); + } + + @Override + public PrimaryKeyInfo getPrimaryKeyInfo(final io.airbyte.protocol.models.AirbyteStreamNameNamespacePair pair) { + return pairToPrimaryKeyInfo.get(pair); + } + + @Override + public PrimaryKeyLoadStatus getPrimaryKeyLoadStatus(final io.airbyte.protocol.models.AirbyteStreamNameNamespacePair pair) { + return pairToPrimaryKeyLoadStatus.get(pair); + } + + @Override + public AirbyteStateMessage createIntermediateStateMessage(final io.airbyte.protocol.models.AirbyteStreamNameNamespacePair pair, + final PrimaryKeyLoadStatus pkLoadStatus) { + return new AirbyteStateMessage() + .withType(AirbyteStateType.STREAM) + .withStream(getAirbyteStreamState(pair, Jsons.jsonNode(pkLoadStatus))); + } + + private AirbyteStreamState getAirbyteStreamState(final io.airbyte.protocol.models.AirbyteStreamNameNamespacePair pair, final JsonNode stateData) { + LOGGER.info("STATE DATA FOR {}: {}", pair.getNamespace().concat("_").concat(pair.getName()), stateData); + assert Objects.nonNull(pair.getName()); + assert Objects.nonNull(pair.getNamespace()); + + return new AirbyteStreamState() + .withStreamDescriptor( + new StreamDescriptor().withName(pair.getName()).withNamespace(pair.getNamespace())) + .withStreamState(stateData); + } + +} diff --git a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialReadUtil.java b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialReadUtil.java index d9675d972adf..347402a23620 100644 --- a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialReadUtil.java +++ b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialReadUtil.java @@ -4,8 +4,9 @@ package io.airbyte.integrations.source.mysql.initialsync; -import static io.airbyte.integrations.debezium.internals.mysql.MySqlDebeziumStateUtil.MYSQL_CDC_OFFSET; +import static io.airbyte.integrations.debezium.internals.mysql.MysqlCdcStateConstants.MYSQL_CDC_OFFSET; import static io.airbyte.integrations.source.mysql.MySqlQueryUtils.getTableSizeInfoForStreams; +import static io.airbyte.integrations.source.mysql.MySqlQueryUtils.prettyPrintConfiguredAirbyteStreamList; import static io.airbyte.integrations.source.mysql.initialsync.MySqlInitialLoadGlobalStateManager.STATE_TYPE_KEY; import static io.airbyte.integrations.source.mysql.initialsync.MySqlInitialLoadStateManager.PRIMARY_KEY_STATE_TYPE; @@ -30,6 +31,7 @@ import io.airbyte.integrations.source.mysql.MySqlCdcStateHandler; import io.airbyte.integrations.source.mysql.MySqlQueryUtils; import io.airbyte.integrations.source.mysql.initialsync.MySqlInitialLoadSourceOperations.CdcMetadataInjector; +import io.airbyte.integrations.source.mysql.internal.models.CursorBasedStatus; import io.airbyte.integrations.source.mysql.internal.models.PrimaryKeyLoadStatus; import io.airbyte.integrations.source.relationaldb.CdcStateManager; import io.airbyte.integrations.source.relationaldb.DbSourceDiscoverUtil; @@ -40,6 +42,7 @@ import io.airbyte.protocol.models.v0.AirbyteMessage; import io.airbyte.protocol.models.v0.AirbyteStateMessage; import io.airbyte.protocol.models.v0.AirbyteStreamNameNamespacePair; +import io.airbyte.protocol.models.v0.AirbyteStreamState; import io.airbyte.protocol.models.v0.ConfiguredAirbyteCatalog; import io.airbyte.protocol.models.v0.ConfiguredAirbyteStream; import io.airbyte.protocol.models.v0.StreamDescriptor; @@ -105,10 +108,10 @@ public static List> getCdcReadIterators(fi savedOffset.isPresent() && mySqlDebeziumStateUtil.savedOffsetStillPresentOnServer(database, savedOffset.get()); if (!savedOffsetStillPresentOnServer) { - LOGGER.warn("Saved offset no longer present on the server, Airbtye is going to trigger a sync from scratch"); + LOGGER.warn("Saved offset no longer present on the server, Airbyte is going to trigger a sync from scratch"); } - final InitialLoadStreams initialLoadStreams = streamsForInitialPrimaryKeyLoad(stateManager.getCdcStateManager(), catalog, + final InitialLoadStreams initialLoadStreams = cdcStreamsForInitialPrimaryKeyLoad(stateManager.getCdcStateManager(), catalog, savedOffsetStillPresentOnServer); final CdcState stateToBeUsed = (!savedOffsetStillPresentOnServer || (stateManager.getCdcStateManager().getCdcState() == null @@ -135,7 +138,7 @@ public static List> getCdcReadIterators(fi quoteString, initialLoadStateManager, namespacePair -> Jsons.emptyObject(), - getTableSizeInfoForStreams(database, catalog.getStreams(), quoteString)); + getTableSizeInfoForStreams(database, initialLoadStreams.streamsForInitialLoad(), quoteString)); initialLoadIterator.addAll(initialLoadHandler.getIncrementalIterators( new ConfiguredAirbyteCatalog().withStreams(initialLoadStreams.streamsForInitialLoad()), @@ -172,12 +175,12 @@ public static List> getCdcReadIterators(fi } /** - * Determines the streams to sync for initial primary key load. These include streams that are (i) - * currently in primary key load (ii) newly added incremental streams. + * CDC specific: Determines the streams to sync for initial primary key load. These include streams + * that are (i) currently in primary key load (ii) newly added incremental streams. */ - public static InitialLoadStreams streamsForInitialPrimaryKeyLoad(final CdcStateManager stateManager, - final ConfiguredAirbyteCatalog fullCatalog, - final boolean savedOffsetStillPresentOnServer) { + public static InitialLoadStreams cdcStreamsForInitialPrimaryKeyLoad(final CdcStateManager stateManager, + final ConfiguredAirbyteCatalog fullCatalog, + final boolean savedOffsetStillPresentOnServer) { if (!savedOffsetStillPresentOnServer) { return new InitialLoadStreams( fullCatalog.getStreams() @@ -224,23 +227,95 @@ public static InitialLoadStreams streamsForInitialPrimaryKeyLoad(final CdcStateM return new InitialLoadStreams(streamsForPkSync, pairToInitialLoadStatus); } - private static List identifyStreamsToSnapshot(final ConfiguredAirbyteCatalog catalog, - final Set alreadySyncedStreams) { + /** + * Determines the streams to sync for initial primary key load. These include streams that are (i) + * currently in primary key load (ii) newly added incremental streams. + */ + public static InitialLoadStreams streamsForInitialPrimaryKeyLoad(final StateManager stateManager, + final ConfiguredAirbyteCatalog fullCatalog) { + + final List rawStateMessages = stateManager.getRawStateMessages(); + final Set streamsStillInPkSync = new HashSet<>(); + final Set alreadySeenStreamPairs = new HashSet<>(); + + // Build a map of stream <-> initial load status for streams that currently have an initial primary + // key load in progress. + final Map pairToInitialLoadStatus = new HashMap<>(); + + if (rawStateMessages != null) { + rawStateMessages.forEach(stateMessage -> { + final AirbyteStreamState stream = stateMessage.getStream(); + final JsonNode streamState = stream.getStreamState(); + final StreamDescriptor streamDescriptor = stateMessage.getStream().getStreamDescriptor(); + if (streamState == null || streamDescriptor == null) { + return; + } + + final AirbyteStreamNameNamespacePair pair = new AirbyteStreamNameNamespacePair(streamDescriptor.getName(), + streamDescriptor.getNamespace()); + + // Build a map of stream <-> initial load status for streams that currently have an initial primary + // key load in progress. + + if (streamState.has(STATE_TYPE_KEY)) { + if (streamState.get(STATE_TYPE_KEY).asText().equalsIgnoreCase(PRIMARY_KEY_STATE_TYPE)) { + final PrimaryKeyLoadStatus primaryKeyLoadStatus = Jsons.object(streamState, PrimaryKeyLoadStatus.class); + pairToInitialLoadStatus.put(pair, primaryKeyLoadStatus); + streamsStillInPkSync.add(pair); + } + } + alreadySeenStreamPairs.add(new AirbyteStreamNameNamespacePair(streamDescriptor.getName(), streamDescriptor.getNamespace())); + }); + } + final List streamsForPkSync = new ArrayList<>(); + fullCatalog.getStreams().stream() + .filter(stream -> streamsStillInPkSync.contains(AirbyteStreamNameNamespacePair.fromAirbyteStream(stream.getStream()))) + .map(Jsons::clone) + .forEach(streamsForPkSync::add); + + final List newlyAddedStreams = identifyStreamsToSnapshot(fullCatalog, + Collections.unmodifiableSet(alreadySeenStreamPairs)); + streamsForPkSync.addAll(newlyAddedStreams); + return new InitialLoadStreams(streamsForPkSync.stream().filter(MySqlInitialReadUtil::streamHasPrimaryKey).collect(Collectors.toList()), + pairToInitialLoadStatus); + } + + private static boolean streamHasPrimaryKey(final ConfiguredAirbyteStream stream) { + return stream.getStream().getSourceDefinedPrimaryKey().size() > 0; + } + + public static List identifyStreamsToSnapshot(final ConfiguredAirbyteCatalog catalog, + final Set alreadySyncedStreams) { final Set allStreams = AirbyteStreamNameNamespacePair.fromConfiguredCatalog(catalog); final Set newlyAddedStreams = new HashSet<>(Sets.difference(allStreams, alreadySyncedStreams)); return catalog.getStreams().stream() .filter(c -> c.getSyncMode() == SyncMode.INCREMENTAL) - .filter(stream -> newlyAddedStreams.contains(AirbyteStreamNameNamespacePair.fromAirbyteStream(stream.getStream()))).map(Jsons::clone) + .filter(stream -> newlyAddedStreams.contains(AirbyteStreamNameNamespacePair.fromAirbyteStream(stream.getStream()))) + .map(Jsons::clone) + .collect(Collectors.toList()); + } + + public static List identifyStreamsForCursorBased(final ConfiguredAirbyteCatalog catalog, + final List streamsForInitialLoad) { + + final Set initialLoadStreamsNamespacePairs = + streamsForInitialLoad.stream().map(stream -> AirbyteStreamNameNamespacePair.fromAirbyteStream(stream.getStream())) + .collect( + Collectors.toSet()); + return catalog.getStreams().stream() + .filter(c -> c.getSyncMode() == SyncMode.INCREMENTAL) + .filter(stream -> !initialLoadStreamsNamespacePairs.contains(AirbyteStreamNameNamespacePair.fromAirbyteStream(stream.getStream()))) + .map(Jsons::clone) .collect(Collectors.toList()); } // Build a map of stream <-> primary key info (primary key field name + datatype) for all streams // currently undergoing initial primary key syncs. - private static Map initPairToPrimaryKeyInfoMap( - final JdbcDatabase database, - final InitialLoadStreams initialLoadStreams, - final Map>> tableNameToTable, - final String quoteString) { + public static Map initPairToPrimaryKeyInfoMap( + final JdbcDatabase database, + final InitialLoadStreams initialLoadStreams, + final Map>> tableNameToTable, + final String quoteString) { final Map pairToPkInfoMap = new HashMap<>(); // For every stream that is in primary initial key sync, we want to maintain information about the // current primary key info associated with the @@ -278,15 +353,20 @@ private static PrimaryKeyInfo getPrimaryKeyInfo(final JdbcDatabase database, return new PrimaryKeyInfo(pkFieldName, pkFieldType, pkMaxValue); } - public static String prettyPrintConfiguredAirbyteStreamList(final List streamList) { - return streamList.stream().map(s -> "%s.%s".formatted(s.getStream().getNamespace(), s.getStream().getName())).collect(Collectors.joining(", ")); - } - public record InitialLoadStreams(List streamsForInitialLoad, Map pairToInitialLoadStatus) { } + public record CursorBasedStreams(List streamsForCursorBased, + Map pairToCursorBasedStatus) { + + } + public record PrimaryKeyInfo(String pkFieldName, MysqlType fieldType, String pkMaxValue) {} + public static AirbyteStreamNameNamespacePair convertNameNamespacePairFromV0(final io.airbyte.protocol.models.AirbyteStreamNameNamespacePair v1NameNamespacePair) { + return new AirbyteStreamNameNamespacePair(v1NameNamespacePair.getName(), v1NameNamespacePair.getNamespace()); + } + } diff --git a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialSyncStateIterator.java b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialSyncStateIterator.java index 25cc9f72329e..aa4d462bdc60 100644 --- a/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialSyncStateIterator.java +++ b/airbyte-integrations/connectors/source-mysql/src/main/java/io/airbyte/integrations/source/mysql/initialsync/MySqlInitialSyncStateIterator.java @@ -8,6 +8,7 @@ import autovalue.shaded.com.google.common.collect.AbstractIterator; import com.fasterxml.jackson.databind.JsonNode; +import io.airbyte.integrations.debezium.DebeziumIteratorConstants; import io.airbyte.integrations.source.mysql.internal.models.InternalModels.StateType; import io.airbyte.integrations.source.mysql.internal.models.PrimaryKeyLoadStatus; import io.airbyte.protocol.models.AirbyteStreamNameNamespacePair; @@ -26,8 +27,8 @@ public class MySqlInitialSyncStateIterator extends AbstractIterator implements Iterator { private static final Logger LOGGER = LoggerFactory.getLogger(MySqlInitialSyncStateIterator.class); - public static final Duration SYNC_CHECKPOINT_DURATION = Duration.ofMinutes(15); - public static final Integer SYNC_CHECKPOINT_RECORDS = 100_000; + public static final Duration SYNC_CHECKPOINT_DURATION = DebeziumIteratorConstants.SYNC_CHECKPOINT_DURATION; + public static final Integer SYNC_CHECKPOINT_RECORDS = DebeziumIteratorConstants.SYNC_CHECKPOINT_RECORDS; private final Iterator messageIterator; private final AirbyteStreamNameNamespacePair pair; diff --git a/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/AbstractMySqlSslCertificateSourceAcceptanceTest.java b/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/AbstractMySqlSslCertificateSourceAcceptanceTest.java index 202512c0f291..29c0dde43508 100644 --- a/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/AbstractMySqlSslCertificateSourceAcceptanceTest.java +++ b/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/AbstractMySqlSslCertificateSourceAcceptanceTest.java @@ -13,6 +13,7 @@ import io.airbyte.db.factory.DatabaseDriver; import io.airbyte.db.jdbc.JdbcUtils; import io.airbyte.integrations.standardtest.source.TestDestinationEnv; +import io.airbyte.integrations.util.HostPortResolver; import java.io.IOException; import org.jooq.DSLContext; import org.jooq.SQLDialect; @@ -36,8 +37,8 @@ protected void setupEnvironment(final TestDestinationEnv environment) throws Exc .put("method", "STANDARD") .build()); config = Jsons.jsonNode(ImmutableMap.builder() - .put(JdbcUtils.HOST_KEY, container.getHost()) - .put(JdbcUtils.PORT_KEY, container.getFirstMappedPort()) + .put(JdbcUtils.HOST_KEY, HostPortResolver.resolveHost(container)) + .put(JdbcUtils.PORT_KEY, HostPortResolver.resolvePort(container)) .put(JdbcUtils.DATABASE_KEY, container.getDatabaseName()) .put(JdbcUtils.USERNAME_KEY, container.getUsername()) .put(JdbcUtils.PASSWORD_KEY, container.getPassword()) diff --git a/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/CDCMySqlDatatypeAccuracyTest.java b/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/CDCMySqlDatatypeAccuracyTest.java index 5d79b122a472..7794dec67366 100644 --- a/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/CDCMySqlDatatypeAccuracyTest.java +++ b/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/CDCMySqlDatatypeAccuracyTest.java @@ -14,6 +14,7 @@ import io.airbyte.db.factory.DatabaseDriver; import io.airbyte.db.jdbc.JdbcUtils; import io.airbyte.integrations.standardtest.source.TestDestinationEnv; +import io.airbyte.integrations.util.HostPortResolver; import org.jooq.DSLContext; import org.jooq.SQLDialect; import org.testcontainers.containers.MySQLContainer; @@ -37,8 +38,8 @@ protected Database setupDatabase() throws Exception { .put("initial_waiting_seconds", INITIAL_CDC_WAITING_SECONDS) .build()); config = Jsons.jsonNode(ImmutableMap.builder() - .put(JdbcUtils.HOST_KEY, container.getHost()) - .put(JdbcUtils.PORT_KEY, container.getFirstMappedPort()) + .put(JdbcUtils.HOST_KEY, HostPortResolver.resolveHost(container)) + .put(JdbcUtils.PORT_KEY, HostPortResolver.resolvePort(container)) .put(JdbcUtils.DATABASE_KEY, container.getDatabaseName()) .put(JdbcUtils.USERNAME_KEY, container.getUsername()) .put(JdbcUtils.PASSWORD_KEY, container.getPassword()) @@ -52,8 +53,8 @@ protected Database setupDatabase() throws Exception { config.get(JdbcUtils.PASSWORD_KEY).asText(), DatabaseDriver.MYSQL.getDriverClassName(), String.format(DatabaseDriver.MYSQL.getUrlFormatString(), - config.get(JdbcUtils.HOST_KEY).asText(), - config.get(JdbcUtils.PORT_KEY).asInt(), + container.getHost(), + container.getFirstMappedPort(), config.get(JdbcUtils.DATABASE_KEY).asText()), SQLDialect.MYSQL); final Database database = new Database(dslContext); diff --git a/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/CdcBinlogsMySqlSourceDatatypeTest.java b/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/CdcBinlogsMySqlSourceDatatypeTest.java index 8ef81c8d27b6..dc828f9d7dda 100644 --- a/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/CdcBinlogsMySqlSourceDatatypeTest.java +++ b/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/CdcBinlogsMySqlSourceDatatypeTest.java @@ -8,6 +8,8 @@ import com.fasterxml.jackson.databind.JsonNode; import com.google.common.collect.ImmutableMap; +import com.google.common.collect.Iterables; +import io.airbyte.commons.features.EnvVariableFeatureFlags; import io.airbyte.commons.json.Jsons; import io.airbyte.db.Database; import io.airbyte.db.factory.DSLContextFactory; @@ -15,6 +17,7 @@ import io.airbyte.db.jdbc.JdbcUtils; import io.airbyte.integrations.standardtest.source.TestDataHolder; import io.airbyte.integrations.standardtest.source.TestDestinationEnv; +import io.airbyte.integrations.util.HostPortResolver; import io.airbyte.protocol.models.JsonSchemaType; import io.airbyte.protocol.models.v0.AirbyteMessage; import io.airbyte.protocol.models.v0.AirbyteStateMessage; @@ -23,10 +26,18 @@ import java.util.List; import org.jooq.DSLContext; import org.jooq.SQLDialect; +import org.junit.jupiter.api.extension.ExtendWith; import org.testcontainers.containers.MySQLContainer; +import uk.org.webcompere.systemstubs.environment.EnvironmentVariables; +import uk.org.webcompere.systemstubs.jupiter.SystemStub; +import uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension; +@ExtendWith(SystemStubsExtension.class) public class CdcBinlogsMySqlSourceDatatypeTest extends AbstractMySqlSourceDatatypeTest { + @SystemStub + private EnvironmentVariables environmentVariables; + private DSLContext dslContext; private JsonNode stateAfterFirstSync; @@ -60,14 +71,8 @@ protected void postSetup() throws Exception { catalog.getStreams().add(dummyTableWithData); final List allMessages = super.runRead(catalog); - if (allMessages.size() != 2) { - throw new RuntimeException("First sync should only generate 2 records"); - } final List stateAfterFirstBatch = extractStateMessages(allMessages); - if (stateAfterFirstBatch == null || stateAfterFirstBatch.isEmpty()) { - throw new RuntimeException("stateAfterFirstBatch should not be null or empty"); - } - stateAfterFirstSync = Jsons.jsonNode(stateAfterFirstBatch); + stateAfterFirstSync = Jsons.jsonNode(List.of(Iterables.getLast(stateAfterFirstBatch))); if (stateAfterFirstSync == null) { throw new RuntimeException("stateAfterFirstSync should not be null"); } @@ -83,13 +88,14 @@ protected void postSetup() throws Exception { protected Database setupDatabase() throws Exception { container = new MySQLContainer<>("mysql:8.0"); container.start(); + environmentVariables.set(EnvVariableFeatureFlags.USE_STREAM_CAPABLE_STATE, "true"); final JsonNode replicationMethod = Jsons.jsonNode(ImmutableMap.builder() .put("method", "CDC") .put("initial_waiting_seconds", INITIAL_CDC_WAITING_SECONDS) .build()); config = Jsons.jsonNode(ImmutableMap.builder() - .put(JdbcUtils.HOST_KEY, container.getHost()) - .put(JdbcUtils.PORT_KEY, container.getFirstMappedPort()) + .put(JdbcUtils.HOST_KEY, HostPortResolver.resolveHost(container)) + .put(JdbcUtils.PORT_KEY, HostPortResolver.resolvePort(container)) .put(JdbcUtils.DATABASE_KEY, container.getDatabaseName()) .put(JdbcUtils.USERNAME_KEY, container.getUsername()) .put(JdbcUtils.PASSWORD_KEY, container.getPassword()) @@ -102,8 +108,8 @@ protected Database setupDatabase() throws Exception { config.get(JdbcUtils.PASSWORD_KEY).asText(), DatabaseDriver.MYSQL.getDriverClassName(), String.format(DatabaseDriver.MYSQL.getUrlFormatString(), - config.get(JdbcUtils.HOST_KEY).asText(), - config.get(JdbcUtils.PORT_KEY).asInt(), + container.getHost(), + container.getFirstMappedPort(), config.get(JdbcUtils.DATABASE_KEY).asText()), SQLDialect.MYSQL); final Database database = new Database(dslContext); diff --git a/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/CdcInitialSnapshotMySqlSourceDatatypeTest.java b/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/CdcInitialSnapshotMySqlSourceDatatypeTest.java index 7f996a4ebed6..66fec4981d79 100644 --- a/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/CdcInitialSnapshotMySqlSourceDatatypeTest.java +++ b/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/CdcInitialSnapshotMySqlSourceDatatypeTest.java @@ -8,18 +8,28 @@ import com.fasterxml.jackson.databind.JsonNode; import com.google.common.collect.ImmutableMap; +import io.airbyte.commons.features.EnvVariableFeatureFlags; import io.airbyte.commons.json.Jsons; import io.airbyte.db.Database; import io.airbyte.db.factory.DSLContextFactory; import io.airbyte.db.factory.DatabaseDriver; import io.airbyte.db.jdbc.JdbcUtils; import io.airbyte.integrations.standardtest.source.TestDestinationEnv; +import io.airbyte.integrations.util.HostPortResolver; import org.jooq.DSLContext; import org.jooq.SQLDialect; +import org.junit.jupiter.api.extension.ExtendWith; import org.testcontainers.containers.MySQLContainer; +import uk.org.webcompere.systemstubs.environment.EnvironmentVariables; +import uk.org.webcompere.systemstubs.jupiter.SystemStub; +import uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension; +@ExtendWith(SystemStubsExtension.class) public class CdcInitialSnapshotMySqlSourceDatatypeTest extends AbstractMySqlSourceDatatypeTest { + @SystemStub + private EnvironmentVariables environmentVariables; + private DSLContext dslContext; @Override @@ -32,13 +42,14 @@ protected void tearDown(final TestDestinationEnv testEnv) { protected Database setupDatabase() throws Exception { container = new MySQLContainer<>("mysql:8.0"); container.start(); + environmentVariables.set(EnvVariableFeatureFlags.USE_STREAM_CAPABLE_STATE, "true"); final JsonNode replicationMethod = Jsons.jsonNode(ImmutableMap.builder() .put("method", "CDC") .put("initial_waiting_seconds", INITIAL_CDC_WAITING_SECONDS) .build()); config = Jsons.jsonNode(ImmutableMap.builder() - .put(JdbcUtils.HOST_KEY, container.getHost()) - .put(JdbcUtils.PORT_KEY, container.getFirstMappedPort()) + .put(JdbcUtils.HOST_KEY, HostPortResolver.resolveHost(container)) + .put(JdbcUtils.PORT_KEY, HostPortResolver.resolvePort(container)) .put(JdbcUtils.DATABASE_KEY, container.getDatabaseName()) .put(JdbcUtils.USERNAME_KEY, container.getUsername()) .put(JdbcUtils.PASSWORD_KEY, container.getPassword()) @@ -52,8 +63,8 @@ protected Database setupDatabase() throws Exception { config.get(JdbcUtils.PASSWORD_KEY).asText(), DatabaseDriver.MYSQL.getDriverClassName(), String.format(DatabaseDriver.MYSQL.getUrlFormatString(), - config.get(JdbcUtils.HOST_KEY).asText(), - config.get(JdbcUtils.PORT_KEY).asInt(), + container.getHost(), + container.getFirstMappedPort(), config.get(JdbcUtils.DATABASE_KEY).asText()), SQLDialect.MYSQL); final Database database = new Database(dslContext); diff --git a/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/CdcMySqlSourceAcceptanceTest.java b/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/CdcMySqlSourceAcceptanceTest.java index f27506104060..a2428ad84edd 100644 --- a/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/CdcMySqlSourceAcceptanceTest.java +++ b/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/CdcMySqlSourceAcceptanceTest.java @@ -23,6 +23,7 @@ import io.airbyte.integrations.base.ssh.SshHelpers; import io.airbyte.integrations.standardtest.source.SourceAcceptanceTest; import io.airbyte.integrations.standardtest.source.TestDestinationEnv; +import io.airbyte.integrations.util.HostPortResolver; import io.airbyte.protocol.models.Field; import io.airbyte.protocol.models.JsonSchemaType; import io.airbyte.protocol.models.v0.AirbyteMessage; @@ -49,12 +50,12 @@ public class CdcMySqlSourceAcceptanceTest extends SourceAcceptanceTest { @SystemStub - private EnvironmentVariables environmentVariables; + protected EnvironmentVariables environmentVariables; - private static final String STREAM_NAME = "id_and_name"; - private static final String STREAM_NAME2 = "starships"; - private MySQLContainer container; - private JsonNode config; + protected static final String STREAM_NAME = "id_and_name"; + protected static final String STREAM_NAME2 = "starships"; + protected MySQLContainer container; + protected JsonNode config; @Override protected String getImageName() { @@ -100,41 +101,13 @@ protected ConfiguredAirbyteCatalog getConfiguredCatalog() { Lists.newArrayList(SyncMode.FULL_REFRESH, INCREMENTAL))))); } - protected ConfiguredAirbyteCatalog getConfiguredCatalogWithPartialColumns() { - return new ConfiguredAirbyteCatalog().withStreams(Lists.newArrayList( - new ConfiguredAirbyteStream() - .withSyncMode(INCREMENTAL) - .withDestinationSyncMode(DestinationSyncMode.APPEND) - .withStream(CatalogHelpers.createAirbyteStream( - String.format("%s", STREAM_NAME), - String.format("%s", config.get(JdbcUtils.DATABASE_KEY).asText()), - Field.of("id", JsonSchemaType.NUMBER) - /* no name field */) - .withSourceDefinedCursor(true) - .withSourceDefinedPrimaryKey(List.of(List.of("id"))) - .withSupportedSyncModes( - Lists.newArrayList(SyncMode.FULL_REFRESH, INCREMENTAL))), - new ConfiguredAirbyteStream() - .withSyncMode(INCREMENTAL) - .withDestinationSyncMode(DestinationSyncMode.APPEND) - .withStream(CatalogHelpers.createAirbyteStream( - String.format("%s", STREAM_NAME2), - String.format("%s", config.get(JdbcUtils.DATABASE_KEY).asText()), - /* no id field */ - Field.of("name", JsonSchemaType.STRING)) - .withSourceDefinedCursor(true) - .withSourceDefinedPrimaryKey(List.of(List.of("id"))) - .withSupportedSyncModes( - Lists.newArrayList(SyncMode.FULL_REFRESH, INCREMENTAL))))); - } - @Override protected JsonNode getState() { return null; } @Override - protected void setupEnvironment(final TestDestinationEnv environment) { + protected void setupEnvironment(final TestDestinationEnv environment) throws Exception { container = new MySQLContainer<>("mysql:8.0"); container.start(); final JsonNode replicationMethod = Jsons.jsonNode(ImmutableMap.builder() @@ -143,8 +116,8 @@ protected void setupEnvironment(final TestDestinationEnv environment) { .build()); environmentVariables.set(EnvVariableFeatureFlags.USE_STREAM_CAPABLE_STATE, "true"); config = Jsons.jsonNode(ImmutableMap.builder() - .put(JdbcUtils.HOST_KEY, container.getHost()) - .put(JdbcUtils.PORT_KEY, container.getFirstMappedPort()) + .put(JdbcUtils.HOST_KEY, HostPortResolver.resolveHost(container)) + .put(JdbcUtils.PORT_KEY, HostPortResolver.resolvePort(container)) .put(JdbcUtils.DATABASE_KEY, container.getDatabaseName()) .put(JdbcUtils.USERNAME_KEY, container.getUsername()) .put(JdbcUtils.PASSWORD_KEY, container.getPassword()) @@ -157,7 +130,7 @@ protected void setupEnvironment(final TestDestinationEnv environment) { createAndPopulateTables(); } - private void createAndPopulateTables() { + protected void createAndPopulateTables() { executeQuery("CREATE TABLE id_and_name(id INTEGER PRIMARY KEY, name VARCHAR(200));"); executeQuery( "INSERT INTO id_and_name (id, name) VALUES (1,'picard'), (2, 'crusher'), (3, 'vash');"); @@ -166,17 +139,17 @@ private void createAndPopulateTables() { "INSERT INTO starships (id, name) VALUES (1,'enterprise-d'), (2, 'defiant'), (3, 'yamato');"); } - private void revokeAllPermissions() { + protected void revokeAllPermissions() { executeQuery("REVOKE ALL PRIVILEGES, GRANT OPTION FROM " + container.getUsername() + "@'%';"); } - private void grantCorrectPermissions() { + protected void grantCorrectPermissions() { executeQuery( "GRANT SELECT, RELOAD, SHOW DATABASES, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO " + container.getUsername() + "@'%';"); } - private void executeQuery(final String query) { + protected void executeQuery(final String query) { try (final DSLContext dslContext = DSLContextFactory.create( "root", "test", @@ -227,11 +200,6 @@ public void testIncrementalSyncShouldNotFailIfBinlogIsDeleted() throws Exception assertEquals(6, filterRecords(runRead(configuredCatalog, latestState)).size()); } - @Override - protected boolean supportsPerStream() { - return true; - } - @Test public void testIncrementalReadSelectedColumns() throws Exception { final ConfiguredAirbyteCatalog catalog = getConfiguredCatalogWithPartialColumns(); @@ -240,7 +208,36 @@ public void testIncrementalReadSelectedColumns() throws Exception { final List records = filterRecords(allMessages); assertFalse(records.isEmpty(), "Expected a incremental sync to produce records"); verifyFieldNotExist(records, STREAM_NAME, "name"); - verifyFieldNotExist(records, STREAM_NAME2, "id"); + verifyFieldNotExist(records, STREAM_NAME2, "name"); + } + + private ConfiguredAirbyteCatalog getConfiguredCatalogWithPartialColumns() { + // We cannot strip the primary key field as that is required for a successful CDC sync + return new ConfiguredAirbyteCatalog().withStreams(Lists.newArrayList( + new ConfiguredAirbyteStream() + .withSyncMode(INCREMENTAL) + .withDestinationSyncMode(DestinationSyncMode.APPEND) + .withStream(CatalogHelpers.createAirbyteStream( + String.format("%s", STREAM_NAME), + String.format("%s", config.get(JdbcUtils.DATABASE_KEY).asText()), + Field.of("id", JsonSchemaType.NUMBER) + /* no name field */) + .withSourceDefinedCursor(true) + .withSourceDefinedPrimaryKey(List.of(List.of("id"))) + .withSupportedSyncModes( + Lists.newArrayList(SyncMode.FULL_REFRESH, INCREMENTAL))), + new ConfiguredAirbyteStream() + .withSyncMode(INCREMENTAL) + .withDestinationSyncMode(DestinationSyncMode.APPEND) + .withStream(CatalogHelpers.createAirbyteStream( + String.format("%s", STREAM_NAME2), + String.format("%s", config.get(JdbcUtils.DATABASE_KEY).asText()), + /* no name field */ + Field.of("id", JsonSchemaType.NUMBER)) + .withSourceDefinedCursor(true) + .withSourceDefinedPrimaryKey(List.of(List.of("id"))) + .withSupportedSyncModes( + Lists.newArrayList(SyncMode.FULL_REFRESH, INCREMENTAL))))); } private void verifyFieldNotExist(final List records, final String stream, final String field) { diff --git a/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/CdcMySqlSslCaCertificateSourceAcceptanceTest.java b/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/CdcMySqlSslCaCertificateSourceAcceptanceTest.java index 125fd259b740..81e251fce590 100644 --- a/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/CdcMySqlSslCaCertificateSourceAcceptanceTest.java +++ b/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/CdcMySqlSslCaCertificateSourceAcceptanceTest.java @@ -5,102 +5,26 @@ package io.airbyte.integrations.io.airbyte.integration_tests.sources; import static io.airbyte.integrations.io.airbyte.integration_tests.sources.utils.TestConstants.INITIAL_CDC_WAITING_SECONDS; -import static io.airbyte.protocol.models.v0.SyncMode.INCREMENTAL; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; import com.fasterxml.jackson.databind.JsonNode; import com.google.common.collect.ImmutableMap; -import com.google.common.collect.Iterables; -import com.google.common.collect.Lists; +import io.airbyte.commons.features.EnvVariableFeatureFlags; import io.airbyte.commons.json.Jsons; -import io.airbyte.db.Database; import io.airbyte.db.MySqlUtils; -import io.airbyte.db.factory.DSLContextFactory; -import io.airbyte.db.factory.DatabaseDriver; import io.airbyte.db.jdbc.JdbcUtils; -import io.airbyte.integrations.base.ssh.SshHelpers; -import io.airbyte.integrations.standardtest.source.SourceAcceptanceTest; import io.airbyte.integrations.standardtest.source.TestDestinationEnv; -import io.airbyte.protocol.models.Field; -import io.airbyte.protocol.models.JsonSchemaType; -import io.airbyte.protocol.models.v0.AirbyteMessage; -import io.airbyte.protocol.models.v0.AirbyteRecordMessage; -import io.airbyte.protocol.models.v0.AirbyteStateMessage; -import io.airbyte.protocol.models.v0.CatalogHelpers; -import io.airbyte.protocol.models.v0.ConfiguredAirbyteCatalog; -import io.airbyte.protocol.models.v0.ConfiguredAirbyteStream; -import io.airbyte.protocol.models.v0.ConnectorSpecification; -import io.airbyte.protocol.models.v0.DestinationSyncMode; -import io.airbyte.protocol.models.v0.SyncMode; -import java.util.List; -import java.util.stream.Collectors; -import org.jooq.DSLContext; -import org.jooq.SQLDialect; -import org.junit.jupiter.api.Test; +import io.airbyte.integrations.util.HostPortResolver; import org.testcontainers.containers.MySQLContainer; -public class CdcMySqlSslCaCertificateSourceAcceptanceTest extends SourceAcceptanceTest { +public class CdcMySqlSslCaCertificateSourceAcceptanceTest extends CdcMySqlSourceAcceptanceTest { - private static final String STREAM_NAME = "id_and_name"; - private static final String STREAM_NAME2 = "starships"; - private MySQLContainer container; - private JsonNode config; private static MySqlUtils.Certificate certs; - @Override - protected String getImageName() { - return "airbyte/source-mysql:dev"; - } - - @Override - protected ConnectorSpecification getSpec() throws Exception { - return SshHelpers.getSpecAndInjectSsh(); - } - - @Override - protected JsonNode getConfig() { - return config; - } - - @Override - protected ConfiguredAirbyteCatalog getConfiguredCatalog() { - return new ConfiguredAirbyteCatalog().withStreams(Lists.newArrayList( - new ConfiguredAirbyteStream() - .withSyncMode(INCREMENTAL) - .withDestinationSyncMode(DestinationSyncMode.APPEND) - .withStream(CatalogHelpers.createAirbyteStream( - String.format("%s", STREAM_NAME), - String.format("%s", config.get(JdbcUtils.DATABASE_KEY).asText()), - Field.of("id", JsonSchemaType.NUMBER), - Field.of("name", JsonSchemaType.STRING)) - .withSourceDefinedCursor(true) - .withSourceDefinedPrimaryKey(List.of(List.of("id"))) - .withSupportedSyncModes( - Lists.newArrayList(SyncMode.FULL_REFRESH, INCREMENTAL))), - new ConfiguredAirbyteStream() - .withSyncMode(INCREMENTAL) - .withDestinationSyncMode(DestinationSyncMode.APPEND) - .withStream(CatalogHelpers.createAirbyteStream( - String.format("%s", STREAM_NAME2), - String.format("%s", config.get(JdbcUtils.DATABASE_KEY).asText()), - Field.of("id", JsonSchemaType.NUMBER), - Field.of("name", JsonSchemaType.STRING)) - .withSourceDefinedCursor(true) - .withSourceDefinedPrimaryKey(List.of(List.of("id"))) - .withSupportedSyncModes( - Lists.newArrayList(SyncMode.FULL_REFRESH, INCREMENTAL))))); - } - - @Override - protected JsonNode getState() { - return null; - } - @Override protected void setupEnvironment(final TestDestinationEnv environment) throws Exception { container = new MySQLContainer<>("mysql:8.0"); container.start(); + environmentVariables.set(EnvVariableFeatureFlags.USE_STREAM_CAPABLE_STATE, "true"); certs = MySqlUtils.getCertificate(container, true); final var sslMode = ImmutableMap.builder() @@ -116,8 +40,8 @@ protected void setupEnvironment(final TestDestinationEnv environment) throws Exc .build()); config = Jsons.jsonNode(ImmutableMap.builder() - .put(JdbcUtils.HOST_KEY, container.getHost()) - .put(JdbcUtils.PORT_KEY, container.getFirstMappedPort()) + .put(JdbcUtils.HOST_KEY, HostPortResolver.resolveHost(container)) + .put(JdbcUtils.PORT_KEY, HostPortResolver.resolvePort(container)) .put(JdbcUtils.DATABASE_KEY, container.getDatabaseName()) .put(JdbcUtils.USERNAME_KEY, container.getUsername()) .put(JdbcUtils.PASSWORD_KEY, container.getPassword()) @@ -131,80 +55,4 @@ protected void setupEnvironment(final TestDestinationEnv environment) throws Exc grantCorrectPermissions(); createAndPopulateTables(); } - - private void createAndPopulateTables() { - executeQuery("CREATE TABLE id_and_name(id INTEGER PRIMARY KEY, name VARCHAR(200));"); - executeQuery( - "INSERT INTO id_and_name (id, name) VALUES (1,'picard'), (2, 'crusher'), (3, 'vash');"); - executeQuery("CREATE TABLE starships(id INTEGER PRIMARY KEY, name VARCHAR(200));"); - executeQuery( - "INSERT INTO starships (id, name) VALUES (1,'enterprise-d'), (2, 'defiant'), (3, 'yamato');"); - } - - private void revokeAllPermissions() { - executeQuery("REVOKE ALL PRIVILEGES, GRANT OPTION FROM " + container.getUsername() + "@'%';"); - } - - private void grantCorrectPermissions() { - executeQuery( - "GRANT SELECT, RELOAD, SHOW DATABASES, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO " - + container.getUsername() + "@'%';"); - } - - private void executeQuery(final String query) { - try (final DSLContext dslContext = DSLContextFactory.create( - "root", - "test", - DatabaseDriver.MYSQL.getDriverClassName(), - String.format(DatabaseDriver.MYSQL.getUrlFormatString(), - container.getHost(), - container.getFirstMappedPort(), - container.getDatabaseName()), - SQLDialect.MYSQL)) { - final Database database = new Database(dslContext); - database.query( - ctx -> ctx - .execute(query)); - } catch (final Exception e) { - throw new RuntimeException(e); - } - } - - @Override - protected void tearDown(final TestDestinationEnv testEnv) { - container.close(); - } - - @Test - public void testIncrementalSyncShouldNotFailIfBinlogIsDeleted() throws Exception { - final ConfiguredAirbyteCatalog configuredCatalog = withSourceDefinedCursors(getConfiguredCatalog()); - // only sync incremental streams - configuredCatalog.setStreams( - configuredCatalog.getStreams().stream().filter(s -> s.getSyncMode() == INCREMENTAL).collect(Collectors.toList())); - - final List airbyteMessages = runRead(configuredCatalog, getState()); - final List recordMessages = filterRecords(airbyteMessages); - final List stateMessages = airbyteMessages - .stream() - .filter(m -> m.getType() == AirbyteMessage.Type.STATE) - .map(AirbyteMessage::getState) - .collect(Collectors.toList()); - assertFalse(recordMessages.isEmpty(), "Expected the first incremental sync to produce records"); - assertFalse(stateMessages.isEmpty(), "Expected incremental sync to produce STATE messages"); - - // when we run incremental sync again there should be no new records. Run a sync with the latest - // state message and assert no records were emitted. - final JsonNode latestState = Jsons.jsonNode(supportsPerStream() ? stateMessages : List.of(Iterables.getLast(stateMessages))); - // RESET MASTER removes all binary log files that are listed in the index file, - // leaving only a single, empty binary log file with a numeric suffix of .000001 - executeQuery("RESET MASTER;"); - - assertEquals(6, filterRecords(runRead(configuredCatalog, latestState)).size()); - } - - @Override - protected boolean supportsPerStream() { - return true; - } - } diff --git a/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/CdcMySqlSslRequiredSourceAcceptanceTest.java b/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/CdcMySqlSslRequiredSourceAcceptanceTest.java index 8f0137856b2f..011769bc6279 100644 --- a/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/CdcMySqlSslRequiredSourceAcceptanceTest.java +++ b/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/CdcMySqlSslRequiredSourceAcceptanceTest.java @@ -5,100 +5,23 @@ package io.airbyte.integrations.io.airbyte.integration_tests.sources; import static io.airbyte.integrations.io.airbyte.integration_tests.sources.utils.TestConstants.INITIAL_CDC_WAITING_SECONDS; -import static io.airbyte.protocol.models.v0.SyncMode.INCREMENTAL; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; import com.fasterxml.jackson.databind.JsonNode; import com.google.common.collect.ImmutableMap; -import com.google.common.collect.Iterables; -import com.google.common.collect.Lists; +import io.airbyte.commons.features.EnvVariableFeatureFlags; import io.airbyte.commons.json.Jsons; -import io.airbyte.db.Database; -import io.airbyte.db.factory.DSLContextFactory; -import io.airbyte.db.factory.DatabaseDriver; import io.airbyte.db.jdbc.JdbcUtils; -import io.airbyte.integrations.base.ssh.SshHelpers; -import io.airbyte.integrations.standardtest.source.SourceAcceptanceTest; import io.airbyte.integrations.standardtest.source.TestDestinationEnv; -import io.airbyte.protocol.models.Field; -import io.airbyte.protocol.models.JsonSchemaType; -import io.airbyte.protocol.models.v0.AirbyteMessage; -import io.airbyte.protocol.models.v0.AirbyteRecordMessage; -import io.airbyte.protocol.models.v0.AirbyteStateMessage; -import io.airbyte.protocol.models.v0.CatalogHelpers; -import io.airbyte.protocol.models.v0.ConfiguredAirbyteCatalog; -import io.airbyte.protocol.models.v0.ConfiguredAirbyteStream; -import io.airbyte.protocol.models.v0.ConnectorSpecification; -import io.airbyte.protocol.models.v0.DestinationSyncMode; -import io.airbyte.protocol.models.v0.SyncMode; -import java.util.List; -import java.util.stream.Collectors; -import org.jooq.DSLContext; -import org.jooq.SQLDialect; -import org.junit.jupiter.api.Test; +import io.airbyte.integrations.util.HostPortResolver; import org.testcontainers.containers.MySQLContainer; -public class CdcMySqlSslRequiredSourceAcceptanceTest extends SourceAcceptanceTest { - - private static final String STREAM_NAME = "id_and_name"; - private static final String STREAM_NAME2 = "starships"; - private MySQLContainer container; - private JsonNode config; - - @Override - protected String getImageName() { - return "airbyte/source-mysql:dev"; - } - - @Override - protected ConnectorSpecification getSpec() throws Exception { - return SshHelpers.getSpecAndInjectSsh(); - } - - @Override - protected JsonNode getConfig() { - return config; - } +public class CdcMySqlSslRequiredSourceAcceptanceTest extends CdcMySqlSourceAcceptanceTest { @Override - protected ConfiguredAirbyteCatalog getConfiguredCatalog() { - return new ConfiguredAirbyteCatalog().withStreams(Lists.newArrayList( - new ConfiguredAirbyteStream() - .withSyncMode(INCREMENTAL) - .withDestinationSyncMode(DestinationSyncMode.APPEND) - .withStream(CatalogHelpers.createAirbyteStream( - String.format("%s", STREAM_NAME), - String.format("%s", config.get(JdbcUtils.DATABASE_KEY).asText()), - Field.of("id", JsonSchemaType.NUMBER), - Field.of("name", JsonSchemaType.STRING)) - .withSourceDefinedCursor(true) - .withSourceDefinedPrimaryKey(List.of(List.of("id"))) - .withSupportedSyncModes( - Lists.newArrayList(SyncMode.FULL_REFRESH, INCREMENTAL))), - new ConfiguredAirbyteStream() - .withSyncMode(INCREMENTAL) - .withDestinationSyncMode(DestinationSyncMode.APPEND) - .withStream(CatalogHelpers.createAirbyteStream( - String.format("%s", STREAM_NAME2), - String.format("%s", config.get(JdbcUtils.DATABASE_KEY).asText()), - Field.of("id", JsonSchemaType.NUMBER), - Field.of("name", JsonSchemaType.STRING)) - .withSourceDefinedCursor(true) - .withSourceDefinedPrimaryKey(List.of(List.of("id"))) - .withSupportedSyncModes( - Lists.newArrayList(SyncMode.FULL_REFRESH, INCREMENTAL))))); - } - - @Override - protected JsonNode getState() { - return null; - } - - @Override - protected void setupEnvironment(final TestDestinationEnv environment) throws Exception { + protected void setupEnvironment(final TestDestinationEnv environment) { container = new MySQLContainer<>("mysql:8.0"); container.start(); + environmentVariables.set(EnvVariableFeatureFlags.USE_STREAM_CAPABLE_STATE, "true"); final var sslMode = ImmutableMap.builder() .put(JdbcUtils.MODE_KEY, "required") @@ -109,8 +32,8 @@ protected void setupEnvironment(final TestDestinationEnv environment) throws Exc .build()); config = Jsons.jsonNode(ImmutableMap.builder() - .put(JdbcUtils.HOST_KEY, container.getHost()) - .put(JdbcUtils.PORT_KEY, container.getFirstMappedPort()) + .put(JdbcUtils.HOST_KEY, HostPortResolver.resolveHost(container)) + .put(JdbcUtils.PORT_KEY, HostPortResolver.resolvePort(container)) .put(JdbcUtils.DATABASE_KEY, container.getDatabaseName()) .put(JdbcUtils.USERNAME_KEY, container.getUsername()) .put(JdbcUtils.PASSWORD_KEY, container.getPassword()) @@ -129,80 +52,4 @@ protected void setupEnvironment(final TestDestinationEnv environment) throws Exc private void alterUserRequireSsl() { executeQuery("ALTER USER " + container.getUsername() + " REQUIRE SSL;"); } - - private void createAndPopulateTables() { - executeQuery("CREATE TABLE id_and_name(id INTEGER PRIMARY KEY, name VARCHAR(200));"); - executeQuery( - "INSERT INTO id_and_name (id, name) VALUES (1,'picard'), (2, 'crusher'), (3, 'vash');"); - executeQuery("CREATE TABLE starships(id INTEGER PRIMARY KEY, name VARCHAR(200));"); - executeQuery( - "INSERT INTO starships (id, name) VALUES (1,'enterprise-d'), (2, 'defiant'), (3, 'yamato');"); - } - - private void revokeAllPermissions() { - executeQuery("REVOKE ALL PRIVILEGES, GRANT OPTION FROM " + container.getUsername() + "@'%';"); - } - - private void grantCorrectPermissions() { - executeQuery( - "GRANT SELECT, RELOAD, SHOW DATABASES, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO " - + container.getUsername() + "@'%';"); - } - - private void executeQuery(final String query) { - try (final DSLContext dslContext = DSLContextFactory.create( - "root", - "test", - DatabaseDriver.MYSQL.getDriverClassName(), - String.format(DatabaseDriver.MYSQL.getUrlFormatString(), - container.getHost(), - container.getFirstMappedPort(), - container.getDatabaseName()), - SQLDialect.MYSQL)) { - final Database database = new Database(dslContext); - database.query( - ctx -> ctx - .execute(query)); - } catch (final Exception e) { - throw new RuntimeException(e); - } - } - - @Override - protected void tearDown(final TestDestinationEnv testEnv) { - container.close(); - } - - @Test - public void testIncrementalSyncShouldNotFailIfBinlogIsDeleted() throws Exception { - final ConfiguredAirbyteCatalog configuredCatalog = withSourceDefinedCursors(getConfiguredCatalog()); - // only sync incremental streams - configuredCatalog.setStreams( - configuredCatalog.getStreams().stream().filter(s -> s.getSyncMode() == INCREMENTAL).collect(Collectors.toList())); - - final List airbyteMessages = runRead(configuredCatalog, getState()); - final List recordMessages = filterRecords(airbyteMessages); - final List stateMessages = airbyteMessages - .stream() - .filter(m -> m.getType() == AirbyteMessage.Type.STATE) - .map(AirbyteMessage::getState) - .collect(Collectors.toList()); - assertFalse(recordMessages.isEmpty(), "Expected the first incremental sync to produce records"); - assertFalse(stateMessages.isEmpty(), "Expected incremental sync to produce STATE messages"); - - // when we run incremental sync again there should be no new records. Run a sync with the latest - // state message and assert no records were emitted. - final JsonNode latestState = Jsons.jsonNode(supportsPerStream() ? stateMessages : List.of(Iterables.getLast(stateMessages))); - // RESET MASTER removes all binary log files that are listed in the index file, - // leaving only a single, empty binary log file with a numeric suffix of .000001 - executeQuery("RESET MASTER;"); - - assertEquals(6, filterRecords(runRead(configuredCatalog, latestState)).size()); - } - - @Override - protected boolean supportsPerStream() { - return true; - } - } diff --git a/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/MySqlDatatypeAccuracyTest.java b/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/MySqlDatatypeAccuracyTest.java index 9397bbab9bcd..e3656398a3c6 100644 --- a/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/MySqlDatatypeAccuracyTest.java +++ b/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/MySqlDatatypeAccuracyTest.java @@ -14,6 +14,7 @@ import io.airbyte.db.jdbc.JdbcUtils; import io.airbyte.integrations.standardtest.source.TestDataHolder; import io.airbyte.integrations.standardtest.source.TestDestinationEnv; +import io.airbyte.integrations.util.HostPortResolver; import io.airbyte.protocol.models.JsonSchemaType; import java.util.Arrays; import java.util.List; @@ -44,8 +45,8 @@ protected Database setupDatabase() throws Exception { .put("method", "STANDARD") .build()); config = Jsons.jsonNode(ImmutableMap.builder() - .put(JdbcUtils.HOST_KEY, container.getHost()) - .put(JdbcUtils.PORT_KEY, container.getFirstMappedPort()) + .put(JdbcUtils.HOST_KEY, HostPortResolver.resolveHost(container)) + .put(JdbcUtils.PORT_KEY, HostPortResolver.resolvePort(container)) .put(JdbcUtils.DATABASE_KEY, container.getDatabaseName()) .put(JdbcUtils.USERNAME_KEY, container.getUsername()) .put(JdbcUtils.PASSWORD_KEY, container.getPassword()) @@ -58,8 +59,8 @@ protected Database setupDatabase() throws Exception { config.get(JdbcUtils.PASSWORD_KEY).asText(), DatabaseDriver.MYSQL.getDriverClassName(), String.format(DatabaseDriver.MYSQL.getUrlFormatString(), - config.get(JdbcUtils.HOST_KEY).asText(), - config.get(JdbcUtils.PORT_KEY).asInt(), + container.getHost(), + container.getFirstMappedPort(), config.get(JdbcUtils.DATABASE_KEY).asText()), SQLDialect.MYSQL, Map.of("zeroDateTimeBehavior", "convertToNull"))); diff --git a/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/MySqlSourceAcceptanceTest.java b/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/MySqlSourceAcceptanceTest.java index 780e77ad1426..87e38c2e3f6d 100644 --- a/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/MySqlSourceAcceptanceTest.java +++ b/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/MySqlSourceAcceptanceTest.java @@ -16,6 +16,7 @@ import io.airbyte.integrations.base.ssh.SshHelpers; import io.airbyte.integrations.standardtest.source.SourceAcceptanceTest; import io.airbyte.integrations.standardtest.source.TestDestinationEnv; +import io.airbyte.integrations.util.HostPortResolver; import io.airbyte.protocol.models.Field; import io.airbyte.protocol.models.JsonSchemaType; import io.airbyte.protocol.models.v0.CatalogHelpers; @@ -54,8 +55,8 @@ protected void setupEnvironment(final TestDestinationEnv environment) throws Exc .build()); environmentVariables.set(EnvVariableFeatureFlags.USE_STREAM_CAPABLE_STATE, "true"); config = Jsons.jsonNode(ImmutableMap.builder() - .put(JdbcUtils.HOST_KEY, container.getHost()) - .put(JdbcUtils.PORT_KEY, container.getFirstMappedPort()) + .put(JdbcUtils.HOST_KEY, HostPortResolver.resolveHost(container)) + .put(JdbcUtils.PORT_KEY, HostPortResolver.resolvePort(container)) .put(JdbcUtils.DATABASE_KEY, container.getDatabaseName()) .put(JdbcUtils.USERNAME_KEY, container.getUsername()) .put(JdbcUtils.PASSWORD_KEY, container.getPassword()) @@ -67,8 +68,8 @@ protected void setupEnvironment(final TestDestinationEnv environment) throws Exc config.get(JdbcUtils.PASSWORD_KEY).asText(), DatabaseDriver.MYSQL.getDriverClassName(), String.format(DatabaseDriver.MYSQL.getUrlFormatString(), - config.get(JdbcUtils.HOST_KEY).asText(), - config.get(JdbcUtils.PORT_KEY).asInt(), + container.getHost(), + container.getFirstMappedPort(), config.get(JdbcUtils.DATABASE_KEY).asText()), SQLDialect.MYSQL)) { final Database database = new Database(dslContext); diff --git a/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/MySqlSourceDatatypeTest.java b/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/MySqlSourceDatatypeTest.java index a522fc268a42..5c4e9f020ea7 100644 --- a/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/MySqlSourceDatatypeTest.java +++ b/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/MySqlSourceDatatypeTest.java @@ -12,6 +12,7 @@ import io.airbyte.db.factory.DatabaseDriver; import io.airbyte.db.jdbc.JdbcUtils; import io.airbyte.integrations.standardtest.source.TestDestinationEnv; +import io.airbyte.integrations.util.HostPortResolver; import java.util.Map; import org.jooq.SQLDialect; import org.testcontainers.containers.MySQLContainer; @@ -31,8 +32,8 @@ protected Database setupDatabase() throws Exception { .put("method", "STANDARD") .build()); config = Jsons.jsonNode(ImmutableMap.builder() - .put(JdbcUtils.HOST_KEY, container.getHost()) - .put(JdbcUtils.PORT_KEY, container.getFirstMappedPort()) + .put(JdbcUtils.HOST_KEY, HostPortResolver.resolveHost(container)) + .put(JdbcUtils.PORT_KEY, HostPortResolver.resolvePort(container)) .put(JdbcUtils.DATABASE_KEY, container.getDatabaseName()) .put(JdbcUtils.USERNAME_KEY, container.getUsername()) .put(JdbcUtils.PASSWORD_KEY, container.getPassword()) @@ -45,8 +46,8 @@ protected Database setupDatabase() throws Exception { config.get(JdbcUtils.PASSWORD_KEY).asText(), DatabaseDriver.MYSQL.getDriverClassName(), String.format(DatabaseDriver.MYSQL.getUrlFormatString(), - config.get(JdbcUtils.HOST_KEY).asText(), - config.get(JdbcUtils.PORT_KEY).asInt(), + container.getHost(), + container.getFirstMappedPort(), config.get(JdbcUtils.DATABASE_KEY).asText()), SQLDialect.MYSQL, Map.of("zeroDateTimeBehavior", "convertToNull"))); diff --git a/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/MySqlSslSourceAcceptanceTest.java b/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/MySqlSslSourceAcceptanceTest.java index 17d568981583..5022145fbf8a 100644 --- a/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/MySqlSslSourceAcceptanceTest.java +++ b/airbyte-integrations/connectors/source-mysql/src/test-integration/java/io/airbyte/integrations/io/airbyte/integration_tests/sources/MySqlSslSourceAcceptanceTest.java @@ -12,6 +12,7 @@ import io.airbyte.db.factory.DatabaseDriver; import io.airbyte.db.jdbc.JdbcUtils; import io.airbyte.integrations.standardtest.source.TestDestinationEnv; +import io.airbyte.integrations.util.HostPortResolver; import org.jooq.DSLContext; import org.jooq.SQLDialect; import org.testcontainers.containers.MySQLContainer; @@ -31,8 +32,8 @@ protected void setupEnvironment(final TestDestinationEnv environment) throws Exc .build(); config = Jsons.jsonNode(ImmutableMap.builder() - .put(JdbcUtils.HOST_KEY, container.getHost()) - .put(JdbcUtils.PORT_KEY, container.getFirstMappedPort()) + .put(JdbcUtils.HOST_KEY, HostPortResolver.resolveHost(container)) + .put(JdbcUtils.PORT_KEY, HostPortResolver.resolvePort(container)) .put(JdbcUtils.DATABASE_KEY, container.getDatabaseName()) .put(JdbcUtils.USERNAME_KEY, container.getUsername()) .put(JdbcUtils.PASSWORD_KEY, container.getPassword()) @@ -46,8 +47,8 @@ protected void setupEnvironment(final TestDestinationEnv environment) throws Exc config.get(JdbcUtils.PASSWORD_KEY).asText(), DatabaseDriver.MYSQL.getDriverClassName(), String.format("jdbc:mysql://%s:%s/%s", - config.get(JdbcUtils.HOST_KEY).asText(), - config.get(JdbcUtils.PORT_KEY).asText(), + container.getHost(), + container.getFirstMappedPort(), config.get(JdbcUtils.DATABASE_KEY).asText()), SQLDialect.MYSQL)) { final Database database = new Database(dslContext); diff --git a/airbyte-integrations/connectors/source-mysql/src/test/java/io/airbyte/integrations/source/mysql/CdcMysqlSourceTest.java b/airbyte-integrations/connectors/source-mysql/src/test/java/io/airbyte/integrations/source/mysql/CdcMysqlSourceTest.java index 869aa507db16..21554cffa3f5 100644 --- a/airbyte-integrations/connectors/source-mysql/src/test/java/io/airbyte/integrations/source/mysql/CdcMysqlSourceTest.java +++ b/airbyte-integrations/connectors/source-mysql/src/test/java/io/airbyte/integrations/source/mysql/CdcMysqlSourceTest.java @@ -4,16 +4,21 @@ package io.airbyte.integrations.source.mysql; +import static io.airbyte.integrations.debezium.DebeziumIteratorConstants.SYNC_CHECKPOINT_RECORDS_PROPERTY; import static io.airbyte.integrations.debezium.internals.DebeziumEventUtils.CDC_DELETED_AT; import static io.airbyte.integrations.debezium.internals.DebeziumEventUtils.CDC_UPDATED_AT; -import static io.airbyte.integrations.debezium.internals.mysql.MySqlDebeziumStateUtil.MYSQL_CDC_OFFSET; -import static io.airbyte.integrations.debezium.internals.mysql.MySqlDebeziumStateUtil.MYSQL_DB_HISTORY; +import static io.airbyte.integrations.debezium.internals.mysql.MysqlCdcStateConstants.IS_COMPRESSED; +import static io.airbyte.integrations.debezium.internals.mysql.MysqlCdcStateConstants.MYSQL_CDC_OFFSET; +import static io.airbyte.integrations.debezium.internals.mysql.MysqlCdcStateConstants.MYSQL_DB_HISTORY; import static io.airbyte.integrations.source.mysql.MySqlSource.CDC_DEFAULT_CURSOR; import static io.airbyte.integrations.source.mysql.MySqlSource.CDC_LOG_FILE; import static io.airbyte.integrations.source.mysql.MySqlSource.CDC_LOG_POS; import static io.airbyte.integrations.source.mysql.MySqlSource.DRIVER_CLASS; +import static io.airbyte.integrations.source.mysql.initialsync.MySqlInitialLoadStateManager.PRIMARY_KEY_STATE_TYPE; +import static io.airbyte.integrations.source.mysql.initialsync.MySqlInitialLoadStateManager.STATE_TYPE_KEY; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertNotEquals; import static org.junit.jupiter.api.Assertions.assertNotNull; import static org.junit.jupiter.api.Assertions.assertNull; import static org.junit.jupiter.api.Assertions.assertTrue; @@ -22,6 +27,9 @@ import com.fasterxml.jackson.databind.node.ObjectNode; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; +import com.google.common.collect.Iterables; +import com.google.common.collect.Lists; +import com.google.common.collect.Streams; import io.airbyte.commons.features.EnvVariableFeatureFlags; import io.airbyte.commons.json.Jsons; import io.airbyte.commons.util.AutoCloseableIterator; @@ -33,23 +41,44 @@ import io.airbyte.db.jdbc.JdbcDatabase; import io.airbyte.integrations.base.Source; import io.airbyte.integrations.debezium.CdcSourceTest; +import io.airbyte.integrations.debezium.internals.AirbyteSchemaHistoryStorage; import io.airbyte.integrations.debezium.internals.mysql.MySqlCdcTargetPosition; +import io.airbyte.protocol.models.Field; +import io.airbyte.protocol.models.JsonSchemaType; import io.airbyte.protocol.models.v0.AirbyteConnectionStatus; import io.airbyte.protocol.models.v0.AirbyteConnectionStatus.Status; +import io.airbyte.protocol.models.v0.AirbyteGlobalState; import io.airbyte.protocol.models.v0.AirbyteMessage; import io.airbyte.protocol.models.v0.AirbyteRecordMessage; import io.airbyte.protocol.models.v0.AirbyteStateMessage; +import io.airbyte.protocol.models.v0.AirbyteStateMessage.AirbyteStateType; import io.airbyte.protocol.models.v0.AirbyteStream; +import io.airbyte.protocol.models.v0.AirbyteStreamState; +import io.airbyte.protocol.models.v0.CatalogHelpers; +import io.airbyte.protocol.models.v0.ConfiguredAirbyteCatalog; +import io.airbyte.protocol.models.v0.ConfiguredAirbyteStream; +import io.airbyte.protocol.models.v0.StreamDescriptor; import io.airbyte.protocol.models.v0.SyncMode; import java.sql.SQLException; import java.util.Collections; +import java.util.HashSet; import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; +import java.util.Random; +import java.util.Properties; import java.util.Set; +import java.util.stream.Collectors; import javax.sql.DataSource; import org.jooq.SQLDialect; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Tag; +import org.junit.jupiter.api.Tags; import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.TestInfo; +import org.junit.jupiter.api.Timeout; import org.junit.jupiter.api.extension.ExtendWith; import org.testcontainers.containers.MySQLContainer; import uk.org.webcompere.systemstubs.environment.EnvironmentVariables; @@ -59,6 +88,9 @@ @ExtendWith(SystemStubsExtension.class) public class CdcMysqlSourceTest extends CdcSourceTest { + private static final String START_DB_CONTAINER_WITH_INVALID_TIMEZONE = "START-DB-CONTAINER-WITH-INVALID-TIMEZONE"; + private static final String INVALID_TIMEZONE_CEST = "CEST"; + @SystemStub private EnvironmentVariables environmentVariables; @@ -67,18 +99,22 @@ public class CdcMysqlSourceTest extends CdcSourceTest { private Database database; private MySqlSource source; private JsonNode config; + private static final Random RANDOM = new Random(); @BeforeEach - public void setup() throws SQLException { + public void setup(final TestInfo testInfo) throws SQLException { environmentVariables.set(EnvVariableFeatureFlags.USE_STREAM_CAPABLE_STATE, "true"); - init(); + init(testInfo); revokeAllPermissions(); grantCorrectPermissions(); super.setup(); } - private void init() { + private void init(final TestInfo testInfo) { container = new MySQLContainer<>("mysql:8.0"); + if (testInfo.getTags().contains(START_DB_CONTAINER_WITH_INVALID_TIMEZONE)) { + container.withEnv(Map.of("TZ", INVALID_TIMEZONE_CEST)); + } container.start(); source = new MySqlSource(); database = new Database(DSLContextFactory.create( @@ -93,7 +129,7 @@ private void init() { final JsonNode replicationMethod = Jsons.jsonNode(ImmutableMap.builder() .put("method", "CDC") .put("initial_waiting_seconds", INITIAL_WAITING_SECONDS) - .put("time_zone", "America/Los_Angeles") + .put("server_time_zone", "America/Los_Angeles") .build()); config = Jsons.jsonNode(ImmutableMap.builder() @@ -103,7 +139,7 @@ private void init() { .put("username", container.getUsername()) .put("password", container.getPassword()) .put("replication_method", replicationMethod) - .put("sync_checkpoint_records", 1) + .put(SYNC_CHECKPOINT_RECORDS_PROPERTY, 1) .put("is_test", true) .build()); } @@ -143,9 +179,7 @@ protected MySqlCdcTargetPosition cdcLatestTargetPosition() { container.getHost(), container.getFirstMappedPort()), Collections.emptyMap()); - final JdbcDatabase jdbcDatabase = new DefaultJdbcDatabase(dataSource); - - return MySqlCdcTargetPosition.targetPosition(jdbcDatabase); + return MySqlCdcTargetPosition.targetPosition(new DefaultJdbcDatabase(dataSource)); } @Override @@ -221,16 +255,6 @@ protected Database getDatabase() { return database; } - @Override - protected void assertExpectedStateMessages(final List stateMessages) { - assertEquals(1, stateMessages.size()); - assertNotNull(stateMessages.get(0).getData()); - for (final AirbyteStateMessage stateMessage : stateMessages) { - assertNotNull(stateMessage.getData().get("cdc_state").get("state").get(MYSQL_CDC_OFFSET)); - assertNotNull(stateMessage.getData().get("cdc_state").get("state").get(MYSQL_DB_HISTORY)); - } - } - @Override protected String randomTableSchema() { return MODELS_SCHEMA; @@ -345,8 +369,420 @@ protected void verifyCheckpointStatesByRecords() throws Exception { assertEquals(stateMessagesCDC.size(), stateMessagesCDC.stream().distinct().count(), "There are duplicated states."); } - protected void assertStateForSyncShouldHandlePurgedLogsGracefully(final List stateMessages, final int syncNumber) { + @Override + protected void assertExpectedStateMessages(final List stateMessages) { + assertEquals(7, stateMessages.size()); + assertStateTypes(stateMessages, 4); + } + + @Override + protected void assertExpectedStateMessagesFromIncrementalSync(final List stateMessages) { + assertEquals(1, stateMessages.size()); + assertNotNull(stateMessages.get(0).getData()); + for (final AirbyteStateMessage stateMessage : stateMessages) { + assertNotNull(stateMessage.getData().get("cdc_state").get("state").get(MYSQL_CDC_OFFSET)); + assertNotNull(stateMessage.getData().get("cdc_state").get("state").get(MYSQL_DB_HISTORY)); + } + } + + private void assertStateForSyncShouldHandlePurgedLogsGracefully(final List stateMessages, final int syncNumber) { + if (syncNumber == 1) { + assertExpectedStateMessagesForRecordsProducedDuringAndAfterSync(stateMessages); + } else if (syncNumber == 2) { + // Sync number 2 uses the state from sync number 1 but before we trigger the sync 2 we purge the + // binary logs and as a result the validation of + // logs present on the server fails, and we trigger a sync from scratch + assertEquals(47, stateMessages.size()); + assertStateTypes(stateMessages, 44); + } else { + throw new RuntimeException("Unknown sync number"); + } + + } + + @Override + protected void assertExpectedStateMessagesForRecordsProducedDuringAndAfterSync(final List stateAfterFirstBatch) { + assertEquals(27, stateAfterFirstBatch.size()); + assertStateTypes(stateAfterFirstBatch, 24); + } + + @Override + protected void assertExpectedStateMessagesForNoData(final List stateMessages) { + assertEquals(2, stateMessages.size()); + } + + private void assertStateTypes(final List stateMessages, final int indexTillWhichExpectPkState) { + JsonNode sharedState = null; + for (int i = 0; i < stateMessages.size(); i++) { + final AirbyteStateMessage stateMessage = stateMessages.get(i); + assertEquals(AirbyteStateType.GLOBAL, stateMessage.getType()); + final AirbyteGlobalState global = stateMessage.getGlobal(); + assertNotNull(global.getSharedState()); + if (Objects.isNull(sharedState)) { + sharedState = global.getSharedState(); + } else { + assertEquals(sharedState, global.getSharedState()); + } + assertEquals(1, global.getStreamStates().size()); + final AirbyteStreamState streamState = global.getStreamStates().get(0); + if (i <= indexTillWhichExpectPkState) { + assertTrue(streamState.getStreamState().has(STATE_TYPE_KEY)); + assertEquals(PRIMARY_KEY_STATE_TYPE, streamState.getStreamState().get(STATE_TYPE_KEY).asText()); + } else { + assertFalse(streamState.getStreamState().has(STATE_TYPE_KEY)); + } + } + } + + @Override + protected void assertStateMessagesForNewTableSnapshotTest(final List stateMessages, + final AirbyteStateMessage stateMessageEmittedAfterFirstSyncCompletion) { + assertEquals(7, stateMessages.size()); + for (int i = 0; i <= 4; i++) { + final AirbyteStateMessage stateMessage = stateMessages.get(i); + assertEquals(AirbyteStateMessage.AirbyteStateType.GLOBAL, stateMessage.getType()); + assertEquals(stateMessageEmittedAfterFirstSyncCompletion.getGlobal().getSharedState(), + stateMessage.getGlobal().getSharedState()); + final Set streamsInSnapshotState = stateMessage.getGlobal().getStreamStates() + .stream() + .map(AirbyteStreamState::getStreamDescriptor) + .collect(Collectors.toSet()); + assertEquals(2, streamsInSnapshotState.size()); + assertTrue( + streamsInSnapshotState.contains(new StreamDescriptor().withName(MODELS_STREAM_NAME + "_random").withNamespace(randomTableSchema()))); + assertTrue(streamsInSnapshotState.contains(new StreamDescriptor().withName(MODELS_STREAM_NAME).withNamespace(MODELS_SCHEMA))); + + stateMessage.getGlobal().getStreamStates().forEach(s -> { + final JsonNode streamState = s.getStreamState(); + if (s.getStreamDescriptor().equals(new StreamDescriptor().withName(MODELS_STREAM_NAME + "_random").withNamespace(randomTableSchema()))) { + assertEquals(PRIMARY_KEY_STATE_TYPE, streamState.get(STATE_TYPE_KEY).asText()); + } else if (s.getStreamDescriptor().equals(new StreamDescriptor().withName(MODELS_STREAM_NAME).withNamespace(MODELS_SCHEMA))) { + assertFalse(streamState.has(STATE_TYPE_KEY)); + } else { + throw new RuntimeException("Unknown stream"); + } + }); + } + + final AirbyteStateMessage secondLastSateMessage = stateMessages.get(5); + assertEquals(AirbyteStateMessage.AirbyteStateType.GLOBAL, secondLastSateMessage.getType()); + assertEquals(stateMessageEmittedAfterFirstSyncCompletion.getGlobal().getSharedState(), + secondLastSateMessage.getGlobal().getSharedState()); + final Set streamsInSnapshotState = secondLastSateMessage.getGlobal().getStreamStates() + .stream() + .map(AirbyteStreamState::getStreamDescriptor) + .collect(Collectors.toSet()); + assertEquals(2, streamsInSnapshotState.size()); + assertTrue( + streamsInSnapshotState.contains(new StreamDescriptor().withName(MODELS_STREAM_NAME + "_random").withNamespace(randomTableSchema()))); + assertTrue(streamsInSnapshotState.contains(new StreamDescriptor().withName(MODELS_STREAM_NAME).withNamespace(MODELS_SCHEMA))); + secondLastSateMessage.getGlobal().getStreamStates().forEach(s -> { + final JsonNode streamState = s.getStreamState(); + assertFalse(streamState.has(STATE_TYPE_KEY)); + }); + + final AirbyteStateMessage stateMessageEmittedAfterSecondSyncCompletion = stateMessages.get(6); + assertEquals(AirbyteStateMessage.AirbyteStateType.GLOBAL, stateMessageEmittedAfterSecondSyncCompletion.getType()); + assertNotEquals(stateMessageEmittedAfterFirstSyncCompletion.getGlobal().getSharedState(), + stateMessageEmittedAfterSecondSyncCompletion.getGlobal().getSharedState()); + final Set streamsInSyncCompletionState = stateMessageEmittedAfterSecondSyncCompletion.getGlobal().getStreamStates() + .stream() + .map(AirbyteStreamState::getStreamDescriptor) + .collect(Collectors.toSet()); + assertEquals(2, streamsInSnapshotState.size()); + assertTrue( + streamsInSyncCompletionState.contains( + new StreamDescriptor().withName(MODELS_STREAM_NAME + "_random").withNamespace(randomTableSchema()))); + assertTrue(streamsInSyncCompletionState.contains(new StreamDescriptor().withName(MODELS_STREAM_NAME).withNamespace(MODELS_SCHEMA))); + assertNotNull(stateMessageEmittedAfterSecondSyncCompletion.getData()); + } + + @Test + @Timeout(value = 60) + @Tags(value = {@Tag(START_DB_CONTAINER_WITH_INVALID_TIMEZONE)}) + public void syncWouldWorkWithDBWithInvalidTimezone() throws Exception { + final String systemTimeZone = "@@system_time_zone"; + final JdbcDatabase jdbcDatabase = ((MySqlSource) getSource()).createDatabase(getConfig()); + final Properties properties = MySqlCdcProperties.getDebeziumProperties(jdbcDatabase); + final String databaseTimezone = jdbcDatabase.unsafeQuery(String.format("SELECT %s;", systemTimeZone)).toList().get(0).get(systemTimeZone) + .asText(); + final String debeziumEngineTimezone = properties.getProperty("database.connectionTimeZone"); + + assertEquals(INVALID_TIMEZONE_CEST, databaseTimezone); + assertEquals("America/Los_Angeles", debeziumEngineTimezone); + + final AutoCloseableIterator read = getSource() + .read(getConfig(), CONFIGURED_CATALOG, null); + + final List actualRecords = AutoCloseableIterators.toListAndClose(read); + + final Set recordMessages = extractRecordMessages(actualRecords); + final List stateMessages = extractStateMessages(actualRecords); + + assertExpectedRecords(new HashSet<>(MODEL_RECORDS), recordMessages); assertExpectedStateMessages(stateMessages); } + @Test + public void testCompositeIndexInitialLoad() throws Exception { + // Simulate adding a composite index by modifying the catalog. + final ConfiguredAirbyteCatalog configuredCatalog = Jsons.clone(CONFIGURED_CATALOG); + final List> primaryKeys = configuredCatalog.getStreams().get(0).getStream().getSourceDefinedPrimaryKey(); + primaryKeys.add(List.of("make_id")); + + final AutoCloseableIterator read1 = getSource() + .read(getConfig(), configuredCatalog, null); + + final List actualRecords1 = AutoCloseableIterators.toListAndClose(read1); + + final Set recordMessages1 = extractRecordMessages(actualRecords1); + final List stateMessages1 = extractStateMessages(actualRecords1); + assertExpectedRecords(new HashSet<>(MODEL_RECORDS), recordMessages1); + assertExpectedStateMessages(stateMessages1); + + // Re-run the sync with state associated with record w/ id = 15 (second to last record). + // We expect to read 2 records, since in the case of a composite PK we issue a >= query. + // We also expect 3 state records. One associated with the pk state, one to signify end of initial + // load, and + // the last one indicating the cdc position we have synced until. + final JsonNode state = Jsons.jsonNode(Collections.singletonList(stateMessages1.get(4))); + final AutoCloseableIterator read2 = getSource() + .read(getConfig(), configuredCatalog, state); + + final List actualRecords2 = AutoCloseableIterators.toListAndClose(read2); + final Set recordMessages2 = extractRecordMessages(actualRecords2); + final List stateMessages2 = extractStateMessages(actualRecords2); + + assertExpectedRecords(new HashSet<>(MODEL_RECORDS.subList(4, 6)), recordMessages2); + assertEquals(3, stateMessages2.size()); + assertStateTypes(stateMessages2, 0); + } + + @Test + public void testTwoStreamSync() throws Exception { + // Add another stream models_2 and read that one as well. + final ConfiguredAirbyteCatalog configuredCatalog = Jsons.clone(CONFIGURED_CATALOG); + + final List MODEL_RECORDS_2 = ImmutableList.of( + Jsons.jsonNode(ImmutableMap.of(COL_ID, 110, COL_MAKE_ID, 1, COL_MODEL, "Fiesta-2")), + Jsons.jsonNode(ImmutableMap.of(COL_ID, 120, COL_MAKE_ID, 1, COL_MODEL, "Focus-2")), + Jsons.jsonNode(ImmutableMap.of(COL_ID, 130, COL_MAKE_ID, 1, COL_MODEL, "Ranger-2")), + Jsons.jsonNode(ImmutableMap.of(COL_ID, 140, COL_MAKE_ID, 2, COL_MODEL, "GLA-2")), + Jsons.jsonNode(ImmutableMap.of(COL_ID, 150, COL_MAKE_ID, 2, COL_MODEL, "A 220-2")), + Jsons.jsonNode(ImmutableMap.of(COL_ID, 160, COL_MAKE_ID, 2, COL_MODEL, "E 350-2"))); + + createTable(MODELS_SCHEMA, MODELS_STREAM_NAME + "_2", + columnClause(ImmutableMap.of(COL_ID, "INTEGER", COL_MAKE_ID, "INTEGER", COL_MODEL, "VARCHAR(200)"), Optional.of(COL_ID))); + + for (final JsonNode recordJson : MODEL_RECORDS_2) { + writeRecords(recordJson, MODELS_SCHEMA, MODELS_STREAM_NAME + "_2", COL_ID, + COL_MAKE_ID, COL_MODEL); + } + + final ConfiguredAirbyteStream airbyteStream = new ConfiguredAirbyteStream() + .withStream(CatalogHelpers.createAirbyteStream( + MODELS_STREAM_NAME + "_2", + MODELS_SCHEMA, + Field.of(COL_ID, JsonSchemaType.INTEGER), + Field.of(COL_MAKE_ID, JsonSchemaType.INTEGER), + Field.of(COL_MODEL, JsonSchemaType.STRING)) + .withSupportedSyncModes( + Lists.newArrayList(SyncMode.FULL_REFRESH, SyncMode.INCREMENTAL)) + .withSourceDefinedPrimaryKey(List.of(List.of(COL_ID)))); + airbyteStream.setSyncMode(SyncMode.INCREMENTAL); + + final List streams = configuredCatalog.getStreams(); + streams.add(airbyteStream); + configuredCatalog.withStreams(streams); + + final AutoCloseableIterator read1 = getSource() + .read(getConfig(), configuredCatalog, null); + final List actualRecords1 = AutoCloseableIterators.toListAndClose(read1); + + final Set recordMessages1 = extractRecordMessages(actualRecords1); + final List stateMessages1 = extractStateMessages(actualRecords1); + assertEquals(13, stateMessages1.size()); + JsonNode sharedState = null; + StreamDescriptor firstStreamInState = null; + for (int i = 0; i < stateMessages1.size(); i++) { + final AirbyteStateMessage stateMessage = stateMessages1.get(i); + assertEquals(AirbyteStateType.GLOBAL, stateMessage.getType()); + final AirbyteGlobalState global = stateMessage.getGlobal(); + assertNotNull(global.getSharedState()); + if (Objects.isNull(sharedState)) { + sharedState = global.getSharedState(); + } else { + assertEquals(sharedState, global.getSharedState()); + } + + if (Objects.isNull(firstStreamInState)) { + assertEquals(1, global.getStreamStates().size()); + firstStreamInState = global.getStreamStates().get(0).getStreamDescriptor(); + } + + if (i <= 4) { + // First 4 state messages are pk state + assertEquals(1, global.getStreamStates().size()); + final AirbyteStreamState streamState = global.getStreamStates().get(0); + assertTrue(streamState.getStreamState().has(STATE_TYPE_KEY)); + assertEquals(PRIMARY_KEY_STATE_TYPE, streamState.getStreamState().get(STATE_TYPE_KEY).asText()); + } else if (i == 5) { + // 5th state message is the final state message emitted for the stream + assertEquals(1, global.getStreamStates().size()); + final AirbyteStreamState streamState = global.getStreamStates().get(0); + assertFalse(streamState.getStreamState().has(STATE_TYPE_KEY)); + } else if (i <= 10) { + // 6th to 10th is the primary_key state message for the 2nd stream but final state message for 1st + // stream + assertEquals(2, global.getStreamStates().size()); + final StreamDescriptor finalFirstStreamInState = firstStreamInState; + global.getStreamStates().forEach(c -> { + if (c.getStreamDescriptor().equals(finalFirstStreamInState)) { + assertFalse(c.getStreamState().has(STATE_TYPE_KEY)); + } else { + assertTrue(c.getStreamState().has(STATE_TYPE_KEY)); + assertEquals(PRIMARY_KEY_STATE_TYPE, c.getStreamState().get(STATE_TYPE_KEY).asText()); + } + }); + } else { + // last 2 state messages don't contain primary_key info cause primary_key sync should be complete + assertEquals(2, global.getStreamStates().size()); + global.getStreamStates().forEach(c -> assertFalse(c.getStreamState().has(STATE_TYPE_KEY))); + } + } + + final Set names = new HashSet<>(STREAM_NAMES); + names.add(MODELS_STREAM_NAME + "_2"); + assertExpectedRecords(Streams.concat(MODEL_RECORDS_2.stream(), MODEL_RECORDS.stream()) + .collect(Collectors.toSet()), + recordMessages1, + names, + names, + MODELS_SCHEMA); + + assertEquals(new StreamDescriptor().withName(MODELS_STREAM_NAME).withNamespace(MODELS_SCHEMA), firstStreamInState); + + // Triggering a sync with a primary_key state for 1 stream and complete state for other stream + final AutoCloseableIterator read2 = getSource() + .read(getConfig(), configuredCatalog, Jsons.jsonNode(Collections.singletonList(stateMessages1.get(6)))); + final List actualRecords2 = AutoCloseableIterators.toListAndClose(read2); + + final List stateMessages2 = extractStateMessages(actualRecords2); + + assertEquals(6, stateMessages2.size()); + for (int i = 0; i < stateMessages2.size(); i++) { + final AirbyteStateMessage stateMessage = stateMessages2.get(i); + assertEquals(AirbyteStateType.GLOBAL, stateMessage.getType()); + final AirbyteGlobalState global = stateMessage.getGlobal(); + assertNotNull(global.getSharedState()); + assertEquals(2, global.getStreamStates().size()); + + if (i <= 3) { + final StreamDescriptor finalFirstStreamInState = firstStreamInState; + global.getStreamStates().forEach(c -> { + // First 4 state messages are primary_key state for the stream that didn't complete primary_key sync + // the first time + if (c.getStreamDescriptor().equals(finalFirstStreamInState)) { + assertFalse(c.getStreamState().has(STATE_TYPE_KEY)); + } else { + assertTrue(c.getStreamState().has(STATE_TYPE_KEY)); + assertEquals(PRIMARY_KEY_STATE_TYPE, c.getStreamState().get(STATE_TYPE_KEY).asText()); + } + }); + } else { + // last 2 state messages don't contain primary_key info cause primary_key sync should be complete + global.getStreamStates().forEach(c -> assertFalse(c.getStreamState().has(STATE_TYPE_KEY))); + } + } + + final Set recordMessages2 = extractRecordMessages(actualRecords2); + assertEquals(5, recordMessages2.size()); + assertExpectedRecords(new HashSet<>(MODEL_RECORDS_2.subList(1, MODEL_RECORDS_2.size())), + recordMessages2, + names, + names, + MODELS_SCHEMA); + } + + /** + * This test creates lots of tables increasing the schema history size above the limit of {@link AirbyteSchemaHistoryStorage#SIZE_LIMIT_TO_COMPRESS_MB} + * forcing the {@link AirbyteSchemaHistoryStorage#read()} method to compress the schema history blob as part of the state message + * which allows us to test that the next sync is able to work fine when provided with a compressed blob in the state. + */ + @Test + public void testCompressedSchemaHistory() throws Exception { + createTablesToIncreaseSchemaHistorySize(); + final AutoCloseableIterator firstBatchIterator = getSource() + .read(getConfig(), CONFIGURED_CATALOG, null); + final List dataFromFirstBatch = AutoCloseableIterators + .toListAndClose(firstBatchIterator); + final AirbyteStateMessage lastStateMessageFromFirstBatch = Iterables.getLast(extractStateMessages(dataFromFirstBatch)); + assertNotNull(lastStateMessageFromFirstBatch.getGlobal().getSharedState()); + assertNotNull(lastStateMessageFromFirstBatch.getGlobal().getSharedState().get("state")); + assertNotNull(lastStateMessageFromFirstBatch.getGlobal().getSharedState().get("state").get(IS_COMPRESSED)); + assertNotNull(lastStateMessageFromFirstBatch.getGlobal().getSharedState().get("state").get(MYSQL_DB_HISTORY)); + assertNotNull(lastStateMessageFromFirstBatch.getGlobal().getSharedState().get("state").get(MYSQL_CDC_OFFSET)); + assertTrue(lastStateMessageFromFirstBatch.getGlobal().getSharedState().get("state").get(IS_COMPRESSED).asBoolean()); + + // INSERT records so that events are written to binlog and Debezium tries to parse them + final int recordsToCreate = 20; + // first batch of records. 20 created here and 6 created in setup method. + for (int recordsCreated = 0; recordsCreated < recordsToCreate; recordsCreated++) { + final JsonNode record = + Jsons.jsonNode(ImmutableMap + .of(COL_ID, 100 + recordsCreated, COL_MAKE_ID, 1, COL_MODEL, + "F-" + recordsCreated)); + writeModelRecord(record); + } + + final AutoCloseableIterator secondBatchIterator = getSource() + .read(getConfig(), CONFIGURED_CATALOG, Jsons.jsonNode(Collections.singletonList(lastStateMessageFromFirstBatch))); + final List dataFromSecondBatch = AutoCloseableIterators + .toListAndClose(secondBatchIterator); + final AirbyteStateMessage lastStateMessageFromSecondBatch = Iterables.getLast(extractStateMessages(dataFromSecondBatch)); + assertNotNull(lastStateMessageFromSecondBatch.getGlobal().getSharedState()); + assertNotNull(lastStateMessageFromSecondBatch.getGlobal().getSharedState().get("state")); + assertNotNull(lastStateMessageFromSecondBatch.getGlobal().getSharedState().get("state").get(IS_COMPRESSED)); + assertNotNull(lastStateMessageFromSecondBatch.getGlobal().getSharedState().get("state").get(MYSQL_DB_HISTORY)); + assertNotNull(lastStateMessageFromSecondBatch.getGlobal().getSharedState().get("state").get(MYSQL_CDC_OFFSET)); + assertTrue(lastStateMessageFromSecondBatch.getGlobal().getSharedState().get("state").get(IS_COMPRESSED).asBoolean()); + + assertEquals(lastStateMessageFromFirstBatch.getGlobal().getSharedState().get("state").get(MYSQL_DB_HISTORY), + lastStateMessageFromSecondBatch.getGlobal().getSharedState().get("state").get(MYSQL_DB_HISTORY)); + + assertEquals(recordsToCreate, extractRecordMessages(dataFromSecondBatch).size()); + } + + private void createTablesToIncreaseSchemaHistorySize() { + for (int i = 0; i <= 200; i++) { + final String tableName = generateRandomStringOf32Characters(); + final StringBuilder createTableQuery = new StringBuilder("CREATE TABLE models_schema." + tableName + "("); + String firstCol = null; + for (int j = 1; j <= 250; j++) { + final String columnName = generateRandomStringOf32Characters(); + if (j == 1) { + firstCol = columnName; + + } + createTableQuery.append(columnName).append(" INTEGER, "); + } + createTableQuery.append("PRIMARY KEY (").append(firstCol).append("));"); + executeQuery(createTableQuery.toString()); + } + } + + private static String generateRandomStringOf32Characters() { + final String characters = "abcdefghijklmnopqrstuvwxyz"; + final int length = 32; + + final StringBuilder randomString = new StringBuilder(length); + + for (int i = 0; i < length; i++) { + final int index = RANDOM.nextInt(characters.length()); + final char randomChar = characters.charAt(index); + randomString.append(randomChar); + } + + return randomString.toString(); + } } diff --git a/airbyte-integrations/connectors/source-mysql/src/test/java/io/airbyte/integrations/source/mysql/InitialPkLoadEnabledCdcMysqlSourceTest.java b/airbyte-integrations/connectors/source-mysql/src/test/java/io/airbyte/integrations/source/mysql/InitialPkLoadEnabledCdcMysqlSourceTest.java deleted file mode 100644 index 15cd6915e05f..000000000000 --- a/airbyte-integrations/connectors/source-mysql/src/test/java/io/airbyte/integrations/source/mysql/InitialPkLoadEnabledCdcMysqlSourceTest.java +++ /dev/null @@ -1,361 +0,0 @@ -/* - * Copyright (c) 2023 Airbyte, Inc., all rights reserved. - */ - -package io.airbyte.integrations.source.mysql; - -import static io.airbyte.integrations.source.mysql.initialsync.MySqlInitialLoadStateManager.PRIMARY_KEY_STATE_TYPE; -import static io.airbyte.integrations.source.mysql.initialsync.MySqlInitialLoadStateManager.STATE_TYPE_KEY; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertNotEquals; -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertTrue; - -import com.fasterxml.jackson.databind.JsonNode; -import com.fasterxml.jackson.databind.node.ObjectNode; -import com.google.common.collect.ImmutableList; -import com.google.common.collect.ImmutableMap; -import com.google.common.collect.Lists; -import com.google.common.collect.Streams; -import io.airbyte.commons.json.Jsons; -import io.airbyte.commons.util.AutoCloseableIterator; -import io.airbyte.commons.util.AutoCloseableIterators; -import io.airbyte.integrations.source.mysql.initialsync.MySqlFeatureFlags; -import io.airbyte.protocol.models.Field; -import io.airbyte.protocol.models.JsonSchemaType; -import io.airbyte.protocol.models.v0.AirbyteGlobalState; -import io.airbyte.protocol.models.v0.AirbyteMessage; -import io.airbyte.protocol.models.v0.AirbyteRecordMessage; -import io.airbyte.protocol.models.v0.AirbyteStateMessage; -import io.airbyte.protocol.models.v0.AirbyteStateMessage.AirbyteStateType; -import io.airbyte.protocol.models.v0.AirbyteStreamState; -import io.airbyte.protocol.models.v0.CatalogHelpers; -import io.airbyte.protocol.models.v0.ConfiguredAirbyteCatalog; -import io.airbyte.protocol.models.v0.ConfiguredAirbyteStream; -import io.airbyte.protocol.models.v0.StreamDescriptor; -import io.airbyte.protocol.models.v0.SyncMode; -import java.util.Collections; -import java.util.HashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.stream.Collectors; -import org.junit.jupiter.api.Test; - -public class InitialPkLoadEnabledCdcMysqlSourceTest extends CdcMysqlSourceTest { - - @Override - protected JsonNode getConfig() { - final JsonNode config = super.getConfig(); - ((ObjectNode) config).put(MySqlFeatureFlags.CDC_VIA_PK, true); - return config; - } - - @Override - protected void assertExpectedStateMessages(final List stateMessages) { - assertEquals(7, stateMessages.size()); - assertStateTypes(stateMessages, 4); - } - - @Override - protected void assertExpectedStateMessagesFromIncrementalSync(final List stateMessages) { - super.assertExpectedStateMessages(stateMessages); - } - - @Override - protected void assertStateForSyncShouldHandlePurgedLogsGracefully(final List stateMessages, final int syncNumber) { - if (syncNumber == 1) { - assertExpectedStateMessagesForRecordsProducedDuringAndAfterSync(stateMessages); - } else if (syncNumber == 2) { - // Sync number 2 uses the state from sync number 1 but before we trigger the sync 2 we purge the - // binary logs and as a result the validation of - // logs present on the server fails, and we trigger a sync from scratch - assertEquals(47, stateMessages.size()); - assertStateTypes(stateMessages, 44); - } else { - throw new RuntimeException("Unknown sync number"); - } - - } - - @Override - protected void assertExpectedStateMessagesForRecordsProducedDuringAndAfterSync(final List stateAfterFirstBatch) { - assertEquals(27, stateAfterFirstBatch.size()); - assertStateTypes(stateAfterFirstBatch, 24); - } - - @Override - protected void assertExpectedStateMessagesForNoData(final List stateMessages) { - assertEquals(2, stateMessages.size()); - } - - private void assertStateTypes(final List stateMessages, final int indexTillWhichExpectPkState) { - JsonNode sharedState = null; - for (int i = 0; i < stateMessages.size(); i++) { - final AirbyteStateMessage stateMessage = stateMessages.get(i); - assertEquals(AirbyteStateType.GLOBAL, stateMessage.getType()); - final AirbyteGlobalState global = stateMessage.getGlobal(); - assertNotNull(global.getSharedState()); - if (Objects.isNull(sharedState)) { - sharedState = global.getSharedState(); - } else { - assertEquals(sharedState, global.getSharedState()); - } - assertEquals(1, global.getStreamStates().size()); - final AirbyteStreamState streamState = global.getStreamStates().get(0); - if (i <= indexTillWhichExpectPkState) { - assertTrue(streamState.getStreamState().has(STATE_TYPE_KEY)); - assertEquals(PRIMARY_KEY_STATE_TYPE, streamState.getStreamState().get(STATE_TYPE_KEY).asText()); - } else { - assertFalse(streamState.getStreamState().has(STATE_TYPE_KEY)); - } - } - } - - @Override - protected void assertStateMessagesForNewTableSnapshotTest(final List stateMessages, - final AirbyteStateMessage stateMessageEmittedAfterFirstSyncCompletion) { - assertEquals(7, stateMessages.size()); - for (int i = 0; i <= 4; i++) { - final AirbyteStateMessage stateMessage = stateMessages.get(i); - assertEquals(AirbyteStateMessage.AirbyteStateType.GLOBAL, stateMessage.getType()); - assertEquals(stateMessageEmittedAfterFirstSyncCompletion.getGlobal().getSharedState(), - stateMessage.getGlobal().getSharedState()); - final Set streamsInSnapshotState = stateMessage.getGlobal().getStreamStates() - .stream() - .map(AirbyteStreamState::getStreamDescriptor) - .collect(Collectors.toSet()); - assertEquals(2, streamsInSnapshotState.size()); - assertTrue( - streamsInSnapshotState.contains(new StreamDescriptor().withName(MODELS_STREAM_NAME + "_random").withNamespace(randomTableSchema()))); - assertTrue(streamsInSnapshotState.contains(new StreamDescriptor().withName(MODELS_STREAM_NAME).withNamespace(MODELS_SCHEMA))); - - stateMessage.getGlobal().getStreamStates().forEach(s -> { - final JsonNode streamState = s.getStreamState(); - if (s.getStreamDescriptor().equals(new StreamDescriptor().withName(MODELS_STREAM_NAME + "_random").withNamespace(randomTableSchema()))) { - assertEquals(PRIMARY_KEY_STATE_TYPE, streamState.get(STATE_TYPE_KEY).asText()); - } else if (s.getStreamDescriptor().equals(new StreamDescriptor().withName(MODELS_STREAM_NAME).withNamespace(MODELS_SCHEMA))) { - assertFalse(streamState.has(STATE_TYPE_KEY)); - } else { - throw new RuntimeException("Unknown stream"); - } - }); - } - - final AirbyteStateMessage secondLastSateMessage = stateMessages.get(5); - assertEquals(AirbyteStateMessage.AirbyteStateType.GLOBAL, secondLastSateMessage.getType()); - assertEquals(stateMessageEmittedAfterFirstSyncCompletion.getGlobal().getSharedState(), - secondLastSateMessage.getGlobal().getSharedState()); - final Set streamsInSnapshotState = secondLastSateMessage.getGlobal().getStreamStates() - .stream() - .map(AirbyteStreamState::getStreamDescriptor) - .collect(Collectors.toSet()); - assertEquals(2, streamsInSnapshotState.size()); - assertTrue( - streamsInSnapshotState.contains(new StreamDescriptor().withName(MODELS_STREAM_NAME + "_random").withNamespace(randomTableSchema()))); - assertTrue(streamsInSnapshotState.contains(new StreamDescriptor().withName(MODELS_STREAM_NAME).withNamespace(MODELS_SCHEMA))); - secondLastSateMessage.getGlobal().getStreamStates().forEach(s -> { - final JsonNode streamState = s.getStreamState(); - assertFalse(streamState.has(STATE_TYPE_KEY)); - }); - - final AirbyteStateMessage stateMessageEmittedAfterSecondSyncCompletion = stateMessages.get(6); - assertEquals(AirbyteStateMessage.AirbyteStateType.GLOBAL, stateMessageEmittedAfterSecondSyncCompletion.getType()); - assertNotEquals(stateMessageEmittedAfterFirstSyncCompletion.getGlobal().getSharedState(), - stateMessageEmittedAfterSecondSyncCompletion.getGlobal().getSharedState()); - final Set streamsInSyncCompletionState = stateMessageEmittedAfterSecondSyncCompletion.getGlobal().getStreamStates() - .stream() - .map(AirbyteStreamState::getStreamDescriptor) - .collect(Collectors.toSet()); - assertEquals(2, streamsInSnapshotState.size()); - assertTrue( - streamsInSyncCompletionState.contains( - new StreamDescriptor().withName(MODELS_STREAM_NAME + "_random").withNamespace(randomTableSchema()))); - assertTrue(streamsInSyncCompletionState.contains(new StreamDescriptor().withName(MODELS_STREAM_NAME).withNamespace(MODELS_SCHEMA))); - assertNotNull(stateMessageEmittedAfterSecondSyncCompletion.getData()); - } - - @Test - public void testCompositeIndexInitialLoad() throws Exception { - // Simulate adding a composite index by modifying the catalog. - final ConfiguredAirbyteCatalog configuredCatalog = Jsons.clone(CONFIGURED_CATALOG); - final List> primaryKeys = configuredCatalog.getStreams().get(0).getStream().getSourceDefinedPrimaryKey(); - primaryKeys.add(List.of("make_id")); - - final AutoCloseableIterator read1 = getSource() - .read(getConfig(), configuredCatalog, null); - - final List actualRecords1 = AutoCloseableIterators.toListAndClose(read1); - - final Set recordMessages1 = extractRecordMessages(actualRecords1); - final List stateMessages1 = extractStateMessages(actualRecords1); - assertExpectedRecords(new HashSet<>(MODEL_RECORDS), recordMessages1); - assertExpectedStateMessages(stateMessages1); - - // Re-run the sync with state associated with record w/ id = 15 (second to last record). - // We expect to read 2 records, since in the case of a composite PK we issue a >= query. - // We also expect 3 state records. One associated with the pk state, one to signify end of initial - // load, and - // the last one indicating the cdc position we have synced until. - final JsonNode state = Jsons.jsonNode(Collections.singletonList(stateMessages1.get(4))); - final AutoCloseableIterator read2 = getSource() - .read(getConfig(), configuredCatalog, state); - - final List actualRecords2 = AutoCloseableIterators.toListAndClose(read2); - final Set recordMessages2 = extractRecordMessages(actualRecords2); - final List stateMessages2 = extractStateMessages(actualRecords2); - - assertExpectedRecords(new HashSet<>(MODEL_RECORDS.subList(4, 6)), recordMessages2); - assertEquals(3, stateMessages2.size()); - assertStateTypes(stateMessages2, 0); - } - - @Test - public void testTwoStreamSync() throws Exception { - // Add another stream models_2 and read that one as well. - final ConfiguredAirbyteCatalog configuredCatalog = Jsons.clone(CONFIGURED_CATALOG); - - final List MODEL_RECORDS_2 = ImmutableList.of( - Jsons.jsonNode(ImmutableMap.of(COL_ID, 110, COL_MAKE_ID, 1, COL_MODEL, "Fiesta-2")), - Jsons.jsonNode(ImmutableMap.of(COL_ID, 120, COL_MAKE_ID, 1, COL_MODEL, "Focus-2")), - Jsons.jsonNode(ImmutableMap.of(COL_ID, 130, COL_MAKE_ID, 1, COL_MODEL, "Ranger-2")), - Jsons.jsonNode(ImmutableMap.of(COL_ID, 140, COL_MAKE_ID, 2, COL_MODEL, "GLA-2")), - Jsons.jsonNode(ImmutableMap.of(COL_ID, 150, COL_MAKE_ID, 2, COL_MODEL, "A 220-2")), - Jsons.jsonNode(ImmutableMap.of(COL_ID, 160, COL_MAKE_ID, 2, COL_MODEL, "E 350-2"))); - - createTable(MODELS_SCHEMA, MODELS_STREAM_NAME + "_2", - columnClause(ImmutableMap.of(COL_ID, "INTEGER", COL_MAKE_ID, "INTEGER", COL_MODEL, "VARCHAR(200)"), Optional.of(COL_ID))); - - for (final JsonNode recordJson : MODEL_RECORDS_2) { - writeRecords(recordJson, MODELS_SCHEMA, MODELS_STREAM_NAME + "_2", COL_ID, - COL_MAKE_ID, COL_MODEL); - } - - final ConfiguredAirbyteStream airbyteStream = new ConfiguredAirbyteStream() - .withStream(CatalogHelpers.createAirbyteStream( - MODELS_STREAM_NAME + "_2", - MODELS_SCHEMA, - Field.of(COL_ID, JsonSchemaType.INTEGER), - Field.of(COL_MAKE_ID, JsonSchemaType.INTEGER), - Field.of(COL_MODEL, JsonSchemaType.STRING)) - .withSupportedSyncModes( - Lists.newArrayList(SyncMode.FULL_REFRESH, SyncMode.INCREMENTAL)) - .withSourceDefinedPrimaryKey(List.of(List.of(COL_ID)))); - airbyteStream.setSyncMode(SyncMode.INCREMENTAL); - - final List streams = configuredCatalog.getStreams(); - streams.add(airbyteStream); - configuredCatalog.withStreams(streams); - - final AutoCloseableIterator read1 = getSource() - .read(getConfig(), configuredCatalog, null); - final List actualRecords1 = AutoCloseableIterators.toListAndClose(read1); - - final Set recordMessages1 = extractRecordMessages(actualRecords1); - final List stateMessages1 = extractStateMessages(actualRecords1); - assertEquals(13, stateMessages1.size()); - JsonNode sharedState = null; - StreamDescriptor firstStreamInState = null; - for (int i = 0; i < stateMessages1.size(); i++) { - final AirbyteStateMessage stateMessage = stateMessages1.get(i); - assertEquals(AirbyteStateType.GLOBAL, stateMessage.getType()); - final AirbyteGlobalState global = stateMessage.getGlobal(); - assertNotNull(global.getSharedState()); - if (Objects.isNull(sharedState)) { - sharedState = global.getSharedState(); - } else { - assertEquals(sharedState, global.getSharedState()); - } - - if (Objects.isNull(firstStreamInState)) { - assertEquals(1, global.getStreamStates().size()); - firstStreamInState = global.getStreamStates().get(0).getStreamDescriptor(); - } - - if (i <= 4) { - // First 4 state messages are pk state - assertEquals(1, global.getStreamStates().size()); - final AirbyteStreamState streamState = global.getStreamStates().get(0); - assertTrue(streamState.getStreamState().has(STATE_TYPE_KEY)); - assertEquals(PRIMARY_KEY_STATE_TYPE, streamState.getStreamState().get(STATE_TYPE_KEY).asText()); - } else if (i == 5) { - // 5th state message is the final state message emitted for the stream - assertEquals(1, global.getStreamStates().size()); - final AirbyteStreamState streamState = global.getStreamStates().get(0); - assertFalse(streamState.getStreamState().has(STATE_TYPE_KEY)); - } else if (i <= 10) { - // 6th to 10th is the primary_key state message for the 2nd stream but final state message for 1st - // stream - assertEquals(2, global.getStreamStates().size()); - final StreamDescriptor finalFirstStreamInState = firstStreamInState; - global.getStreamStates().forEach(c -> { - if (c.getStreamDescriptor().equals(finalFirstStreamInState)) { - assertFalse(c.getStreamState().has(STATE_TYPE_KEY)); - } else { - assertTrue(c.getStreamState().has(STATE_TYPE_KEY)); - assertEquals(PRIMARY_KEY_STATE_TYPE, c.getStreamState().get(STATE_TYPE_KEY).asText()); - } - }); - } else { - // last 2 state messages don't contain primary_key info cause primary_key sync should be complete - assertEquals(2, global.getStreamStates().size()); - global.getStreamStates().forEach(c -> assertFalse(c.getStreamState().has(STATE_TYPE_KEY))); - } - } - - final Set names = new HashSet<>(STREAM_NAMES); - names.add(MODELS_STREAM_NAME + "_2"); - assertExpectedRecords(Streams.concat(MODEL_RECORDS_2.stream(), MODEL_RECORDS.stream()) - .collect(Collectors.toSet()), - recordMessages1, - names, - names, - MODELS_SCHEMA); - - assertEquals(new StreamDescriptor().withName(MODELS_STREAM_NAME).withNamespace(MODELS_SCHEMA), firstStreamInState); - - // Triggering a sync with a primary_key state for 1 stream and complete state for other stream - final AutoCloseableIterator read2 = getSource() - .read(getConfig(), configuredCatalog, Jsons.jsonNode(Collections.singletonList(stateMessages1.get(6)))); - final List actualRecords2 = AutoCloseableIterators.toListAndClose(read2); - - final List stateMessages2 = extractStateMessages(actualRecords2); - - assertEquals(6, stateMessages2.size()); - for (int i = 0; i < stateMessages2.size(); i++) { - final AirbyteStateMessage stateMessage = stateMessages2.get(i); - assertEquals(AirbyteStateType.GLOBAL, stateMessage.getType()); - final AirbyteGlobalState global = stateMessage.getGlobal(); - assertNotNull(global.getSharedState()); - assertEquals(2, global.getStreamStates().size()); - - if (i <= 3) { - final StreamDescriptor finalFirstStreamInState = firstStreamInState; - global.getStreamStates().forEach(c -> { - // First 4 state messages are primary_key state for the stream that didn't complete primary_key sync - // the first time - if (c.getStreamDescriptor().equals(finalFirstStreamInState)) { - assertFalse(c.getStreamState().has(STATE_TYPE_KEY)); - } else { - assertTrue(c.getStreamState().has(STATE_TYPE_KEY)); - assertEquals(PRIMARY_KEY_STATE_TYPE, c.getStreamState().get(STATE_TYPE_KEY).asText()); - } - }); - } else { - // last 2 state messages don't contain primary_key info cause primary_key sync should be complete - global.getStreamStates().forEach(c -> assertFalse(c.getStreamState().has(STATE_TYPE_KEY))); - } - } - - final Set recordMessages2 = extractRecordMessages(actualRecords2); - assertEquals(5, recordMessages2.size()); - assertExpectedRecords(new HashSet<>(MODEL_RECORDS_2.subList(1, MODEL_RECORDS_2.size())), - recordMessages2, - names, - names, - MODELS_SCHEMA); - } - -} diff --git a/airbyte-integrations/connectors/source-mysql/src/test/java/io/airbyte/integrations/source/mysql/MySqlJdbcSourceAcceptanceTest.java b/airbyte-integrations/connectors/source-mysql/src/test/java/io/airbyte/integrations/source/mysql/MySqlJdbcSourceAcceptanceTest.java index 8d61becf068c..d86f89493f3b 100644 --- a/airbyte-integrations/connectors/source-mysql/src/test/java/io/airbyte/integrations/source/mysql/MySqlJdbcSourceAcceptanceTest.java +++ b/airbyte-integrations/connectors/source-mysql/src/test/java/io/airbyte/integrations/source/mysql/MySqlJdbcSourceAcceptanceTest.java @@ -21,23 +21,17 @@ import io.airbyte.db.jdbc.JdbcUtils; import io.airbyte.integrations.source.jdbc.AbstractJdbcSource; import io.airbyte.integrations.source.jdbc.test.JdbcSourceAcceptanceTest; -import io.airbyte.integrations.source.relationaldb.models.DbStreamState; import io.airbyte.protocol.models.Field; import io.airbyte.protocol.models.JsonSchemaType; import io.airbyte.protocol.models.v0.AirbyteCatalog; import io.airbyte.protocol.models.v0.AirbyteConnectionStatus; -import io.airbyte.protocol.models.v0.AirbyteMessage; -import io.airbyte.protocol.models.v0.AirbyteMessage.Type; -import io.airbyte.protocol.models.v0.AirbyteRecordMessage; import io.airbyte.protocol.models.v0.CatalogHelpers; import io.airbyte.protocol.models.v0.ConnectorSpecification; import io.airbyte.protocol.models.v0.SyncMode; import java.sql.Connection; import java.sql.DriverManager; -import java.util.ArrayList; import java.util.Collections; import java.util.List; -import java.util.Map; import java.util.concurrent.Callable; import org.jooq.DSLContext; import org.jooq.SQLDialect; @@ -240,64 +234,6 @@ protected AirbyteCatalog getCatalog(final String defaultNamespace) { List.of(List.of(COL_FIRST_NAME), List.of(COL_LAST_NAME))))); } - @Override - protected void incrementalDateCheck() throws Exception { - incrementalCursorCheck( - COL_UPDATED_AT, - "2005-10-18", - "2006-10-19", - List.of(getTestMessages().get(1), getTestMessages().get(2))); - } - - @Override - protected List getTestMessages() { - return List.of( - new AirbyteMessage().withType(Type.RECORD) - .withRecord(new AirbyteRecordMessage().withStream(streamName).withNamespace(getDefaultNamespace()) - .withData(Jsons.jsonNode(Map - .of(COL_ID, ID_VALUE_1, - COL_NAME, "picard", - COL_UPDATED_AT, "2004-10-19")))), - new AirbyteMessage().withType(Type.RECORD) - .withRecord(new AirbyteRecordMessage().withStream(streamName).withNamespace(getDefaultNamespace()) - .withData(Jsons.jsonNode(Map - .of(COL_ID, ID_VALUE_2, - COL_NAME, "crusher", - COL_UPDATED_AT, - "2005-10-19")))), - new AirbyteMessage().withType(Type.RECORD) - .withRecord(new AirbyteRecordMessage().withStream(streamName).withNamespace(getDefaultNamespace()) - .withData(Jsons.jsonNode(Map - .of(COL_ID, ID_VALUE_3, - COL_NAME, "vash", - COL_UPDATED_AT, "2006-10-19"))))); - } - - @Override - protected List getExpectedAirbyteMessagesSecondSync(final String namespace) { - final List expectedMessages = new ArrayList<>(); - expectedMessages.add(new AirbyteMessage().withType(Type.RECORD) - .withRecord(new AirbyteRecordMessage().withStream(streamName).withNamespace(namespace) - .withData(Jsons.jsonNode(Map - .of(COL_ID, ID_VALUE_4, - COL_NAME, "riker", - COL_UPDATED_AT, "2006-10-19"))))); - expectedMessages.add(new AirbyteMessage().withType(Type.RECORD) - .withRecord(new AirbyteRecordMessage().withStream(streamName).withNamespace(namespace) - .withData(Jsons.jsonNode(Map - .of(COL_ID, ID_VALUE_5, - COL_NAME, "data", - COL_UPDATED_AT, "2006-10-19"))))); - final DbStreamState state = new DbStreamState() - .withStreamName(streamName) - .withStreamNamespace(namespace) - .withCursorField(List.of(COL_ID)) - .withCursor("5") - .withCursorRecordCount(1L); - expectedMessages.addAll(createExpectedTestMessages(List.of(state))); - return expectedMessages; - } - @Override protected boolean supportsPerStream() { return true; diff --git a/airbyte-integrations/connectors/source-mysql/src/test/java/io/airbyte/integrations/source/mysql/MysqlPkJdbcSourceAcceptanceTest.java b/airbyte-integrations/connectors/source-mysql/src/test/java/io/airbyte/integrations/source/mysql/MysqlPkJdbcSourceAcceptanceTest.java new file mode 100644 index 000000000000..8f96c99ff379 --- /dev/null +++ b/airbyte-integrations/connectors/source-mysql/src/test/java/io/airbyte/integrations/source/mysql/MysqlPkJdbcSourceAcceptanceTest.java @@ -0,0 +1,613 @@ +/* + * Copyright (c) 2023 Airbyte, Inc., all rights reserved. + */ + +package io.airbyte.integrations.source.mysql; + +/* + * Copyright (c) 2023 Airbyte, Inc., all rights reserved. + */ + +import static io.airbyte.integrations.source.mysql.initialsync.MySqlInitialLoadStateManager.STATE_TYPE_KEY; +import static java.util.stream.Collectors.toList; +import static org.assertj.core.api.Assertions.assertThat; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; + +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.node.ObjectNode; +import com.google.common.collect.ImmutableList; +import com.google.common.collect.ImmutableMap; +import com.google.common.collect.Lists; +import com.mysql.cj.MysqlType; +import io.airbyte.commons.features.EnvVariableFeatureFlags; +import io.airbyte.commons.json.Jsons; +import io.airbyte.commons.resources.MoreResources; +import io.airbyte.commons.string.Strings; +import io.airbyte.commons.util.MoreIterators; +import io.airbyte.db.Database; +import io.airbyte.db.factory.DSLContextFactory; +import io.airbyte.db.factory.DatabaseDriver; +import io.airbyte.db.jdbc.JdbcUtils; +import io.airbyte.integrations.source.jdbc.AbstractJdbcSource; +import io.airbyte.integrations.source.jdbc.test.JdbcSourceAcceptanceTest; +import io.airbyte.integrations.source.mysql.internal.models.CursorBasedStatus; +import io.airbyte.integrations.source.mysql.internal.models.InternalModels.StateType; +import io.airbyte.integrations.source.relationaldb.models.DbStreamState; +import io.airbyte.protocol.models.Field; +import io.airbyte.protocol.models.JsonSchemaType; +import io.airbyte.protocol.models.v0.AirbyteCatalog; +import io.airbyte.protocol.models.v0.AirbyteConnectionStatus; +import io.airbyte.protocol.models.v0.AirbyteMessage; +import io.airbyte.protocol.models.v0.AirbyteMessage.Type; +import io.airbyte.protocol.models.v0.AirbyteRecordMessage; +import io.airbyte.protocol.models.v0.AirbyteStateMessage; +import io.airbyte.protocol.models.v0.AirbyteStateMessage.AirbyteStateType; +import io.airbyte.protocol.models.v0.AirbyteStream; +import io.airbyte.protocol.models.v0.AirbyteStreamState; +import io.airbyte.protocol.models.v0.CatalogHelpers; +import io.airbyte.protocol.models.v0.ConfiguredAirbyteCatalog; +import io.airbyte.protocol.models.v0.ConfiguredAirbyteStream; +import io.airbyte.protocol.models.v0.ConnectorSpecification; +import io.airbyte.protocol.models.v0.DestinationSyncMode; +import io.airbyte.protocol.models.v0.StreamDescriptor; +import io.airbyte.protocol.models.v0.SyncMode; +import java.sql.Connection; +import java.sql.DriverManager; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.List; +import java.util.Map; +import java.util.concurrent.Callable; +import java.util.stream.Collectors; +import java.util.stream.Stream; +import org.jooq.DSLContext; +import org.jooq.SQLDialect; +import org.junit.jupiter.api.AfterAll; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.testcontainers.containers.MySQLContainer; +import uk.org.webcompere.systemstubs.environment.EnvironmentVariables; +import uk.org.webcompere.systemstubs.jupiter.SystemStub; +import uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension; + +@ExtendWith(SystemStubsExtension.class) +class MySqlPkJdbcSourceAcceptanceTest extends JdbcSourceAcceptanceTest { + + @SystemStub + private EnvironmentVariables environmentVariables; + + protected static final String USERNAME_WITHOUT_PERMISSION = "new_user"; + protected static final String PASSWORD_WITHOUT_PERMISSION = "new_password"; + protected static final String TEST_USER = "test"; + protected static final Callable TEST_PASSWORD = () -> "test"; + protected static MySQLContainer container; + + protected Database database; + protected DSLContext dslContext; + + + @BeforeAll + static void init() throws Exception { + container = new MySQLContainer<>("mysql:8.0") + .withUsername(TEST_USER) + .withPassword(TEST_PASSWORD.call()) + .withEnv("MYSQL_ROOT_HOST", "%") + .withEnv("MYSQL_ROOT_PASSWORD", TEST_PASSWORD.call()); + container.start(); + final Connection connection = DriverManager.getConnection(container.getJdbcUrl(), "root", TEST_PASSWORD.call()); + connection.createStatement().execute("GRANT ALL PRIVILEGES ON *.* TO '" + TEST_USER + "'@'%';\n"); + } + + @BeforeEach + public void setup() throws Exception { + environmentVariables.set(EnvVariableFeatureFlags.USE_STREAM_CAPABLE_STATE, "true"); + config = Jsons.jsonNode(ImmutableMap.builder() + .put(JdbcUtils.HOST_KEY, container.getHost()) + .put(JdbcUtils.PORT_KEY, container.getFirstMappedPort()) + .put(JdbcUtils.DATABASE_KEY, Strings.addRandomSuffix("db", "_", 10)) + .put(JdbcUtils.USERNAME_KEY, TEST_USER) + .put(JdbcUtils.PASSWORD_KEY, TEST_PASSWORD.call()) + .put("standard_via_pk", true) + .build()); + + dslContext = DSLContextFactory.create( + config.get(JdbcUtils.USERNAME_KEY).asText(), + config.get(JdbcUtils.PASSWORD_KEY).asText(), + DatabaseDriver.MYSQL.getDriverClassName(), + String.format("jdbc:mysql://%s:%s", + config.get(JdbcUtils.HOST_KEY).asText(), + config.get(JdbcUtils.PORT_KEY).asText()), + SQLDialect.MYSQL); + database = new Database(dslContext); + + database.query(ctx -> { + ctx.fetch("CREATE DATABASE " + getDefaultNamespace()); + return null; + }); + + super.setup(); + } + + @AfterEach + void tearDownMySql() throws Exception { + dslContext.close(); + super.tearDown(); + } + + @AfterAll + static void cleanUp() { + container.close(); + } + + // MySql does not support schemas in the way most dbs do. Instead we namespace by db name. + @Override + public boolean supportsSchemas() { + return false; + } + + @Override + public AbstractJdbcSource getJdbcSource() { + return new MySqlSource(); + } + + @Override + public String getDriverClass() { + return MySqlSource.DRIVER_CLASS; + } + + @Override + public JsonNode getConfig() { + return Jsons.clone(config); + } + + @Test + void testReadMultipleTablesIncrementally() throws Exception { + ((ObjectNode) config).put("sync_checkpoint_records", 1); + final String namespace = getDefaultNamespace(); + final String streamOneName = TABLE_NAME + "one"; + // Create a fresh first table + database.query(connection -> { + connection.fetch(String.format("USE %s;", getDefaultNamespace())); + connection.fetch(String.format("CREATE TABLE %s (\n" + + " id int PRIMARY KEY,\n" + + " name VARCHAR(200) NOT NULL,\n" + + " updated_at VARCHAR(200) NOT NULL\n" + + ");", streamOneName)); + connection.execute( + String.format( + "INSERT INTO %s(id, name, updated_at) VALUES (1,'picard', '2004-10-19')", + getFullyQualifiedTableName(streamOneName))); + connection.execute( + String.format( + "INSERT INTO %s(id, name, updated_at) VALUES (2, 'crusher', '2005-10-19')", + getFullyQualifiedTableName(streamOneName))); + connection.execute( + String.format( + "INSERT INTO %s(id, name, updated_at) VALUES (3, 'vash', '2006-10-19')", + getFullyQualifiedTableName(streamOneName))); + return null; + }); + + // Create a fresh second table + final String streamTwoName = TABLE_NAME + "two"; + final String streamTwoFullyQualifiedName = getFullyQualifiedTableName(streamTwoName); + // Insert records into second table + database.query(ctx -> { + ctx.fetch(String.format("CREATE TABLE %s (\n" + + " id int PRIMARY KEY,\n" + + " name VARCHAR(200) NOT NULL,\n" + + " updated_at DATE NOT NULL\n" + + ");", streamTwoName)); + ctx.execute( + String.format("INSERT INTO %s(id, name, updated_at)" + + "VALUES (40,'Jean Luc','2006-10-19')", + streamTwoFullyQualifiedName)); + ctx.execute( + String.format("INSERT INTO %s(id, name, updated_at)" + + "VALUES (41, 'Groot', '2006-10-19')", + streamTwoFullyQualifiedName)); + ctx.execute( + String.format("INSERT INTO %s(id, name, updated_at)" + + "VALUES (42, 'Thanos','2006-10-19')", + streamTwoFullyQualifiedName)); + return null; + }); + // Create records list that we expect to see in the state message + final List streamTwoExpectedRecords = Arrays.asList( + createRecord(streamTwoName, namespace, ImmutableMap.of( + COL_ID, 40, + COL_NAME, "Jean Luc", + COL_UPDATED_AT, "2006-10-19")), + createRecord(streamTwoName, namespace, ImmutableMap.of( + COL_ID, 41, + COL_NAME, "Groot", + COL_UPDATED_AT, "2006-10-19")), + createRecord(streamTwoName, namespace, ImmutableMap.of( + COL_ID, 42, + COL_NAME, "Thanos", + COL_UPDATED_AT, "2006-10-19"))); + + // Prep and create a configured catalog to perform sync + final AirbyteStream streamOne = getAirbyteStream(streamOneName, namespace); + final AirbyteStream streamTwo = getAirbyteStream(streamTwoName, namespace); + + final ConfiguredAirbyteCatalog configuredCatalog = CatalogHelpers.toDefaultConfiguredCatalog( + new AirbyteCatalog().withStreams(List.of(streamOne, streamTwo))); + configuredCatalog.getStreams().forEach(airbyteStream -> { + airbyteStream.setSyncMode(SyncMode.INCREMENTAL); + airbyteStream.setCursorField(List.of(COL_ID)); + airbyteStream.setDestinationSyncMode(DestinationSyncMode.APPEND); + airbyteStream.withPrimaryKey(List.of(List.of(COL_ID))); + }); + + // Perform initial sync + final List messagesFromFirstSync = MoreIterators + .toList(source.read(config, configuredCatalog, null)); + + final List recordsFromFirstSync = filterRecords(messagesFromFirstSync); + + setEmittedAtToNull(messagesFromFirstSync); + // All records in the 2 configured streams should be present + assertThat(filterRecords(recordsFromFirstSync)).containsExactlyElementsOf( + Stream.concat(getTestMessages(streamOneName).stream().parallel(), + streamTwoExpectedRecords.stream().parallel()).collect(toList())); + + final List actualFirstSyncState = extractStateMessage(messagesFromFirstSync); + // Since we are emitting a state message after each record, we should have 1 state for each record - + // 3 from stream1 and 3 from stream2 + assertEquals(6, actualFirstSyncState.size()); + + // The expected state type should be 2 primaryKey's and the last one being standard + final List expectedStateTypesFromFirstSync = List.of("primary_key", "primary_key", "cursor_based"); + final List stateTypeOfStreamOneStatesFromFirstSync = + extractSpecificFieldFromCombinedMessages(messagesFromFirstSync, streamOneName, STATE_TYPE_KEY); + final List stateTypeOfStreamTwoStatesFromFirstSync = + extractSpecificFieldFromCombinedMessages(messagesFromFirstSync, streamTwoName, STATE_TYPE_KEY); + // It should be the same for stream1 and stream2 + assertEquals(stateTypeOfStreamOneStatesFromFirstSync, expectedStateTypesFromFirstSync); + assertEquals(stateTypeOfStreamTwoStatesFromFirstSync, expectedStateTypesFromFirstSync); + + // Create the expected primaryKeys that we should see + final List expectedPrimaryKeysFromFirstSync = List.of("1", "2"); + final List primaryKeyFromStreamOneStatesFromFirstSync = + extractSpecificFieldFromCombinedMessages(messagesFromFirstSync, streamOneName, "pk_val"); + final List primaryKeyFromStreamTwoStatesFromFirstSync = + extractSpecificFieldFromCombinedMessages(messagesFromFirstSync, streamOneName, "pk_val"); + + // Verifying each element and its index to match. + // Only checking the first 2 elements since we have verified that the last state_type is + // "cursor_based" + assertEquals(primaryKeyFromStreamOneStatesFromFirstSync.get(0), expectedPrimaryKeysFromFirstSync.get(0)); + assertEquals(primaryKeyFromStreamOneStatesFromFirstSync.get(1), expectedPrimaryKeysFromFirstSync.get(1)); + assertEquals(primaryKeyFromStreamTwoStatesFromFirstSync.get(0), expectedPrimaryKeysFromFirstSync.get(0)); + assertEquals(primaryKeyFromStreamTwoStatesFromFirstSync.get(1), expectedPrimaryKeysFromFirstSync.get(1)); + + // Extract only state messages for each stream + final List streamOneStateMessagesFromFirstSync = extractStateMessage(messagesFromFirstSync, streamOneName); + final List streamTwoStateMessagesFromFirstSync = extractStateMessage(messagesFromFirstSync, streamTwoName); + // Extract the incremental states of each stream's first and second state message + final List streamOneIncrementalStatesFromFirstSync = + List.of(streamOneStateMessagesFromFirstSync.get(0).getStream().getStreamState().get("incremental_state"), + streamOneStateMessagesFromFirstSync.get(1).getStream().getStreamState().get("incremental_state")); + final JsonNode streamOneFinalStreamStateFromFirstSync = streamOneStateMessagesFromFirstSync.get(2).getStream().getStreamState(); + + final List streamTwoIncrementalStatesFromFirstSync = + List.of(streamTwoStateMessagesFromFirstSync.get(0).getStream().getStreamState().get("incremental_state"), + streamTwoStateMessagesFromFirstSync.get(1).getStream().getStreamState().get("incremental_state")); + final JsonNode streamTwoFinalStreamStateFromFirstSync = streamTwoStateMessagesFromFirstSync.get(2).getStream().getStreamState(); + + // The incremental_state of each stream's first and second incremental states is expected + // to be identical to the stream_state of the final state message for each stream + assertEquals(streamOneIncrementalStatesFromFirstSync.get(0), streamOneFinalStreamStateFromFirstSync); + assertEquals(streamOneIncrementalStatesFromFirstSync.get(1), streamOneFinalStreamStateFromFirstSync); + assertEquals(streamTwoIncrementalStatesFromFirstSync.get(0), streamTwoFinalStreamStateFromFirstSync); + assertEquals(streamTwoIncrementalStatesFromFirstSync.get(1), streamTwoFinalStreamStateFromFirstSync); + + // Sync should work with a primaryKey state AND a cursor-based state from each stream + // Forcing a sync with + // - stream one state still being the first record read via Primary Key. + // - stream two state being the Primary Key state before the final emitted state before the cursor switch + final List messagesFromSecondSyncWithMixedStates = MoreIterators + .toList(source.read(config, configuredCatalog, + Jsons.jsonNode(List.of(streamOneStateMessagesFromFirstSync.get(0), + streamTwoStateMessagesFromFirstSync.get(1))))); + + // Extract only state messages for each stream after second sync + final List streamOneStateMessagesFromSecondSync = + extractStateMessage(messagesFromSecondSyncWithMixedStates, streamOneName); + final List stateTypeOfStreamOneStatesFromSecondSync = + extractSpecificFieldFromCombinedMessages(messagesFromSecondSyncWithMixedStates, streamOneName, STATE_TYPE_KEY); + + final List streamTwoStateMessagesFromSecondSync = + extractStateMessage(messagesFromSecondSyncWithMixedStates, streamTwoName); + final List stateTypeOfStreamTwoStatesFromSecondSync = + extractSpecificFieldFromCombinedMessages(messagesFromSecondSyncWithMixedStates, streamTwoName, STATE_TYPE_KEY); + + // Stream One states after the second sync are expected to have 2 stream states + // - 1 with PrimaryKey state_type and 1 state that is of cursorBased state type + assertEquals(2, streamOneStateMessagesFromSecondSync.size()); + assertEquals(List.of("primary_key", "cursor_based"), stateTypeOfStreamOneStatesFromSecondSync); + + // Stream Two states after the second sync are expected to have 1 stream state + // - The state that is of cursorBased state type + assertEquals(1, streamTwoStateMessagesFromSecondSync.size()); + assertEquals(List.of("cursor_based"), stateTypeOfStreamTwoStatesFromSecondSync); + + // Add some data to each table and perform a third read. + // Expect to see all records be synced via cursorBased method and not primaryKey + + database.query(ctx -> { + ctx.execute( + String.format("INSERT INTO %s(id, name, updated_at)" + + "VALUES (4,'Hooper','2006-10-19')", + getFullyQualifiedTableName(streamOneName))); + ctx.execute( + String.format("INSERT INTO %s(id, name, updated_at)" + + "VALUES (43, 'Iron Man', '2006-10-19')", + streamTwoFullyQualifiedName)); + return null; + }); + + final List messagesFromThirdSync = MoreIterators + .toList(source.read(config, configuredCatalog, + Jsons.jsonNode(List.of(streamOneStateMessagesFromSecondSync.get(1), + streamTwoStateMessagesFromSecondSync.get(0))))); + + // Extract only state messages, state type, and cursor for each stream after second sync + final List streamOneStateMessagesFromThirdSync = + extractStateMessage(messagesFromThirdSync, streamOneName); + final List stateTypeOfStreamOneStatesFromThirdSync = + extractSpecificFieldFromCombinedMessages(messagesFromThirdSync, streamOneName, STATE_TYPE_KEY); + final List cursorOfStreamOneStatesFromThirdSync = + extractSpecificFieldFromCombinedMessages(messagesFromThirdSync, streamOneName, "cursor"); + + final List streamTwoStateMessagesFromThirdSync = + extractStateMessage(messagesFromThirdSync, streamTwoName); + final List stateTypeOfStreamTwoStatesFromThirdSync = + extractSpecificFieldFromCombinedMessages(messagesFromThirdSync, streamTwoName, STATE_TYPE_KEY); + final List cursorOfStreamTwoStatesFromThirdSync = + extractSpecificFieldFromCombinedMessages(messagesFromThirdSync, streamTwoName, "cursor"); + + // Both streams should now be synced via standard cursor and have updated max cursor values + // cursor: 4 for stream one + // cursor: 43 for stream two + assertEquals(1, streamOneStateMessagesFromThirdSync.size()); + assertEquals(List.of("cursor_based"), stateTypeOfStreamOneStatesFromThirdSync); + assertEquals(List.of("4"), cursorOfStreamOneStatesFromThirdSync); + + assertEquals(1, streamTwoStateMessagesFromThirdSync.size()); + assertEquals(List.of("cursor_based"), stateTypeOfStreamTwoStatesFromThirdSync); + assertEquals(List.of("43"), cursorOfStreamTwoStatesFromThirdSync); + } + + @Test + void testSpec() throws Exception { + final ConnectorSpecification actual = source.spec(); + final ConnectorSpecification expected = Jsons.deserialize(MoreResources.readResource("spec.json"), ConnectorSpecification.class); + + assertEquals(expected, actual); + } + + /** + * MySQL Error Codes: + *

+ * https://dev.mysql.com/doc/connector-j/8.0/en/connector-j-reference-error-sqlstates.html + *

+ * + * @throws Exception + */ + @Test + void testCheckIncorrectPasswordFailure() throws Exception { + ((ObjectNode) config).put(JdbcUtils.PASSWORD_KEY, "fake"); + final AirbyteConnectionStatus status = source.check(config); + assertEquals(AirbyteConnectionStatus.Status.FAILED, status.getStatus()); + assertTrue(status.getMessage().contains("State code: 08001;")); + } + + @Test + public void testCheckIncorrectUsernameFailure() throws Exception { + ((ObjectNode) config).put(JdbcUtils.USERNAME_KEY, "fake"); + final AirbyteConnectionStatus status = source.check(config); + assertEquals(AirbyteConnectionStatus.Status.FAILED, status.getStatus()); + // do not test for message since there seems to be flakiness where sometimes the test will get the + // message with + // State code: 08001 or State code: 28000 + } + + @Test + public void testCheckIncorrectHostFailure() throws Exception { + ((ObjectNode) config).put(JdbcUtils.HOST_KEY, "localhost2"); + final AirbyteConnectionStatus status = source.check(config); + assertEquals(AirbyteConnectionStatus.Status.FAILED, status.getStatus()); + assertTrue(status.getMessage().contains("State code: 08S01;")); + } + + @Test + public void testCheckIncorrectPortFailure() throws Exception { + ((ObjectNode) config).put(JdbcUtils.PORT_KEY, "0000"); + final AirbyteConnectionStatus status = source.check(config); + assertEquals(AirbyteConnectionStatus.Status.FAILED, status.getStatus()); + assertTrue(status.getMessage().contains("State code: 08S01;")); + } + + @Test + public void testCheckIncorrectDataBaseFailure() throws Exception { + ((ObjectNode) config).put(JdbcUtils.DATABASE_KEY, "wrongdatabase"); + final AirbyteConnectionStatus status = source.check(config); + assertEquals(AirbyteConnectionStatus.Status.FAILED, status.getStatus()); + assertTrue(status.getMessage().contains("State code: 42000; Error code: 1049;")); + } + + @Test + public void testUserHasNoPermissionToDataBase() throws Exception { + final Connection connection = DriverManager.getConnection(container.getJdbcUrl(), "root", TEST_PASSWORD.call()); + connection.createStatement() + .execute("create user '" + USERNAME_WITHOUT_PERMISSION + "'@'%' IDENTIFIED BY '" + PASSWORD_WITHOUT_PERMISSION + "';\n"); + ((ObjectNode) config).put(JdbcUtils.USERNAME_KEY, USERNAME_WITHOUT_PERMISSION); + ((ObjectNode) config).put(JdbcUtils.PASSWORD_KEY, PASSWORD_WITHOUT_PERMISSION); + final AirbyteConnectionStatus status = source.check(config); + assertEquals(AirbyteConnectionStatus.Status.FAILED, status.getStatus()); + assertTrue(status.getMessage().contains("State code: 08001;")); + } + + @Override + protected DbStreamState buildStreamState(final ConfiguredAirbyteStream configuredAirbyteStream, + final String cursorField, + final String cursorValue) { + return new CursorBasedStatus().withStateType(StateType.CURSOR_BASED).withVersion(2L) + .withStreamName(configuredAirbyteStream.getStream().getName()) + .withStreamNamespace(configuredAirbyteStream.getStream().getNamespace()) + .withCursorField(List.of(cursorField)) + .withCursor(cursorValue) + .withCursorRecordCount(1L); + } + + @Override + protected List getExpectedAirbyteMessagesSecondSync(final String namespace) { + final List expectedMessages = new ArrayList<>(); + expectedMessages.add(new AirbyteMessage().withType(AirbyteMessage.Type.RECORD) + .withRecord(new AirbyteRecordMessage().withStream(streamName).withNamespace(namespace) + .withData(Jsons.jsonNode(ImmutableMap + .of(COL_ID, ID_VALUE_4, + COL_NAME, "riker", + COL_UPDATED_AT, "2006-10-19"))))); + expectedMessages.add(new AirbyteMessage().withType(AirbyteMessage.Type.RECORD) + .withRecord(new AirbyteRecordMessage().withStream(streamName).withNamespace(namespace) + .withData(Jsons.jsonNode(ImmutableMap + .of(COL_ID, ID_VALUE_5, + COL_NAME, "data", + COL_UPDATED_AT, "2006-10-19"))))); + final DbStreamState state = new CursorBasedStatus() + .withStateType(StateType.CURSOR_BASED) + .withVersion(2L) + .withStreamName(streamName) + .withStreamNamespace(namespace) + .withCursorField(ImmutableList.of(COL_ID)) + .withCursor("5") + .withCursorRecordCount(1L); + + expectedMessages.addAll(createExpectedTestMessages(List.of(state))); + return expectedMessages; + } + + @Override + protected boolean supportsPerStream() { + return true; + } + + @Override + protected List getTestMessages() { + return getTestMessages(streamName); + } + + protected List getTestMessages(final String streamName) { + return List.of( + new AirbyteMessage().withType(Type.RECORD) + .withRecord(new AirbyteRecordMessage().withStream(streamName).withNamespace(getDefaultNamespace()) + .withData(Jsons.jsonNode(Map + .of(COL_ID, ID_VALUE_1, + COL_NAME, "picard", + COL_UPDATED_AT, "2004-10-19")))), + new AirbyteMessage().withType(Type.RECORD) + .withRecord(new AirbyteRecordMessage().withStream(streamName).withNamespace(getDefaultNamespace()) + .withData(Jsons.jsonNode(Map + .of(COL_ID, ID_VALUE_2, + COL_NAME, "crusher", + COL_UPDATED_AT, + "2005-10-19")))), + new AirbyteMessage().withType(Type.RECORD) + .withRecord(new AirbyteRecordMessage().withStream(streamName).withNamespace(getDefaultNamespace()) + .withData(Jsons.jsonNode(Map + .of(COL_ID, ID_VALUE_3, + COL_NAME, "vash", + COL_UPDATED_AT, "2006-10-19"))))); + } + + + + private AirbyteStream getAirbyteStream(final String tableName, final String namespace) { + return CatalogHelpers.createAirbyteStream( + tableName, + namespace, + Field.of(COL_ID, JsonSchemaType.INTEGER), + Field.of(COL_NAME, JsonSchemaType.STRING), + Field.of(COL_UPDATED_AT, JsonSchemaType.STRING_DATE)) + .withSupportedSyncModes(Lists.newArrayList(SyncMode.FULL_REFRESH, SyncMode.INCREMENTAL)) + .withSourceDefinedPrimaryKey(List.of(List.of(COL_ID))); + } + + @Override + protected AirbyteCatalog getCatalog(final String defaultNamespace) { + return new AirbyteCatalog().withStreams(Lists.newArrayList( + CatalogHelpers.createAirbyteStream( + TABLE_NAME, + defaultNamespace, + Field.of(COL_ID, JsonSchemaType.INTEGER), + Field.of(COL_NAME, JsonSchemaType.STRING), + Field.of(COL_UPDATED_AT, JsonSchemaType.STRING_DATE)) + .withSupportedSyncModes(Lists.newArrayList(SyncMode.FULL_REFRESH, SyncMode.INCREMENTAL)) + .withSourceDefinedPrimaryKey(List.of(List.of(COL_ID))), + CatalogHelpers.createAirbyteStream( + TABLE_NAME_WITHOUT_PK, + defaultNamespace, + Field.of(COL_ID, JsonSchemaType.INTEGER), + Field.of(COL_NAME, JsonSchemaType.STRING), + Field.of(COL_UPDATED_AT, JsonSchemaType.STRING_DATE)) + .withSupportedSyncModes(Lists.newArrayList(SyncMode.FULL_REFRESH, SyncMode.INCREMENTAL)) + .withSourceDefinedPrimaryKey(Collections.emptyList()), + CatalogHelpers.createAirbyteStream( + TABLE_NAME_COMPOSITE_PK, + defaultNamespace, + Field.of(COL_FIRST_NAME, JsonSchemaType.STRING), + Field.of(COL_LAST_NAME, JsonSchemaType.STRING), + Field.of(COL_UPDATED_AT, JsonSchemaType.STRING_DATE)) + .withSupportedSyncModes(Lists.newArrayList(SyncMode.FULL_REFRESH, SyncMode.INCREMENTAL)) + .withSourceDefinedPrimaryKey( + List.of(List.of(COL_FIRST_NAME), List.of(COL_LAST_NAME))))); + } + + // Override from parent class as we're no longer including the legacy Data field. + @Override + protected List createExpectedTestMessages(final List states) { + return supportsPerStream() + ? states.stream() + .map(s -> new AirbyteMessage().withType(Type.STATE) + .withState( + new AirbyteStateMessage().withType(AirbyteStateType.STREAM) + .withStream(new AirbyteStreamState() + .withStreamDescriptor(new StreamDescriptor().withNamespace(s.getStreamNamespace()).withName(s.getStreamName())) + .withStreamState(Jsons.jsonNode(s))))) + .collect( + Collectors.toList()) + : List.of(new AirbyteMessage().withType(Type.STATE).withState(new AirbyteStateMessage().withType(AirbyteStateType.LEGACY))); + } + + @Override + protected List createState(final List states) { + return supportsPerStream() + ? states.stream() + .map(s -> new AirbyteStateMessage().withType(AirbyteStateType.STREAM) + .withStream(new AirbyteStreamState() + .withStreamDescriptor(new StreamDescriptor().withNamespace(s.getStreamNamespace()).withName(s.getStreamName())) + .withStreamState(Jsons.jsonNode(s)))) + .collect( + Collectors.toList()) + : List.of(new AirbyteStateMessage().withType(AirbyteStateType.LEGACY)); + } + + @Override + protected JsonNode getStateData(final AirbyteMessage airbyteMessage, final String streamName) { + final JsonNode streamState = airbyteMessage.getState().getStream().getStreamState(); + if (streamState.get("stream_name").asText().equals(streamName)) { + return streamState; + } + + throw new IllegalArgumentException("Stream not found in state message: " + streamName); + } +} + diff --git a/airbyte-integrations/connectors/source-netsuite/acceptance-test-config.yml b/airbyte-integrations/connectors/source-netsuite/acceptance-test-config.yml index 90edf7530a22..74f1e798c3f8 100644 --- a/airbyte-integrations/connectors/source-netsuite/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-netsuite/acceptance-test-config.yml @@ -11,17 +11,17 @@ tests: status: "failed" discovery: - config_path: "secrets/config.json" - # Discovery stage is dynamic, so timeout iscreased + # Discovery stage is dynamic, so timeout iscreased timeout_seconds: 1200 basic_read: - config_path: "secrets/config.json" # NetSuite has lots of streams available, we test the portion of them only. configured_catalog_path: "integration_tests/configured_catalog.json" empty_streams: [ - "customrecord01", + "customrecord01", "billingaccount", "charge", - "message", + "message", "salesorder", ] timeout_seconds: 3600 @@ -34,4 +34,3 @@ tests: configured_catalog_path: "integration_tests/configured_catalog.json" future_state_path: "integration_tests/abnormal_state.json" timeout_seconds: 7200 - threshold_days: 30 diff --git a/airbyte-integrations/connectors/source-nytimes/acceptance-test-config.yml b/airbyte-integrations/connectors/source-nytimes/acceptance-test-config.yml index 1ff862137d56..27d0b6a9fb1e 100644 --- a/airbyte-integrations/connectors/source-nytimes/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-nytimes/acceptance-test-config.yml @@ -19,11 +19,10 @@ acceptance_tests: - config_path: "secrets/config.json" configured_catalog_path: "integration_tests/configured_catalog.json" empty_streams: [] - incremental: + incremental: tests: - config_path: "secrets/config.json" configured_catalog_path: "integration_tests/configured_catalog.json" - threshold_days: 31 future_state: future_state_path: "integration_tests/abnormal_state.json" full_refresh: diff --git a/airbyte-integrations/connectors/source-opsgenie/acceptance-test-config.yml b/airbyte-integrations/connectors/source-opsgenie/acceptance-test-config.yml index eedc90b65a7b..3214ff4c1bf7 100644 --- a/airbyte-integrations/connectors/source-opsgenie/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-opsgenie/acceptance-test-config.yml @@ -28,11 +28,6 @@ tests: - config_path: "secrets/config.json" configured_catalog_path: "integration_tests/configured_catalog.json" # future_state_path: "integration_tests/abnormal_state.json" - threshold_days: 2 - cursor_paths: - alerts: ["updatedAt"] - alert_recipients: ["updatedAt"] - incidents: ["updatedAt"] full_refresh: - config_path: "secrets/config.json" configured_catalog_path: "integration_tests/configured_catalog.json" diff --git a/airbyte-integrations/connectors/source-oracle-strict-encrypt/.dockerignore b/airbyte-integrations/connectors/source-oracle-strict-encrypt/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/source-oracle-strict-encrypt/.dockerignore +++ b/airbyte-integrations/connectors/source-oracle-strict-encrypt/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/source-oracle-strict-encrypt/build.gradle b/airbyte-integrations/connectors/source-oracle-strict-encrypt/build.gradle index af6d4228c3d1..a57e9232ed5c 100644 --- a/airbyte-integrations/connectors/source-oracle-strict-encrypt/build.gradle +++ b/airbyte-integrations/connectors/source-oracle-strict-encrypt/build.gradle @@ -27,11 +27,9 @@ dependencies { testImplementation project(':airbyte-test-utils') testImplementation 'org.apache.commons:commons-lang3:3.11' - testImplementation libs.connectors.source.testcontainers.oracle.xe + testImplementation libs.testcontainers.oracle.xe integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-oracle-strict-encrypt') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors/source-oracle/.dockerignore b/airbyte-integrations/connectors/source-oracle/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/source-oracle/.dockerignore +++ b/airbyte-integrations/connectors/source-oracle/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/source-oracle/build.gradle b/airbyte-integrations/connectors/source-oracle/build.gradle index 5ffae2d188c4..a2008e12c6a6 100644 --- a/airbyte-integrations/connectors/source-oracle/build.gradle +++ b/airbyte-integrations/connectors/source-oracle/build.gradle @@ -28,12 +28,10 @@ dependencies { testImplementation project(':airbyte-test-utils') testImplementation 'org.apache.commons:commons-lang3:3.11' - testImplementation libs.connectors.source.testcontainers.oracle.xe + testImplementation libs.testcontainers.oracle.xe integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-oracle') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors/source-orb/acceptance-test-config.yml b/airbyte-integrations/connectors/source-orb/acceptance-test-config.yml index 76134772a4dc..b636b4e14d0a 100644 --- a/airbyte-integrations/connectors/source-orb/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-orb/acceptance-test-config.yml @@ -22,14 +22,6 @@ tests: - config_path: "secrets/config.json" configured_catalog_path: "integration_tests/configured_catalog.json" future_state_path: "integration_tests/abnormal_state.json" - cursor_paths: - # This points to a specific customer's credit ledger entries in the state, - # and this customer is in the integration test account. - credits_ledger_entries: ["hHQF5BT5jtyj9r7V", "created_at"] - - # This points to a specific subscription's usage entries in the state, - # and this subscription is in the integration test account. - subscription_usage: ["FDWRvxuBUiFfZech", "timeframe_start"] full_refresh: - config_path: "secrets/config.json" configured_catalog_path: "integration_tests/configured_catalog.json" diff --git a/airbyte-integrations/connectors/source-outbrain-amplify/metadata.yaml b/airbyte-integrations/connectors/source-outbrain-amplify/metadata.yaml index 0e7bd169237f..502c3d43ef58 100644 --- a/airbyte-integrations/connectors/source-outbrain-amplify/metadata.yaml +++ b/airbyte-integrations/connectors/source-outbrain-amplify/metadata.yaml @@ -14,7 +14,6 @@ data: license: MIT name: Outbrain Amplify releaseStage: alpha - supportUrl: https://docs.airbyte.com/integrations/sources/outbrain-amplify documentationUrl: https://docs.airbyte.com/integrations/sources/outbrain-amplify tags: - language:low-code diff --git a/airbyte-integrations/connectors/source-paypal-transaction/.dockerignore b/airbyte-integrations/connectors/source-paypal-transaction/.dockerignore index 7d3fd691a105..d4b84ddd812b 100644 --- a/airbyte-integrations/connectors/source-paypal-transaction/.dockerignore +++ b/airbyte-integrations/connectors/source-paypal-transaction/.dockerignore @@ -1,6 +1,5 @@ * !Dockerfile -!Dockerfile.test !main.py !source_paypal_transaction !setup.py diff --git a/airbyte-integrations/connectors/source-paypal-transaction/Dockerfile b/airbyte-integrations/connectors/source-paypal-transaction/Dockerfile index 282bb021a007..e85773872d7d 100644 --- a/airbyte-integrations/connectors/source-paypal-transaction/Dockerfile +++ b/airbyte-integrations/connectors/source-paypal-transaction/Dockerfile @@ -1,16 +1,38 @@ -FROM python:3.9-slim +FROM python:3.9.11-alpine3.15 as base + +# build and load all requirements +FROM base as builder +WORKDIR /airbyte/integration_code + +# upgrade pip to the latest version +RUN apk --no-cache upgrade \ + && pip install --upgrade pip \ + && apk --no-cache add tzdata build-base -# Bash is installed for more convenient debugging. -RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* +COPY setup.py ./ +# install necessary packages to a temporary folder +RUN pip install --prefix=/install . + +# build a clean environment +FROM base WORKDIR /airbyte/integration_code -COPY source_paypal_transaction ./source_paypal_transaction + +# copy all loaded and built libraries to a pure basic image +COPY --from=builder /install /usr/local +# add default timezone settings +COPY --from=builder /usr/share/zoneinfo/Etc/UTC /etc/localtime +RUN echo "Etc/UTC" > /etc/timezone + +# bash is installed for more convenient debugging. +RUN apk --no-cache add bash + +# copy payload code only COPY main.py ./ -COPY setup.py ./ -RUN pip install . +COPY source_paypal_transaction ./source_paypal_transaction ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=2.0.0 +LABEL io.airbyte.version=2.1.0 LABEL io.airbyte.name=airbyte/source-paypal-transaction diff --git a/airbyte-integrations/connectors/source-paypal-transaction/README.md b/airbyte-integrations/connectors/source-paypal-transaction/README.md index 8ab3f609ab3a..e52cf5241f3e 100644 --- a/airbyte-integrations/connectors/source-paypal-transaction/README.md +++ b/airbyte-integrations/connectors/source-paypal-transaction/README.md @@ -1,32 +1,10 @@ # Paypal Transaction Source -This is the repository for the Paypal Transaction source connector, written in Python. -For information about how to use this connector within Airbyte, see [the documentation](https://docs.airbyte.io/integrations/sources/paypal-transaction). +This is the repository for the Paypal Transaction configuration based source connector. +For information about how to use this connector within Airbyte, see [the documentation](https://docs.airbyte.com/integrations/sources/paypal-transaction). ## Local development -### Prerequisites -**To iterate on this connector, make sure to complete this prerequisites section.** - -#### Build & Activate Virtual Environment and install dependencies -From this connector directory, create a virtual environment: -``` -python -m venv .venv -``` - -This will generate a virtualenv for this module in `.venv/`. Make sure this venv is active in your -development environment of choice. To activate it from the terminal, run: -``` -source .venv/bin/activate -pip install -r requirements.txt -``` -If you are in an IDE, follow your IDE's instructions to activate the virtualenv. - -Note that while we are installing dependencies from `requirements.txt`, you should only edit `setup.py` for your dependencies. `requirements.txt` is -used for editable installs (`pip install -e`) to pull in Python dependencies from the monorepo and will call `setup.py`. -If this is mumbo jumbo to you, don't worry about it, just put your deps in `setup.py` but install using `pip install -r requirements.txt` and everything -should work as you expect. - #### Building via Gradle You can also build the connector in Gradle. This is typically used in CI and not needed for your development workflow. @@ -36,22 +14,14 @@ To build using Gradle, from the Airbyte repository root, run: ``` #### Create credentials -**If you are a community contributor**, follow the instructions in the [documentation](https://docs.airbyte.io/integrations/sources/paypal-transaction) -to generate the necessary credentials. Then create a file `secrets/config.json` conforming to the `source_paypal_transaction/spec.json` file. +**If you are a community contributor**, follow the instructions in the [documentation](https://docs.airbyte.com/integrations/sources/paypal-transaction) +to generate the necessary credentials. Then create a file `secrets/config.json` conforming to the `source_paypal_transaction/spec.yaml` file. Note that any directory named `secrets` is gitignored across the entire Airbyte repo, so there is no danger of accidentally checking in sensitive information. See `integration_tests/sample_config.json` for a sample config file. **If you are an Airbyte core member**, copy the credentials in Lastpass under the secret name `source paypal-transaction test creds` and place them into `secrets/config.json`. -### Locally running the connector -``` -python main.py spec -python main.py check --config secrets/config.json -python main.py discover --config secrets/config.json -python main.py read --config secrets/config.json --catalog integration_tests/configured_catalog.json -``` - ### Locally running the connector docker image #### Build @@ -71,38 +41,20 @@ the Dockerfile. Then run any of the connector commands as follows: ``` docker run --rm airbyte/source-paypal-transaction:dev spec -docker run --rm -v $(pwd)/secrets:/secrets airbyte/source-paypal-transaction:dev check --config /secrets/config.json -docker run --rm -v $(pwd)/secrets:/secrets airbyte/source-paypal-transaction:dev discover --config /secrets/config.json -docker run --rm -v $(pwd)/secrets:/secrets -v $(pwd)/integration_tests:/integration_tests airbyte/source-paypal-transaction:dev read --config /secrets/config.json --catalog /integration_tests/configured_catalog.json +docker run --rm -v $(pwd)/secrets:/secrets airbyte/source-paypal-transaction:dev check --config /secrets/config_oauth.json +docker run --rm -v $(pwd)/secrets:/secrets airbyte/source-paypal-transaction:dev discover --config /secrets/config_oauth.json +docker run --rm -v $(pwd)/secrets:/secrets -v $(pwd)/integration_tests:/integration_tests airbyte/source-paypal-transaction:dev read --config /secrets/config_oauth.json --catalog /integration_tests/configured_catalog.json ``` ## Testing -Make sure to familiarize yourself with [pytest test discovery](https://docs.pytest.org/en/latest/goodpractices.html#test-discovery) to know how your test files and methods should be named. -First install test dependencies into your virtual environment: -``` -pip install '.[tests]' -``` -### Unit Tests -To run unit tests locally, from the connector directory run: -``` -python -m pytest unit_tests -``` -### Integration Tests -There are two types of integration tests: Acceptance Tests (Airbyte's test suite for all source connectors) and custom integration tests (which are specific to this connector). -#### Custom Integration tests -Place custom tests inside `integration_tests/` folder, then, from the connector root, run -``` -python -m pytest integration_tests -``` #### Acceptance Tests -Customize `acceptance-test-config.yml` file to configure tests. See [Connector Acceptance Tests](https://docs.airbyte.io/connector-development/testing-connectors/connector-acceptance-tests-reference) for more information. +Customize `acceptance-test-config.yml` file to configure tests. See [Connector Acceptance Tests](https://docs.airbyte.com/connector-development/testing-connectors/connector-acceptance-tests-reference) for more information. If your connector requires to create or destroy resources for use during acceptance tests create fixtures for it and place them inside integration_tests/acceptance.py. -To run your integration tests with acceptance tests, from the connector root, run + +To run your integration tests with Docker, run: ``` -docker build . --no-cache -t airbyte/source-paypal-transaction:dev \ -&& python -m pytest -p connector_acceptance_test.plugin +./acceptance-test-docker.sh ``` -To run your integration tests with docker ### Using gradle to run tests All commands should be run from airbyte project root. diff --git a/airbyte-integrations/connectors/source-paypal-transaction/__init__.py b/airbyte-integrations/connectors/source-paypal-transaction/__init__.py new file mode 100644 index 000000000000..c941b3045795 --- /dev/null +++ b/airbyte-integrations/connectors/source-paypal-transaction/__init__.py @@ -0,0 +1,3 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# diff --git a/airbyte-integrations/connectors/source-paypal-transaction/acceptance-test-config.yml b/airbyte-integrations/connectors/source-paypal-transaction/acceptance-test-config.yml index 38e6b7be325e..c4ebc718cf3b 100644 --- a/airbyte-integrations/connectors/source-paypal-transaction/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-paypal-transaction/acceptance-test-config.yml @@ -1,9 +1,11 @@ +# See [Connector Acceptance Tests](https://docs.airbyte.com/connector-development/testing-connectors/connector-acceptance-tests-reference) +# for more information about how to configure these tests connector_image: airbyte/source-paypal-transaction:dev test_strictness_level: high acceptance_tests: spec: tests: - - spec_path: source_paypal_transaction/spec.json + - spec_path: "source_paypal_transaction/spec.yaml" config_path: secrets/config_oauth.json backward_compatibility_tests_config: disable_for_version: "0.1.13" @@ -21,7 +23,7 @@ acceptance_tests: tests: - config_path: secrets/config_oauth.json backward_compatibility_tests_config: - disable_for_version: "1.0.0" # Balances schema changed + disable_for_version: "2.0.0" # Change in cursor field for transactions stream basic_read: tests: - config_path: secrets/config_oauth.json @@ -49,16 +51,19 @@ acceptance_tests: extra_fields: no exact_order: no extra_records: yes + fail_on_extra_columns: false incremental: tests: - config_path: secrets/config_oauth.json configured_catalog_path: integration_tests/configured_catalog.json future_state: future_state_path: integration_tests/abnormal_state.json - cursor_paths: - transactions: [ "date" ] - balances: [ "date" ] + skip_comprehensive_incremental_tests: true full_refresh: tests: - config_path: secrets/config_oauth.json + ignored_fields: + balances: + - name: last_refresh_time + bypass_reason: "field changes during every read" configured_catalog_path: integration_tests/configured_catalog.json diff --git a/airbyte-integrations/connectors/source-paypal-transaction/acceptance-test-docker.sh b/airbyte-integrations/connectors/source-paypal-transaction/acceptance-test-docker.sh index 5797d20fe9a7..b6d65deeccb4 100755 --- a/airbyte-integrations/connectors/source-paypal-transaction/acceptance-test-docker.sh +++ b/airbyte-integrations/connectors/source-paypal-transaction/acceptance-test-docker.sh @@ -1,2 +1,3 @@ #!/usr/bin/env sh + source "$(git rev-parse --show-toplevel)/airbyte-integrations/bases/connector-acceptance-test/acceptance-test-docker.sh" diff --git a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/__init__.py b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/__init__.py index e69de29bb2d1..c941b3045795 100644 --- a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/__init__.py +++ b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/__init__.py @@ -0,0 +1,3 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# diff --git a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/abnormal_state.json b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/abnormal_state.json index 565f41f6fca1..ee3c4b66de8d 100644 --- a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/abnormal_state.json +++ b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/abnormal_state.json @@ -3,7 +3,7 @@ "type": "STREAM", "stream": { "stream_state": { - "date": "2023-06-09T00:00:00+00:00" + "as_of_time": "2033-06-09T00:00:00Z" }, "stream_descriptor": { "name": "balances" @@ -14,11 +14,11 @@ "type": "STREAM", "stream": { "stream_state": { - "date": "2023-06-09T00:00:00+00:00" + "transaction_updated_date": "2033-06-09T00:00:00Z" }, "stream_descriptor": { "name": "transactions" } } } -] +] \ No newline at end of file diff --git a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/acceptance.py b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/acceptance.py index 82823254d266..9e6409236281 100644 --- a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/acceptance.py +++ b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/acceptance.py @@ -11,4 +11,6 @@ @pytest.fixture(scope="session", autouse=True) def connector_setup(): """This fixture is a placeholder for external resources that acceptance test might require.""" + # TODO: setup test dependencies if needed. otherwise remove the TODO comments yield + # TODO: clean up test dependencies diff --git a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/configured_catalog.json b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/configured_catalog.json index 699f09442f94..e0992dea17b0 100644 --- a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/configured_catalog.json +++ b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/configured_catalog.json @@ -5,7 +5,7 @@ "name": "transactions", "json_schema": {}, "source_defined_cursor": true, - "default_cursor_field": ["transaction_initiation_date"], + "default_cursor_field": ["transaction_updated_date"], "supported_sync_modes": ["full_refresh", "incremental"] }, "sync_mode": "incremental", diff --git a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/configured_catalog_balances.json b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/configured_catalog_balances.json index ca1887a40519..fa4ca9fa21ce 100644 --- a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/configured_catalog_balances.json +++ b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/configured_catalog_balances.json @@ -4,6 +4,7 @@ "stream": { "name": "balances", "json_schema": {}, + "default_cursor_field": ["as_of_time"], "supported_sync_modes": ["full_refresh", "incremental"] }, "sync_mode": "incremental", diff --git a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/configured_catalog_transactions.json b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/configured_catalog_transactions.json index 36b9a092df75..ec00ecab10e3 100644 --- a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/configured_catalog_transactions.json +++ b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/configured_catalog_transactions.json @@ -5,7 +5,7 @@ "name": "transactions", "json_schema": {}, "source_defined_cursor": true, - "default_cursor_field": ["transaction_initiation_date"], + "default_cursor_field": ["transaction_updated_date"], "supported_sync_modes": ["full_refresh", "incremental"] }, "sync_mode": "incremental", diff --git a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/expected_records.jsonl b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/expected_records.jsonl index 7841d256e49d..86cbdca7392b 100644 --- a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/expected_records.jsonl +++ b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/expected_records.jsonl @@ -1 +1 @@ -{"stream":"balances","data":{"balances":[{"currency":"USD","primary":true,"total_balance":{"currency_code":"USD","value":"0.00"},"available_balance":{"currency_code":"USD","value":"0.00"},"withheld_balance":{"currency_code":"USD","value":"0.00"}}],"account_id":"QJQSC8WXYCA2L","as_of_time":"2021-07-03T00:00:00+00:00","last_refresh_time":"2023-07-04T07:29:59Z"},"emitted_at":1688463837632} \ No newline at end of file +{"stream": "balances", "data": {"balances": [{"currency": "USD", "primary": true, "total_balance": {"currency_code": "USD", "value": "0.00"}, "available_balance": {"currency_code": "USD", "value": "0.00"}, "withheld_balance": {"currency_code": "USD", "value": "0.00"}}], "account_id": "QJQSC8WXYCA2L", "as_of_time": "2021-07-03T00:00:00Z", "last_refresh_time": "2023-09-18T13:29:59Z"}, "emitted_at": 1695051482452} \ No newline at end of file diff --git a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/expected_records_sandbox.jsonl b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/expected_records_sandbox.jsonl index 3d60f02eb69d..da4775fecc29 100644 --- a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/expected_records_sandbox.jsonl +++ b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/expected_records_sandbox.jsonl @@ -1,2 +1,4 @@ -{"stream":"transactions","data":{"transaction_info":{"paypal_account_id":"ZE5533HZPGMC6","transaction_id":"23N61105X92314351","transaction_event_code":"T0006","transaction_initiation_date":"2021-07-04T17:13:23+0000","transaction_updated_date":"2021-07-04T17:13:23+0000","transaction_amount":{"currency_code":"USD","value":"30.11"},"fee_amount":{"currency_code":"USD","value":"-1.17"},"insurance_amount":{"currency_code":"USD","value":"0.01"},"shipping_amount":{"currency_code":"USD","value":"1.03"},"shipping_discount_amount":{"currency_code":"USD","value":"1.00"},"transaction_status":"S","transaction_subject":"This is the payment transaction description.","ending_balance":{"currency_code":"USD","value":"202.58"},"available_balance":{"currency_code":"USD","value":"202.58"},"invoice_id":"48787580055","custom_field":"EBAY_EMS_90048630020055","protection_eligibility":"01"},"payer_info":{"account_id":"ZE5533HZPGMC6","email_address":"integration-test-buyer@airbyte.io","address_status":"Y","payer_status":"Y","payer_name":{"given_name":"test","surname":"buyer","alternate_full_name":"test buyer"},"country_code":"US"},"shipping_info":{"name":"Hello World","address":{"line1":"4thFloor","line2":"unit#34","city":"SAn Jose","state":"CA","country_code":"US","postal_code":"95131"}},"cart_info":{"item_details":[{"item_code":"1","item_name":"hat","item_description":"Brown color hat","item_quantity":"5","item_unit_price":{"currency_code":"USD","value":"3.00"},"item_amount":{"currency_code":"USD","value":"15.00"},"tax_amounts":[{"tax_amount":{"currency_code":"USD","value":"0.05"}}],"total_item_amount":{"currency_code":"USD","value":"15.05"},"invoice_number":"48787580055"},{"item_code":"product34","item_name":"handbag","item_description":"Black color hand bag","item_quantity":"1","item_unit_price":{"currency_code":"USD","value":"15.00"},"item_amount":{"currency_code":"USD","value":"15.00"},"tax_amounts":[{"tax_amount":{"currency_code":"USD","value":"0.02"}}],"total_item_amount":{"currency_code":"USD","value":"15.02"},"invoice_number":"48787580055"}]},"store_info":{},"auction_info":{},"incentive_info":{},"transaction_initiation_date":"2021-07-04T17:13:23+0000","transaction_id":"23N61105X92314351"},"emitted_at":1688463620839} -{"stream":"balances","data":{"balances":[{"currency":"USD","primary":true,"total_balance":{"currency_code":"USD","value":"173.64"},"available_balance":{"currency_code":"USD","value":"173.64"},"withheld_balance":{"currency_code":"USD","value":"0.00"}}],"account_id":"MDXWPD67GEP5W","as_of_time":"2021-07-03T00:00:00+00:00","last_refresh_time":"2023-07-04T04:59:59Z"},"emitted_at":1688463625694} +{"stream": "transactions", "data": {"transaction_info": {"paypal_account_id": "ZE5533HZPGMC6", "transaction_id": "23N61105X92314351", "transaction_event_code": "T0006", "transaction_initiation_date": "2021-07-04T17:13:23+0000", "transaction_updated_date": "2021-07-04T17:13:23+0000", "transaction_amount": {"currency_code": "USD", "value": "30.11"}, "fee_amount": {"currency_code": "USD", "value": "-1.17"}, "insurance_amount": {"currency_code": "USD", "value": "0.01"}, "shipping_amount": {"currency_code": "USD", "value": "1.03"}, "shipping_discount_amount": {"currency_code": "USD", "value": "1.00"}, "transaction_status": "S", "transaction_subject": "This is the payment transaction description.", "ending_balance": {"currency_code": "USD", "value": "202.58"}, "available_balance": {"currency_code": "USD", "value": "202.58"}, "invoice_id": "48787580055", "custom_field": "EBAY_EMS_90048630020055", "protection_eligibility": "01"}, "payer_info": {"account_id": "ZE5533HZPGMC6", "email_address": "integration-test-buyer@airbyte.io", "address_status": "Y", "payer_status": "Y", "payer_name": {"given_name": "test", "surname": "buyer", "alternate_full_name": "test buyer"}, "country_code": "US"}, "shipping_info": {"name": "Hello World", "address": {"line1": "4thFloor", "line2": "unit#34", "city": "SAn Jose", "state": "CA", "country_code": "US", "postal_code": "95131"}}, "cart_info": {"item_details": [{"item_code": "1", "item_name": "hat", "item_description": "Brown color hat", "item_quantity": "5", "item_unit_price": {"currency_code": "USD", "value": "3.00"}, "item_amount": {"currency_code": "USD", "value": "15.00"}, "tax_amounts": [{"tax_amount": {"currency_code": "USD", "value": "0.05"}}], "total_item_amount": {"currency_code": "USD", "value": "15.05"}, "invoice_number": "48787580055"}, {"item_code": "product34", "item_name": "handbag", "item_description": "Black color hand bag", "item_quantity": "1", "item_unit_price": {"currency_code": "USD", "value": "15.00"}, "item_amount": {"currency_code": "USD", "value": "15.00"}, "tax_amounts": [{"tax_amount": {"currency_code": "USD", "value": "0.02"}}], "total_item_amount": {"currency_code": "USD", "value": "15.02"}, "invoice_number": "48787580055"}]}, "store_info": {}, "auction_info": {}, "incentive_info": {}, "transaction_updated_date": "2021-07-04T17:13:23Z", "transaction_id": "23N61105X92314351"}, "emitted_at": 1694795587519} +{"stream": "transactions", "data": {"transaction_info": {"paypal_account_id": "ZE5533HZPGMC6", "transaction_id": "1FN09943JY662130R", "transaction_event_code": "T0006", "transaction_initiation_date": "2021-07-05T22:56:54+0000", "transaction_updated_date": "2021-07-05T22:56:54+0000", "transaction_amount": {"currency_code": "USD", "value": "30.11"}, "fee_amount": {"currency_code": "USD", "value": "-1.17"}, "insurance_amount": {"currency_code": "USD", "value": "0.01"}, "shipping_amount": {"currency_code": "USD", "value": "1.03"}, "shipping_discount_amount": {"currency_code": "USD", "value": "1.00"}, "transaction_status": "S", "transaction_subject": "This is the payment transaction description.", "ending_balance": {"currency_code": "USD", "value": "231.52"}, "available_balance": {"currency_code": "USD", "value": "231.52"}, "invoice_id": "65095789448", "custom_field": "EBAY_EMS_90048630020055", "protection_eligibility": "01"}, "payer_info": {"account_id": "ZE5533HZPGMC6", "email_address": "integration-test-buyer@airbyte.io", "address_status": "Y", "payer_status": "Y", "payer_name": {"given_name": "test", "surname": "buyer", "alternate_full_name": "test buyer"}, "country_code": "US"}, "shipping_info": {"name": "Hello World", "address": {"line1": "4thFloor", "line2": "unit#34", "city": "SAn Jose", "state": "CA", "country_code": "US", "postal_code": "95131"}}, "cart_info": {"item_details": [{"item_code": "1", "item_name": "hat", "item_description": "Brown color hat", "item_quantity": "5", "item_unit_price": {"currency_code": "USD", "value": "3.00"}, "item_amount": {"currency_code": "USD", "value": "15.00"}, "tax_amounts": [{"tax_amount": {"currency_code": "USD", "value": "0.05"}}], "total_item_amount": {"currency_code": "USD", "value": "15.05"}, "invoice_number": "65095789448"}, {"item_code": "product34", "item_name": "handbag", "item_description": "Black color hand bag", "item_quantity": "1", "item_unit_price": {"currency_code": "USD", "value": "15.00"}, "item_amount": {"currency_code": "USD", "value": "15.00"}, "tax_amounts": [{"tax_amount": {"currency_code": "USD", "value": "0.02"}}], "total_item_amount": {"currency_code": "USD", "value": "15.02"}, "invoice_number": "65095789448"}]}, "store_info": {}, "auction_info": {}, "incentive_info": {}, "transaction_updated_date": "2021-07-05T22:56:54Z", "transaction_id": "1FN09943JY662130R"}, "emitted_at": 1694795587522} +{"stream": "transactions", "data": {"transaction_info": {"paypal_account_id": "ZE5533HZPGMC6", "transaction_id": "0M443597T0019954R", "transaction_event_code": "T0006", "transaction_initiation_date": "2021-07-05T23:01:13+0000", "transaction_updated_date": "2021-07-05T23:01:13+0000", "transaction_amount": {"currency_code": "USD", "value": "30.11"}, "fee_amount": {"currency_code": "USD", "value": "-1.17"}, "insurance_amount": {"currency_code": "USD", "value": "0.01"}, "shipping_amount": {"currency_code": "USD", "value": "1.03"}, "shipping_discount_amount": {"currency_code": "USD", "value": "1.00"}, "transaction_status": "S", "transaction_subject": "This is the payment transaction description.", "ending_balance": {"currency_code": "USD", "value": "260.46"}, "available_balance": {"currency_code": "USD", "value": "260.46"}, "invoice_id": "41468340464", "custom_field": "EBAY_EMS_90048630020055", "protection_eligibility": "01"}, "payer_info": {"account_id": "ZE5533HZPGMC6", "email_address": "integration-test-buyer@airbyte.io", "address_status": "Y", "payer_status": "Y", "payer_name": {"given_name": "test", "surname": "buyer", "alternate_full_name": "test buyer"}, "country_code": "US"}, "shipping_info": {"name": "Hello World", "address": {"line1": "4thFloor", "line2": "unit#34", "city": "SAn Jose", "state": "CA", "country_code": "US", "postal_code": "95131"}}, "cart_info": {"item_details": [{"item_code": "1", "item_name": "hat", "item_description": "Brown color hat", "item_quantity": "5", "item_unit_price": {"currency_code": "USD", "value": "3.00"}, "item_amount": {"currency_code": "USD", "value": "15.00"}, "tax_amounts": [{"tax_amount": {"currency_code": "USD", "value": "0.05"}}], "total_item_amount": {"currency_code": "USD", "value": "15.05"}, "invoice_number": "41468340464"}, {"item_code": "product34", "item_name": "handbag", "item_description": "Black color hand bag", "item_quantity": "1", "item_unit_price": {"currency_code": "USD", "value": "15.00"}, "item_amount": {"currency_code": "USD", "value": "15.00"}, "tax_amounts": [{"tax_amount": {"currency_code": "USD", "value": "0.02"}}], "total_item_amount": {"currency_code": "USD", "value": "15.02"}, "invoice_number": "41468340464"}]}, "store_info": {}, "auction_info": {}, "incentive_info": {}, "transaction_updated_date": "2021-07-05T23:01:13Z", "transaction_id": "0M443597T0019954R"}, "emitted_at": 1694795587524} +{"stream": "balances", "data": {"balances": [{"currency": "USD", "primary": true, "total_balance": {"currency_code": "USD", "value": "173.64"}, "available_balance": {"currency_code": "USD", "value": "173.64"}, "withheld_balance": {"currency_code": "USD", "value": "0.00"}}], "account_id": "MDXWPD67GEP5W", "as_of_time": "2021-07-03T00:00:00Z", "last_refresh_time": "2023-09-18T08:59:59Z"}, "emitted_at": 1695051579296} \ No newline at end of file diff --git a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/invalid_config.json b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/invalid_config.json index 0b2938447d7d..a716a3e4255e 100644 --- a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/invalid_config.json +++ b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/invalid_config.json @@ -1,6 +1,6 @@ { "client_id": "AWAz___", - "secret": "ENC8__", + "client_secret": "ENC8__", "start_date": "2000-06-01T05:00:00+03:00", "is_sandbox": false } diff --git a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/invalid_config_oauth.json b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/invalid_config_oauth.json index 21019786e6a3..771ae5dbac0a 100644 --- a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/invalid_config_oauth.json +++ b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/invalid_config_oauth.json @@ -2,7 +2,7 @@ "credentials": { "auth_type": "oauth2.0", "client_id": "AWA__", - "secret": "ENC__", + "client_secret": "ENC__", "refresh_token": "__" }, "start_date": "2021-07-03T00:00:00+00:00", diff --git a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/sample_config.json b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/sample_config.json index 6f5dbf626fac..11d8539eeb3f 100644 --- a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/sample_config.json +++ b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/sample_config.json @@ -1,6 +1,6 @@ { "client_id": "PAYPAL_CLIENT_ID", - "secret": "PAYPAL_SECRET", + "client_secret": "PAYPAL_SECRET", "start_date": "2021-06-01T00:00:00+00:00", "is_sandbox": false } diff --git a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/sample_state.json b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/sample_state.json index 55e16864a243..830010c0927a 100644 --- a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/sample_state.json +++ b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/sample_state.json @@ -1,8 +1,8 @@ { "transactions": { - "date": "2021-06-04T17:34:43+00:00" + "transaction_updated_date": "2021-06-04T17:34:43+00:00" }, "balances": { - "date": "2021-06-04T17:34:43+00:00" + "as_of_time": "2021-06-04T17:34:43+00:00" } } diff --git a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/state.json b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/state.json index dc08b6e0fe0e..bbcff50acaf3 100644 --- a/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/state.json +++ b/airbyte-integrations/connectors/source-paypal-transaction/integration_tests/state.json @@ -1,8 +1,8 @@ { "transactions": { - "date": "2021-06-18T16:24:13+03:00" + "transaction_updated_date": "2021-06-18T16:24:13+03:00" }, "balances": { - "date": "2021-06-18T16:24:13+03:00" + "as_of_time": "2021-06-18T16:24:13+03:00" } } diff --git a/airbyte-integrations/connectors/source-paypal-transaction/metadata.yaml b/airbyte-integrations/connectors/source-paypal-transaction/metadata.yaml index 9966b577ccbd..4a16cb96646f 100644 --- a/airbyte-integrations/connectors/source-paypal-transaction/metadata.yaml +++ b/airbyte-integrations/connectors/source-paypal-transaction/metadata.yaml @@ -3,26 +3,27 @@ data: hosts: - api-m.paypal.com - api-m.sandbox.paypal.com + registries: + oss: + enabled: true + cloud: + enabled: true connectorSubtype: api connectorType: source definitionId: d913b0f2-cc51-4e55-a44c-8ba1697b9239 - dockerImageTag: 2.0.0 + dockerImageTag: 2.1.0 dockerRepository: airbyte/source-paypal-transaction githubIssueLabel: source-paypal-transaction icon: paypal.svg license: MIT name: Paypal Transaction - registries: - cloud: - enabled: true - oss: - enabled: true + releaseDate: 2021-06-10 releaseStage: generally_available + supportLevel: certified documentationUrl: https://docs.airbyte.com/integrations/sources/paypal-transaction tags: - - language:python + - language:low-code ab_internal: sl: 200 ql: 400 - supportLevel: certified metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-paypal-transaction/setup.py b/airbyte-integrations/connectors/source-paypal-transaction/setup.py index 402f69640e62..392f4ef4e438 100644 --- a/airbyte-integrations/connectors/source-paypal-transaction/setup.py +++ b/airbyte-integrations/connectors/source-paypal-transaction/setup.py @@ -6,7 +6,7 @@ from setuptools import find_packages, setup MAIN_REQUIREMENTS = [ - "airbyte-cdk", + "airbyte-cdk~=0.1", ] TEST_REQUIREMENTS = [ @@ -22,7 +22,7 @@ author_email="contact@airbyte.io", packages=find_packages(), install_requires=MAIN_REQUIREMENTS, - package_data={"": ["*.json", "schemas/*.json", "schemas/shared/*.json"]}, + package_data={"": ["*.json", "*.yaml", "schemas/*.json", "schemas/shared/*.json"]}, extras_require={ "tests": TEST_REQUIREMENTS, }, diff --git a/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/__init__.py b/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/__init__.py index 6487dc4b3d4f..c8ddefb08bf5 100644 --- a/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/__init__.py +++ b/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/__init__.py @@ -1,26 +1,7 @@ -""" -MIT License +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# -Copyright (c) 2021 Airbyte - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. -""" from .source import SourcePaypalTransaction diff --git a/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/components.py b/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/components.py new file mode 100644 index 000000000000..332549f3b617 --- /dev/null +++ b/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/components.py @@ -0,0 +1,63 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + +import base64 +import logging +from dataclasses import dataclass + +import backoff +import requests +from airbyte_cdk.sources.declarative.auth import DeclarativeOauth2Authenticator +from airbyte_cdk.sources.streams.http.exceptions import DefaultBackoffException + +logger = logging.getLogger("airbyte") + + +@dataclass +class PayPalOauth2Authenticator(DeclarativeOauth2Authenticator): + """Request example for API token extraction: + For `old_config` scenario: + curl -v POST https://api-m.sandbox.paypal.com/v1/oauth2/token \ + -H "Accept: application/json" \ + -H "Accept-Language: en_US" \ + -u "CLIENT_ID:SECRET" \ + -d "grant_type=client_credentials" + """ + + # config: Mapping[str, Any] + # client_id: Union[InterpolatedString, str] + # client_secret: Union[InterpolatedString, str] + # refresh_request_body: Optional[Mapping[str, Any]] = None + # token_refresh_endpoint: Union[InterpolatedString, str] + # grant_type: Union[InterpolatedString, str] = "refresh_token" + # expires_in_name: Union[InterpolatedString, str] = "expires_in" + # access_token_name: Union[InterpolatedString, str] = "access_token" + # parameters: InitVar[Mapping[str, Any]] + + def get_headers(self): + basic_auth = base64.b64encode(bytes(f"{self.get_client_id()}:{self.get_client_secret()}", "utf-8")).decode("utf-8") + return {"Authorization": f"Basic {basic_auth}"} + + @backoff.on_exception( + backoff.expo, + DefaultBackoffException, + on_backoff=lambda details: logger.info( + f"Caught retryable error after {details['tries']} tries. Waiting {details['wait']} seconds then retrying..." + ), + max_time=300, + ) + def _get_refresh_access_token_response(self): + try: + response = requests.request( + method="POST", url=self.get_token_refresh_endpoint(), data=self.build_refresh_request_body(), headers=self.get_headers() + ) + self._log_response(response) + response.raise_for_status() + return response.json() + except requests.exceptions.RequestException as e: + if e.response.status_code == 429 or e.response.status_code >= 500: + raise DefaultBackoffException(request=e.response.request, response=e.response) + raise + except Exception as e: + raise Exception(f"Error while refreshing access token: {e}") from e diff --git a/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/manifest.yaml b/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/manifest.yaml new file mode 100644 index 000000000000..c1f09efbb0c4 --- /dev/null +++ b/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/manifest.yaml @@ -0,0 +1,204 @@ +version: 0.50.2 +type: DeclarativeSource + +check: + type: CheckStream + stream_names: + - balances + +definitions: + selector: + type: RecordSelector + extractor: + type: DpathExtractor + field_path: + - "{{ parameters.field_path }}" + + requester: + type: HttpRequester + url_base: 'https://api-m.{{ "sandbox." if config["is_sandbox"] }}paypal.com/v1/reporting/' + path: "{{ parameters.path }}" + http_method: GET + request_headers: + Content-Type: application/json + authenticator: + type: CustomAuthenticator + class_name: source_paypal_transaction.components.PayPalOauth2Authenticator + client_id: '{{ config[''client_id''] }}' + client_secret: '{{ config[''client_secret''] }}' + refresh_request_body: + Content-Type: application/x-www-form-urlencoded + token_refresh_endpoint: 'https://api-m.{{ "sandbox." if config["is_sandbox"] }}paypal.com/v1/oauth2/token' + grant_type: client_credentials + expires_in_name: expires_in + access_token_name: access_token + error_handler: + type: CompositeErrorHandler + error_handlers: + - type: DefaultErrorHandler + backoff_strategies: + - type: ConstantBackoffStrategy + backoff_time_in_seconds: 300 + request_body_json: {} + + transactions_stream: + type: DeclarativeStream + primary_key: transaction_id + name: "transactions" + retriever: + type: SimpleRetriever + record_selector: + $ref: "#/definitions/selector" + paginator: + type: DefaultPaginator + page_token_option: + type: RequestOption + inject_into: request_parameter + field_name: page + page_size_option: + inject_into: request_parameter + field_name: page_size + type: RequestOption + pagination_strategy: + type: PageIncrement + start_from_page: 1 + page_size: 500 + requester: + $ref: "#/definitions/requester" + request_parameters: + fields: all + transformations: + - type: AddFields + fields: + - path: + - transaction_updated_date + value: >- + {{ format_datetime(record['transaction_info']['transaction_updated_date'], '%Y-%m-%dT%H:%M:%SZ') }} + - type: AddFields + fields: + - path: + - transaction_id + value: '{{ record[''transaction_info''][''transaction_id''] }}' + incremental_sync: + type: DatetimeBasedCursor + cursor_field: transaction_updated_date + cursor_datetime_formats: + - '%Y-%m-%dT%H:%M:%SZ' + datetime_format: '%Y-%m-%dT%H:%M:%SZ' + start_datetime: + type: MinMaxDatetime + datetime: >- + {{ max( format_datetime(config['start_date'], '%Y-%m-%dT%H:%M:%SZ'), day_delta(-1095, format='%Y-%m-%dT%H:%M:%SZ') ) }} + datetime_format: '%Y-%m-%dT%H:%M:%SZ' + start_time_option: + type: RequestOption + field_name: start_date + inject_into: request_parameter + end_time_option: + type: RequestOption + field_name: end_date + inject_into: request_parameter + end_datetime: + type: MinMaxDatetime + datetime: '{{ now_utc().strftime(''%Y-%m-%dT%H:%M:%SZ'') }}' + datetime_format: '%Y-%m-%dT%H:%M:%SZ' + step: P15D + cursor_granularity: PT1S + $parameters: + path: "transactions" + field_path: transaction_details + + balances_stream: + type: DeclarativeStream + primary_key: as_of_time + name: "balances" + retriever: + type: SimpleRetriever + record_selector: + type: RecordSelector + extractor: + type: DpathExtractor + field_path: [] + paginator: + type: DefaultPaginator + pagination_strategy: + type: PageIncrement + page_size: 500 + requester: + $ref: "#/definitions/requester" + request_parameters: {} + transformations: + - type: AddFields + fields: + - path: + - as_of_time + value: '{{ format_datetime(record[''as_of_time''], ''%Y-%m-%dT%H:%M:%SZ'') }}' + incremental_sync: + type: DatetimeBasedCursor + cursor_field: as_of_time + cursor_datetime_formats: + - '%Y-%m-%dT%H:%M:%SZ' + datetime_format: '%Y-%m-%dT%H:%M:%SZ' + start_datetime: + type: MinMaxDatetime + datetime: >- + {{ max( format_datetime(config['start_date'], '%Y-%m-%dT%H:%M:%SZ'), day_delta(-1095, format='%Y-%m-%dT%H:%M:%SZ') ) }} + datetime_format: '%Y-%m-%dT%H:%M:%SZ' + start_time_option: + type: RequestOption + field_name: as_of_time + inject_into: request_parameter + $parameters: + path: "balances" + +streams: + - "#/definitions/transactions_stream" + - "#/definitions/balances_stream" + +spec: + type: Spec + documentation_url: https://docs.airbyte.com/integrations/sources/paypal-transactions + connection_specification: + $schema: http://json-schema.org/draft-07/schema# + type: object + additionalProperties: true + required: + - client_id + - client_secret + - start_date + - is_sandbox + properties: + client_id: + type: string + title: Client ID + description: "The Client ID of your Paypal developer application." + airbyte_secret: true + order: 0 + client_secret: + type: string + title: Client secret + description: "The Client Secret of your Paypal developer application." + airbyte_secret: true + order: 1 + start_date: + title: Start Date + description: >- + Start Date for data extraction in ISO + format. Date must be in range from 3 years till 12 hrs before + present time. + type: string + examples: ["2021-06-11T23:59:59", "2021-06-11T23:59:59+00:00"] + pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}(|Z|[+-][0-9]{2}:[0-9]{2})$ + format: "date-time" + order: 2 + is_sandbox: + title: "Sandbox" + description: "Determines whether to use the sandbox or production environment." + type: "boolean" + default: false + refresh_token: + type: "string" + title: "Refresh token" + description: "The key to refresh the expired access token." + airbyte_secret: true \ No newline at end of file diff --git a/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/schemas/balances.json b/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/schemas/balances.json index 5ec4c8f3ac3d..fa69e2db398b 100644 --- a/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/schemas/balances.json +++ b/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/schemas/balances.json @@ -1,6 +1,7 @@ { "$schema": "https://json-schema.org/draft-07/schema#", "type": ["null", "object"], + "additionalProperties": true, "properties": { "balances": { "type": ["null", "array"], diff --git a/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/schemas/transactions.json b/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/schemas/transactions.json index 82a07b42e9ab..351bf5762b7e 100644 --- a/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/schemas/transactions.json +++ b/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/schemas/transactions.json @@ -1,9 +1,11 @@ { "$schema": "http://json-schema.org/draft-07/schema#", "type": ["null", "object"], + "additionalProperties": true, "properties": { "transaction_info": { "type": ["null", "object"], + "additionalProperties": true, "properties": { "paypal_reference_id": { "type": ["null", "string"], @@ -40,6 +42,7 @@ }, "transaction_amount": { "type": ["null", "object"], + "additionalProperties": true, "properties": { "currency_code": { "type": "string", @@ -54,6 +57,7 @@ }, "fee_amount": { "type": ["null", "object"], + "additionalProperties": true, "properties": { "currency_code": { "type": "string", @@ -68,6 +72,7 @@ }, "insurance_amount": { "type": ["null", "object"], + "additionalProperties": true, "properties": { "currency_code": { "type": "string", @@ -82,6 +87,7 @@ }, "shipping_amount": { "type": ["null", "object"], + "additionalProperties": true, "properties": { "currency_code": { "type": "string", @@ -96,6 +102,7 @@ }, "shipping_discount_amount": { "type": ["null", "object"], + "additionalProperties": true, "properties": { "currency_code": { "type": "string", @@ -137,8 +144,13 @@ "type": ["null", "string"], "format": "date-time" }, + "transaction_updated_date": { + "type": ["null", "string"], + "format": "date-time" + }, "payer_info": { "type": ["null", "object"], + "additionalProperties": true, "properties": { "account_id": { "type": ["null", "string"], @@ -158,6 +170,7 @@ }, "payer_name": { "type": ["null", "object"], + "additionalProperties": true, "properties": { "given_name": { "type": ["null", "string"], @@ -181,6 +194,7 @@ }, "shipping_info": { "type": ["null", "object"], + "additionalProperties": true, "properties": { "name": { "type": ["null", "string"], @@ -188,6 +202,7 @@ }, "address": { "type": ["null", "object"], + "additionalProperties": true, "properties": { "line1": { "type": ["null", "string"] @@ -213,11 +228,13 @@ }, "cart_info": { "type": ["null", "object"], + "additionalProperties": true, "properties": { "item_details": { "type": "array", "items": { "type": ["null", "object"], + "additionalProperties": true, "properties": { "item_code": { "type": ["null", "string"], @@ -235,6 +252,7 @@ }, "item_unit_price": { "type": ["null", "object"], + "additionalProperties": true, "properties": { "currency_code": { "type": "string", @@ -249,6 +267,7 @@ }, "item_amount": { "type": ["null", "object"], + "additionalProperties": true, "properties": { "currency_code": { "type": "string", @@ -265,9 +284,11 @@ "type": "array", "items": { "type": ["null", "object"], + "additionalProperties": true, "properties": { "tax_amount": { "type": ["null", "object"], + "additionalProperties": true, "properties": { "currency_code": { "type": "string", @@ -285,6 +306,7 @@ }, "total_item_amount": { "type": ["null", "object"], + "additionalProperties": true, "properties": { "currency_code": { "type": "string", @@ -308,6 +330,7 @@ }, "store_info": { "type": ["null", "object"], + "additionalProperties": true, "properties": { "store_id": { "type": ["null", "string"], @@ -321,6 +344,7 @@ }, "auction_info": { "type": ["null", "object"], + "additionalProperties": true, "properties": { "auction_site": { "type": ["null", "string"], @@ -341,11 +365,13 @@ }, "incentive_info": { "type": ["null", "object"], + "additionalProperties": true, "properties": { "incentive_details": { "type": "array", "items": { "type": "object", + "additionalProperties": true, "properties": { "incentive_type": { "type": ["null", "string"], @@ -357,6 +383,7 @@ }, "incentive_amount": { "type": "object", + "additionalProperties": true, "properties": { "currency_code": { "type": "string", diff --git a/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/source.py b/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/source.py index 2fbb106fd3e5..afd56a9278a1 100644 --- a/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/source.py +++ b/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/source.py @@ -2,545 +2,17 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # -import base64 -import json -import logging -import time -from abc import ABC -from datetime import datetime, timedelta -from typing import Any, Callable, Dict, Iterable, List, Mapping, MutableMapping, Optional, Tuple, Union +from airbyte_cdk.sources.declarative.yaml_declarative_source import YamlDeclarativeSource -import requests -from airbyte_cdk.models import SyncMode -from airbyte_cdk.sources import AbstractSource -from airbyte_cdk.sources.streams import Stream -from airbyte_cdk.sources.streams.availability_strategy import AvailabilityStrategy -from airbyte_cdk.sources.streams.http import HttpStream -from airbyte_cdk.sources.streams.http.auth import HttpAuthenticator, Oauth2Authenticator -from airbyte_cdk.sources.utils.transform import TransformConfig, TypeTransformer -from dateutil.parser import isoparse +""" +This file provides the necessary constructs to interpret a provided declarative YAML configuration file into +source connector. -from .utils import middle_date_slices +WARNING: Do not modify this file. +""" -class PaypalHttpException(Exception): - """HTTPError Exception with detailed info""" - - def __init__(self, error: requests.exceptions.HTTPError): - self.error = error - - def __str__(self): - message = repr(self.error) - - if self.error.response.content: - details = self.error_message() - message = f"{message} Details: {details}" - - return message - - def error_message(self): - content = self.error.response.content.decode() - try: - details = json.loads(content) - except json.decoder.JSONDecodeError: - details = content - - return details - - def __repr__(self): - return self.__str__() - - -def get_endpoint(is_sandbox: bool = False) -> str: - if is_sandbox: - return "https://api-m.sandbox.paypal.com" - - return "https://api-m.paypal.com" - - -class PaypalTransactionStream(HttpStream, ABC): - """Abstract class for Paypal Transaction Stream. - - Important note about 'start_date' params: - 'start_date' is one of required params, it comes from spec configuration or from stream state. - In both cases it must meet the following conditions: - - minimum_allowed_start_date <= start_date <= end_date <= last_refreshed_datetime <= now() - - otherwise API throws an "Data for the given start date is not available" error. - - So the prevent this error 'start_date' will be reset to: - minimum_allowed_start_date - if 'start_date' is too old - min(maximum_allowed_start_date, last_refreshed_datetime) - if 'start_date' is too recent - """ - - page_size = "500" # API limit - - # Date limits are needed to prevent API error: "Data for the given start date is not available" - # API limit: (now() - start_date_min) <= start_date <= end_date <= last_refreshed_datetime <= now - start_date_min: Mapping[str, int] = {"days": 3 * 365} # API limit - 3 years - last_refreshed_datetime: Optional[datetime] = None # extracted from API response. Indicate the most resent possible start_date - stream_slice_period: Mapping[str, int] = {"days": 15} # max period is 31 days (API limit) - - requests_per_minute: int = 30 # API limit is 50 reqs/min from 1 IP to all endpoints, otherwise IP is banned for 5 mins - # if the stream has nested cursor_field, we should trry to unnest it once parsing the recods to avoid normalization conflicts. - unnest_cursor: bool = False - unnest_pk: bool = False - nested_object: str = None - - def __init__( - self, - authenticator: HttpAuthenticator, - start_date: Union[datetime, str], - end_date: Union[datetime, str] = None, - is_sandbox: bool = False, - **kwargs, - ): - now = datetime.now().replace(microsecond=0).astimezone() - - if end_date and isinstance(end_date, str): - end_date = isoparse(end_date) - self.end_date: datetime = end_date if end_date and end_date < now else now - - if start_date and isinstance(start_date, str): - start_date = isoparse(start_date) - - minimum_allowed_start_date = now - timedelta(**self.start_date_min) - if start_date < minimum_allowed_start_date: - self.logger.log( - logging.WARN, - f'Stream {self.name}: start_date "{start_date.isoformat()}" is too old. ' - + f'Reset start_date to the minimum_allowed_start_date "{minimum_allowed_start_date.isoformat()}"', - ) - start_date = minimum_allowed_start_date - - self.maximum_allowed_start_date = min(now, self.end_date) - if start_date > self.maximum_allowed_start_date: - self.logger.log( - logging.WARN, - f'Stream {self.name}: start_date "{start_date.isoformat()}" is too recent. ' - + f'Reset start_date to the maximum_allowed_start_date "{self.maximum_allowed_start_date.isoformat()}"', - ) - start_date = self.maximum_allowed_start_date - - self.start_date = start_date - - self.is_sandbox = is_sandbox - - super().__init__(authenticator=authenticator) - - def validate_input_dates(self): - # Validate input dates - if self.start_date > self.end_date: - raise Exception(f"start_date {self.start_date.isoformat()} is greater than end_date {self.end_date.isoformat()}") - - @property - def url_base(self) -> str: - return f"{get_endpoint(self.is_sandbox)}/v1/reporting/" - - @property - def availability_strategy(self) -> Optional["AvailabilityStrategy"]: - return None - - def request_headers(self, **kwargs) -> Mapping[str, Any]: - return {"Content-Type": "application/json"} - - def backoff_time(self, response: requests.Response) -> Optional[float]: - # API limit is 50 reqs/min from 1 IP to all endpoints, otherwise IP is banned for 5 mins - return 5 * 60.1 - - def parse_response(self, response: requests.Response, **kwargs) -> Iterable[Mapping]: - json_response = response.json() - - # Save extracted last_refreshed_datetime to use it as maximum allowed start_date - last_refreshed_datetime = json_response.get("last_refreshed_datetime") - self.last_refreshed_datetime = isoparse(last_refreshed_datetime) if last_refreshed_datetime else None - - if self.data_field is not None: - data = json_response.get(self.data_field, []) - else: - data = [json_response] - - for record in data: - # In order to support direct datetime string comparison (which is performed in incremental acceptance tests) - # convert any date format to python iso format string for date based cursors - self.update_field(record, self.cursor_field, lambda date: isoparse(date).isoformat()) - # unnest cursor_field to handle normalization correctly - if self.unnest_cursor: - self.unnest_field(record, self.nested_object, self.cursor_field) - # unnest primary_key to handle normalization correctly - if self.unnest_pk: - self.unnest_field(record, self.nested_object, self.primary_key) - yield record - - # sleep for 1-2 secs to not reach rate limit: 50 requests per minute - time.sleep(60 / self.requests_per_minute) - - @staticmethod - def unnest_field(record: Mapping[str, Any], unnest_from: Dict, cursor_field: str): - """ - Unnest cursor_field to the root level of the record. - """ - if unnest_from in record: - record[cursor_field] = record.get(unnest_from).get(cursor_field) - - @staticmethod - def update_field(record: Mapping[str, Any], field_path: Union[List[str], str], update: Callable[[Any], None]): - if not isinstance(field_path, List): - field_path = [field_path] - - last_field = field_path[-1] - data = PaypalTransactionStream.get_field(record, field_path[:-1]) - if data and last_field in data: - data[last_field] = update(data[last_field]) - - @staticmethod - def get_field(record: Mapping[str, Any], field_path: Union[List[str], str]): - - if not isinstance(field_path, List): - field_path = [field_path] - - data = record - for attr in field_path: - if data and isinstance(data, dict): - data = data.get(attr) - else: - return None - - return data - - @staticmethod - def max_records_in_response_reached(exception: Exception, **kwargs): - message = exception.error_message() - return message.get("name") == "RESULTSET_TOO_LARGE" - - def get_updated_state(self, current_stream_state: MutableMapping[str, Any], latest_record: Mapping[str, Any]) -> Mapping[str, any]: - # This method is called once for each record returned from the API to compare the cursor field value in that record with the current state - # we then return an updated state object. If this is the first time we run a sync or no state was passed, current_stream_state will be None. - latest_record_date_str: str = self.get_field(latest_record, self.cursor_field) - - if current_stream_state and "date" in current_stream_state and latest_record_date_str: - # isoparse supports different formats, like: - # python iso format: 2021-06-04T00:00:00+03:00 - # format from transactions record: 2021-06-04T00:00:00+0300 - # format from balances record: 2021-06-02T00:00:00Z - latest_record_date = isoparse(latest_record_date_str) - current_parsed_date = isoparse(current_stream_state["date"]) - - return {"date": max(current_parsed_date, latest_record_date).isoformat()} - else: - return {"date": self.start_date.isoformat()} - - def get_last_refreshed_datetime(self, sync_mode): - """Get last_refreshed_datetime attribute from API response by running PaypalTransactionStream().read_records() - with 'empty' stream_slice (range=0) - - last_refreshed_datetime indicates the maximum available start_date for which API has data. - If request start_date > last_refreshed_datetime then API throws an error: - "Data for the given start date is not available" - """ - paypal_stream = self.__class__( - authenticator=self.authenticator, - start_date=self.start_date, - end_date=self.start_date, - is_sandbox=self.is_sandbox, - ) - stream_slice = { - "start_date": self.start_date.isoformat(), - "end_date": self.start_date.isoformat(), - } - list(paypal_stream.read_records(sync_mode=sync_mode, stream_slice=stream_slice)) - return paypal_stream.last_refreshed_datetime - - def stream_slices( - self, sync_mode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None - ) -> Iterable[Optional[Mapping[str, any]]]: - """ - Returns a list of slices for each day (by default) between the start date and end date. - The return value is a list of dicts {'start_date': date_string, 'end_date': date_string}. - """ - period = timedelta(**self.stream_slice_period) - - # get last_refreshed_datetime from API response to use as maximum allowed start_date - self.last_refreshed_datetime = self.get_last_refreshed_datetime(sync_mode) - if self.last_refreshed_datetime: - self.logger.info(f"Maximum allowed start_date is {self.last_refreshed_datetime} based on info from API response") - self.maximum_allowed_start_date = min(self.last_refreshed_datetime, self.maximum_allowed_start_date) - - slice_start_date = self.start_date - - if stream_state: - stream_state_date = isoparse(stream_state.get("date")) - - # slice_start_date should be the most recent date: - slice_start_date = max(slice_start_date, stream_state_date) - - slices = [] - while slice_start_date <= self.maximum_allowed_start_date: - slices.append( - { - "start_date": slice_start_date.isoformat(), - "end_date": min(slice_start_date + period, self.end_date).isoformat(), - } - ) - slice_start_date += period - - return slices - - def _prepared_request( - self, stream_slice: Mapping[str, Any] = None, stream_state: Mapping[str, Any] = None, next_page_token: Optional[dict] = None - ): - request_headers = self.request_headers(stream_state=stream_state, stream_slice=stream_slice, next_page_token=next_page_token) - request = self._create_prepared_request( - path=self.path(stream_state=stream_state, stream_slice=stream_slice, next_page_token=next_page_token), - headers=dict(request_headers, **self.authenticator.get_auth_header()), - params=self.request_params(stream_state=stream_state, stream_slice=stream_slice, next_page_token=next_page_token), - json=self.request_body_json(stream_state=stream_state, stream_slice=stream_slice, next_page_token=next_page_token), - data=self.request_body_data(stream_state=stream_state, stream_slice=stream_slice, next_page_token=next_page_token), - ) - request_kwargs = self.request_kwargs(stream_state=stream_state, stream_slice=stream_slice, next_page_token=next_page_token) - - return request, request_kwargs - - def read_records( - self, - sync_mode: SyncMode, - cursor_field: List[str] = None, - stream_slice: Mapping[str, Any] = None, - stream_state: Mapping[str, Any] = None, - ) -> Iterable[Mapping[str, Any]]: - stream_state = stream_state or {} - pagination_complete = False - next_page_token = None - while not pagination_complete: - request, request_kwargs = self._prepared_request( - stream_state=stream_state, stream_slice=stream_slice, next_page_token=next_page_token - ) - - try: - response = self._send_request(request, request_kwargs) - except PaypalHttpException as exception: - if self.max_records_in_response_reached(exception) and (date_slices := middle_date_slices(stream_slice)): - for date_slice in date_slices: - yield from self.read_records( - sync_mode, cursor_field=cursor_field, stream_slice=date_slice, stream_state=stream_state - ) - break - raise exception - - yield from self.parse_response(response, stream_state=stream_state, stream_slice=stream_slice) - - next_page_token = self.next_page_token(response) - if not next_page_token: - pagination_complete = True - - # Always return an empty generator just in case no records were ever yielded - yield from [] - - def _send_request(self, request: requests.PreparedRequest, request_kwargs: Mapping[str, Any]) -> requests.Response: - try: - return super()._send_request(request, request_kwargs) - except requests.exceptions.HTTPError as http_error: - raise PaypalHttpException(http_error) - - -class Transactions(PaypalTransactionStream): - """List Paypal Transactions on a specific date range - API Docs: https://developer.paypal.com/docs/integration/direct/transaction-search/#list-transactions - Endpoint: /v1/reporting/transactions - """ - - data_field = "transaction_details" - nested_object = "transaction_info" - - primary_key = "transaction_id" - cursor_field = "transaction_initiation_date" - - unnest_cursor = True - unnest_pk = True - - transformer = TypeTransformer(TransformConfig.CustomSchemaNormalization) - - # TODO handle API error when 1 request returns more than 10000 records. - # https://github.com/airbytehq/airbyte/issues/4404 - records_per_request = 10000 - - def path(self, **kwargs) -> str: - return "transactions" - - def next_page_token(self, response: requests.Response) -> Optional[Mapping[str, Any]]: - decoded_response = response.json() - total_pages = decoded_response.get("total_pages") - page_number = decoded_response.get("page") - if page_number < total_pages: - return {"page": page_number + 1} - else: - return None - - def request_params( - self, stream_state: Mapping[str, Any], stream_slice: Mapping[str, any] = None, next_page_token: Mapping[str, Any] = None - ) -> MutableMapping[str, Any]: - page_number = 1 - if next_page_token: - page_number = next_page_token.get("page") - - return { - "start_date": stream_slice["start_date"], - "end_date": stream_slice["end_date"], - "fields": "all", - "page_size": self.page_size, - "page": page_number, - } - - @transformer.registerCustomTransform - def transform_function(original_value: Any, field_schema: Dict[str, Any]) -> Any: - if isinstance(original_value, str) and field_schema["type"] == "number": - return float(original_value) - elif isinstance(original_value, str) and field_schema["type"] == "integer": - return int(original_value) - else: - return original_value - - -class Balances(PaypalTransactionStream): - """Get account balance on a specific date - API Docs: https://developer.paypal.com/docs/integration/direct/transaction-search/#check-balancess - """ - - primary_key = "as_of_time" - cursor_field = "as_of_time" - data_field = None - - def path(self, **kwargs) -> str: - return "balances" - - def request_params( - self, stream_state: Mapping[str, Any], stream_slice: Mapping[str, any] = None, next_page_token: Mapping[str, Any] = None - ) -> MutableMapping[str, Any]: - return { - "as_of_time": stream_slice["start_date"], - } - - def next_page_token(self, response: requests.Response) -> Optional[Mapping[str, Any]]: - return None - - -class PayPalOauth2Authenticator(Oauth2Authenticator): - """Request example for API token extraction: - For `old_config` scenario: - curl -v POST https://api-m.sandbox.paypal.com/v1/oauth2/token \ - -H "Accept: application/json" \ - -H "Accept-Language: en_US" \ - -u "CLIENT_ID:SECRET" \ - -d "grant_type=client_credentials" - """ - - def __init__(self, config: Dict): - self.old_config: bool = False - # default auth args - self.auth_args: Dict = { - "token_refresh_endpoint": f"{get_endpoint(config['is_sandbox'])}/v1/oauth2/token", - "refresh_token": "", - } - # support old configs - if "client_id" in config and ("client_secret" in config or "secret" in config): - self.old_config = True - client_secret = config.get("client_secret", config.get("secret")) - self.auth_args.update( - **{"client_id": config["client_id"], "client_secret": client_secret, "refresh_token": config.get("refresh_token")} - ) - # new configs - if "credentials" in config: - credentials = config.get("credentials") - auth_type = credentials.get("auth_type") - self.auth_args.update(**{"client_id": credentials["client_id"], "client_secret": credentials["client_secret"]}) - if auth_type == "oauth2.0": - self.auth_args["refresh_token"] = credentials["refresh_token"] - elif auth_type == "private_oauth": - self.old_config = True - - self.config = config - super().__init__(**self.auth_args) - - def get_headers(self): - # support old configs - if self.old_config: - return {"Accept": "application/json", "Accept-Language": "en_US"} - # new configs - basic_auth = base64.b64encode(bytes(f"{self.client_id}:{self.client_secret}", "utf-8")).decode("utf-8") - return {"Authorization": f"Basic {basic_auth}"} - - def get_refresh_request_body(self) -> Mapping[str, Any]: - # support old configs - if self.old_config: - return {"grant_type": "client_credentials"} - # new configs - return {"grant_type": "refresh_token", "refresh_token": self.refresh_token} - - def refresh_access_token(self) -> Tuple[str, int]: - """ - returns a tuple of (access_token, token_lifespan_in_seconds) - """ - request_args = { - "url": self.token_refresh_endpoint, - "data": self.get_refresh_request_body(), - "headers": self.get_headers(), - } - try: - # support old configs - if self.old_config: - request_args["auth"] = (self.client_id, self.client_secret) - response = requests.post(**request_args) - response.raise_for_status() - response_json = response.json() - return response_json["access_token"], response_json["expires_in"] - except Exception as e: - raise Exception(f"Error while refreshing access token: {e}") from e - - -class SourcePaypalTransaction(AbstractSource): - def check_connection(self, logger, config) -> Tuple[bool, any]: - """ - :param config: the user-input config object conforming to the connector's spec.json - :param logger: logger object - :return Tuple[bool, any]: (True, None) if the input config can be used to connect to the API successfully, (False, error) otherwise. - """ - authenticator = PayPalOauth2Authenticator(config) - - # Try to get API TOKEN - token = authenticator.get_access_token() - if not token: - return False, "Unable to fetch Paypal API token due to incorrect client_id or secret" - - # Try to initiate a stream and validate input date params - try: - # validate input date ranges - Transactions(authenticator=authenticator, **config).validate_input_dates() - - # validate if Paypal API is able to extract data for given start_data - start_date = isoparse(config["start_date"]) - end_date = start_date + timedelta(days=1) - stream_slice = { - "start_date": start_date.isoformat(), - "end_date": end_date.isoformat(), - } - records = Transactions(authenticator=authenticator, **config).read_records(sync_mode=None, stream_slice=stream_slice) - # Try to read one value from records iterator - next(records, None) - return True, None - except Exception as e: - if "Data for the given start date is not available" in repr(e): - return False, f"Data for the given start date ({config['start_date']}) is not available, please use more recent start date" - else: - return False, e - - def streams(self, config: Mapping[str, Any]) -> List[Stream]: - """ - :param config: A Mapping of the user input configuration as defined in the connector spec. - """ - authenticator = PayPalOauth2Authenticator(config) - - return [ - Transactions(authenticator=authenticator, **config), - Balances(authenticator=authenticator, **config), - ] +# Declarative Source +class SourcePaypalTransaction(YamlDeclarativeSource): + def __init__(self): + super().__init__(**{"path_to_yaml": "manifest.yaml"}) diff --git a/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/spec.json b/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/spec.json deleted file mode 100644 index 8dcdd401518f..000000000000 --- a/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/spec.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "documentationUrl": "https://docs.airbyte.com/integrations/sources/paypal-transactions", - "connectionSpecification": { - "$schema": "http://json-schema.org/draft-07/schema#", - "title": "Paypal Transaction Search", - "type": "object", - "required": ["client_id", "client_secret", "start_date", "is_sandbox"], - "additionalProperties": true, - "properties": { - "client_id": { - "type": "string", - "title": "Client ID", - "description": "The Client ID of your Paypal developer application.", - "airbyte_secret": true - }, - "client_secret": { - "type": "string", - "title": "Client secret", - "description": "The Client Secret of your Paypal developer application.", - "airbyte_secret": true - }, - "refresh_token": { - "type": "string", - "title": "Refresh token", - "description": "The key to refresh the expired access token.", - "airbyte_secret": true - }, - "start_date": { - "type": "string", - "title": "Start Date", - "description": "Start Date for data extraction in ISO format. Date must be in range from 3 years till 12 hrs before present time.", - "examples": ["2021-06-11T23:59:59", "2021-06-11T23:59:59+00:00"], - "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}(|Z|[+-][0-9]{2}:[0-9]{2})$", - "format": "date-time" - }, - "is_sandbox": { - "title": "Sandbox", - "description": "Determines whether to use the sandbox or production environment.", - "type": "boolean", - "default": false - } - } - } -} diff --git a/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/utils.py b/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/utils.py deleted file mode 100644 index 732a5119fcb3..000000000000 --- a/airbyte-integrations/connectors/source-paypal-transaction/source_paypal_transaction/utils.py +++ /dev/null @@ -1,30 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -from datetime import datetime - - -def to_datetime_str(date: datetime) -> datetime: - """ - Returns the formated datetime string. - :: Output example: '2021-07-15T0:0:0+00:00' FORMAT : "%Y-%m-%dT%H:%M:%S%z" - """ - return datetime.strptime(date, "%Y-%m-%dT%H:%M:%S%z") - - -def middle_date_slices(stream_slice): - """Returns the mid-split datetime slices.""" - start_date, end_date = to_datetime_str(stream_slice["start_date"]), to_datetime_str(stream_slice["end_date"]) - if start_date < end_date: - middle_date = start_date + (end_date - start_date) / 2 - return [ - { - "start_date": start_date.isoformat(), - "end_date": middle_date.isoformat(), - }, - { - "start_date": middle_date.isoformat(), - "end_date": end_date.isoformat(), - }, - ] diff --git a/airbyte-integrations/connectors/source-paypal-transaction/unit_tests/conftest.py b/airbyte-integrations/connectors/source-paypal-transaction/unit_tests/conftest.py deleted file mode 100644 index 8e2333572304..000000000000 --- a/airbyte-integrations/connectors/source-paypal-transaction/unit_tests/conftest.py +++ /dev/null @@ -1,102 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -import json -import pathlib - -import pytest -from source_paypal_transaction.source import PayPalOauth2Authenticator, SourcePaypalTransaction - - -@pytest.fixture() -def api_endpoint(): - return "https://api-m.paypal.com" - - -@pytest.fixture() -def sandbox_api_endpoint(): - return "https://api-m.sandbox.paypal.com" - - -@pytest.fixture(autouse=True) -def time_sleep_mock(mocker): - time_mock = mocker.patch("time.sleep", lambda x: None) - yield time_mock - - -@pytest.fixture(autouse=True) -def transactions(request): - file = pathlib.Path(request.node.fspath.strpath) - transaction = file.with_name("transaction.json") - with transaction.open() as fp: - return json.load(fp) - - -@pytest.fixture() -def prod_config(): - """ - Credentials for oauth2.0 authorization - """ - return { - "client_id": "some_client_id", - "client_secret": "some_secret", - "start_date": "2021-07-01T00:00:00+00:00", - "end_date": "2021-07-10T00:00:00+00:00", - "is_sandbox": False, - } - - -@pytest.fixture() -def sandbox_config(): - """ - Credentials for oauth2.0 authorization - """ - return { - "client_id": "some_client_id", - "client_secret": "some_secret", - "start_date": "2021-07-01T00:00:00+00:00", - "end_date": "2021-07-10T00:00:00+00:00", - "is_sandbox": True, - } - - -@pytest.fixture() -def new_prod_config(): - """ - Credentials for oauth2.0 authorization - """ - return { - "credentials": { - "auth_type": "oauth2.0", - "client_id": "some_client_id", - "client_secret": "some_client_secret", - "refresh_token": "some_refresh_token", - }, - "start_date": "2021-07-01T00:00:00+00:00", - "end_date": "2021-07-10T00:00:00+00:00", - "is_sandbox": False, - } - - -@pytest.fixture() -def error_while_refreshing_access_token(): - """ - Error raised when using incorrect access token - """ - return "Error while refreshing access token: 'access_token'" - - -@pytest.fixture() -def authenticator_instance(prod_config): - return PayPalOauth2Authenticator(prod_config) - - -@pytest.fixture() -def new_format_authenticator_instance(new_prod_config): - return PayPalOauth2Authenticator(new_prod_config) - - -@pytest.fixture() -def source_instance(): - return SourcePaypalTransaction() diff --git a/airbyte-integrations/connectors/source-paypal-transaction/unit_tests/test_source.py b/airbyte-integrations/connectors/source-paypal-transaction/unit_tests/test_source.py deleted file mode 100644 index 91c118ecb81a..000000000000 --- a/airbyte-integrations/connectors/source-paypal-transaction/unit_tests/test_source.py +++ /dev/null @@ -1,62 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -from unittest.mock import MagicMock - -from source_paypal_transaction.source import PaypalHttpException, PayPalOauth2Authenticator, get_endpoint - - -class TestAuthentication: - def test_init_token_authentication_init(self, authenticator_instance): - assert isinstance(authenticator_instance, PayPalOauth2Authenticator) - - def test_get_refresh_request_body(self, authenticator_instance): - expected_body = {"grant_type": "client_credentials"} - assert authenticator_instance.get_refresh_request_body() == expected_body - - def test_oauth2_refresh_token_ok(self, requests_mock, authenticator_instance, api_endpoint): - requests_mock.post(f"{api_endpoint}/v1/oauth2/token", json={"access_token": "test_access_token", "expires_in": 12345}) - result = authenticator_instance.refresh_access_token() - assert result == ("test_access_token", 12345) - - def test_oauth2_refresh_token_failed(self, requests_mock, authenticator_instance, api_endpoint, error_while_refreshing_access_token): - requests_mock.post(f"{api_endpoint}/v1/oauth2/token", json={}) - try: - authenticator_instance.refresh_access_token() - except Exception as e: - assert e.args[0] == error_while_refreshing_access_token - - def test_new_oauth2_refresh_token_ok(self, requests_mock, new_format_authenticator_instance, api_endpoint): - requests_mock.post(f"{api_endpoint}/v1/oauth2/token", json={"access_token": "test_access_token", "expires_in": 12345}) - result = new_format_authenticator_instance.refresh_access_token() - assert result == ("test_access_token", 12345) - - def test_streams_count(self, prod_config, source_instance): - assert len(source_instance.streams(prod_config)) == 2 - - def test_check_connection_ok(self, requests_mock, prod_config, api_endpoint, transactions, source_instance): - requests_mock.post(f"{api_endpoint}/v1/oauth2/token", json={"access_token": "test_access_token", "expires_in": 12345}) - url = ( - f"{api_endpoint}/v1/reporting/transactions" - + "?start_date=2021-07-01T00%3A00%3A00%2B00%3A00&end_date=2021-07-02T00%3A00%3A00%2B00%3A00&fields=all&page_size=500&page=1" - ) - requests_mock.get(url, json=transactions) - assert source_instance.check_connection(logger=MagicMock(), config=prod_config) == (True, None) - - def test_check_connection_error(self, requests_mock, prod_config, api_endpoint, source_instance): - requests_mock.post(f"{api_endpoint}/v1/oauth2/token", json={"access_token": "test_access_token", "expires_in": 12345}) - url = ( - f"{api_endpoint}/v1/reporting/transactions" - + "?start_date=2021-07-01T00%3A00%3A00%2B00%3A00&end_date=2021-07-02T00%3A00%3A00%2B00%3A00&fields=all&page_size=500&page=1" - ) - requests_mock.get(url, status_code=400, json={}) - check_result, error = source_instance.check_connection(logger=MagicMock(), config=prod_config) - assert not check_result - assert isinstance(error, PaypalHttpException) - - def test_get_prod_endpoint(self, prod_config, api_endpoint): - assert get_endpoint(prod_config["is_sandbox"]) == api_endpoint - - def test_get_sandbox_endpoint(self, sandbox_config, sandbox_api_endpoint): - assert get_endpoint(sandbox_config["is_sandbox"]) == sandbox_api_endpoint diff --git a/airbyte-integrations/connectors/source-paypal-transaction/unit_tests/transaction.json b/airbyte-integrations/connectors/source-paypal-transaction/unit_tests/transaction.json deleted file mode 100644 index 00621a91e6d1..000000000000 --- a/airbyte-integrations/connectors/source-paypal-transaction/unit_tests/transaction.json +++ /dev/null @@ -1,151 +0,0 @@ -{ - "transaction_details": [ - { - "transaction_info": { - "paypal_account_id": "6STWC2LSUYYYE", - "transaction_id": "5TY05013RG002845M", - "transaction_event_code": "T0006", - "transaction_initiation_date": "2014-07-11T04:03:52+0000", - "transaction_updated_date": "2014-07-11T04:03:52+0000", - "transaction_amount": { - "currency_code": "USD", - "value": "465.00" - }, - "fee_amount": { - "currency_code": "USD", - "value": "-13.79" - }, - "insurance_amount": { - "currency_code": "USD", - "value": "15.00" - }, - "shipping_amount": { - "currency_code": "USD", - "value": "30.00" - }, - "shipping_discount_amount": { - "currency_code": "USD", - "value": "10.00" - }, - "transaction_status": "S", - "transaction_subject": "Bill for your purchase", - "transaction_note": "Check out the latest sales", - "invoice_id": "Invoice-005", - "custom_field": "Thank you for your business", - "protection_eligibility": "01" - }, - "payer_info": { - "account_id": "6STWC2LSUYYYE", - "email_address": "consumer@example.com", - "address_status": "Y", - "payer_status": "Y", - "payer_name": { - "given_name": "test", - "surname": "consumer", - "alternate_full_name": "test consumer" - }, - "country_code": "US" - }, - "shipping_info": { - "name": "Sowmith", - "address": { - "line1": "Eco Space, bellandur", - "line2": "OuterRingRoad", - "city": "Bangalore", - "country_code": "IN", - "postal_code": "560103" - } - }, - "cart_info": { - "item_details": [ - { - "item_code": "ItemCode-1", - "item_name": "Item1 - radio", - "item_description": "Radio", - "item_quantity": "2", - "item_unit_price": { - "currency_code": "USD", - "value": "50.00" - }, - "item_amount": { - "currency_code": "USD", - "value": "100.00" - }, - "tax_amounts": [ - { - "tax_amount": { - "currency_code": "USD", - "value": "20.00" - } - } - ], - "total_item_amount": { - "currency_code": "USD", - "value": "120.00" - }, - "invoice_number": "Invoice-005" - }, - { - "item_code": "ItemCode-2", - "item_name": "Item2 - Headset", - "item_description": "Headset", - "item_quantity": "3", - "item_unit_price": { - "currency_code": "USD", - "value": "100.00" - }, - "item_amount": { - "currency_code": "USD", - "value": "300.00" - }, - "tax_amounts": [ - { - "tax_amount": { - "currency_code": "USD", - "value": "60.00" - } - } - ], - "total_item_amount": { - "currency_code": "USD", - "value": "360.00" - }, - "invoice_number": "Invoice-005" - }, - { - "item_name": "3", - "item_quantity": "1", - "item_unit_price": { - "currency_code": "USD", - "value": "-50.00" - }, - "item_amount": { - "currency_code": "USD", - "value": "-50.00" - }, - "total_item_amount": { - "currency_code": "USD", - "value": "-50.00" - }, - "invoice_number": "Invoice-005" - } - ] - }, - "store_info": {}, - "auction_info": {}, - "incentive_info": {} - } - ], - "account_number": "XZXSPECPDZHZU", - "last_refreshed_datetime": "2017-01-02T06:59:59+0000", - "page": 1, - "total_items": 1, - "total_pages": 1, - "links": [ - { - "href": "https://api-m.sandbox.paypal.com/v1/reporting/transactions?transaction_id=5TY05013RG002845M&fields=all&page_size=100&page=1", - "rel": "self", - "method": "GET" - } - ] -} diff --git a/airbyte-integrations/connectors/source-paypal-transaction/unit_tests/unit_test.py b/airbyte-integrations/connectors/source-paypal-transaction/unit_tests/unit_test.py deleted file mode 100644 index 9f92bc3d97ca..000000000000 --- a/airbyte-integrations/connectors/source-paypal-transaction/unit_tests/unit_test.py +++ /dev/null @@ -1,352 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -from datetime import datetime, timedelta - -from airbyte_cdk.models import SyncMode -from airbyte_cdk.sources.streams.http.auth import NoAuth -from dateutil.parser import isoparse -from pytest import raises -from source_paypal_transaction.source import Balances, PaypalTransactionStream, Transactions - - -def test_minimum_allowed_start_date(): - start_date = now() - timedelta(days=10 * 365) - stream = Transactions(authenticator=NoAuth(), start_date=start_date) - assert stream.start_date != start_date - - -def test_transactions_transform_function(): - start_date = now() - timedelta(days=10 * 365) - stream = Transactions(authenticator=NoAuth(), start_date=start_date) - transformer = stream.transformer - input_data = {"transaction_amount": "123.45", "transaction_id": "111", "transaction_status": "done"} - schema = stream.get_json_schema() - schema["properties"] = { - "transaction_amount": {"type": "number"}, - "transaction_id": {"type": "integer"}, - "transaction_status": {"type": "string"}, - } - transformer.transform(input_data, schema) - expected_data = {"transaction_amount": 123.45, "transaction_id": 111, "transaction_status": "done"} - assert input_data == expected_data - - -def test_get_field(): - record = {"a": {"b": {"c": "d"}}} - # Test expected result - field_path is a list - assert "d" == PaypalTransactionStream.get_field(record, field_path=["a", "b", "c"]) - # Test expected result - field_path is a string - assert {"b": {"c": "d"}} == PaypalTransactionStream.get_field(record, field_path="a") - - # Test failures - not existing field_path - assert None is PaypalTransactionStream.get_field(record, field_path=["a", "b", "x"]) - assert None is PaypalTransactionStream.get_field(record, field_path=["a", "x", "x"]) - assert None is PaypalTransactionStream.get_field(record, field_path=["x", "x", "x"]) - - # Test failures - incorrect record structure - record = {"a": [{"b": {"c": "d"}}]} - assert None is PaypalTransactionStream.get_field(record, field_path=["a", "b", "c"]) - - record = {"a": {"b": "c"}} - assert None is PaypalTransactionStream.get_field(record, field_path=["a", "b", "c"]) - - record = {} - assert None is PaypalTransactionStream.get_field(record, field_path=["a", "b", "c"]) - - -def test_update_field(): - # Test success 1 - record = {"a": {"b": {"c": "d"}}} - PaypalTransactionStream.update_field(record, field_path=["a", "b", "c"], update=lambda x: x.upper()) - assert record == {"a": {"b": {"c": "D"}}} - - # Test success 2 - record = {"a": {"b": {"c": "d"}}} - PaypalTransactionStream.update_field(record, field_path="a", update=lambda x: "updated") - assert record == {"a": "updated"} - - # Test failure - incorrect field_path - record = {"a": {"b": {"c": "d"}}} - PaypalTransactionStream.update_field(record, field_path=["a", "b", "x"], update=lambda x: x.upper()) - assert record == {"a": {"b": {"c": "d"}}} - - # Test failure - incorrect field_path - record = {"a": {"b": {"c": "d"}}} - PaypalTransactionStream.update_field(record, field_path=["a", "x", "x"], update=lambda x: x.upper()) - assert record == {"a": {"b": {"c": "d"}}} - - -def now(): - return datetime.now().replace(microsecond=0).astimezone() - - -def test_transactions_stream_slices(): - start_date_max = {"hours": 0} - - # if start_date > now - **start_date_max then no slices - transactions = Transactions( - authenticator=NoAuth(), - start_date=now() - timedelta(**start_date_max) - timedelta(minutes=2), - ) - transactions.get_last_refreshed_datetime = lambda x: None - stream_slices = transactions.stream_slices(sync_mode="any") - assert 1 == len(stream_slices) - - # start_date <= now - **start_date_max - transactions = Transactions( - authenticator=NoAuth(), - start_date=now() - timedelta(**start_date_max), - ) - transactions.get_last_refreshed_datetime = lambda x: None - stream_slices = transactions.stream_slices(sync_mode="any") - assert 1 == len(stream_slices) - - transactions = Transactions( - authenticator=NoAuth(), - start_date=now() - timedelta(**start_date_max) + timedelta(minutes=2), - ) - transactions.get_last_refreshed_datetime = lambda x: None - stream_slices = transactions.stream_slices(sync_mode="any") - assert 1 == len(stream_slices) - - transactions = Transactions( - authenticator=NoAuth(), - start_date=now() - timedelta(**start_date_max) - timedelta(hours=2), - ) - transactions.get_last_refreshed_datetime = lambda x: None - stream_slices = transactions.stream_slices(sync_mode="any") - assert 1 == len(stream_slices) - - transactions = Transactions( - authenticator=NoAuth(), - start_date=now() - timedelta(**start_date_max) - timedelta(days=1), - ) - transactions.get_last_refreshed_datetime = lambda x: None - transactions.stream_slice_period = {"days": 1} - stream_slices = transactions.stream_slices(sync_mode="any") - assert 2 == len(stream_slices) - - transactions = Transactions( - authenticator=NoAuth(), - start_date=now() - timedelta(**start_date_max) - timedelta(days=1, hours=2), - ) - transactions.get_last_refreshed_datetime = lambda x: None - transactions.stream_slice_period = {"days": 1} - stream_slices = transactions.stream_slices(sync_mode="any") - assert 2 == len(stream_slices) - - transactions = Transactions( - authenticator=NoAuth(), - start_date=now() - timedelta(**start_date_max) - timedelta(days=30, minutes=1), - ) - transactions.get_last_refreshed_datetime = lambda x: None - transactions.stream_slice_period = {"days": 1} - stream_slices = transactions.stream_slices(sync_mode="any") - assert 31 == len(stream_slices) - - # tests with specified end_date - transactions = Transactions( - authenticator=NoAuth(), - start_date=isoparse("2021-06-01T10:00:00+00:00"), - end_date=isoparse("2021-06-04T12:00:00+00:00"), - ) - transactions.get_last_refreshed_datetime = lambda x: None - transactions.stream_slice_period = {"days": 1} - stream_slices = transactions.stream_slices(sync_mode="any") - assert [ - {"start_date": "2021-06-01T10:00:00+00:00", "end_date": "2021-06-02T10:00:00+00:00"}, - {"start_date": "2021-06-02T10:00:00+00:00", "end_date": "2021-06-03T10:00:00+00:00"}, - {"start_date": "2021-06-03T10:00:00+00:00", "end_date": "2021-06-04T10:00:00+00:00"}, - {"start_date": "2021-06-04T10:00:00+00:00", "end_date": "2021-06-04T12:00:00+00:00"}, - ] == stream_slices - - # tests with specified end_date and stream_state - transactions = Transactions( - authenticator=NoAuth(), - start_date=isoparse("2021-06-01T10:00:00+00:00"), - end_date=isoparse("2021-06-04T12:00:00+00:00"), - ) - transactions.get_last_refreshed_datetime = lambda x: None - transactions.stream_slice_period = {"days": 1} - stream_slices = transactions.stream_slices(sync_mode="any", stream_state={"date": "2021-06-02T10:00:00+00:00"}) - assert [ - {"start_date": "2021-06-02T10:00:00+00:00", "end_date": "2021-06-03T10:00:00+00:00"}, - {"start_date": "2021-06-03T10:00:00+00:00", "end_date": "2021-06-04T10:00:00+00:00"}, - {"start_date": "2021-06-04T10:00:00+00:00", "end_date": "2021-06-04T12:00:00+00:00"}, - ] == stream_slices - - transactions = Transactions( - authenticator=NoAuth(), - start_date=isoparse("2021-06-01T10:00:00+00:00"), - end_date=isoparse("2021-06-04T12:00:00+00:00"), - ) - transactions.get_last_refreshed_datetime = lambda x: None - stream_slices = transactions.stream_slices(sync_mode="any", stream_state={"date": "2021-06-04T10:00:00+00:00"}) - assert [{"start_date": "2021-06-04T10:00:00+00:00", "end_date": "2021-06-04T12:00:00+00:00"}] == stream_slices - - -def test_balances_stream_slices(): - """Test slices for Balance stream. - Note that is not used by this stream. - """ - now = datetime.now().replace(microsecond=0).astimezone() - - # Test without end_date (it equal by default) - balance = Balances(authenticator=NoAuth(), start_date=now) - balance.get_last_refreshed_datetime = lambda x: None - stream_slices = balance.stream_slices(sync_mode="any") - assert 1 == len(stream_slices) - - balance = Balances(authenticator=NoAuth(), start_date=now - timedelta(minutes=1)) - balance.get_last_refreshed_datetime = lambda x: None - stream_slices = balance.stream_slices(sync_mode="any") - assert 1 == len(stream_slices) - - balance = Balances( - authenticator=NoAuth(), - start_date=now - timedelta(hours=23), - ) - balance.get_last_refreshed_datetime = lambda x: None - stream_slices = balance.stream_slices(sync_mode="any") - assert 1 == len(stream_slices) - - balance = Balances( - authenticator=NoAuth(), - start_date=now - timedelta(days=1), - ) - balance.get_last_refreshed_datetime = lambda x: None - balance.stream_slice_period = {"days": 1} - stream_slices = balance.stream_slices(sync_mode="any") - assert 2 == len(stream_slices) - - balance = Balances( - authenticator=NoAuth(), - start_date=now - timedelta(days=1, minutes=1), - ) - balance.get_last_refreshed_datetime = lambda x: None - balance.stream_slice_period = {"days": 1} - stream_slices = balance.stream_slices(sync_mode="any") - assert 2 == len(stream_slices) - - # test with custom end_date - balance = Balances( - authenticator=NoAuth(), - start_date=isoparse("2021-06-01T10:00:00+00:00"), - end_date=isoparse("2021-06-03T12:00:00+00:00"), - ) - balance.get_last_refreshed_datetime = lambda x: None - balance.stream_slice_period = {"days": 1} - stream_slices = balance.stream_slices(sync_mode="any") - assert [ - {"start_date": "2021-06-01T10:00:00+00:00", "end_date": "2021-06-02T10:00:00+00:00"}, - {"start_date": "2021-06-02T10:00:00+00:00", "end_date": "2021-06-03T10:00:00+00:00"}, - {"start_date": "2021-06-03T10:00:00+00:00", "end_date": "2021-06-03T12:00:00+00:00"}, - ] == stream_slices - - # Test with stream state - balance = Balances( - authenticator=NoAuth(), - start_date=isoparse("2021-06-01T10:00:00+00:00"), - end_date=isoparse("2021-06-03T12:00:00+00:00"), - ) - balance.get_last_refreshed_datetime = lambda x: None - balance.stream_slice_period = {"days": 1} - stream_slices = balance.stream_slices(sync_mode="any", stream_state={"date": "2021-06-02T10:00:00+00:00"}) - assert [ - {"start_date": "2021-06-02T10:00:00+00:00", "end_date": "2021-06-03T10:00:00+00:00"}, - {"start_date": "2021-06-03T10:00:00+00:00", "end_date": "2021-06-03T12:00:00+00:00"}, - ] == stream_slices - - balance = Balances( - authenticator=NoAuth(), - start_date=isoparse("2021-06-01T10:00:00+00:00"), - end_date=isoparse("2021-06-03T12:00:00+00:00"), - ) - balance.get_last_refreshed_datetime = lambda x: None - balance.stream_slice_period = {"days": 1} - stream_slices = balance.stream_slices(sync_mode="any", stream_state={"date": "2021-06-03T11:00:00+00:00"}) - assert [{"start_date": "2021-06-03T11:00:00+00:00", "end_date": "2021-06-03T12:00:00+00:00"}] == stream_slices - - balance = Balances( - authenticator=NoAuth(), - start_date=isoparse("2021-06-01T10:00:00+00:00"), - end_date=isoparse("2021-06-03T12:00:00+00:00"), - ) - balance.get_last_refreshed_datetime = lambda x: None - balance.stream_slice_period = {"days": 1} - stream_slices = balance.stream_slices(sync_mode="any", stream_state={"date": "2021-06-03T12:00:00+00:00"}) - assert [{"start_date": "2021-06-03T12:00:00+00:00", "end_date": "2021-06-03T12:00:00+00:00"}] == stream_slices - - -def test_max_records_in_response_reached(transactions, requests_mock): - balance = Transactions( - authenticator=NoAuth(), - start_date=isoparse("2021-07-01T10:00:00+00:00"), - end_date=isoparse("2021-07-29T12:00:00+00:00"), - ) - error_message = { - "name": "RESULTSET_TOO_LARGE", - "message": "Result set size is greater than the maximum limit. Change the filter " "criteria and try again.", - } - url = "https://api-m.paypal.com/v1/reporting/transactions" - - requests_mock.register_uri( - "GET", - url + "?start_date=2021-07-01T12%3A00%3A00%2B00%3A00&end_date=2021-07-29T12%3A00%3A00%2B00%3A00", - json=error_message, - status_code=400, - ) - requests_mock.register_uri( - "GET", url + "?start_date=2021-07-01T12%3A00%3A00%2B00%3A00&end_date=2021-07-15T12%3A00%3A00%2B00%3A00", json=transactions - ) - requests_mock.register_uri( - "GET", url + "?start_date=2021-07-15T12%3A00%3A00%2B00%3A00&end_date=2021-07-29T12%3A00%3A00%2B00%3A00", json=transactions - ) - month_date_slice = {"start_date": "2021-07-01T12:00:00+00:00", "end_date": "2021-07-29T12:00:00+00:00"} - assert len(list(balance.read_records(sync_mode="any", stream_slice=month_date_slice))) == 2 - - requests_mock.register_uri( - "GET", - url + "?start_date=2021-07-01T12%3A00%3A00%2B00%3A00&end_date=2021-07-01T12%3A00%3A00%2B00%3A00", - json=error_message, - status_code=400, - ) - one_day_slice = {"start_date": "2021-07-01T12:00:00+00:00", "end_date": "2021-07-01T12:00:00+00:00"} - with raises(Exception): - assert next(balance.read_records(sync_mode="any", stream_slice=one_day_slice)) - - -def test_unnest_field(): - record = {"transaction_info": {"transaction_id": "123", "transaction_initiation_date": "2014-07-11T04:03:52+0000"}} - # check the cursor is not on the root level - assert Transactions.cursor_field not in record.keys() - - PaypalTransactionStream.unnest_field(record, Transactions.nested_object, Transactions.cursor_field) - # check the cursor now on the root level - assert Transactions.cursor_field in record.keys() - - -def test_get_last_refreshed_datetime(requests_mock, prod_config, api_endpoint): - stream = Balances(authenticator=NoAuth(), **prod_config) - requests_mock.post(f"{api_endpoint}/v1/oauth2/token", json={"access_token": "test_access_token", "expires_in": 12345}) - url = f"{api_endpoint}/v1/reporting/balances" + "?as_of_time=2021-07-01T00%3A00%3A00%2B00%3A00" - requests_mock.get(url, json={}) - assert not stream.get_last_refreshed_datetime(SyncMode.full_refresh) - - -def test_get_updated_state(transactions): - start_date = "2021-06-01T10:00:00+00:00" - stream = Transactions( - authenticator=NoAuth(), - start_date=isoparse(start_date), - end_date=isoparse("2021-06-04T12:00:00+00:00"), - ) - state = stream.get_updated_state(current_stream_state={}, latest_record={}) - assert state == {"date": start_date} - - record = transactions[stream.data_field][0][stream.nested_object] - expected_state = {"date": now().isoformat()} - state = stream.get_updated_state(current_stream_state=expected_state, latest_record=record) - assert state == expected_state diff --git a/airbyte-integrations/connectors/source-pipedrive/metadata.yaml b/airbyte-integrations/connectors/source-pipedrive/metadata.yaml index c3c4a3126288..d8a469a9adb3 100644 --- a/airbyte-integrations/connectors/source-pipedrive/metadata.yaml +++ b/airbyte-integrations/connectors/source-pipedrive/metadata.yaml @@ -1,4 +1,7 @@ data: + ab_internal: + ql: 300 + sl: 100 allowedHosts: hosts: - api.pipedrive.com @@ -7,6 +10,7 @@ data: definitionId: d8286229-c680-4063-8c59-23b9b391c700 dockerImageTag: 1.0.0 dockerRepository: airbyte/source-pipedrive + documentationUrl: https://docs.airbyte.com/integrations/sources/pipedrive githubIssueLabel: source-pipedrive icon: pipedrive.svg license: MIT @@ -17,11 +21,7 @@ data: oss: enabled: true releaseStage: beta - documentationUrl: https://docs.airbyte.com/integrations/sources/pipedrive + supportLevel: community tags: - language:python - ab_internal: - sl: 200 - ql: 300 - supportLevel: certified metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-postgres-strict-encrypt/.dockerignore b/airbyte-integrations/connectors/source-postgres-strict-encrypt/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/source-postgres-strict-encrypt/.dockerignore +++ b/airbyte-integrations/connectors/source-postgres-strict-encrypt/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/source-postgres-strict-encrypt/Dockerfile b/airbyte-integrations/connectors/source-postgres-strict-encrypt/Dockerfile index 5ef6267ba9ff..cccbb65e6a44 100644 --- a/airbyte-integrations/connectors/source-postgres-strict-encrypt/Dockerfile +++ b/airbyte-integrations/connectors/source-postgres-strict-encrypt/Dockerfile @@ -24,5 +24,5 @@ ENV APPLICATION source-postgres-strict-encrypt COPY --from=build /airbyte /airbyte -LABEL io.airbyte.version=3.1.6 +LABEL io.airbyte.version=3.1.7 LABEL io.airbyte.name=airbyte/source-postgres-strict-encrypt diff --git a/airbyte-integrations/connectors/source-postgres-strict-encrypt/build.gradle b/airbyte-integrations/connectors/source-postgres-strict-encrypt/build.gradle index 484e154ad89f..5b0531b05854 100644 --- a/airbyte-integrations/connectors/source-postgres-strict-encrypt/build.gradle +++ b/airbyte-integrations/connectors/source-postgres-strict-encrypt/build.gradle @@ -26,12 +26,10 @@ dependencies { testImplementation project(':airbyte-test-utils') testImplementation libs.junit.jupiter.system.stubs - testImplementation libs.connectors.testcontainers.jdbc - testImplementation libs.connectors.testcontainers.postgresql + testImplementation libs.testcontainers.jdbc + testImplementation libs.testcontainers.postgresql integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors/source-postgres-strict-encrypt/metadata.yaml b/airbyte-integrations/connectors/source-postgres-strict-encrypt/metadata.yaml index 4e40a3401664..ccfab936ff69 100644 --- a/airbyte-integrations/connectors/source-postgres-strict-encrypt/metadata.yaml +++ b/airbyte-integrations/connectors/source-postgres-strict-encrypt/metadata.yaml @@ -12,7 +12,7 @@ data: connectorType: source definitionId: decd338e-5647-4c0b-adf4-da0e75f5a750 maxSecondsBetweenMessages: 7200 - dockerImageTag: 3.1.6 + dockerImageTag: 3.1.7 dockerRepository: airbyte/source-postgres-strict-encrypt githubIssueLabel: source-postgres icon: postgresql.svg diff --git a/airbyte-integrations/connectors/source-postgres/.dockerignore b/airbyte-integrations/connectors/source-postgres/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/source-postgres/.dockerignore +++ b/airbyte-integrations/connectors/source-postgres/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/source-postgres/Dockerfile b/airbyte-integrations/connectors/source-postgres/Dockerfile index 6deaf8f9f9ab..a78162fa1ab1 100644 --- a/airbyte-integrations/connectors/source-postgres/Dockerfile +++ b/airbyte-integrations/connectors/source-postgres/Dockerfile @@ -24,5 +24,5 @@ ENV APPLICATION source-postgres COPY --from=build /airbyte /airbyte -LABEL io.airbyte.version=3.1.6 +LABEL io.airbyte.version=3.1.7 LABEL io.airbyte.name=airbyte/source-postgres diff --git a/airbyte-integrations/connectors/source-postgres/build.gradle b/airbyte-integrations/connectors/source-postgres/build.gradle index d0997a9ff1be..831814e39022 100644 --- a/airbyte-integrations/connectors/source-postgres/build.gradle +++ b/airbyte-integrations/connectors/source-postgres/build.gradle @@ -33,16 +33,13 @@ dependencies { testImplementation project(":airbyte-json-validation") testImplementation project(':airbyte-test-utils') testImplementation 'org.hamcrest:hamcrest-all:1.3' - testImplementation libs.connectors.testcontainers.jdbc - testImplementation libs.connectors.testcontainers.postgresql + testImplementation libs.testcontainers.jdbc + testImplementation libs.testcontainers.postgresql testImplementation libs.junit.jupiter.system.stubs integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') performanceTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - performanceTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } jsonSchema2Pojo { diff --git a/airbyte-integrations/connectors/source-postgres/metadata.yaml b/airbyte-integrations/connectors/source-postgres/metadata.yaml index 6fdbc6aacf67..9aa89f71293f 100644 --- a/airbyte-integrations/connectors/source-postgres/metadata.yaml +++ b/airbyte-integrations/connectors/source-postgres/metadata.yaml @@ -6,7 +6,7 @@ data: connectorSubtype: database connectorType: source definitionId: decd338e-5647-4c0b-adf4-da0e75f5a750 - dockerImageTag: 3.1.6 + dockerImageTag: 3.1.7 maxSecondsBetweenMessages: 7200 dockerRepository: airbyte/source-postgres githubIssueLabel: source-postgres diff --git a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/PostgresQueryUtils.java b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/PostgresQueryUtils.java index 60c3f2615fc5..dfa05c02e377 100644 --- a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/PostgresQueryUtils.java +++ b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/PostgresQueryUtils.java @@ -13,6 +13,7 @@ import io.airbyte.db.jdbc.JdbcDatabase; import io.airbyte.db.jdbc.JdbcUtils; import io.airbyte.integrations.source.postgres.ctid.CtidUtils.CtidStreams; +import io.airbyte.integrations.source.postgres.ctid.FileNodeHandler; import io.airbyte.integrations.source.postgres.internal.models.CursorBasedStatus; import io.airbyte.integrations.source.postgres.internal.models.InternalModels.StateType; import io.airbyte.integrations.source.postgres.internal.models.XminStatus; @@ -188,28 +189,30 @@ public static Map getCursorBa return cursorBasedStatusMap; } - public static ResultWithFailed> fileNodeForStreams(final JdbcDatabase database, - final List streams, - final String quoteString) { - final Map fileNodes = new HashMap<>(); - final List failedToQuery = new ArrayList<>(); + public static FileNodeHandler fileNodeForStreams(final JdbcDatabase database, + final List streams, + final String quoteString) { + final FileNodeHandler fileNodeHandler = new FileNodeHandler(); streams.forEach(stream -> { try { final AirbyteStreamNameNamespacePair namespacePair = new AirbyteStreamNameNamespacePair(stream.getStream().getName(), stream.getStream().getNamespace()); - final Optional fileNode = fileNodeForStreams(database, namespacePair, quoteString); + final Optional fileNode = fileNodeForIndividualStream(database, namespacePair, quoteString); fileNode.ifPresentOrElse( - l -> fileNodes.put(namespacePair, l), - () -> failedToQuery.add(io.airbyte.protocol.models.v0.AirbyteStreamNameNamespacePair.fromConfiguredAirbyteSteam(stream))); + l -> fileNodeHandler.updateFileNode(namespacePair, l), + () -> fileNodeHandler + .updateFailedToQuery(io.airbyte.protocol.models.v0.AirbyteStreamNameNamespacePair.fromConfiguredAirbyteSteam(stream))); } catch (final Exception e) { LOGGER.warn("Failed to fetch relation node for {}.{} .", stream.getStream().getNamespace(), stream.getStream().getName(), e); - failedToQuery.add(io.airbyte.protocol.models.v0.AirbyteStreamNameNamespacePair.fromConfiguredAirbyteSteam(stream)); + fileNodeHandler.updateFailedToQuery(io.airbyte.protocol.models.v0.AirbyteStreamNameNamespacePair.fromConfiguredAirbyteSteam(stream)); } }); - return new ResultWithFailed<>(fileNodes, failedToQuery); + return fileNodeHandler; } - public static Optional fileNodeForStreams(final JdbcDatabase database, final AirbyteStreamNameNamespacePair stream, final String quoteString) + public static Optional fileNodeForIndividualStream(final JdbcDatabase database, + final AirbyteStreamNameNamespacePair stream, + final String quoteString) throws SQLException { final String streamName = stream.getName(); final String schemaName = stream.getNamespace(); diff --git a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/PostgresSource.java b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/PostgresSource.java index 041a2ff5780c..2da0c9a00c8f 100644 --- a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/PostgresSource.java +++ b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/PostgresSource.java @@ -10,7 +10,7 @@ import static io.airbyte.db.jdbc.JdbcUtils.AMPERSAND; import static io.airbyte.db.jdbc.JdbcUtils.EQUALS; import static io.airbyte.db.jdbc.JdbcUtils.PLATFORM_DATA_INCREASE_FACTOR; -import static io.airbyte.integrations.debezium.AirbyteDebeziumHandler.shouldUseCDC; +import static io.airbyte.integrations.debezium.AirbyteDebeziumHandler.isAnyStreamIncrementalSyncMode; import static io.airbyte.integrations.source.jdbc.JdbcDataSourceUtils.DEFAULT_JDBC_PARAMETERS_DELIMITER; import static io.airbyte.integrations.source.jdbc.JdbcSSLConnectionUtils.CLIENT_KEY_STORE_PASS; import static io.airbyte.integrations.source.jdbc.JdbcSSLConnectionUtils.CLIENT_KEY_STORE_URL; @@ -24,7 +24,6 @@ import static io.airbyte.integrations.source.postgres.PostgresQueryUtils.filterStreamsUnderVacuumForCtidSync; import static io.airbyte.integrations.source.postgres.PostgresQueryUtils.getCursorBasedSyncStatusForStreams; import static io.airbyte.integrations.source.postgres.PostgresQueryUtils.streamsUnderVacuum; -import static io.airbyte.integrations.source.postgres.PostgresUtils.isAnyStreamIncrementalSyncMode; import static io.airbyte.integrations.source.postgres.PostgresUtils.prettyPrintConfiguredAirbyteStreamList; import static io.airbyte.integrations.source.postgres.cdc.PostgresCdcCtidInitializer.cdcCtidIteratorsCombined; import static io.airbyte.integrations.source.postgres.cursor_based.CursorBasedCtidUtils.categoriseStreams; @@ -72,6 +71,7 @@ import io.airbyte.integrations.source.postgres.ctid.CtidPostgresSourceOperations; import io.airbyte.integrations.source.postgres.ctid.CtidStateManager; import io.airbyte.integrations.source.postgres.ctid.CtidUtils.StreamsCategorised; +import io.airbyte.integrations.source.postgres.ctid.FileNodeHandler; import io.airbyte.integrations.source.postgres.ctid.PostgresCtidHandler; import io.airbyte.integrations.source.postgres.cursor_based.CursorBasedCtidUtils.CursorBasedStreams; import io.airbyte.integrations.source.postgres.cursor_based.PostgresCursorBasedStateManager; @@ -229,7 +229,7 @@ public Set getExcludedInternalNameSpaces() { @Override protected Set getExcludedViews() { - return Set.of("pg_stat_statements", "pg_stat_statements_info"); + return Set.of("pg_stat_statements", "pg_stat_statements_info", "pg_buffercache"); } @Override @@ -455,7 +455,7 @@ public List> getIncrementalIterators(final final StateManager stateManager, final Instant emittedAt) { final JsonNode sourceConfig = database.getSourceConfig(); - if (PostgresUtils.isCdc(sourceConfig) && shouldUseCDC(catalog)) { + if (PostgresUtils.isCdc(sourceConfig) && isAnyStreamIncrementalSyncMode(catalog)) { LOGGER.info("Using ctid + CDC"); return cdcCtidIteratorsCombined(database, catalog, tableNameToTable, stateManager, emittedAt, getQuoteString(), getReplicationSlot(database, sourceConfig).get(0)); @@ -473,20 +473,19 @@ public List> getIncrementalIterators(final List finalListOfStreamsToBeSyncedViaCtid = filterStreamsUnderVacuumForCtidSync(streamsUnderVacuum.result(), streamsCategorised.ctidStreams()); - final ResultWithFailed> fileNodes = + final FileNodeHandler fileNodeHandler = PostgresQueryUtils.fileNodeForStreams(database, finalListOfStreamsToBeSyncedViaCtid, getQuoteString()); // In case we failed to query for fileNode, streams will get reclassified as xmin - if (!fileNodes.failed().isEmpty()) { - reclassifyCategorisedCtidStreams(streamsCategorised, fileNodes.failed()); + if (!fileNodeHandler.getFailedToQuery().isEmpty()) { + reclassifyCategorisedCtidStreams(streamsCategorised, fileNodeHandler.getFailedToQuery()); finalListOfStreamsToBeSyncedViaCtid = filterStreamsUnderVacuumForCtidSync(streamsUnderVacuum.result(), streamsCategorised.ctidStreams()); } - final CtidStateManager ctidStateManager = - new CtidPerStreamStateManager(streamsCategorised.ctidStreams().statesFromCtidSync(), fileNodes.result()); + final CtidStateManager ctidStateManager = new CtidPerStreamStateManager(streamsCategorised.ctidStreams().statesFromCtidSync(), fileNodeHandler); final Map tableBlockSizes = PostgresQueryUtils.getTableBlockSizeForStreams( database, @@ -512,16 +511,16 @@ public List> getIncrementalIterators(final final PostgresCtidHandler ctidHandler = new PostgresCtidHandler(sourceConfig, database, new CtidPostgresSourceOperations(Optional.empty()), getQuoteString(), - fileNodes.result(), tableBlockSizes, ctidStateManager, + fileNodeHandler, tableBlockSizes, ctidStateManager, namespacePair -> Jsons.jsonNode(xminStatus)); - final List> ctidIterators = new ArrayList<>(ctidHandler.getIncrementalIterators( + final List> initialSyncCtidIterators = new ArrayList<>(ctidHandler.getInitialSyncCtidIterator( new ConfiguredAirbyteCatalog().withStreams(finalListOfStreamsToBeSyncedViaCtid), tableNameToTable, emittedAt)); final List> xminIterators = new ArrayList<>(xminHandler.getIncrementalIterators( new ConfiguredAirbyteCatalog().withStreams(streamsCategorised.remainingStreams().streamsForXminSync()), tableNameToTable, emittedAt)); return Stream - .of(ctidIterators, xminIterators) + .of(initialSyncCtidIterators, xminIterators) .flatMap(Collection::stream) .collect(Collectors.toList()); @@ -539,20 +538,20 @@ public List> getIncrementalIterators(final List finalListOfStreamsToBeSyncedViaCtid = filterStreamsUnderVacuumForCtidSync(streamsUnderVacuum.result(), streamsCategorised.ctidStreams()); - final ResultWithFailed> fileNodes = + final FileNodeHandler fileNodeHandler = PostgresQueryUtils.fileNodeForStreams(database, finalListOfStreamsToBeSyncedViaCtid, getQuoteString()); // Streams we failed to query for fileNode - such as in the case of Views are reclassified as // standard - if (!fileNodes.failed().isEmpty()) { - reclassifyCategorisedCtidStreams(streamsCategorised, fileNodes.failed()); + if (!fileNodeHandler.getFailedToQuery().isEmpty()) { + reclassifyCategorisedCtidStreams(streamsCategorised, fileNodeHandler.getFailedToQuery()); finalListOfStreamsToBeSyncedViaCtid = filterStreamsUnderVacuumForCtidSync(streamsUnderVacuum.result(), streamsCategorised.ctidStreams()); } final CtidStateManager ctidStateManager = - new CtidPerStreamStateManager(streamsCategorised.ctidStreams().statesFromCtidSync(), fileNodes.result()); + new CtidPerStreamStateManager(streamsCategorised.ctidStreams().statesFromCtidSync(), fileNodeHandler); final Map tableBlockSizes = PostgresQueryUtils.getTableBlockSizeForStreams( database, @@ -580,13 +579,13 @@ public List> getIncrementalIterators(final database, new CtidPostgresSourceOperations(Optional.empty()), getQuoteString(), - fileNodes.result(), + fileNodeHandler, tableBlockSizes, ctidStateManager, namespacePair -> Jsons.jsonNode(cursorBasedStatusMap.get(namespacePair))); - final List> ctidIterators = new ArrayList<>( - cursorBasedCtidHandler.getIncrementalIterators(new ConfiguredAirbyteCatalog().withStreams(finalListOfStreamsToBeSyncedViaCtid), + final List> initialSyncCtidIterators = new ArrayList<>( + cursorBasedCtidHandler.getInitialSyncCtidIterator(new ConfiguredAirbyteCatalog().withStreams(finalListOfStreamsToBeSyncedViaCtid), tableNameToTable, emittedAt)); final List> cursorBasedIterators = new ArrayList<>(super.getIncrementalIterators(database, @@ -597,7 +596,7 @@ public List> getIncrementalIterators(final postgresCursorBasedStateManager, emittedAt)); return Stream - .of(ctidIterators, cursorBasedIterators) + .of(initialSyncCtidIterators, cursorBasedIterators) .flatMap(Collection::stream) .collect(Collectors.toList()); } diff --git a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/PostgresSourceOperations.java b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/PostgresSourceOperations.java index e6356462fc2f..e2bf92238a5d 100644 --- a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/PostgresSourceOperations.java +++ b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/PostgresSourceOperations.java @@ -73,7 +73,7 @@ public class PostgresSourceOperations extends AbstractJdbcCompatibleSourceOperat @Override public JsonNode rowToJson(final ResultSet queryContext) throws SQLException { - // the first call communicates with the database. after that the result is cached. + // the first call communicates with the database, after that the result is cached. final ResultSetMetaData metadata = queryContext.getMetaData(); final int columnCount = metadata.getColumnCount(); final ObjectNode jsonNode = (ObjectNode) Jsons.jsonNode(Collections.emptyMap()); diff --git a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/PostgresUtils.java b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/PostgresUtils.java index e2e8d16b9221..b5208c543092 100644 --- a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/PostgresUtils.java +++ b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/PostgresUtils.java @@ -23,9 +23,7 @@ import static io.airbyte.integrations.source.postgres.PostgresType.VARCHAR; import com.fasterxml.jackson.databind.JsonNode; -import io.airbyte.protocol.models.v0.ConfiguredAirbyteCatalog; import io.airbyte.protocol.models.v0.ConfiguredAirbyteStream; -import io.airbyte.protocol.models.v0.SyncMode; import java.time.Duration; import java.util.List; import java.util.Optional; @@ -166,11 +164,6 @@ public static boolean isXmin(final JsonNode config) { return isXmin; } - public static boolean isAnyStreamIncrementalSyncMode(final ConfiguredAirbyteCatalog catalog) { - return catalog.getStreams().stream().map(ConfiguredAirbyteStream::getSyncMode) - .anyMatch(syncMode -> syncMode == SyncMode.INCREMENTAL); - } - public static String prettyPrintConfiguredAirbyteStreamList(final List streamList) { return streamList.stream().map(s -> "%s.%s".formatted(s.getStream().getNamespace(), s.getStream().getName())).collect(Collectors.joining(", ")); } diff --git a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/cdc/PostgresCdcCtidInitializer.java b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/cdc/PostgresCdcCtidInitializer.java index 8b868491829e..6e0307af9ab0 100644 --- a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/cdc/PostgresCdcCtidInitializer.java +++ b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/cdc/PostgresCdcCtidInitializer.java @@ -18,7 +18,6 @@ import io.airbyte.integrations.debezium.internals.postgres.PostgresCdcTargetPosition; import io.airbyte.integrations.debezium.internals.postgres.PostgresDebeziumStateUtil; import io.airbyte.integrations.source.postgres.PostgresQueryUtils; -import io.airbyte.integrations.source.postgres.PostgresQueryUtils.ResultWithFailed; import io.airbyte.integrations.source.postgres.PostgresQueryUtils.TableBlockSize; import io.airbyte.integrations.source.postgres.PostgresType; import io.airbyte.integrations.source.postgres.PostgresUtils; @@ -27,6 +26,7 @@ import io.airbyte.integrations.source.postgres.ctid.CtidPostgresSourceOperations; import io.airbyte.integrations.source.postgres.ctid.CtidPostgresSourceOperations.CdcMetadataInjector; import io.airbyte.integrations.source.postgres.ctid.CtidStateManager; +import io.airbyte.integrations.source.postgres.ctid.FileNodeHandler; import io.airbyte.integrations.source.postgres.ctid.PostgresCtidHandler; import io.airbyte.integrations.source.relationaldb.TableInfo; import io.airbyte.integrations.source.relationaldb.models.CdcState; @@ -115,7 +115,7 @@ public static List> cdcCtidIteratorsCombin : stateManager.getCdcStateManager().getCdcState(); final CtidStreams ctidStreams = PostgresCdcCtidUtils.streamsToSyncViaCtid(stateManager.getCdcStateManager(), catalog, savedOffsetAfterReplicationSlotLSN); - final List> ctidIterator = new ArrayList<>(); + final List> initialSyncCtidIterators = new ArrayList<>(); final List streamsUnderVacuum = new ArrayList<>(); if (!ctidStreams.streamsForCtidSync().isEmpty()) { streamsUnderVacuum.addAll(streamsUnderVacuum(database, @@ -128,11 +128,10 @@ public static List> cdcCtidIteratorsCombin .toList(); LOGGER.info("Streams to be synced via ctid : {}", finalListOfStreamsToBeSyncedViaCtid.size()); LOGGER.info("Streams: {}", prettyPrintConfiguredAirbyteStreamList(finalListOfStreamsToBeSyncedViaCtid)); - final ResultWithFailed> fileNodes = - PostgresQueryUtils.fileNodeForStreams(database, - finalListOfStreamsToBeSyncedViaCtid, - quoteString); - final CtidStateManager ctidStateManager = new CtidGlobalStateManager(ctidStreams, fileNodes.result(), stateToBeUsed, catalog); + final FileNodeHandler fileNodeHandler = PostgresQueryUtils.fileNodeForStreams(database, + finalListOfStreamsToBeSyncedViaCtid, + quoteString); + final CtidStateManager ctidStateManager = new CtidGlobalStateManager(ctidStreams, fileNodeHandler, stateToBeUsed, catalog); final CtidPostgresSourceOperations ctidPostgresSourceOperations = new CtidPostgresSourceOperations( Optional.of(new CdcMetadataInjector( emittedAt.toString(), io.airbyte.db.PostgresUtils.getLsn(database).asLong(), new PostgresCdcConnectorMetadataInjector()))); @@ -144,12 +143,12 @@ public static List> cdcCtidIteratorsCombin final PostgresCtidHandler ctidHandler = new PostgresCtidHandler(sourceConfig, database, ctidPostgresSourceOperations, quoteString, - fileNodes.result(), + fileNodeHandler, tableBlockSizes, ctidStateManager, namespacePair -> Jsons.emptyObject()); - ctidIterator.addAll(ctidHandler.getIncrementalIterators( + initialSyncCtidIterators.addAll(ctidHandler.getInitialSyncCtidIterator( new ConfiguredAirbyteCatalog().withStreams(finalListOfStreamsToBeSyncedViaCtid), tableNameToTable, emittedAt)); } else { LOGGER.info("No streams will be synced via ctid"); @@ -168,7 +167,7 @@ public static List> cdcCtidIteratorsCombin emittedAt, false); - if (ctidIterator.isEmpty()) { + if (initialSyncCtidIterators.isEmpty()) { return Collections.singletonList(incrementalIteratorSupplier.get()); } @@ -178,12 +177,12 @@ public static List> cdcCtidIteratorsCombin // We finish the current CDC once the initial snapshot is complete and the next sync starts // processing the WAL return Stream - .of(ctidIterator, Collections.singletonList(AutoCloseableIterators.lazyIterator(incrementalIteratorSupplier, null))) + .of(initialSyncCtidIterators, Collections.singletonList(AutoCloseableIterators.lazyIterator(incrementalIteratorSupplier, null))) .flatMap(Collection::stream) .collect(Collectors.toList()); } else { LOGGER.warn("Streams are under vacuuming, not going to process WAL"); - return ctidIterator; + return initialSyncCtidIterators; } } catch (final SQLException e) { diff --git a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/cdc/PostgresCdcSavedInfoFetcher.java b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/cdc/PostgresCdcSavedInfoFetcher.java index 8e5ad5408bd8..89dc92149a96 100644 --- a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/cdc/PostgresCdcSavedInfoFetcher.java +++ b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/cdc/PostgresCdcSavedInfoFetcher.java @@ -7,6 +7,7 @@ import com.fasterxml.jackson.databind.JsonNode; import io.airbyte.integrations.debezium.CdcSavedInfoFetcher; import io.airbyte.integrations.source.relationaldb.models.CdcState; +import io.airbyte.integrations.debezium.internals.AirbyteSchemaHistoryStorage.SchemaHistory; import java.util.Optional; public class PostgresCdcSavedInfoFetcher implements CdcSavedInfoFetcher { @@ -24,8 +25,8 @@ public JsonNode getSavedOffset() { } @Override - public Optional getSavedSchemaHistory() { - return Optional.empty(); + public SchemaHistory> getSavedSchemaHistory() { + throw new RuntimeException("Schema history is not relevant for Postgres"); } } diff --git a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/cdc/PostgresCdcStateHandler.java b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/cdc/PostgresCdcStateHandler.java index 264db2764da8..7be94707d755 100644 --- a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/cdc/PostgresCdcStateHandler.java +++ b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/cdc/PostgresCdcStateHandler.java @@ -7,6 +7,7 @@ import com.fasterxml.jackson.databind.JsonNode; import io.airbyte.commons.json.Jsons; import io.airbyte.integrations.debezium.CdcStateHandler; +import io.airbyte.integrations.debezium.internals.AirbyteSchemaHistoryStorage.SchemaHistory; import io.airbyte.integrations.source.relationaldb.models.CdcState; import io.airbyte.integrations.source.relationaldb.state.StateManager; import io.airbyte.protocol.models.v0.AirbyteMessage; @@ -32,7 +33,7 @@ public boolean isCdcCheckpointEnabled() { } @Override - public AirbyteMessage saveState(final Map offset, final String dbHistory) { + public AirbyteMessage saveState(final Map offset, final SchemaHistory ignored) { final JsonNode asJson = Jsons.jsonNode(offset); LOGGER.info("debezium state: {}", asJson); final CdcState cdcState = new CdcState().withState(asJson); diff --git a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/CtidGlobalStateManager.java b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/CtidGlobalStateManager.java index 9a24253caa30..04018ed4374a 100644 --- a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/CtidGlobalStateManager.java +++ b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/CtidGlobalStateManager.java @@ -37,10 +37,10 @@ public class CtidGlobalStateManager extends CtidStateManager { private final Set streamsThatHaveCompletedSnapshot; public CtidGlobalStateManager(final CtidStreams ctidStreams, - final Map fileNodes, + final FileNodeHandler fileNodeHandler, final CdcState cdcState, final ConfiguredAirbyteCatalog catalog) { - super(filterOutExpiredFileNodes(ctidStreams.pairToCtidStatus(), fileNodes)); + super(filterOutExpiredFileNodes(ctidStreams.pairToCtidStatus(), fileNodeHandler)); this.cdcState = cdcState; this.streamsThatHaveCompletedSnapshot = initStreamsCompletedSnapshot(ctidStreams, catalog); } @@ -60,11 +60,11 @@ private static Set initStreamsCompletedSnapshot( private static Map filterOutExpiredFileNodes( final Map pairToCtidStatus, - final Map fileNodes) { + final FileNodeHandler fileNodeHandler) { final Map filteredMap = new HashMap<>(); pairToCtidStatus.forEach((pair, ctidStatus) -> { final AirbyteStreamNameNamespacePair updatedPair = new AirbyteStreamNameNamespacePair(pair.getName(), pair.getNamespace()); - if (validateRelationFileNode(ctidStatus, updatedPair, fileNodes)) { + if (validateRelationFileNode(ctidStatus, updatedPair, fileNodeHandler)) { filteredMap.put(updatedPair, ctidStatus); } else { LOGGER.warn( @@ -77,6 +77,7 @@ private static Map filterOutExpiredF @Override public AirbyteStateMessage createCtidStateMessage(final AirbyteStreamNameNamespacePair pair, final CtidStatus ctidStatus) { + pairToCtidStatus.put(pair, ctidStatus); final List streamStates = new ArrayList<>(); streamsThatHaveCompletedSnapshot.forEach(stream -> { final DbStreamState state = getFinalState(stream); diff --git a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/CtidPerStreamStateManager.java b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/CtidPerStreamStateManager.java index 425ea6ea4fc9..c3a514c74006 100644 --- a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/CtidPerStreamStateManager.java +++ b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/CtidPerStreamStateManager.java @@ -29,12 +29,12 @@ public class CtidPerStreamStateManager extends CtidStateManager { .withType(AirbyteStateType.STREAM) .withStream(new AirbyteStreamState()); - public CtidPerStreamStateManager(final List stateMessages, final Map fileNodes) { - super(createPairToCtidStatusMap(stateMessages, fileNodes)); + public CtidPerStreamStateManager(final List stateMessages, final FileNodeHandler fileNodeHandler) { + super(createPairToCtidStatusMap(stateMessages, fileNodeHandler)); } private static Map createPairToCtidStatusMap(final List stateMessages, - final Map fileNodes) { + final FileNodeHandler fileNodeHandler) { final Map localMap = new HashMap<>(); if (stateMessages != null) { for (final AirbyteStateMessage stateMessage : stateMessages) { @@ -50,7 +50,7 @@ private static Map createPairToCtidS } catch (final IllegalArgumentException e) { throw new ConfigErrorException("Invalid per-stream state"); } - if (validateRelationFileNode(ctidStatus, pair, fileNodes)) { + if (validateRelationFileNode(ctidStatus, pair, fileNodeHandler)) { localMap.put(pair, ctidStatus); } else { LOGGER.warn( @@ -65,6 +65,7 @@ private static Map createPairToCtidS @Override public AirbyteStateMessage createCtidStateMessage(final AirbyteStreamNameNamespacePair pair, final CtidStatus ctidStatus) { + pairToCtidStatus.put(pair, ctidStatus); final AirbyteStreamState airbyteStreamState = new AirbyteStreamState() .withStreamDescriptor( diff --git a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/CtidStateIterator.java b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/CtidStateIterator.java index 60c392f19ade..56ac0dd4e992 100644 --- a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/CtidStateIterator.java +++ b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/CtidStateIterator.java @@ -8,6 +8,7 @@ import com.fasterxml.jackson.databind.JsonNode; import com.google.common.collect.AbstractIterator; +import io.airbyte.integrations.debezium.DebeziumIteratorConstants; import io.airbyte.integrations.source.postgres.internal.models.CtidStatus; import io.airbyte.integrations.source.postgres.internal.models.InternalModels.StateType; import io.airbyte.protocol.models.AirbyteStreamNameNamespacePair; @@ -27,15 +28,15 @@ public class CtidStateIterator extends AbstractIterator implements Iterator { private static final Logger LOGGER = LoggerFactory.getLogger(CtidStateIterator.class); - public static final Duration SYNC_CHECKPOINT_DURATION = Duration.ofMinutes(15); - public static final Integer SYNC_CHECKPOINT_RECORDS = 10_000; + public static final Duration SYNC_CHECKPOINT_DURATION = DebeziumIteratorConstants.SYNC_CHECKPOINT_DURATION; + public static final Integer SYNC_CHECKPOINT_RECORDS = DebeziumIteratorConstants.SYNC_CHECKPOINT_RECORDS; private final Iterator messageIterator; private final AirbyteStreamNameNamespacePair pair; private boolean hasEmittedFinalState; private String lastCtid; private final JsonNode streamStateForIncrementalRun; - private final long relationFileNode; + private final FileNodeHandler fileNodeHandler; private final CtidStateManager stateManager; private long recordCount = 0L; private Instant lastCheckpoint = Instant.now(); @@ -44,14 +45,14 @@ public class CtidStateIterator extends AbstractIterator implemen public CtidStateIterator(final Iterator messageIterator, final AirbyteStreamNameNamespacePair pair, - final long relationFileNode, + final FileNodeHandler fileNodeHandler, final CtidStateManager stateManager, final JsonNode streamStateForIncrementalRun, final Duration checkpointDuration, final Long checkpointRecords) { this.messageIterator = messageIterator; this.pair = pair; - this.relationFileNode = relationFileNode; + this.fileNodeHandler = fileNodeHandler; this.stateManager = stateManager; this.streamStateForIncrementalRun = streamStateForIncrementalRun; this.syncCheckpointDuration = checkpointDuration; @@ -65,12 +66,14 @@ protected AirbyteMessage computeNext() { if ((recordCount >= syncCheckpointRecords || Duration.between(lastCheckpoint, OffsetDateTime.now()).compareTo(syncCheckpointDuration) > 0) && Objects.nonNull(lastCtid) && StringUtils.isNotBlank(lastCtid)) { + final Long fileNode = fileNodeHandler.getFileNode(pair); + assert fileNode != null; final CtidStatus ctidStatus = new CtidStatus() .withVersion(CTID_STATUS_VERSION) .withStateType(StateType.CTID) .withCtid(lastCtid) .withIncrementalState(streamStateForIncrementalRun) - .withRelationFilenode(relationFileNode); + .withRelationFilenode(fileNode); LOGGER.info("Emitting ctid state for stream {}, state is {}", pair, ctidStatus); recordCount = 0L; lastCheckpoint = Instant.now(); diff --git a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/CtidStateManager.java b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/CtidStateManager.java index 86915a90be16..1b58a9ae2852 100644 --- a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/CtidStateManager.java +++ b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/CtidStateManager.java @@ -15,9 +15,8 @@ public abstract class CtidStateManager { public static final long CTID_STATUS_VERSION = 2; public static final String STATE_TYPE_KEY = "state_type"; - public static final String STATE_VER_KEY = "version"; - private final Map pairToCtidStatus; + protected final Map pairToCtidStatus; protected CtidStateManager(final Map pairToCtidStatus) { this.pairToCtidStatus = pairToCtidStatus; @@ -29,10 +28,10 @@ public CtidStatus getCtidStatus(final AirbyteStreamNameNamespacePair pair) { public static boolean validateRelationFileNode(final CtidStatus ctidstatus, final AirbyteStreamNameNamespacePair pair, - final Map fileNodes) { + final FileNodeHandler fileNodeHandler) { - if (fileNodes.containsKey(pair)) { - final Long fileNode = fileNodes.get(pair); + if (fileNodeHandler.hasFileNode(pair)) { + final Long fileNode = fileNodeHandler.getFileNode(pair); return Objects.equals(ctidstatus.getRelationFilenode(), fileNode); } return true; diff --git a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/FileNodeHandler.java b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/FileNodeHandler.java new file mode 100644 index 000000000000..2976e45277aa --- /dev/null +++ b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/FileNodeHandler.java @@ -0,0 +1,44 @@ +/* + * Copyright (c) 2023 Airbyte, Inc., all rights reserved. + */ + +package io.airbyte.integrations.source.postgres.ctid; + +import io.airbyte.protocol.models.AirbyteStreamNameNamespacePair; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; + +public class FileNodeHandler { + + private final Map fileNodes; + private final List failedToQuery; + + public FileNodeHandler() { + this.fileNodes = new ConcurrentHashMap<>(); + this.failedToQuery = new ArrayList<>(); + } + + public void updateFileNode(final AirbyteStreamNameNamespacePair namespacePair, final Long fileNode) { + fileNodes.put(namespacePair, fileNode); + } + + public boolean hasFileNode(final AirbyteStreamNameNamespacePair namespacePair) { + return fileNodes.containsKey(namespacePair); + } + + public Long getFileNode(final AirbyteStreamNameNamespacePair namespacePair) { + return fileNodes.get(namespacePair); + } + + public void updateFailedToQuery(final io.airbyte.protocol.models.v0.AirbyteStreamNameNamespacePair namespacePair) { + failedToQuery.add(namespacePair); + } + + public List getFailedToQuery() { + return Collections.unmodifiableList(failedToQuery); + } + +} diff --git a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/InitialSyncCtidIterator.java b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/InitialSyncCtidIterator.java new file mode 100644 index 000000000000..338508bf4925 --- /dev/null +++ b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/InitialSyncCtidIterator.java @@ -0,0 +1,251 @@ +/* + * Copyright (c) 2023 Airbyte, Inc., all rights reserved. + */ + +package io.airbyte.integrations.source.postgres.ctid; + +import static io.airbyte.integrations.source.postgres.ctid.InitialSyncCtidIteratorConstants.EIGHT_KB; +import static io.airbyte.integrations.source.postgres.ctid.InitialSyncCtidIteratorConstants.GIGABYTE; +import static io.airbyte.integrations.source.postgres.ctid.InitialSyncCtidIteratorConstants.MAX_ALLOWED_RESYNCS; +import static io.airbyte.integrations.source.postgres.ctid.InitialSyncCtidIteratorConstants.QUERY_TARGET_SIZE_GB; +import static io.airbyte.integrations.source.relationaldb.RelationalDbQueryUtils.getFullyQualifiedTableNameWithQuoting; + +import com.google.common.annotations.VisibleForTesting; +import com.google.common.collect.AbstractIterator; +import io.airbyte.commons.stream.AirbyteStreamUtils; +import io.airbyte.commons.util.AutoCloseableIterator; +import io.airbyte.commons.util.AutoCloseableIterators; +import io.airbyte.db.jdbc.JdbcDatabase; +import io.airbyte.integrations.source.postgres.PostgresQueryUtils; +import io.airbyte.integrations.source.postgres.ctid.CtidPostgresSourceOperations.RowDataWithCtid; +import io.airbyte.integrations.source.postgres.internal.models.CtidStatus; +import io.airbyte.integrations.source.relationaldb.RelationalDbQueryUtils; +import io.airbyte.protocol.models.AirbyteStreamNameNamespacePair; +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.LinkedList; +import java.util.List; +import java.util.Optional; +import java.util.Queue; +import java.util.stream.Stream; +import javax.annotation.CheckForNull; +import org.apache.commons.lang3.tuple.Pair; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * This class is responsible to divide the data of the stream into chunks based on the ctid and + * dynamically create iterator and keep processing them one after another. The class also makes sure + * to check for VACUUM in between processing chunks and if VACUUM happens then re-start syncing the + * data + */ +public class InitialSyncCtidIterator extends AbstractIterator implements AutoCloseableIterator { + + private static final Logger LOGGER = LoggerFactory.getLogger(InitialSyncCtidIterator.class); + + private final AirbyteStreamNameNamespacePair airbyteStream; + private final long blockSize; + private final List columnNames; + private final CtidStateManager ctidStateManager; + private final JdbcDatabase database; + private final FileNodeHandler fileNodeHandler; + private final String quoteString; + private final String schemaName; + private final CtidPostgresSourceOperations sourceOperations; + private final Queue> subQueriesPlan; + private final String tableName; + private final long tableSize; + private final boolean useTestPageSize; + + private AutoCloseableIterator currentIterator; + private Long lastKnownFileNode; + private int numberOfTimesReSynced = 0; + private boolean subQueriesInitialized = false; + + public InitialSyncCtidIterator(final CtidStateManager ctidStateManager, + final JdbcDatabase database, + final CtidPostgresSourceOperations sourceOperations, + final String quoteString, + final List columnNames, + final String schemaName, + final String tableName, + final long tableSize, + final long blockSize, + final FileNodeHandler fileNodeHandler, + final boolean useTestPageSize) { + this.airbyteStream = AirbyteStreamUtils.convertFromNameAndNamespace(tableName, schemaName); + this.blockSize = blockSize; + this.columnNames = columnNames; + this.ctidStateManager = ctidStateManager; + this.database = database; + this.fileNodeHandler = fileNodeHandler; + this.quoteString = quoteString; + this.schemaName = schemaName; + this.sourceOperations = sourceOperations; + this.subQueriesPlan = new LinkedList<>(); + this.tableName = tableName; + this.tableSize = tableSize; + this.useTestPageSize = useTestPageSize; + } + + @CheckForNull + @Override + protected RowDataWithCtid computeNext() { + try { + if (!subQueriesInitialized) { + initSubQueries(); + subQueriesInitialized = true; + } + + if (currentIterator == null || !currentIterator.hasNext()) { + do { + final Optional mayBeLatestFileNode = PostgresQueryUtils.fileNodeForIndividualStream(database, airbyteStream, quoteString); + if (mayBeLatestFileNode.isPresent()) { + final Long latestFileNode = mayBeLatestFileNode.get(); + if (lastKnownFileNode != null) { + if (!latestFileNode.equals(lastKnownFileNode)) { + resetSubQueries(latestFileNode); + } else { + LOGGER.info("The latest file node {} for stream {} is equal to the last file node {} known to Airbyte.", + latestFileNode, + airbyteStream, + lastKnownFileNode); + } + } + lastKnownFileNode = latestFileNode; + fileNodeHandler.updateFileNode(airbyteStream, latestFileNode); + } else { + LOGGER.warn("Airbyte could not query the latest file node for stream {}. Continuing sync as usual.", airbyteStream); + } + + if (currentIterator != null) { + currentIterator.close(); + } + + if (subQueriesPlan.isEmpty()) { + return endOfData(); + } + + final Pair p = subQueriesPlan.remove(); + currentIterator = AutoCloseableIterators.fromStream(getStream(p), airbyteStream); + } while (!currentIterator.hasNext()); + } + + return currentIterator.next(); + } catch (final Exception e) { + throw new RuntimeException(e); + } + } + + private Stream getStream(final Pair p) throws SQLException { + return database.unsafeQuery( + connection -> createCtidQueryStatement(connection, p.getLeft(), p.getRight()), + sourceOperations::recordWithCtid); + } + + private void initSubQueries() { + if (useTestPageSize) { + LOGGER.warn("Using test page size"); + } + final CtidStatus currentCtidStatus = ctidStateManager.getCtidStatus(airbyteStream); + subQueriesPlan.clear(); + subQueriesPlan.addAll(ctidQueryPlan((currentCtidStatus == null) ? Ctid.of(0, 0) : Ctid.of(currentCtidStatus.getCtid()), + tableSize, blockSize, QUERY_TARGET_SIZE_GB, useTestPageSize ? EIGHT_KB : GIGABYTE)); + lastKnownFileNode = currentCtidStatus != null ? currentCtidStatus.getRelationFilenode() : null; + } + + private void resetSubQueries(final Long latestFileNode) { + LOGGER.warn( + "The latest file node {} for stream {} is not equal to the last file node {} known to Airbyte. Airbyte will sync this table from scratch again", + latestFileNode, + airbyteStream, + lastKnownFileNode); + if (numberOfTimesReSynced > MAX_ALLOWED_RESYNCS) { + throw new RuntimeException("Airbyte has tried re-syncing stream " + airbyteStream + " more than " + MAX_ALLOWED_RESYNCS + + " times but VACUUM is still happening in between the sync, Please reach out to the customer to understand their VACUUM frequency."); + } + subQueriesPlan.clear(); + subQueriesPlan.addAll(ctidQueryPlan(Ctid.of(0, 0), + tableSize, blockSize, QUERY_TARGET_SIZE_GB, useTestPageSize ? EIGHT_KB : GIGABYTE)); + numberOfTimesReSynced++; + } + + /** + * Builds a plan for subqueries. Each query returning an approximate amount of data. Using + * information about a table size and block (page) size. + * + * @param startCtid starting point + * @param relationSize table size + * @param blockSize page size + * @param chunkSize required amount of data in each partition + * @return a list of ctid that can be used to generate queries. + */ + @VisibleForTesting + static List> ctidQueryPlan(final Ctid startCtid, + final long relationSize, + final long blockSize, + final int chunkSize, + final double dataSize) { + final List> chunks = new ArrayList<>(); + long lowerBound = startCtid.page; + long upperBound; + final double pages = dataSize / blockSize; + final long eachStep = (long) pages * chunkSize; + LOGGER.info("Will read {} pages to get {}GB", eachStep, chunkSize); + final long theoreticalLastPage = relationSize / blockSize; + LOGGER.debug("Theoretical last page {}", theoreticalLastPage); + upperBound = lowerBound + eachStep; + + if (upperBound > theoreticalLastPage) { + chunks.add(Pair.of(startCtid, null)); + } else { + chunks.add(Pair.of(Ctid.of(lowerBound, startCtid.tuple), Ctid.of(upperBound, 0))); + while (upperBound < theoreticalLastPage) { + lowerBound = upperBound; + upperBound += eachStep; + chunks.add(Pair.of(Ctid.of(lowerBound, 0), upperBound > theoreticalLastPage ? null : Ctid.of(upperBound, 0))); + } + } + // The last pair is (x,y) -> null to indicate an unbounded "WHERE ctid > (x,y)" query. + // The actual last page is approximated. The last subquery will go until the end of table. + return chunks; + } + + public PreparedStatement createCtidQueryStatement( + final Connection connection, + final Ctid lowerBound, + final Ctid upperBound) { + try { + LOGGER.info("Preparing query for table: {}", tableName); + final String fullTableName = getFullyQualifiedTableNameWithQuoting(schemaName, tableName, + quoteString); + final String wrappedColumnNames = RelationalDbQueryUtils.enquoteIdentifierList(columnNames, quoteString); + if (upperBound != null) { + final String sql = "SELECT ctid::text, %s FROM %s WHERE ctid > ?::tid AND ctid <= ?::tid".formatted(wrappedColumnNames, fullTableName); + final PreparedStatement preparedStatement = connection.prepareStatement(sql); + preparedStatement.setObject(1, lowerBound.toString()); + preparedStatement.setObject(2, upperBound.toString()); + LOGGER.info("Executing query for table {}: {}", tableName, preparedStatement); + return preparedStatement; + } else { + final String sql = "SELECT ctid::text, %s FROM %s WHERE ctid > ?::tid".formatted(wrappedColumnNames, fullTableName); + final PreparedStatement preparedStatement = connection.prepareStatement(sql); + preparedStatement.setObject(1, lowerBound.toString()); + LOGGER.info("Executing query for table {}: {}", tableName, preparedStatement); + return preparedStatement; + } + } catch (final SQLException e) { + throw new RuntimeException(e); + } + } + + @Override + public void close() throws Exception { + if (currentIterator != null) { + currentIterator.close(); + } + } + +} diff --git a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/InitialSyncCtidIteratorConstants.java b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/InitialSyncCtidIteratorConstants.java new file mode 100644 index 000000000000..1cda60d449ba --- /dev/null +++ b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/InitialSyncCtidIteratorConstants.java @@ -0,0 +1,22 @@ +/* + * Copyright (c) 2023 Airbyte, Inc., all rights reserved. + */ + +package io.airbyte.integrations.source.postgres.ctid; + +public class InitialSyncCtidIteratorConstants { + + public static final int MAX_ALLOWED_RESYNCS = 5; + public static final int QUERY_TARGET_SIZE_GB = 1; + + private static final double MEGABYTE = Math.pow(1024, 2); + public static final double GIGABYTE = MEGABYTE * 1024; + + /** + * Constants to be used for tests + */ + private static final double ONE_KILOBYTE = 1024; + public static final double EIGHT_KB = ONE_KILOBYTE * 8; + public static final String USE_TEST_CHUNK_SIZE = "use_test_chunk_size"; + +} diff --git a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/PostgresCtidHandler.java b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/PostgresCtidHandler.java index 59e975351247..c9f85d01b822 100644 --- a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/PostgresCtidHandler.java +++ b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/ctid/PostgresCtidHandler.java @@ -4,10 +4,11 @@ package io.airbyte.integrations.source.postgres.ctid; -import static io.airbyte.integrations.source.relationaldb.RelationalDbQueryUtils.getFullyQualifiedTableNameWithQuoting; +import static io.airbyte.integrations.debezium.DebeziumIteratorConstants.SYNC_CHECKPOINT_DURATION_PROPERTY; +import static io.airbyte.integrations.debezium.DebeziumIteratorConstants.SYNC_CHECKPOINT_RECORDS_PROPERTY; +import static io.airbyte.integrations.source.postgres.ctid.InitialSyncCtidIteratorConstants.USE_TEST_CHUNK_SIZE; import com.fasterxml.jackson.databind.JsonNode; -import com.google.common.annotations.VisibleForTesting; import io.airbyte.commons.stream.AirbyteStreamUtils; import io.airbyte.commons.util.AutoCloseableIterator; import io.airbyte.commons.util.AutoCloseableIterators; @@ -17,7 +18,6 @@ import io.airbyte.integrations.source.postgres.ctid.CtidPostgresSourceOperations.RowDataWithCtid; import io.airbyte.integrations.source.postgres.internal.models.CtidStatus; import io.airbyte.integrations.source.relationaldb.DbSourceDiscoverUtil; -import io.airbyte.integrations.source.relationaldb.RelationalDbQueryUtils; import io.airbyte.integrations.source.relationaldb.TableInfo; import io.airbyte.protocol.models.AirbyteStreamNameNamespacePair; import io.airbyte.protocol.models.CommonField; @@ -29,9 +29,6 @@ import io.airbyte.protocol.models.v0.ConfiguredAirbyteCatalog; import io.airbyte.protocol.models.v0.ConfiguredAirbyteStream; import io.airbyte.protocol.models.v0.SyncMode; -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.SQLException; import java.time.Duration; import java.time.Instant; import java.util.ArrayList; @@ -39,8 +36,6 @@ import java.util.Map; import java.util.concurrent.atomic.AtomicLong; import java.util.function.Function; -import java.util.stream.Stream; -import org.apache.commons.lang3.tuple.Pair; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -53,18 +48,15 @@ public class PostgresCtidHandler { private final CtidPostgresSourceOperations sourceOperations; private final String quoteString; private final CtidStateManager ctidStateManager; - private final Map fileNodes; + private final FileNodeHandler fileNodeHandler; final Map tableBlockSizes; private final Function streamStateForIncrementalRunSupplier; - private static final int QUERY_TARGET_SIZE_GB = 1; - public static final double MEGABYTE = Math.pow(1024, 2); - public static final double GIGABYTE = MEGABYTE * 1024; public PostgresCtidHandler(final JsonNode config, final JdbcDatabase database, final CtidPostgresSourceOperations sourceOperations, final String quoteString, - final Map fileNodes, + final FileNodeHandler fileNodeHandler, final Map tableBlockSizes, final CtidStateManager ctidStateManager, final Function streamStateForIncrementalRunSupplier) { @@ -72,16 +64,16 @@ public PostgresCtidHandler(final JsonNode config, this.database = database; this.sourceOperations = sourceOperations; this.quoteString = quoteString; - this.fileNodes = fileNodes; + this.fileNodeHandler = fileNodeHandler; this.tableBlockSizes = tableBlockSizes; this.ctidStateManager = ctidStateManager; this.streamStateForIncrementalRunSupplier = streamStateForIncrementalRunSupplier; } - public List> getIncrementalIterators( - final ConfiguredAirbyteCatalog catalog, - final Map>> tableNameToTable, - final Instant emmitedAt) { + public List> getInitialSyncCtidIterator( + final ConfiguredAirbyteCatalog catalog, + final Map>> tableNameToTable, + final Instant emmitedAt) { final List> iteratorList = new ArrayList<>(); for (final ConfiguredAirbyteStream airbyteStream : catalog.getStreams()) { final AirbyteStream stream = airbyteStream.getStream(); @@ -119,43 +111,6 @@ public List> getIncrementalIterators( return iteratorList; } - /** - * Builds a plan for subqueries. Each query returning an approximate amount of data. Using - * information about a table size and block (page) size. - * - * @param startCtid starting point - * @param relationSize table size - * @param blockSize page size - * @param chunkSizeGB required amount of data in each partition - * @return a list of ctid that can be used to generate queries. - */ - @VisibleForTesting - static List> ctidQueryPlan(final Ctid startCtid, final long relationSize, final long blockSize, final int chunkSizeGB) { - final List> chunks = new ArrayList<>(); - long lowerBound = startCtid.page; - long upperBound; - final double oneGigaPages = GIGABYTE / blockSize; - final long eachStep = (long) oneGigaPages * chunkSizeGB; - LOGGER.info("Will read {} pages to get {}GB", eachStep, chunkSizeGB); - final long theoreticalLastPage = relationSize / blockSize; - LOGGER.debug("Theoretical last page {}", theoreticalLastPage); - upperBound = lowerBound + eachStep; - - if (upperBound > theoreticalLastPage) { - chunks.add(Pair.of(startCtid, null)); - } else { - chunks.add(Pair.of(Ctid.of(lowerBound, startCtid.tuple), Ctid.of(upperBound, 0))); - while (upperBound < theoreticalLastPage) { - lowerBound = upperBound; - upperBound += eachStep; - chunks.add(Pair.of(Ctid.of(lowerBound, 0), upperBound > theoreticalLastPage ? null : Ctid.of(upperBound, 0))); - } - } - // The last pair is (x,y) -> null to indicate an unbounded "WHERE ctid > (x,y)" query. - // The actual last page is approximated. The last subquery will go until the end of table. - return chunks; - } - private AutoCloseableIterator queryTableCtid( final List columnNames, final String schemaName, @@ -164,62 +119,9 @@ private AutoCloseableIterator queryTableCtid( final long blockSize) { LOGGER.info("Queueing query for table: {}", tableName); - final AirbyteStreamNameNamespacePair airbyteStream = - AirbyteStreamUtils.convertFromNameAndNamespace(tableName, schemaName); - - final CtidStatus currentCtidStatus = ctidStateManager.getCtidStatus(airbyteStream); - - // Rather than trying to read an entire table with a "WHERE ctid > (0,0)" query, - // We are creating a list of lazy iterators each holding a subquery according to the plan. - // All subqueries are then composed in a single composite iterator. - // Because list consists of lazy iterators, the query is only executing when needed one after the - // other. - final List> subQueriesPlan = - ctidQueryPlan((currentCtidStatus == null) ? Ctid.of(0, 0) : Ctid.of(currentCtidStatus.getCtid()), tableSize, blockSize, QUERY_TARGET_SIZE_GB); - final List> subQueriesIterators = new ArrayList<>(); - subQueriesPlan.forEach(p -> subQueriesIterators.add(AutoCloseableIterators.lazyIterator(() -> { - try { - final Stream stream = database.unsafeQuery( - connection -> createCtidQueryStatement(connection, columnNames, schemaName, tableName, p.getLeft(), p.getRight()), - sourceOperations::recordWithCtid); - - return AutoCloseableIterators.fromStream(stream, airbyteStream); - } catch (final SQLException e) { - throw new RuntimeException(e); - } - }, airbyteStream))); - return AutoCloseableIterators.concatWithEagerClose(subQueriesIterators); - } - - private PreparedStatement createCtidQueryStatement( - final Connection connection, - final List columnNames, - final String schemaName, - final String tableName, - final Ctid lowerBound, - final Ctid upperBound) { - try { - LOGGER.info("Preparing query for table: {}", tableName); - final String fullTableName = getFullyQualifiedTableNameWithQuoting(schemaName, tableName, - quoteString); - final String wrappedColumnNames = RelationalDbQueryUtils.enquoteIdentifierList(columnNames, quoteString); - if (upperBound != null) { - final String sql = "SELECT ctid::text, %s FROM %s WHERE ctid > ?::tid AND ctid <= ?::tid".formatted(wrappedColumnNames, fullTableName); - final PreparedStatement preparedStatement = connection.prepareStatement(sql); - preparedStatement.setObject(1, lowerBound.toString()); - preparedStatement.setObject(2, upperBound.toString()); - LOGGER.info("Executing query for table {}: {}", tableName, preparedStatement); - return preparedStatement; - } else { - final String sql = "SELECT ctid::text, %s FROM %s WHERE ctid > ?::tid".formatted(wrappedColumnNames, fullTableName); - final PreparedStatement preparedStatement = connection.prepareStatement(sql); - preparedStatement.setObject(1, lowerBound.toString()); - LOGGER.info("Executing query for table {}: {}", tableName, preparedStatement); - return preparedStatement; - } - } catch (final SQLException e) { - throw new RuntimeException(e); - } + return new InitialSyncCtidIterator(ctidStateManager, database, sourceOperations, quoteString, columnNames, schemaName, tableName, tableSize, + blockSize, fileNodeHandler, + config.has(USE_TEST_CHUNK_SIZE) && config.get(USE_TEST_CHUNK_SIZE).asBoolean()); } // Transforms the given iterator to create an {@link AirbyteRecordMessage} @@ -261,17 +163,14 @@ private AutoCloseableIterator augmentWithState(final AutoCloseab final JsonNode incrementalState = (currentCtidStatus == null || currentCtidStatus.getIncrementalState() == null) ? streamStateForIncrementalRunSupplier.apply(pair) : currentCtidStatus.getIncrementalState(); - final Long latestFileNode = fileNodes.get(pair); - assert latestFileNode != null; - final Duration syncCheckpointDuration = - config.get("sync_checkpoint_seconds") != null ? Duration.ofSeconds(config.get("sync_checkpoint_seconds").asLong()) + config.get(SYNC_CHECKPOINT_DURATION_PROPERTY) != null ? Duration.ofSeconds(config.get(SYNC_CHECKPOINT_DURATION_PROPERTY).asLong()) : CtidStateIterator.SYNC_CHECKPOINT_DURATION; - final Long syncCheckpointRecords = config.get("sync_checkpoint_records") != null ? config.get("sync_checkpoint_records").asLong() + final Long syncCheckpointRecords = config.get(SYNC_CHECKPOINT_RECORDS_PROPERTY) != null ? config.get(SYNC_CHECKPOINT_RECORDS_PROPERTY).asLong() : CtidStateIterator.SYNC_CHECKPOINT_RECORDS; return AutoCloseableIterators.transformIterator( - r -> new CtidStateIterator(r, pair, latestFileNode, ctidStateManager, incrementalState, + r -> new CtidStateIterator(r, pair, fileNodeHandler, ctidStateManager, incrementalState, syncCheckpointDuration, syncCheckpointRecords), recordIterator, pair); } diff --git a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/cursor_based/CursorBasedCtidUtils.java b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/cursor_based/CursorBasedCtidUtils.java index 2b8b65e5994d..25aa60810281 100644 --- a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/cursor_based/CursorBasedCtidUtils.java +++ b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/cursor_based/CursorBasedCtidUtils.java @@ -100,7 +100,7 @@ public record CursorBasedStreams(List streamsForCursorB * @param streamPair stream to reclassify */ public static void reclassifyCategorisedCtidStream(final StreamsCategorised categorisedStreams, - AirbyteStreamNameNamespacePair streamPair) { + final AirbyteStreamNameNamespacePair streamPair) { final Optional foundStream = categorisedStreams .ctidStreams() .streamsForCtidSync().stream().filter(c -> Objects.equals( @@ -128,7 +128,7 @@ public static void reclassifyCategorisedCtidStream(final StreamsCategorised categorisedStreams, - List streamPairs) { + final List streamPairs) { streamPairs.forEach(c -> reclassifyCategorisedCtidStream(categorisedStreams, c)); } diff --git a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/xmin/XminCtidUtils.java b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/xmin/XminCtidUtils.java index 9316376a5bbe..97f4b19855af 100644 --- a/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/xmin/XminCtidUtils.java +++ b/airbyte-integrations/connectors/source-postgres/src/main/java/io/airbyte/integrations/source/postgres/xmin/XminCtidUtils.java @@ -106,7 +106,7 @@ public record XminStreams(List streamsForXminSync, } public static void reclassifyCategorisedCtidStream(final StreamsCategorised categorisedStreams, - AirbyteStreamNameNamespacePair streamPair) { + final AirbyteStreamNameNamespacePair streamPair) { final Optional foundStream = categorisedStreams .ctidStreams() .streamsForCtidSync().stream().filter(c -> Objects.equals( @@ -134,7 +134,7 @@ public static void reclassifyCategorisedCtidStream(final StreamsCategorised categorisedStreams, - List streamPairs) { + final List streamPairs) { streamPairs.forEach(c -> reclassifyCategorisedCtidStream(categorisedStreams, c)); } diff --git a/airbyte-integrations/connectors/source-postgres/src/test/java/io/airbyte/integrations/source/postgres/CdcPostgresSourceTest.java b/airbyte-integrations/connectors/source-postgres/src/test/java/io/airbyte/integrations/source/postgres/CdcPostgresSourceTest.java index 9ab452375bc8..504e8ddd614f 100644 --- a/airbyte-integrations/connectors/source-postgres/src/test/java/io/airbyte/integrations/source/postgres/CdcPostgresSourceTest.java +++ b/airbyte-integrations/connectors/source-postgres/src/test/java/io/airbyte/integrations/source/postgres/CdcPostgresSourceTest.java @@ -4,10 +4,13 @@ package io.airbyte.integrations.source.postgres; +import static io.airbyte.integrations.debezium.DebeziumIteratorConstants.SYNC_CHECKPOINT_DURATION_PROPERTY; +import static io.airbyte.integrations.debezium.DebeziumIteratorConstants.SYNC_CHECKPOINT_RECORDS_PROPERTY; import static io.airbyte.integrations.debezium.internals.DebeziumEventUtils.CDC_DELETED_AT; import static io.airbyte.integrations.debezium.internals.DebeziumEventUtils.CDC_LSN; import static io.airbyte.integrations.debezium.internals.DebeziumEventUtils.CDC_UPDATED_AT; import static io.airbyte.integrations.source.postgres.ctid.CtidStateManager.STATE_TYPE_KEY; +import static io.airbyte.integrations.source.postgres.ctid.InitialSyncCtidIteratorConstants.USE_TEST_CHUNK_SIZE; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertNotEquals; @@ -37,6 +40,7 @@ import io.airbyte.db.jdbc.JdbcUtils; import io.airbyte.integrations.base.Source; import io.airbyte.integrations.debezium.CdcSourceTest; +import io.airbyte.integrations.debezium.CdcTargetPosition; import io.airbyte.integrations.debezium.internals.postgres.PostgresCdcTargetPosition; import io.airbyte.integrations.debezium.internals.postgres.PostgresReplicationConnection; import io.airbyte.integrations.util.ConnectorExceptionUtil; @@ -88,7 +92,7 @@ public class CdcPostgresSourceTest extends CdcSourceTest { protected static final String SLOT_NAME_BASE = "debezium_slot"; protected static final String PUBLICATION = "publication"; - protected static final int INITIAL_WAITING_SECONDS = 30; + protected static final int INITIAL_WAITING_SECONDS = 15; private PostgreSQLContainer container; protected String dbName; @@ -151,7 +155,7 @@ private JsonNode getConfig(final String dbName, final String userName, final Str .put(JdbcUtils.SSL_KEY, false) .put("is_test", true) .put("replication_method", replicationMethod) - .put("sync_checkpoint_records", 1) + .put(SYNC_CHECKPOINT_RECORDS_PROPERTY, 1) .build()); } @@ -908,11 +912,10 @@ protected void verifyCheckpointStatesByRecords() throws Exception { * * @throws Exception Exception happening in the test. */ - @Disabled("Disabled 'verifyCheckpointStatesBySeconds' test as flaky. https://github.com/airbytehq/airbyte/issues/29411") @Test protected void verifyCheckpointStatesBySeconds() throws Exception { // We require a huge amount of records, otherwise Debezium will notify directly the last offset. - final int recordsToCreate = 20000; + final int recordsToCreate = 40000; final AutoCloseableIterator firstBatchIterator = getSource() .read(getConfig(), CONFIGURED_CATALOG, null); @@ -932,8 +935,8 @@ protected void verifyCheckpointStatesBySeconds() throws Exception { writeModelRecord(record); } final JsonNode config = getConfig(); - ((ObjectNode) config).put("sync_checkpoint_seconds", 1); - ((ObjectNode) config).put("sync_checkpoint_records", 100_000); + ((ObjectNode) config).put(SYNC_CHECKPOINT_DURATION_PROPERTY, 1); + ((ObjectNode) config).put(SYNC_CHECKPOINT_RECORDS_PROPERTY, 100_000); final JsonNode stateAfterFirstSync = Jsons.jsonNode(Collections.singletonList(stateMessages.get(stateMessages.size() - 1))); final AutoCloseableIterator secondBatchIterator = getSource() @@ -947,4 +950,57 @@ protected void verifyCheckpointStatesBySeconds() throws Exception { assertEquals(stateMessagesCDC.size(), stateMessagesCDC.stream().distinct().count(), "There are duplicated states."); } + /** + * This test is setup to force + * {@link io.airbyte.integrations.source.postgres.ctid.InitialSyncCtidIterator} create multiple + * pages + */ + @Test + protected void ctidIteratorPageSizeTest() throws Exception { + final int recordsToCreate = 25_000; + final Set expectedIds = new HashSet<>(); + MODEL_RECORDS.forEach(c -> expectedIds.add(c.get(COL_ID).asInt())); + + for (int recordsCreated = 0; recordsCreated < recordsToCreate; recordsCreated++) { + final int id = 200 + recordsCreated; + final JsonNode record = + Jsons.jsonNode(ImmutableMap + .of(COL_ID, id, COL_MAKE_ID, 1, COL_MODEL, + "F-" + recordsCreated)); + writeModelRecord(record); + expectedIds.add(id); + } + + /** + * Setting the property to make the + * {@link io.airbyte.integrations.source.postgres.ctid.InitialSyncCtidIterator} use smaller page + * size of 8KB instead of default 1GB This allows us to make sure that the iterator logic works with + * multiple pages (sub queries) + */ + final JsonNode config = getConfig(); + ((ObjectNode) config).put(USE_TEST_CHUNK_SIZE, true); + final AutoCloseableIterator firstBatchIterator = getSource() + .read(config, CONFIGURED_CATALOG, null); + final List dataFromFirstBatch = AutoCloseableIterators + .toListAndClose(firstBatchIterator); + + final Set airbyteRecordMessages = extractRecordMessages(dataFromFirstBatch); + assertEquals(recordsToCreate + MODEL_RECORDS.size(), airbyteRecordMessages.size()); + + airbyteRecordMessages.forEach(c -> { + assertTrue(expectedIds.contains(c.getData().get(COL_ID).asInt())); + expectedIds.remove(c.getData().get(COL_ID).asInt()); + }); + } + + @Override + protected void compareTargetPositionFromTheRecordsWithTargetPostionGeneratedBeforeSync(final CdcTargetPosition targetPosition, final AirbyteRecordMessage record) { + // The LSN from records should be either equal or grater than the position value before the sync started. + // The current Write-Ahead Log (WAL) position can move ahead even without any data modifications (INSERT, UPDATE, DELETE) + // The start and end of transactions, even read-only ones, are recorded in the WAL. So, simply starting and committing a transaction can cause the WAL location to move forward. + // Periodic checkpoints, which write dirty pages from memory to disk to ensure database consistency, generate WAL records. Checkpoints happen even if there are no active data modifications + assert targetPosition instanceof PostgresCdcTargetPosition; + assertTrue(extractPosition(record.getData()).targetLsn.compareTo(((PostgresCdcTargetPosition) targetPosition).targetLsn) >= 0); + } + } diff --git a/airbyte-integrations/connectors/source-postgres/src/test/java/io/airbyte/integrations/source/postgres/PostgresJdbcSourceAcceptanceTest.java b/airbyte-integrations/connectors/source-postgres/src/test/java/io/airbyte/integrations/source/postgres/PostgresJdbcSourceAcceptanceTest.java index 99e402077d30..953e14c06d29 100644 --- a/airbyte-integrations/connectors/source-postgres/src/test/java/io/airbyte/integrations/source/postgres/PostgresJdbcSourceAcceptanceTest.java +++ b/airbyte-integrations/connectors/source-postgres/src/test/java/io/airbyte/integrations/source/postgres/PostgresJdbcSourceAcceptanceTest.java @@ -4,11 +4,8 @@ package io.airbyte.integrations.source.postgres; +import static io.airbyte.integrations.debezium.DebeziumIteratorConstants.SYNC_CHECKPOINT_RECORDS_PROPERTY; import static io.airbyte.integrations.source.postgres.ctid.CtidStateManager.STATE_TYPE_KEY; -import static io.airbyte.integrations.source.postgres.utils.PostgresUnitTestsUtil.createRecord; -import static io.airbyte.integrations.source.postgres.utils.PostgresUnitTestsUtil.extractSpecificFieldFromCombinedMessages; -import static io.airbyte.integrations.source.postgres.utils.PostgresUnitTestsUtil.extractStateMessage; -import static io.airbyte.integrations.source.postgres.utils.PostgresUnitTestsUtil.filterRecords; import static io.airbyte.integrations.source.postgres.utils.PostgresUnitTestsUtil.map; import static java.util.stream.Collectors.toList; import static org.assertj.core.api.Assertions.assertThat; @@ -515,7 +512,7 @@ public void testUserHasNoPermissionToDataBase() throws Exception { @Test void testReadMultipleTablesIncrementally() throws Exception { - ((ObjectNode) config).put("sync_checkpoint_records", 1); + ((ObjectNode) config).put(SYNC_CHECKPOINT_RECORDS_PROPERTY, 1); final String namespace = getDefaultNamespace(); final String streamOneName = TABLE_NAME + "one"; // Create a fresh first table diff --git a/airbyte-integrations/connectors/source-postgres/src/test/java/io/airbyte/integrations/source/postgres/XminPostgresSourceTest.java b/airbyte-integrations/connectors/source-postgres/src/test/java/io/airbyte/integrations/source/postgres/XminPostgresSourceTest.java index bba095875aff..81fac2cffe63 100644 --- a/airbyte-integrations/connectors/source-postgres/src/test/java/io/airbyte/integrations/source/postgres/XminPostgresSourceTest.java +++ b/airbyte-integrations/connectors/source-postgres/src/test/java/io/airbyte/integrations/source/postgres/XminPostgresSourceTest.java @@ -4,6 +4,7 @@ package io.airbyte.integrations.source.postgres; +import static io.airbyte.integrations.debezium.DebeziumIteratorConstants.SYNC_CHECKPOINT_RECORDS_PROPERTY; import static io.airbyte.integrations.source.postgres.utils.PostgresUnitTestsUtil.createRecord; import static io.airbyte.integrations.source.postgres.utils.PostgresUnitTestsUtil.extractStateMessage; import static io.airbyte.integrations.source.postgres.utils.PostgresUnitTestsUtil.filterRecords; @@ -174,7 +175,7 @@ protected JsonNode getXminConfig(final PostgreSQLContainer psqlDb, final Stri .put(JdbcUtils.PASSWORD_KEY, psqlDb.getPassword()) .put(JdbcUtils.SSL_KEY, false) .put("replication_method", getReplicationMethod()) - .put("sync_checkpoint_records", 1) + .put(SYNC_CHECKPOINT_RECORDS_PROPERTY, 1) .build()); } diff --git a/airbyte-integrations/connectors/source-postgres/src/test/java/io/airbyte/integrations/source/postgres/ctid/PostgresCtidHandlerTest.java b/airbyte-integrations/connectors/source-postgres/src/test/java/io/airbyte/integrations/source/postgres/ctid/PostgresCtidHandlerTest.java index caa95f561b70..64c53b33188c 100644 --- a/airbyte-integrations/connectors/source-postgres/src/test/java/io/airbyte/integrations/source/postgres/ctid/PostgresCtidHandlerTest.java +++ b/airbyte-integrations/connectors/source-postgres/src/test/java/io/airbyte/integrations/source/postgres/ctid/PostgresCtidHandlerTest.java @@ -4,6 +4,7 @@ package io.airbyte.integrations.source.postgres.ctid; +import static io.airbyte.integrations.source.postgres.ctid.InitialSyncCtidIteratorConstants.GIGABYTE; import static org.junit.jupiter.api.Assertions.assertEquals; import java.util.List; @@ -14,7 +15,7 @@ public class PostgresCtidHandlerTest { @Test void testCtidQueryBounds() { - var chunks = PostgresCtidHandler.ctidQueryPlan(new Ctid(0, 0), 380545032192L, 8192L, 50); + var chunks = InitialSyncCtidIterator.ctidQueryPlan(new Ctid(0, 0), 380545032192L, 8192L, 50, GIGABYTE); var expected = List.of( Pair.of(Ctid.of(0, 0), Ctid.of(6553600, 0)), Pair.of(Ctid.of(6553600, 0), Ctid.of(13107200, 0)), @@ -26,7 +27,7 @@ void testCtidQueryBounds() { Pair.of(Ctid.of(45875200, 0), null)); assertEquals(expected, chunks); - chunks = PostgresCtidHandler.ctidQueryPlan(new Ctid("(23000000,123)"), 380545032192L, 8192L, 45); + chunks = InitialSyncCtidIterator.ctidQueryPlan(new Ctid("(23000000,123)"), 380545032192L, 8192L, 45, GIGABYTE); expected = List.of( Pair.of(Ctid.of("(23000000,123)"), Ctid.of(28898240, 0)), Pair.of(Ctid.of(28898240, 0), Ctid.of("(34796480,0)")), @@ -34,17 +35,16 @@ void testCtidQueryBounds() { Pair.of(Ctid.of(40694720, 0), null)); assertEquals(expected, chunks); - chunks = PostgresCtidHandler.ctidQueryPlan(Ctid.of(0, 0), 380545L, 8192L, 45); - expected = List.of( - Pair.of(Ctid.of(0, 0), null)); + chunks = InitialSyncCtidIterator.ctidQueryPlan(Ctid.of(0, 0), 380545L, 8192L, 45, GIGABYTE); + expected = List.of(Pair.of(Ctid.of(0, 0), null)); assertEquals(expected, chunks); - chunks = PostgresCtidHandler.ctidQueryPlan(Ctid.of(9876, 5432), 380545L, 8192L, 45); + chunks = InitialSyncCtidIterator.ctidQueryPlan(Ctid.of(9876, 5432), 380545L, 8192L, 45, GIGABYTE); expected = List.of( Pair.of(Ctid.of(9876, 5432), null)); assertEquals(expected, chunks); - chunks = PostgresCtidHandler.ctidQueryPlan(Ctid.of(0, 0), 4096L, 8192L, 45); + chunks = InitialSyncCtidIterator.ctidQueryPlan(Ctid.of(0, 0), 4096L, 8192L, 45, GIGABYTE); expected = List.of( Pair.of(Ctid.of(0, 0), null)); assertEquals(expected, chunks); diff --git a/airbyte-integrations/connectors/source-posthog/acceptance-test-config.yml b/airbyte-integrations/connectors/source-posthog/acceptance-test-config.yml index 41c805a957a4..05d298bc1ef8 100644 --- a/airbyte-integrations/connectors/source-posthog/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-posthog/acceptance-test-config.yml @@ -17,13 +17,9 @@ tests: - config_path: "secrets/config.json" configured_catalog_path: "integration_tests/configured_catalog_events_incremental.json" future_state_path: "integration_tests/future_state.json" - cursor_paths: - "events": ["2331", "timestamp"] - config_path: "secrets/config.json" configured_catalog_path: "integration_tests/configured_catalog_events_incremental.json" future_state_path: "integration_tests/future_state_old.json" - cursor_paths: - "events": ["2331", "timestamp"] full_refresh: - config_path: "secrets/config.json" configured_catalog_path: "integration_tests/configured_catalog.json" diff --git a/airbyte-integrations/connectors/source-posthog/metadata.yaml b/airbyte-integrations/connectors/source-posthog/metadata.yaml index a1877bba6d3d..bd3eec0a136c 100644 --- a/airbyte-integrations/connectors/source-posthog/metadata.yaml +++ b/airbyte-integrations/connectors/source-posthog/metadata.yaml @@ -1,4 +1,7 @@ data: + ab_internal: + ql: 300 + sl: 100 allowedHosts: hosts: - ${base_url} @@ -8,6 +11,7 @@ data: definitionId: af6d50ee-dddf-4126-a8ee-7faee990774f dockerImageTag: 0.1.14 dockerRepository: airbyte/source-posthog + documentationUrl: https://docs.airbyte.com/integrations/sources/posthog githubIssueLabel: source-posthog icon: posthog.svg license: MIT @@ -18,12 +22,8 @@ data: oss: enabled: true releaseStage: beta - documentationUrl: https://docs.airbyte.com/integrations/sources/posthog + supportLevel: community tags: - language:low-code - language:python - ab_internal: - sl: 200 - ql: 300 - supportLevel: certified metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-prestashop/metadata.yaml b/airbyte-integrations/connectors/source-prestashop/metadata.yaml index a3a5215f6727..184347008685 100644 --- a/airbyte-integrations/connectors/source-prestashop/metadata.yaml +++ b/airbyte-integrations/connectors/source-prestashop/metadata.yaml @@ -1,4 +1,7 @@ data: + ab_internal: + ql: 300 + sl: 100 allowedHosts: hosts: - ${domain} @@ -7,6 +10,7 @@ data: definitionId: d60a46d4-709f-4092-a6b7-2457f7d455f5 dockerImageTag: 1.0.0 dockerRepository: airbyte/source-prestashop + documentationUrl: https://docs.airbyte.com/integrations/sources/prestashop githubIssueLabel: source-prestashop icon: prestashop.svg license: MIT @@ -17,12 +21,8 @@ data: oss: enabled: true releaseStage: beta - documentationUrl: https://docs.airbyte.com/integrations/sources/prestashop + supportLevel: community tags: - language:low-code - language:python - ab_internal: - sl: 200 - ql: 300 - supportLevel: certified metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-python-http-tutorial/build.gradle b/airbyte-integrations/connectors/source-python-http-tutorial/build.gradle index 735a02cd833e..057420ddabc1 100644 --- a/airbyte-integrations/connectors/source-python-http-tutorial/build.gradle +++ b/airbyte-integrations/connectors/source-python-http-tutorial/build.gradle @@ -24,8 +24,3 @@ airbyteStandardSourceTestFile { // for incremental syncing (e.g. include cursor fields, etc). configuredCatalogPath = "sample_files/configured_catalog.json" } - - -dependencies { - implementation files(project(':airbyte-integrations:bases:base-standard-source-test-file').airbyteDocker.outputs) -} diff --git a/airbyte-integrations/connectors/source-railz/acceptance-test-config.yml b/airbyte-integrations/connectors/source-railz/acceptance-test-config.yml index 3fa37ad10467..a2a9431e605e 100644 --- a/airbyte-integrations/connectors/source-railz/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-railz/acceptance-test-config.yml @@ -32,25 +32,6 @@ acceptance_tests: configured_catalog_path: "integration_tests/configured_catalog.json" future_state: future_state_path: "integration_tests/abnormal_state.json" - threshold_days: 30 - cursor_paths: - accounting_transactions: ["b_dynamicsBusinessCentral", "dynamicsBusinessCentral", "postedDate"] - bank_transfers: ["b_xero", "xero", "date"] - bills: ["b_freshbooks", "freshbooks", "postedDate"] - bills_credit_notes: ["b_xero", "xero", "postedDate"] - bills_payments: ["b_dynamicsBusinessCentral", "dynamicsBusinessCentral", "date"] - commerce_disputes: ["b_square", "square", "createdDate"] - commerce_orders: ["b_square", "square", "createdDate"] - commerce_products: ["b_square", "square", "createdDate"] - commerce_transactions: ["b_square", "square", "createdDate"] - deposits: ["b_quickbooks", "quickbooks", "postedDate"] - estimates: ["b_xero", "xero", "postedDate"] - invoices: ["b_sageBusinessCloud", "sageBusinessCloud", "postedDate"] - invoices_credit_notes: ["b_freshbooks", "freshbooks", "postedDate"] - invoices_payments: ["b_freshbooks", "freshbooks", "date"] - journal_entries: ["b_freshbooks", "freshbooks", "postedDate"] - purchase_orders: ["b_oracleNetsuite", "oracleNetsuite", "postedDate"] - refunds: ["b_xero", "xero", "date"] full_refresh: tests: - config_path: "secrets/config.json" diff --git a/airbyte-integrations/connectors/source-railz/build.gradle b/airbyte-integrations/connectors/source-railz/build.gradle index fbfcc81a63a5..01ed09d25f07 100644 --- a/airbyte-integrations/connectors/source-railz/build.gradle +++ b/airbyte-integrations/connectors/source-railz/build.gradle @@ -7,7 +7,3 @@ plugins { airbytePython { moduleDirectory 'source_railz' } - -dependencies { - implementation files(project(':airbyte-integrations:bases:connector-acceptance-test').airbyteDocker.outputs) -} diff --git a/airbyte-integrations/connectors/source-recharge/Dockerfile b/airbyte-integrations/connectors/source-recharge/Dockerfile index bbc8964f4f60..460d9a306298 100644 --- a/airbyte-integrations/connectors/source-recharge/Dockerfile +++ b/airbyte-integrations/connectors/source-recharge/Dockerfile @@ -12,5 +12,5 @@ RUN pip install . ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=1.0.0 +LABEL io.airbyte.version=1.0.1 LABEL io.airbyte.name=airbyte/source-recharge diff --git a/airbyte-integrations/connectors/source-recharge/metadata.yaml b/airbyte-integrations/connectors/source-recharge/metadata.yaml index b4a498ec5a26..121d4f086f3c 100644 --- a/airbyte-integrations/connectors/source-recharge/metadata.yaml +++ b/airbyte-integrations/connectors/source-recharge/metadata.yaml @@ -5,7 +5,7 @@ data: connectorSubtype: api connectorType: source definitionId: 45d2e135-2ede-49e1-939f-3e3ec357a65e - dockerImageTag: 1.0.0 + dockerImageTag: 1.0.1 dockerRepository: airbyte/source-recharge githubIssueLabel: source-recharge icon: recharge.svg diff --git a/airbyte-integrations/connectors/source-recharge/source_recharge/api.py b/airbyte-integrations/connectors/source-recharge/source_recharge/api.py index c2c9d3e85f8c..fd21d51b218c 100644 --- a/airbyte-integrations/connectors/source-recharge/source_recharge/api.py +++ b/airbyte-integrations/connectors/source-recharge/source_recharge/api.py @@ -11,8 +11,8 @@ from airbyte_cdk.sources.streams.http import HttpStream from airbyte_cdk.sources.utils.transform import TransformConfig, TypeTransformer -API_VERSION = "2021-11" -OLD_API_VERSION = "2021-01" +API_VERSION_2021_11 = "2021-11" +API_VERSION_2021_01 = "2021-01" class RechargeStream(HttpStream, ABC): @@ -38,7 +38,7 @@ def data_path(self): def request_headers( self, stream_state: Mapping[str, Any], stream_slice: Mapping[str, Any] = None, next_page_token: Mapping[str, Any] = None ) -> Mapping[str, Any]: - return {"x-recharge-version": API_VERSION} + return {"x-recharge-version": API_VERSION_2021_11} def path( self, stream_state: Mapping[str, Any] = None, stream_slice: Mapping[str, Any] = None, next_page_token: Mapping[str, Any] = None @@ -174,8 +174,14 @@ class Onetimes(IncrementalRechargeStream): class Orders(IncrementalRechargeStream): """ Orders Stream: https://developer.rechargepayments.com/v1-shopify?python#list-orders + Using old API version to avoid schema changes and loosing email, first_name, last_name columns, because in new version it not present """ + def request_headers( + self, stream_state: Mapping[str, Any], stream_slice: Mapping[str, Any] = None, next_page_token: Mapping[str, Any] = None + ) -> Mapping[str, Any]: + return {"x-recharge-version": API_VERSION_2021_01} + class Products(RechargeStream): """ @@ -186,7 +192,7 @@ class Products(RechargeStream): def request_headers( self, stream_state: Mapping[str, Any], stream_slice: Mapping[str, Any] = None, next_page_token: Mapping[str, Any] = None ) -> Mapping[str, Any]: - return {"x-recharge-version": OLD_API_VERSION} + return {"x-recharge-version": API_VERSION_2021_01} class Shop(RechargeStream): @@ -201,7 +207,7 @@ class Shop(RechargeStream): def request_headers( self, stream_state: Mapping[str, Any], stream_slice: Mapping[str, Any] = None, next_page_token: Mapping[str, Any] = None ) -> Mapping[str, Any]: - return {"x-recharge-version": OLD_API_VERSION} + return {"x-recharge-version": API_VERSION_2021_01} class Subscriptions(IncrementalRechargeStream): diff --git a/airbyte-integrations/connectors/source-redshift/.dockerignore b/airbyte-integrations/connectors/source-redshift/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/source-redshift/.dockerignore +++ b/airbyte-integrations/connectors/source-redshift/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/source-redshift/build.gradle b/airbyte-integrations/connectors/source-redshift/build.gradle index d6722aa55388..a2c7fda2b8ab 100644 --- a/airbyte-integrations/connectors/source-redshift/build.gradle +++ b/airbyte-integrations/connectors/source-redshift/build.gradle @@ -33,6 +33,5 @@ dependencies { integrationTestJavaImplementation testFixtures(project(':airbyte-integrations:connectors:source-jdbc')) integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-redshift') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors/source-relational-db/.dockerignore b/airbyte-integrations/connectors/source-relational-db/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/source-relational-db/.dockerignore +++ b/airbyte-integrations/connectors/source-relational-db/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/source-relational-db/build.gradle b/airbyte-integrations/connectors/source-relational-db/build.gradle index edfda089d804..f86745ad2aa7 100644 --- a/airbyte-integrations/connectors/source-relational-db/build.gradle +++ b/airbyte-integrations/connectors/source-relational-db/build.gradle @@ -19,11 +19,10 @@ dependencies { testImplementation project(':airbyte-test-utils') testImplementation libs.postgresql - testImplementation libs.connectors.testcontainers.postgresql + testImplementation libs.testcontainers.postgresql testImplementation libs.junit.jupiter.system.stubs - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } jsonSchema2Pojo { diff --git a/airbyte-integrations/connectors/source-s3/Dockerfile b/airbyte-integrations/connectors/source-s3/Dockerfile index 5336f9313a0c..c5ae0b44d617 100644 --- a/airbyte-integrations/connectors/source-s3/Dockerfile +++ b/airbyte-integrations/connectors/source-s3/Dockerfile @@ -17,5 +17,5 @@ COPY source_s3 ./source_s3 ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=3.1.10 +LABEL io.airbyte.version=4.0.4 LABEL io.airbyte.name=airbyte/source-s3 diff --git a/airbyte-integrations/connectors/source-s3/acceptance-test-config.yml b/airbyte-integrations/connectors/source-s3/acceptance-test-config.yml index 38a38eac75d6..8dec5340d77b 100644 --- a/airbyte-integrations/connectors/source-s3/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-s3/acceptance-test-config.yml @@ -6,47 +6,47 @@ acceptance_tests: path: integration_tests/expected_records/csv.jsonl exact_order: true timeout_seconds: 1800 - - config_path: secrets/legacy_csv_custom_encoding_config.json + - config_path: secrets/v4_csv_custom_encoding_config.json expect_records: path: integration_tests/expected_records/legacy_csv_custom_encoding.jsonl exact_order: true timeout_seconds: 1800 - - config_path: secrets/legacy_csv_custom_format_config.json + - config_path: secrets/v4_csv_custom_format_config.json expect_records: path: integration_tests/expected_records/legacy_csv_custom_format.jsonl exact_order: true timeout_seconds: 1800 - - config_path: secrets/legacy_csv_user_schema_config.json + - config_path: secrets/v4_csv_user_schema_config.json expect_records: path: integration_tests/expected_records/legacy_csv_user_schema.jsonl exact_order: true timeout_seconds: 1800 - - config_path: secrets/legacy_csv_no_header_config.json + - config_path: secrets/v4_csv_no_header_config.json expect_records: path: integration_tests/expected_records/legacy_csv_no_header.jsonl exact_order: true timeout_seconds: 1800 - - config_path: secrets/legacy_csv_skip_rows_config.json + - config_path: secrets/v4_csv_skip_rows_config.json expect_records: path: integration_tests/expected_records/legacy_csv_skip_rows.jsonl exact_order: true timeout_seconds: 1800 - - config_path: secrets/legacy_csv_skip_rows_no_header_config.json + - config_path: secrets/v4_csv_skip_rows_no_header_config.json expect_records: path: integration_tests/expected_records/legacy_csv_skip_rows_no_header.jsonl exact_order: true timeout_seconds: 1800 - - config_path: secrets/legacy_csv_with_nulls_config.json + - config_path: secrets/v4_csv_with_nulls_config.json expect_records: path: integration_tests/expected_records/legacy_csv_with_nulls.jsonl exact_order: true timeout_seconds: 1800 - - config_path: secrets/legacy_csv_with_null_bools_config.json + - config_path: secrets/v4_csv_with_null_bools_config.json expect_records: path: integration_tests/expected_records/legacy_csv_with_null_bools.jsonl exact_order: true timeout_seconds: 1800 - - config_path: secrets/parquet_config.json + - config_path: secrets/v4_parquet_config.json expect_records: path: integration_tests/expected_records/parquet.jsonl exact_order: true @@ -56,21 +56,21 @@ acceptance_tests: path: integration_tests/expected_records/parquet_dataset.jsonl exact_order: true timeout_seconds: 1800 - - config_path: secrets/legacy_parquet_decimal_config.json + - config_path: secrets/v4_parquet_decimal_config.json expect_records: path: integration_tests/expected_records/legacy_parquet_decimal.jsonl timeout_seconds: 1800 - - config_path: secrets/avro_config.json + - config_path: secrets/v4_avro_config.json expect_records: path: integration_tests/expected_records/avro.jsonl exact_order: true timeout_seconds: 1800 - - config_path: secrets/jsonl_config.json + - config_path: secrets/v4_jsonl_config.json expect_records: path: integration_tests/expected_records/jsonl.jsonl exact_order: true timeout_seconds: 1800 - - config_path: secrets/jsonl_newlines_config.json + - config_path: secrets/v4_jsonl_newlines_config.json expect_records: path: integration_tests/expected_records/jsonl_newlines.jsonl exact_order: true @@ -80,60 +80,82 @@ acceptance_tests: tests: - config_path: secrets/config.json status: succeed - - config_path: secrets/legacy_csv_custom_encoding_config.json + - config_path: secrets/v4_csv_custom_encoding_config.json status: succeed - - config_path: secrets/legacy_csv_custom_format_config.json + - config_path: secrets/v4_csv_custom_format_config.json status: succeed - - config_path: secrets/legacy_csv_user_schema_config.json + - config_path: secrets/v4_csv_user_schema_config.json status: succeed - - config_path: secrets/legacy_csv_no_header_config.json + - config_path: secrets/v4_csv_no_header_config.json status: succeed - - config_path: secrets/legacy_csv_skip_rows_config.json + - config_path: secrets/v4_csv_skip_rows_config.json status: succeed - - config_path: secrets/legacy_csv_skip_rows_no_header_config.json + - config_path: secrets/v4_csv_skip_rows_no_header_config.json status: succeed - - config_path: secrets/legacy_csv_with_nulls_config.json + - config_path: secrets/v4_csv_with_nulls_config.json status: succeed - - config_path: secrets/legacy_csv_with_null_bools_config.json + - config_path: secrets/v4_csv_with_null_bools_config.json status: succeed - - config_path: secrets/parquet_config.json + - config_path: secrets/v4_parquet_config.json status: succeed - - config_path: secrets/avro_config.json + - config_path: secrets/v4_avro_config.json status: succeed - - config_path: secrets/jsonl_config.json + - config_path: secrets/v4_jsonl_config.json status: succeed - - config_path: secrets/jsonl_newlines_config.json + - config_path: secrets/v4_jsonl_newlines_config.json status: succeed - config_path: integration_tests/invalid_config.json status: failed discovery: tests: - config_path: secrets/config.json - - config_path: secrets/legacy_csv_custom_encoding_config.json - - config_path: secrets/legacy_csv_custom_format_config.json - - config_path: secrets/legacy_csv_user_schema_config.json - - config_path: secrets/legacy_csv_no_header_config.json - - config_path: secrets/legacy_csv_skip_rows_config.json - - config_path: secrets/legacy_csv_with_nulls_config.json - - config_path: secrets/parquet_config.json - - config_path: secrets/avro_config.json - - config_path: secrets/jsonl_config.json - - config_path: secrets/jsonl_newlines_config.json + backward_compatibility_tests_config: + disable_for_version: "4.0.3" # removing the `streams.*.file_type` field which was redundant with `streams.*.format` + - config_path: secrets/v4_csv_custom_encoding_config.json + backward_compatibility_tests_config: + disable_for_version: "4.0.3" # removing the `streams.*.file_type` field which was redundant with `streams.*.format` + - config_path: secrets/v4_csv_custom_format_config.json + backward_compatibility_tests_config: + disable_for_version: "4.0.3" # removing the `streams.*.file_type` field which was redundant with `streams.*.format` + - config_path: secrets/v4_csv_user_schema_config.json + backward_compatibility_tests_config: + disable_for_version: "4.0.3" # removing the `streams.*.file_type` field which was redundant with `streams.*.format` + - config_path: secrets/v4_csv_no_header_config.json + backward_compatibility_tests_config: + disable_for_version: "4.0.3" # removing the `streams.*.file_type` field which was redundant with `streams.*.format` + - config_path: secrets/v4_csv_skip_rows_config.json + backward_compatibility_tests_config: + disable_for_version: "4.0.3" # removing the `streams.*.file_type` field which was redundant with `streams.*.format` + - config_path: secrets/v4_csv_with_nulls_config.json + backward_compatibility_tests_config: + disable_for_version: "4.0.3" # removing the `streams.*.file_type` field which was redundant with `streams.*.format` + - config_path: secrets/v4_parquet_config.json + backward_compatibility_tests_config: + disable_for_version: "4.0.3" # removing the `streams.*.file_type` field which was redundant with `streams.*.format` + - config_path: secrets/v4_avro_config.json + backward_compatibility_tests_config: + disable_for_version: "4.0.3" # removing the `streams.*.file_type` field which was redundant with `streams.*.format` + - config_path: secrets/v4_jsonl_config.json + backward_compatibility_tests_config: + disable_for_version: "4.0.3" # removing the `streams.*.file_type` field which was redundant with `streams.*.format` + - config_path: secrets/v4_jsonl_newlines_config.json + backward_compatibility_tests_config: + disable_for_version: "4.0.3" # removing the `streams.*.file_type` field which was redundant with `streams.*.format` full_refresh: tests: - config_path: secrets/config.json configured_catalog_path: integration_tests/configured_catalogs/csv.json timeout_seconds: 1800 - - config_path: secrets/parquet_config.json + - config_path: secrets/v4_parquet_config.json configured_catalog_path: integration_tests/configured_catalogs/parquet.json timeout_seconds: 1800 - - config_path: secrets/avro_config.json + - config_path: secrets/v4_avro_config.json configured_catalog_path: integration_tests/configured_catalogs/avro.json timeout_seconds: 1800 - - config_path: secrets/jsonl_config.json + - config_path: secrets/v4_jsonl_config.json configured_catalog_path: integration_tests/configured_catalogs/jsonl.json timeout_seconds: 1800 - - config_path: secrets/jsonl_newlines_config.json + - config_path: secrets/v4_jsonl_newlines_config.json configured_catalog_path: integration_tests/configured_catalogs/jsonl.json timeout_seconds: 1800 @@ -141,46 +163,33 @@ acceptance_tests: tests: - config_path: secrets/config.json configured_catalog_path: integration_tests/configured_catalogs/csv.json - cursor_paths: - test: - - _ab_source_file_last_modified future_state: future_state_path: integration_tests/abnormal_state.json timeout_seconds: 1800 - - config_path: secrets/parquet_config.json + - config_path: secrets/v4_parquet_config.json configured_catalog_path: integration_tests/configured_catalogs/parquet.json - cursor_paths: - test: - - _ab_source_file_last_modified future_state: future_state_path: integration_tests/abnormal_state.json timeout_seconds: 1800 - - config_path: secrets/avro_config.json + - config_path: secrets/v4_avro_config.json configured_catalog_path: integration_tests/configured_catalogs/avro.json - cursor_paths: - test: - - _ab_source_file_last_modified future_state: future_state_path: integration_tests/abnormal_state.json timeout_seconds: 1800 - - config_path: secrets/jsonl_config.json + - config_path: secrets/v4_jsonl_config.json configured_catalog_path: integration_tests/configured_catalogs/jsonl.json - cursor_paths: - test: - - _ab_source_file_last_modified future_state: future_state_path: integration_tests/abnormal_state.json timeout_seconds: 1800 - - config_path: secrets/jsonl_newlines_config.json + - config_path: secrets/v4_jsonl_newlines_config.json configured_catalog_path: integration_tests/configured_catalogs/jsonl.json - cursor_paths: - test: - - _ab_source_file_last_modified future_state: future_state_path: integration_tests/abnormal_state.json timeout_seconds: 1800 spec: tests: - spec_path: integration_tests/spec.json + backward_compatibility_tests_config: + disable_for_version: "4.0.3" # removing the `streams.*.file_type` field which was redundant with `streams.*.format` connector_image: airbyte/source-s3:dev test_strictness_level: high diff --git a/airbyte-integrations/connectors/source-s3/integration_tests/conftest.py b/airbyte-integrations/connectors/source-s3/integration_tests/conftest.py deleted file mode 100644 index 67636cb06904..000000000000 --- a/airbyte-integrations/connectors/source-s3/integration_tests/conftest.py +++ /dev/null @@ -1,26 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -from typing import Any - -from airbyte_cdk import AirbyteLogger - -from .integration_test import TestIncrementalFileStreamS3 - -LOGGER = AirbyteLogger() - - -def pytest_sessionfinish(session: Any, exitstatus: Any) -> None: - """tries to find and remove all temp buckets""" - instance = TestIncrementalFileStreamS3() - instance._s3_connect(instance.credentials) - temp_buckets = [] - for bucket in instance.s3_resource.buckets.all(): - if bucket.name.startswith(instance.temp_bucket_prefix): - temp_buckets.append(bucket.name) - for bucket_name in temp_buckets: - bucket = instance.s3_resource.Bucket(bucket_name) - bucket.objects.all().delete() - bucket.delete() - LOGGER.info(f"S3 Bucket {bucket_name} is now deleted") diff --git a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/avro.jsonl b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/avro.jsonl index f1df4c835fe7..449798e8f2ef 100644 --- a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/avro.jsonl +++ b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/avro.jsonl @@ -1,10 +1,10 @@ -{"stream": "test", "data": {"id": 0, "fullname_and_valid": {"fullname": "cfjwIzCRTL", "valid": false}, "_ab_source_file_last_modified": "2022-05-11T11:54:11Z", "_ab_source_file_url": "test_sample.avro"}, "emitted_at": 10000000} -{"stream": "test", "data": {"id": 1, "fullname_and_valid": {"fullname": "LYOnPyuTWw", "valid": true}, "_ab_source_file_last_modified": "2022-05-11T11:54:11Z", "_ab_source_file_url": "test_sample.avro"}, "emitted_at": 10000000} -{"stream": "test", "data": {"id": 2, "fullname_and_valid": {"fullname": "hyTFbsxlRB", "valid": false}, "_ab_source_file_last_modified": "2022-05-11T11:54:11Z", "_ab_source_file_url": "test_sample.avro"}, "emitted_at": 10000000} -{"stream": "test", "data": {"id": 3, "fullname_and_valid": {"fullname": "ooEUiFcFqp", "valid": true}, "_ab_source_file_last_modified": "2022-05-11T11:54:11Z", "_ab_source_file_url": "test_sample.avro"}, "emitted_at": 10000000} -{"stream": "test", "data": {"id": 4, "fullname_and_valid": {"fullname": "pveENwAvOg", "valid": true}, "_ab_source_file_last_modified": "2022-05-11T11:54:11Z", "_ab_source_file_url": "test_sample.avro"}, "emitted_at": 10000000} -{"stream": "test", "data": {"id": 5, "fullname_and_valid": {"fullname": "pPhWgQgZFq", "valid": true}, "_ab_source_file_last_modified": "2022-05-11T11:54:11Z", "_ab_source_file_url": "test_sample.avro"}, "emitted_at": 10000000} -{"stream": "test", "data": {"id": 6, "fullname_and_valid": {"fullname": "MRNMXFkXZo", "valid": true}, "_ab_source_file_last_modified": "2022-05-11T11:54:11Z", "_ab_source_file_url": "test_sample.avro"}, "emitted_at": 10000000} -{"stream": "test", "data": {"id": 7, "fullname_and_valid": {"fullname": "MXvEWMgnIr", "valid": true}, "_ab_source_file_last_modified": "2022-05-11T11:54:11Z", "_ab_source_file_url": "test_sample.avro"}, "emitted_at": 10000000} -{"stream": "test", "data": {"id": 8, "fullname_and_valid": {"fullname": "rqmFGqZqdF", "valid": true}, "_ab_source_file_last_modified": "2022-05-11T11:54:11Z", "_ab_source_file_url": "test_sample.avro"}, "emitted_at": 10000000} -{"stream": "test", "data": {"id": 9, "fullname_and_valid": {"fullname": "lmPpQTcPFM", "valid": true}, "_ab_source_file_last_modified": "2022-05-11T11:54:11Z", "_ab_source_file_url": "test_sample.avro"}, "emitted_at": 10000000} +{"stream": "test", "data": {"id": 0, "fullname_and_valid": {"fullname": "cfjwIzCRTL", "valid": false}, "_ab_source_file_last_modified": "2022-05-11T11:54:11.000000Z", "_ab_source_file_url": "test_sample.avro"}, "emitted_at": 10000000} +{"stream": "test", "data": {"id": 1, "fullname_and_valid": {"fullname": "LYOnPyuTWw", "valid": true}, "_ab_source_file_last_modified": "2022-05-11T11:54:11.000000Z", "_ab_source_file_url": "test_sample.avro"}, "emitted_at": 10000000} +{"stream": "test", "data": {"id": 2, "fullname_and_valid": {"fullname": "hyTFbsxlRB", "valid": false}, "_ab_source_file_last_modified": "2022-05-11T11:54:11.000000Z", "_ab_source_file_url": "test_sample.avro"}, "emitted_at": 10000000} +{"stream": "test", "data": {"id": 3, "fullname_and_valid": {"fullname": "ooEUiFcFqp", "valid": true}, "_ab_source_file_last_modified": "2022-05-11T11:54:11.000000Z", "_ab_source_file_url": "test_sample.avro"}, "emitted_at": 10000000} +{"stream": "test", "data": {"id": 4, "fullname_and_valid": {"fullname": "pveENwAvOg", "valid": true}, "_ab_source_file_last_modified": "2022-05-11T11:54:11.000000Z", "_ab_source_file_url": "test_sample.avro"}, "emitted_at": 10000000} +{"stream": "test", "data": {"id": 5, "fullname_and_valid": {"fullname": "pPhWgQgZFq", "valid": true}, "_ab_source_file_last_modified": "2022-05-11T11:54:11.000000Z", "_ab_source_file_url": "test_sample.avro"}, "emitted_at": 10000000} +{"stream": "test", "data": {"id": 6, "fullname_and_valid": {"fullname": "MRNMXFkXZo", "valid": true}, "_ab_source_file_last_modified": "2022-05-11T11:54:11.000000Z", "_ab_source_file_url": "test_sample.avro"}, "emitted_at": 10000000} +{"stream": "test", "data": {"id": 7, "fullname_and_valid": {"fullname": "MXvEWMgnIr", "valid": true}, "_ab_source_file_last_modified": "2022-05-11T11:54:11.000000Z", "_ab_source_file_url": "test_sample.avro"}, "emitted_at": 10000000} +{"stream": "test", "data": {"id": 8, "fullname_and_valid": {"fullname": "rqmFGqZqdF", "valid": true}, "_ab_source_file_last_modified": "2022-05-11T11:54:11.000000Z", "_ab_source_file_url": "test_sample.avro"}, "emitted_at": 10000000} +{"stream": "test", "data": {"id": 9, "fullname_and_valid": {"fullname": "lmPpQTcPFM", "valid": true}, "_ab_source_file_last_modified": "2022-05-11T11:54:11.000000Z", "_ab_source_file_url": "test_sample.avro"}, "emitted_at": 10000000} diff --git a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/csv.jsonl b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/csv.jsonl index f2a8aea4e963..aa19d854f824 100644 --- a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/csv.jsonl +++ b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/csv.jsonl @@ -1,8 +1,8 @@ -{"stream": "test", "data": {"id": 1, "name": "PVdhmjb1", "valid": false, "_ab_source_file_last_modified": "2021-07-25T15:33:04Z", "_ab_source_file_url": "simple_test.csv"}, "emitted_at": 162727468000} -{"stream": "test", "data": {"id": 2, "name": "j4DyXTS7", "valid": true, "_ab_source_file_last_modified": "2021-07-25T15:33:04Z", "_ab_source_file_url": "simple_test.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 3, "name": "v0w8fTME", "valid": false, "_ab_source_file_last_modified": "2021-07-25T15:33:04Z", "_ab_source_file_url": "simple_test.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 4, "name": "1q6jD8Np", "valid": false, "_ab_source_file_last_modified": "2021-07-25T15:33:04Z", "_ab_source_file_url": "simple_test.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 5, "name": "77h4aiMP", "valid": true, "_ab_source_file_last_modified": "2021-07-25T15:33:04Z", "_ab_source_file_url": "simple_test.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 6, "name": "Le35Wyic", "valid": true, "_ab_source_file_last_modified": "2021-07-25T15:33:04Z", "_ab_source_file_url": "simple_test.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 7, "name": "xZhh1Kyl", "valid": false, "_ab_source_file_last_modified": "2021-07-25T15:33:04Z", "_ab_source_file_url": "simple_test.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 8, "name": "M2t286iJ", "valid": false, "_ab_source_file_last_modified": "2021-07-25T15:33:04Z", "_ab_source_file_url": "simple_test.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 1, "name": "PVdhmjb1", "valid": false, "_ab_source_file_last_modified": "2021-07-25T15:33:04.000000Z", "_ab_source_file_url": "simple_test.csv"}, "emitted_at": 162727468000} +{"stream": "test", "data": {"id": 2, "name": "j4DyXTS7", "valid": true, "_ab_source_file_last_modified": "2021-07-25T15:33:04.000000Z", "_ab_source_file_url": "simple_test.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 3, "name": "v0w8fTME", "valid": false, "_ab_source_file_last_modified": "2021-07-25T15:33:04.000000Z", "_ab_source_file_url": "simple_test.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 4, "name": "1q6jD8Np", "valid": false, "_ab_source_file_last_modified": "2021-07-25T15:33:04.000000Z", "_ab_source_file_url": "simple_test.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 5, "name": "77h4aiMP", "valid": true, "_ab_source_file_last_modified": "2021-07-25T15:33:04.000000Z", "_ab_source_file_url": "simple_test.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 6, "name": "Le35Wyic", "valid": true, "_ab_source_file_last_modified": "2021-07-25T15:33:04.000000Z", "_ab_source_file_url": "simple_test.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 7, "name": "xZhh1Kyl", "valid": false, "_ab_source_file_last_modified": "2021-07-25T15:33:04.000000Z", "_ab_source_file_url": "simple_test.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 8, "name": "M2t286iJ", "valid": false, "_ab_source_file_last_modified": "2021-07-25T15:33:04.000000Z", "_ab_source_file_url": "simple_test.csv"}, "emitted_at": 1627227468000} diff --git a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/custom_server.jsonl b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/custom_server.jsonl index 14dedea42c97..b41d8841da80 100644 --- a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/custom_server.jsonl +++ b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/custom_server.jsonl @@ -1,55 +1,55 @@ -{"stream": "test", "data": {"Year": 1960, "Value": 59184116488.9977, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1961, "Value": 49557050182.9631, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1962, "Value": 46685178504.3274, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1963, "Value": 50097303271.0232, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1964, "Value": 59062254890.1871, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1965, "Value": 69709153115.3147, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1966, "Value": 75879434776.1831, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1967, "Value": 72057028559.6741, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1968, "Value": 69993497892.3132, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1969, "Value": 78718820477.9257, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1970, "Value": 91506211306.3745, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1971, "Value": 98562023844.1813, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1972, "Value": 112159813640.376, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1973, "Value": 136769878359.668, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1974, "Value": 142254742077.706, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1975, "Value": 161162492226.686, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1976, "Value": 151627687364.405, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1977, "Value": 172349014326.931, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1978, "Value": 148382111520.192, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1979, "Value": 176856525405.729, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1980, "Value": 189649992463.987, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1981, "Value": 194369049090.197, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1982, "Value": 203549627211.606, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1983, "Value": 228950200773.115, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1984, "Value": 258082147252.256, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1985, "Value": 307479585852.339, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1986, "Value": 298805792971.544, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1987, "Value": 271349773463.863, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1988, "Value": 310722213686.031, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1989, "Value": 345957485871.286, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1990, "Value": 358973230048.399, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1991, "Value": 381454703832.753, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1992, "Value": 424934065934.066, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1993, "Value": 442874596387.119, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1994, "Value": 562261129868.774, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1995, "Value": 732032045217.766, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1996, "Value": 860844098049.121, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1997, "Value": 958159424835.34, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1998, "Value": 1025276902078.73, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 1999, "Value": 1089447108705.89, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 2000, "Value": 1205260678391.96, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 2001, "Value": 1332234719889.82, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 2002, "Value": 1461906487857.92, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 2003, "Value": 1649928718134.59, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 2004, "Value": 1941745602165.09, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 2005, "Value": 2268598904116.28, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 2006, "Value": 2729784031906.09, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 2007, "Value": 3523094314820.9, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 2008, "Value": 4558431073438.2, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 2009, "Value": 5059419738267.41, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 2010, "Value": 6039658508485.59, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 2011, "Value": 7492432097810.11, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 2012, "Value": 8461623162714.07, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 2013, "Value": 9490602600148.49, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} -{"stream": "test", "data": {"Year": 2014, "Value": 10354831729340.4, "_ab_source_file_last_modified": "2021-09-23T11:48:44Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1960, "Value": 59184116488.9977, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1961, "Value": 49557050182.9631, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1962, "Value": 46685178504.3274, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1963, "Value": 50097303271.0232, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1964, "Value": 59062254890.1871, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1965, "Value": 69709153115.3147, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1966, "Value": 75879434776.1831, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1967, "Value": 72057028559.6741, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1968, "Value": 69993497892.3132, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1969, "Value": 78718820477.9257, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1970, "Value": 91506211306.3745, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1971, "Value": 98562023844.1813, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1972, "Value": 112159813640.376, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1973, "Value": 136769878359.668, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1974, "Value": 142254742077.706, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1975, "Value": 161162492226.686, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1976, "Value": 151627687364.405, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1977, "Value": 172349014326.931, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1978, "Value": 148382111520.192, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1979, "Value": 176856525405.729, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1980, "Value": 189649992463.987, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1981, "Value": 194369049090.197, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1982, "Value": 203549627211.606, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1983, "Value": 228950200773.115, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1984, "Value": 258082147252.256, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1985, "Value": 307479585852.339, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1986, "Value": 298805792971.544, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1987, "Value": 271349773463.863, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1988, "Value": 310722213686.031, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1989, "Value": 345957485871.286, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1990, "Value": 358973230048.399, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1991, "Value": 381454703832.753, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1992, "Value": 424934065934.066, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1993, "Value": 442874596387.119, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1994, "Value": 562261129868.774, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1995, "Value": 732032045217.766, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1996, "Value": 860844098049.121, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1997, "Value": 958159424835.34, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1998, "Value": 1025276902078.73, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 1999, "Value": 1089447108705.89, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 2000, "Value": 1205260678391.96, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 2001, "Value": 1332234719889.82, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 2002, "Value": 1461906487857.92, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 2003, "Value": 1649928718134.59, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 2004, "Value": 1941745602165.09, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 2005, "Value": 2268598904116.28, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 2006, "Value": 2729784031906.09, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 2007, "Value": 3523094314820.9, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 2008, "Value": 4558431073438.2, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 2009, "Value": 5059419738267.41, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 2010, "Value": 6039658508485.59, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 2011, "Value": 7492432097810.11, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 2012, "Value": 8461623162714.07, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 2013, "Value": 9490602600148.49, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} +{"stream": "test", "data": {"Year": 2014, "Value": 10354831729340.4, "_ab_source_file_last_modified": "2021-09-23T11:48:44.000000Z", "_ab_source_file_url": "china_gdp.csv"}, "emitted_at": 1632398440000} diff --git a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/jsonl.jsonl b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/jsonl.jsonl index 019cfd8aff8a..b0aabda52687 100644 --- a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/jsonl.jsonl +++ b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/jsonl.jsonl @@ -1,2 +1,2 @@ -{"stream": "test", "data": {"id": 1, "name": "PVdhmjb1", "valid": false,"value": 1.2, "event_date": "2022-01-01T00:00:00Z", "_ab_source_file_last_modified": "2022-07-15T08:31:02Z", "_ab_source_file_url": "simple_test.jsonl"}, "emitted_at": 162727468000} -{"stream": "test", "data": {"id": 2, "name": "ABCDEF", "valid": true,"value": 1.0, "event_date": "2023-01-01T00:00:00Z", "_ab_source_file_last_modified": "2022-07-15T08:31:02Z", "_ab_source_file_url": "simple_test.jsonl"}, "emitted_at": 162727468000} \ No newline at end of file +{"stream": "test", "data": {"id": 1, "name": "PVdhmjb1", "valid": false,"value": 1.2, "event_date": "2022-01-01T00:00:00Z", "_ab_source_file_last_modified": "2022-07-15T08:31:02.000000Z", "_ab_source_file_url": "simple_test.jsonl"}, "emitted_at": 162727468000} +{"stream": "test", "data": {"id": 2, "name": "ABCDEF", "valid": true,"value": 1.0, "event_date": "2023-01-01T00:00:00Z", "_ab_source_file_last_modified": "2022-07-15T08:31:02.000000Z", "_ab_source_file_url": "simple_test.jsonl"}, "emitted_at": 162727468000} \ No newline at end of file diff --git a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/jsonl_newlines.jsonl b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/jsonl_newlines.jsonl index e3445c34ebb0..fbb95baa91df 100644 --- a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/jsonl_newlines.jsonl +++ b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/jsonl_newlines.jsonl @@ -1,2 +1,2 @@ -{"stream": "test", "data": {"id": 1, "name": "PVdhmjb1", "valid": false,"value": 1.2, "event_date": "2022-01-01T00:00:00Z", "_ab_source_file_last_modified": "2022-07-15T10:07:00Z", "_ab_source_file_url": "simple_test_newlines.jsonl"}, "emitted_at": 162727468000} -{"stream": "test", "data": {"id": 2, "name": "ABCDEF", "valid": true,"value": 1.0, "event_date": "2023-01-01T00:00:00Z", "_ab_source_file_last_modified": "2022-07-15T10:07:00Z", "_ab_source_file_url": "simple_test_newlines.jsonl"}, "emitted_at": 162727468000} \ No newline at end of file +{"stream": "test", "data": {"id": 1, "name": "PVdhmjb1", "valid": false,"value": 1.2, "event_date": "2022-01-01T00:00:00Z", "_ab_source_file_last_modified": "2022-07-15T10:07:00.000000Z", "_ab_source_file_url": "simple_test_newlines.jsonl"}, "emitted_at": 162727468000} +{"stream": "test", "data": {"id": 2, "name": "ABCDEF", "valid": true,"value": 1.0, "event_date": "2023-01-01T00:00:00Z", "_ab_source_file_last_modified": "2022-07-15T10:07:00.000000Z", "_ab_source_file_url": "simple_test_newlines.jsonl"}, "emitted_at": 162727468000} \ No newline at end of file diff --git a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_custom_encoding.jsonl b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_custom_encoding.jsonl index 9dcaefdf36a1..4ae40924ec8f 100644 --- a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_custom_encoding.jsonl +++ b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_custom_encoding.jsonl @@ -1,8 +1,8 @@ -{"stream": "test", "data": {"id": 1, "name": "PVdhmjb1\u20ac", "valid": false, "_ab_source_file_last_modified": "2023-08-03T20:46:54Z", "_ab_source_file_url": "csv_tests/csv_encoded_as_cp1252.csv"}, "emitted_at": 162727468000} -{"stream": "test", "data": {"id": 2, "name": "j4DyXTS7", "valid": true, "_ab_source_file_last_modified": "2023-08-03T20:46:54Z", "_ab_source_file_url": "csv_tests/csv_encoded_as_cp1252.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 3, "name": "v0w8fTME", "valid": false, "_ab_source_file_last_modified": "2023-08-03T20:46:54Z", "_ab_source_file_url": "csv_tests/csv_encoded_as_cp1252.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 4, "name": "1q6jD8Np", "valid": false, "_ab_source_file_last_modified": "2023-08-03T20:46:54Z", "_ab_source_file_url": "csv_tests/csv_encoded_as_cp1252.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 5, "name": "77h4aiMP", "valid": true, "_ab_source_file_last_modified": "2023-08-03T20:46:54Z", "_ab_source_file_url": "csv_tests/csv_encoded_as_cp1252.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 6, "name": "Le35Wyic", "valid": true, "_ab_source_file_last_modified": "2023-08-03T20:46:54Z", "_ab_source_file_url": "csv_tests/csv_encoded_as_cp1252.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 7, "name": "xZhh1Kyl", "valid": false, "_ab_source_file_last_modified": "2023-08-03T20:46:54Z", "_ab_source_file_url": "csv_tests/csv_encoded_as_cp1252.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 8, "name": "M2t286iJ", "valid": false, "_ab_source_file_last_modified": "2023-08-03T20:46:54Z", "_ab_source_file_url": "csv_tests/csv_encoded_as_cp1252.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 1, "name": "PVdhmjb1\u20ac", "valid": false, "_ab_source_file_last_modified": "2023-08-03T20:46:54.000000Z", "_ab_source_file_url": "csv_tests/csv_encoded_as_cp1252.csv"}, "emitted_at": 162727468000} +{"stream": "test", "data": {"id": 2, "name": "j4DyXTS7", "valid": true, "_ab_source_file_last_modified": "2023-08-03T20:46:54.000000Z", "_ab_source_file_url": "csv_tests/csv_encoded_as_cp1252.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 3, "name": "v0w8fTME", "valid": false, "_ab_source_file_last_modified": "2023-08-03T20:46:54.000000Z", "_ab_source_file_url": "csv_tests/csv_encoded_as_cp1252.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 4, "name": "1q6jD8Np", "valid": false, "_ab_source_file_last_modified": "2023-08-03T20:46:54.000000Z", "_ab_source_file_url": "csv_tests/csv_encoded_as_cp1252.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 5, "name": "77h4aiMP", "valid": true, "_ab_source_file_last_modified": "2023-08-03T20:46:54.000000Z", "_ab_source_file_url": "csv_tests/csv_encoded_as_cp1252.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 6, "name": "Le35Wyic", "valid": true, "_ab_source_file_last_modified": "2023-08-03T20:46:54.000000Z", "_ab_source_file_url": "csv_tests/csv_encoded_as_cp1252.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 7, "name": "xZhh1Kyl", "valid": false, "_ab_source_file_last_modified": "2023-08-03T20:46:54.000000Z", "_ab_source_file_url": "csv_tests/csv_encoded_as_cp1252.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 8, "name": "M2t286iJ", "valid": false, "_ab_source_file_last_modified": "2023-08-03T20:46:54.000000Z", "_ab_source_file_url": "csv_tests/csv_encoded_as_cp1252.csv"}, "emitted_at": 1627227468000} diff --git a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_custom_format.jsonl b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_custom_format.jsonl index d95d1648f7af..8b159a550df1 100644 --- a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_custom_format.jsonl +++ b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_custom_format.jsonl @@ -1,8 +1,8 @@ -{"stream": "test", "data": {"id": 1, "name": "PVdhmj|b1", "valid": false, "_ab_source_file_last_modified": "2023-08-03T17:25:57Z", "_ab_source_file_url": "csv_tests/custom_format.csv"}, "emitted_at": 162727468000} -{"stream": "test", "data": {"id": 2, "name": "j4DyXTS7", "valid": true, "_ab_source_file_last_modified": "2023-08-03T17:25:57Z", "_ab_source_file_url": "csv_tests/custom_format.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 3, "name": "v0w8fTME", "valid": false, "_ab_source_file_last_modified": "2023-08-03T17:25:57Z", "_ab_source_file_url": "csv_tests/custom_format.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 4, "name": "1q6jD8Np", "valid": false, "_ab_source_file_last_modified": "2023-08-03T17:25:57Z", "_ab_source_file_url": "csv_tests/custom_format.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 5, "name": "77h4aiMP", "valid": true, "_ab_source_file_last_modified": "2023-08-03T17:25:57Z", "_ab_source_file_url": "csv_tests/custom_format.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 6, "name": "Le35Wyic", "valid": true, "_ab_source_file_last_modified": "2023-08-03T17:25:57Z", "_ab_source_file_url": "csv_tests/custom_format.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 7, "name": "xZhh1Kyl", "valid": false, "_ab_source_file_last_modified": "2023-08-03T17:25:57Z", "_ab_source_file_url": "csv_tests/custom_format.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 8, "name": "M2t286iJ", "valid": false, "_ab_source_file_last_modified": "2023-08-03T17:25:57Z", "_ab_source_file_url": "csv_tests/custom_format.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 1, "name": "PVdhmj|b1", "valid": false, "_ab_source_file_last_modified": "2023-08-03T17:25:57.000000Z", "_ab_source_file_url": "csv_tests/custom_format.csv"}, "emitted_at": 162727468000} +{"stream": "test", "data": {"id": 2, "name": "j4DyXTS7", "valid": true, "_ab_source_file_last_modified": "2023-08-03T17:25:57.000000Z", "_ab_source_file_url": "csv_tests/custom_format.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 3, "name": "v0w8fTME", "valid": false, "_ab_source_file_last_modified": "2023-08-03T17:25:57.000000Z", "_ab_source_file_url": "csv_tests/custom_format.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 4, "name": "1q6jD8Np", "valid": false, "_ab_source_file_last_modified": "2023-08-03T17:25:57.000000Z", "_ab_source_file_url": "csv_tests/custom_format.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 5, "name": "77h4aiMP", "valid": true, "_ab_source_file_last_modified": "2023-08-03T17:25:57.000000Z", "_ab_source_file_url": "csv_tests/custom_format.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 6, "name": "Le35Wyic", "valid": true, "_ab_source_file_last_modified": "2023-08-03T17:25:57.000000Z", "_ab_source_file_url": "csv_tests/custom_format.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 7, "name": "xZhh1Kyl", "valid": false, "_ab_source_file_last_modified": "2023-08-03T17:25:57.000000Z", "_ab_source_file_url": "csv_tests/custom_format.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 8, "name": "M2t286iJ", "valid": false, "_ab_source_file_last_modified": "2023-08-03T17:25:57.000000Z", "_ab_source_file_url": "csv_tests/custom_format.csv"}, "emitted_at": 1627227468000} diff --git a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_no_header.jsonl b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_no_header.jsonl index f71905cdbd4a..d0aabb533827 100644 --- a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_no_header.jsonl +++ b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_no_header.jsonl @@ -1,8 +1,8 @@ -{"stream": "test", "data": {"f0": 1, "f1": "PVdhmjb1", "f2": false, "_ab_source_file_last_modified": "2023-08-03T21:19:26Z", "_ab_source_file_url": "csv_tests/no_header.csv"}, "emitted_at": 162727468000} -{"stream": "test", "data": {"f0": 2, "f1": "j4DyXTS7", "f2": true, "_ab_source_file_last_modified": "2023-08-03T21:19:26Z", "_ab_source_file_url": "csv_tests/no_header.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"f0": 3, "f1": "v0w8fTME", "f2": false, "_ab_source_file_last_modified": "2023-08-03T21:19:26Z", "_ab_source_file_url": "csv_tests/no_header.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"f0": 4, "f1": "1q6jD8Np", "f2": false, "_ab_source_file_last_modified": "2023-08-03T21:19:26Z", "_ab_source_file_url": "csv_tests/no_header.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"f0": 5, "f1": "77h4aiMP", "f2": true, "_ab_source_file_last_modified": "2023-08-03T21:19:26Z", "_ab_source_file_url": "csv_tests/no_header.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"f0": 6, "f1": "Le35Wyic", "f2": true, "_ab_source_file_last_modified": "2023-08-03T21:19:26Z", "_ab_source_file_url": "csv_tests/no_header.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"f0": 7, "f1": "xZhh1Kyl", "f2": false, "_ab_source_file_last_modified": "2023-08-03T21:19:26Z", "_ab_source_file_url": "csv_tests/no_header.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"f0": 8, "f1": "M2t286iJ", "f2": false, "_ab_source_file_last_modified": "2023-08-03T21:19:26Z", "_ab_source_file_url": "csv_tests/no_header.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"f0": 1, "f1": "PVdhmjb1", "f2": false, "_ab_source_file_last_modified": "2023-08-03T21:19:26.000000Z", "_ab_source_file_url": "csv_tests/no_header.csv"}, "emitted_at": 162727468000} +{"stream": "test", "data": {"f0": 2, "f1": "j4DyXTS7", "f2": true, "_ab_source_file_last_modified": "2023-08-03T21:19:26.000000Z", "_ab_source_file_url": "csv_tests/no_header.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"f0": 3, "f1": "v0w8fTME", "f2": false, "_ab_source_file_last_modified": "2023-08-03T21:19:26.000000Z", "_ab_source_file_url": "csv_tests/no_header.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"f0": 4, "f1": "1q6jD8Np", "f2": false, "_ab_source_file_last_modified": "2023-08-03T21:19:26.000000Z", "_ab_source_file_url": "csv_tests/no_header.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"f0": 5, "f1": "77h4aiMP", "f2": true, "_ab_source_file_last_modified": "2023-08-03T21:19:26.000000Z", "_ab_source_file_url": "csv_tests/no_header.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"f0": 6, "f1": "Le35Wyic", "f2": true, "_ab_source_file_last_modified": "2023-08-03T21:19:26.000000Z", "_ab_source_file_url": "csv_tests/no_header.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"f0": 7, "f1": "xZhh1Kyl", "f2": false, "_ab_source_file_last_modified": "2023-08-03T21:19:26.000000Z", "_ab_source_file_url": "csv_tests/no_header.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"f0": 8, "f1": "M2t286iJ", "f2": false, "_ab_source_file_last_modified": "2023-08-03T21:19:26.000000Z", "_ab_source_file_url": "csv_tests/no_header.csv"}, "emitted_at": 1627227468000} diff --git a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_skip_rows.jsonl b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_skip_rows.jsonl index cb10832287ad..43c3bf00e506 100644 --- a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_skip_rows.jsonl +++ b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_skip_rows.jsonl @@ -1,8 +1,8 @@ -{"stream": "test", "data": {"id": 1, "name": "PVdhmjb1", "valid": false, "_ab_source_file_last_modified": "2023-08-03T20:07:57Z", "_ab_source_file_url": "csv_tests/skip_rows.csv"}, "emitted_at": 162727468000} -{"stream": "test", "data": {"id": 2, "name": "j4DyXTS7", "valid": true, "_ab_source_file_last_modified": "2023-08-03T20:07:57Z", "_ab_source_file_url": "csv_tests/skip_rows.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 3, "name": "v0w8fTME", "valid": false, "_ab_source_file_last_modified": "2023-08-03T20:07:57Z", "_ab_source_file_url": "csv_tests/skip_rows.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 4, "name": "1q6jD8Np", "valid": false, "_ab_source_file_last_modified": "2023-08-03T20:07:57Z", "_ab_source_file_url": "csv_tests/skip_rows.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 5, "name": "77h4aiMP", "valid": true, "_ab_source_file_last_modified": "2023-08-03T20:07:57Z", "_ab_source_file_url": "csv_tests/skip_rows.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 6, "name": "Le35Wyic", "valid": true, "_ab_source_file_last_modified": "2023-08-03T20:07:57Z", "_ab_source_file_url": "csv_tests/skip_rows.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 7, "name": "xZhh1Kyl", "valid": false, "_ab_source_file_last_modified": "2023-08-03T20:07:57Z", "_ab_source_file_url": "csv_tests/skip_rows.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 8, "name": "M2t286iJ", "valid": false, "_ab_source_file_last_modified": "2023-08-03T20:07:57Z", "_ab_source_file_url": "csv_tests/skip_rows.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 1, "name": "PVdhmjb1", "valid": false, "_ab_source_file_last_modified": "2023-08-03T20:07:57.000000Z", "_ab_source_file_url": "csv_tests/skip_rows.csv"}, "emitted_at": 162727468000} +{"stream": "test", "data": {"id": 2, "name": "j4DyXTS7", "valid": true, "_ab_source_file_last_modified": "2023-08-03T20:07:57.000000Z", "_ab_source_file_url": "csv_tests/skip_rows.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 3, "name": "v0w8fTME", "valid": false, "_ab_source_file_last_modified": "2023-08-03T20:07:57.000000Z", "_ab_source_file_url": "csv_tests/skip_rows.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 4, "name": "1q6jD8Np", "valid": false, "_ab_source_file_last_modified": "2023-08-03T20:07:57.000000Z", "_ab_source_file_url": "csv_tests/skip_rows.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 5, "name": "77h4aiMP", "valid": true, "_ab_source_file_last_modified": "2023-08-03T20:07:57.000000Z", "_ab_source_file_url": "csv_tests/skip_rows.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 6, "name": "Le35Wyic", "valid": true, "_ab_source_file_last_modified": "2023-08-03T20:07:57.000000Z", "_ab_source_file_url": "csv_tests/skip_rows.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 7, "name": "xZhh1Kyl", "valid": false, "_ab_source_file_last_modified": "2023-08-03T20:07:57.000000Z", "_ab_source_file_url": "csv_tests/skip_rows.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 8, "name": "M2t286iJ", "valid": false, "_ab_source_file_last_modified": "2023-08-03T20:07:57.000000Z", "_ab_source_file_url": "csv_tests/skip_rows.csv"}, "emitted_at": 1627227468000} diff --git a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_skip_rows_no_header.jsonl b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_skip_rows_no_header.jsonl index a2ebfa4ff896..baef6e94d681 100644 --- a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_skip_rows_no_header.jsonl +++ b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_skip_rows_no_header.jsonl @@ -1,8 +1,8 @@ -{"stream": "test", "data": {"f0": 1, "f1": "PVdhmjb1", "f2": false, "_ab_source_file_last_modified": "2023-08-04T01:18:56Z", "_ab_source_file_url": "csv_tests/skip_rows_no_header.csv"}, "emitted_at": 162727468000} -{"stream": "test", "data": {"f0": 2, "f1": "j4DyXTS7", "f2": true, "_ab_source_file_last_modified": "2023-08-04T01:18:56Z", "_ab_source_file_url": "csv_tests/skip_rows_no_header.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"f0": 3, "f1": "v0w8fTME", "f2": false, "_ab_source_file_last_modified": "2023-08-04T01:18:56Z", "_ab_source_file_url": "csv_tests/skip_rows_no_header.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"f0": 4, "f1": "1q6jD8Np", "f2": false, "_ab_source_file_last_modified": "2023-08-04T01:18:56Z", "_ab_source_file_url": "csv_tests/skip_rows_no_header.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"f0": 5, "f1": "77h4aiMP", "f2": true, "_ab_source_file_last_modified": "2023-08-04T01:18:56Z", "_ab_source_file_url": "csv_tests/skip_rows_no_header.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"f0": 6, "f1": "Le35Wyic", "f2": true, "_ab_source_file_last_modified": "2023-08-04T01:18:56Z", "_ab_source_file_url": "csv_tests/skip_rows_no_header.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"f0": 7, "f1": "xZhh1Kyl", "f2": false, "_ab_source_file_last_modified": "2023-08-04T01:18:56Z", "_ab_source_file_url": "csv_tests/skip_rows_no_header.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"f0": 8, "f1": "M2t286iJ", "f2": false, "_ab_source_file_last_modified": "2023-08-04T01:18:56Z", "_ab_source_file_url": "csv_tests/skip_rows_no_header.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"f0": 1, "f1": "PVdhmjb1", "f2": false, "_ab_source_file_last_modified": "2023-08-04T01:18:56.000000Z", "_ab_source_file_url": "csv_tests/skip_rows_no_header.csv"}, "emitted_at": 162727468000} +{"stream": "test", "data": {"f0": 2, "f1": "j4DyXTS7", "f2": true, "_ab_source_file_last_modified": "2023-08-04T01:18:56.000000Z", "_ab_source_file_url": "csv_tests/skip_rows_no_header.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"f0": 3, "f1": "v0w8fTME", "f2": false, "_ab_source_file_last_modified": "2023-08-04T01:18:56.000000Z", "_ab_source_file_url": "csv_tests/skip_rows_no_header.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"f0": 4, "f1": "1q6jD8Np", "f2": false, "_ab_source_file_last_modified": "2023-08-04T01:18:56.000000Z", "_ab_source_file_url": "csv_tests/skip_rows_no_header.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"f0": 5, "f1": "77h4aiMP", "f2": true, "_ab_source_file_last_modified": "2023-08-04T01:18:56.000000Z", "_ab_source_file_url": "csv_tests/skip_rows_no_header.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"f0": 6, "f1": "Le35Wyic", "f2": true, "_ab_source_file_last_modified": "2023-08-04T01:18:56.000000Z", "_ab_source_file_url": "csv_tests/skip_rows_no_header.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"f0": 7, "f1": "xZhh1Kyl", "f2": false, "_ab_source_file_last_modified": "2023-08-04T01:18:56.000000Z", "_ab_source_file_url": "csv_tests/skip_rows_no_header.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"f0": 8, "f1": "M2t286iJ", "f2": false, "_ab_source_file_last_modified": "2023-08-04T01:18:56.000000Z", "_ab_source_file_url": "csv_tests/skip_rows_no_header.csv"}, "emitted_at": 1627227468000} diff --git a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_user_schema.jsonl b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_user_schema.jsonl index 81f1cc5b2d61..17b072cca8ba 100644 --- a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_user_schema.jsonl +++ b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_user_schema.jsonl @@ -1,8 +1,8 @@ -{"stream": "test", "data": {"id": 1.0, "name": "PVdhmjb1", "valid": false, "valid_string": "False", "array": "[\"a\", \"b\", \"c\"]", "dict": "{\"key\": \"value\"}","_ab_source_file_last_modified": "2023-08-03T22:17:06Z", "_ab_source_file_url": "csv_tests/user_schema.csv"}, "emitted_at": 162727468000} -{"stream": "test", "data": {"id": 2.0, "name": "j4DyXTS7", "valid": true, "valid_string": "True", "array": "[\"a\", \"b\"]","dict": "{\"key\": \"value_with_comma\\,\"}", "_ab_source_file_last_modified": "2023-08-03T22:17:06Z", "_ab_source_file_url": "csv_tests/user_schema.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 3.0, "name": "v0w8fTME", "valid": false, "valid_string": "False", "array": "[\"a\"]", "dict": "{\"key\": \"value\"}", "_ab_source_file_last_modified": "2023-08-03T22:17:06Z", "_ab_source_file_url": "csv_tests/user_schema.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 4.0, "name": "1q6jD8Np", "valid": false, "valid_string": "False", "array": "[]","dict": "{}", "_ab_source_file_last_modified": "2023-08-03T22:17:06Z", "_ab_source_file_url": "csv_tests/user_schema.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 5.0, "name": "77h4aiMP", "valid": true, "valid_string": "True", "array": "[\"b\", \"c\"]","dict": "{}", "_ab_source_file_last_modified": "2023-08-03T22:17:06Z", "_ab_source_file_url": "csv_tests/user_schema.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 6.0, "name": "Le35Wyic", "valid": true, "valid_string": "True", "array": "[\"a\", \"c\"]", "dict": "{}", "_ab_source_file_last_modified": "2023-08-03T22:17:06Z", "_ab_source_file_url": "csv_tests/user_schema.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 7.0, "name": "xZhh1Kyl", "valid": false, "valid_string": "False", "array": "[\"b\"]","dict": "{}", "_ab_source_file_last_modified": "2023-08-03T22:17:06Z", "_ab_source_file_url": "csv_tests/user_schema.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 8.0, "name": "M2t286iJ", "valid": false, "valid_string": "False", "array": "[\"c\"]", "dict": "{}", "_ab_source_file_last_modified": "2023-08-03T22:17:06Z", "_ab_source_file_url": "csv_tests/user_schema.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 1.0, "name": "PVdhmjb1", "valid": false, "valid_string": "False", "array": "[\"a\", \"b\", \"c\"]", "dict": "{\"key\": \"value\"}","_ab_source_file_last_modified": "2023-08-03T22:17:06.000000Z", "_ab_source_file_url": "csv_tests/user_schema.csv"}, "emitted_at": 162727468000} +{"stream": "test", "data": {"id": 2.0, "name": "j4DyXTS7", "valid": true, "valid_string": "True", "array": "[\"a\", \"b\"]","dict": "{\"key\": \"value_with_comma\\,\"}", "_ab_source_file_last_modified": "2023-08-03T22:17:06.000000Z", "_ab_source_file_url": "csv_tests/user_schema.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 3.0, "name": "v0w8fTME", "valid": false, "valid_string": "False", "array": "[\"a\"]", "dict": "{\"key\": \"value\"}", "_ab_source_file_last_modified": "2023-08-03T22:17:06.000000Z", "_ab_source_file_url": "csv_tests/user_schema.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 4.0, "name": "1q6jD8Np", "valid": false, "valid_string": "False", "array": "[]","dict": "{}", "_ab_source_file_last_modified": "2023-08-03T22:17:06.000000Z", "_ab_source_file_url": "csv_tests/user_schema.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 5.0, "name": "77h4aiMP", "valid": true, "valid_string": "True", "array": "[\"b\", \"c\"]","dict": "{}", "_ab_source_file_last_modified": "2023-08-03T22:17:06.000000Z", "_ab_source_file_url": "csv_tests/user_schema.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 6.0, "name": "Le35Wyic", "valid": true, "valid_string": "True", "array": "[\"a\", \"c\"]", "dict": "{}", "_ab_source_file_last_modified": "2023-08-03T22:17:06.000000Z", "_ab_source_file_url": "csv_tests/user_schema.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 7.0, "name": "xZhh1Kyl", "valid": false, "valid_string": "False", "array": "[\"b\"]","dict": "{}", "_ab_source_file_last_modified": "2023-08-03T22:17:06.000000Z", "_ab_source_file_url": "csv_tests/user_schema.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 8.0, "name": "M2t286iJ", "valid": false, "valid_string": "False", "array": "[\"c\"]", "dict": "{}", "_ab_source_file_last_modified": "2023-08-03T22:17:06.000000Z", "_ab_source_file_url": "csv_tests/user_schema.csv"}, "emitted_at": 1627227468000} diff --git a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_with_null_bools.jsonl b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_with_null_bools.jsonl index 18644e9dc903..948f15f6637a 100644 --- a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_with_null_bools.jsonl +++ b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_with_null_bools.jsonl @@ -1,8 +1,8 @@ -{"stream": "test", "data": {"id": 1, "name": "null", "valid": null, "_ab_source_file_last_modified": "2023-08-04T01:42:33Z", "_ab_source_file_url": "csv_tests/csv_with_null_bools.csv"}, "emitted_at": 162727468000} -{"stream": "test", "data": {"id": 2, "name": "j4DyXTS7", "valid": true, "_ab_source_file_last_modified": "2023-08-04T01:42:33Z", "_ab_source_file_url": "csv_tests/csv_with_null_bools.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 3, "name": "NULL", "valid": null, "_ab_source_file_last_modified": "2023-08-04T01:42:33Z", "_ab_source_file_url": "csv_tests/csv_with_null_bools.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 4, "name": "1q6jD8Np", "valid": false, "_ab_source_file_last_modified": "2023-08-04T01:42:33Z", "_ab_source_file_url": "csv_tests/csv_with_null_bools.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 5, "name": "77h4aiMP", "valid": null, "_ab_source_file_last_modified": "2023-08-04T01:42:33Z", "_ab_source_file_url": "csv_tests/csv_with_null_bools.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 6, "name": "", "valid": true, "_ab_source_file_last_modified": "2023-08-04T01:42:33Z", "_ab_source_file_url": "csv_tests/csv_with_null_bools.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 7, "name": "xZhh1Kyl", "valid": false, "_ab_source_file_last_modified": "2023-08-04T01:42:33Z", "_ab_source_file_url": "csv_tests/csv_with_null_bools.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 8, "name": "M2t286iJ", "valid": false, "_ab_source_file_last_modified": "2023-08-04T01:42:33Z", "_ab_source_file_url": "csv_tests/csv_with_null_bools.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 1, "name": "null", "valid": null, "_ab_source_file_last_modified": "2023-08-04T01:42:33.000000Z", "_ab_source_file_url": "csv_tests/csv_with_null_bools.csv"}, "emitted_at": 162727468000} +{"stream": "test", "data": {"id": 2, "name": "j4DyXTS7", "valid": true, "_ab_source_file_last_modified": "2023-08-04T01:42:33.000000Z", "_ab_source_file_url": "csv_tests/csv_with_null_bools.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 3, "name": "NULL", "valid": null, "_ab_source_file_last_modified": "2023-08-04T01:42:33.000000Z", "_ab_source_file_url": "csv_tests/csv_with_null_bools.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 4, "name": "1q6jD8Np", "valid": false, "_ab_source_file_last_modified": "2023-08-04T01:42:33.000000Z", "_ab_source_file_url": "csv_tests/csv_with_null_bools.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 5, "name": "77h4aiMP", "valid": null, "_ab_source_file_last_modified": "2023-08-04T01:42:33.000000Z", "_ab_source_file_url": "csv_tests/csv_with_null_bools.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 6, "name": "", "valid": true, "_ab_source_file_last_modified": "2023-08-04T01:42:33.000000Z", "_ab_source_file_url": "csv_tests/csv_with_null_bools.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 7, "name": "xZhh1Kyl", "valid": false, "_ab_source_file_last_modified": "2023-08-04T01:42:33.000000Z", "_ab_source_file_url": "csv_tests/csv_with_null_bools.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 8, "name": "M2t286iJ", "valid": false, "_ab_source_file_last_modified": "2023-08-04T01:42:33.000000Z", "_ab_source_file_url": "csv_tests/csv_with_null_bools.csv"}, "emitted_at": 1627227468000} diff --git a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_with_nulls.jsonl b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_with_nulls.jsonl index efb0b16d65bd..946374929179 100644 --- a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_with_nulls.jsonl +++ b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_csv_with_nulls.jsonl @@ -1,8 +1,8 @@ -{"stream": "test", "data": {"id": 1, "name": null, "valid": false, "_ab_source_file_last_modified": "2023-08-03T19:58:00Z", "_ab_source_file_url": "csv_tests/csv_with_nulls.csv"}, "emitted_at": 162727468000} -{"stream": "test", "data": {"id": 2, "name": "j4DyXTS7", "valid": true, "_ab_source_file_last_modified": "2023-08-03T19:58:00Z", "_ab_source_file_url": "csv_tests/csv_with_nulls.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 3, "name": null, "valid": false, "_ab_source_file_last_modified": "2023-08-03T19:58:00Z", "_ab_source_file_url": "csv_tests/csv_with_nulls.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 4, "name": "1q6jD8Np", "valid": false, "_ab_source_file_last_modified": "2023-08-03T19:58:00Z", "_ab_source_file_url": "csv_tests/csv_with_nulls.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 5, "name": "77h4aiMP", "valid": true, "_ab_source_file_last_modified": "2023-08-03T19:58:00Z", "_ab_source_file_url": "csv_tests/csv_with_nulls.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 6, "name": "Le35Wyic", "valid": true, "_ab_source_file_last_modified": "2023-08-03T19:58:00Z", "_ab_source_file_url": "csv_tests/csv_with_nulls.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 7, "name": "xZhh1Kyl", "valid": false, "_ab_source_file_last_modified": "2023-08-03T19:58:00Z", "_ab_source_file_url": "csv_tests/csv_with_nulls.csv"}, "emitted_at": 1627227468000} -{"stream": "test", "data": {"id": 8, "name": "M2t286iJ", "valid": false, "_ab_source_file_last_modified": "2023-08-03T19:58:00Z", "_ab_source_file_url": "csv_tests/csv_with_nulls.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 1, "name": null, "valid": false, "_ab_source_file_last_modified": "2023-08-03T19:58:00.000000Z", "_ab_source_file_url": "csv_tests/csv_with_nulls.csv"}, "emitted_at": 162727468000} +{"stream": "test", "data": {"id": 2, "name": "j4DyXTS7", "valid": true, "_ab_source_file_last_modified": "2023-08-03T19:58:00.000000Z", "_ab_source_file_url": "csv_tests/csv_with_nulls.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 3, "name": null, "valid": false, "_ab_source_file_last_modified": "2023-08-03T19:58:00.000000Z", "_ab_source_file_url": "csv_tests/csv_with_nulls.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 4, "name": "1q6jD8Np", "valid": false, "_ab_source_file_last_modified": "2023-08-03T19:58:00.000000Z", "_ab_source_file_url": "csv_tests/csv_with_nulls.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 5, "name": "77h4aiMP", "valid": true, "_ab_source_file_last_modified": "2023-08-03T19:58:00.000000Z", "_ab_source_file_url": "csv_tests/csv_with_nulls.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 6, "name": "Le35Wyic", "valid": true, "_ab_source_file_last_modified": "2023-08-03T19:58:00.000000Z", "_ab_source_file_url": "csv_tests/csv_with_nulls.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 7, "name": "xZhh1Kyl", "valid": false, "_ab_source_file_last_modified": "2023-08-03T19:58:00.000000Z", "_ab_source_file_url": "csv_tests/csv_with_nulls.csv"}, "emitted_at": 1627227468000} +{"stream": "test", "data": {"id": 8, "name": "M2t286iJ", "valid": false, "_ab_source_file_last_modified": "2023-08-03T19:58:00.000000Z", "_ab_source_file_url": "csv_tests/csv_with_nulls.csv"}, "emitted_at": 1627227468000} diff --git a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_parquet_decimal.jsonl b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_parquet_decimal.jsonl index 388b10b03112..0d8ae08a0c70 100644 --- a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_parquet_decimal.jsonl +++ b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/legacy_parquet_decimal.jsonl @@ -1,2 +1,2 @@ -{"stream":"test","data":{"id":"row1","value": 12.345,"_ab_source_file_last_modified":"2023-08-06T18:05:00Z","_ab_source_file_url":"parquet_tests/sample_decimal.parquet"},"emitted_at":1683668637642} -{"stream":"test","data":{"id":"row2","value": 67.89,"_ab_source_file_last_modified":"2023-08-06T18:05:00Z","_ab_source_file_url":"parquet_tests/sample_decimal.parquet"},"emitted_at":1683668637643} +{"stream":"test","data":{"id":"row1","value": 12.345,"_ab_source_file_last_modified":"2023-08-06T18:05:00.000000Z","_ab_source_file_url":"parquet_tests/sample_decimal.parquet"},"emitted_at":1683668637642} +{"stream":"test","data":{"id":"row2","value": 67.89,"_ab_source_file_last_modified":"2023-08-06T18:05:00.000000Z","_ab_source_file_url":"parquet_tests/sample_decimal.parquet"},"emitted_at":1683668637643} diff --git a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/parquet.jsonl b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/parquet.jsonl index f9d66c2d9918..000eac4ff214 100644 --- a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/parquet.jsonl +++ b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/parquet.jsonl @@ -1,15 +1,15 @@ -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"SCHWARTZ","First_Name":"CHANA","Mid_Init":"H","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"*ATTORNEY AT LAW","Base_Salary":77015,"Regular_Hours":1046.25,"Regular_Gross_Paid":47316.74,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":8230.31,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ON LEAVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:28Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ON%20LEAVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668637642} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"WASHINGTON","First_Name":"DOROTHY","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":53373,"Regular_Hours":1825,"Regular_Gross_Paid":47436.44,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":1723.17,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ON LEAVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:28Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ON%20LEAVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668637643} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"SAMUEL","First_Name":"GRACE","Mid_Init":"Y","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":55337,"Regular_Hours":1825,"Regular_Gross_Paid":55185.52,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":0,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ON LEAVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:28Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ON%20LEAVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668639019} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"BIEBEL","First_Name":"ANN","Mid_Init":"M","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"*ATTORNEY AT LAW","Base_Salary":77015,"Regular_Hours":1825,"Regular_Gross_Paid":76804,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":13750.36,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668640406} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"CARROLL","First_Name":"FRAN","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"*ATTORNEY AT LAW","Base_Salary":77015,"Regular_Hours":1825,"Regular_Gross_Paid":76804,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":13750.36,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668640407} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"BROWNSTEIN","First_Name":"ELFREDA","Mid_Init":"G","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"*ATTORNEY AT LAW","Base_Salary":83504,"Regular_Hours":1825,"Regular_Gross_Paid":83275.15,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":13750.36,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668640407} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"WARD","First_Name":"RENEE","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":53373,"Regular_Hours":1825,"Regular_Gross_Paid":46588.76,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":3409.69,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668640408} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"SPIVEY","First_Name":"NATASHA","Mid_Init":"L","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":53436,"Regular_Hours":1825,"Regular_Gross_Paid":53289.6,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":0,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668640408} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"DU","First_Name":"MARK","Mid_Init":null,"Agency_Start_Date":"03/24/2014","Work_Location_Borough":null,"Title_Description":"HEARING OFFICER","Base_Salary":36.6,"Regular_Hours":188.75,"Regular_Gross_Paid":5334.45,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":0,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Hour","_ab_source_file_last_modified":"2023-05-09T20:16:29Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Hour/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668641811} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"THEIL","First_Name":"JOANNE","Mid_Init":"F","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"*ATTORNEY AT LAW","Base_Salary":80438,"Regular_Hours":1825,"Regular_Gross_Paid":80217.55,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":13635.42,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668643311} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"DEMAIO","First_Name":"DEIRDRE","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":53512,"Regular_Hours":1780,"Regular_Gross_Paid":48727.47,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":3318.35,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668643311} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"MCLAURIN TRAPP","First_Name":"CELESTINE","Mid_Init":"T","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":58951,"Regular_Hours":1818,"Regular_Gross_Paid":58563.27,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":8.25,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668643312} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"BUNDRANT","First_Name":"TROY","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":64769,"Regular_Hours":1825,"Regular_Gross_Paid":61817.94,"OT_Hours":62,"Total_OT_Paid":2576.58,"Total_Other_Pay":106.68,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668643312} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"CHASE JONES","First_Name":"DIANA","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":66000,"Regular_Hours":1825,"Regular_Gross_Paid":65819.25,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":0,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668643312} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"JORDAN","First_Name":"REGINALD","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":75000,"Regular_Hours":1825,"Regular_Gross_Paid":74794.46,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":0,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668643312} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"SCHWARTZ","First_Name":"CHANA","Mid_Init":"H","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"*ATTORNEY AT LAW","Base_Salary":77015,"Regular_Hours":1046.25,"Regular_Gross_Paid":47316.74,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":8230.31,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ON LEAVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:28.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ON%20LEAVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668637642} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"WASHINGTON","First_Name":"DOROTHY","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":53373,"Regular_Hours":1825,"Regular_Gross_Paid":47436.44,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":1723.17,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ON LEAVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:28.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ON%20LEAVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668637643} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"SAMUEL","First_Name":"GRACE","Mid_Init":"Y","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":55337,"Regular_Hours":1825,"Regular_Gross_Paid":55185.52,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":0,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ON LEAVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:28.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ON%20LEAVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668639019} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"BIEBEL","First_Name":"ANN","Mid_Init":"M","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"*ATTORNEY AT LAW","Base_Salary":77015,"Regular_Hours":1825,"Regular_Gross_Paid":76804,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":13750.36,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668640406} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"CARROLL","First_Name":"FRAN","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"*ATTORNEY AT LAW","Base_Salary":77015,"Regular_Hours":1825,"Regular_Gross_Paid":76804,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":13750.36,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668640407} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"BROWNSTEIN","First_Name":"ELFREDA","Mid_Init":"G","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"*ATTORNEY AT LAW","Base_Salary":83504,"Regular_Hours":1825,"Regular_Gross_Paid":83275.15,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":13750.36,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668640407} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"WARD","First_Name":"RENEE","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":53373,"Regular_Hours":1825,"Regular_Gross_Paid":46588.76,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":3409.69,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668640408} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"SPIVEY","First_Name":"NATASHA","Mid_Init":"L","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":53436,"Regular_Hours":1825,"Regular_Gross_Paid":53289.6,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":0,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668640408} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"DU","First_Name":"MARK","Mid_Init":null,"Agency_Start_Date":"03/24/2014","Work_Location_Borough":null,"Title_Description":"HEARING OFFICER","Base_Salary":36.6,"Regular_Hours":188.75,"Regular_Gross_Paid":5334.45,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":0,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Hour","_ab_source_file_last_modified":"2023-05-09T20:16:29.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Hour/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668641811} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"THEIL","First_Name":"JOANNE","Mid_Init":"F","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"*ATTORNEY AT LAW","Base_Salary":80438,"Regular_Hours":1825,"Regular_Gross_Paid":80217.55,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":13635.42,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668643311} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"DEMAIO","First_Name":"DEIRDRE","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":53512,"Regular_Hours":1780,"Regular_Gross_Paid":48727.47,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":3318.35,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668643311} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"MCLAURIN TRAPP","First_Name":"CELESTINE","Mid_Init":"T","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":58951,"Regular_Hours":1818,"Regular_Gross_Paid":58563.27,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":8.25,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668643312} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"BUNDRANT","First_Name":"TROY","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":64769,"Regular_Hours":1825,"Regular_Gross_Paid":61817.94,"OT_Hours":62,"Total_OT_Paid":2576.58,"Total_Other_Pay":106.68,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668643312} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"CHASE JONES","First_Name":"DIANA","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":66000,"Regular_Hours":1825,"Regular_Gross_Paid":65819.25,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":0,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668643312} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"JORDAN","First_Name":"REGINALD","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":75000,"Regular_Hours":1825,"Regular_Gross_Paid":74794.46,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":0,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668643312} diff --git a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/parquet_dataset.jsonl b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/parquet_dataset.jsonl index f9d66c2d9918..000eac4ff214 100644 --- a/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/parquet_dataset.jsonl +++ b/airbyte-integrations/connectors/source-s3/integration_tests/expected_records/parquet_dataset.jsonl @@ -1,15 +1,15 @@ -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"SCHWARTZ","First_Name":"CHANA","Mid_Init":"H","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"*ATTORNEY AT LAW","Base_Salary":77015,"Regular_Hours":1046.25,"Regular_Gross_Paid":47316.74,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":8230.31,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ON LEAVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:28Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ON%20LEAVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668637642} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"WASHINGTON","First_Name":"DOROTHY","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":53373,"Regular_Hours":1825,"Regular_Gross_Paid":47436.44,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":1723.17,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ON LEAVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:28Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ON%20LEAVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668637643} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"SAMUEL","First_Name":"GRACE","Mid_Init":"Y","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":55337,"Regular_Hours":1825,"Regular_Gross_Paid":55185.52,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":0,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ON LEAVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:28Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ON%20LEAVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668639019} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"BIEBEL","First_Name":"ANN","Mid_Init":"M","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"*ATTORNEY AT LAW","Base_Salary":77015,"Regular_Hours":1825,"Regular_Gross_Paid":76804,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":13750.36,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668640406} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"CARROLL","First_Name":"FRAN","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"*ATTORNEY AT LAW","Base_Salary":77015,"Regular_Hours":1825,"Regular_Gross_Paid":76804,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":13750.36,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668640407} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"BROWNSTEIN","First_Name":"ELFREDA","Mid_Init":"G","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"*ATTORNEY AT LAW","Base_Salary":83504,"Regular_Hours":1825,"Regular_Gross_Paid":83275.15,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":13750.36,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668640407} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"WARD","First_Name":"RENEE","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":53373,"Regular_Hours":1825,"Regular_Gross_Paid":46588.76,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":3409.69,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668640408} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"SPIVEY","First_Name":"NATASHA","Mid_Init":"L","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":53436,"Regular_Hours":1825,"Regular_Gross_Paid":53289.6,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":0,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668640408} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"DU","First_Name":"MARK","Mid_Init":null,"Agency_Start_Date":"03/24/2014","Work_Location_Borough":null,"Title_Description":"HEARING OFFICER","Base_Salary":36.6,"Regular_Hours":188.75,"Regular_Gross_Paid":5334.45,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":0,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Hour","_ab_source_file_last_modified":"2023-05-09T20:16:29Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Hour/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668641811} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"THEIL","First_Name":"JOANNE","Mid_Init":"F","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"*ATTORNEY AT LAW","Base_Salary":80438,"Regular_Hours":1825,"Regular_Gross_Paid":80217.55,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":13635.42,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668643311} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"DEMAIO","First_Name":"DEIRDRE","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":53512,"Regular_Hours":1780,"Regular_Gross_Paid":48727.47,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":3318.35,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668643311} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"MCLAURIN TRAPP","First_Name":"CELESTINE","Mid_Init":"T","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":58951,"Regular_Hours":1818,"Regular_Gross_Paid":58563.27,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":8.25,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668643312} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"BUNDRANT","First_Name":"TROY","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":64769,"Regular_Hours":1825,"Regular_Gross_Paid":61817.94,"OT_Hours":62,"Total_OT_Paid":2576.58,"Total_Other_Pay":106.68,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668643312} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"CHASE JONES","First_Name":"DIANA","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":66000,"Regular_Hours":1825,"Regular_Gross_Paid":65819.25,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":0,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668643312} -{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"JORDAN","First_Name":"REGINALD","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":75000,"Regular_Hours":1825,"Regular_Gross_Paid":74794.46,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":0,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668643312} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"SCHWARTZ","First_Name":"CHANA","Mid_Init":"H","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"*ATTORNEY AT LAW","Base_Salary":77015,"Regular_Hours":1046.25,"Regular_Gross_Paid":47316.74,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":8230.31,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ON LEAVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:28.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ON%20LEAVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668637642} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"WASHINGTON","First_Name":"DOROTHY","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":53373,"Regular_Hours":1825,"Regular_Gross_Paid":47436.44,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":1723.17,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ON LEAVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:28.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ON%20LEAVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668637643} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"SAMUEL","First_Name":"GRACE","Mid_Init":"Y","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":55337,"Regular_Hours":1825,"Regular_Gross_Paid":55185.52,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":0,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ON LEAVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:28.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ON%20LEAVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668639019} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"BIEBEL","First_Name":"ANN","Mid_Init":"M","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"*ATTORNEY AT LAW","Base_Salary":77015,"Regular_Hours":1825,"Regular_Gross_Paid":76804,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":13750.36,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668640406} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"CARROLL","First_Name":"FRAN","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"*ATTORNEY AT LAW","Base_Salary":77015,"Regular_Hours":1825,"Regular_Gross_Paid":76804,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":13750.36,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668640407} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"BROWNSTEIN","First_Name":"ELFREDA","Mid_Init":"G","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"*ATTORNEY AT LAW","Base_Salary":83504,"Regular_Hours":1825,"Regular_Gross_Paid":83275.15,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":13750.36,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668640407} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"WARD","First_Name":"RENEE","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":53373,"Regular_Hours":1825,"Regular_Gross_Paid":46588.76,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":3409.69,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668640408} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"SPIVEY","First_Name":"NATASHA","Mid_Init":"L","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":53436,"Regular_Hours":1825,"Regular_Gross_Paid":53289.6,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":0,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668640408} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"DU","First_Name":"MARK","Mid_Init":null,"Agency_Start_Date":"03/24/2014","Work_Location_Borough":null,"Title_Description":"HEARING OFFICER","Base_Salary":36.6,"Regular_Hours":188.75,"Regular_Gross_Paid":5334.45,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":0,"Fiscal_Year":"2021","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Hour","_ab_source_file_last_modified":"2023-05-09T20:16:29.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2021/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Hour/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668641811} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"THEIL","First_Name":"JOANNE","Mid_Init":"F","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"*ATTORNEY AT LAW","Base_Salary":80438,"Regular_Hours":1825,"Regular_Gross_Paid":80217.55,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":13635.42,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668643311} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"DEMAIO","First_Name":"DEIRDRE","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":53512,"Regular_Hours":1780,"Regular_Gross_Paid":48727.47,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":3318.35,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668643311} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"MCLAURIN TRAPP","First_Name":"CELESTINE","Mid_Init":"T","Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":58951,"Regular_Hours":1818,"Regular_Gross_Paid":58563.27,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":8.25,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668643312} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"BUNDRANT","First_Name":"TROY","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":64769,"Regular_Hours":1825,"Regular_Gross_Paid":61817.94,"OT_Hours":62,"Total_OT_Paid":2576.58,"Total_Other_Pay":106.68,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668643312} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"CHASE JONES","First_Name":"DIANA","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":66000,"Regular_Hours":1825,"Regular_Gross_Paid":65819.25,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":0,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668643312} +{"stream":"test","data":{"Payroll_Number":820,"Last_Name":"JORDAN","First_Name":"REGINALD","Mid_Init":null,"Agency_Start_Date":"07/05/2010","Work_Location_Borough":null,"Title_Description":"ADM MANAGER-NON-MGRL FROM M1/M2","Base_Salary":75000,"Regular_Hours":1825,"Regular_Gross_Paid":74794.46,"OT_Hours":0,"Total_OT_Paid":0,"Total_Other_Pay":0,"Fiscal_Year":"2022","Leave_Status_as_of_June_30":"ACTIVE","Pay_Basis":"per Annum","_ab_source_file_last_modified":"2023-05-09T20:16:29.000000Z","_ab_source_file_url":"test_payroll/Fiscal_Year=2022/Leave_Status_as_of_June_30=ACTIVE/Pay_Basis=per%20Annum/4e0ea65c5a074c0592e43f7b950f3ce8-0.parquet"},"emitted_at":1683668643312} diff --git a/airbyte-integrations/connectors/source-s3/integration_tests/integration_test.py b/airbyte-integrations/connectors/source-s3/integration_tests/integration_test.py deleted file mode 100644 index 28a71f1520d5..000000000000 --- a/airbyte-integrations/connectors/source-s3/integration_tests/integration_test.py +++ /dev/null @@ -1,98 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - - -import json -import time -from typing import Iterator, List, Mapping - -import boto3 -from airbyte_cdk import AirbyteLogger -from botocore.errorfactory import ClientError -from source_s3.stream import IncrementalFileStreamS3 - -from .integration_test_abstract import HERE, SAMPLE_DIR, AbstractTestIncrementalFileStream - -LOGGER = AirbyteLogger() - - -class TestIncrementalFileStreamS3(AbstractTestIncrementalFileStream): - region = "eu-west-3" - - @property - def stream_class(self) -> type: - return IncrementalFileStreamS3 - - @property - def credentials(self) -> Mapping: - filename = HERE.parent / "secrets/config.json" - with open(filename) as json_file: - config = json.load(json_file) - return { - "aws_access_key_id": config["provider"]["aws_access_key_id"], - "aws_secret_access_key": config["provider"]["aws_secret_access_key"], - } - - def provider(self, bucket_name: str) -> Mapping: - return {"storage": "S3", "bucket": bucket_name} - - def _s3_connect(self, credentials: Mapping) -> None: - self.s3_client = boto3.client( - "s3", - aws_access_key_id=credentials["aws_access_key_id"], - aws_secret_access_key=credentials["aws_secret_access_key"], - region_name=self.region, - ) - self.s3_resource = boto3.resource( - "s3", aws_access_key_id=credentials["aws_access_key_id"], aws_secret_access_key=credentials["aws_secret_access_key"] - ) - - def cloud_files(self, cloud_bucket_name: str, credentials: Mapping, files_to_upload: List, private: bool = True) -> Iterator[str]: - self._s3_connect(credentials) - - location = {"LocationConstraint": self.region} - bucket_name = cloud_bucket_name - - print("\n") - LOGGER.info(f"Uploading {len(files_to_upload)} file(s) to {'private' if private else 'public'} aws bucket '{bucket_name}'") - try: - self.s3_client.head_bucket(Bucket=bucket_name) - except ClientError: - if private: - self.s3_client.create_bucket(Bucket=bucket_name, CreateBucketConfiguration=location) - else: - self.s3_client.create_bucket(Bucket=bucket_name, CreateBucketConfiguration=location, ObjectOwnership="ObjectWriter") - self.s3_client.delete_public_access_block(Bucket=bucket_name) - self.s3_client.put_bucket_acl(Bucket=bucket_name, ACL="public-read") - - # wait here until the bucket is ready - ready = False - attempts, max_attempts = 0, 30 - while not ready: - time.sleep(1) - try: - self.s3_client.head_bucket(Bucket=bucket_name) - except ClientError: - attempts += 1 - if attempts >= max_attempts: - raise RuntimeError(f"Couldn't get a successful ping on bucket after ~{max_attempts} seconds") - else: - ready = True - LOGGER.info(f"bucket {bucket_name} initialised") - - extra_args = {} - if not private: - extra_args = {"ACL": "public-read"} - for filepath in files_to_upload: - upload_path = str(filepath).replace(str(SAMPLE_DIR), "") - upload_path = upload_path[1:] if upload_path[0] == "/" else upload_path - self.s3_client.upload_file(str(filepath), bucket_name, upload_path, ExtraArgs=extra_args) - yield f"{bucket_name}/{upload_path}" - - def teardown_infra(self, cloud_bucket_name: str, credentials: Mapping) -> None: - self._s3_connect(credentials) - bucket = self.s3_resource.Bucket(cloud_bucket_name) - bucket.objects.all().delete() - bucket.delete() - LOGGER.info(f"S3 Bucket {cloud_bucket_name} is now deleted") diff --git a/airbyte-integrations/connectors/source-s3/integration_tests/integration_test_abstract.py b/airbyte-integrations/connectors/source-s3/integration_tests/integration_test_abstract.py deleted file mode 100644 index 090e12614de5..000000000000 --- a/airbyte-integrations/connectors/source-s3/integration_tests/integration_test_abstract.py +++ /dev/null @@ -1,526 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - - -import time -from abc import ABC, abstractmethod -from pathlib import Path -from typing import Any, Iterator, List, Mapping -from uuid import uuid4 - -import jsonschema -import pytest -from airbyte_cdk.logger import AirbyteLogger -from airbyte_cdk.models import SyncMode -from source_s3.source_files_abstract.formats.csv_parser import CsvParser -from source_s3.source_files_abstract.stream import FileStream - -HERE = Path(__file__).resolve().parent -SAMPLE_DIR = HERE.joinpath("sample_files/") -LOGGER = AirbyteLogger() -JSONTYPE_TO_PYTHONTYPE = {"string": str, "number": float, "integer": int, "object": dict, "array": list, "boolean": bool, "null": None} - - -class AbstractTestIncrementalFileStream(ABC): - """Prefix this class with Abstract so the tests don't run here but only in the children""" - - temp_bucket_prefix = "airbytetest-" - - @pytest.fixture(scope="session") - def cloud_bucket_prefix(self) -> str: - return self.temp_bucket_prefix - - @pytest.fixture(scope="session") - def format(self) -> Mapping[str, Any]: - return {"filetype": "csv"} - - @pytest.fixture(scope="session") - def airbyte_system_columns(self) -> Mapping[str, str]: - return { - FileStream.ab_last_mod_col: {"type": "string", "format": "date-time"}, - FileStream.ab_file_name_col: {"type": "string"} - } - - @property - @abstractmethod - def stream_class(self) -> type: - """ - :return: provider specific FileStream class (e.g. IncrementalFileStreamS3) - """ - - @property - @abstractmethod - def credentials(self) -> Mapping: - """ - These will be added automatically to the provider property - - :return: mapping of provider specific credentials - """ - - @abstractmethod - def provider(self, bucket_name: str) -> Mapping: - """ - :return: provider specific provider dict as described in spec.json (leave out credentials, they will be added automatically) - """ - - @abstractmethod - def cloud_files(self, cloud_bucket_name: str, credentials: Mapping, files_to_upload: List, private: bool = True) -> Iterator[str]: - """ - See S3 for example what the override of this needs to achieve. - - :param cloud_bucket_name: name of bucket (or equivalent) - :param credentials: mapping of provider specific credentials - :param files_to_upload: list of paths to local files to upload, pass empty list to test zero files case - :param private: whether or not to make the files private and require credentials to read, defaults to True - :yield: url filepath to uploaded file - """ - - @abstractmethod - def teardown_infra(self, cloud_bucket_name: str, credentials: Mapping) -> None: - """ - Provider-specific logic to tidy up any cloud resources. - See S3 for example. - - :param cloud_bucket_name: bucket (or equivalent) name - :param credentials: mapping of provider specific credentials - """ - - def _stream_records_test_logic( - self, - cloud_bucket_name: str, - format: Mapping[str, str], - airbyte_system_columns: Mapping[str, str], - sync_mode: Any, - files: List[str], - path_pattern: str, - private: bool, - num_columns: Any, - num_records: Any, - expected_schema: Mapping[str, Any], - user_schema: Mapping[str, Any], - fails: Any, - state: Any = None, - ) -> Any: - uploaded_files = [fpath for fpath in self.cloud_files(cloud_bucket_name, self.credentials, files, private)] - LOGGER.info(f"file(s) uploaded: {uploaded_files}") - - # emulate state for incremental testing - # since we're not actually saving state out to file here, we pass schema in to our FileStream creation... - # this isn't how it will work in Airbyte but it's a close enough emulation - current_state = state if state is not None else {FileStream.ab_last_mod_col: "1970-01-01T00:00:00Z"} - if (user_schema is None) and ("schema" in current_state.keys()): - user_schema = current_state["schema"] - - full_expected_schema = { - "type": "object", - "properties": {**expected_schema, **airbyte_system_columns}, - } - - str_user_schema = str(user_schema).replace("'", '"') if user_schema is not None else None - total_num_columns = num_columns + len(airbyte_system_columns.keys()) - provider = {**self.provider(cloud_bucket_name), **self.credentials} if private else self.provider(cloud_bucket_name) - - if not fails: - fs = self.stream_class("dataset", provider, format, path_pattern, str_user_schema) - LOGGER.info(f"Testing stream_records() in SyncMode:{sync_mode.value}") - - # check we return correct schema from get_json_schema() - assert fs.get_json_schema() == full_expected_schema - - records = [] - for stream_slice in fs.stream_slices(sync_mode=sync_mode, stream_state=current_state): - if stream_slice is not None: - # we need to do this in order to work out which extra columns (if any) we expect in this stream_slice - expected_columns = [] - for file_dict in stream_slice["files"]: - # TODO: if we ever test other filetypes in these tests this will need fixing - file_reader = CsvParser(format) - storage_file = file_dict["storage_file"] - with storage_file.open(file_reader.is_binary) as f: - expected_columns.extend(list(file_reader.get_inferred_schema(f, storage_file.file_info).keys())) - expected_columns = set(expected_columns) # de-dupe - - for record in fs.read_records(sync_mode, stream_slice=stream_slice): - # check actual record values match expected schema - jsonschema.validate(record, full_expected_schema) - records.append(record) - - assert all([len(r.keys()) == total_num_columns for r in records]) - assert len(records) == num_records - - # returning state by simulating call to get_updated_state() with final record so we can test incremental - return fs.get_updated_state(current_stream_state=current_state, latest_record=records[-1]) - - else: - with pytest.raises(Exception) as e_info: - fs = self.stream_class("dataset", provider, format, path_pattern, str_user_schema) - LOGGER.info(f"Testing EXPECTED FAILURE stream_records() in SyncMode:{sync_mode.value}") - - fs.get_json_schema() - - records = [] - for stream_slice in fs.stream_slices(sync_mode=sync_mode, stream_state=current_state): - for record in fs.read_records(sync_mode, stream_slice=stream_slice): - records.append(record) - - LOGGER.info(f"Failed as expected, error: {e_info}") - - @pytest.mark.parametrize( - # make user_schema None to test auto-inference. Exclude any _airbyte system columns in expected_schema. - "files, path_pattern, private, num_columns, num_records, expected_schema, user_schema, incremental, fails", - [ - # single file tests - ( # public - [SAMPLE_DIR.joinpath("simple_test.csv")], - "**", - False, - 3, - 8, - {"id": "integer", "name": "string", "valid": "boolean"}, - None, - False, - False, - ), - ( # private - [SAMPLE_DIR.joinpath("simple_test.csv")], - "**", - True, - 3, - 8, - {"id": "integer", "name": "string", "valid": "boolean"}, - None, - False, - False, - ), - ( # provided schema exact match to actual schema - [SAMPLE_DIR.joinpath("simple_test.csv")], - "**", - True, - 3, - 8, - {"id": "integer", "name": "string", "valid": "boolean"}, - {"id": "integer", "name": "string", "valid": "boolean"}, - False, - False, - ), - ( # provided schema not matching datatypes, expect successful coercion - [SAMPLE_DIR.joinpath("simple_test.csv")], - "**", - True, - 3, - 8, - {"id": "string", "name": "string", "valid": "string"}, - {"id": "string", "name": "string", "valid": "string"}, - False, - False, - ), - ( # provided incompatible schema, expect fail - [SAMPLE_DIR.joinpath("simple_test.csv")], - "**", - True, - 3, - 8, - {"id": "boolean", "name": "boolean", "valid": "boolean"}, - {"id": "boolean", "name": "boolean", "valid": "boolean"}, - False, - True, - ), - # multiple file tests (all have identical schemas) - ( # public, auto-infer - [ - SAMPLE_DIR.joinpath("simple_test.csv"), - SAMPLE_DIR.joinpath("simple_test_2.csv"), - SAMPLE_DIR.joinpath("simple_test_3.csv"), - ], - "**", - False, - 3, - 17, - {"id": "integer", "name": "string", "valid": "boolean"}, - None, - False, - False, - ), - ( # private, auto-infer - [ - SAMPLE_DIR.joinpath("simple_test.csv"), - SAMPLE_DIR.joinpath("simple_test_2.csv"), - SAMPLE_DIR.joinpath("simple_test_3.csv"), - ], - "**", - True, - 3, - 17, - {"id": "integer", "name": "string", "valid": "boolean"}, - None, - False, - False, - ), - ( # provided schema exact match to actual schema - [ - SAMPLE_DIR.joinpath("simple_test.csv"), - SAMPLE_DIR.joinpath("simple_test_2.csv"), - SAMPLE_DIR.joinpath("simple_test_3.csv"), - ], - "**", - True, - 3, - 17, - {"id": "integer", "name": "string", "valid": "boolean"}, - {"id": "integer", "name": "string", "valid": "boolean"}, - False, - False, - ), - ( # provided schema not matching datatypes, expect successful coercion - [ - SAMPLE_DIR.joinpath("simple_test.csv"), - SAMPLE_DIR.joinpath("simple_test_2.csv"), - SAMPLE_DIR.joinpath("simple_test_3.csv"), - ], - "**", - True, - 3, - 17, - {"id": "string", "name": "string", "valid": "string"}, - {"id": "string", "name": "string", "valid": "string"}, - False, - False, - ), - ( # provided incompatible schema, expect fail - [ - SAMPLE_DIR.joinpath("simple_test.csv"), - SAMPLE_DIR.joinpath("simple_test_2.csv"), - SAMPLE_DIR.joinpath("simple_test_3.csv"), - ], - "**", - True, - 3, - 17, - {"id": "boolean", "name": "boolean", "valid": "boolean"}, - {"id": "boolean", "name": "boolean", "valid": "boolean"}, - False, - True, - ), - ( # provided schema, not containing all columns (extra columns should go into FileStream.ab_additional_col) - [ - SAMPLE_DIR.joinpath("simple_test.csv"), - SAMPLE_DIR.joinpath("multi_file_diffschema_1.csv"), - SAMPLE_DIR.joinpath("multi_file_diffschema_2.csv"), - ], - "**", - True, - 3, - 17, - {"id": "integer", "name": "string", "valid": "boolean"}, - {"id": "integer", "name": "string", "valid": "boolean"}, - False, - False, - ), - # pattern matching tests with additional files present that we don't want to read - ( # at top-level of bucket - [ - SAMPLE_DIR.joinpath("simple_test.csv"), - SAMPLE_DIR.joinpath("simple_test_2.csv"), - SAMPLE_DIR.joinpath("file_to_skip.csv"), - SAMPLE_DIR.joinpath("file_to_skip.txt"), - ], - "simple*", - True, - 3, - 11, - {"id": "integer", "name": "string", "valid": "boolean"}, - None, - False, - False, - ), - ( # at multiple levels of bucket - [ - SAMPLE_DIR.joinpath("simple_test.csv"), - SAMPLE_DIR.joinpath("simple_test_2.csv"), - SAMPLE_DIR.joinpath("file_to_skip.csv"), - SAMPLE_DIR.joinpath("file_to_skip.txt"), - SAMPLE_DIR.joinpath("pattern_match_test/this_folder/simple_test.csv"), - SAMPLE_DIR.joinpath("pattern_match_test/not_this_folder/file_to_skip.csv"), - SAMPLE_DIR.joinpath("pattern_match_test/not_this_folder/file_to_skip.txt"), - ], - "**/simple*", - True, - 3, - 19, - {"id": "integer", "name": "string", "valid": "boolean"}, - None, - False, - False, - ), - # incremental tests (passing num_records/num_columns/fails as lists holding value for each file in order) - ( # auto-infer, all same schema - [ - SAMPLE_DIR.joinpath("simple_test.csv"), - SAMPLE_DIR.joinpath("simple_test_2.csv"), - SAMPLE_DIR.joinpath("simple_test_3.csv"), - ], - "**", - True, - [3, 3, 3], - [8, 3, 6], - {"id": "integer", "name": "string", "valid": "boolean"}, - None, - True, - [False, False, False], - ), - ( # provided schema, all same schema - [ - SAMPLE_DIR.joinpath("simple_test.csv"), - SAMPLE_DIR.joinpath("simple_test_2.csv"), - SAMPLE_DIR.joinpath("simple_test_3.csv"), - ], - "**", - True, - [3, 3, 3], - [8, 3, 6], - {"id": "integer", "name": "string", "valid": "boolean"}, - {"id": "integer", "name": "string", "valid": "boolean"}, - True, - [False, False, False], - ), - ( # auto-infer, (different but merge-able schemas) - [ - SAMPLE_DIR.joinpath("simple_test.csv"), - SAMPLE_DIR.joinpath("multi_file_diffschema_1.csv"), - SAMPLE_DIR.joinpath("multi_file_diffschema_2.csv"), - ], - "**", - True, - [3, 3, 3], - [8, 3, 6], - {"id": "integer", "name": "string", "valid": "boolean"}, - None, - True, - [False, False, False], - ), - ( # same as previous but change order and expect 5 columns instead of 3 in all - [ - SAMPLE_DIR.joinpath("multi_file_diffschema_2.csv"), - SAMPLE_DIR.joinpath("multi_file_diffschema_1.csv"), - SAMPLE_DIR.joinpath("simple_test.csv"), - ], - "**", - True, - [5, 5, 5], - [6, 3, 8], - {"id": "integer", "name": "string", "valid": "boolean", "percentage": "number", "nullable": "string"}, - None, - True, - [False, False, False], - ), - ( # like previous test but with a user_schema limiting columns - [ - SAMPLE_DIR.joinpath("multi_file_diffschema_2.csv"), - SAMPLE_DIR.joinpath("multi_file_diffschema_1.csv"), - SAMPLE_DIR.joinpath("simple_test.csv"), - ], - "**", - True, - [2, 2, 2], - [6, 3, 8], - {"id": "integer", "name": "string"}, - {"id": "integer", "name": "string"}, - True, - [False, False, False], - ), - ( # fail when 2nd file has incompatible schema, auto-infer - [ - SAMPLE_DIR.joinpath("simple_test.csv"), - SAMPLE_DIR.joinpath("incompatible_schema.csv"), - ], - "**", - True, - [3, 3], - [8, 8], - {"id": "integer", "name": "string", "valid": "boolean"}, - None, - True, - [False, True], - ), - ( # fail when 2nd file has incompatible schema, provided schema - [ - SAMPLE_DIR.joinpath("simple_test.csv"), - SAMPLE_DIR.joinpath("incompatible_schema.csv"), - ], - "**", - True, - [3, 3], - [8, 8], - {"id": "integer", "name": "string", "valid": "boolean"}, - {"id": "integer", "name": "string", "valid": "boolean"}, - True, - [False, True], - ), - ], - ) - def test_stream_records( - self, - cloud_bucket_prefix: str, - format: Mapping[str, Any], - airbyte_system_columns: Mapping[str, str], - files: List[str], - path_pattern: str, - private: bool, - num_columns: List[int], - num_records: List[int], - expected_schema: Mapping[str, Any], - user_schema: Mapping[str, Any], - incremental: bool, - fails: List[bool], - ) -> None: - expected_schema = {k: {"type": ["null", v]} for k, v in expected_schema.items()} - try: - if not incremental: # we expect matching behaviour here in either sync_mode - for sync_mode in [ - SyncMode("full_refresh"), - SyncMode("incremental"), - ]: - cloud_bucket_name = f"{cloud_bucket_prefix}{uuid4()}" - self._stream_records_test_logic( - cloud_bucket_name, - format, - airbyte_system_columns, - sync_mode, - files, - path_pattern, - private, - num_columns, - num_records, - expected_schema, - user_schema, - fails, - ) - self.teardown_infra(cloud_bucket_name, self.credentials) - else: - cloud_bucket_name = f"{cloud_bucket_prefix}{uuid4()}" - latest_state = None - for i in range(len(files)): - latest_state = self._stream_records_test_logic( - cloud_bucket_name, - format, - airbyte_system_columns, - SyncMode("incremental"), - [files[i]], - path_pattern, - private, - num_columns[i], - num_records[i], - expected_schema, - user_schema, - fails[i], - state=latest_state, - ) - LOGGER.info(f"incremental state: {latest_state}") - # small delay to ensure next file gets later last_modified timestamp - time.sleep(1) - self.teardown_infra(cloud_bucket_name, self.credentials) - - except Exception as e: - self.teardown_infra(cloud_bucket_name, self.credentials) - raise e diff --git a/airbyte-integrations/connectors/source-s3/integration_tests/spec.json b/airbyte-integrations/connectors/source-s3/integration_tests/spec.json index f0dee45999a1..b6c59730c571 100644 --- a/airbyte-integrations/connectors/source-s3/integration_tests/spec.json +++ b/airbyte-integrations/connectors/source-s3/integration_tests/spec.json @@ -1,32 +1,337 @@ { "documentationUrl": "https://docs.airbyte.com/integrations/sources/s3", - "changelogUrl": "https://docs.airbyte.com/integrations/sources/s3", "connectionSpecification": { - "title": "S3 Source Spec", + "title": "Config", + "description": "NOTE: When this Spec is changed, legacy_config_transformer.py must also be modified to uptake the changes\nbecause it is responsible for converting legacy S3 v3 configs into v4 configs using the File-Based CDK.", "type": "object", "properties": { + "start_date": { + "title": "Start Date", + "description": "UTC date and time in the format 2017-01-25T00:00:00.000000Z. Any file modified before this date will not be replicated.", + "examples": ["2021-01-01T00:00:00.000000Z"], + "format": "date-time", + "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}.[0-9]{6}Z$", + "pattern_descriptor": "YYYY-MM-DDTHH:mm:ss.SSSSSSZ", + "order": 1, + "type": "string" + }, + "streams": { + "title": "The list of streams to sync", + "description": "Each instance of this configuration defines a stream. Use this to define which files belong in the stream, their format, and how they should be parsed and validated. When sending data to warehouse destination such as Snowflake or BigQuery, each stream is a separate table.", + "order": 10, + "type": "array", + "items": { + "title": "FileBasedStreamConfig", + "type": "object", + "properties": { + "name": { + "title": "Name", + "description": "The name of the stream.", + "type": "string" + }, + "globs": { + "title": "Globs", + "description": "The pattern used to specify which files should be selected from the file system. For more information on glob pattern matching look here.", + "type": "array", + "items": { + "type": "string" + } + }, + "legacy_prefix": { + "title": "Legacy Prefix", + "description": "The path prefix configured in v3 versions of the S3 connector. This option is deprecated in favor of a single glob.", + "airbyte_hidden": true, + "type": "string" + }, + "validation_policy": { + "title": "Validation Policy", + "description": "The name of the validation policy that dictates sync behavior when a record does not adhere to the stream schema.", + "default": "Emit Record", + "enum": ["Emit Record", "Skip Record", "Wait for Discover"] + }, + "input_schema": { + "title": "Input Schema", + "description": "The schema that will be used to validate records extracted from the file. This will override the stream schema that is auto-detected from incoming files.", + "type": "string" + }, + "primary_key": { + "title": "Primary Key", + "description": "The column or columns (for a composite key) that serves as the unique identifier of a record.", + "type": "string" + }, + "days_to_sync_if_history_is_full": { + "title": "Days To Sync If History Is Full", + "description": "When the state history of the file store is full, syncs will only read files that were last modified in the provided day range.", + "default": 3, + "type": "integer" + }, + "format": { + "title": "Format", + "description": "The configuration options that are used to alter how to read incoming files that deviate from the standard formatting.", + "type": "object", + "oneOf": [ + { + "title": "Avro Format", + "type": "object", + "properties": { + "filetype": { + "title": "Filetype", + "default": "avro", + "const": "avro", + "type": "string" + }, + "double_as_string": { + "title": "Convert Double Fields to Strings", + "description": "Whether to convert double fields to strings. This is recommended if you have decimal numbers with a high degree of precision because there can be a loss precision when handling floating point numbers.", + "default": false, + "type": "boolean" + } + } + }, + { + "title": "CSV Format", + "type": "object", + "properties": { + "filetype": { + "title": "Filetype", + "default": "csv", + "const": "csv", + "type": "string" + }, + "delimiter": { + "title": "Delimiter", + "description": "The character delimiting individual cells in the CSV data. This may only be a 1-character string. For tab-delimited data enter '\\t'.", + "default": ",", + "type": "string" + }, + "quote_char": { + "title": "Quote Character", + "description": "The character used for quoting CSV values. To disallow quoting, make this field blank.", + "default": "\"", + "type": "string" + }, + "escape_char": { + "title": "Escape Character", + "description": "The character used for escaping special characters. To disallow escaping, leave this field blank.", + "type": "string" + }, + "encoding": { + "title": "Encoding", + "description": "The character encoding of the CSV data. Leave blank to default to UTF8. See list of python encodings for allowable options.", + "default": "utf8", + "type": "string" + }, + "double_quote": { + "title": "Double Quote", + "description": "Whether two quotes in a quoted CSV value denote a single quote in the data.", + "default": true, + "type": "boolean" + }, + "null_values": { + "title": "Null Values", + "description": "A set of case-sensitive strings that should be interpreted as null values. For example, if the value 'NA' should be interpreted as null, enter 'NA' in this field.", + "default": [], + "type": "array", + "items": { + "type": "string" + }, + "uniqueItems": true + }, + "strings_can_be_null": { + "title": "Strings Can Be Null", + "description": "Whether strings can be interpreted as null values. If true, strings that match the null_values set will be interpreted as null. If false, strings that match the null_values set will be interpreted as the string itself.", + "default": true, + "type": "boolean" + }, + "skip_rows_before_header": { + "title": "Skip Rows Before Header", + "description": "The number of rows to skip before the header row. For example, if the header row is on the 3rd row, enter 2 in this field.", + "default": 0, + "type": "integer" + }, + "skip_rows_after_header": { + "title": "Skip Rows After Header", + "description": "The number of rows to skip after the header row.", + "default": 0, + "type": "integer" + }, + "header_definition": { + "title": "CSV Header Definition", + "description": "How headers will be defined. `User Provided` assumes the CSV does not have a header row and uses the headers provided and `Autogenerated` assumes the CSV does not have a header row and the CDK will generate headers using for `f{i}` where `i` is the index starting from 0. Else, the default behavior is to use the header from the CSV file. If a user wants to autogenerate or provide column names for a CSV having headers, they can skip rows.", + "default": { + "header_definition_type": "From CSV" + }, + "oneOf": [ + { + "title": "From CSV", + "type": "object", + "properties": { + "header_definition_type": { + "title": "Header Definition Type", + "default": "From CSV", + "const": "From CSV", + "type": "string" + } + } + }, + { + "title": "Autogenerated", + "type": "object", + "properties": { + "header_definition_type": { + "title": "Header Definition Type", + "default": "Autogenerated", + "const": "Autogenerated", + "type": "string" + } + } + }, + { + "title": "User Provided", + "type": "object", + "properties": { + "header_definition_type": { + "title": "Header Definition Type", + "default": "User Provided", + "const": "User Provided", + "type": "string" + }, + "column_names": { + "title": "Column Names", + "description": "The column names that will be used while emitting the CSV records", + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": ["column_names"] + } + ], + "type": "object" + }, + "true_values": { + "title": "True Values", + "description": "A set of case-sensitive strings that should be interpreted as true values.", + "default": ["y", "yes", "t", "true", "on", "1"], + "type": "array", + "items": { + "type": "string" + }, + "uniqueItems": true + }, + "false_values": { + "title": "False Values", + "description": "A set of case-sensitive strings that should be interpreted as false values.", + "default": ["n", "no", "f", "false", "off", "0"], + "type": "array", + "items": { + "type": "string" + }, + "uniqueItems": true + }, + "inference_type": { + "title": "Inference Type", + "description": "How to infer the types of the columns. If none, inference default to strings.", + "default": "None", + "airbyte_hidden": true, + "enum": ["None", "Primitive Types Only"] + } + } + }, + { + "title": "Jsonl Format", + "type": "object", + "properties": { + "filetype": { + "title": "Filetype", + "default": "jsonl", + "const": "jsonl", + "type": "string" + } + } + }, + { + "title": "Parquet Format", + "type": "object", + "properties": { + "filetype": { + "title": "Filetype", + "default": "parquet", + "const": "parquet", + "type": "string" + }, + "decimal_as_float": { + "title": "Convert Decimal Fields to Floats", + "description": "Whether to convert decimal fields to floats. There is a loss of precision when converting decimals to floats, so this is not recommended.", + "default": false, + "type": "boolean" + } + } + } + ] + }, + "schemaless": { + "title": "Schemaless", + "description": "When enabled, syncs will not validate or structure records against the stream's schema.", + "default": false, + "type": "boolean" + } + }, + "required": ["name", "format"] + } + }, + "bucket": { + "title": "Bucket", + "description": "Name of the S3 bucket where the file(s) exist.", + "order": 0, + "type": "string" + }, + "aws_access_key_id": { + "title": "AWS Access Key ID", + "description": "In order to access private Buckets stored on AWS S3, this connector requires credentials with the proper permissions. If accessing publicly available data, this field is not necessary.", + "airbyte_secret": true, + "order": 2, + "type": "string" + }, + "aws_secret_access_key": { + "title": "AWS Secret Access Key", + "description": "In order to access private Buckets stored on AWS S3, this connector requires credentials with the proper permissions. If accessing publicly available data, this field is not necessary.", + "airbyte_secret": true, + "order": 3, + "type": "string" + }, + "endpoint": { + "title": "Endpoint", + "description": "Endpoint to an S3 compatible service. Leave empty to use AWS.", + "default": "", + "order": 4, + "type": "string" + }, "dataset": { "title": "Output Stream Name", - "description": "The name of the stream you would like this source to output. Can contain letters, numbers, or underscores.", + "description": "Deprecated and will be removed soon. Please do not use this field anymore and use streams.name instead. The name of the stream you would like this source to output. Can contain letters, numbers, or underscores.", "pattern": "^([A-Za-z0-9-_]+)$", - "order": 0, - "type": "string" + "order": 100, + "type": "string", + "airbyte_hidden": true }, "path_pattern": { "title": "Pattern of files to replicate", - "description": "A regular expression which tells the connector which files to replicate. All files which match this pattern will be replicated. Use | to separate multiple patterns. See this page to understand pattern syntax (GLOBSTAR and SPLIT flags are enabled). Use pattern ** to pick up all files.", + "description": "Deprecated and will be removed soon. Please do not use this field anymore and use streams.globs instead. A regular expression which tells the connector which files to replicate. All files which match this pattern will be replicated. Use | to separate multiple patterns. See this page to understand pattern syntax (GLOBSTAR and SPLIT flags are enabled). Use pattern ** to pick up all files.", "examples": [ "**", "myFolder/myTableFiles/*.csv|myFolder/myOtherTableFiles/*.csv" ], - "order": 10, - "type": "string" + "order": 110, + "type": "string", + "airbyte_hidden": true }, "format": { "title": "File Format", - "description": "The format of the files you'd like to replicate", + "description": "Deprecated and will be removed soon. Please do not use this field anymore and use streams.format instead. The format of the files you'd like to replicate", "default": "csv", - "order": 20, + "order": 120, "type": "object", "oneOf": [ { @@ -199,17 +504,19 @@ } } } - ] + ], + "airbyte_hidden": true }, "schema": { "title": "Manually enforced data schema", - "description": "Optionally provide a schema to enforce, as a valid JSON string. Ensure this is a mapping of { \"column\" : \"type\" }, where types are valid JSON Schema datatypes. Leave as {} to auto-infer the schema.", + "description": "Deprecated and will be removed soon. Please do not use this field anymore and use streams.input_schema instead. Optionally provide a schema to enforce, as a valid JSON string. Ensure this is a mapping of { \"column\" : \"type\" }, where types are valid JSON Schema datatypes. Leave as {} to auto-infer the schema.", "default": "{}", "examples": [ "{\"column_1\": \"number\", \"column_2\": \"string\", \"column_3\": \"array\", \"column_4\": \"object\", \"column_5\": \"boolean\"}" ], - "order": 30, - "type": "string" + "order": 130, + "type": "string", + "airbyte_hidden": true }, "provider": { "title": "S3: Amazon Web Services", @@ -225,6 +532,7 @@ "title": "AWS Access Key ID", "description": "In order to access private Buckets stored on AWS S3, this connector requires credentials with the proper permissions. If accessing publicly available data, this field is not necessary.", "airbyte_secret": true, + "always_show": true, "order": 1, "type": "string" }, @@ -232,6 +540,7 @@ "title": "AWS Secret Access Key", "description": "In order to access private Buckets stored on AWS S3, this connector requires credentials with the proper permissions. If accessing publicly available data, this field is not necessary.", "airbyte_secret": true, + "always_show": true, "order": 2, "type": "string" }, @@ -259,13 +568,12 @@ "type": "string" } }, - "required": ["bucket"], - "order": 11, - "description": "Use this to load files from S3 or S3-compatible services" + "required": [], + "order": 111, + "description": "Deprecated and will be removed soon. Please do not use this field anymore and use bucket, aws_access_key_id, aws_secret_access_key and endpoint instead. Use this to load files from S3 or S3-compatible services", + "airbyte_hidden": true } }, - "required": ["dataset", "path_pattern", "provider"] - }, - "supportsIncremental": true, - "supported_destination_sync_modes": ["overwrite", "append", "append_dedup"] + "required": ["streams", "bucket"] + } } diff --git a/airbyte-integrations/connectors/source-s3/main.py b/airbyte-integrations/connectors/source-s3/main.py index 753f90101f93..c3b6b0bc32ed 100644 --- a/airbyte-integrations/connectors/source-s3/main.py +++ b/airbyte-integrations/connectors/source-s3/main.py @@ -4,10 +4,39 @@ import sys +import traceback +from datetime import datetime +from typing import List + +from airbyte_cdk.entrypoint import AirbyteEntrypoint, launch +from airbyte_cdk.models import AirbyteErrorTraceMessage, AirbyteMessage, AirbyteTraceMessage, TraceType, Type +from source_s3.v4 import Config, Cursor, SourceS3, SourceS3StreamReader + + +def get_source(args: List[str]): + catalog_path = AirbyteEntrypoint.extract_catalog(args) + try: + return SourceS3(SourceS3StreamReader(), Config, catalog_path, cursor_cls=Cursor) + except Exception: + print( + AirbyteMessage( + type=Type.TRACE, + trace=AirbyteTraceMessage( + type=TraceType.ERROR, + emitted_at=int(datetime.now().timestamp() * 1000), + error=AirbyteErrorTraceMessage( + message="Error starting the sync. This could be due to an invalid configuration or catalog. Please contact Support for assistance.", + stack_trace=traceback.format_exc(), + ), + ), + ).json() + ) + return None -from airbyte_cdk.entrypoint import launch -from source_s3 import SourceS3 if __name__ == "__main__": - source = SourceS3() - launch(source, sys.argv[1:]) + _args = sys.argv[1:] + source = get_source(_args) + + if source: + launch(source, _args) diff --git a/airbyte-integrations/connectors/source-s3/metadata.yaml b/airbyte-integrations/connectors/source-s3/metadata.yaml index 2cde5413dae9..5aab398e589b 100644 --- a/airbyte-integrations/connectors/source-s3/metadata.yaml +++ b/airbyte-integrations/connectors/source-s3/metadata.yaml @@ -5,7 +5,7 @@ data: connectorSubtype: file connectorType: source definitionId: 69589781-7828-43c5-9f63-8925b1c1ccc2 - dockerImageTag: 3.1.10 + dockerImageTag: 4.0.4 dockerRepository: airbyte/source-s3 githubIssueLabel: source-s3 icon: s3.svg @@ -20,6 +20,14 @@ data: documentationUrl: https://docs.airbyte.com/integrations/sources/s3 tags: - language:python + releases: + breakingChanges: + 4.0.0: + message: "UX improvement, multi-stream support and deprecation of some parsing features" + upgradeDeadline: "2023-10-05" + 4.0.4: + message: "Following 4.0.0 config change, we are eliminating the `streams.*.file_type` field which was redundant with `streams.*.format`" + upgradeDeadline: "2023-10-18" ab_internal: sl: 300 ql: 400 diff --git a/airbyte-integrations/connectors/source-s3/setup.py b/airbyte-integrations/connectors/source-s3/setup.py index 241605f2aa64..3b0712809155 100644 --- a/airbyte-integrations/connectors/source-s3/setup.py +++ b/airbyte-integrations/connectors/source-s3/setup.py @@ -6,7 +6,7 @@ from setuptools import find_packages, setup MAIN_REQUIREMENTS = [ - "airbyte-cdk>=0.50.2", + "airbyte-cdk>=0.51.17", "pyarrow==12.0.1", "smart-open[s3]==5.1.0", "wcmatch==8.4", diff --git a/airbyte-integrations/connectors/source-s3/source_s3/__init__.py b/airbyte-integrations/connectors/source-s3/source_s3/__init__.py index 1743ed6fc867..e69de29bb2d1 100644 --- a/airbyte-integrations/connectors/source-s3/source_s3/__init__.py +++ b/airbyte-integrations/connectors/source-s3/source_s3/__init__.py @@ -1,27 +0,0 @@ -""" -MIT License - -Copyright (c) 2020 Airbyte - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. -""" - -from .source import SourceS3 - -__all__ = ["SourceS3"] diff --git a/airbyte-integrations/connectors/source-s3/source_s3/s3_utils.py b/airbyte-integrations/connectors/source-s3/source_s3/s3_utils.py deleted file mode 100644 index 5c49e5cac066..000000000000 --- a/airbyte-integrations/connectors/source-s3/source_s3/s3_utils.py +++ /dev/null @@ -1,56 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -import boto3.session -from botocore.client import BaseClient, Config - - -def make_s3_resource(provider: dict, session: boto3.session.Session, config: Config = None) -> object: - """ - Construct boto3 resource with specified config and remote endpoint - :param provider provider configuration from connector configuration. - :param session User session to create client from. - :param config Client config parameter in case of using creds from .aws/config file. - :return Boto3 S3 resource instance. - """ - client_kv_args = _get_s3_client_args(provider, config) - return session.resource("s3", **client_kv_args) - - -def make_s3_client(provider: dict, session: boto3.session.Session = None, config: Config = None) -> BaseClient: - """ - Construct boto3 client with specified config and remote endpoint - :param provider provider configuration from connector configuration. - :param session User session to create client from. Default boto3 sesion in case of session not specified. - :param config Client config parameter in case of using creds from .aws/config file. - :return Boto3 S3 client instance. - """ - client_kv_args = _get_s3_client_args(provider, config) - if session is None: - return boto3.client("s3", **client_kv_args) - else: - return session.client("s3", **client_kv_args) - - -def _get_s3_client_args(provider: dict, config: Config) -> dict: - """ - Returns map of args used for creating s3 boto3 client. - :param provider provider configuration from connector configuration. - :param config Client config parameter in case of using creds from .aws/config file. - :return map of s3 client arguments. - """ - client_kv_args = {"config": config} - endpoint = provider.get("endpoint") - if endpoint: - # endpoint could be None or empty string, set to default Amazon endpoint in - # this case. - client_kv_args["endpoint_url"] = endpoint - client_kv_args["use_ssl"] = provider.get("use_ssl", True) - client_kv_args["verify"] = provider.get("verify_ssl_cert", True) - client_kv_args["config"] = Config(s3={"addressing_style": provider.get("addressing_style", "auto")}) - - return client_kv_args - - -__all__ = ["make_s3_client", "make_s3_resource"] diff --git a/airbyte-integrations/connectors/source-s3/source_s3/s3file.py b/airbyte-integrations/connectors/source-s3/source_s3/s3file.py deleted file mode 100644 index 90e82dd69764..000000000000 --- a/airbyte-integrations/connectors/source-s3/source_s3/s3file.py +++ /dev/null @@ -1,77 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - - -from contextlib import contextmanager -from typing import Any, BinaryIO, Iterator, Mapping, TextIO, Union - -import smart_open -from boto3 import session as boto3session -from botocore import UNSIGNED -from botocore.client import Config as ClientConfig -from botocore.config import Config -from source_s3.s3_utils import make_s3_client, make_s3_resource - -from .source_files_abstract.storagefile import StorageFile - - -class S3File(StorageFile): - def __init__(self, *args: Any, **kwargs: Any): - super().__init__(*args, **kwargs) - self._setup_boto_session() - - def _setup_boto_session(self) -> None: - """ - Making a new Session at file level rather than stream level as boto3 sessions are NOT thread-safe. - Currently grabbing last_modified across multiple files asynchronously and may implement more multi-threading in future. - See https://boto3.amazonaws.com/v1/documentation/api/latest/guide/resources.html (anchor link broken, scroll to bottom) - """ - if self.use_aws_account(self._provider): - self._boto_session = boto3session.Session( - aws_access_key_id=self._provider.get("aws_access_key_id"), - aws_secret_access_key=self._provider.get("aws_secret_access_key"), - ) - self._boto_s3_resource = make_s3_resource(self._provider, session=self._boto_session) - else: - self._boto_session = boto3session.Session() - self._boto_s3_resource = make_s3_resource(self._provider, config=Config(signature_version=UNSIGNED), session=self._boto_session) - - @staticmethod - def use_aws_account(provider: Mapping[str, str]) -> bool: - aws_access_key_id = provider.get("aws_access_key_id") - aws_secret_access_key = provider.get("aws_secret_access_key") - return True if (aws_access_key_id is not None and aws_secret_access_key is not None) else False - - @contextmanager - def open(self, binary: bool) -> Iterator[Union[TextIO, BinaryIO]]: - """ - Utilising smart_open to handle this (https://github.com/RaRe-Technologies/smart_open) - - :param binary: whether or not to open file as binary - :return: file-like object - """ - mode = "rb" if binary else "r" - bucket = self._provider.get("bucket") - if self.use_aws_account(self._provider): - params = {"client": make_s3_client(self._provider, session=self._boto_session)} - else: - config = ClientConfig(signature_version=UNSIGNED) - params = {"client": make_s3_client(self._provider, config=config)} - self.logger.debug(f"try to open {self.file_info}") - # There are rare cases when some keys become unreachable during sync - # and we don't know about it, because catalog has been initially formed only once at the beginning - # This is happen for example if a file was deleted/moved (or anything else) while we proceed with another file - try: - result = smart_open.open(f"s3://{bucket}/{self.url}", transport_params=params, mode=mode) - except OSError as e: - self.logger.warn( - f"We don't have access to {self.url}. " - f"Check whether key {self.url} exists in `{bucket}` bucket and/or has proper ACL permissions" - ) - raise e - # see https://docs.python.org/3/library/contextlib.html#contextlib.contextmanager for why we do this - try: - yield result - finally: - result.close() diff --git a/airbyte-integrations/connectors/source-s3/source_s3/source.py b/airbyte-integrations/connectors/source-s3/source_s3/source.py index 90ed77e775f3..8621fe4bbb5a 100644 --- a/airbyte-integrations/connectors/source-s3/source_s3/source.py +++ b/airbyte-integrations/connectors/source-s3/source_s3/source.py @@ -3,13 +3,11 @@ # -from typing import Any, Mapping, Optional +from typing import Optional from pydantic import BaseModel, Field -from .source_files_abstract.source import SourceFilesAbstract from .source_files_abstract.spec import SourceFilesAbstractSpec -from .stream import IncrementalFileStreamS3 class SourceS3Spec(SourceFilesAbstractSpec, BaseModel): @@ -29,6 +27,7 @@ class Config: description="In order to access private Buckets stored on AWS S3, this connector requires credentials with the proper " "permissions. If accessing publicly available data, this field is not necessary.", airbyte_secret=True, + always_show=True, order=1, ) aws_secret_access_key: Optional[str] = Field( @@ -37,6 +36,7 @@ class Config: description="In order to access private Buckets stored on AWS S3, this connector requires credentials with the proper " "permissions. If accessing publicly available data, this field is not necessary.", airbyte_secret=True, + always_show=True, order=2, ) path_prefix: str = Field( @@ -58,15 +58,3 @@ class Config: ) provider: S3Provider - - -class SourceS3(SourceFilesAbstract): - stream_class = IncrementalFileStreamS3 - spec_class = SourceS3Spec - documentation_url = "https://docs.airbyte.com/integrations/sources/s3" - - def read_config(self, config_path: str) -> Mapping[str, Any]: - config: Mapping[str, Any] = super().read_config(config_path) - if config.get("format", {}).get("delimiter") == r"\t": - config["format"]["delimiter"] = "\t" - return config diff --git a/airbyte-integrations/connectors/source-s3/source_s3/source_files_abstract/file_info.py b/airbyte-integrations/connectors/source-s3/source_s3/source_files_abstract/file_info.py deleted file mode 100644 index cdfaf72779a2..000000000000 --- a/airbyte-integrations/connectors/source-s3/source_s3/source_files_abstract/file_info.py +++ /dev/null @@ -1,40 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -from dataclasses import dataclass -from datetime import datetime -from functools import total_ordering - - -@total_ordering -@dataclass -class FileInfo: - """Class for sharing of metadata""" - - key: str - size: int - last_modified: datetime - - @property - def size_in_megabytes(self) -> float: - return self.size / 1024**2 - - def __str__(self) -> str: - return "Key: %s, LastModified: %s, Size: %.4fMb" % (self.key, self.last_modified.isoformat(), self.size_in_megabytes) - - def __repr__(self) -> str: - return self.__str__() - - def __eq__(self, other: object) -> bool: - if isinstance(other, FileInfo): - return self.key == other.key - return self.key == other - - def __lt__(self, other: object) -> bool: - if isinstance(other, FileInfo): - return self.key < other.key - return self.key < str(other) - - def __hash__(self) -> int: - return self.key.__hash__() diff --git a/airbyte-integrations/connectors/source-s3/source_s3/source_files_abstract/formats/abstract_file_parser.py b/airbyte-integrations/connectors/source-s3/source_s3/source_files_abstract/formats/abstract_file_parser.py deleted file mode 100644 index d28c62067cf5..000000000000 --- a/airbyte-integrations/connectors/source-s3/source_s3/source_files_abstract/formats/abstract_file_parser.py +++ /dev/null @@ -1,117 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -from abc import ABC, abstractmethod -from typing import Any, BinaryIO, Iterator, Mapping, TextIO, Union - -import pyarrow as pa -from airbyte_cdk.logger import AirbyteLogger -from source_s3.source_files_abstract.file_info import FileInfo - - -class AbstractFileParser(ABC): - logger = AirbyteLogger() - - NON_SCALAR_TYPES = {"struct": "struct", "list": "list"} - TYPE_MAP = { - "boolean": ("bool_", "bool"), - "integer": ("int64", "int8", "int16", "int32", "uint8", "uint16", "uint32", "uint64"), - "number": ("float64", "float16", "float32", "decimal128", "decimal256", "halffloat", "float", "double"), - "string": ("large_string", "string"), - # TODO: support object type rather than coercing to string - "object": ("large_string",), - # TODO: support array type rather than coercing to string - "array": ("large_string",), - "null": ("large_string",), - } - - def __init__(self, format: dict, master_schema: dict = None): - """ - :param format: file format specific mapping as described in spec.json - :param master_schema: superset schema determined from all files, might be unused for some formats, defaults to None - """ - self._format = format - self._master_schema = ( - master_schema - # this may need to be used differently by some formats, pyarrow allows extra columns in csv schema - ) - - @property - @abstractmethod - def is_binary(self) -> bool: - """ - Override this per format so that file-like objects passed in are currently opened as binary or not - """ - - @abstractmethod - def get_inferred_schema(self, file: Union[TextIO, BinaryIO], file_info: FileInfo) -> dict: - """ - Override this with format-specifc logic to infer the schema of file - Note: needs to return inferred schema with JsonSchema datatypes - - :param file: file-like object (opened via StorageFile) - :param file_info: file metadata - :return: mapping of {columns:datatypes} where datatypes are JsonSchema types - """ - - @abstractmethod - def stream_records(self, file: Union[TextIO, BinaryIO], file_info: FileInfo) -> Iterator[Mapping[str, Any]]: - """ - Override this with format-specifc logic to stream each data row from the file as a mapping of {columns:values} - Note: avoid loading the whole file into memory to avoid OOM breakages - - :param file: file-like object (opened via StorageFile) - :param file_info: file metadata - :yield: data record as a mapping of {columns:values} - """ - - @classmethod - def json_type_to_pyarrow_type(cls, typ: str, reverse: bool = False, logger: AirbyteLogger = AirbyteLogger()) -> str: - """ - Converts Json Type to PyArrow types to (or the other way around if reverse=True) - - :param typ: Json type if reverse is False, else PyArrow type - :param reverse: switch to True for PyArrow type -> Json type, defaults to False - :param logger: defaults to AirbyteLogger() - :return: PyArrow type if reverse is False, else Json type - """ - str_typ = str(typ) - # This is a map of airbyte types to pyarrow types. - # The first list element of the pyarrow types should be the one to use where required. - - if not reverse: - for json_type, pyarrow_types in cls.TYPE_MAP.items(): - if str_typ.lower() == json_type: - type_ = next(iter(pyarrow_types)) - if type_ in cls.NON_SCALAR_TYPES: - return cls.NON_SCALAR_TYPES[type_] - # better way might be necessary when we decide to handle more type complexity - return str(getattr(pa, type_).__call__()) - logger.debug(f"JSON type '{str_typ}' is not mapped, falling back to default conversion to large_string") - return str(pa.large_string()) - else: - for json_type, pyarrow_types in cls.TYPE_MAP.items(): - if any(str_typ.startswith(pa_type) for pa_type in pyarrow_types): - return json_type - logger.debug(f"PyArrow type '{str_typ}' is not mapped, falling back to default conversion to string") - return "string" # default type if unspecified in map - - @classmethod - def json_schema_to_pyarrow_schema(cls, schema: Mapping[str, Any], reverse: bool = False) -> Mapping[str, Any]: - """ - Converts a schema with JsonSchema datatypes to one with PyArrow types (or the other way if reverse=True) - This utilises json_type_to_pyarrow_type() to convert each datatype - - :param schema: json/pyarrow schema to convert - :param reverse: switch to True for PyArrow schema -> Json schema, defaults to False - :return: converted schema dict - """ - return {column: cls.json_type_to_pyarrow_type(json_type, reverse=reverse) for column, json_type in schema.items()} - - def _validate_config(self, config: Mapping[str, Any]): - pass - - @classmethod - def set_minimal_block_size(cls, format: Mapping[str, Any]): - pass diff --git a/airbyte-integrations/connectors/source-s3/source_s3/source_files_abstract/formats/avro_parser.py b/airbyte-integrations/connectors/source-s3/source_s3/source_files_abstract/formats/avro_parser.py deleted file mode 100644 index a4aa37708f14..000000000000 --- a/airbyte-integrations/connectors/source-s3/source_s3/source_files_abstract/formats/avro_parser.py +++ /dev/null @@ -1,100 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -from typing import Any, BinaryIO, Iterator, Mapping, TextIO, Union - -import fastavro -from fastavro import reader -from source_s3.source_files_abstract.file_info import FileInfo - -from .abstract_file_parser import AbstractFileParser - -# mapping from apache avro docs: https://avro.apache.org/docs/current/spec.html#schema_complex -AVRO_TO_JSON_DATA_TYPE_MAPPING = { - "null": "null", - "boolean": ["boolean", "null"], - "int": ["integer", "null"], - "long": ["integer", "null"], - "float": ["number", "null"], - "double": ["number", "null"], - "bytes": ["string", "null"], - "string": ["string", "null"], - "record": ["object", "null"], - "enum": ["string", "null"], - "array": ["array", "null"], - "map": ["object", "null"], - "fixed": ["string", "null"], -} - - -class AvroParser(AbstractFileParser): - def __init__(self, *args: Any, **kwargs: Any): - super().__init__(*args, **kwargs) - - @property - def is_binary(self) -> bool: - return True - - def avro_type_to_json_type(self, avro_type): - try: - return AVRO_TO_JSON_DATA_TYPE_MAPPING[avro_type] - except KeyError: - raise ValueError(f"Unknown Avro type: {avro_type}") - - def avro_to_jsonschema(self, avro_schema: dict) -> dict: - """Convert data types from avro to json format - :param avro_schema: schema comes with the avro file - :return schema_dict with data types converted from avro to json standards - """ - json_schema = {} - # Process Avro schema fields - for field in avro_schema["fields"]: - field_name = field["name"] - field_type = field["type"] - # Convert Avro types to JSON schema types - if isinstance(field_type, dict) and field_type.get("type") == "array": - field_schema = {"type": ["array", "null"], "items": self.avro_to_jsonschema(field_type.get("items"))} - elif isinstance(field_type, dict): - field_schema = {"type": ["object", "null"], **self.avro_to_jsonschema(field_type)} - elif isinstance(field_type, list) and [x.get("fields") for x in field_type if not isinstance(x, str)]: - # field_type = [x for x in field_type if x != 'null'][0] - field_schema = {"anyOf": [self.avro_to_jsonschema(t) for t in field_type]} - else: - field_type = [x for x in field_type if x != "null"][0] if isinstance(field_type, list) else field_type - field_schema = {"type": self.avro_type_to_json_type(field_type)} - json_schema[field_name] = field_schema - return json_schema - - def _get_avro_schema(self, file: Union[TextIO, BinaryIO]) -> dict: - """Extract schema for records - :param file: file-like object (opened via StorageFile) - :return schema extracted from the avro file - """ - avro_reader = fastavro.reader(file) - schema = avro_reader.writer_schema - if not schema["type"] == "record": - unsupported_type = schema["type"] - raise (f"Only record based avro files are supported. Found {unsupported_type}") - else: - return schema - - def get_inferred_schema(self, file: Union[TextIO, BinaryIO], file_info: FileInfo) -> dict: - """Return schema - :param file: file-like object (opened via StorageFile) - :param file_info: file metadata - :return: mapping of JsonSchema properties {columns:{"type": datatypes}} - """ - avro_schema = self._get_avro_schema(file) - schema_dict = self.avro_to_jsonschema(avro_schema) - return schema_dict - - def stream_records(self, file: Union[TextIO, BinaryIO], file_info: FileInfo) -> Iterator[Mapping[str, Any]]: - """Stream the data using a generator - :param file: file-like object (opened via StorageFile) - :param file_info: file metadata - :yield: data record as a mapping of {columns:values} - """ - avro_reader = reader(file) - for record in avro_reader: - yield record diff --git a/airbyte-integrations/connectors/source-s3/source_s3/source_files_abstract/formats/csv_parser.py b/airbyte-integrations/connectors/source-s3/source_s3/source_files_abstract/formats/csv_parser.py deleted file mode 100644 index ee4c97eb3eda..000000000000 --- a/airbyte-integrations/connectors/source-s3/source_s3/source_files_abstract/formats/csv_parser.py +++ /dev/null @@ -1,281 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -import codecs -import csv -import json -import tempfile -from typing import Any, BinaryIO, Callable, Iterator, Mapping, Optional, TextIO, Tuple, Union - -import pyarrow -import pyarrow as pa -import six # type: ignore[import] -from airbyte_cdk.models import FailureType -from airbyte_cdk.utils.traced_exception import AirbyteTracedException -from pyarrow import csv as pa_csv -from pyarrow.lib import ArrowInvalid -from source_s3.exceptions import S3Exception -from source_s3.source_files_abstract.file_info import FileInfo -from source_s3.utils import get_value_or_json_if_empty_string, run_in_external_process - -from .abstract_file_parser import AbstractFileParser -from .csv_spec import CsvFormat - -MAX_CHUNK_SIZE = 50.0 * 1024**2 # in bytes -TMP_FOLDER = tempfile.mkdtemp() - - -def wrap_exception(exceptions: Tuple[type, ...]): - def wrapper(fn: callable): - def inner(self, file: Union[TextIO, BinaryIO], file_info: FileInfo): - try: - return fn(self, file, file_info) - except exceptions as e: - raise S3Exception(file_info, str(e), str(e), exception=e) - - return inner - - return wrapper - - -class CsvParser(AbstractFileParser): - def __init__(self, *args: Any, **kwargs: Any) -> None: - super().__init__(*args, **kwargs) - self.format_model = None - - @property - def is_binary(self) -> bool: - return True - - @property - def format(self) -> CsvFormat: - if self.format_model is None: - self.format_model = CsvFormat.parse_obj(self._format) - return self.format_model - - @staticmethod - def _validate_field( - format_: Mapping[str, Any], field_name: str, allow_empty: bool = False, disallow_values: Optional[Tuple[Any, ...]] = None - ) -> Optional[str]: - disallow_values = disallow_values or () - field_value = format_.get(field_name) - if not field_value and allow_empty: - return - if field_value and len(field_value) != 1: - return f"{field_name} should contain 1 character only" - if field_value in disallow_values: - return f"{field_name} can not be {field_value}" - - @staticmethod - def _validate_encoding(encoding: str) -> None: - try: - codecs.lookup(encoding) - except LookupError as e: - # UTF8 is the default encoding value, so there is no problem if `encoding` is not set manually - if encoding != "": - raise AirbyteTracedException(str(e), str(e), failure_type=FailureType.config_error) - - @classmethod - def _validate_options(cls, validator: Callable, options_name: str, format_: Mapping[str, Any]) -> Optional[str]: - options = format_.get(options_name, "{}") - try: - options = json.loads(options) - validator(**options) - except json.decoder.JSONDecodeError: - return "Malformed advanced read options!" - except TypeError as e: - return f"One or more read options are invalid: {str(e)}" - - @classmethod - def _validate_read_options(cls, format_: Mapping[str, Any]) -> Optional[str]: - return cls._validate_options(pa.csv.ReadOptions, "advanced_options", format_) - - @classmethod - def _validate_convert_options(cls, format_: Mapping[str, Any]) -> Optional[str]: - return cls._validate_options(pa.csv.ConvertOptions, "additional_reader_options", format_) - - def _validate_config(self, config: Mapping[str, Any]): - format_ = config.get("format", {}) - for error_message in ( - self._validate_field(format_, "delimiter", disallow_values=("\r", "\n")), - self._validate_field(format_, "quote_char"), - self._validate_field(format_, "escape_char", allow_empty=True), - self._validate_read_options(format_), - self._validate_convert_options(format_), - ): - if error_message: - raise AirbyteTracedException(error_message, error_message, failure_type=FailureType.config_error) - - self._validate_encoding(format_.get("encoding", "")) - - def _read_options(self) -> Mapping[str, str]: - """ - https://arrow.apache.org/docs/python/generated/pyarrow.csv.ReadOptions.html - build ReadOptions object like: pa.csv.ReadOptions(**self._read_options()) - """ - advanced_options = get_value_or_json_if_empty_string(self.format.advanced_options) - return { - **{"block_size": self.format.block_size, "encoding": self.format.encoding}, - **json.loads(advanced_options), - } - - def _parse_options(self) -> Mapping[str, str]: - """ - https://arrow.apache.org/docs/python/generated/pyarrow.csv.ParseOptions.html - build ParseOptions object like: pa.csv.ParseOptions(**self._parse_options()) - """ - - return { - "delimiter": self.format.delimiter, - "quote_char": self.format.quote_char, - "double_quote": self.format.double_quote, - "escape_char": self.format.escape_char, - "newlines_in_values": self.format.newlines_in_values, - } - - def _convert_options(self, json_schema: Mapping[str, Any] = None) -> Mapping[str, Any]: - """ - https://arrow.apache.org/docs/python/generated/pyarrow.csv.ConvertOptions.html - build ConvertOptions object like: pa.csv.ConvertOptions(**self._convert_options()) - :param json_schema: if this is passed in, pyarrow will attempt to enforce this schema on read, defaults to None - """ - check_utf8 = self.format.encoding.lower().replace("-", "") == "utf8" - additional_reader_options = get_value_or_json_if_empty_string(self.format.additional_reader_options) - convert_schema = self.json_schema_to_pyarrow_schema(json_schema) if json_schema is not None else None - return { - **{"check_utf8": check_utf8, "column_types": convert_schema}, - **json.loads(additional_reader_options), - } - - @wrap_exception((ValueError,)) - def get_inferred_schema(self, file: Union[TextIO, BinaryIO], file_info: FileInfo) -> Mapping[str, Any]: - """ - https://arrow.apache.org/docs/python/generated/pyarrow.csv.open_csv.html - This now uses multiprocessing in order to timeout the schema inference as it can hang. - Since the hanging code is resistant to signal interrupts, threading/futures doesn't help so needed to multiprocess. - https://issues.apache.org/jira/browse/ARROW-11853?page=com.atlassian.jira.plugin.system.issuetabpanels%3Aall-tabpanel - """ - - def infer_schema_process( - file_sample: str, read_opts: dict, parse_opts: dict, convert_opts: dict - ) -> Tuple[dict, Optional[Exception]]: - """ - we need to reimport here to be functional on Windows systems since it doesn't have fork() - https://docs.python.org/3.7/library/multiprocessing.html#contexts-and-start-methods - This returns a tuple of (schema_dict, None OR Exception). - If return[1] is not None and holds an exception we then raise this in the main process. - This lets us propagate up any errors (that aren't timeouts) and raise correctly. - """ - try: - import tempfile - - import pyarrow as pa - - # writing our file_sample to a temporary file to then read in and schema infer as before - with tempfile.TemporaryFile() as fp: - fp.write(file_sample) # type: ignore[arg-type] - fp.seek(0) - streaming_reader = pa.csv.open_csv( - fp, pa.csv.ReadOptions(**read_opts), pa.csv.ParseOptions(**parse_opts), pa.csv.ConvertOptions(**convert_opts) - ) - schema_dict = {field.name: field.type for field in streaming_reader.schema} - - except Exception as e: - # we pass the traceback up otherwise the main process won't know the exact method+line of error - return (None, e) - else: - return (schema_dict, None) - - # boto3 objects can't be pickled (https://github.com/boto/boto3/issues/678) - # and so we can't multiprocess with the actual fileobject on Windows systems - # we're reading block_size*2 bytes here, which we can then pass in and infer schema from block_size bytes - # the *2 is to give us a buffer as pyarrow figures out where lines actually end so it gets schema correct - schema_dict = self._get_schema_dict(file, infer_schema_process) - return self.json_schema_to_pyarrow_schema(schema_dict, reverse=True) # type: ignore[no-any-return] - - def _get_schema_dict(self, file: Union[TextIO, BinaryIO], infer_schema_process: Callable) -> Mapping[str, Any]: - if not self.format.infer_datatypes: - return self._get_schema_dict_without_inference(file) - self.logger.debug("inferring schema") - file_sample = file.read(self._read_options()["block_size"] * 2) # type: ignore[arg-type] - return run_in_external_process( - fn=infer_schema_process, - timeout=4, - max_timeout=60, - logger=self.logger, - args=[ - file_sample, - self._read_options(), - self._parse_options(), - self._convert_options(), - ], - ) - - # TODO Rename this here and in `_get_schema_dict` - def _get_schema_dict_without_inference(self, file: Union[TextIO, BinaryIO]) -> Mapping[str, Any]: - self.logger.debug("infer_datatypes is False, skipping infer_schema") - delimiter = self.format.delimiter - quote_char = self.format.quote_char - reader = csv.reader([six.ensure_text(file.readline())], delimiter=delimiter, quotechar=quote_char) - field_names = next(reader) - file.seek(0) # the file may be reused later so return the cursor to the very beginning of the file as if nothing happened here - return {field_name.strip(): pyarrow.string() for field_name in field_names} - - @wrap_exception((ValueError,)) - def stream_records(self, file: Union[TextIO, BinaryIO], file_info: FileInfo) -> Iterator[Mapping[str, Any]]: - """ - https://arrow.apache.org/docs/python/generated/pyarrow.csv.open_csv.html - PyArrow returns lists of values for each column so we zip() these up into records which we then yield - """ - # In case master_schema is a user defined schema, it may miss some columns. - # We set their type to `string` as a default type in order to pass a schema with all the file columns to pyarrow - # so that pyarrow wouldn't need to infer data types of missing columns. Type inference may often break syncs: - # it reads a block of data and makes suggestions of its type based on that block. So if the next block contains data - # of different type, things get broken. To fix it you either have to increase block size or pass a predefined schema. - # Even if actual data type is changed because of this hack, it will not break sync because this data is written - # to `_ab_additional_properties` column which is not strictly typed ({'type': 'object'}). That's why this is helpful - # when a schema is defined by user and there's no space to increase a block size. - schema = self._get_schema_dict_without_inference(file) - schema.update(self._master_schema) - - try: - streaming_reader = pa_csv.open_csv( - file, - pa.csv.ReadOptions(**self._read_options()), - pa.csv.ParseOptions(**self._parse_options()), - pa.csv.ConvertOptions(**self._convert_options(schema)), - ) - except ArrowInvalid as e: - error_message = str(e) - user_message = "Unable to parse the csv file. Please check your format options." - if "CSV parse error: Expected" in error_message: - user_message = ( - f"{user_message} Please validate delimiter option, " - f"looks like some rows have delimiter symbol in its data so we receive more columns than expected." - ) - raise AirbyteTracedException(message=user_message, internal_message=error_message, failure_type=FailureType.config_error) from e - - still_reading = True - while still_reading: - try: - batch = streaming_reader.read_next_batch() - except ArrowInvalid as e: - error_message = "Possibly too small block size used. Please try to increase it" - raise AirbyteTracedException(message=error_message, failure_type=FailureType.config_error) from e - except StopIteration: - still_reading = False - else: - batch_dict = batch.to_pydict() - batch_columns = [col_info.name for col_info in batch.schema] - # this gives us a list of lists where each nested list holds ordered values for a single column - # e.g. [ [1,2,3], ["a", "b", "c"], [True, True, False] ] - columnwise_record_values = [batch_dict[column] for column in batch_columns] - # we zip this to get row-by-row, e.g. [ [1, "a", True], [2, "b", True], [3, "c", False] ] - for record_values in zip(*columnwise_record_values): - # create our record of {col: value, col: value} by dict comprehension, iterating through all cols in batch_columns - yield {batch_columns[i]: record_values[i] for i in range(len(batch_columns))} - - @classmethod - def set_minimal_block_size(cls, format: Mapping[str, Any]): - pass diff --git a/airbyte-integrations/connectors/source-s3/source_s3/source_files_abstract/formats/jsonl_parser.py b/airbyte-integrations/connectors/source-s3/source_s3/source_files_abstract/formats/jsonl_parser.py deleted file mode 100644 index 13558eea9dbc..000000000000 --- a/airbyte-integrations/connectors/source-s3/source_s3/source_files_abstract/formats/jsonl_parser.py +++ /dev/null @@ -1,116 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -import logging -from typing import Any, BinaryIO, Iterator, Mapping, TextIO, Union - -import pyarrow as pa -from pyarrow import ArrowNotImplementedError -from pyarrow import json as pa_json -from source_s3.source_files_abstract.file_info import FileInfo - -from .abstract_file_parser import AbstractFileParser -from .jsonl_spec import JsonlFormat - -logger = logging.getLogger("airbyte") - - -class JsonlParser(AbstractFileParser): - TYPE_MAP = { - "boolean": ("bool_", "bool"), - "integer": ("int64", "int8", "int16", "int32", "uint8", "uint16", "uint32", "uint64"), - "number": ("float64", "float16", "float32", "decimal128", "decimal256", "halffloat", "float", "double"), - "string": ("large_string", "string"), - # TODO: support object type rather than coercing to string - "object": ( - "struct", - "large_string", - ), - # TODO: support array type rather than coercing to string - "array": ( - "list", - "large_string", - ), - "null": ("large_string",), - } - - def __init__(self, *args: Any, **kwargs: Any) -> None: - super().__init__(*args, **kwargs) - self.format_model = None - - @property - def is_binary(self) -> bool: - return True - - @property - def format(self) -> JsonlFormat: - if self.format_model is None: - self.format_model = JsonlFormat.parse_obj(self._format) - return self.format_model - - def _read_options(self) -> Mapping[str, str]: - """ - https://arrow.apache.org/docs/python/generated/pyarrow.json.ReadOptions.html - build ReadOptions object like: pa.json.ReadOptions(**self._read_options()) - Disable block size parameter if it set to 0. - """ - return {**{"block_size": self.format.block_size if self.format.block_size else None, "use_threads": True}} - - def _parse_options(self, json_schema: Mapping[str, Any] = None) -> Mapping[str, str]: - """ - https://arrow.apache.org/docs/python/generated/pyarrow.json.ParseOptions.html - build ParseOptions object like: pa.json.ParseOptions(**self._parse_options()) - :param json_schema: if this is passed in, pyarrow will attempt to enforce this schema on read, defaults to None - """ - parse_options = { - "newlines_in_values": self.format.newlines_in_values, - "unexpected_field_behavior": self.format.unexpected_field_behavior, - } - if json_schema: - schema = self.json_schema_to_pyarrow_schema(json_schema) - schema = pa.schema({field: type_ for field, type_ in schema.items() if type_ not in self.NON_SCALAR_TYPES.values()}) - parse_options["explicit_schema"] = schema - return parse_options - - def _read_table(self, file: Union[TextIO, BinaryIO], json_schema: Mapping[str, Any] = None) -> pa.Table: - try: - return pa_json.read_json( - file, pa.json.ReadOptions(**self._read_options()), pa.json.ParseOptions(**self._parse_options(json_schema)) - ) - except ArrowNotImplementedError as e: - message = "Possibly too small block size used. Please try to increase it or set to 0 disable this feature." - logger.warning(message) - raise ValueError(message) from e - - def get_inferred_schema(self, file: Union[TextIO, BinaryIO], file_info: FileInfo) -> Mapping[str, Any]: - """ - https://arrow.apache.org/docs/python/generated/pyarrow.json.read_json.html - Json reader support multi thread hence, donot need to add external process - https://arrow.apache.org/docs/python/generated/pyarrow.json.ReadOptions.html - """ - - def field_type_to_str(type_: Any) -> str: - if isinstance(type_, pa.lib.StructType): - return "struct" - if isinstance(type_, pa.lib.ListType): - return "list" - if isinstance(type_, pa.lib.DataType): - return str(type_) - raise Exception(f"Unknown PyArrow Type: {type_}") - - table = self._read_table(file) - schema_dict = {field.name: field_type_to_str(field.type) for field in table.schema} - return self.json_schema_to_pyarrow_schema(schema_dict, reverse=True) - - def stream_records(self, file: Union[TextIO, BinaryIO], file_info: FileInfo) -> Iterator[Mapping[str, Any]]: - """ - https://arrow.apache.org/docs/python/generated/pyarrow.json.read_json.html - - """ - table = self._read_table(file, self._master_schema) - yield from table.to_pylist() - - @classmethod - def set_minimal_block_size(cls, format: Mapping[str, Any]): - format["block_size"] = 0 diff --git a/airbyte-integrations/connectors/source-s3/source_s3/source_files_abstract/formats/parquet_parser.py b/airbyte-integrations/connectors/source-s3/source_s3/source_files_abstract/formats/parquet_parser.py deleted file mode 100644 index f78cdfaa9848..000000000000 --- a/airbyte-integrations/connectors/source-s3/source_s3/source_files_abstract/formats/parquet_parser.py +++ /dev/null @@ -1,160 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -import os -from typing import Any, BinaryIO, Iterator, List, Mapping, TextIO, Tuple, Union -from urllib.parse import unquote - -import pyarrow.parquet as pq -from airbyte_cdk.models import FailureType -from pyarrow.parquet import ParquetFile -from source_s3.exceptions import S3Exception -from source_s3.source_files_abstract.file_info import FileInfo - -from .abstract_file_parser import AbstractFileParser -from .parquet_spec import ParquetFormat - -# All possible parquet data types -PARQUET_TYPES = { - # logical_type: (json_type, parquet_types, convert_function) - # standard types - "string": ("string", ["BYTE_ARRAY"], None), - "boolean": ("boolean", ["BOOLEAN"], None), - "number": ("number", ["DOUBLE", "FLOAT"], None), - "integer": ("integer", ["INT32", "INT64", "INT96"], None), - "decimal": ("number", ["INT32", "INT64", "FIXED_LEN_BYTE_ARRAY"], None), - # supported by PyArrow types - "timestamp": ("string", ["INT32", "INT64", "INT96"], lambda v: v.isoformat()), - "date": ("string", ["INT32", "INT64", "INT96"], lambda v: v.isoformat()), - "time": ("string", ["INT32", "INT64", "INT96"], lambda v: v.isoformat()), -} - - -class ParquetParser(AbstractFileParser): - """Apache Parquet is a free and open-source column-oriented data storage format of the Apache Hadoop ecosystem. - - Docs: https://parquet.apache.org/documentation/latest/ - """ - - is_binary = True - - def __init__(self, *args: Any, **kwargs: Any): - super().__init__(*args, **kwargs) - - # adds default values if necessary attributes are skipped. - for field_name, field in ParquetFormat.__fields__.items(): - if self._format.get(field_name) is not None: - continue - self._format[field_name] = field.default - - def _select_options(self, *names: List[str]) -> dict: - return {name: self._format[name] for name in names} - - def _init_reader(self, file: Union[TextIO, BinaryIO]) -> ParquetFile: - """Generates a new parquet reader - Doc: https://arrow.apache.org/docs/python/generated/pyarrow.parquet.ParquetFile.html - - """ - options = self._select_options("buffer_size") # type: ignore[arg-type] - # Source is a file path and enabling memory_map can improve performance in some environments. - options["memory_map"] = True - return pq.ParquetFile(file, **options) - - @staticmethod - def parse_field_type(needed_logical_type: str, need_physical_type: str = None) -> Tuple[str, str]: - """Pyarrow can parse/support non-JSON types - Docs: https://github.com/apache/arrow/blob/5aa2901beddf6ad7c0a786ead45fdb7843bfcccd/python/pyarrow/_parquet.pxd#L56 - """ - if needed_logical_type not in PARQUET_TYPES: - # by default the pyarrow library marks scalar types as 'none' logical type. - # For these cases we need to look for by a physical type - for logical_type, (json_type, physical_types, _) in PARQUET_TYPES.items(): - if need_physical_type in physical_types: - return json_type, logical_type - else: - json_type, physical_types, _ = PARQUET_TYPES[needed_logical_type] - if need_physical_type and need_physical_type not in physical_types: - raise TypeError(f"incorrect parquet physical type: {need_physical_type}; logical type: {needed_logical_type}") - return json_type, needed_logical_type - - raise TypeError(f"incorrect parquet physical type: {need_physical_type}; logical type: {needed_logical_type}") - - @staticmethod - def convert_field_data(logical_type: str, field_value: Any) -> Any: - """Converts not JSON format to JSON one""" - if field_value is None: - return None - if logical_type in PARQUET_TYPES: - _, _, func = PARQUET_TYPES[logical_type] - return func(field_value) if func else field_value - raise TypeError(f"unsupported field type: {logical_type}, value: {field_value}") - - def get_inferred_schema(self, file: Union[TextIO, BinaryIO], file_info: FileInfo) -> dict: - """ - https://arrow.apache.org/docs/python/parquet.html#finer-grained-reading-and-writing - - A stored schema is a part of metadata and we can extract it without parsing of full file - """ - reader = self._init_reader(file) - schema_dict = { - field.name: self.parse_field_type(field.logical_type.type.lower(), field.physical_type)[0] for field in reader.schema - } | {x: "string" for x in self.get_partition_columns(file_info.key)} - if not schema_dict: - # pyarrow can parse empty parquet files but a connector can't generate dynamic schema - raise S3Exception(file_info, "empty Parquet file", "The .parquet file is empty!", FailureType.config_error) - return schema_dict - - def stream_records(self, file: Union[TextIO, BinaryIO], file_info: FileInfo) -> Iterator[Mapping[str, Any]]: - """ - https://arrow.apache.org/docs/python/generated/pyarrow.parquet.ParquetFile.html - PyArrow reads streaming batches from a Parquet file - """ - - reader = self._init_reader(file) - self.logger.info(f"found {reader.num_row_groups} row groups") - # parsing logical_types with respect to master_schema column names. - logical_types = { - field.name: self.parse_field_type(field.logical_type.type.lower(), field.physical_type)[1] - for field in reader.schema - if field.name in self._master_schema - } - if not reader.schema: - # pyarrow can parse empty parquet files but a connector can't generate dynamic schema - raise S3Exception(file_info, "empty Parquet file", "The .parquet file is empty!", FailureType.config_error) - - args = self._select_options("columns", "batch_size") # type: ignore[arg-type] - self.logger.debug(f"Found the {reader.num_row_groups} Parquet groups") - partition_columns = self.get_partition_columns(file_info.key) - # load batches per page - for num_row_group in range(reader.num_row_groups): - args["row_groups"] = [num_row_group] - for batch in reader.iter_batches(**args): - # this gives us a dist of lists where each nested list holds ordered values for a single column - # {'number': [1.0, 2.0, 3.0], 'name': ['foo', None, 'bar'], 'flag': [True, False, True], 'delta': [-1.0, 2.5, 0.1]} - batch_dict = batch.to_pydict() - # sometimes the batch file has more columns than master_schema declares, like: - # master schema: ['number', 'name', 'flag', 'delta'], - # batch_file_schema: ['number', 'name', 'flag', 'delta', 'EXTRA_COL_NAME']. - # we need to check wether batch_file_schema == master_schema and reject extra columns, otherwise "KeyError" raises. - batch_columns = [column for column in batch_dict.keys() if column in self._master_schema] - columnwise_record_values = [batch_dict[column] for column in batch_columns if column in self._master_schema] - # we zip this to get row-by-row - for record_values in zip(*columnwise_record_values): - yield { - batch_columns[i]: self.convert_field_data(logical_types[batch_columns[i]], record_values[i]) - for i in range(len(batch_columns)) - } | partition_columns - - @staticmethod - def get_partition_columns(file_path: str) -> Mapping[str, Any]: - """ - Parse file path and return dict of partitioned columns names with values, example: - /payroll/Year=2014/Agency_Name=ADMIN/file.parquet -> {"Year": "2014", Agency_Name: "ADMIN"} - """ - partitions_in_path = (unquote(x) for x in file_path.split(os.sep) if "=" in x) - return {x.split("=")[0]: x.split("=")[1] for x in partitions_in_path} - - @classmethod - def set_minimal_block_size(cls, format: Mapping[str, Any]): - format["buffer_size"] = 2 diff --git a/airbyte-integrations/connectors/source-s3/source_s3/source_files_abstract/storagefile.py b/airbyte-integrations/connectors/source-s3/source_s3/source_files_abstract/storagefile.py deleted file mode 100644 index d671ca36c556..000000000000 --- a/airbyte-integrations/connectors/source-s3/source_s3/source_files_abstract/storagefile.py +++ /dev/null @@ -1,60 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -from abc import ABC, abstractmethod -from contextlib import contextmanager -from datetime import datetime -from typing import BinaryIO, Iterator, TextIO, Union - -from airbyte_cdk.logger import AirbyteLogger - -from .file_info import FileInfo - - -class StorageFile(ABC): - logger = AirbyteLogger() - - def __init__(self, file_info: FileInfo, provider: dict): - """ - :param url: value yielded by filepath_iterator() in [Incremental]FileStream class. Blob/File path. - :param provider: provider specific mapping as described in spec.json - """ - self.file_info = file_info - self._provider = provider - - @property - def last_modified(self) -> datetime: - """ - Returns last_modified property of the blob/file - """ - return self.file_info.last_modified - - @property - def file_size(self) -> int: - """ - Returns Size property of the blob/file - """ - return self.file_info.size - - @property - def url(self) -> str: - """ - Returns key/name files - This function is needed for backward compatibility - """ - return self.file_info.key - - @contextmanager - @abstractmethod - def open(self, binary: bool) -> Iterator[Union[TextIO, BinaryIO]]: - """ - Override this to implement provider-specific logic. - It should yield exactly one TextIO or BinaryIO, that being the opened file-like object. - Note: This must work as described in https://docs.python.org/3/library/contextlib.html#contextlib.contextmanager. - Using contextmanager eliminates need to write all the boilerplate management code in this class. - See S3File() for example implementation. - - :param binary: whether or not to open file as binary - :return: file-like object - """ diff --git a/airbyte-integrations/connectors/source-s3/source_s3/source_files_abstract/stream.py b/airbyte-integrations/connectors/source-s3/source_s3/source_files_abstract/stream.py deleted file mode 100644 index e8110eb91191..000000000000 --- a/airbyte-integrations/connectors/source-s3/source_s3/source_files_abstract/stream.py +++ /dev/null @@ -1,525 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - - -import json -from abc import ABC, abstractmethod -from collections import defaultdict -from datetime import datetime, timedelta -from functools import cached_property, lru_cache -from traceback import format_exc -from typing import Any, Dict, Iterable, Iterator, List, Mapping, MutableMapping, Optional, Union - -import pendulum -import pytz -from airbyte_cdk.logger import AirbyteLogger -from airbyte_cdk.models.airbyte_protocol import SyncMode -from airbyte_cdk.sources.streams import Stream -from wcmatch.glob import GLOBSTAR, SPLIT, globmatch - -from .file_info import FileInfo -from .formats.abstract_file_parser import AbstractFileParser -from .formats.avro_parser import AvroParser -from .formats.csv_parser import CsvParser -from .formats.jsonl_parser import JsonlParser -from .formats.parquet_parser import ParquetParser -from .storagefile import StorageFile - -JSON_TYPES = ["string", "number", "integer", "object", "array", "boolean", "null"] - -LOGGER = AirbyteLogger() - - -class ConfigurationError(Exception): - """Client mis-configured""" - - -class FileStream(Stream, ABC): - file_formatparser_map = { - "csv": CsvParser, - "parquet": ParquetParser, - "avro": AvroParser, - "jsonl": JsonlParser, - } - # TODO: make these user configurable in spec.json - ab_last_mod_col = "_ab_source_file_last_modified" - ab_file_name_col = "_ab_source_file_url" - airbyte_columns = [ab_last_mod_col, ab_file_name_col] - datetime_format_string = "%Y-%m-%dT%H:%M:%SZ" - # In version 2.0.1 the datetime format has been changed. Since the state may still store values in the old datetime format, - # we need to support both of them for a while - deprecated_datetime_format_string = "%Y-%m-%dT%H:%M:%S%z" - # Handle the datetime format used in V4, in the event that we need to roll back - v4_datetime_format_string = "%Y-%m-%dT%H:%M:%S.%fZ" - - def __init__(self, dataset: str, provider: dict, format: dict, path_pattern: str, schema: str = None): - """ - :param dataset: table name for this stream - :param provider: provider specific mapping as described in spec.json - :param format: file format specific mapping as described in spec.json - :param path_pattern: glob-style pattern for file-matching (https://facelessuser.github.io/wcmatch/glob/) - :param schema: JSON-syntax user provided schema, defaults to None - """ - self.dataset = dataset - self._path_pattern = path_pattern - self._provider = provider - self._format = format - self._user_input_schema: Dict[str, Any] = {} - self.start_date = pendulum.parse(provider.get("start_date")) if provider.get("start_date") else pendulum.from_timestamp(0) - if schema: - self._user_input_schema = self._parse_user_input_schema(schema) - LOGGER.info(f"initialised stream with format: {format}") - - @staticmethod - def _parse_user_input_schema(schema: str) -> Dict[str, Any]: - """ - If the user provided a schema, we run this method to convert to a python dict and verify it - This verifies: - - that the provided string is valid JSON - - that it is a key:value map with no nested values (objects or arrays) - - that all values in the map correspond to a JsonSchema datatype - If this passes, we are confident that the user-provided schema is valid and will work as expected with the rest of the code - - :param schema: JSON-syntax user provided schema - :raises ConfigurationError: if any of the verification steps above fail - :return: the input schema (json string) as a python dict - """ - try: - py_schema: Dict[str, Any] = json.loads(schema) - except json.decoder.JSONDecodeError as err: - error_msg = f"Failed to parse schema {repr(err)}\n{schema}\n{format_exc()}" - raise ConfigurationError(error_msg) from err - # enforce all keys and values are of type string as required (i.e. no nesting) - if not all(isinstance(k, str) and isinstance(v, str) for k, v in py_schema.items()): - raise ConfigurationError("Invalid schema provided, all column names and datatypes must be in string format") - # enforce all values (datatypes) are valid JsonSchema datatypes - if any(datatype not in JSON_TYPES for datatype in py_schema.values()): - raise ConfigurationError(f"Invalid schema provided, datatypes must each be one of {JSON_TYPES}") - - return py_schema - - @classmethod - def with_minimal_block_size(cls, config: MutableMapping[str, Any]): - file_type = config["format"]["filetype"] - file_reader = cls.file_formatparser_map[file_type] - file_reader.set_minimal_block_size(config["format"]) - return cls(**config) - - @property - def name(self) -> str: - return self.dataset - - @property - def primary_key(self) -> Optional[Union[str, List[str], List[List[str]]]]: - return None - - @property - def fileformatparser_class(self) -> type: - """ - :return: reference to the relevant fileformatparser class e.g. CsvParser - """ - filetype = self._format.get("filetype") - file_reader = self.file_formatparser_map.get(filetype) - if not file_reader: - raise RuntimeError( - f"Detected mismatched file format '{filetype}'. Available values: '{list(self.file_formatparser_map.keys())}''." - ) - return file_reader - - @property - @abstractmethod - def storagefile_class(self) -> type: - """ - Override this to point to the relevant provider-specific StorageFile class e.g. S3File - - :return: reference to relevant class - """ - - @abstractmethod - def filepath_iterator(self, stream_state: Mapping[str, Any] = None) -> Iterator[FileInfo]: - """ - Provider-specific method to iterate through bucket/container/etc. and yield each full filepath. - This should supply the 'FileInfo' to use in StorageFile(). This is aggrigate all file properties (last_modified, key, size). - All this meta options are saved during loading of files' list at once. - - :yield: FileInfo object to use in StorageFile() - """ - - def pattern_matched_filepath_iterator(self, file_infos: Iterable[FileInfo]) -> Iterator[FileInfo]: - """ - iterates through iterable file_infos and yields only those file_infos that match user-provided path patterns - - :param file_infos: filepath_iterator(), this is a param rather than method reference in order to unit test this - :yield: FileInfo object to use in StorageFile(), if matching on user-provided path patterns - """ - for file_info in file_infos: - if globmatch(file_info.key, self._path_pattern, flags=GLOBSTAR | SPLIT): - yield file_info - - @lru_cache(maxsize=None) - def get_time_ordered_file_infos(self, stream_state: str = None) -> List[FileInfo]: - """ - Iterates through pattern_matched_filepath_iterator(), acquiring FileInfo objects - with last_modified property of each file to return in time ascending order. - Caches results after first run of method to avoid repeating network calls as this is used more than once - - :return: list in time-ascending order - """ - stream_state = eval(stream_state) if stream_state else None - return sorted( - self.pattern_matched_filepath_iterator(self.filepath_iterator(stream_state=stream_state)), - key=lambda file_info: file_info.last_modified, - ) - - @property - def _raw_schema(self) -> Mapping[str, Any]: - if self._user_input_schema and isinstance(self._user_input_schema, dict): - return self._user_input_schema - return self._auto_inferred_schema - - @property - def _schema(self) -> Mapping[str, Any]: - extra_fields = { - self.ab_last_mod_col: {"type": "string"}, - self.ab_file_name_col: {"type": "string"}, - } - schema = self._raw_schema - return {**schema, **extra_fields} - - def get_json_schema(self) -> Mapping[str, Any]: - # note: making every non-airbyte column nullable for compatibility - properties: Mapping[str, Any] = ( - {column: {"type": ["null", typ]} if column not in self.airbyte_columns else typ for column, typ in self._schema.items()} - if self._format["filetype"] != "avro" - else self._schema - ) - properties[self.ab_last_mod_col]["format"] = "date-time" - return {"type": "object", "properties": properties} - - @cached_property - def _auto_inferred_schema(self) -> Dict[str, Any]: - file_reader = self.fileformatparser_class(self._format) - file_info_iterator = iter(list(self.get_time_ordered_file_infos())) - file_info = next(file_info_iterator, None) - if not file_info: - return {} - storage_file = self.storagefile_class(file_info, self._provider) - with storage_file.open(file_reader.is_binary) as f: - return file_reader.get_inferred_schema(f, file_info) - - def stream_slices( - self, sync_mode: SyncMode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None - ) -> Iterable[Optional[Dict[str, Any]]]: - """ - This builds full-refresh stream_slices regardless of sync_mode param. - For full refresh, 1 file == 1 stream_slice. - The structure of a stream slice is [ {file}, ... ]. - In incremental mode, a stream slice may have more than one file so we mirror that format here. - Incremental stream_slices are implemented in the IncrementalFileStream child class. - """ - - # TODO: this could be optimised via concurrent reads, however we'd lose chronology and need to deal with knock-ons of that - # we could do this concurrently both full and incremental by running batches in parallel - # and then incrementing the cursor per each complete batch - for file_info in self.get_time_ordered_file_infos(): - yield {"files": [{"storage_file": self.storagefile_class(file_info, self._provider)}]} - - def _match_target_schema(self, record: Dict[str, Any], target_columns: List) -> Dict[str, Any]: - """ - This method handles missing or additional fields in each record, according to the provided target_columns. - All missing fields are added, with a value of None (null) - All additional fields are packed into the _ab_additional_properties object column - We start off with a check to see if we're already lined up to target in order to avoid unnecessary iterations (useful if many columns) - - :param record: json-like representation of a data row {column:value} - :param target_columns: list of column names to mutate this record into (obtained via self._schema.keys() as of now) - :return: mutated record with columns lining up to target_columns - """ - compare_columns = [c for c in target_columns if c not in [self.ab_last_mod_col, self.ab_file_name_col]] # missing columns - for c in compare_columns: - if c not in record.keys(): - record[c] = None - for c in record.copy(): - if c not in compare_columns: - del record[c] - return record - - def _add_extra_fields_from_map(self, record: Dict[str, Any], extra_map: Mapping[str, Any]) -> Mapping[str, Any]: - """ - Simple method to take a mapping of columns:values and add them to the provided record - - :param record: json-like representation of a data row {column:value} - :param extra_map: map of additional columns and values to add - :return: mutated record with additional fields - """ - for key, value in extra_map.items(): - record[key] = value - return record - - def _read_from_slice( - self, - file_reader: AbstractFileParser, - stream_slice: Mapping[str, Any], - stream_state: Mapping[str, Any] = None, - ) -> Iterable[Mapping[str, Any]]: - """ - Uses provider-relevant StorageFile to open file and then iterates through stream_records() using format-relevant AbstractFileParser. - Records are mutated on the fly using _match_target_schema() and _add_extra_fields_from_map() to achieve desired final schema. - Since this is called per stream_slice, this method works for both full_refresh and incremental. - """ - for file_item in stream_slice["files"]: - storage_file: StorageFile = file_item["storage_file"] - LOGGER.info(f"Reading from file: {storage_file.file_info}") - try: - with storage_file.open(file_reader.is_binary) as f: - # TODO: make this more efficient than mutating every record one-by-one as they stream - for record in file_reader.stream_records(f, storage_file.file_info): - schema_matched_record = self._match_target_schema(record, list(self._schema.keys())) - complete_record = self._add_extra_fields_from_map( - schema_matched_record, - { - self.ab_last_mod_col: datetime.strftime(storage_file.last_modified, self.datetime_format_string), - self.ab_file_name_col: storage_file.url, - }, - ) - yield complete_record - except OSError: - continue - LOGGER.info("finished reading a stream slice") - - def read_records( - self, - sync_mode: SyncMode, - cursor_field: List[str] = None, - stream_slice: Mapping[str, Any] = None, - stream_state: Mapping[str, Any] = None, - ) -> Iterable[Mapping[str, Any]]: - """ - The heavy lifting sits in _read_from_slice() which is full refresh / incremental agnostic - """ - if stream_slice: - file_reader = self.fileformatparser_class(self._format, self._raw_schema) - yield from self._read_from_slice(file_reader, stream_slice) - - -class IncrementalFileStream(FileStream, ABC): - # TODO: ideally want to checkpoint after every file or stream slice rather than N records - state_checkpoint_interval = None - buffer_days = 3 # keeping track of all files synced in the last N days - sync_all_files_always = False - max_history_size = 1000000000 - - @property - def cursor_field(self) -> str: - """ - :return: The name of the cursor field. - """ - return self.ab_last_mod_col - - @staticmethod - def file_in_history(file_key: str, history: dict) -> bool: - return any(file_key in slot for slot in history.values()) - - def _get_datetime_from_stream_state(self, stream_state: Mapping[str, Any] = None) -> datetime: - """ - Returns the datetime from the stream state. - - If there is no state, defaults to 1970-01-01 in order to pick up all files present. - The datetime object is localized to UTC to match the timezone of the last_modified attribute of objects in S3. - """ - stream_state = self._get_converted_stream_state(stream_state) - if stream_state is not None and self.cursor_field in stream_state.keys(): - try: - state_datetime = datetime.strptime(stream_state[self.cursor_field], self.datetime_format_string) - except ValueError: - state_datetime = datetime.strptime(stream_state[self.cursor_field], self.deprecated_datetime_format_string) - else: - state_datetime = datetime.strptime("1970-01-01T00:00:00Z", self.datetime_format_string) - return state_datetime.astimezone(pytz.utc) - - def get_updated_history(self, current_stream_state, latest_record_datetime, latest_record, current_parsed_datetime, state_date): - """ - History is dict which basically groups files by their modified_at date. - After reading each record we add its file to the history set if it wasn't already there. - Then we drop from the history set any entries whose key is less than now - buffer_days - """ - - history = current_stream_state.get("history", {}) - - file_modification_date = latest_record_datetime.strftime("%Y-%m-%d") - - # add record to history if record modified date in range delta start from state - if latest_record_datetime.date() + timedelta(days=self.buffer_days) >= state_date: - history_item = set(history.setdefault(file_modification_date, set())) - history_item.add(latest_record[self.ab_file_name_col]) - history[file_modification_date] = history_item - - # reset history to new date state - if current_parsed_datetime.date() != state_date: - history = { - date: history[date] - for date in history - if datetime.strptime(date, "%Y-%m-%d").date() + timedelta(days=self.buffer_days) >= state_date - } - - return history - - def size_history_balancer(self, state_dict): - """ - Delete history if state size limit reached - """ - history = state_dict["history"] - - if history.__sizeof__() > self.max_history_size: - self.sync_all_files_always = True - state_dict.pop("history") - - return state_dict - - def get_updated_state(self, current_stream_state: MutableMapping[str, Any], latest_record: Mapping[str, Any]) -> Mapping[str, Any]: - """ - Inspects the latest record extracted from the data source and the current state object and return an updated state object. - In the case where current_stream_state is null, we default to 1970-01-01 in order to pick up all files present. - We also save the schema into the state here so that we can use it on future incremental batches, allowing for additional/missing columns. - - :param current_stream_state: The stream's current state object - :param latest_record: The latest record extracted from the stream - :return: An updated state object - """ - state_dict: Dict[str, Any] = {} - current_parsed_datetime = self._get_datetime_from_stream_state(current_stream_state) - latest_record_datetime = datetime.strptime( - latest_record.get(self.cursor_field, "1970-01-01T00:00:00Z"), self.datetime_format_string - ) - latest_record_datetime = latest_record_datetime.astimezone(pytz.utc) - state_dict[self.cursor_field] = datetime.strftime(max(current_parsed_datetime, latest_record_datetime), self.datetime_format_string) - - state_date = self._get_datetime_from_stream_state(state_dict).date() - - if not self.sync_all_files_always: - state_dict["history"] = self.get_updated_history( - current_stream_state, latest_record_datetime, latest_record, current_parsed_datetime, state_date - ) - - return self.size_history_balancer(state_dict) - - def stream_slices( - self, sync_mode: SyncMode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None - ) -> Iterable[Optional[Dict[str, Any]]]: - """ - Builds either full_refresh or incremental stream_slices based on sync_mode. - An incremental stream_slice is a group of all files with the exact same last_modified timestamp. - This ensures we only update the cursor state to a given timestamp after ALL files with that timestamp have been successfully read. - - Slight nuance: as we iterate through get_time_ordered_file_infos(), - we yield the stream_slice containing file(s) up to and Excluding the file on the current iteration. - The stream_slice is then cleared (if we yielded it) and this iteration's file appended to the (next) stream_slice - """ - if sync_mode == SyncMode.full_refresh: - yield from super().stream_slices(sync_mode=sync_mode, cursor_field=cursor_field, stream_state=stream_state) - - else: - # logic here is to bundle all files with exact same last modified timestamp together in each slice - prev_file_last_mod: datetime = None # init variable to hold previous iterations last modified - grouped_files_by_time: List[Dict[str, Any]] = [] - for file_info in self.get_time_ordered_file_infos(stream_state=str(stream_state)): - # check if this file belongs in the next slice, if so yield the current slice before this file - if (prev_file_last_mod is not None) and (file_info.last_modified != prev_file_last_mod): - yield {"files": grouped_files_by_time} - grouped_files_by_time.clear() - - # now we either have an empty stream_slice or a stream_slice that this file shares a last modified with, so append it - grouped_files_by_time.append({"storage_file": self.storagefile_class(file_info, self._provider)}) - # update our prev_file_last_mod to the current one for next iteration - prev_file_last_mod = file_info.last_modified - - # now yield the final stream_slice. This is required because our loop only yields the slice previous to its current iteration. - if len(grouped_files_by_time) > 0: - yield {"files": grouped_files_by_time} - else: - # in case we have no files - yield None - - def _is_v4_state_format(self, stream_state: Optional[dict]) -> bool: - """ - Returns True if the stream_state is in the v4 format, otherwise False. - - The stream_state is in the v4 format if the history dictionary is a map - of str to str (instead of str to list) and the cursor value is in the - format `%Y-%m-%dT%H:%M:%S.%fZ` - """ - if not stream_state: - return False - if history := stream_state.get("history"): - item = list(history.items())[0] - if isinstance(item[-1], str): - return True - else: - return False - if cursor := stream_state.get(self.cursor_field): - try: - datetime.strptime(cursor, self.v4_datetime_format_string) - except ValueError: - return False - else: - return True - return False - - def _get_converted_stream_state(self, stream_state: Optional[dict]) -> dict: - """ - Transform the history from the new format to the old. - - This will only be used in the event that we roll back from v4. - - e.g. - { - "stream_name": { - "history": { - "simple_test.csv": "2022-05-26T17:49:11.000000Z", - "simple_test_2.csv": "2022-05-27T01:01:01.000000Z", - "redshift_result.csv": "2022-05-27T04:22:20.000000Z", - ... - }, - "_ab_source_file_last_modified": "2022-05-27T04:22:20.000000Z_redshift_result.csv" - } - } - => - { - "stream_name": { - "history": { - "2022-05-26": ["simple_test.csv.csv"], - "2022-05-27": ["simple_test_2.csv", "redshift_result.csv"], - ... - } - }, - "_ab_source_file_last_modified": "2022-05-26T09:55:16Z" - } - """ - if not self._is_v4_state_format(stream_state): - return stream_state - - converted_history = defaultdict(list) - - for filename, timestamp in stream_state.get("history", {}).items(): - if date_str := self._get_ts_from_millis_ts(timestamp, "%Y-%m-%d"): - converted_history[date_str].append(filename) - - converted_state = {} - if self.cursor_field in stream_state: - timestamp_millis = stream_state[self.cursor_field].split("_")[0] - converted_state[self.cursor_field] = self._get_ts_from_millis_ts(timestamp_millis, self.datetime_format_string) - if "history" in stream_state: - converted_state["history"] = converted_history - - return converted_state - - def _get_ts_from_millis_ts(self, timestamp: Optional[str], output_format: str) -> Optional[str]: - if not timestamp: - return timestamp - try: - timestamp_millis = datetime.strptime(timestamp, self.v4_datetime_format_string) - except ValueError: - self.logger.warning(f"Unable to parse {timestamp} as v4 timestamp.") - return timestamp - return timestamp_millis.strftime(output_format) diff --git a/airbyte-integrations/connectors/source-s3/source_s3/v4/config.py b/airbyte-integrations/connectors/source-s3/source_s3/v4/config.py index 231ff6935f5c..16a9af413b25 100644 --- a/airbyte-integrations/connectors/source-s3/source_s3/v4/config.py +++ b/airbyte-integrations/connectors/source-s3/source_s3/v4/config.py @@ -26,7 +26,7 @@ def documentation_url(cls) -> AnyUrl: description="In order to access private Buckets stored on AWS S3, this connector requires credentials with the proper " "permissions. If accessing publicly available data, this field is not necessary.", airbyte_secret=True, - order=1, + order=2, ) aws_secret_access_key: Optional[str] = Field( @@ -35,7 +35,7 @@ def documentation_url(cls) -> AnyUrl: description="In order to access private Buckets stored on AWS S3, this connector requires credentials with the proper " "permissions. If accessing publicly available data, this field is not necessary.", airbyte_secret=True, - order=2, + order=3, ) endpoint: Optional[str] = Field( diff --git a/airbyte-integrations/connectors/source-s3/source_s3/v4/legacy_config_transformer.py b/airbyte-integrations/connectors/source-s3/source_s3/v4/legacy_config_transformer.py index 6a0897ae6c77..4d04411a6694 100644 --- a/airbyte-integrations/connectors/source-s3/source_s3/v4/legacy_config_transformer.py +++ b/airbyte-integrations/connectors/source-s3/source_s3/v4/legacy_config_transformer.py @@ -29,7 +29,6 @@ def convert(cls, legacy_config: SourceS3Spec) -> Mapping[str, Any]: "streams": [ { "name": legacy_config.dataset, - "file_type": legacy_config.format.filetype, "globs": cls._create_globs(legacy_config.path_pattern), "legacy_prefix": legacy_config.provider.path_prefix, "validation_policy": "Emit Record", @@ -117,8 +116,17 @@ def _transform_file_format(cls, format_options: Union[CsvFormat, ParquetFormat, csv_options["skip_rows_before_header"] = skip_rows if skip_rows_after_names := advanced_options.pop("skip_rows_after_names", None): csv_options["skip_rows_after_header"] = skip_rows_after_names - if autogenerate_column_names := advanced_options.pop("autogenerate_column_names", None): - csv_options["autogenerate_column_names"] = autogenerate_column_names + + if column_names := advanced_options.pop("column_names", None): + csv_options["header_definition"] = { + "header_definition_type": "User Provided", + "column_names": column_names, + } + advanced_options.pop("autogenerate_column_names", None) + elif advanced_options.pop("autogenerate_column_names", None): + csv_options["header_definition"] = {"header_definition_type": "Autogenerated"} + else: + csv_options["header_definition"] = {"header_definition_type": "From CSV"} cls._filter_legacy_noops(advanced_options) @@ -151,7 +159,7 @@ def parse_config_options_str(cls, options_field: str, options_value: Optional[st @staticmethod def _filter_legacy_noops(advanced_options: Dict[str, Any]): - ignore_all = ("auto_dict_encode", "timestamp_parsers") + ignore_all = ("auto_dict_encode", "timestamp_parsers", "block_size") ignore_by_value = (("check_utf8", False),) for option in ignore_all: diff --git a/airbyte-integrations/connectors/source-s3/source_s3/v4/source.py b/airbyte-integrations/connectors/source-s3/source_s3/v4/source.py index 8302673b3ce7..780a3bb0cf1f 100644 --- a/airbyte-integrations/connectors/source-s3/source_s3/v4/source.py +++ b/airbyte-integrations/connectors/source-s3/source_s3/v4/source.py @@ -2,12 +2,22 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # -from typing import Any, Mapping +from typing import Any, Dict, Mapping, Optional +from airbyte_cdk.config_observation import emit_configuration_as_airbyte_control_message +from airbyte_cdk.models import ConnectorSpecification from airbyte_cdk.sources.file_based.file_based_source import FileBasedSource from source_s3.source import SourceS3Spec from source_s3.v4.legacy_config_transformer import LegacyConfigTransformer +_V3_DEPRECATION_FIELD_MAPPING = { + "dataset": "streams.name", + "format": "streams.format", + "path_pattern": "streams.globs", + "provider": "bucket, aws_access_key_id, aws_secret_access_key and endpoint", + "schema": "streams.input_schema", +} + class SourceS3(FileBasedSource): def read_config(self, config_path: str) -> Mapping[str, Any]: @@ -17,7 +27,77 @@ def read_config(self, config_path: str) -> Mapping[str, Any]: validate the config against the new spec. """ config = super().read_config(config_path) - if not config.get("streams"): + if not self._is_v4_config(config): parsed_legacy_config = SourceS3Spec(**config) - return LegacyConfigTransformer.convert(parsed_legacy_config) + converted_config = LegacyConfigTransformer.convert(parsed_legacy_config) + emit_configuration_as_airbyte_control_message(converted_config) + return converted_config return config + + def spec(self, *args: Any, **kwargs: Any) -> ConnectorSpecification: + s3_spec = SourceS3Spec.schema() + s4_spec = self.spec_class.schema() + + if s3_spec["properties"].keys() & s4_spec["properties"].keys(): + raise ValueError("Overlapping properties between V3 and V4") + + for v3_property_key, v3_property_value in s3_spec["properties"].items(): + s4_spec["properties"][v3_property_key] = v3_property_value + s4_spec["properties"][v3_property_key]["airbyte_hidden"] = True + s4_spec["properties"][v3_property_key]["order"] += 100 + s4_spec["properties"][v3_property_key]["description"] = ( + SourceS3._create_description_with_deprecation_prefix(_V3_DEPRECATION_FIELD_MAPPING.get(v3_property_key, None)) + + s4_spec["properties"][v3_property_key]["description"] + ) + self._clean_required_fields(s4_spec["properties"][v3_property_key]) + + return ConnectorSpecification( + documentationUrl=self.spec_class.documentation_url(), + connectionSpecification=s4_spec, + ) + + def _is_v4_config(self, config: Mapping[str, Any]) -> bool: + return "streams" in config + + @staticmethod + def _clean_required_fields(v3_field: Dict[str, Any]) -> None: + """ + Not having V3 fields root level as part of the `required` field is not enough as the platform will create empty objects for those. + For example, filling all non-hidden fields from the form will create a config like: + ``` + { + <...> + "provider": {}, + <...> + } + ``` + + As the field `provider` exists, the JSON validation will be applied and as `provider.bucket` is needed, the validation will fail + with the following error: + ``` + "errors": { + "connectionConfiguration": { + "provider": { + "bucket": { + "message": "form.empty.error", + "type": "required" + } + } + } + } + ``` + + Hence, we need to make any V3 nested fields not required. + """ + if "properties" not in v3_field: + return + + v3_field["required"] = [] + for neste_field in v3_field["properties"]: + SourceS3._clean_required_fields(neste_field) + + @staticmethod + def _create_description_with_deprecation_prefix(new_fields: Optional[str]) -> str: + if new_fields: + return f"Deprecated and will be removed soon. Please do not use this field anymore and use {new_fields} instead. " + return "Deprecated and will be removed soon. Please do not use this field anymore. " diff --git a/airbyte-integrations/connectors/source-s3/source_s3/v4/stream_reader.py b/airbyte-integrations/connectors/source-s3/source_s3/v4/stream_reader.py index 14618e84cff9..7ce1afd0dac6 100644 --- a/airbyte-integrations/connectors/source-s3/source_s3/v4/stream_reader.py +++ b/airbyte-integrations/connectors/source-s3/source_s3/v4/stream_reader.py @@ -48,15 +48,13 @@ def s3_client(self) -> BaseClient: # list or read files. raise ValueError("Source config is missing; cannot create the S3 client.") if self._s3_client is None: - if self.config.endpoint: - client_kv_args = _get_s3_compatible_client_args(self.config) - self._s3_client = boto3.client("s3", **client_kv_args) - else: - self._s3_client = boto3.client( - "s3", - aws_access_key_id=self.config.aws_access_key_id, - aws_secret_access_key=self.config.aws_secret_access_key, - ) + client_kv_args = _get_s3_compatible_client_args(self.config) if self.config.endpoint else {} + self._s3_client = boto3.client( + "s3", + aws_access_key_id=self.config.aws_access_key_id, + aws_secret_access_key=self.config.aws_secret_access_key, + **client_kv_args, + ) return self._s3_client def get_matching_files(self, globs: List[str], prefix: Optional[str], logger: logging.Logger) -> Iterable[RemoteFile]: diff --git a/airbyte-integrations/connectors/source-s3/unit_tests/abstract_test_parser.py b/airbyte-integrations/connectors/source-s3/unit_tests/abstract_test_parser.py deleted file mode 100644 index d7196b40eff4..000000000000 --- a/airbyte-integrations/connectors/source-s3/unit_tests/abstract_test_parser.py +++ /dev/null @@ -1,160 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -import linecache -import os -import random -import sys -import tracemalloc -from abc import ABC, abstractmethod -from datetime import datetime, timedelta -from decimal import Decimal -from functools import lru_cache, wraps -from typing import Any, Callable, List, Mapping - -import pytest -from airbyte_cdk import AirbyteLogger -from smart_open import open as smart_open -from source_s3.source_files_abstract.file_info import FileInfo - - -def memory_limit(max_memory_in_megabytes: int, print_limit: int = 20) -> Callable: - """Runs a test function by a separate process with restricted memory""" - - def decorator(func: Callable) -> Callable: - @wraps(func) - def wrapper(*args: List[Any], **kwargs: Any) -> Any: - tracemalloc.start() - result = func(*args, **kwargs) - - # get memory usage immediately after function call, we interested in "first_size" value - first_size, first_peak = tracemalloc.get_traced_memory() - # get snapshot immediately just in case we will use it - snapshot = tracemalloc.take_snapshot() - - # only if we exceeded the quota, build log_messages with traces - first_size_in_megabytes = first_size / 1024**2 - if first_size_in_megabytes > max_memory_in_megabytes: - log_messages: List[str] = [] - top_stats = snapshot.statistics("lineno") - for index, stat in enumerate(top_stats[:print_limit], 1): - frame = stat.traceback[0] - filename = os.sep.join(frame.filename.split(os.sep)[-2:]) - log_messages.append("#%s: %s:%s: %.1f KiB" % (index, filename, frame.lineno, stat.size / 1024)) - line = linecache.getline(frame.filename, frame.lineno).strip() - if line: - log_messages.append(f" {line}") - traceback_log = "\n".join(log_messages) - assert False, f"Overuse of memory, used: {first_size_in_megabytes}Mb, limit: {max_memory_in_megabytes}Mb!!\n{traceback_log}" - - return result - - return wrapper - - return decorator - - -def create_by_local_file(filepath: str) -> FileInfo: - "Generates a FileInfo instance for local files" - if not os.path.exists(filepath): - return FileInfo(key=filepath, size=0, last_modified=datetime.now()) - return FileInfo(key=filepath, size=os.stat(filepath).st_size, last_modified=datetime.fromtimestamp(os.path.getmtime(filepath))) - - -class AbstractTestParser(ABC): - """Prefix this class with Abstract so the tests don't run here but only in the children""" - - logger = AirbyteLogger() - record_types: Mapping[str, Any] = {} - - @classmethod - def _generate_row(cls, types: List[str]) -> List[Any]: - """Generates random values with request types""" - row = [] - for needed_type in types: - for json_type in cls.record_types: - if json_type == needed_type: - row.append(cls._generate_value(needed_type)) - break - return row - - @classmethod - def _generate_value(cls, typ: str) -> Any: - if typ not in ["boolean", "integer"] and cls._generate_value("boolean"): - # return 'None' for +- 33% of all requests - return None - - if typ == "number": - while True: - int_value = cls._generate_value("integer") - if int_value: - break - return float(int_value) + random.random() - elif typ == "integer": - return random.randint(-sys.maxsize - 1, sys.maxsize) - # return random.randint(0, 1000) - elif typ == "boolean": - return random.choice([True, False, None]) - elif typ == "string": - random_length = random.randint(0, 10 * 1024) # max size of bytes is 10k - return os.urandom(random_length) - elif typ == "timestamp": - return datetime.now() + timedelta(seconds=random.randint(0, 7200)) - elif typ == "date": - dt = cls._generate_value("timestamp") - return dt.date() if dt else None - elif typ == "time": - dt = cls._generate_value("timestamp") - return dt.time() if dt else None - elif typ == "decimal": - return Decimal((0, tuple([random.randint(1, 9) for _ in range(10)]), -4)) - raise Exception(f"not supported type: {typ}") - - @classmethod - @lru_cache(maxsize=None) - def cached_cases(cls) -> Mapping[str, Any]: - return cls.cases() - - @classmethod - @abstractmethod - def cases(cls) -> Mapping[str, Any]: - """return a map of test_file dicts in structure: - { - "small_file": {"AbstractFileParser": CsvParser(format, master_schema), "filepath": "...", "num_records": 5, "inferred_schema": {...}, line_checks:{}, fails: []}, - "big_file": {"AbstractFileParser": CsvParser(format, master_schema), "filepath": "...", "num_records": 16, "inferred_schema": {...}, line_checks:{}, fails: []} - ] - note: line_checks index is 1-based to align with row numbers - """ - - def _get_readmode(self, file_info: Mapping[str, Any]) -> str: - return "rb" if file_info["AbstractFileParser"].is_binary else "r" - - @memory_limit(1024) - def test_suite_inferred_schema(self, file_info: Mapping[str, Any]) -> None: - file_info_instance = FileInfo(key=file_info["filepath"], size=os.stat(file_info["filepath"]).st_size, last_modified=datetime.now()) - with smart_open(file_info["filepath"], self._get_readmode(file_info)) as f: - if "test_get_inferred_schema" in file_info["fails"]: - with pytest.raises(Exception) as e_info: - file_info["AbstractFileParser"].get_inferred_schema(f), file_info_instance - self.logger.debug(str(e_info)) - else: - assert file_info["AbstractFileParser"].get_inferred_schema(f, file_info_instance) == file_info["inferred_schema"] - - @memory_limit(1024) - def test_stream_suite_records(self, file_info: Mapping[str, Any]) -> None: - filepath = file_info["filepath"] - file_size = os.stat(filepath).st_size - file_info_instance = FileInfo(key=filepath, size=file_size, last_modified=datetime.now()) - self.logger.info(f"read the file: {filepath}, size: {file_size / (1024 ** 2)}Mb") - with smart_open(filepath, self._get_readmode(file_info)) as f: - if "test_stream_records" in file_info["fails"]: - with pytest.raises(Exception) as e_info: - [print(r) for r in file_info["AbstractFileParser"].stream_records(f, file_info_instance)] - self.logger.debug(str(e_info)) - else: - records = [r for r in file_info["AbstractFileParser"].stream_records(f, file_info_instance)] - - assert len(records) == file_info["num_records"] - for index, expected_record in file_info["line_checks"].items(): - assert records[index - 1] == expected_record diff --git a/airbyte-integrations/connectors/source-s3/unit_tests/conftest.py b/airbyte-integrations/connectors/source-s3/unit_tests/conftest.py deleted file mode 100644 index c5e174f28986..000000000000 --- a/airbyte-integrations/connectors/source-s3/unit_tests/conftest.py +++ /dev/null @@ -1,77 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -import json -import os -import shutil -import tempfile -from pathlib import Path -from typing import Any, List, Mapping - -import requests # noqa -from airbyte_cdk import AirbyteLogger -from netifaces import AF_INET, ifaddresses, interfaces -from pytest import fixture -from requests.exceptions import ConnectionError # noqa -from source_s3 import SourceS3 - -logger = AirbyteLogger() - -TMP_FOLDER = os.path.join(tempfile.gettempdir(), "test_generated") - -shutil.rmtree(TMP_FOLDER, ignore_errors=True) -os.makedirs(TMP_FOLDER, exist_ok=True) - - -def pytest_generate_tests(metafunc: Any) -> None: - if "file_info" in metafunc.fixturenames: - cases = metafunc.cls.cached_cases() - metafunc.parametrize("file_info", cases.values(), ids=cases.keys()) - - -def pytest_sessionfinish(session: Any, exitstatus: Any) -> None: - """whole test run finishes.""" - shutil.rmtree(TMP_FOLDER, ignore_errors=True) - - -@fixture(name="config") -def config_fixture(tmp_path): - config_file = tmp_path / "config.json" - with open(config_file, "w") as fp: - json.dump( - { - "dataset": "dummy", - "provider": {"bucket": "test-test", "endpoint": "test", "use_ssl": "test", "verify_ssl_cert": "test"}, - "path_pattern": "", - "format": {"delimiter": "\\t"}, - }, - fp, - ) - source = SourceS3() - config = source.read_config(config_file) - return config - - -def get_local_ip() -> str: - all_interface_ips: List[str] = [] - for iface_name in interfaces(): - all_interface_ips += [i["addr"] for i in ifaddresses(iface_name).setdefault(AF_INET, [{"addr": None}]) if i["addr"]] - logger.info(f"detected interface IPs: {all_interface_ips}") - for ip in sorted(all_interface_ips): - if not ip.startswith("127."): - return ip - - assert False, "not found an non-localhost interface" - - -@fixture(scope="session") -def minio_credentials() -> Mapping[str, Any]: - config_template = Path(__file__).parent / "config_minio.template.json" - assert config_template.is_file() is not None, f"not found {config_template}" - config_file = Path(__file__).parent / "config_minio.json" - config_file.write_text(config_template.read_text().replace("", get_local_ip())) - - with open(str(config_file)) as f: - credentials = json.load(f) - return credentials diff --git a/airbyte-integrations/connectors/source-s3/unit_tests/sample_files/catalog.json b/airbyte-integrations/connectors/source-s3/unit_tests/sample_files/catalog.json new file mode 100644 index 000000000000..ddf6ebecec11 --- /dev/null +++ b/airbyte-integrations/connectors/source-s3/unit_tests/sample_files/catalog.json @@ -0,0 +1,35 @@ +{ + "streams": [ + { + "stream": { + "name": "test", + "json_schema": { + "type": "object", + "properties": { + "id": { + "type": ["null", "integer"] + }, + "name": { + "type": ["null", "string"] + }, + "valid": { + "type": ["null", "boolean"] + }, + "_ab_source_file_last_modified": { + "type": "string", + "format": "date-time" + }, + "_ab_source_file_url": { + "type": "string" + } + } + }, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["_ab_source_file_last_modified"] + }, + "sync_mode": "incremental", + "destination_sync_mode": "append" + } + ] +} diff --git a/airbyte-integrations/connectors/source-s3/unit_tests/sample_files/csv/test_file_invalid_conversation.csv b/airbyte-integrations/connectors/source-s3/unit_tests/sample_files/csv/test_file_invalid_conversation.csv new file mode 100644 index 000000000000..5d01827e600d --- /dev/null +++ b/airbyte-integrations/connectors/source-s3/unit_tests/sample_files/csv/test_file_invalid_conversation.csv @@ -0,0 +1,2 @@ +id,name,value +1,PVdhmjb1,44.2 diff --git a/airbyte-integrations/connectors/source-s3/unit_tests/sample_files/v3_config.json b/airbyte-integrations/connectors/source-s3/unit_tests/sample_files/v3_config.json new file mode 100644 index 000000000000..c5648fd856ce --- /dev/null +++ b/airbyte-integrations/connectors/source-s3/unit_tests/sample_files/v3_config.json @@ -0,0 +1,12 @@ +{ + "dataset": "test", + "provider": { + "bucket": "a bucket", + "aws_access_key_id": "a key id", + "aws_secret_access_key": "an access key", + "path_prefix": "" + }, + "format": { "filetype": "csv" }, + "path_pattern": "**", + "schema": "{}" +} diff --git a/airbyte-integrations/connectors/source-s3/unit_tests/sample_files/v4_config.json b/airbyte-integrations/connectors/source-s3/unit_tests/sample_files/v4_config.json new file mode 100644 index 000000000000..bc517bf8099c --- /dev/null +++ b/airbyte-integrations/connectors/source-s3/unit_tests/sample_files/v4_config.json @@ -0,0 +1,11 @@ +{ + "bucket": "a-bucket", + "streams": [ + { + "name": "output-stream-name", + "format": { "filetype": "csv" }, + "file_type": "csv", + "validation_policy": "Emit Record" + } + ] +} diff --git a/airbyte-integrations/connectors/source-s3/unit_tests/test_abstract_file_parser.py b/airbyte-integrations/connectors/source-s3/unit_tests/test_abstract_file_parser.py deleted file mode 100644 index 0a83cc632987..000000000000 --- a/airbyte-integrations/connectors/source-s3/unit_tests/test_abstract_file_parser.py +++ /dev/null @@ -1,113 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -from typing import Any, Mapping, Tuple - -import pyarrow as pa -import pytest -from airbyte_cdk import AirbyteLogger -from source_s3.source_files_abstract.formats.abstract_file_parser import AbstractFileParser - -LOGGER = AirbyteLogger() - - -class TestAbstractFileParserStatics: - @pytest.mark.parametrize( # testing all datatypes as laid out here: https://json-schema.org/understanding-json-schema/reference/type.html - "input_json_type, output_pyarrow_type", - [ - ("string", pa.large_string()), - ("number", pa.float64()), - ("integer", pa.int64()), - ("object", pa.large_string()), - ("array", pa.large_string()), - ("boolean", pa.bool_()), - ("null", pa.large_string()), - ], - ) - def test_json_type_to_pyarrow_type(self, input_json_type: str, output_pyarrow_type: Any) -> None: - # Json -> PyArrow direction - LOGGER.info(f"asserting that JSON type '{input_json_type}' converts to PyArrow type '{output_pyarrow_type}'...") - assert AbstractFileParser.json_type_to_pyarrow_type(input_json_type) == output_pyarrow_type - - @pytest.mark.parametrize( # testing all datatypes as laid out here: https://arrow.apache.org/docs/python/api/datatypes.html - "input_pyarrow_types, output_json_type", - [ - ((pa.null(),), "string"), # null type - ((pa.bool_(),), "boolean"), # boolean type - ( - (pa.int8(), pa.int16(), pa.int32(), pa.int64(), pa.uint8(), pa.uint16(), pa.uint32(), pa.uint64()), - "integer", - ), # integer types - ((pa.float16(), pa.float32(), pa.float64(), pa.decimal128(5, 10), pa.decimal256(3, 8)), "number"), # number types - ((pa.time32("s"), pa.time64("ns"), pa.timestamp("ms"), pa.date32(), pa.date64()), "string"), # temporal types - ((pa.binary(), pa.large_binary()), "string"), # binary types - ((pa.string(), pa.utf8(), pa.large_string(), pa.large_utf8()), "string"), # string types - ((pa.list_(pa.string()), pa.large_list(pa.timestamp("us"))), "string"), # array types - ((pa.map_(pa.string(), pa.float32()), pa.dictionary(pa.int16(), pa.list_(pa.string()))), "string"), # object types - ], - ) - def test_json_type_to_pyarrow_type_reverse(self, input_pyarrow_types: Tuple[Any], output_json_type: str) -> None: - # PyArrow -> Json direction (reverse=True) - for typ in input_pyarrow_types: - LOGGER.info(f"asserting that PyArrow type '{typ}' converts to JSON type '{output_json_type}'...") - assert AbstractFileParser.json_type_to_pyarrow_type(typ, reverse=True) == output_json_type - - @pytest.mark.parametrize( # if expecting fail, put pyarrow_schema as None - "json_schema, pyarrow_schema", - [ - ( - {"a": "string", "b": "number", "c": "integer", "d": "object", "e": "array", "f": "boolean", "g": "null"}, - { - "a": pa.large_string(), - "b": pa.float64(), - "c": pa.int64(), - "d": pa.large_string(), - "e": pa.large_string(), - "f": pa.bool_(), - "g": pa.large_string(), - }, - ), - ({"single_column": "object"}, {"single_column": pa.large_string()}), - ({}, {}), - ({"a": "NOT A REAL TYPE", "b": "another fake type"}, {"a": pa.large_string(), "b": pa.large_string()}), - (["string", "object"], None), # bad input type - ], - ) - def test_json_schema_to_pyarrow_schema(self, json_schema: Mapping[str, Any], pyarrow_schema: Mapping[str, Any]) -> None: - # Json -> PyArrow direction - if pyarrow_schema is not None: - assert AbstractFileParser.json_schema_to_pyarrow_schema(json_schema) == pyarrow_schema - else: - with pytest.raises(Exception) as e_info: - AbstractFileParser.json_schema_to_pyarrow_schema(json_schema) - LOGGER.debug(str(e_info)) - - @pytest.mark.parametrize( # if expecting fail, put json_schema as None - "pyarrow_schema, json_schema", - [ - ( - { - "a": pa.utf8(), - "b": pa.float16(), - "c": pa.uint32(), - "d": pa.map_(pa.string(), pa.float32()), - "e": pa.bool_(), - "f": pa.date64(), - }, - {"a": "string", "b": "number", "c": "integer", "d": "string", "e": "boolean", "f": "string"}, - ), - ({"single_column": pa.int32()}, {"single_column": "integer"}), - ({}, {}), - ({"a": "NOT A REAL TYPE", "b": "another fake type"}, {"a": "string", "b": "string"}), - (["string", "object"], None), # bad input type - ], - ) - def test_json_schema_to_pyarrow_schema_reverse(self, pyarrow_schema: Mapping[str, Any], json_schema: Mapping[str, Any]) -> None: - # PyArrow -> Json direction (reverse=True) - if json_schema is not None: - assert AbstractFileParser.json_schema_to_pyarrow_schema(pyarrow_schema, reverse=True) == json_schema - else: - with pytest.raises(Exception) as e_info: - AbstractFileParser.json_schema_to_pyarrow_schema(pyarrow_schema, reverse=True) - LOGGER.debug(str(e_info)) diff --git a/airbyte-integrations/connectors/source-s3/unit_tests/test_avro_parser.py b/airbyte-integrations/connectors/source-s3/unit_tests/test_avro_parser.py deleted file mode 100644 index 789683220020..000000000000 --- a/airbyte-integrations/connectors/source-s3/unit_tests/test_avro_parser.py +++ /dev/null @@ -1,146 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -import os -import random -import string -from random import randrange -from typing import Any, Mapping - -from avro import datafile, io, schema -from source_s3.source_files_abstract.formats.avro_parser import AvroParser - -from .abstract_test_parser import AbstractTestParser -from .conftest import TMP_FOLDER - -simple_schema_str = """{ - "type": "record", - "name": "sampleAvro", - "namespace": "AVRO", - "fields": [ - {"name": "name", "type": "string"}, - {"name": "age", "type": ["int", "null"]}, - {"name": "address", "type": ["float", "null"]}, - {"name": "street", "type": "float"}, - {"name": "valid", "type": "boolean"} - ] -}""" - -nested_records_schema_str = """{ - "type": "record", - "name": "sampleAvroNested", - "namespace": "AVRO", - "fields": [ - {"name": "lastname", "type": "string"}, - {"name": "address","type": { - "type" : "record", - "name" : "AddressUSRecord", - "fields" : [ - {"name": "streetaddress", "type": "string"}, - {"name": "city", "type": "string"} - ] - } - } - ] -}""" - -nested_schema_output = {"address": {"type": ["object", "null"], - "city": {"type": ["string", "null"]}, - "streetaddress": {"type": ["string", "null"]}, - }, - "lastname": {"type": ["string", "null"]}} - -master_schema = {"address": {"type": ["number", "null"]}, - "age": {"type": ["integer", "null"]}, - "name": {"type": ["string", "null"]}, - "street": {"type": ["number", "null"]}, - "valid": {"type": ["boolean", "null"]} - } - - -class TestAvroParser(AbstractTestParser): - filetype = "avro" - - @classmethod - def generate_avro_file(cls, out_file, num_rows: int) -> str: - """Creates an avro file and saves to tmp folder to be used by test cases - :param schema_str: valid avro schema as a string - :param out_file: name of file to be created - :param num_rows: number of rows to be generated - :return: string with path to the file created - """ - filename = os.path.join(TMP_FOLDER, out_file + "." + cls.filetype) - parsed_schema = schema.parse(simple_schema_str) - rec_writer = io.DatumWriter(parsed_schema) - file_writer = datafile.DataFileWriter(open(filename, "wb"), rec_writer, parsed_schema) - for _ in range(num_rows): - data = {} - data["name"] = "".join(random.choice(string.ascii_letters) for i in range(10)) - data["age"] = randrange(-100, 100) - data["address"] = random.uniform(1.1, 100.10) - data["street"] = random.uniform(1.1, 100.10) - data["valid"] = random.choice([True, False]) - file_writer.append(data) - file_writer.close() - return filename - - @classmethod - def generate_nested_avro_file(cls, out_file, num_rows: int) -> str: - """Creates an avro file and saves to tmp folder to be used by test cases - :param schema_str: valid avro schema as a string - :param out_file: name of file to be created - :param num_rows: number of rows to be generated - :return: string with path to the file created - """ - filename = os.path.join(TMP_FOLDER, out_file + "." + cls.filetype) - parsed_schema = schema.parse(nested_records_schema_str) - rec_writer = io.DatumWriter(parsed_schema) - file_writer = datafile.DataFileWriter(open(filename, "wb"), rec_writer, parsed_schema) - for _ in range(num_rows): - data = {} - data["lastname"] = "".join(random.choice(string.ascii_letters) for i in range(10)) - data["address"] = { - "streetaddress": "".join(random.choice(string.ascii_letters) for i in range(10)), - "city": "".join(random.choice(string.ascii_letters) for i in range(10)) - } - file_writer.append(data) - file_writer.close() - return filename - - @classmethod - def cases(cls) -> Mapping[str, Any]: - """ - return test cases - """ - cases = {} - # test basic file with data type conversions - cases["simple_test"] = { - "AbstractFileParser": AvroParser(format=cls.filetype), - "filepath": cls.generate_avro_file("test_file", 1000), - "num_records": 1000, - "inferred_schema": master_schema, - "line_checks": {}, - "fails": [], - } - # test file with 0 records. Will pass but not ingest anything - cases["test_zero_rows"] = { - "AbstractFileParser": AvroParser(format=cls.filetype), - "filepath": cls.generate_avro_file("test_file_zero_rows", 0), - "num_records": 0, - "inferred_schema": master_schema, - "line_checks": {}, - "fails": [], - } - - # test for avro schema with nested records. This will pass as all nested records are returned as one string - cases["test_nested_records"] = { - "AbstractFileParser": AvroParser(format=cls.filetype), - "filepath": cls.generate_nested_avro_file("test_nested_records", 10), - "num_records": 10, - "inferred_schema": nested_schema_output, - "line_checks": {}, - "fails": [], - } - - return cases diff --git a/airbyte-integrations/connectors/source-s3/unit_tests/test_csv_parser.py b/airbyte-integrations/connectors/source-s3/unit_tests/test_csv_parser.py deleted file mode 100644 index d3e40a059c9d..000000000000 --- a/airbyte-integrations/connectors/source-s3/unit_tests/test_csv_parser.py +++ /dev/null @@ -1,446 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -import json -import os -import random -import shutil -import string -from contextlib import nullcontext as does_not_raise -from pathlib import Path -from typing import Any, List, Mapping, Tuple -from unittest.mock import Mock - -import pendulum -import pytest -from airbyte_cdk.utils.traced_exception import AirbyteTracedException -from smart_open import open as smart_open -from source_s3.source_files_abstract.file_info import FileInfo -from source_s3.source_files_abstract.formats.csv_parser import CsvParser - -from .abstract_test_parser import AbstractTestParser, memory_limit -from .conftest import TMP_FOLDER - -SAMPLE_DIRECTORY = Path(__file__).resolve().parent.joinpath("sample_files/") - -# All possible CSV data types -CSV_TYPES = { - # logical_type: (json_type, csv_types, convert_function) - # standard types - "string": ("string", ["string"], None), - "boolean": ("boolean", ["boolean"], None), - "number": ("number", ["number"], None), - "integer": ("integer", ["integer"], None), -} - - -def _generate_value(typ: str) -> Any: - if typ == "string": - if AbstractTestParser._generate_value("boolean"): - return None - random_length = random.randint(0, 512) - return "".join(random.choice(string.ascii_uppercase + string.digits) for _ in range(random_length)) - return AbstractTestParser._generate_value(typ) - - -def _generate_row(types: List[str]) -> List[Any]: - """Generates random values with request types""" - row = [] - for needed_type in types: - for json_type in CSV_TYPES: - if json_type == needed_type: - value = _generate_value(needed_type) - if value is None: - value = "" - row.append(str(value)) - break - return row - - -def generate_csv_file(filename: str, columns: Mapping[str, str], num_rows: int, delimiter: str) -> str: - """Generates a random CSV data and save it to a tmp file""" - header_line = delimiter.join(columns.keys()) - types = list(columns.values()) if num_rows else [] - with open(filename, "w") as f: - f.write(header_line + "\n") - for _ in range(num_rows): - f.write(delimiter.join(_generate_row(types)) + "\n") - return filename - - -def generate_big_file(filepath: str, size_in_gigabytes: float, columns_number: int, template_file: str = None) -> Tuple[dict, float]: - temp_files = [filepath + ".1", filepath + ".2"] - if template_file: - shutil.copyfile(template_file, filepath) - schema = None - else: - schema = {f"column {i}": random.choice(["integer", "string", "boolean", "number"]) for i in range(columns_number)} - generate_csv_file(filepath, schema, 456, ",") - - skip_headers = False - with open(filepath, "r") as f: - with open(temp_files[0], "w") as tf: - for line in f: - if not skip_headers: - skip_headers = True - continue - tf.write(str(line)) - - with open(filepath, "ab") as f: - while True: - file_size = os.stat(filepath).st_size / (1024**3) - if file_size > size_in_gigabytes: - break - with open(temp_files[0], "rb") as tf: # type: ignore[assignment] - with open(temp_files[1], "wb") as tf2: - buf = tf.read(50 * 1024**2) # by 50Mb - if buf: - f.write(buf) # type: ignore[arg-type] - tf2.write(buf) # type: ignore[arg-type] - temp_files.append(temp_files.pop(0)) - # remove temp files - for temp_file in temp_files: - if os.path.exists(temp_file): - os.remove(temp_file) - return schema, file_size - - -class TestCsvParser(AbstractTestParser): - record_types = CSV_TYPES - filetype = "csv" - - @classmethod - def cases(cls) -> Mapping[str, Any]: - return { - "basic_normal_test": { - "AbstractFileParser": CsvParser( - format={"filetype": "csv"}, - master_schema={ - "id": "integer", - "name": "string", - "valid": "boolean", - "code": "integer", - "degrees": "number", - "birthday": "string", - "last_seen": "string", - }, - ), - "filepath": os.path.join(SAMPLE_DIRECTORY, "csv/test_file_1.csv"), - "num_records": 8, - "inferred_schema": { - "id": "integer", - "name": "string", - "valid": "boolean", - "code": "integer", - "degrees": "number", - "birthday": "string", - "last_seen": "string", - }, - "line_checks": {}, - "fails": [], - }, - "custom_csv_parameters": { - # tests custom CSV parameters (odd delimiter, quote_char, escape_char & newlines in values in the file) - "AbstractFileParser": CsvParser( - format={"filetype": "csv", "delimiter": "^", "quote_char": "|", "escape_char": "!", "newlines_in_values": True}, - master_schema={ - "id": "integer", - "name": "string", - "valid": "boolean", - "code": "integer", - "degrees": "number", - "birthday": "string", - "last_seen": "string", - }, - ), - "filepath": os.path.join(SAMPLE_DIRECTORY, "csv/test_file_2_params.csv"), - "num_records": 8, - "inferred_schema": { - "id": "integer", - "name": "string", - "valid": "boolean", - "code": "integer", - "degrees": "number", - "birthday": "string", - "last_seen": "string", - }, - "line_checks": {}, - "fails": [], - }, - "encoding_Big5": { - # tests encoding: Big5 - "AbstractFileParser": CsvParser( - format={"filetype": "csv", "encoding": "big5"}, master_schema={"id": "integer", "name": "string", "valid": "boolean"} - ), - "filepath": os.path.join(SAMPLE_DIRECTORY, "csv/test_file_3_enc_Big5.csv"), - "num_records": 8, - "inferred_schema": {"id": "integer", "name": "string", "valid": "boolean"}, - "line_checks": { - 3: { - "id": 3, - "name": "變形金剛,偽裝的機器人", - "valid": False, - } - }, - "fails": [], - }, - "encoding_Arabic_(Windows 1256)": { - # tests encoding: Arabic (Windows 1256) - "AbstractFileParser": CsvParser( - format={"filetype": "csv", "encoding": "windows-1256"}, - master_schema={"id": "integer", "notes": "string", "valid": "boolean"}, - ), - "filepath": os.path.join(SAMPLE_DIRECTORY, "csv/test_file_4_enc_Arabic.csv"), - "num_records": 2, - "inferred_schema": {"id": "integer", "notes": "string", "valid": "boolean"}, - "line_checks": { - 1: { - "id": 1, - "notes": "البايت الجوي هو الأفضل", - "valid": False, - } - }, - "fails": [], - }, - "compression_gzip": { - # tests compression: gzip - "AbstractFileParser": CsvParser( - format={"filetype": "csv"}, - master_schema={ - "id": "integer", - "name": "string", - "valid": "boolean", - "code": "integer", - "degrees": "number", - "birthday": "string", - "last_seen": "string", - }, - ), - "filepath": os.path.join(SAMPLE_DIRECTORY, "csv/test_file_5.csv.gz"), - "num_records": 8, - "inferred_schema": { - "id": "integer", - "name": "string", - "valid": "boolean", - "code": "integer", - "degrees": "number", - "birthday": "string", - "last_seen": "string", - }, - "line_checks": { - 7: { - "id": 7, - "name": "xZhh1Kyl", - "valid": False, - "code": 10, - "degrees": -9.2, - "birthday": "2021-07-14", - "last_seen": "2021-07-14 15:30:09.225145", - } - }, - "fails": [], - }, - "compression_bz2": { - # tests compression: bz2 - "AbstractFileParser": CsvParser( - format={"filetype": "csv"}, - master_schema={ - "id": "integer", - "name": "string", - "valid": "boolean", - "code": "integer", - "degrees": "number", - "birthday": "string", - "last_seen": "string", - }, - ), - "filepath": os.path.join(SAMPLE_DIRECTORY, "csv/test_file_7_bz2.csv.bz2"), - "num_records": 8, - "inferred_schema": { - "id": "integer", - "name": "string", - "valid": "boolean", - "code": "integer", - "degrees": "number", - "birthday": "string", - "last_seen": "string", - }, - "line_checks": { - 7: { - "id": 7, - "name": "xZhh1Kyl", - "valid": False, - "code": 10, - "degrees": -9.2, - "birthday": "2021-07-14", - "last_seen": "2021-07-14 15:30:09.225145", - } - }, - "fails": [], - }, - "extra_columns_in_master_schema": { - # tests extra columns in master schema - "AbstractFileParser": CsvParser( - format={"filetype": "csv"}, - master_schema={ - "EXTRA_COLUMN_1": "boolean", - "EXTRA_COLUMN_2": "number", - "id": "integer", - "name": "string", - "valid": "boolean", - "code": "integer", - "degrees": "number", - "birthday": "string", - "last_seen": "string", - }, - ), - "filepath": os.path.join(SAMPLE_DIRECTORY, "csv/test_file_1.csv"), - "num_records": 8, - "inferred_schema": { - "id": "integer", - "name": "string", - "valid": "boolean", - "code": "integer", - "degrees": "number", - "birthday": "string", - "last_seen": "string", - }, - "line_checks": {}, - "fails": [], - }, - "missing_columns_in_master_schema": { - # tests missing columns in master schema - # TODO: maybe this should fail read_records, but it does pick up all the columns from file despite missing from master schema - "AbstractFileParser": CsvParser(format={"filetype": "csv"}, master_schema={"id": "integer", "name": "string"}), - "filepath": os.path.join(SAMPLE_DIRECTORY, "csv/test_file_1.csv"), - "num_records": 8, - "inferred_schema": { - "id": "integer", - "name": "string", - "valid": "boolean", - "code": "integer", - "degrees": "number", - "birthday": "string", - "last_seen": "string", - }, - "line_checks": {}, - "fails": [], - }, - "empty_csv_file": { - # tests empty file, SHOULD FAIL INFER & STREAM RECORDS - "AbstractFileParser": CsvParser(format={"filetype": "csv"}, master_schema={}), - "filepath": os.path.join(SAMPLE_DIRECTORY, "csv/test_file_6_empty.csv"), - "num_records": 0, - "inferred_schema": {}, - "line_checks": {}, - "fails": ["test_get_inferred_schema", "test_stream_records"], - }, - "empty_advanced_options": { - "AbstractFileParser": CsvParser( - format={"filetype": "csv", "advanced_options": ""}, - master_schema={ - "id": "integer", - "name": "string", - "valid": "boolean", - "code": "integer", - "degrees": "number", - "birthday": "string", - "last_seen": "string", - }, - ), - "filepath": os.path.join(SAMPLE_DIRECTORY, "csv/test_file_1.csv"), - "num_records": 8, - "inferred_schema": { - "id": "integer", - "name": "string", - "valid": "boolean", - "code": "integer", - "degrees": "number", - "birthday": "string", - "last_seen": "string", - }, - "line_checks": {}, - "fails": [], - }, - "no_header_csv_file": { - # no header test - "AbstractFileParser": CsvParser( - format={ - "filetype": "csv", - "advanced_options": json.dumps( - {"column_names": ["id", "name", "valid", "code", "degrees", "birthday", "last_seen"]} - ), - }, - master_schema={}, - ), - "filepath": os.path.join(SAMPLE_DIRECTORY, "csv/test_file_8_no_header.csv"), - "num_records": 8, - "inferred_schema": { - "id": "integer", - "name": "string", - "valid": "boolean", - "code": "integer", - "degrees": "number", - "birthday": "string", - "last_seen": "string", - }, - "line_checks": {}, - "fails": [], - }, - } - - @memory_limit(20) - @pytest.mark.order(1) - def test_big_file(self) -> None: - """tests a big csv file (>= 1.5G records)""" - filepath = os.path.join(TMP_FOLDER, "big_csv_file." + self.filetype) - schema, file_size = generate_big_file(filepath, 0.1, 123) - expected_count = sum(1 for _ in open(filepath)) - 1 - self.logger.info(f"generated file {filepath} with size {file_size}Gb, lines: {expected_count}") - for _ in range(3): - parser = CsvParser( - format={"filetype": self.filetype, "block_size": 5 * 1024**2}, - master_schema=schema, - ) - expected_file = open(filepath, "r") - # skip the first header line - next(expected_file) - read_count = 0 - with smart_open(filepath, self._get_readmode({"AbstractFileParser": parser})) as f: - for record in parser.stream_records(f, FileInfo(key=filepath, size=file_size, last_modified=pendulum.now())): - record_line = ",".join("" if v is None else str(v) for v in record.values()) - expected_line = next(expected_file).strip("\n") - assert record_line == expected_line - read_count += 1 - assert read_count == expected_count - expected_file.close() - - @pytest.mark.parametrize( - "encoding, expectation", - ( - ("UTF8", does_not_raise()), - ("", does_not_raise()), - ("R2D2", pytest.raises(AirbyteTracedException)), - ) - ) - def test_encoding_validation(self, encoding, expectation) -> None: - parser = CsvParser(format=Mock(), master_schema=Mock()) - with expectation: - parser._validate_encoding(encoding) - - def test_stream_records_arrow_invalid_exception(self): - filepath = os.path.join(SAMPLE_DIRECTORY, "csv/test_file_with_invalid_delimiter.csv") - parser = CsvParser( - format={"filetype": "csv", "delimiter": ",", "newlines_in_values": False}, - master_schema={ - "id": "integer", - "name": "string", - "text": "string", - }, - ) - with smart_open(filepath, self._get_readmode({"AbstractFileParser": parser})) as f: - with pytest.raises(AirbyteTracedException) as e: - [record for record in parser.stream_records(f, FileInfo(key=filepath, size=1, last_modified=pendulum.now()))] - expected_message = "Unable to parse the csv file. Please check your format options. Please validate delimiter option, looks like some rows have delimiter symbol in its data so we receive more columns than expected." - assert expected_message == e.value.message diff --git a/airbyte-integrations/connectors/source-s3/unit_tests/test_jsonl_parser.py b/airbyte-integrations/connectors/source-s3/unit_tests/test_jsonl_parser.py deleted file mode 100644 index e6d409ce860e..000000000000 --- a/airbyte-integrations/connectors/source-s3/unit_tests/test_jsonl_parser.py +++ /dev/null @@ -1,179 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -import os -from pathlib import Path -from typing import Any, Mapping - -from source_s3.source_files_abstract.formats.jsonl_parser import JsonlParser - -from .abstract_test_parser import AbstractTestParser - -SAMPLE_DIRECTORY = Path(__file__).resolve().parent.joinpath("sample_files/") - - -class TestJsonlParser(AbstractTestParser): - @classmethod - def cases(cls) -> Mapping[str, Any]: - return { - "basic_normal_test": { - "AbstractFileParser": JsonlParser(format={"filetype": "jsonl"}), - "filepath": os.path.join(SAMPLE_DIRECTORY, "jsonl/test_file_1.jsonl"), - "num_records": 8, - "inferred_schema": { - "id": "integer", - "name": "string", - "valid": "boolean", - "code": "integer", - "degrees": "number", - "birthday": "string", - "last_seen": "string", - }, - "line_checks": {}, - "fails": [], - }, - "master_schema_test": { - "AbstractFileParser": JsonlParser( - format={"filetype": "jsonl"}, - master_schema={ - "id": "integer", - "name": "string", - "valid": "boolean", - "code": "integer", - "degrees": "number", - "birthday": "string", - "last_seen": "string", - }, - ), - "filepath": os.path.join(SAMPLE_DIRECTORY, "jsonl/test_file_1.jsonl"), - "num_records": 8, - "inferred_schema": { - "id": "integer", - "name": "string", - "valid": "boolean", - "code": "integer", - "degrees": "number", - "birthday": "string", - "last_seen": "string", - }, - "line_checks": {}, - "fails": [], - }, - "encoding_Big5": { - "AbstractFileParser": JsonlParser(format={"filetype": "jsonl"}), - "filepath": os.path.join(SAMPLE_DIRECTORY, "jsonl/test_file_2_enc_Big5.jsonl"), - "num_records": 8, - "inferred_schema": {"id": "integer", "name": "string", "valid": "boolean"}, - "line_checks": {}, - "fails": [], - }, - "encoding_Arabic_(Windows 1256)": { - "AbstractFileParser": JsonlParser(format={"filetype": "jsonl"}), - "filepath": os.path.join(SAMPLE_DIRECTORY, "jsonl/test_file_3_enc_Arabic.jsonl"), - "num_records": 2, - "inferred_schema": {"id": "integer", "notes": "string", "valid": "boolean"}, - "line_checks": {}, - "fails": [], - }, - "compression_gz": { - "AbstractFileParser": JsonlParser( - format={"filetype": "jsonl"}, - master_schema={ - "id": "integer", - "name": "string", - "valid": "boolean", - "code": "integer", - "degrees": "number", - "birthday": "string", - "last_seen": "string", - }, - ), - "filepath": os.path.join(SAMPLE_DIRECTORY, "jsonl/test_file_4.jsonl.gz"), - "num_records": 8, - "inferred_schema": { - "id": "integer", - "name": "string", - "valid": "boolean", - "code": "integer", - "degrees": "number", - "birthday": "string", - "last_seen": "string", - }, - "line_checks": { - 7: { - "id": 7, - "name": "xZhh1Kyl", - "valid": False, - "code": 10, - "degrees": -9.2, - "birthday": "2021-07-14", - "last_seen": "2021-07-14 15:30:09.225145", - } - }, - "fails": [], - }, - "extra_columns_in_master_schema": { - # tests extra columns in master schema - "AbstractFileParser": JsonlParser( - format={"filetype": "jsonl"}, - master_schema={ - "EXTRA_COLUMN_1": "boolean", - "EXTRA_COLUMN_2": "number", - "id": "integer", - "name": "string", - "valid": "boolean", - "code": "integer", - "degrees": "number", - "birthday": "string", - "last_seen": "string", - }, - ), - "filepath": os.path.join(SAMPLE_DIRECTORY, "jsonl/test_file_1.jsonl"), - "num_records": 8, - "inferred_schema": { - "id": "integer", - "name": "string", - "valid": "boolean", - "code": "integer", - "degrees": "number", - "birthday": "string", - "last_seen": "string", - }, - "line_checks": {}, - "fails": [], - }, - "missing_columns_in_master_schema": { - # tests missing columns in master schema - "AbstractFileParser": JsonlParser(format={"filetype": "jsonl"}, master_schema={"id": "integer", "name": "string"}), - "filepath": os.path.join(SAMPLE_DIRECTORY, "jsonl/test_file_1.jsonl"), - "num_records": 8, - "inferred_schema": { - "id": "integer", - "name": "string", - "valid": "boolean", - "code": "integer", - "degrees": "number", - "birthday": "string", - "last_seen": "string", - }, - "line_checks": {}, - "fails": [], - }, - "nested_json_test": { - "AbstractFileParser": JsonlParser(format={"filetype": "jsonl"}), - "filepath": os.path.join(SAMPLE_DIRECTORY, "jsonl/test_file_10_nested_structure.jsonl"), - "num_records": 2, - "inferred_schema": {"meta": "object", "payload": "object"}, - "line_checks": {}, - "fails": [], - }, - "array_in_schema_test": { - "AbstractFileParser": JsonlParser(format={"filetype": "jsonl"}), - "filepath": os.path.join(SAMPLE_DIRECTORY, "jsonl/test_file_11_array_in_schema.jsonl"), - "num_records": 3, - "inferred_schema": {"id": "integer", "name": "string", "books": "array"}, - "line_checks": {}, - "fails": [], - }, - } diff --git a/airbyte-integrations/connectors/source-s3/unit_tests/test_parquet_parser.py b/airbyte-integrations/connectors/source-s3/unit_tests/test_parquet_parser.py deleted file mode 100644 index 2ca23020c7f8..000000000000 --- a/airbyte-integrations/connectors/source-s3/unit_tests/test_parquet_parser.py +++ /dev/null @@ -1,253 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -import bz2 -import copy -import gzip -import os -import shutil -from pathlib import Path -from typing import Any, List, Mapping - -import pandas as pd -import pyarrow as pa -import pyarrow.parquet as pq -import pytest -from source_s3.source_files_abstract.formats.parquet_parser import PARQUET_TYPES, ParquetParser - -from .abstract_test_parser import AbstractTestParser -from .conftest import TMP_FOLDER - -SAMPLE_DIRECTORY = Path(__file__).resolve().parent.joinpath("sample_files/") - - -def compress(archive_name: str, filename: str) -> str: - compress_filename = f"{filename}.{archive_name}" - with open(filename, "rb") as f_in: - if archive_name == "gz": - with gzip.open(compress_filename, "wb") as f_out: - shutil.copyfileobj(f_in, f_out) - elif archive_name == "bz2": - with bz2.open(compress_filename, "wb") as f_out: # type: ignore[assignment] - shutil.copyfileobj(f_in, f_out) - return compress_filename - - -class TestParquetParser(AbstractTestParser): - filetype = "parquet" - record_types = PARQUET_TYPES - - @classmethod - def generate_parquet_file( - cls, name: str, columns: Mapping[str, str], num_rows: int, custom_rows: Mapping[int, List[str]] = None - ) -> str: - """Generates a random data and save it to a tmp file""" - filename = os.path.join(TMP_FOLDER, name + "." + cls.filetype) - - pq_writer = None - types = list(columns.values()) if num_rows else [] - custom_rows = custom_rows or {} - column_names = list(columns.keys()) - buffer = [] - for i in range(num_rows): - buffer.append(custom_rows.get(i) or cls._generate_row(types)) - if i != (num_rows - 1) and len(buffer) < 100: - continue - data = {col_values[0]: list(col_values[1:]) for col_values in zip(column_names, *buffer)} - buffer = [] - df = pd.DataFrame(data) - table = pa.Table.from_pandas(df) - if not pq_writer: - pq_writer = pq.ParquetWriter(filename, table.schema) - pq_writer.write_table(table, row_group_size=100) - - if not pq_writer: - pq.write_table(pa.Table.from_arrays([]), filename) - return filename - - @classmethod - def cases(cls) -> Mapping[str, Any]: - schema = { - "id": "integer", - "name": "string", - "valid": "boolean", - "code": "integer", - "degrees": "number", - "birthday": "string", - "last_seen": "string", - "salary": "decimal", - "created_at": "timestamp", - "created_date_at": "date", - "created_time_at": "time", - } - # datetime => string type - - master_schema = {k: ParquetParser.parse_field_type(needed_logical_type=v)[0] for k, v in schema.items()} - cases = {} - # basic 'normal' test - num_records = 10 - params = {"filetype": cls.filetype} - cases["basic_normal_test"] = { - "AbstractFileParser": ParquetParser(format=params, master_schema=master_schema), - "filepath": cls.generate_parquet_file("normal_test", schema, num_records), - "num_records": num_records, - "inferred_schema": master_schema, - "line_checks": {}, - "fails": [], - } - # tests custom Parquet parameters (row_groups, batch_size etc) - params = { - "filetype": cls.filetype, - "buffer_size": 1024, - "columns": ["id", "name", "last_seen"], - } - num_records = 100 - cases["custom_parquet_parameters"] = { - "filepath": cls.generate_parquet_file("normal_params_test", schema, num_records), - "num_records": num_records, - "AbstractFileParser": ParquetParser( - format=params, - master_schema=master_schema, - ), - "inferred_schema": master_schema, - "line_checks": {}, - "fails": [], - } - - # tests a big parquet file (100K records) - params = { - "filetype": cls.filetype, - "batch_size": 200, - "use_threads": False, - } - num_records = 100000 - - cases["big_parquet_file"] = { - "filepath": cls.generate_parquet_file("big_parquet_file", schema, num_records), - "num_records": num_records, - "AbstractFileParser": ParquetParser( - format=params, - master_schema=master_schema, - ), - "inferred_schema": master_schema, - "line_checks": {}, - "fails": [], - } - - # extra columns in master schema - params = {"filetype": cls.filetype} - num_records = 10 - extra_schema = copy.deepcopy(master_schema) - extra_schema.update( - { - "extra_id": "integer", - "extra_name": "string", - } - ) - cases["extra_columns_in_master_schema"] = { - "filepath": cls.generate_parquet_file("normal_test", schema, num_records), - "num_records": num_records, - "AbstractFileParser": ParquetParser( - format=params, - master_schema=extra_schema, - ), - "inferred_schema": master_schema, - "line_checks": {}, - "fails": [], - } - - # tests missing columns in master schema - params = {"filetype": cls.filetype} - num_records = 10 - simplified_schema = copy.deepcopy(master_schema) - simplified_schema.pop("id") - simplified_schema.pop("name") - - cases["tests_missing_columns_in_master_schema"] = { - "filepath": cls.generate_parquet_file("normal_test", schema, num_records), - "num_records": num_records, - "AbstractFileParser": ParquetParser( - format=params, - master_schema=simplified_schema, - ), - "inferred_schema": master_schema, - "line_checks": {}, - "fails": [], - } - - # tests empty file, SHOULD FAIL INFER & STREAM RECORDS - num_records = 0 - cases["empty_file"] = { - "filepath": cls.generate_parquet_file("empty_file", schema, num_records), - "num_records": num_records, - "AbstractFileParser": ParquetParser( - format=params, - master_schema={}, - ), - "inferred_schema": master_schema, - "line_checks": {}, - "fails": ["test_get_inferred_schema", "test_stream_records"], - } - - # check one record - params = {"filetype": cls.filetype} - num_records = 20 - test_record = { - "id": 7, - "name": cls._generate_value("string"), - "valid": False, - "code": 10, - "degrees": -9.2, - "birthday": cls._generate_value("string"), - "last_seen": cls._generate_value("string"), - "salary": cls._generate_value("decimal"), - "created_at": cls._generate_value("timestamp"), - "created_date_at": cls._generate_value("date"), - "created_time_at": cls._generate_value("time"), - } - - expected_record = copy.deepcopy(test_record) - expected_record["salary"] = ParquetParser.convert_field_data("decimal", expected_record["salary"]) - expected_record["created_date_at"] = ParquetParser.convert_field_data("date", expected_record["created_date_at"]) - expected_record["created_time_at"] = ParquetParser.convert_field_data("time", expected_record["created_time_at"]) - expected_record["created_at"] = ParquetParser.convert_field_data("timestamp", expected_record["created_at"]) - - cases["check_one_record"] = { - "filepath": cls.generate_parquet_file("check_one_record", schema, num_records, custom_rows={7: list(test_record.values())}), - "num_records": num_records, - "AbstractFileParser": ParquetParser( - format=params, - master_schema=master_schema, - ), - "inferred_schema": master_schema, - "line_checks": {8: expected_record}, - "fails": [], - } - - # tests compression: gzip - num_records = 10 - for archive_type in ["gz", "bz2"]: - cases[f"compression_{archive_type}"] = { - "filepath": compress( - archive_type, - cls.generate_parquet_file("compression_test", schema, num_records, custom_rows={7: list(test_record.values())}), - ), - "num_records": num_records, - "AbstractFileParser": ParquetParser( - format=params, - master_schema=master_schema, - ), - "inferred_schema": master_schema, - "line_checks": {8: expected_record}, - "fails": [], - } - return cases - - def test_parse_field_type(self): - with pytest.raises(TypeError): - assert ParquetParser.parse_field_type(needed_logical_type="", need_physical_type="") - - def test_convert_field_data(self): - with pytest.raises(TypeError): - ParquetParser.convert_field_data(logical_type="", field_value="") diff --git a/airbyte-integrations/connectors/source-s3/unit_tests/test_s3file.py b/airbyte-integrations/connectors/source-s3/unit_tests/test_s3file.py deleted file mode 100644 index 4f9501c68220..000000000000 --- a/airbyte-integrations/connectors/source-s3/unit_tests/test_s3file.py +++ /dev/null @@ -1,46 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - - -from typing import Mapping -from unittest.mock import MagicMock - -import pytest -import smart_open -from airbyte_cdk import AirbyteLogger -from source_s3.s3file import S3File - -LOGGER = AirbyteLogger() - - -class TestS3File: - @pytest.mark.parametrize( # passing in full provider to emulate real usage (dummy values are unused by func) - "provider, return_true", - [ - ({"storage": "S3", "bucket": "dummy", "aws_access_key_id": "id", "aws_secret_access_key": "key", "path_prefix": "dummy"}, True), - ({"storage": "S3", "bucket": "dummy", "aws_access_key_id": None, "aws_secret_access_key": None, "path_prefix": "dummy"}, False), - ({"storage": "S3", "bucket": "dummy", "path_prefix": "dummy"}, False), - ({"storage": "S3", "bucket": "dummy", "aws_access_key_id": "id", "aws_secret_access_key": None, "path_prefix": "dummy"}, False), - ( - {"storage": "S3", "bucket": "dummy", "aws_access_key_id": None, "aws_secret_access_key": "key", "path_prefix": "dummy"}, - False, - ), - ({"storage": "S3", "bucket": "dummy", "aws_access_key_id": "id", "path_prefix": "dummy"}, False), - ({"storage": "S3", "bucket": "dummy", "aws_secret_access_key": "key", "path_prefix": "dummy"}, False), - ], - ) - def test_use_aws_account(self, provider: Mapping[str, str], return_true: bool) -> None: - assert S3File.use_aws_account(provider) is return_true - - @pytest.mark.parametrize( # passing in full provider to emulate real usage (dummy values are unused by func) - "provider", - [ - ({"storage": "S3", "bucket": "dummy", "aws_access_key_id": "id", "aws_secret_access_key": "key", "path_prefix": "dummy"}), - ({"storage": "S3", "bucket": "dummy", "aws_access_key_id": None, "aws_secret_access_key": None, "path_prefix": "dummy"}), - ], - ) - def test_s3_file_contextmanager(self, provider): - smart_open.open = MagicMock() - with S3File(file_info=MagicMock(), provider=provider).open("rb") as s3_file: - assert s3_file diff --git a/airbyte-integrations/connectors/source-s3/unit_tests/test_source.py b/airbyte-integrations/connectors/source-s3/unit_tests/test_source.py deleted file mode 100644 index b2862a486526..000000000000 --- a/airbyte-integrations/connectors/source-s3/unit_tests/test_source.py +++ /dev/null @@ -1,118 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -import json -from unittest.mock import MagicMock, patch - -import pytest -from airbyte_cdk.logger import AirbyteLogger -from airbyte_cdk.models import ConnectorSpecification -from airbyte_cdk.utils.traced_exception import AirbyteTracedException -from source_s3 import SourceS3 -from source_s3.source_files_abstract.spec import SourceFilesAbstractSpec - -logger = AirbyteLogger() - - -def test_transform_backslash_t_to_tab(tmp_path): - config_file = tmp_path / "config.json" - with open(config_file, "w") as fp: - json.dump({"format": {"delimiter": "\\t"}}, fp) - source = SourceS3() - config = source.read_config(config_file) - assert config["format"]["delimiter"] == "\t" - - -def test_check_connection_empty_config(): - config = {} - ok, error_msg = SourceS3().check_connection(logger, config=config) - - assert not ok - assert error_msg - - -def test_check_connection_exception(config): - ok, error_msg = SourceS3().check_connection(logger, config=config) - - assert not ok - assert error_msg - - -@pytest.mark.parametrize( - "delimiter, quote_char, escape_char, encoding, read_options, convert_options", - [ - ("string", "'", None, "utf8", "{}", "{}"), - ("\n", "'", None, "utf8", "{}", "{}"), - (",", ";,", None, "utf8", "{}", "{}"), - (",", "'", "escape", "utf8", "{}", "{}"), - (",", "'", None, "utf888", "{}", "{}"), - (",", "'", None, "utf8", "{'compression': true}", "{}"), - (",", "'", None, "utf8", "{}", "{'compression: true}"), - ], - ids=[ - "long_delimiter", - "forbidden_delimiter_symbol", - "long_quote_char", - "long_escape_char", - "unknown_encoding", - "invalid read options", - "invalid convert options" - ], -) -def test_check_connection_csv_validation_exception(delimiter, quote_char, escape_char, encoding, read_options, convert_options): - config = { - "dataset": "test", - "provider": { - "storage": "S3", - "bucket": "test-source-s3", - "aws_access_key_id": "key_id", - "aws_secret_access_key": "access_key", - "path_prefix": "" - }, - "path_pattern": "simple_test*.csv", - "schema": "{}", - "format": { - "filetype": "csv", - "delimiter": delimiter, - "quote_char": quote_char, - "escape_char": escape_char, - "encoding": encoding, - "advanced_options": read_options, - "additional_reader_options": convert_options - } - } - ok, error_msg = SourceS3().check_connection(logger, config=config) - - assert not ok - assert error_msg - assert isinstance(error_msg, AirbyteTracedException) - - -def test_check_connection(config): - instance = SourceS3() - with patch.object(instance.stream_class, "filepath_iterator", MagicMock()): - ok, error_msg = instance.check_connection(logger, config=config) - - assert not ok - assert error_msg - - -def test_streams(config): - instance = SourceS3() - assert len(instance.streams(config)) == 1 - - -def test_spec(): - spec = SourceS3().spec() - - assert isinstance(spec, ConnectorSpecification) - - -def test_check_provider_added(): - with pytest.raises(Exception): - SourceFilesAbstractSpec.check_provider_added({"properties": []}) - - -def test_change_format_to_oneOf(): - assert SourceFilesAbstractSpec.change_format_to_oneOf({"properties": {"format": {"oneOf": ""}}}) diff --git a/airbyte-integrations/connectors/source-s3/unit_tests/test_stream.py b/airbyte-integrations/connectors/source-s3/unit_tests/test_stream.py deleted file mode 100644 index 032808b526bb..000000000000 --- a/airbyte-integrations/connectors/source-s3/unit_tests/test_stream.py +++ /dev/null @@ -1,737 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -from datetime import datetime, timezone -from typing import Any, Dict, List, Mapping -from unittest.mock import MagicMock, patch - -import pytest -from airbyte_cdk import AirbyteLogger -from airbyte_cdk.models import SyncMode -from source_s3.source_files_abstract.file_info import FileInfo -from source_s3.source_files_abstract.storagefile import StorageFile -from source_s3.source_files_abstract.stream import IncrementalFileStream -from source_s3.stream import IncrementalFileStreamS3 - -from .abstract_test_parser import create_by_local_file, memory_limit - -LOGGER = AirbyteLogger() - - -def mock_big_size_object(): - mock = MagicMock() - mock.__sizeof__.return_value = 1000000001 - mock.items = lambda: [("2023-08-01", ["file1.txt", "file2.txt"])] - return mock - - -class TestIncrementalFileStream: - @pytest.mark.parametrize( # set return_schema to None for an expected fail - "schema_string, return_schema", - [ - ( - '{"id": "integer", "name": "string", "valid": "boolean", "code": "integer", "degrees": "number", "birthday": ' - '"string", "last_seen": "string"}', - { - "id": "integer", - "name": "string", - "valid": "boolean", - "code": "integer", - "degrees": "number", - "birthday": "string", - "last_seen": "string", - }, - ), - ('{"single_column": "boolean"}', {"single_column": "boolean"}), - (r"{}", {}), - ('{this isn\'t right: "integer"}', None), # invalid json - ('[ {"a":"b"} ]', None), # array instead of object - ('{"a": "boolean", "b": {"string": "integer"}}', None), # object as a value - ('{"a": ["boolean", "string"], "b": {"string": "integer"}}', None), # array and object as values - ('{"a": "integer", "b": "NOT A REAL DATATYPE"}', None), # incorrect datatype - ('{"a": "NOT A REAL DATATYPE", "b": "ANOTHER FAKE DATATYPE"}', None), # multiple incorrect datatypes - ], - ) - @memory_limit(512) - def test_parse_user_input_schema(self, schema_string: str, return_schema: str) -> None: - if return_schema is not None: - assert str(IncrementalFileStream._parse_user_input_schema(schema_string)) == str(return_schema) - else: - with pytest.raises(Exception) as e_info: - IncrementalFileStream._parse_user_input_schema(schema_string) - LOGGER.debug(str(e_info)) - - @pytest.mark.parametrize( # set expected_return_record to None for an expected fail - "extra_map, record, expected_return_record", - [ - ( # one extra field - {"friend": "Frodo"}, - {"id": "1", "first_name": "Samwise", "last_name": "Gamgee"}, - {"id": "1", "first_name": "Samwise", "last_name": "Gamgee", "friend": "Frodo"}, - ), - ( # multiple extra fields - {"friend": "Frodo", "enemy": "Gollum", "loves": "PO-TAY-TOES"}, - {"id": "1", "first_name": "Samwise", "last_name": "Gamgee"}, - {"id": "1", "first_name": "Samwise", "last_name": "Gamgee", "friend": "Frodo", "enemy": "Gollum", "loves": "PO-TAY-TOES"}, - ), - ( # empty extra_map - {}, - {"id": "1", "first_name": "Samwise", "last_name": "Gamgee"}, - {"id": "1", "first_name": "Samwise", "last_name": "Gamgee"}, - ), - ], - ids=["one_extra_field", "multiple_extra_fields", "empty_extra_map"], - ) - @patch( - "source_s3.source_files_abstract.stream.IncrementalFileStream.__abstractmethods__", set() - ) # patching abstractmethods to empty set so we can instantiate ABC to test - @memory_limit(512) - def test_add_extra_fields_from_map( - self, extra_map: Mapping[str, Any], record: Dict[str, Any], expected_return_record: Mapping[str, Any] - ) -> None: - fs = IncrementalFileStream(dataset="dummy", provider={}, format={}, path_pattern="") - if expected_return_record is not None: - assert fs._add_extra_fields_from_map(record, extra_map) == expected_return_record - else: - with pytest.raises(Exception) as e_info: - fs._add_extra_fields_from_map(record, extra_map) - LOGGER.debug(str(e_info)) - - @pytest.mark.parametrize( - "patterns, filepaths, expected_filepaths", - [ - ( # 'everything' case - "**", - [ - "file.csv", - "file.parquet", - "folder/file.csv", - "folder/file.parquet", - "folder/nested/file.csv", - "folder/nested/file.parquet", - "a/b/c/d/e/f/file", - ], - [ - "file.csv", - "file.parquet", - "folder/file.csv", - "folder/file.parquet", - "folder/nested/file.csv", - "folder/nested/file.parquet", - "a/b/c/d/e/f/file", - ], - ), - ( # specific filetype only - "**/*.csv", - [ - "file.csv", - "file.parquet", - "folder/file.csv", - "folder/file.parquet", - "folder/nested/file.csv", - "folder/nested/file.parquet", - "a/b/c/d/e/f/file", - ], - ["file.csv", "folder/file.csv", "folder/nested/file.csv"], - ), - ( # specific filetypes only - "**/*.csv|**/*.parquet", - [ - "file.csv", - "file.parquet", - "folder/file.csv", - "folder/file.parquet", - "folder/nested/file.csv", - "folder/nested/file.parquet", - "a/b/c/d/e/f/file", - ], - [ - "file.csv", - "file.parquet", - "folder/file.csv", - "folder/file.parquet", - "folder/nested/file.csv", - "folder/nested/file.parquet", - ], - ), - ( # 'everything' only 1 level deep - "*/*", - [ - "file.csv", - "file.parquet", - "folder/file.csv", - "folder/file.parquet", - "folder/nested/file.csv", - "folder/nested/file.parquet", - "a/b/c/d/e/f/file", - ], - ["folder/file.csv", "folder/file.parquet"], - ), - ( # 'everything' at least 1 level deep - "*/**", - [ - "file.csv", - "file.parquet", - "folder/file.csv", - "folder/file.parquet", - "folder/nested/file.csv", - "folder/nested/file.parquet", - "a/b/c/d/e/f/file", - ], - ["folder/file.csv", "folder/file.parquet", "folder/nested/file.csv", "folder/nested/file.parquet", "a/b/c/d/e/f/file"], - ), - ( # 'everything' at least 3 levels deep - "*/*/*/**", - [ - "file.csv", - "file.parquet", - "folder/file.csv", - "folder/file.parquet", - "folder/nested/file.csv", - "folder/nested/file.parquet", - "a/b/c/d/e/f/file", - ], - ["a/b/c/d/e/f/file"], - ), - ( # specific filetype at least 1 level deep - "*/**/*.csv", - [ - "file.csv", - "file.parquet", - "folder/file.csv", - "folder/file.parquet", - "folder/nested/file.csv", - "folder/nested/file.parquet", - "a/b/c/d/e/f/file", - ], - ["folder/file.csv", "folder/nested/file.csv"], - ), - ( # 'everything' with specific filename (any filetype) - "**/file.*|**/file", - [ - "NOT_THIS_file.csv", - "folder/NOT_THIS_file.csv", - "file.csv", - "file.parquet", - "folder/file.csv", - "folder/file.parquet", - "folder/nested/file.csv", - "folder/nested/file.parquet", - "a/b/c/d/e/f/file", - ], - [ - "file.csv", - "file.parquet", - "folder/file.csv", - "folder/file.parquet", - "folder/nested/file.csv", - "folder/nested/file.parquet", - "a/b/c/d/e/f/file", - ], - ), - ( # specific dir / any dir / specific dir / any file - "folder/*/files/*", - [ - "file.csv", - "folder/file.csv", - "wrongfolder/xyz/files/1", - "a/b/c/d/e/f/file", - "folder/abc/files/1", - "folder/abc/logs/1", - "folder/xyz/files/1", - ], - ["folder/abc/files/1", "folder/xyz/files/1"], - ), - ( # specific file prefix and filetype, anywhere - "**/prefix*.csv", - [ - "file.csv", - "prefix-file.parquet", - "prefix-file.csv", - "folder/file.parquet", - "folder/nested/prefixmylovelyfile.csv", - "folder/nested/prefix-file.parquet", - ], - ["prefix-file.csv", "folder/nested/prefixmylovelyfile.csv"], - ), - ], - ids=[ - "everything case", - "specific filetype only", - "specific filetypes only", - "everything only 1 level deep", - "everything at least 1 level deep", - "everything at least 3 levels deep", - "specific filetype at least 1 level deep", - "everything with specific filename (any filetype)", - "specific dir / any dir / specific dir / any file", - "specific file prefix and filetype, anywhere", - ], - ) - @patch( - "source_s3.source_files_abstract.stream.IncrementalFileStream.__abstractmethods__", set() - ) # patching abstractmethods to empty set so we can instantiate ABC to test - @memory_limit(512) - def test_pattern_matched_filepath_iterator(self, patterns: str, filepaths: List[str], expected_filepaths: List[str]) -> None: - fs = IncrementalFileStream(dataset="dummy", provider={}, format={}, path_pattern=patterns) - file_infos = [create_by_local_file(filepath) for filepath in filepaths] - assert set([p.key for p in fs.pattern_matched_filepath_iterator(file_infos)]) == set(expected_filepaths) - - @pytest.mark.parametrize( - "latest_record, current_stream_state, expected", - [ - ( # overwrite history file - {"id": 1, "_ab_source_file_last_modified": "2022-05-11T11:54:11Z", "_ab_source_file_url": "new_test_file.csv"}, - {"_ab_source_file_last_modified": "2021-07-25T15:33:04Z", "history": {"2021-07-25": {"old_test_file.csv"}}}, - {"2022-05-11": {"new_test_file.csv"}}, - ), - ( # add file to same day - {"id": 1, "_ab_source_file_last_modified": "2022-07-25T11:54:11Z", "_ab_source_file_url": "new_test_file.csv"}, - {"_ab_source_file_last_modified": "2022-07-25T00:00:00Z", "history": {"2022-07-25": {"old_test_file.csv"}}}, - {"2022-07-25": {"new_test_file.csv", "old_test_file.csv"}}, - ), - ( # add new day to history - {"id": 1, "_ab_source_file_last_modified": "2022-07-03T11:54:11Z", "_ab_source_file_url": "new_test_file.csv"}, - {"_ab_source_file_last_modified": "2022-07-01T00:00:00Z", "history": {"2022-07-01": {"old_test_file.csv"}}}, - {"2022-07-01": {"old_test_file.csv"}, "2022-07-03": {"new_test_file.csv"}}, - ), - ( # history size limit reached - {"_ab_source_file_url": "test.csv"}, - {"_ab_source_file_last_modified": "2022-07-01T00:00:00Z", "history": mock_big_size_object()}, - None, - ), - ], - ids=["overwrite_history_file", "add_file_to_same_day ", "add_new_day_to_history", "history_size_limit_reached"], - ) - @patch( - "source_s3.source_files_abstract.stream.IncrementalFileStream.__abstractmethods__", set() - ) # patching abstractmethods to empty set so we can instantiate ABC to test - def test_get_updated_history(self, latest_record, current_stream_state, expected, request) -> None: - fs = IncrementalFileStream(dataset="dummy", provider={}, format={"filetype": "csv"}, path_pattern="**/prefix*.csv") - fs._get_schema_map = MagicMock(return_value={}) - assert fs.get_updated_state(current_stream_state, latest_record).get("history") == expected - - if request.node.callspec.id == "history_size_limit_reached": - assert fs.sync_all_files_always - - @pytest.mark.parametrize( # set expected_return_record to None for an expected fail - "stream_state, expected_error", - [ - (None, False), - ({"_ab_source_file_last_modified": "2021-07-25T15:33:04Z"}, False), - ({"_ab_source_file_last_modified": "2021-07-25T15:33:04Z"}, False), - ({"_ab_source_file_last_modified": "2021-07-25"}, True), - ], - ) - @patch( - "source_s3.source_files_abstract.stream.IncrementalFileStream.__abstractmethods__", set() - ) # patching abstractmethods to empty set so we can instantiate ABC to test - def test_get_datetime_from_stream_state(self, stream_state, expected_error): - if not expected_error: - assert isinstance( - IncrementalFileStream( - dataset="dummy", provider={"bucket": "test-test"}, format={}, path_pattern="**/prefix*.csv" - )._get_datetime_from_stream_state(stream_state=stream_state), - datetime, - ) - else: - with pytest.raises(Exception): - assert isinstance( - IncrementalFileStream( - dataset="dummy", provider={"bucket": "test-test"}, format={}, path_pattern="**/prefix*.csv" - )._get_datetime_from_stream_state(stream_state=stream_state), - datetime, - ) - - def test_read(self): - stream_instance = IncrementalFileStreamS3( - dataset="dummy", provider={"bucket": "test-test"}, format={}, path_pattern="**/prefix*.csv" - ) - stream_instance.filepath_iterator = MagicMock() - - records = [] - slices = stream_instance.stream_slices(sync_mode=SyncMode.full_refresh) - for slice in slices: - records.extend( - list( - stream_instance.read_records( - stream_slice=slice, - sync_mode=SyncMode.full_refresh, - stream_state={"_ab_source_file_last_modified": "1999-01-01T00:00:00Z"}, - ) - ) - ) - - assert not records - - @patch( - "source_s3.source_files_abstract.stream.StorageFile.__abstractmethods__", set() - ) # patching abstractmethods to empty set so we can instantiate ABC to test - def test_storage_file(self): - size = 1 - date = datetime.now() - file_info = FileInfo(key="", size=size, last_modified=date) - assert StorageFile(file_info=file_info, provider={}).last_modified == date - assert StorageFile(file_info=file_info, provider={}).file_size == size - assert file_info.size_in_megabytes == size / 1024**2 - assert file_info.__str__() - assert file_info.__repr__() - assert file_info == file_info - assert not file_info < file_info - - def test_incremental_read(self): - stream_instance = IncrementalFileStreamS3( - dataset="dummy", provider={"bucket": "test-test"}, format={}, path_pattern="**/prefix*.csv" - ) - stream_instance.filepath_iterator = MagicMock() - - records = [] - slices = stream_instance.stream_slices(sync_mode=SyncMode.incremental, stream_state={}) - - for slice in slices: - records.extend(list(stream_instance.read_records(stream_slice=slice, sync_mode=SyncMode.incremental))) - - assert not records - - def test_fileformatparser_map(self): - stream_instance = IncrementalFileStreamS3( - dataset="dummy", provider={"bucket": "test-test"}, format={}, path_pattern="**/prefix*.csv" - ) - assert stream_instance.file_formatparser_map - - @pytest.mark.parametrize( - ("bucket", "path_prefix", "list_v2_objects", "expected_file_info"), - ( - ( # two files in the first response, one in the second - "test_bucket", - "/widescreen", - [ - { - "Contents": [ - {"Key": "Key_A", "Size": 2048, "LastModified": datetime(2020, 2, 20, 20, 0, 2, tzinfo=timezone.utc)}, - {"Key": "Key_B", "Size": 1024, "LastModified": datetime(2020, 2, 20, 20, 22, 2, tzinfo=timezone.utc)}, - ], - "NextContinuationToken": "token", - }, - {"Contents": [{"Key": "Key_C", "Size": 512, "LastModified": datetime(2022, 2, 2, 2, 2, 2, tzinfo=timezone.utc)}]}, - ], - [ - FileInfo(key="Key_A", size=2048, last_modified=datetime(2020, 2, 20, 20, 0, 2, tzinfo=timezone.utc)), - FileInfo(key="Key_B", size=1024, last_modified=datetime(2020, 2, 20, 20, 22, 2, tzinfo=timezone.utc)), - FileInfo(key="Key_C", size=512, last_modified=datetime(2022, 2, 2, 2, 2, 2, tzinfo=timezone.utc)), - ], - ), - ("another_test_bucket", "/fullscreen", [{}], []), # empty response - ( # some keys are not accepted - "almost_real_test_bucket", - "/HD", - [ - { - "Contents": [ - {"Key": "file/path", "Size": 2048, "LastModified": datetime(2020, 2, 20, 20, 0, 2, tzinfo=timezone.utc)}, - {"Key": "file/path/A/", "Size": 1024, "LastModified": datetime(2020, 2, 20, 20, 22, 2, tzinfo=timezone.utc)}, - ], - "NextContinuationToken": "token", - }, - {"Contents": [{"Key": "file/path/B/", "Size": 512, "LastModified": datetime(2022, 2, 2, 2, 2, 2, tzinfo=timezone.utc)}]}, - ], - [ - FileInfo(key="file/path", size=2048, last_modified=datetime(2020, 2, 20, 20, 0, 2, tzinfo=timezone.utc)), - ], - ), - ), - ) - def test_filepath_iterator(self, bucket, path_prefix, list_v2_objects, expected_file_info): - provider = {"aws_access_key_id": "key_id", "aws_secret_access_key": "access_key"} - s3_client_mock = MagicMock(return_value=MagicMock(list_objects_v2=MagicMock(side_effect=list_v2_objects))) - with patch("source_s3.stream.make_s3_client", s3_client_mock): - stream_instance = IncrementalFileStreamS3( - dataset="dummy", - provider={"bucket": bucket, "path_prefix": path_prefix, **provider}, - format={}, - path_pattern="**/prefix*.png", - ) - expected_info = iter(expected_file_info) - - for file_info in stream_instance.filepath_iterator(): - assert file_info == next(expected_info) - - @pytest.mark.parametrize( - ("start_date", "bucket", "path_prefix", "list_v2_objects", "expected_files_count"), - ( - ("2021-01-01T00:00:00Z", - "test_bucket", - "/widescreen", - [ - { - "Contents": [ - {"Key": "Key_A", "Size": 2048, - "LastModified": datetime(2020, 2, 20, 20, 0, 2, tzinfo=timezone.utc)}, - {"Key": "Key_B", "Size": 1024, - "LastModified": datetime(2020, 2, 20, 20, 22, 2, tzinfo=timezone.utc)}, - ], - "NextContinuationToken": "token", - }, - {"Contents": [{"Key": "Key_C", "Size": 512, - "LastModified": datetime(2022, 2, 2, 2, 2, 2, tzinfo=timezone.utc)}]}, - ], - 1, - ), - ("2023-01-01T00:00:00Z", - "almost_real_test_bucket", - "/HD", - [ - { - "Contents": [ - {"Key": "file/path", "Size": 2048, - "LastModified": datetime(2020, 2, 20, 20, 0, 2, tzinfo=timezone.utc)}, - {"Key": "file/path/A/", "Size": 1024, - "LastModified": datetime(2020, 2, 20, 20, 22, 2, tzinfo=timezone.utc)}, - ], - "NextContinuationToken": "token", - }, - {"Contents": [{"Key": "file/path/B/", "Size": 512, - "LastModified": datetime(2022, 2, 2, 2, 2, 2, tzinfo=timezone.utc)}]}, - ], - 0, - ), - ), - ) - def test_filepath_iterator_date_filter(self, start_date, bucket, path_prefix, list_v2_objects, expected_files_count): - provider = {"aws_access_key_id": "key_id", "aws_secret_access_key": "access_key"} - s3_client_mock = MagicMock(return_value=MagicMock(list_objects_v2=MagicMock(side_effect=list_v2_objects))) - with patch("source_s3.stream.make_s3_client", s3_client_mock): - stream_instance = IncrementalFileStreamS3( - dataset="dummy", - provider={"bucket": bucket, "path_prefix": path_prefix, "start_date":start_date, **provider}, - format={}, - path_pattern="**/prefix*.png" - ) - assert len(list(stream_instance.filepath_iterator())) == expected_files_count - - def test_get_schema(self): - stream_instance = IncrementalFileStreamS3( - dataset="dummy", - provider={}, - format={"filetype": "csv"}, - schema="{\"column_A\": \"string\", \"column_B\": \"integer\", \"column_C\": \"boolean\"}", - path_pattern="**/prefix*.csv" - ) - assert stream_instance._schema == { - "_ab_source_file_last_modified": {"type": "string"}, - "_ab_source_file_url": {"type": "string"}, - "column_A": "string", - "column_B": "integer", - "column_C": "boolean", - } - - @pytest.mark.parametrize( - ("file_type", "error_expected"), - ( - ( - "csv", - False, - ), - ("avro", False), - ("parquet", False), - ("png", True), - ), - ) - def test_fileformatparser_class(self, file_type, error_expected): - stream_instance = IncrementalFileStreamS3( - dataset="dummy", provider={}, format={"filetype": file_type}, schema={}, path_pattern="**/prefix*.csv" - ) - if error_expected: - with pytest.raises(RuntimeError): - _ = stream_instance.fileformatparser_class - else: - assert stream_instance.fileformatparser_class - - def test_get_json_schema(self): - stream_instance = IncrementalFileStreamS3( - dataset="dummy", - provider={}, - format={"filetype": "csv"}, - schema="{\"column_A\": \"string\", \"column_B\": \"integer\", \"column_C\": \"boolean\"}", - path_pattern="**/prefix*.csv" - ) - assert stream_instance.get_json_schema() == { - "properties": { - "_ab_source_file_last_modified": {"format": "date-time", "type": "string"}, - "_ab_source_file_url": {"type": "string"}, - "column_A": {"type": ["null", "string"]}, - "column_B": {"type": ["null", "integer"]}, - "column_C": {"type": ["null", "boolean"]}, - }, - "type": "object", - } - - def test_schema_no_files(self, mocker): - stream_instance = IncrementalFileStreamS3( - dataset="dummy", - provider={"bucket": "empty"}, - format={"filetype": "csv"}, - path_pattern="**/prefix*.csv" - ) - mocker.patch.object(stream_instance, "filepath_iterator", MagicMock(return_value=[])) - assert stream_instance.get_json_schema() == { - "properties": { - "_ab_source_file_last_modified": {"format": "date-time", "type": "string"}, - "_ab_source_file_url": {"type": "string"} - }, - "type": "object", - } - - def test_migrate_datetime_format(self): - current_state = {"_ab_source_file_last_modified": "2022-11-09T11:12:00+0000"} - latest_record = {"_ab_source_file_last_modified": "2020-11-09T11:12:00Z"} - stream_instance = IncrementalFileStreamS3( - dataset="dummy", - provider={"bucket": "empty"}, - format={"filetype": "csv"}, - path_pattern="**/prefix*.csv" - ) - assert stream_instance.get_updated_state(current_state, latest_record)["_ab_source_file_last_modified"] == "2022-11-09T11:12:00Z" - - @pytest.mark.parametrize( - "input_state, expected_output", - [ - pytest.param({}, {}, id="empty-input"), - pytest.param( - { - "history": { - "file1.txt": "2023-08-01T00:00:00.000000Z", - }, - "_ab_source_file_last_modified": "2023-08-01T00:00:00.000000Z_file1.txt", - }, - { - "history": { - "2023-08-01": ["file1.txt"], - }, - "_ab_source_file_last_modified": "2023-08-01T00:00:00Z", - }, - id="single-file-single-timestamp", - ), - pytest.param( - { - "history": { - "file1.txt": "2023-08-01T00:00:00.000000Z", - "file2.txt": "2023-08-01T00:00:00.000000Z", - }, - "_ab_source_file_last_modified": "2023-08-01T00:00:00.000000Z_file2.txt", - }, - { - "history": { - "2023-08-01": ["file1.txt", "file2.txt"], - }, - "_ab_source_file_last_modified": "2023-08-01T00:00:00Z", - }, - id="multiple-files-same-timestamp", - ), - pytest.param( - { - "history": { - "file1.txt": "2023-08-01T00:00:00.000000Z", - "file2.txt": "2023-08-02T00:00:00.000000Z", - "file3.txt": "2023-08-02T00:00:00.000000Z", - }, - "_ab_source_file_last_modified": "2023-08-02T00:00:00.000000Z_file3.txt", - }, - { - "history": { - "2023-08-01": ["file1.txt"], - "2023-08-02": ["file2.txt", "file3.txt"], - }, - "_ab_source_file_last_modified": "2023-08-02T00:00:00Z", - }, - id="multiple-files-different-timestamps", - ), - pytest.param( - { - "history": { - "file1.txt": "2023-08-01T10:30:00.000000Z", - "file2.txt": "2023-08-01T15:45:00.000000Z", - "file3.txt": "2023-08-02T02:00:00.000000Z", - }, - "_ab_source_file_last_modified": "2023-08-02T00:00:00.000000Z_file3.txt", - }, - { - "history": { - "2023-08-01": ["file1.txt", "file2.txt"], - "2023-08-02": ["file3.txt"], - }, - "_ab_source_file_last_modified": "2023-08-02T00:00:00Z", - }, - id="handling-different-times", - ), - ], - ) - def test_get_converted_stream_state(self, input_state, expected_output): - assert IncrementalFileStreamS3(dataset="dummy", provider={}, format={}, path_pattern="")._get_converted_stream_state(input_state) == expected_output - - @pytest.mark.parametrize( - "stream_state, expected_output", - [ - pytest.param({}, False, id="empty-stream-state"), - pytest.param( - { - "history": { - "2023-08-01": "file1.txt", - "2023-08-02": "file2.txt", - "2023-08-03": "file3.txt", - }, - "_ab_source_file_last_modified": "2023-08-01T00:00:00.000000Z", - }, - True, - id="v4-format-history-and-cursor", - ), - pytest.param( - { - "history": { - "2023-08-01": ["file1.txt"], - "2023-08-02": ["file2.txt", "file3.txt"], - }, - "_ab_source_file_last_modified": "2023-08-01T00:00:00Z", - }, - False, - id="v3-format-history-and-cursor", - ), - pytest.param( - { - "history": { - "2023-08-01": "file1.txt", - "2023-08-02": "file2.txt", - }, - }, - True, - id="v4-missing-cursor", - ), - pytest.param( - { - "history": { - "2023-08-01": ["file1.txt"], - "2023-08-02": ["file2.txt", "file3.txt"], - }, - }, - False, - id="v3-missing-cursor", - ), - pytest.param( - { - "_ab_source_file_last_modified": "2023-08-01T00:00:00.000000Z", - }, - True, - id="v4-cursor-only", - ), - pytest.param( - { - "_ab_source_file_last_modified": "2023-08-01T00:00:00Z", # Invalid format (missing microseconds) - }, - False, - id="v3-cursor-only", - ), - ], - ) - def test_is_v4_state_format(self, stream_state: Mapping[str, Any], expected_output): - assert IncrementalFileStreamS3(dataset="dummy", provider={}, format={}, path_pattern="")._is_v4_state_format(stream_state) == expected_output diff --git a/airbyte-integrations/connectors/source-s3/unit_tests/v4/test_cursor.py b/airbyte-integrations/connectors/source-s3/unit_tests/v4/test_cursor.py index 7e612ba89e64..d81616038277 100644 --- a/airbyte-integrations/connectors/source-s3/unit_tests/v4/test_cursor.py +++ b/airbyte-integrations/connectors/source-s3/unit_tests/v4/test_cursor.py @@ -7,6 +7,7 @@ from unittest.mock import Mock import pytest +from airbyte_cdk.sources.file_based.config.csv_format import CsvFormat from airbyte_cdk.sources.file_based.config.file_based_stream_config import FileBasedStreamConfig from airbyte_cdk.sources.file_based.remote_file import RemoteFile from airbyte_cdk.sources.file_based.stream.cursor.default_file_based_cursor import DefaultFileBasedCursor @@ -486,7 +487,7 @@ def test_get_adjusted_date_timestamp(cursor_datetime, file_datetime, expected_ad def _init_cursor_with_state(input_state, max_history_size: Optional[int] = None) -> Cursor: - cursor = Cursor(stream_config=FileBasedStreamConfig(file_type="csv", name="test", validation_policy="Emit Record")) + cursor = Cursor(stream_config=FileBasedStreamConfig(name="test", validation_policy="Emit Record", format=CsvFormat())) cursor.set_initial_state(input_state) if max_history_size is not None: cursor.DEFAULT_MAX_HISTORY_SIZE = max_history_size diff --git a/airbyte-integrations/connectors/source-s3/unit_tests/v4/test_legacy_config_transformer.py b/airbyte-integrations/connectors/source-s3/unit_tests/v4/test_legacy_config_transformer.py index dfccfe69b1c3..e21176dcd951 100644 --- a/airbyte-integrations/connectors/source-s3/unit_tests/v4/test_legacy_config_transformer.py +++ b/airbyte-integrations/connectors/source-s3/unit_tests/v4/test_legacy_config_transformer.py @@ -37,7 +37,6 @@ "streams": [ { "name": "test_data", - "file_type": "avro", "globs": ["**/*.avro"], "legacy_prefix": "a_folder/", "validation_policy": "Emit Record", @@ -65,7 +64,6 @@ "streams": [ { "name": "test_data", - "file_type": "avro", "globs": ["**/*.avro"], "legacy_prefix": "", "validation_policy": "Emit Record", @@ -93,7 +91,6 @@ "streams": [ { "name": "test_data", - "file_type": "avro", "globs": ["*.csv", "**/*"], "validation_policy": "Emit Record", "legacy_prefix": "a_prefix/", @@ -127,8 +124,8 @@ def test_convert_legacy_config(legacy_config, expected_config): "double_quote": False, "newlines_in_values": True, "additional_reader_options": '{"strings_can_be_null": true, "null_values": ["NULL", "NONE"], "true_values": ["yes", "y"], "false_values": ["no", "n"]}', - "advanced_options": '{"skip_rows": 3, "skip_rows_after_names": 5, "autogenerate_column_names": true}', - "blocksize": 20000, + "advanced_options": '{"skip_rows": 3, "skip_rows_after_names": 5, "autogenerate_column_names": true, "block_size": 20000}', + "block_size": 20000, }, { "filetype": "csv", @@ -144,7 +141,7 @@ def test_convert_legacy_config(legacy_config, expected_config): "strings_can_be_null": True, "skip_rows_before_header": 3, "skip_rows_after_header": 5, - "autogenerate_column_names": True, + "header_definition": {"header_definition_type": "Autogenerated"}, }, None, id="test_csv_all_legacy_options_set", @@ -169,6 +166,7 @@ def test_convert_legacy_config(legacy_config, expected_config): "false_values": ["0", "False", "FALSE", "false"], "inference_type": "Primitive Types Only", "strings_can_be_null": False, + "header_definition": {"header_definition_type": "From CSV"}, }, None, id="test_csv_only_required_options", @@ -187,6 +185,7 @@ def test_convert_legacy_config(legacy_config, expected_config): "false_values": ["0", "False", "FALSE", "false"], "inference_type": "Primitive Types Only", "strings_can_be_null": False, + "header_definition": {"header_definition_type": "From CSV"}, }, None, id="test_csv_empty_format", @@ -218,15 +217,6 @@ def test_convert_legacy_config(legacy_config, expected_config): ValueError, id="test_malformed_advanced_options", ), - pytest.param( - "csv", - { - "advanced_options": '{"column_names": ""}', - }, - None, - ValueError, - id="test_unsupported_advanced_options", - ), pytest.param( "csv", { @@ -261,6 +251,7 @@ def test_convert_legacy_config(legacy_config, expected_config): "false_values": ["0", "False", "FALSE", "false"], "inference_type": "Primitive Types Only", "strings_can_be_null": False, + "header_definition": {"header_definition_type": "From CSV"}, }, None, id="test_unsupported_advanced_options_by_value_succeeds_if_value_matches_ignored_values", @@ -308,10 +299,42 @@ def test_convert_legacy_config(legacy_config, expected_config): "false_values": ["0", "False", "FALSE", "false"], "inference_type": "Primitive Types Only", "strings_can_be_null": False, + "header_definition": {"header_definition_type": "From CSV"}, }, None, id="test_ignored_advanced_options", ), + pytest.param( + "csv", + { + "filetype": "csv", + "delimiter": "&", + "infer_datatypes": False, + "quote_char": "^", + "escape_char": "$", + "encoding": "ansi", + "double_quote": False, + "newlines_in_values": True, + "additional_reader_options": '{"strings_can_be_null": true, "null_values": ["NULL", "NONE"], "true_values": ["yes", "y"], "false_values": ["no", "n"]}', + "advanced_options": '{"autogenerate_column_names": true, "column_names": ["first", "second"]}', + }, + { + "filetype": "csv", + "delimiter": "&", + "quote_char": "^", + "escape_char": "$", + "encoding": "ansi", + "double_quote": False, + "null_values": ["NULL", "NONE"], + "true_values": ["yes", "y"], + "false_values": ["no", "n"], + "inference_type": "None", + "strings_can_be_null": True, + "header_definition": {"header_definition_type": "User Provided", "column_names": ["first", "second"]}, + }, + None, + id="test_csv_user_provided_column_names", + ), pytest.param( "jsonl", { @@ -367,7 +390,6 @@ def test_convert_file_format(file_type, legacy_format_config, expected_format_co "streams": [ { "name": "test_data", - "file_type": file_type, "globs": [f"**/*.{file_type}"], "legacy_prefix": "", "validation_policy": "Emit Record", diff --git a/airbyte-integrations/connectors/source-s3/unit_tests/v4/test_source.py b/airbyte-integrations/connectors/source-s3/unit_tests/v4/test_source.py new file mode 100644 index 000000000000..8e9b6defdc80 --- /dev/null +++ b/airbyte-integrations/connectors/source-s3/unit_tests/v4/test_source.py @@ -0,0 +1,51 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + +import unittest +from pathlib import Path +from unittest.mock import Mock, patch + +from source_s3.v4 import Config, SourceS3, SourceS3StreamReader + +_V3_FIELDS = ["dataset", "format", "path_pattern", "provider", "schema"] +TEST_FILES_FOLDER = Path(__file__).resolve().parent.parent.joinpath("sample_files") + + +class SourceTest(unittest.TestCase): + def setUp(self) -> None: + self._stream_reader = Mock(spec=SourceS3StreamReader) + self._source = SourceS3( + self._stream_reader, + Config, + str(TEST_FILES_FOLDER.joinpath("catalog.json")) + ) + + @patch("source_s3.v4.source.emit_configuration_as_airbyte_control_message") + def test_given_config_is_v3_when_read_config_then_emit_new_config(self, emit_config_mock) -> None: + self._source.read_config(str(TEST_FILES_FOLDER.joinpath("v3_config.json"))) + assert emit_config_mock.call_count == 1 + + @patch("source_s3.v4.source.emit_configuration_as_airbyte_control_message") + def test_given_config_is_v4_when_read_config_then_do_not_emit_new_config(self, emit_config_mock) -> None: + self._source.read_config(str(TEST_FILES_FOLDER.joinpath("v4_config.json"))) + assert emit_config_mock.call_count == 0 + + def test_when_spec_then_v3_fields_not_required(self) -> None: + spec = self._source.spec() + assert all(field not in spec.connectionSpecification["required"] for field in _V3_FIELDS) + + def test_when_spec_then_v3_fields_are_hidden(self) -> None: + spec = self._source.spec() + assert all(spec.connectionSpecification["properties"][field]["airbyte_hidden"] for field in _V3_FIELDS) + + def test_when_spec_then_v3_fields_descriptions_are_prefixed_with_deprecation_warning(self) -> None: + spec = self._source.spec() + assert all( + spec.connectionSpecification["properties"][field]["description"].startswith("Deprecated and will be removed soon") + for field in _V3_FIELDS + ) + + def test_when_spec_then_v3_nested_fields_are_not_required(self) -> None: + spec = self._source.spec() + assert not spec.connectionSpecification["properties"]["provider"]["required"] diff --git a/airbyte-integrations/connectors/source-salesloft/metadata.yaml b/airbyte-integrations/connectors/source-salesloft/metadata.yaml index 8f713ca61aa4..7fdf8beebb6b 100644 --- a/airbyte-integrations/connectors/source-salesloft/metadata.yaml +++ b/airbyte-integrations/connectors/source-salesloft/metadata.yaml @@ -1,4 +1,7 @@ data: + ab_internal: + ql: 300 + sl: 100 allowedHosts: hosts: - api.salesloft.com @@ -7,6 +10,7 @@ data: definitionId: 41991d12-d4b5-439e-afd0-260a31d4c53f dockerImageTag: 1.2.0 dockerRepository: airbyte/source-salesloft + documentationUrl: https://docs.airbyte.com/integrations/sources/salesloft githubIssueLabel: source-salesloft icon: salesloft.svg license: MIT @@ -17,11 +21,7 @@ data: oss: enabled: true releaseStage: beta - documentationUrl: https://docs.airbyte.com/integrations/sources/salesloft + supportLevel: community tags: - language:python - ab_internal: - sl: 200 - ql: 300 - supportLevel: certified metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-scaffold-java-jdbc/build.gradle b/airbyte-integrations/connectors/source-scaffold-java-jdbc/build.gradle index dbbe4f113e84..dd01842ca2de 100644 --- a/airbyte-integrations/connectors/source-scaffold-java-jdbc/build.gradle +++ b/airbyte-integrations/connectors/source-scaffold-java-jdbc/build.gradle @@ -24,7 +24,4 @@ dependencies { integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-scaffold-java-jdbc') integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') - - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors/source-sendgrid/acceptance-test-config.yml b/airbyte-integrations/connectors/source-sendgrid/acceptance-test-config.yml index 1f389b938535..303362e6bb79 100644 --- a/airbyte-integrations/connectors/source-sendgrid/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-sendgrid/acceptance-test-config.yml @@ -49,13 +49,6 @@ acceptance_tests: configured_catalog_path: "integration_tests/no_spam_reports_configured_catalog.json" future_state: future_state_path: "integration_tests/abnormal_state.json" - cursor_paths: - global_suppressions: ["created"] - blocks: ["created"] - bounces: ["created"] - invalid_emails: ["created"] - # TODO: create spam_reports records - # spam_reports: ["created"] full_refresh: tests: - config_path: "secrets/config.json" diff --git a/airbyte-integrations/connectors/source-sentry/Dockerfile b/airbyte-integrations/connectors/source-sentry/Dockerfile index 24ceb52fa4bf..4eaed1f20ed1 100644 --- a/airbyte-integrations/connectors/source-sentry/Dockerfile +++ b/airbyte-integrations/connectors/source-sentry/Dockerfile @@ -34,5 +34,5 @@ COPY source_sentry ./source_sentry ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=0.2.4 +LABEL io.airbyte.version=0.3.0 LABEL io.airbyte.name=airbyte/source-sentry diff --git a/airbyte-integrations/connectors/source-sentry/acceptance-test-config.yml b/airbyte-integrations/connectors/source-sentry/acceptance-test-config.yml index 91c39b263e9d..b989c169e2e8 100644 --- a/airbyte-integrations/connectors/source-sentry/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-sentry/acceptance-test-config.yml @@ -11,6 +11,8 @@ acceptance_tests: bypass_reason: "Order access return randomly" - name: features bypass_reason: "Order features return randomly" + - name: options + bypass_reason: "Order options return randomly" - name: organization/features bypass_reason: "Order features return randomly" - name: plugins/*/features @@ -22,7 +24,6 @@ acceptance_tests: bypass_reason: "Order features return randomly" - name: organization/features bypass_reason: "Order features return randomly" - fail_on_extra_columns: false connection: tests: - config_path: secrets/config.json diff --git a/airbyte-integrations/connectors/source-sentry/integration_tests/expected_records.jsonl b/airbyte-integrations/connectors/source-sentry/integration_tests/expected_records.jsonl index fe181c199a95..1dd8a4f0937f 100644 --- a/airbyte-integrations/connectors/source-sentry/integration_tests/expected_records.jsonl +++ b/airbyte-integrations/connectors/source-sentry/integration_tests/expected_records.jsonl @@ -1,6 +1,6 @@ -{"stream": "project_detail", "data": {"id": "5942472", "slug": "airbyte-09", "name": "airbyte-09", "platform": "python", "dateCreated": "2021-09-02T07:42:22.421223Z", "isBookmarked": false, "isMember": true, "features": ["alert-filters", "minidump", "race-free-group-creation", "similarity-indexing", "similarity-view", "releases"], "firstEvent": null, "firstTransactionEvent": false, "access": ["member:read", "org:read", "team:admin", "event:admin", "org:integrations", "team:read", "event:read", "project:write", "project:releases", "alerts:read", "project:read", "event:write", "team:write", "alerts:write", "project:admin"], "hasAccess": true, "hasMinifiedStackTrace": false, "hasMonitors": false, "hasProfiles": false, "hasReplays": false, "hasSessions": false, "isInternal": false, "isPublic": false, "avatar": {"avatarType": "letter_avatar", "avatarUuid": null}, "color": "#803fbf", "status": "active", "team": {"id": "1170523", "slug": "airbyte", "name": "Airbyte"}, "teams": [{"id": "1170523", "slug": "airbyte", "name": "Airbyte"}], "latestRelease": {"version": "checkout-app@3.2"}, "options": {"quotas:spike-protection-disabled": false, "sentry:token": "5006ad000bc111ec95cd8e5fccda0a6a", "sentry:option-epoch": 7, "sentry:csp_ignored_sources_defaults": true, "sentry:csp_ignored_sources": "", "sentry:reprocessing_active": false, "filters:blacklisted_ips": "", "filters:react-hydration-errors": true, "filters:releases": "", "filters:error_messages": "", "feedback:branding": true}, "digestsMinDelay": 300, "digestsMaxDelay": 1800, "subjectPrefix": "", "allowedDomains": ["*"], "resolveAge": 0, "dataScrubber": true, "dataScrubberDefaults": true, "safeFields": [], "recapServerUrl": null, "storeCrashReports": null, "sensitiveFields": [], "subjectTemplate": "$shortID - $title", "securityToken": "5006ad000bc111ec95cd8e5fccda0a6a", "securityTokenHeader": null, "verifySSL": false, "scrubIPAddresses": false, "scrapeJavaScript": true, "groupingConfig": "newstyle:2023-01-11", "groupingEnhancements": "", "groupingEnhancementsBase": null, "secondaryGroupingExpiry": 0, "secondaryGroupingConfig": null, "groupingAutoUpdate": true, "fingerprintingRules": "", "organization": {"id": "985996", "slug": "airbyte-09", "status": {"id": "active", "name": "active"}, "name": "Airbyte", "dateCreated": "2021-09-02T07:41:55.899035Z", "isEarlyAdopter": false, "require2FA": false, "requireEmailVerification": false, "avatar": {"avatarType": "letter_avatar", "avatarUuid": null}, "features": ["anr-rate", "paid-to-free-promotion", "performance-m-n-plus-one-db-queries-visible", "performance-file-io-main-thread-visible", "customer-domains", "performance-landing-page-stats-period", "performance-uncompressed-assets-visible", "profile-image-decode-main-thread-ingest", "integrations-deployment", "performance-consecutive-db-queries-visible", "streamline-targeting-context", "performance-large-http-payload-visible", "assign-to-me", "issue-platform", "performance-render-blocking-asset-span-ingest", "sourcemaps-bundle-indexing", "bundle-plan-checkout", "symbol-sources", "release-health-drop-sessions", "profile-image-decode-main-thread-visible", "performance-db-main-thread-post-process-group", "profile-image-decode-main-thread-post-process-group", "performance-issues-all-events-tab", "performance-consecutive-http-ingest", "performance-n-plus-one-db-queries-post-process-group", "ondemand-budgets", "performance-slow-db-query-ingest", "performance-consecutive-http-post-process-group", "performance-db-main-thread-ingest", "performance-issues-compressed-assets-detector", "crons-timeline-listing-page", "team-project-creation-all", "dynamic-sampling", "promotion-be-adoption-enabled", "onboarding", "performance-onboarding-checklist", "performance-span-histogram-view", "performance-m-n-plus-one-db-queries-ingest", "performance-issues-m-n-plus-one-db-detector", "alert-crash-free-metrics", "performance-large-http-payload-ingest", "invite-members-rate-limits", "integrations-stacktrace-link", "promotion-mobperf-gift50kerr", "performance-render-blocking-asset-span-post-process-group", "transaction-name-normalize", "transaction-metrics-extraction", "business-to-team-promotion", "performance-n-plus-one-api-calls-detector", "dashboards-rh-widget", "transaction-name-mark-scrubbed-as-sanitized", "performance-consecutive-db-queries-ingest", "performance-slow-db-issue", "session-replay", "profile-json-decode-main-thread-visible", "metrics-extraction", "profile-file-io-main-thread-ingest", "performance-m-n-plus-one-db-queries-post-process-group", "performance-uncompressed-assets-post-process-group", "monitors", "onboarding-sdk-selection", "performance-n-plus-one-db-queries-visible", "performance-n-plus-one-api-calls-visible", "performance-n-plus-one-api-calls-post-process-group", "performance-consecutive-db-issue", "performance-mep-bannerless-ui", "performance-consecutive-db-queries-post-process-group", "profile-file-io-main-thread-post-process-group", "mobile-cpu-memory-in-transactions", "performance-slow-db-query-post-process-group", "device-classification", "issue-alert-fallback-targeting", "performance-uncompressed-assets-ingest", "performance-slow-db-query-visible", "profile-file-io-main-thread-visible", "performance-issues-search", "performance-consecutive-http-visible", "promotion-mobperf-discount20", "minute-resolution-sessions", "onboarding-project-deletion-on-back-click", "profiling", "metric-alert-chartcuterie", "mute-metric-alerts", "device-class-synthesis", "performance-new-widget-designs", "getting-started-doc-with-product-selection", "profiling-billing", "profiling-ga", "open-ai-suggestion", "org-subdomains", "performance-view", "session-replay-ui", "performance-n-plus-one-db-queries-ingest", "profile-json-decode-main-thread-post-process-group", "performance-render-blocking-asset-span-visible", "performance-metrics-backed-transaction-summary", "derive-code-mappings", "performance-file-io-main-thread-post-process-group", "performance-db-main-thread-detector", "track-button-click-events", "event-attachments", "performance-file-io-main-thread-ingest", "performance-large-http-payload-post-process-group", "open-membership", "issue-list-better-priority-sort", "shared-issues", "performance-transaction-name-only-search-indexed", "project-stats", "mep-rollout-flag", "ds-sliding-window-org", "am2-billing", "performance-issues-render-blocking-assets-detector", "slack-overage-notifications", "india-promotion", "session-replay-recording-scrubbing", "slack-use-new-lookup", "crons-issue-platform", "performance-file-io-main-thread-detector", "auto-enable-codecov", "discover-events-rate-limit", "performance-db-main-thread-visible", "performance-consecutive-http-detector", "performance-large-http-payload-detector", "profile-json-decode-main-thread-ingest", "advanced-search", "performance-n-plus-one-api-calls-ingest"], "links": {"organizationUrl": "https://airbyte-09.sentry.io", "regionUrl": "https://us.sentry.io"}, "hasAuthProvider": false}, "plugins": [], "platforms": [], "processingIssues": 0, "defaultEnvironment": null, "relayPiiConfig": null, "builtinSymbolSources": ["ios", "microsoft", "android"], "dynamicSamplingBiases": [{"id": "boostEnvironments", "active": true}, {"id": "boostLatestRelease", "active": true}, {"id": "ignoreHealthChecks", "active": true}, {"id": "boostKeyTransactions", "active": true}, {"id": "boostLowVolumeTransactions", "active": true}, {"id": "boostReplayId", "active": true}, {"id": "recalibrationRule", "active": true}], "eventProcessing": {"symbolicationDegraded": false}, "symbolSources": "[]"}, "emitted_at": 1689246410694} -{"stream":"projects","data":{"id":"6712547","slug":"demo-integration","name":"demo-integration","platform":"javascript-react","dateCreated":"2022-09-02T15:01:28.946777Z","isBookmarked":false,"isMember":true,"features":["alert-filters","minidump","race-free-group-creation","similarity-indexing","similarity-view"],"firstEvent":"2022-09-02T15:36:50.870000Z","firstTransactionEvent":false,"access":["org:integrations","team:read","alerts:write","alerts:read","project:read","member:read","project:write","project:admin","event:admin","team:write","event:write","project:releases","team:admin","event:read","org:read"],"hasAccess":true,"hasMinifiedStackTrace":false,"hasMonitors":false,"hasProfiles":false,"hasReplays":false,"hasSessions":false,"isInternal":false,"isPublic":false,"avatar":{"avatarType":"letter_avatar","avatarUuid":null},"color":"#bf833f","status":"active","organization":{"id":"985996","slug":"airbyte-09","status":{"id":"active","name":"active"},"name":"Airbyte","dateCreated":"2021-09-02T07:41:55.899035Z","isEarlyAdopter":false,"require2FA":false,"requireEmailVerification":false,"avatar":{"avatarType":"letter_avatar","avatarUuid":null},"features":["metrics-extraction","new-spike-protection","promotion-mobperf-discount20","session-replay-recording-scrubbing","performance-m-n-plus-one-db-queries-ingest","performance-consecutive-db-queries-ingest","sql-format","slack-overage-notifications","ondemand-budgets","issue-list-prefetch-issue-on-hover","profiling","performance-render-blocking-asset-span-ingest","getting-started-doc-with-product-selection","performance-consecutive-http-post-process-group","performance-view","integrations-stacktrace-link","dashboards-rh-widget","bundle-plan-checkout","invite-members-rate-limits","advanced-search","performance-db-main-thread-detector","integrations-deployment","profile-json-decode-main-thread-post-process-group","transaction-name-mark-scrubbed-as-sanitized","performance-db-main-thread-ingest","india-promotion","performance-consecutive-db-issue","performance-mep-bannerless-ui","performance-consecutive-http-detector","device-class-synthesis","auto-enable-codecov","performance-n-plus-one-api-calls-post-process-group","performance-render-blocking-asset-span-post-process-group","metric-alert-chartcuterie","session-replay","performance-landing-page-stats-period","transaction-name-normalize","symbol-sources","performance-issues-search","profile-json-decode-main-thread-ingest","sentry-pride-logo-footer","performance-uncompressed-assets-visible","profile-file-io-main-thread-visible","project-stats","performance-n-plus-one-api-calls-visible","performance-file-io-main-thread-ingest","profile-image-decode-main-thread-post-process-group","release-health-drop-sessions","minute-resolution-sessions","onboarding","performance-span-histogram-view","profile-image-decode-main-thread-ingest","profile-json-decode-main-thread-visible","paid-to-free-promotion","performance-file-io-main-thread-post-process-group","source-maps-debug-ids","performance-large-http-payload-post-process-group","performance-m-n-plus-one-db-queries-visible","profile-image-decode-main-thread-visible","ds-sliding-window-org","performance-issues-all-events-tab","performance-consecutive-db-queries-visible","streamline-targeting-context","onboarding-sdk-selection","session-replay-click-search-banner-rollout","performance-onboarding-checklist","discover-events-rate-limit","performance-m-n-plus-one-db-queries-post-process-group","shared-issues","performance-issues-m-n-plus-one-db-detector","profiling-billing","open-ai-suggestion","anr-rate","performance-n-plus-one-db-queries-visible","business-to-team-promotion","monitors","performance-slow-db-issue","team-project-creation-all","session-replay-index-subquery","performance-file-io-main-thread-visible","crons-issue-platform","performance-issues-compressed-assets-detector","performance-db-main-thread-post-process-group","performance-transaction-name-only-search-indexed","alert-crash-free-metrics","performance-slow-db-query-visible","dynamic-sampling-transaction-name-priority","performance-n-plus-one-db-queries-post-process-group","performance-render-blocking-asset-span-visible","onboarding-project-deletion-on-back-click","session-replay-ga","performance-file-io-main-thread-detector","profile-file-io-main-thread-post-process-group","promotion-mobperf-gift50kerr","performance-db-main-thread-visible","performance-n-plus-one-api-calls-ingest","performance-n-plus-one-db-queries-ingest","am2-billing","performance-uncompressed-assets-post-process-group","performance-metrics-backed-transaction-summary","performance-n-plus-one-api-calls-detector","performance-slow-db-query-post-process-group","performance-large-http-payload-ingest","ds-boost-new-projects","customer-domains","mobile-cpu-memory-in-transactions","session-replay-network-details","performance-slow-db-query-ingest","issue-alert-fallback-targeting","performance-consecutive-http-visible","performance-uncompressed-assets-ingest","session-replay-ui","performance-consecutive-db-queries-post-process-group","profiling-ga","open-membership","performance-new-widget-designs","crons-timeline-listing-page","event-attachments","mep-rollout-flag","device-classification","derive-code-mappings","profile-file-io-main-thread-ingest","issue-platform","track-button-click-events","performance-issues-render-blocking-assets-detector","dynamic-sampling","performance-large-http-payload-visible","transaction-metrics-extraction","performance-large-http-payload-detector","performance-consecutive-http-ingest","promotion-be-adoption-enabled","org-subdomains"],"links":{"organizationUrl":"https://airbyte-09.sentry.io","regionUrl":"https://us.sentry.io"},"hasAuthProvider":false}},"emitted_at":1687535328146} -{"stream":"projects","data":{"id":"5942472","slug":"airbyte-09","name":"airbyte-09","platform":"python","dateCreated":"2021-09-02T07:42:22.421223Z","isBookmarked":false,"isMember":true,"features":["alert-filters","minidump","race-free-group-creation","similarity-indexing","similarity-view","releases"],"firstEvent":null,"firstTransactionEvent":false,"access":["org:integrations","team:read","alerts:write","alerts:read","project:read","member:read","project:write","project:admin","event:admin","team:write","event:write","project:releases","team:admin","event:read","org:read"],"hasAccess":true,"hasMinifiedStackTrace":false,"hasMonitors":false,"hasProfiles":false,"hasReplays":false,"hasSessions":false,"isInternal":false,"isPublic":false,"avatar":{"avatarType":"letter_avatar","avatarUuid":null},"color":"#803fbf","status":"active","organization":{"id":"985996","slug":"airbyte-09","status":{"id":"active","name":"active"},"name":"Airbyte","dateCreated":"2021-09-02T07:41:55.899035Z","isEarlyAdopter":false,"require2FA":false,"requireEmailVerification":false,"avatar":{"avatarType":"letter_avatar","avatarUuid":null},"features":["metrics-extraction","new-spike-protection","promotion-mobperf-discount20","session-replay-recording-scrubbing","performance-m-n-plus-one-db-queries-ingest","performance-consecutive-db-queries-ingest","sql-format","slack-overage-notifications","ondemand-budgets","issue-list-prefetch-issue-on-hover","profiling","performance-render-blocking-asset-span-ingest","getting-started-doc-with-product-selection","performance-consecutive-http-post-process-group","performance-view","integrations-stacktrace-link","dashboards-rh-widget","bundle-plan-checkout","invite-members-rate-limits","advanced-search","performance-db-main-thread-detector","integrations-deployment","profile-json-decode-main-thread-post-process-group","transaction-name-mark-scrubbed-as-sanitized","performance-db-main-thread-ingest","india-promotion","performance-consecutive-db-issue","performance-mep-bannerless-ui","performance-consecutive-http-detector","device-class-synthesis","auto-enable-codecov","performance-n-plus-one-api-calls-post-process-group","performance-render-blocking-asset-span-post-process-group","metric-alert-chartcuterie","session-replay","performance-landing-page-stats-period","transaction-name-normalize","symbol-sources","performance-issues-search","profile-json-decode-main-thread-ingest","sentry-pride-logo-footer","performance-uncompressed-assets-visible","profile-file-io-main-thread-visible","project-stats","performance-n-plus-one-api-calls-visible","performance-file-io-main-thread-ingest","profile-image-decode-main-thread-post-process-group","release-health-drop-sessions","minute-resolution-sessions","onboarding","performance-span-histogram-view","profile-image-decode-main-thread-ingest","profile-json-decode-main-thread-visible","paid-to-free-promotion","performance-file-io-main-thread-post-process-group","source-maps-debug-ids","performance-large-http-payload-post-process-group","performance-m-n-plus-one-db-queries-visible","profile-image-decode-main-thread-visible","ds-sliding-window-org","performance-issues-all-events-tab","performance-consecutive-db-queries-visible","streamline-targeting-context","onboarding-sdk-selection","session-replay-click-search-banner-rollout","performance-onboarding-checklist","discover-events-rate-limit","performance-m-n-plus-one-db-queries-post-process-group","shared-issues","performance-issues-m-n-plus-one-db-detector","profiling-billing","open-ai-suggestion","anr-rate","performance-n-plus-one-db-queries-visible","business-to-team-promotion","monitors","performance-slow-db-issue","team-project-creation-all","session-replay-index-subquery","performance-file-io-main-thread-visible","crons-issue-platform","performance-issues-compressed-assets-detector","performance-db-main-thread-post-process-group","performance-transaction-name-only-search-indexed","alert-crash-free-metrics","performance-slow-db-query-visible","dynamic-sampling-transaction-name-priority","performance-n-plus-one-db-queries-post-process-group","performance-render-blocking-asset-span-visible","onboarding-project-deletion-on-back-click","session-replay-ga","performance-file-io-main-thread-detector","profile-file-io-main-thread-post-process-group","promotion-mobperf-gift50kerr","performance-db-main-thread-visible","performance-n-plus-one-api-calls-ingest","performance-n-plus-one-db-queries-ingest","am2-billing","performance-uncompressed-assets-post-process-group","performance-metrics-backed-transaction-summary","performance-n-plus-one-api-calls-detector","performance-slow-db-query-post-process-group","performance-large-http-payload-ingest","ds-boost-new-projects","customer-domains","mobile-cpu-memory-in-transactions","session-replay-network-details","performance-slow-db-query-ingest","issue-alert-fallback-targeting","performance-consecutive-http-visible","performance-uncompressed-assets-ingest","session-replay-ui","performance-consecutive-db-queries-post-process-group","profiling-ga","open-membership","performance-new-widget-designs","crons-timeline-listing-page","event-attachments","mep-rollout-flag","device-classification","derive-code-mappings","profile-file-io-main-thread-ingest","issue-platform","track-button-click-events","performance-issues-render-blocking-assets-detector","dynamic-sampling","performance-large-http-payload-visible","transaction-metrics-extraction","performance-large-http-payload-detector","performance-consecutive-http-ingest","promotion-be-adoption-enabled","org-subdomains"],"links":{"organizationUrl":"https://airbyte-09.sentry.io","regionUrl":"https://us.sentry.io"},"hasAuthProvider":false}},"emitted_at":1687535328148} +{"stream": "project_detail", "data": {"id": "5942472", "slug": "airbyte-09", "name": "airbyte-09", "platform": "python", "dateCreated": "2021-09-02T07:42:22.421223Z", "isBookmarked": false, "isMember": true, "features": ["alert-filters", "minidump", "race-free-group-creation", "similarity-indexing", "similarity-view", "releases"], "firstEvent": null, "firstTransactionEvent": false, "access": ["event:admin", "member:read", "project:admin", "project:read", "alerts:read", "alerts:write", "team:read", "project:write", "org:integrations", "team:admin", "event:write", "team:write", "org:read", "event:read", "project:releases"], "hasAccess": true, "hasMinifiedStackTrace": false, "hasMonitors": false, "hasProfiles": false, "hasReplays": false, "hasSessions": false, "isInternal": false, "isPublic": false, "avatar": {"avatarType": "letter_avatar", "avatarUuid": null}, "color": "#803fbf", "status": "active", "team": {"id": "1170523", "slug": "airbyte", "name": "Airbyte"}, "teams": [{"id": "1170523", "slug": "airbyte", "name": "Airbyte"}], "latestRelease": {"version": "checkout-app@3.2"}, "options": {"sentry:csp_ignored_sources_defaults": true, "sentry:csp_ignored_sources": "", "sentry:reprocessing_active": false, "filters:blacklisted_ips": "", "filters:react-hydration-errors": true, "filters:releases": "", "filters:error_messages": "", "feedback:branding": true}, "digestsMinDelay": 300, "digestsMaxDelay": 1800, "subjectPrefix": "", "allowedDomains": ["*"], "resolveAge": 0, "dataScrubber": true, "dataScrubberDefaults": true, "safeFields": [], "recapServerUrl": null, "storeCrashReports": null, "sensitiveFields": [], "subjectTemplate": "$shortID - $title", "securityToken": "5006ad000bc111ec95cd8e5fccda0a6a", "securityTokenHeader": null, "verifySSL": false, "scrubIPAddresses": false, "scrapeJavaScript": true, "groupingConfig": "newstyle:2023-01-11", "groupingEnhancements": "", "groupingEnhancementsBase": null, "secondaryGroupingExpiry": 0, "secondaryGroupingConfig": null, "groupingAutoUpdate": true, "fingerprintingRules": "", "organization": {"id": "985996", "slug": "airbyte-09", "status": {"id": "active", "name": "active"}, "name": "Airbyte", "dateCreated": "2021-09-02T07:41:55.899035Z", "isEarlyAdopter": false, "require2FA": false, "requireEmailVerification": false, "avatar": {"avatarType": "letter_avatar", "avatarUuid": null}, "features": ["mobile-cpu-memory-in-transactions", "performance-issues-all-events-tab", "performance-transaction-name-only-search-indexed", "anr-rate", "performance-new-widget-designs", "integrations-auto-repo-linking", "india-promotion", "performance-large-http-payload-detector", "session-replay-recording-scrubbing", "sourcemaps-bundle-flat-file-indexing", "performance-view", "performance-consecutive-db-issue", "discover-events-rate-limit", "dashboards-rh-widget", "projconfig-exclude-measurements", "crons-new-onboarding", "performance-n-plus-one-api-calls-detector", "performance-issues-render-blocking-assets-detector", "session-replay-event-linking", "dashboards-mep", "ondemand-budgets", "open-membership", "alert-crash-free-metrics", "integrations-stacktrace-link", "performance-issues-http-overhead-detector", "monitors", "profiling-ui-frames", "profiling-billing", "performance-mep-bannerless-ui", "getting-started-doc-with-product-selection", "am2-billing", "session-replay-optimized-search", "profile-frame-drop-experimental-ingest", "project-performance-settings-admin", "performance-file-io-main-thread-detector", "auto-enable-codecov", "invite-members-rate-limits", "session-replay-ui", "open-ai-suggestion", "performance-db-main-thread-detector", "ds-sliding-window-org", "issue-details-most-helpful-event", "customer-domains", "symbol-sources", "performance-http-overhead-post-process-group", "performance-span-histogram-view", "promotion-mobperf-gift50kerr", "issue-platform", "onboarding", "escalating-metrics-backend", "issue-alert-fallback-targeting", "performance-tracing-without-performance", "profile-file-io-main-thread-ingest", "performance-http-overhead-ingest", "derive-code-mappings", "performance-issues-search", "promotion-be-adoption-enabled", "slack-overage-notifications", "paid-to-free-promotion", "minute-resolution-sessions", "device-classification", "profiling-cpu-chart", "ds-org-recalibration", "performance-landing-page-stats-period", "session-replay", "shared-issues", "profile-image-decode-main-thread-post-process-group", "profile-image-decode-main-thread-visible", "business-to-team-promotion", "noisy-alert-warning", "profile-file-io-main-thread-post-process-group", "advanced-search", "integrations-deployment", "event-attachments", "profile-json-decode-main-thread-post-process-group", "track-button-click-events", "transaction-name-normalize", "profile-file-io-main-thread-visible", "profiling-global-suspect-functions", "dynamic-sampling", "escalating-issues", "promotion-mobperf-discount20", "onboarding-sdk-selection", "profiling-view", "metrics-extraction", "profile-json-decode-main-thread-ingest", "performance-issues-m-n-plus-one-db-detector", "transaction-name-mark-scrubbed-as-sanitized", "sdk-crash-detection", "org-subdomains", "performance-metrics-backed-transaction-summary", "enterprise-spike-protection-window", "profile-image-decode-main-thread-ingest", "performance-consecutive-http-detector", "session-replay-trial-ended-banner", "session-replay-slack-new-issue", "session-replay-issue-emails", "transaction-metrics-extraction", "performance-onboarding-checklist", "profile-json-decode-main-thread-visible", "mep-rollout-flag", "metric-alert-chartcuterie", "streamline-targeting-context", "performance-issues-compressed-assets-detector", "project-stats", "issue-details-most-helpful-event-ui", "release-health-drop-sessions", "profile-frame-drop-experimental-post-process-group", "profiling", "profiling-memory-chart", "issue-details-stacktrace-improvements", "device-class-synthesis", "performance-http-overhead-visible", "team-project-creation-all", "performance-slow-db-issue"], "links": {"organizationUrl": "https://airbyte-09.sentry.io", "regionUrl": "https://us1.sentry.io"}, "hasAuthProvider": false}, "plugins": [], "platforms": [], "processingIssues": 0, "defaultEnvironment": null, "relayPiiConfig": null, "builtinSymbolSources": ["ios", "microsoft", "android"], "dynamicSamplingBiases": [{"id": "boostEnvironments", "active": true}, {"id": "boostLatestRelease", "active": true}, {"id": "ignoreHealthChecks", "active": true}, {"id": "boostKeyTransactions", "active": true}, {"id": "boostLowVolumeTransactions", "active": true}, {"id": "boostReplayId", "active": true}, {"id": "recalibrationRule", "active": true}], "eventProcessing": {"symbolicationDegraded": false}, "symbolSources": "[]"}, "emitted_at": 1695121555366} +{"stream": "projects", "data": {"id": "6712547", "slug": "demo-integration", "name": "demo-integration", "platform": "javascript-react", "dateCreated": "2022-09-02T15:01:28.946777Z", "isBookmarked": false, "isMember": true, "features": ["alert-filters", "minidump", "race-free-group-creation", "similarity-indexing", "similarity-view"], "firstEvent": "2022-09-02T15:36:50.870000Z", "firstTransactionEvent": false, "access": ["member:read", "alerts:read", "team:admin", "event:write", "project:admin", "org:read", "team:write", "event:read", "event:admin", "project:write", "org:integrations", "team:read", "alerts:write", "project:read", "project:releases"], "hasAccess": true, "hasMinifiedStackTrace": false, "hasMonitors": false, "hasProfiles": false, "hasReplays": false, "hasSessions": false, "isInternal": false, "isPublic": false, "avatar": {"avatarType": "letter_avatar", "avatarUuid": null}, "color": "#bf833f", "status": "active", "organization": {"id": "985996", "slug": "airbyte-09", "status": {"id": "active", "name": "active"}, "name": "Airbyte", "dateCreated": "2021-09-02T07:41:55.899035Z", "isEarlyAdopter": false, "require2FA": false, "requireEmailVerification": false, "avatar": {"avatarType": "letter_avatar", "avatarUuid": null}, "features": ["projconfig-exclude-measurements", "anr-rate", "promotion-be-adoption-enabled", "performance-issues-all-events-tab", "issue-details-stacktrace-improvements", "integrations-stacktrace-link", "device-class-synthesis", "monitors", "transaction-name-mark-scrubbed-as-sanitized", "slack-overage-notifications", "symbol-sources", "auto-enable-codecov", "onboarding-sdk-selection", "session-replay-slack-new-issue", "performance-n-plus-one-api-calls-detector", "performance-large-http-payload-detector", "performance-view", "performance-issues-search", "release-health-drop-sessions", "device-classification", "profile-json-decode-main-thread-post-process-group", "advanced-search", "india-promotion", "promotion-mobperf-gift50kerr", "profiling-ui-frames", "ds-org-recalibration", "dashboards-mep", "team-project-creation-all", "profiling-global-suspect-functions", "crons-new-onboarding", "metric-alert-chartcuterie", "performance-span-histogram-view", "performance-issues-render-blocking-assets-detector", "session-replay-optimized-search", "profile-image-decode-main-thread-ingest", "session-replay", "performance-landing-page-stats-period", "profile-file-io-main-thread-ingest", "profile-image-decode-main-thread-visible", "issue-details-most-helpful-event-ui", "minute-resolution-sessions", "profiling-billing", "sdk-crash-detection", "profile-image-decode-main-thread-post-process-group", "escalating-metrics-backend", "derive-code-mappings", "transaction-metrics-extraction", "promotion-mobperf-discount20", "profile-frame-drop-experimental-post-process-group", "performance-metrics-backed-transaction-summary", "github-disable-on-broken", "profiling-view", "integrations-auto-repo-linking", "org-subdomains", "open-ai-suggestion", "profiling-cpu-chart", "event-attachments", "enterprise-spike-protection-window", "profile-json-decode-main-thread-ingest", "dynamic-sampling", "performance-mep-bannerless-ui", "invite-members-rate-limits", "integrations-deployment", "profile-json-decode-main-thread-visible", "performance-file-io-main-thread-detector", "streamline-targeting-context", "performance-db-main-thread-detector", "performance-consecutive-db-issue", "issue-details-most-helpful-event", "profiling", "performance-new-widget-designs", "session-replay-issue-emails", "performance-transaction-name-only-search-indexed", "performance-http-overhead-post-process-group", "open-membership", "transaction-name-normalize", "performance-http-overhead-ingest", "project-performance-settings-admin", "paid-to-free-promotion", "profile-file-io-main-thread-post-process-group", "session-replay-ui", "ondemand-budgets", "getting-started-doc-with-product-selection", "performance-issues-m-n-plus-one-db-detector", "mobile-cpu-memory-in-transactions", "profiling-memory-chart", "issue-platform", "shared-issues", "performance-issues-http-overhead-detector", "performance-http-overhead-visible", "performance-tracing-without-performance", "escalating-issues", "track-button-click-events", "onboarding", "metrics-extraction", "customer-domains", "dashboards-rh-widget", "project-stats", "session-replay-trial-ended-banner", "business-to-team-promotion", "performance-issues-compressed-assets-detector", "session-replay-recording-scrubbing", "performance-onboarding-checklist", "discover-events-rate-limit", "sourcemaps-bundle-flat-file-indexing", "alert-crash-free-metrics", "performance-consecutive-http-detector", "ds-sliding-window-org", "mep-rollout-flag", "profile-file-io-main-thread-visible", "am2-billing", "performance-slow-db-issue", "profile-frame-drop-experimental-ingest", "issue-alert-fallback-targeting"], "links": {"organizationUrl": "https://airbyte-09.sentry.io", "regionUrl": "https://us1.sentry.io"}, "hasAuthProvider": false}}, "emitted_at": 1695036641442} +{"stream": "projects", "data": {"id": "5942472", "slug": "airbyte-09", "name": "airbyte-09", "platform": "python", "dateCreated": "2021-09-02T07:42:22.421223Z", "isBookmarked": false, "isMember": true, "features": ["alert-filters", "minidump", "race-free-group-creation", "similarity-indexing", "similarity-view", "releases"], "firstEvent": null, "firstTransactionEvent": false, "access": ["member:read", "alerts:read", "team:admin", "event:write", "project:admin", "org:read", "team:write", "event:read", "event:admin", "project:write", "org:integrations", "team:read", "alerts:write", "project:read", "project:releases"], "hasAccess": true, "hasMinifiedStackTrace": false, "hasMonitors": false, "hasProfiles": false, "hasReplays": false, "hasSessions": false, "isInternal": false, "isPublic": false, "avatar": {"avatarType": "letter_avatar", "avatarUuid": null}, "color": "#803fbf", "status": "active", "organization": {"id": "985996", "slug": "airbyte-09", "status": {"id": "active", "name": "active"}, "name": "Airbyte", "dateCreated": "2021-09-02T07:41:55.899035Z", "isEarlyAdopter": false, "require2FA": false, "requireEmailVerification": false, "avatar": {"avatarType": "letter_avatar", "avatarUuid": null}, "features": ["projconfig-exclude-measurements", "anr-rate", "promotion-be-adoption-enabled", "performance-issues-all-events-tab", "issue-details-stacktrace-improvements", "integrations-stacktrace-link", "device-class-synthesis", "monitors", "transaction-name-mark-scrubbed-as-sanitized", "slack-overage-notifications", "symbol-sources", "auto-enable-codecov", "onboarding-sdk-selection", "session-replay-slack-new-issue", "performance-n-plus-one-api-calls-detector", "performance-large-http-payload-detector", "performance-view", "performance-issues-search", "release-health-drop-sessions", "device-classification", "profile-json-decode-main-thread-post-process-group", "advanced-search", "india-promotion", "promotion-mobperf-gift50kerr", "profiling-ui-frames", "ds-org-recalibration", "dashboards-mep", "team-project-creation-all", "profiling-global-suspect-functions", "crons-new-onboarding", "metric-alert-chartcuterie", "performance-span-histogram-view", "performance-issues-render-blocking-assets-detector", "session-replay-optimized-search", "profile-image-decode-main-thread-ingest", "session-replay", "performance-landing-page-stats-period", "profile-file-io-main-thread-ingest", "profile-image-decode-main-thread-visible", "issue-details-most-helpful-event-ui", "minute-resolution-sessions", "profiling-billing", "sdk-crash-detection", "profile-image-decode-main-thread-post-process-group", "escalating-metrics-backend", "derive-code-mappings", "transaction-metrics-extraction", "promotion-mobperf-discount20", "profile-frame-drop-experimental-post-process-group", "performance-metrics-backed-transaction-summary", "github-disable-on-broken", "profiling-view", "integrations-auto-repo-linking", "org-subdomains", "open-ai-suggestion", "profiling-cpu-chart", "event-attachments", "enterprise-spike-protection-window", "profile-json-decode-main-thread-ingest", "dynamic-sampling", "performance-mep-bannerless-ui", "invite-members-rate-limits", "integrations-deployment", "profile-json-decode-main-thread-visible", "performance-file-io-main-thread-detector", "streamline-targeting-context", "performance-db-main-thread-detector", "performance-consecutive-db-issue", "issue-details-most-helpful-event", "profiling", "performance-new-widget-designs", "session-replay-issue-emails", "performance-transaction-name-only-search-indexed", "performance-http-overhead-post-process-group", "open-membership", "transaction-name-normalize", "performance-http-overhead-ingest", "project-performance-settings-admin", "paid-to-free-promotion", "profile-file-io-main-thread-post-process-group", "session-replay-ui", "ondemand-budgets", "getting-started-doc-with-product-selection", "performance-issues-m-n-plus-one-db-detector", "mobile-cpu-memory-in-transactions", "profiling-memory-chart", "issue-platform", "shared-issues", "performance-issues-http-overhead-detector", "performance-http-overhead-visible", "performance-tracing-without-performance", "escalating-issues", "track-button-click-events", "onboarding", "metrics-extraction", "customer-domains", "dashboards-rh-widget", "project-stats", "session-replay-trial-ended-banner", "business-to-team-promotion", "performance-issues-compressed-assets-detector", "session-replay-recording-scrubbing", "performance-onboarding-checklist", "discover-events-rate-limit", "sourcemaps-bundle-flat-file-indexing", "alert-crash-free-metrics", "performance-consecutive-http-detector", "ds-sliding-window-org", "mep-rollout-flag", "profile-file-io-main-thread-visible", "am2-billing", "performance-slow-db-issue", "profile-frame-drop-experimental-ingest", "issue-alert-fallback-targeting"], "links": {"organizationUrl": "https://airbyte-09.sentry.io", "regionUrl": "https://us1.sentry.io"}, "hasAuthProvider": false}}, "emitted_at": 1695036641444} {"stream": "releases", "data": {"id": 289364918, "version": "checkout-app@3.2", "status": "open", "shortVersion": "checkout-app@3.2", "versionInfo": {"package": "checkout-app", "version": {"raw": "3.2", "major": 3, "minor": 2, "patch": 0, "pre": null, "buildCode": null, "components": 2}, "description": "3.2", "buildHash": null}, "ref": null, "url": null, "dateReleased": null, "dateCreated": "2021-09-02T08:10:12.826000Z", "data": {}, "newGroups": 0, "owner": null, "commitCount": 0, "lastCommit": null, "deployCount": 0, "lastDeploy": null, "authors": [], "projects": [{"id": 5942472, "slug": "airbyte-09", "name": "airbyte-09", "newGroups": 0, "platform": "python", "platforms": [], "hasHealthData": false}], "firstEvent": null, "lastEvent": null, "currentProjectMeta": {}, "userAgent": null}, "emitted_at": 1689246658349} -{"stream": "issues", "data": {"id": "4365423845", "shareId": null, "shortId": "AIRBYTE-09-4", "title": "This is an example Python exception", "culprit": "raven.scripts.runner in main", "permalink": "https://airbyte-09.sentry.io/issues/4365423845/", "logger": null, "level": "error", "status": "unresolved", "statusDetails": {}, "substatus": "ongoing", "isPublic": false, "platform": "python", "project": {"id": "5942472", "name": "airbyte-09", "slug": "airbyte-09", "platform": "python"}, "type": "default", "metadata": {"title": "This is an example Python exception"}, "numComments": 0, "assignedTo": null, "isBookmarked": false, "isSubscribed": false, "subscriptionDetails": null, "hasSeen": true, "annotations": [], "issueType": "error", "issueCategory": "error", "isUnhandled": false, "count": "10", "userCount": 1, "firstSeen": "2023-08-02T23:22:34.982000Z", "lastSeen": "2023-08-02T23:31:20.165000Z"}, "emitted_at": 1691020096265} -{"stream": "events", "data": {"id": "1cce9233aeb04eba8bbdb7bb00f00592", "groupID": "4365423845", "eventID": "1cce9233aeb04eba8bbdb7bb00f00592", "projectID": "5942472", "size": 8151, "entries": [{"data": {"formatted": "This is an example Python exception"}, "type": "message"}, {"data": {"frames": [{"filename": "raven/base.py", "absPath": "/home/ubuntu/.virtualenvs/getsentry/src/raven/raven/base.py", "module": "raven.base", "package": null, "platform": null, "instructionAddr": null, "symbolAddr": null, "function": "build_msg", "rawFunction": null, "symbol": null, "context": [[298, " frames = stack"], [299, ""], [300, " data.update({"], [301, " 'sentry.interfaces.Stacktrace': {"], [302, " 'frames': get_stack_info(frames,"], [303, " transformer=self.transform)"], [304, " },"], [305, " })"], [306, ""], [307, " if 'sentry.interfaces.Stacktrace' in data:"], [308, " if self.include_paths:"]], "lineNo": 303, "colNo": null, "inApp": false, "trust": null, "errors": null, "lock": null, "vars": {"'culprit'": null, "'data'": {"'message'": "u'This is a test message generated using ``raven test``'", "'sentry.interfaces.Message'": {"'message'": "u'This is a test message generated using ``raven test``'", "'params'": []}}, "'date'": "datetime.datetime(2013, 8, 13, 3, 8, 24, 880386)", "'event_id'": "'54a322436e1b47b88e239b78998ae742'", "'event_type'": "'raven.events.Message'", "'extra'": {"'go_deeper'": [["{\"'bar'\":[\"'baz'\"],\"'foo'\":\"'bar'\"}"]], "'loadavg'": [0.37255859375, 0.5341796875, 0.62939453125], "'user'": "'dcramer'"}, "'frames'": "", "'handler'": "", "'k'": "'sentry.interfaces.Message'", "'kwargs'": {"'level'": 20, "'message'": "'This is a test message generated using ``raven test``'"}, "'public_key'": null, "'result'": {"'message'": "u'This is a test message generated using ``raven test``'", "'sentry.interfaces.Message'": {"'message'": "u'This is a test message generated using ``raven test``'", "'params'": []}}, "'self'": "", "'stack'": true, "'tags'": null, "'time_spent'": null, "'v'": {"'message'": "u'This is a test message generated using ``raven test``'", "'params'": []}}}, {"filename": "raven/base.py", "absPath": "/home/ubuntu/.virtualenvs/getsentry/src/raven/raven/base.py", "module": "raven.base", "package": null, "platform": null, "instructionAddr": null, "symbolAddr": null, "function": "capture", "rawFunction": null, "symbol": null, "context": [[454, " if not self.is_enabled():"], [455, " return"], [456, ""], [457, " data = self.build_msg("], [458, " event_type, data, date, time_spent, extra, stack, tags=tags,"], [459, " **kwargs)"], [460, ""], [461, " self.send(**data)"], [462, ""], [463, " return (data.get('event_id'),)"], [464, ""]], "lineNo": 459, "colNo": null, "inApp": false, "trust": null, "errors": null, "lock": null, "vars": {"'data'": null, "'date'": null, "'event_type'": "'raven.events.Message'", "'extra'": {"'go_deeper'": [["{\"'bar'\":[\"'baz'\"],\"'foo'\":\"'bar'\"}"]], "'loadavg'": [0.37255859375, 0.5341796875, 0.62939453125], "'user'": "'dcramer'"}, "'kwargs'": {"'level'": 20, "'message'": "'This is a test message generated using ``raven test``'"}, "'self'": "", "'stack'": true, "'tags'": null, "'time_spent'": null}}, {"filename": "raven/base.py", "absPath": "/home/ubuntu/.virtualenvs/getsentry/src/raven/raven/base.py", "module": "raven.base", "package": null, "platform": null, "instructionAddr": null, "symbolAddr": null, "function": "captureMessage", "rawFunction": null, "symbol": null, "context": [[572, " \"\"\""], [573, " Creates an event from ``message``."], [574, ""], [575, " >>> client.captureMessage('My event just happened!')"], [576, " \"\"\""], [577, " return self.capture('raven.events.Message', message=message, **kwargs)"], [578, ""], [579, " def captureException(self, exc_info=None, **kwargs):"], [580, " \"\"\""], [581, " Creates an event from an exception."], [582, ""]], "lineNo": 577, "colNo": null, "inApp": false, "trust": null, "errors": null, "lock": null, "vars": {"'kwargs'": {"'data'": null, "'extra'": {"'go_deeper'": ["[{\"'bar'\":[\"'baz'\"],\"'foo'\":\"'bar'\"}]"], "'loadavg'": [0.37255859375, 0.5341796875, 0.62939453125], "'user'": "'dcramer'"}, "'level'": 20, "'stack'": true, "'tags'": null}, "'message'": "'This is a test message generated using ``raven test``'", "'self'": ""}}, {"filename": "raven/scripts/runner.py", "absPath": "/home/ubuntu/.virtualenvs/getsentry/src/raven/raven/scripts/runner.py", "module": "raven.scripts.runner", "package": null, "platform": null, "instructionAddr": null, "symbolAddr": null, "function": "send_test_message", "rawFunction": null, "symbol": null, "context": [[72, " level=logging.INFO,"], [73, " stack=True,"], [74, " tags=options.get('tags', {}),"], [75, " extra={"], [76, " 'user': get_uid(),"], [77, " 'loadavg': get_loadavg(),"], [78, " },"], [79, " ))"], [80, ""], [81, " if client.state.did_fail():"], [82, " print('error!')"]], "lineNo": 77, "colNo": null, "inApp": false, "trust": null, "errors": null, "lock": null, "vars": {"'client'": "", "'data'": null, "'k'": "'secret_key'", "'options'": {"'data'": null, "'tags'": null}}}, {"filename": "raven/scripts/runner.py", "absPath": "/home/ubuntu/.virtualenvs/getsentry/src/raven/raven/scripts/runner.py", "module": "raven.scripts.runner", "package": null, "platform": null, "instructionAddr": null, "symbolAddr": null, "function": "main", "rawFunction": null, "symbol": null, "context": [[107, " print(\"Using DSN configuration:\")"], [108, " print(\" \", dsn)"], [109, " print()"], [110, ""], [111, " client = Client(dsn, include_paths=['raven'])"], [112, " send_test_message(client, opts.__dict__)"]], "lineNo": 112, "colNo": null, "inApp": false, "trust": null, "errors": null, "lock": null, "vars": {"'args'": ["'test'", "'https://ebc35f33e151401f9deac549978bda11:f3403f81e12e4c24942d505f086b2cad@sentry.io/1'"], "'client'": "", "'dsn'": "'https://ebc35f33e151401f9deac549978bda11:f3403f81e12e4c24942d505f086b2cad@sentry.io/1'", "'opts'": "", "'parser'": "", "'root'": ""}}], "framesOmitted": null, "registers": null, "hasSystemFrames": false}, "type": "stacktrace"}, {"data": {"apiTarget": null, "method": "GET", "url": "http://example.com/foo", "query": [["foo", "bar"]], "fragment": null, "data": {"hello": "world"}, "headers": [["Content-Type", "application/json"], ["Referer", "http://example.com"], ["User-Agent", "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.72 Safari/537.36"]], "cookies": [["foo", "bar"], ["biz", "baz"]], "env": {"ENV": "prod"}, "inferredContentType": "application/json"}, "type": "request"}], "dist": null, "message": "This is an example Python exception", "title": "This is an example Python exception", "location": null, "user": {"id": "1", "email": "sentry@example.com", "username": "sentry", "ip_address": "127.0.0.1", "name": "Sentry", "data": null}, "contexts": {"browser": {"name": "Chrome", "version": "28.0.1500", "type": "browser"}, "client_os": {"name": "Windows", "version": "8", "type": "os"}}, "sdk": null, "context": {"emptyList": [], "emptyMap": {}, "length": 10837790, "results": [1, 2, 3, 4, 5], "session": {"foo": "bar"}, "unauthorized": false, "url": "http://example.org/foo/bar/"}, "packages": {"my.package": "1.0.0"}, "type": "default", "metadata": {"title": "This is an example Python exception"}, "tags": [{"key": "browser", "value": "Chrome 28.0.1500"}, {"key": "browser.name", "value": "Chrome"}, {"key": "client_os", "value": "Windows 8"}, {"key": "client_os.name", "value": "Windows"}, {"key": "environment", "value": "prod"}, {"key": "level", "value": "error"}, {"key": "sample_event", "value": "yes"}, {"key": "server_name", "value": "web01.example.org"}, {"key": "url", "value": "http://example.com/foo"}, {"key": "user", "value": "id:1", "query": "user.id:\"1\""}], "platform": "python", "dateReceived": "2023-08-02T23:31:41.101814Z", "errors": [], "occurrence": null, "_meta": {"entries": {}, "message": null, "user": null, "contexts": null, "sdk": null, "context": null, "packages": null, "tags": {}}, "crashFile": null, "culprit": "raven.scripts.runner in main", "dateCreated": "2023-08-02T23:30:41Z", "fingerprints": ["3a2b45089d0211943e5a6645fb4cea3f"], "groupingConfig": {"id": "newstyle:2023-01-11", "enhancements": "eJybzDRxc15qeXFJZU6qlZGBkbGugaGuoeEEAHJMCAM"}}, "emitted_at": 1691020171602} +{"stream": "issues", "data": {"id": "4365423845", "shareId": null, "shortId": "AIRBYTE-09-4", "title": "This is an example Python exception", "culprit": "raven.scripts.runner in main", "permalink": "https://airbyte-09.sentry.io/issues/4365423845/", "logger": null, "level": "error", "status": "unresolved", "statusDetails": {}, "substatus": "ongoing", "isPublic": false, "platform": "python", "project": {"id": "5942472", "name": "airbyte-09", "slug": "airbyte-09", "platform": "python"}, "type": "default", "metadata": {"title": "This is an example Python exception", "in_app_frame_mix": "system-only"}, "numComments": 0, "assignedTo": null, "isBookmarked": false, "isSubscribed": false, "subscriptionDetails": null, "hasSeen": true, "annotations": [], "issueType": "error", "issueCategory": "error", "isUnhandled": false, "count": "11", "userCount": 1, "firstSeen": "2023-08-02T23:22:34.982000Z", "lastSeen": "2023-09-08T13:39:15.138000Z"}, "emitted_at": 1695036639898} +{"stream": "events", "data": {"id": "ea46cf69cbc346c2b7a891dbdb2df289", "groupID": "4365423845", "eventID": "ea46cf69cbc346c2b7a891dbdb2df289", "projectID": "5942472", "size": 8281, "entries": [{"data": {"formatted": "This is an example Python exception"}, "type": "message"}, {"data": {"frames": [{"filename": "raven/base.py", "absPath": "/home/ubuntu/.virtualenvs/getsentry/src/raven/raven/base.py", "module": "raven.base", "package": null, "platform": null, "instructionAddr": null, "symbolAddr": null, "function": "build_msg", "rawFunction": null, "symbol": null, "context": [[298, " frames = stack"], [299, ""], [300, " data.update({"], [301, " 'sentry.interfaces.Stacktrace': {"], [302, " 'frames': get_stack_info(frames,"], [303, " transformer=self.transform)"], [304, " },"], [305, " })"], [306, ""], [307, " if 'sentry.interfaces.Stacktrace' in data:"], [308, " if self.include_paths:"]], "lineNo": 303, "colNo": null, "inApp": false, "trust": null, "errors": null, "lock": null, "sourceLink": null, "vars": {"'culprit'": null, "'data'": {"'message'": "u'This is a test message generated using ``raven test``'", "'sentry.interfaces.Message'": {"'message'": "u'This is a test message generated using ``raven test``'", "'params'": []}}, "'date'": "datetime.datetime(2013, 8, 13, 3, 8, 24, 880386)", "'event_id'": "'54a322436e1b47b88e239b78998ae742'", "'event_type'": "'raven.events.Message'", "'extra'": {"'go_deeper'": [["{\"'bar'\":[\"'baz'\"],\"'foo'\":\"'bar'\"}"]], "'loadavg'": [0.37255859375, 0.5341796875, 0.62939453125], "'user'": "'dcramer'"}, "'frames'": "", "'handler'": "", "'k'": "'sentry.interfaces.Message'", "'kwargs'": {"'level'": 20, "'message'": "'This is a test message generated using ``raven test``'"}, "'public_key'": null, "'result'": {"'message'": "u'This is a test message generated using ``raven test``'", "'sentry.interfaces.Message'": {"'message'": "u'This is a test message generated using ``raven test``'", "'params'": []}}, "'self'": "", "'stack'": true, "'tags'": null, "'time_spent'": null, "'v'": {"'message'": "u'This is a test message generated using ``raven test``'", "'params'": []}}}, {"filename": "raven/base.py", "absPath": "/home/ubuntu/.virtualenvs/getsentry/src/raven/raven/base.py", "module": "raven.base", "package": null, "platform": null, "instructionAddr": null, "symbolAddr": null, "function": "capture", "rawFunction": null, "symbol": null, "context": [[454, " if not self.is_enabled():"], [455, " return"], [456, ""], [457, " data = self.build_msg("], [458, " event_type, data, date, time_spent, extra, stack, tags=tags,"], [459, " **kwargs)"], [460, ""], [461, " self.send(**data)"], [462, ""], [463, " return (data.get('event_id'),)"], [464, ""]], "lineNo": 459, "colNo": null, "inApp": false, "trust": null, "errors": null, "lock": null, "sourceLink": null, "vars": {"'data'": null, "'date'": null, "'event_type'": "'raven.events.Message'", "'extra'": {"'go_deeper'": [["{\"'bar'\":[\"'baz'\"],\"'foo'\":\"'bar'\"}"]], "'loadavg'": [0.37255859375, 0.5341796875, 0.62939453125], "'user'": "'dcramer'"}, "'kwargs'": {"'level'": 20, "'message'": "'This is a test message generated using ``raven test``'"}, "'self'": "", "'stack'": true, "'tags'": null, "'time_spent'": null}}, {"filename": "raven/base.py", "absPath": "/home/ubuntu/.virtualenvs/getsentry/src/raven/raven/base.py", "module": "raven.base", "package": null, "platform": null, "instructionAddr": null, "symbolAddr": null, "function": "captureMessage", "rawFunction": null, "symbol": null, "context": [[572, " \"\"\""], [573, " Creates an event from ``message``."], [574, ""], [575, " >>> client.captureMessage('My event just happened!')"], [576, " \"\"\""], [577, " return self.capture('raven.events.Message', message=message, **kwargs)"], [578, ""], [579, " def captureException(self, exc_info=None, **kwargs):"], [580, " \"\"\""], [581, " Creates an event from an exception."], [582, ""]], "lineNo": 577, "colNo": null, "inApp": false, "trust": null, "errors": null, "lock": null, "sourceLink": null, "vars": {"'kwargs'": {"'data'": null, "'extra'": {"'go_deeper'": ["[{\"'bar'\":[\"'baz'\"],\"'foo'\":\"'bar'\"}]"], "'loadavg'": [0.37255859375, 0.5341796875, 0.62939453125], "'user'": "'dcramer'"}, "'level'": 20, "'stack'": true, "'tags'": null}, "'message'": "'This is a test message generated using ``raven test``'", "'self'": ""}}, {"filename": "raven/scripts/runner.py", "absPath": "/home/ubuntu/.virtualenvs/getsentry/src/raven/raven/scripts/runner.py", "module": "raven.scripts.runner", "package": null, "platform": null, "instructionAddr": null, "symbolAddr": null, "function": "send_test_message", "rawFunction": null, "symbol": null, "context": [[72, " level=logging.INFO,"], [73, " stack=True,"], [74, " tags=options.get('tags', {}),"], [75, " extra={"], [76, " 'user': get_uid(),"], [77, " 'loadavg': get_loadavg(),"], [78, " },"], [79, " ))"], [80, ""], [81, " if client.state.did_fail():"], [82, " print('error!')"]], "lineNo": 77, "colNo": null, "inApp": false, "trust": null, "errors": null, "lock": null, "sourceLink": null, "vars": {"'client'": "", "'data'": null, "'k'": "'secret_key'", "'options'": {"'data'": null, "'tags'": null}}}, {"filename": "raven/scripts/runner.py", "absPath": "/home/ubuntu/.virtualenvs/getsentry/src/raven/raven/scripts/runner.py", "module": "raven.scripts.runner", "package": null, "platform": null, "instructionAddr": null, "symbolAddr": null, "function": "main", "rawFunction": null, "symbol": null, "context": [[107, " print(\"Using DSN configuration:\")"], [108, " print(\" \", dsn)"], [109, " print()"], [110, ""], [111, " client = Client(dsn, include_paths=['raven'])"], [112, " send_test_message(client, opts.__dict__)"]], "lineNo": 112, "colNo": null, "inApp": false, "trust": null, "errors": null, "lock": null, "sourceLink": null, "vars": {"'args'": ["'test'", "'https://ebc35f33e151401f9deac549978bda11:f3403f81e12e4c24942d505f086b2cad@sentry.io/1'"], "'client'": "", "'dsn'": "'https://ebc35f33e151401f9deac549978bda11:f3403f81e12e4c24942d505f086b2cad@sentry.io/1'", "'opts'": "", "'parser'": "", "'root'": ""}}], "framesOmitted": null, "registers": null, "hasSystemFrames": false}, "type": "stacktrace"}, {"data": {"apiTarget": null, "method": "GET", "url": "http://example.com/foo", "query": [["foo", "bar"]], "fragment": null, "data": {"hello": "world"}, "headers": [["Content-Type", "application/json"], ["Referer", "http://example.com"], ["User-Agent", "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.72 Safari/537.36"]], "cookies": [["foo", "bar"], ["biz", "baz"]], "env": {"ENV": "prod"}, "inferredContentType": "application/json"}, "type": "request"}], "dist": null, "message": "This is an example Python exception", "title": "This is an example Python exception", "location": null, "user": {"id": "1", "email": "sentry@example.com", "username": "sentry", "ip_address": "127.0.0.1", "name": "Sentry", "data": null}, "contexts": {"browser": {"name": "Chrome", "version": "28.0.1500", "type": "browser"}, "client_os": {"name": "Windows", "version": "8", "type": "os"}}, "sdk": null, "context": {"emptyList": [], "emptyMap": {}, "length": 10837790, "results": [1, 2, 3, 4, 5], "session": {"foo": "bar"}, "unauthorized": false, "url": "http://example.org/foo/bar/"}, "packages": {"my.package": "1.0.0"}, "type": "default", "metadata": {"in_app_frame_mix": "system-only", "title": "This is an example Python exception"}, "tags": [{"key": "browser", "value": "Chrome 28.0.1500"}, {"key": "browser.name", "value": "Chrome"}, {"key": "client_os", "value": "Windows 8"}, {"key": "client_os.name", "value": "Windows"}, {"key": "environment", "value": "prod"}, {"key": "level", "value": "error"}, {"key": "sample_event", "value": "yes"}, {"key": "server_name", "value": "web01.example.org"}, {"key": "url", "value": "http://example.com/foo"}, {"key": "user", "value": "id:1", "query": "user.id:\"1\""}], "platform": "python", "dateReceived": "2023-09-08T13:40:15.139108Z", "errors": [], "occurrence": null, "_meta": {"entries": {}, "message": null, "user": null, "contexts": null, "sdk": null, "context": null, "packages": null, "tags": {}}, "crashFile": null, "culprit": "raven.scripts.runner in main", "dateCreated": "2023-09-08T13:39:15Z", "fingerprints": ["3a2b45089d0211943e5a6645fb4cea3f"], "groupingConfig": {"id": "newstyle:2023-01-11", "enhancements": "eJybzDRxc15qeXFJZU6qlZGBkbGugaGuoeEEAHJMCAM"}}, "emitted_at": 1695036638369} diff --git a/airbyte-integrations/connectors/source-sentry/metadata.yaml b/airbyte-integrations/connectors/source-sentry/metadata.yaml index 1e4b9e046536..00288df32e3a 100644 --- a/airbyte-integrations/connectors/source-sentry/metadata.yaml +++ b/airbyte-integrations/connectors/source-sentry/metadata.yaml @@ -5,7 +5,7 @@ data: connectorSubtype: api connectorType: source definitionId: cdaf146a-9b75-49fd-9dd2-9d64a0bb4781 - dockerImageTag: 0.2.4 + dockerImageTag: 0.3.0 maxSecondsBetweenMessages: 64800 dockerRepository: airbyte/source-sentry githubIssueLabel: source-sentry diff --git a/airbyte-integrations/connectors/source-sentry/source_sentry/schemas/events.json b/airbyte-integrations/connectors/source-sentry/source_sentry/schemas/events.json index c53ca5f62bf9..01308d418942 100644 --- a/airbyte-integrations/connectors/source-sentry/source_sentry/schemas/events.json +++ b/airbyte-integrations/connectors/source-sentry/source_sentry/schemas/events.json @@ -2,6 +2,7 @@ "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "properties": { + "type": {"type" : ["null", "string"]}, "eventID": { "type": "string" }, @@ -68,6 +69,98 @@ }, "title": { "type": "string" - } + }, + "_meta": { + "type": ["null", "object"], + "properties" : { + "context": {"type" : ["null", "string"]}, + "contexts": {"type" : ["null", "string"]}, + "entries": {"type" : ["null", "object"]}, + "message": {"type" : ["null", "string"]}, + "packages": {"type" : ["null", "string"]}, + "sdk": {"type" : ["null", "string"]}, + "tags": {"type" : ["null", "object"]}, + "user": {"type" : ["null", "string"]} + } + }, + "context": { + "type" : ["null", "object"], + "properties" : { + "emptyList": { + "type" : ["null", "array"] + }, + "emptyMap": { + "type" : ["null", "object"] + }, + "length": {"type" : ["null", "integer"]}, + "results": {"type" : ["null", "array"], "items" : {"type" : "integer"}}, + "session": {"type" : ["null", "object"], "properties" : { + "foo": { + "type" : ["null", "string"] + } + }}, + "unauthorized": {"type" : ["null", "boolean"]}, + "url": {"type" : ["null", "string"]} + } + }, + "contexts": { + "type" : ["null", "object"], + "properties" : { + "browser": {"type" : ["null", "object"], "properties" : { + "name": {"type" : ["null", "string"]}, + "type": {"type" : ["null", "string"]}, + "version": {"type" : ["null", "string"]} + }}, + "client_os": {"type" : ["null", "object"], "properties" : { + "name": {"type" : ["null", "string"]}, + "type": {"type" : ["null", "string"]}, + "version": {"type" : ["null", "string"]} + }} + } + }, + "crashFile": {"type" : ["null", "string"]}, + "culprit": {"type" : ["null", "string"]}, + "dateReceived": {"type" : ["null", "string"], "format" : "date-time"}, + "dist": {"type" : ["null", "string"]}, + "entries": {"type" : ["null", "array"], "items" : {"type" : ["null", "object"]}, "properties" : { + "data": {"type" : ["null", "object"], "properties" : { + "formatted": {"type" : ["null", "string"]}, + "frames": {"type" : ["null", "object"], "properties" : { + "absPath": {"type" : ["null", "string"]}, + "colNo": {"type" : ["null", "string"]}, + "context": {"type" : ["null", "array"]}, + "filename": {"type" : ["null", "string"]}, + "function": {"type" : ["null", "string"]}, + "inApp": {"type" : ["null", "boolean"]}, + "lineNo": {"type" : ["null", "integer"]}, + "lock": {"type" : ["null", "integer"]}, + "module": {"type" : ["null", "string"]}, + "package": {"type" : ["null", "string"]}, + "platform": {"type" : ["null", "string"]}, + "rawFunction": {"type" : ["null", "string"]}, + "sourceLink": {"type" : ["null", "string"]}, + "symbol": {"type" : ["null", "string"]}, + "symbolAddr": {"type" : ["null", "string"]}, + "trust": {"type" : ["null", "string"]} + }} + }}, + "type": {"type" : ["null", "string"]} + }}, + "errors": {"type" : ["null", "array"], "items" : {"type" : ["null", "string"]}}, + "fingerprints": {"type" : ["null", "array"], "items" : {"type" : ["null", "string"]}}, + "groupingConfig": {"type" : ["null", "object"], "properties" : { + "enhancements": {"type" : ["null", "string"]}, + "id": {"type" : ["null", "string"]} + }}, + "location": {"type" : ["null", "string"]}, + "metadata": {"type" : ["null", "object"], "properties" : { + "in_app_frame_mix": {"type" : ["null", "string"]}, + "title": {"type" : ["null", "string"]} + }}, + "occurrence": {"type" : ["null", "string"]}, + "packages": {"type" : ["null", "object"]}, + "projectID": {"type" : ["null", "string"]}, + "sdk": {"type" : ["null", "string"]}, + "size": {"type" : ["null", "integer"]} } } diff --git a/airbyte-integrations/connectors/source-sentry/source_sentry/schemas/issues.json b/airbyte-integrations/connectors/source-sentry/source_sentry/schemas/issues.json index d4814ea21498..53957231edbc 100644 --- a/airbyte-integrations/connectors/source-sentry/source_sentry/schemas/issues.json +++ b/airbyte-integrations/connectors/source-sentry/source_sentry/schemas/issues.json @@ -128,6 +128,21 @@ }, "userCount": { "type": "integer" + }, + "isUnhandled": { + "type" : ["null", "boolean"] + }, + "issueCategory": { + "type" : ["null", "string"] + }, + "issueType": { + "type" : ["null", "string"] + }, + "platform": { + "type" : ["null", "string"] + }, + "substatus": { + "type" : ["null", "string"] } } } diff --git a/airbyte-integrations/connectors/source-sentry/source_sentry/schemas/project_detail.json b/airbyte-integrations/connectors/source-sentry/source_sentry/schemas/project_detail.json index efb12e70ffbc..061aa7221bda 100644 --- a/airbyte-integrations/connectors/source-sentry/source_sentry/schemas/project_detail.json +++ b/airbyte-integrations/connectors/source-sentry/source_sentry/schemas/project_detail.json @@ -397,6 +397,51 @@ }, "verifySSL": { "type": "boolean" - } + }, + "access": { + "type" : ["null", "array"], + "items" : { + "type" : ["null", "string"] + } + }, + "builtinSymbolSources": { + "type" : ["null", "array"], + "items" : { + "type" : ["null", "string"] + } + }, + "dynamicSamplingBiases": { + "type" : ["null", "array"], + "items" : { + "type" : ["null", "object"], + "properties" : { + "id": {"type" : ["null", "string"]}, + "active": {"type" : ["null", "boolean"]} + } + } + }, + "eventProcessing": { + "type" : ["null", "object"], + "properties" : { + "symbolicationDegraded": { + "type" : ["null", "boolean"] + } + } + }, + "fingerprintingRules": {"type" : ["null", "string"]}, + "firstTransactionEvent": {"type" : ["null", "boolean"]}, + "groupingAutoUpdate": {"type" : ["null", "boolean"]}, + "groupingConfig": {"type" : ["null", "string"]}, + "groupingEnhancements": {"type" : ["null", "string"]}, + "groupingEnhancementsBase": {"type" : ["null", "string"]}, + "hasMinifiedStackTrace": {"type" : ["null", "boolean"]}, + "hasMonitors": {"type" : ["null", "boolean"]}, + "hasProfiles": {"type" : ["null", "boolean"]}, + "hasReplays": {"type" : ["null", "boolean"]}, + "hasSessions": {"type" : ["null", "boolean"]}, + "recapServerUrl": {"type" : ["null", "string"]}, + "secondaryGroupingConfig": {"type" : ["null", "string"]}, + "secondaryGroupingExpiry": {"type" : ["null", "integer"]}, + "symbolSources": {"type" : ["null", "string"]} } } diff --git a/airbyte-integrations/connectors/source-sentry/source_sentry/schemas/projects.json b/airbyte-integrations/connectors/source-sentry/source_sentry/schemas/projects.json index 3656b0b27c2a..62a2a56ea03c 100644 --- a/airbyte-integrations/connectors/source-sentry/source_sentry/schemas/projects.json +++ b/airbyte-integrations/connectors/source-sentry/source_sentry/schemas/projects.json @@ -114,6 +114,18 @@ "status": { "type": "string", "enum": ["active", "disabled", "pending_deletion", "deletion_in_progress"] - } + }, + "access": { + "type" : ["null", "array"], + "items" : { + "type" : ["null", "string"] + } + }, + "firstTransactionEvent": {"type" : ["null", "boolean"]}, + "hasMonitors": {"type" : ["null", "boolean"]}, + "hasProfiles": {"type" : ["null", "boolean"]}, + "hasReplays": {"type" : ["null", "boolean"]}, + "hasSessions": {"type" : ["null", "boolean"]}, + "hasMinifiedStackTrace": {"type" : ["null", "boolean"]} } } diff --git a/airbyte-integrations/connectors/source-sentry/source_sentry/schemas/releases.json b/airbyte-integrations/connectors/source-sentry/source_sentry/schemas/releases.json index 812fc480bcd2..c581d5430c72 100644 --- a/airbyte-integrations/connectors/source-sentry/source_sentry/schemas/releases.json +++ b/airbyte-integrations/connectors/source-sentry/source_sentry/schemas/releases.json @@ -83,6 +83,29 @@ }, "version": { "type": ["null", "string"] + }, + "currentProjectMeta": { + "type" : ["null", "object"] + }, + "status": {"type" : ["null", "string"]}, + "userAgent": {"type" : ["null", "string"]}, + "versionInfo": {"type" : ["null", "object"], + "properties" : { + "buildHash": {"type" : ["null", "string"]}, + "description": {"type" : ["null", "string"]}, + "package": {"type" : ["null", "string"]}, + "version": {"type" : ["null", "object"], + "properties" : { + "buildCode": {"type" : ["null", "string"]}, + "components": {"type" : ["null", "integer"]}, + "major": {"type" : ["null", "integer"]}, + "minor": {"type" : ["null", "integer"]}, + "patch": {"type" : ["null", "integer"]}, + "pre": {"type" : ["null", "string"]}, + "raw": {"type" : ["null", "string"]} + } + } + } } } } diff --git a/airbyte-integrations/connectors/source-sftp/.dockerignore b/airbyte-integrations/connectors/source-sftp/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/source-sftp/.dockerignore +++ b/airbyte-integrations/connectors/source-sftp/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/source-sftp/build.gradle b/airbyte-integrations/connectors/source-sftp/build.gradle index dc6c72be8c8d..4e52ee08d9fd 100644 --- a/airbyte-integrations/connectors/source-sftp/build.gradle +++ b/airbyte-integrations/connectors/source-sftp/build.gradle @@ -13,11 +13,10 @@ dependencies { implementation project(':airbyte-config-oss:config-models-oss') implementation libs.airbyte.protocol implementation project(':airbyte-integrations:bases:base-java') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation 'com.fasterxml.jackson.dataformat:jackson-dataformat-csv:2.13.2' implementation 'com.jcraft:jsch:0.1.55' integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-sftp') - testImplementation libs.connectors.testcontainers + testImplementation libs.testcontainers } diff --git a/airbyte-integrations/connectors/source-shopify/Dockerfile b/airbyte-integrations/connectors/source-shopify/Dockerfile index 26f595462640..a2efd65c4441 100644 --- a/airbyte-integrations/connectors/source-shopify/Dockerfile +++ b/airbyte-integrations/connectors/source-shopify/Dockerfile @@ -21,6 +21,9 @@ COPY --from=builder /install /usr/local # Bash is installed for more convenient debugging. RUN apk --no-cache add bash +# Include socat binary in the connector image +RUN apk --no-cache add socat + # copy payload code only COPY main.py ./ COPY source_shopify ./source_shopify @@ -28,5 +31,5 @@ COPY source_shopify ./source_shopify ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=1.0.0 +LABEL io.airbyte.version=1.1.1 LABEL io.airbyte.name=airbyte/source-shopify diff --git a/airbyte-integrations/connectors/source-shopify/acceptance-test-config.yml b/airbyte-integrations/connectors/source-shopify/acceptance-test-config.yml index da055f24b729..9ca601ce51c4 100644 --- a/airbyte-integrations/connectors/source-shopify/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-shopify/acceptance-test-config.yml @@ -4,11 +4,6 @@ acceptance_tests: spec: tests: - spec_path: "source_shopify/spec.json" - backward_compatibility_tests_config: - # re-order the authentication options, - # to have the `OAuth2.0` go first. - # made `start_date` non-required - disable_for_version: "0.6.2" connection: tests: - config_path: "secrets/config.json" @@ -29,11 +24,6 @@ acceptance_tests: discovery: tests: - config_path: "secrets/config.json" - backward_compatibility_tests_config: - # migrated to the 2023-07 api version, - # schemas for orders, transactions, fulfillment_orders, order_refunds have changed. - # see PR: https://github.com/airbytehq/airbyte/issues/28127 for more. - disable_for_version: "0.6.2" basic_read: tests: - config_path: "secrets/config.json" @@ -61,3 +51,7 @@ acceptance_tests: - config_path: "secrets/config.json" configured_catalog_path: "integration_tests/configured_catalog.json" timeout_seconds: 3600 + ignored_fields: + products_graph_ql: + - name: onlineStorePreviewUrl + bypass_reason: Floating URL values diff --git a/airbyte-integrations/connectors/source-shopify/integration_tests/abnormal_state.json b/airbyte-integrations/connectors/source-shopify/integration_tests/abnormal_state.json index e18e70cb07f4..bc5819d2c48a 100644 --- a/airbyte-integrations/connectors/source-shopify/integration_tests/abnormal_state.json +++ b/airbyte-integrations/connectors/source-shopify/integration_tests/abnormal_state.json @@ -1,500 +1,601 @@ [ - { - "type": "STREAM", - "stream": { - "stream_state": { - "id": 99999999999999 - }, - "stream_descriptor": { - "name": "articles" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-07-08T05:40:38-07:00" - }, - "stream_descriptor": { - "name": "metafield_articles" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "id": 99999999999999 - }, - "stream_descriptor": { - "name": "blogs" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-07-08T05:40:38-07:00" - }, - "stream_descriptor": { - "name": "metafield_blogs" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-07-08T05:40:38-07:00" - }, - "stream_descriptor": { - "name": "customers" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-07-08T05:40:38-07:00" - }, - "stream_descriptor": { - "name": "metafield_customers" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-07-08T05:40:38-07:00" - }, - "stream_descriptor": { - "name": "orders" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-07-08T05:40:38-07:00" - }, - "stream_descriptor": { - "name": "draft_orders" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-07-08T05:40:38-07:00" - }, - "stream_descriptor": { - "name": "products" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updatedAt": "2025-07-08T05:40:38-07:00" - }, - "stream_descriptor": { - "name": "products_graph_ql" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-07-08T05:40:38-07:00" - }, - "stream_descriptor": { - "name": "abandoned_checkouts" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-07-08T05:40:38-07:00" - }, - "stream_descriptor": { - "name": "metafield_draft_orders" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-07-08T05:40:38-07:00" - }, - "stream_descriptor": { - "name": "metafield_orders" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "id": 99999999999999 - }, - "stream_descriptor": { - "name": "product_images" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-07-08T05:40:38-07:00" - }, - "stream_descriptor": { - "name": "metafield_product_images" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "id": 99999999999999 - }, - "stream_descriptor": { - "name": "product_variants" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-07-08T05:40:38-07:00" - }, - "stream_descriptor": { - "name": "metafield_product_variants" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-07-08T05:40:38-07:00" - }, - "stream_descriptor": { - "name": "metafield_products" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "id": 99999999999999 - }, - "stream_descriptor": { - "name": "collects" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-07-08T05:40:38-07:00" - }, - "stream_descriptor": { - "name": "collections" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-07-08T05:40:38-07:00" - }, - "stream_descriptor": { - "name": "metafield_collections" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-07-08T05:40:38-07:00" - }, - "stream_descriptor": { - "name": "smart_collections" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-07-08T05:40:38-07:00" - }, - "stream_descriptor": { - "name": "metafield_smart_collections" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-07-08T05:40:38-07:00" - }, - "stream_descriptor": { - "name": "custom_collections" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-07-08T05:40:38-07:00" - }, - "stream_descriptor": { - "name": "metafield_custom_collections" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "created_at": "2025-03-03T03:47:46-08:00", - "orders": { - "updated_at": "2025-03-03T03:47:46-08:00" - } - }, - "stream_descriptor": { - "name": "order_refunds" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "id": 99999999999999, - "orders": { - "updated_at": "2025-02-22T00:37:28-08:00" - } - }, - "stream_descriptor": { - "name": "order_risks" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-07-08T05:40:38-07:00" - }, - "stream_descriptor": { - "name": "metafield_locations" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "created_at": "2025-03-03T03:47:45-08:00", - "orders": { - "updated_at": "2025-03-03T03:47:46-08:00" - } - }, - "stream_descriptor": { - "name": "transactions" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "processed_at": "2025-03-03T03:47:45-08:00" - }, - "stream_descriptor": { - "name": "tender_transactions" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-07-08T05:24:10-07:00" - }, - "stream_descriptor": { - "name": "pages" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-07-08T05:24:10-07:00" - }, - "stream_descriptor": { - "name": "metafield_pages" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-07-08T05:24:10-07:00" - }, - "stream_descriptor": { - "name": "price_rules" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-09-10T06:48:10-07:00", - "price_rules": { - "updated_at": "2025-09-10T06:48:10-07:00" - } - }, - "stream_descriptor": { - "name": "discount_codes" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-02-22T00:40:26-08:00", - "products": { - "updated_at": "2025-08-18T02:39:48-07:00" - } - }, - "stream_descriptor": { - "name": "inventory_items" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-03-03T03:47:51-08:00", - "locations": {} - }, - "stream_descriptor": { - "name": "inventory_levels" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "id": 99999999999999, - "orders": { - "updated_at": "2025-03-03T03:47:46-08:00" - } - }, - "stream_descriptor": { - "name": "fulfillment_orders" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-02-27T23:49:13-08:00", - "orders": { - "updated_at": "2025-03-03T03:47:46-08:00" - } - }, - "stream_descriptor": { - "name": "fulfillments" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "id": 99999999999999 - }, - "stream_descriptor": { - "name": "balance_transactions" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "updated_at": "2025-07-08T05:24:10-07:00" - }, - "stream_descriptor": { - "name": "metafield_shops" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "id": 99999999999999, - "customers": { - "updated_at": "2025-02-22T00:37:28-08:00" - } - }, - "stream_descriptor": { - "name": "customer_address" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "id": 99999999999999 - }, - "stream_descriptor": { - "name": "customer_saved_search" - } - } - }, - { - "type": "STREAM", - "stream": { - "stream_state": { - "id": 99999999999999 - }, - "stream_descriptor": { - "name": "disputes" - } + { + "type": "STREAM", + "stream": { + "stream_state": { + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "customers" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "deleted": { + "deleted_at": "2027-07-11T13:07:45-07:00" + }, + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "orders" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "draft_orders" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "deleted": { + "deleted_at": "2027-07-11T13:07:45-07:00" + }, + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "products" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "updatedAt": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "products_graph_ql" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "abandoned_checkouts" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "metafields" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "id": 99999999999999 + }, + "stream_descriptor": { + "name": "collects" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "deleted": { + "deleted_at": "2027-07-11T13:07:45-07:00" + }, + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "custom_collections" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "orders": { + "updated_at": "2027-07-11T13:07:45-07:00", + "deleted": { + "deleted_at": "2027-07-11T13:07:45-07:00" + } + }, + "created_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "order_refunds" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "orders": { + "updated_at": "2027-07-11T13:07:45-07:00", + "deleted": { + "deleted_at": "2027-07-11T13:07:45-07:00" + } + }, + "id": 99999999999999 + }, + "stream_descriptor": { + "name": "order_risks" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "orders": { + "updated_at": "2027-07-11T13:07:45-07:00", + "deleted": { + "deleted_at": "2027-07-11T13:07:45-07:00" + } + }, + "created_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "transactions" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "processed_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "tender_transactions" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "deleted": { + "deleted_at": "2027-07-11T13:07:45-07:00" + }, + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "pages" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "deleted": { + "deleted_at": "2027-07-11T13:07:45-07:00" + }, + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "price_rules" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "price_rules": { + "updated_at": "2027-07-11T13:07:45-07:00", + "deleted": { + "deleted_at": "2027-07-11T13:07:45-07:00" + } + }, + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "discount_codes" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "products": { + "updated_at": "2027-07-11T13:07:45-07:00", + "deleted": { + "deleted_at": "2027-07-11T13:07:45-07:00" + } + }, + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "inventory_items" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "locations": {}, + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "inventory_levels" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "orders": { + "updated_at": "2027-07-11T13:07:45-07:00", + "deleted": { + "deleted_at": "2027-07-11T13:07:45-07:00" + } + }, + "id": 99999999999999 + }, + "stream_descriptor": { + "name": "fulfillment_orders" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "orders": { + "updated_at": "2027-07-11T13:07:45-07:00", + "deleted": { + "deleted_at": "2027-07-11T13:07:45-07:00" + } + }, + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "fulfillments" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": {}, + "stream_descriptor": { + "name": "balance_transactions" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "id": 99999999999999, + "deleted": { + "deleted_at": "2027-07-11T13:07:45-07:00" + } + }, + "stream_descriptor": { + "name": "articles" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "articles": { + "id": 99999999999999, + "deleted": {} + }, + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "metafield_articles" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "id": 99999999999999, + "deleted": { + "deleted_at": "2027-07-11T13:07:45-07:00" + } + }, + "stream_descriptor": { + "name": "blogs" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "updated_at": "2027-07-11T13:07:45-07:00", + "blogs": { + "id": 99999999999999 + } + }, + "stream_descriptor": { + "name": "metafield_blogs" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "customers": { + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "metafield_customers" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "orders": { + "updated_at": "2027-07-11T13:07:45-07:00", + "deleted": { + "deleted_at": "2027-07-11T13:07:45-07:00" + } + }, + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "metafield_orders" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "draft_orders": { + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "metafield_draft_orders" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "products": { + "updated_at": "2027-07-11T13:07:45-07:00", + "deleted": { + "deleted_at": "2027-07-11T13:07:45-07:00" + } + }, + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "metafield_products" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "id": 99999999999999, + "products": { + "updated_at": "2027-07-11T13:07:45-07:00", + "deleted": { + "deleted_at": "2027-07-11T13:07:45-07:00" + } + } + }, + "stream_descriptor": { + "name": "product_images" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "products": { + "updated_at": "2027-07-11T13:07:45-07:00", + "deleted": { + "deleted_at": "2027-07-11T13:07:45-07:00" + } + }, + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "metafield_product_images" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "id": 99999999999999, + "products": { + "updated_at": "2027-07-11T13:07:45-07:00", + "deleted": { + "deleted_at": "2027-07-11T13:07:45-07:00" + } + } + }, + "stream_descriptor": { + "name": "product_variants" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "products": { + "updated_at": "2027-07-11T13:07:45-07:00", + "deleted": { + "deleted_at": "2027-07-11T13:07:45-07:00" + } + }, + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "metafield_product_variants" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "collects": { + "id": 99999999999999 + }, + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "collections" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "collects": { + "id": 99999999999999 + }, + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "metafield_collections" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "smart_collections" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "smart_collections": { + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "metafield_smart_collections" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "pages": { + "updated_at": "2027-07-11T13:07:45-07:00", + "deleted": { + "deleted_at": "2027-07-11T13:07:45-07:00" + } + }, + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "metafield_pages" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "metafield_shops" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "locations": {}, + "updated_at": "2027-07-11T13:07:45-07:00" + }, + "stream_descriptor": { + "name": "metafield_locations" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": {}, + "stream_descriptor": { + "name": "disputes" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": {}, + "stream_descriptor": { + "name": "customer_saved_search" + } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { + "id": 99999999999999, + "customers": { + "updated_at": "2027-07-11T13:07:45-07:00" + } + }, + "stream_descriptor": { + "name": "customer_address" + } + } } - } ] diff --git a/airbyte-integrations/connectors/source-shopify/integration_tests/expected_records.jsonl b/airbyte-integrations/connectors/source-shopify/integration_tests/expected_records.jsonl index 5a501c994214..335863caa64c 100644 --- a/airbyte-integrations/connectors/source-shopify/integration_tests/expected_records.jsonl +++ b/airbyte-integrations/connectors/source-shopify/integration_tests/expected_records.jsonl @@ -1,75 +1,78 @@ -{"stream": "articles", "data": {"id": 558137508029, "title": "My new Article title", "created_at": "2022-10-07T16:09:02-07:00", "body_html": "

I like articles

\n

Yea, I like posting them through REST.

", "blog_id": 80417685693, "author": "John Smith", "user_id": null, "published_at": "2011-03-24T08:45:47-07:00", "updated_at": "2023-04-14T03:18:26-07:00", "summary_html": null, "template_suffix": null, "handle": "my-new-article-title", "tags": "Has Been Tagged, This Post", "admin_graphql_api_id": "gid://shopify/OnlineStoreArticle/558137508029", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756860989} -{"stream": "articles", "data": {"id": 558627979453, "title": "Test Blog Post", "created_at": "2023-04-14T03:19:02-07:00", "body_html": "Test Blog Post 1", "blog_id": 80417685693, "author": "Airbyte Airbyte", "user_id": "74861019325", "published_at": null, "updated_at": "2023-04-14T03:19:18-07:00", "summary_html": "", "template_suffix": "", "handle": "test-blog-post", "tags": "Has Been Tagged", "admin_graphql_api_id": "gid://shopify/OnlineStoreArticle/558627979453", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756860991} -{"stream": "blogs", "data": {"id": 80417685693, "handle": "news", "title": "News", "updated_at": "2023-04-14T03:20:20-07:00", "commentable": "no", "feedburner": null, "feedburner_location": null, "created_at": "2021-06-22T18:00:25-07:00", "template_suffix": null, "tags": "Has Been Tagged, This Post", "admin_graphql_api_id": "gid://shopify/OnlineStoreBlog/80417685693", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756863123} -{"stream": "collections", "data": {"id": 270889287869, "handle": "frontpage", "title": "Home page", "updated_at": "2023-04-24T11:05:13-07:00", "body_html": "updated_mon_24.04.2023", "published_at": "2021-06-22T18:00:25-07:00", "sort_order": "best-selling", "template_suffix": "", "products_count": 2, "collection_type": "custom", "published_scope": "web", "admin_graphql_api_id": "gid://shopify/Collection/270889287869", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756866594} -{"stream": "collections", "data": {"id": 270889287869, "handle": "frontpage", "title": "Home page", "updated_at": "2023-04-24T11:05:13-07:00", "body_html": "updated_mon_24.04.2023", "published_at": "2021-06-22T18:00:25-07:00", "sort_order": "best-selling", "template_suffix": "", "products_count": 2, "collection_type": "custom", "published_scope": "web", "admin_graphql_api_id": "gid://shopify/Collection/270889287869", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756867145} -{"stream": "collects", "data": {"id": 29229083197629, "collection_id": 270889287869, "product_id": 6796217811133, "created_at": "2021-06-22T18:09:26-07:00", "updated_at": "2021-06-22T18:09:57-07:00", "position": 1, "sort_value": "0000000001", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756868825} -{"stream": "collects", "data": {"id": 29427031703741, "collection_id": 270889287869, "product_id": 6796220989629, "created_at": "2021-07-19T07:01:36-07:00", "updated_at": "2022-03-06T14:12:21-08:00", "position": 2, "sort_value": "0000000002", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756868827} -{"stream": "custom_collections", "data": {"id": 270889287869, "handle": "frontpage", "title": "Home page", "updated_at": "2023-04-24T11:05:13-07:00", "body_html": "updated_mon_24.04.2023", "published_at": "2021-06-22T18:00:25-07:00", "sort_order": "best-selling", "template_suffix": "", "published_scope": "web", "admin_graphql_api_id": "gid://shopify/Collection/270889287869", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756869944} -{"stream": "customers", "data": {"id": 6569096478909, "email": "test@test.com", "accepts_marketing": true, "created_at": "2023-04-13T02:30:04-07:00", "updated_at": "2023-04-24T06:53:48-07:00", "first_name": "New Test", "last_name": "Customer", "orders_count": 0, "state": "disabled", "total_spent": 0.0, "last_order_id": null, "note": "updated_mon_24.04.2023", "verified_email": true, "multipass_identifier": null, "tax_exempt": false, "tags": "", "last_order_name": null, "currency": "USD", "phone": "+380639379992", "addresses": [{"id": 8092523135165, "customer_id": 6569096478909, "first_name": "New Test", "last_name": "Customer", "company": "Test Company", "address1": "My Best Accent", "address2": "", "city": "Fair Lawn", "province": "New Jersey", "country": "United States", "zip": "07410", "phone": "", "name": "New Test Customer", "province_code": "NJ", "country_code": "US", "country_name": "United States", "default": true}], "accepts_marketing_updated_at": "2023-04-13T02:30:04-07:00", "marketing_opt_in_level": "single_opt_in", "tax_exemptions": "[]", "email_marketing_consent": {"state": "subscribed", "opt_in_level": "single_opt_in", "consent_updated_at": "2023-04-13T02:30:04-07:00"}, "sms_marketing_consent": {"state": "not_subscribed", "opt_in_level": "single_opt_in", "consent_updated_at": null, "consent_collected_from": "SHOPIFY"}, "admin_graphql_api_id": "gid://shopify/Customer/6569096478909", "default_address": {"id": 8092523135165, "customer_id": 6569096478909, "first_name": "New Test", "last_name": "Customer", "company": "Test Company", "address1": "My Best Accent", "address2": "", "city": "Fair Lawn", "province": "New Jersey", "country": "United States", "zip": "07410", "phone": "", "name": "New Test Customer", "province_code": "NJ", "country_code": "US", "country_name": "United States", "default": true}, "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756871549} -{"stream": "customers", "data": {"id": 6676027932861, "email": "marcos@airbyte.io", "accepts_marketing": false, "created_at": "2023-07-11T13:07:45-07:00", "updated_at": "2023-07-11T13:07:45-07:00", "first_name": "MArcos", "last_name": "Millnitz", "orders_count": 0, "state": "disabled", "total_spent": 0.0, "last_order_id": null, "note": null, "verified_email": true, "multipass_identifier": null, "tax_exempt": false, "tags": "", "last_order_name": null, "currency": "USD", "phone": null, "addresses": [{"id": 8212915650749, "customer_id": 6676027932861, "first_name": "MArcos", "last_name": "Millnitz", "company": null, "address1": null, "address2": null, "city": null, "province": null, "country": null, "zip": null, "phone": null, "name": "MArcos Millnitz", "province_code": null, "country_code": null, "country_name": null, "default": true}], "accepts_marketing_updated_at": "2023-07-11T13:07:45-07:00", "marketing_opt_in_level": null, "tax_exemptions": "[]", "email_marketing_consent": {"state": "not_subscribed", "opt_in_level": "single_opt_in", "consent_updated_at": null}, "sms_marketing_consent": null, "admin_graphql_api_id": "gid://shopify/Customer/6676027932861", "default_address": {"id": 8212915650749, "customer_id": 6676027932861, "first_name": "MArcos", "last_name": "Millnitz", "company": null, "address1": null, "address2": null, "city": null, "province": null, "country": null, "zip": null, "phone": null, "name": "MArcos Millnitz", "province_code": null, "country_code": null, "country_name": null, "default": true}, "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756871550} -{"stream": "discount_codes", "data": {"id": 11539415990461, "price_rule_id": 945000284349, "code": "updated_mon_24.04.2023", "usage_count": 0, "created_at": "2021-07-07T07:23:11-07:00", "updated_at": "2023-04-24T05:52:22-07:00", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756874285} -{"stream": "draft_orders", "data": {"id": 929019691197, "note": "updated_mon_24.04.2023", "email": null, "taxes_included": true, "currency": "USD", "invoice_sent_at": null, "created_at": "2022-02-22T03:23:19-08:00", "updated_at": "2023-04-24T07:18:06-07:00", "tax_exempt": false, "completed_at": null, "name": "#D21", "status": "open", "line_items": [{"id": 58117295538365, "variant_id": 40090585923773, "product_id": 6796220989629, "title": "4 Ounce Soy Candle", "variant_title": "Metal", "sku": "", "vendor": "Hartmann Group", "quantity": 2, "requires_shipping": true, "taxable": true, "gift_card": false, "fulfillment_service": "manual", "grams": 112, "tax_lines": [{"rate": 0.2, "title": "PDV", "price": 6.33}], "applied_discount": null, "name": "4 Ounce Soy Candle - Metal", "properties": [], "custom": false, "price": 19.0, "admin_graphql_api_id": "gid://shopify/DraftOrderLineItem/58117295538365"}, {"id": 58117295571133, "variant_id": null, "product_id": null, "title": "Test Item", "variant_title": null, "sku": null, "vendor": null, "quantity": 1, "requires_shipping": true, "taxable": true, "gift_card": false, "fulfillment_service": "manual", "grams": 1000, "tax_lines": [{"rate": 0.2, "title": "PDV", "price": 0.17}], "applied_discount": null, "name": "Test Item", "properties": [], "custom": true, "price": 1.0, "admin_graphql_api_id": "gid://shopify/DraftOrderLineItem/58117295571133"}], "shipping_address": null, "billing_address": null, "invoice_url": "https://airbyte-integration-test.myshopify.com/58033176765/invoices/12893992cc01fc67935ab014fcf9300f", "applied_discount": null, "order_id": null, "shipping_line": {"title": "Test Shipping Fee", "custom": true, "handle": null, "price": 3.0}, "tax_lines": [{"rate": 0.2, "title": "PDV", "price": 6.33}, {"rate": 0.2, "title": "PDV", "price": 0.17}], "tags": "", "note_attributes": [], "total_price": "42.00", "subtotal_price": "39.00", "total_tax": "6.50", "payment_terms": null, "admin_graphql_api_id": "gid://shopify/DraftOrder/929019691197", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756876905} -{"stream": "draft_orders", "data": {"id": 988639920317, "note": null, "email": null, "taxes_included": true, "currency": "USD", "invoice_sent_at": null, "created_at": "2023-04-24T11:00:01-07:00", "updated_at": "2023-04-24T11:00:09-07:00", "tax_exempt": false, "completed_at": "2023-04-24T11:00:09-07:00", "name": "#D29", "status": "completed", "line_items": [{"id": 58121808019645, "variant_id": 41561961824445, "product_id": 6796220989629, "title": "4 Ounce Soy Candle", "variant_title": "Test Variant 2", "sku": "", "vendor": "Hartmann Group", "quantity": 1, "requires_shipping": true, "taxable": true, "gift_card": false, "fulfillment_service": "manual", "grams": 112, "tax_lines": [{"rate": 0.2, "title": "PDV", "price": 3.17}], "applied_discount": null, "name": "4 Ounce Soy Candle - Test Variant 2", "properties": [], "custom": false, "price": 19.0, "admin_graphql_api_id": "gid://shopify/DraftOrderLineItem/58121808019645"}], "shipping_address": null, "billing_address": null, "invoice_url": "https://airbyte-integration-test.myshopify.com/58033176765/invoices/95271a5eeb083c831f76a98fa3712f89", "applied_discount": null, "order_id": 5033391718589, "shipping_line": null, "tax_lines": [{"rate": 0.2, "title": "PDV", "price": 3.17}], "tags": "", "note_attributes": [], "total_price": "19.00", "subtotal_price": "19.00", "total_tax": "3.17", "payment_terms": null, "admin_graphql_api_id": "gid://shopify/DraftOrder/988639920317", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756876906} -{"stream": "draft_orders", "data": {"id": 997801689277, "note": null, "email": null, "taxes_included": true, "currency": "USD", "invoice_sent_at": null, "created_at": "2023-07-11T12:57:53-07:00", "updated_at": "2023-07-11T12:57:55-07:00", "tax_exempt": false, "completed_at": null, "name": "#D30", "status": "open", "line_items": [{"id": 58159126905021, "variant_id": 40090585923773, "product_id": 6796220989629, "title": "4 Ounce Soy Candle", "variant_title": "Metal", "sku": "", "vendor": "Hartmann Group", "quantity": 1, "requires_shipping": true, "taxable": true, "gift_card": false, "fulfillment_service": "manual", "grams": 112, "tax_lines": [{"rate": 0.2, "title": "PDV", "price": 3.17}], "applied_discount": null, "name": "4 Ounce Soy Candle - Metal", "properties": [], "custom": false, "price": 19.0, "admin_graphql_api_id": "gid://shopify/DraftOrderLineItem/58159126905021"}], "shipping_address": null, "billing_address": null, "invoice_url": "https://airbyte-integration-test.myshopify.com/58033176765/invoices/a98bc7e113733d6faa36c198cf6c7c1a", "applied_discount": null, "order_id": null, "shipping_line": null, "tax_lines": [{"rate": 0.2, "title": "PDV", "price": 3.17}], "tags": "", "note_attributes": [], "total_price": "19.00", "subtotal_price": "19.00", "total_tax": "3.17", "payment_terms": null, "admin_graphql_api_id": "gid://shopify/DraftOrder/997801689277", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756876907} -{"stream": "fulfillment_orders", "data": {"id": 5558588309693, "shop_id": 58033176765, "order_id": 4554821468349, "assigned_location_id": 63590301885, "request_status": "unsubmitted", "status": "closed", "supported_actions": [], "destination": null, "line_items": [{"id": 11564232016061, "shop_id": 58033176765, "fulfillment_order_id": 5558588309693, "quantity": 1, "line_item_id": 11406125564093, "inventory_item_id": 42185212592317, "fulfillable_quantity": 0, "variant_id": 40090597884093}], "fulfill_at": "2022-06-15T05:00:00-07:00", "fulfill_by": null, "international_duties": null, "fulfillment_holds": [], "delivery_method": {"id": 119732437181, "method_type": "none", "min_delivery_date_time": null, "max_delivery_date_time": null}, "created_at": "2022-06-15T05:16:54-07:00", "updated_at": "2022-06-15T05:16:55-07:00", "assigned_location": {"address1": "Heroiv UPA 72", "address2": null, "city": "Lviv", "country_code": "UA", "location_id": 63590301885, "name": "Heroiv UPA 72", "phone": "", "province": null, "zip": "30100"}, "merchant_requests": [], "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756879623} -{"stream": "fulfillment_orders", "data": {"id": 5138290671805, "shop_id": 58033176765, "order_id": 4147980107965, "assigned_location_id": 63590301885, "request_status": "unsubmitted", "status": "closed", "supported_actions": [], "destination": {"id": 5183946588349, "address1": "San Francisco", "address2": "10", "city": "San Francisco", "company": "Umbrella LLC", "country": "United States", "email": "airbyte@airbyte.com", "first_name": "John", "last_name": "Doe", "phone": "", "province": "California", "zip": "91326"}, "line_items": [{"id": 10713758531773, "shop_id": 58033176765, "fulfillment_order_id": 5138290671805, "quantity": 1, "line_item_id": 10576771317949, "inventory_item_id": 42185195290813, "fulfillable_quantity": 0, "variant_id": 40090580615357}], "fulfill_at": null, "fulfill_by": null, "international_duties": "{'incoterm': None}", "fulfillment_holds": [], "delivery_method": null, "created_at": "2021-09-19T09:08:23-07:00", "updated_at": "2021-09-19T09:08:23-07:00", "assigned_location": {"address1": "Heroiv UPA 72", "address2": null, "city": "Lviv", "country_code": "UA", "location_id": 63590301885, "name": "Heroiv UPA 72", "phone": "", "province": null, "zip": "30100"}, "merchant_requests": [], "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756880367} -{"stream": "fulfillment_orders", "data": {"id": 4919375659197, "shop_id": 58033176765, "order_id": 3935377129661, "assigned_location_id": 63590301885, "request_status": "unsubmitted", "status": "closed", "supported_actions": [], "destination": null, "line_items": [{"id": 10251692081341, "shop_id": 58033176765, "fulfillment_order_id": 4919375659197, "quantity": 1, "line_item_id": 10130216452285, "inventory_item_id": 42185218719933, "fulfillable_quantity": 1, "variant_id": 40090604011709}], "fulfill_at": null, "fulfill_by": null, "international_duties": null, "fulfillment_holds": [], "delivery_method": null, "created_at": "2021-07-02T00:51:51-07:00", "updated_at": "2021-09-21T05:31:59-07:00", "assigned_location": {"address1": "Heroiv UPA 72", "address2": null, "city": "Lviv", "country_code": "UA", "location_id": 63590301885, "name": "Heroiv UPA 72", "phone": "", "province": null, "zip": "30100"}, "merchant_requests": [], "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756881000} -{"stream": "fulfillments", "data": {"id": 4075788501181, "order_id": 4554821468349, "status": "success", "created_at": "2022-06-15T05:16:55-07:00", "service": "manual", "updated_at": "2022-06-15T05:16:55-07:00", "tracking_company": null, "shipment_status": null, "location_id": 63590301885, "origin_address": null, "line_items": [{"id": 11406125564093, "variant_id": 40090597884093, "title": "All Black Sneaker Right Foot", "quantity": 1, "sku": "", "variant_title": "ivory", "vendor": "Becker - Moore", "fulfillment_service": "manual", "product_id": 6796226560189, "requires_shipping": false, "taxable": true, "gift_card": false, "name": "All Black Sneaker Right Foot - ivory", "variant_inventory_management": "shopify", "properties": [], "product_exists": true, "fulfillable_quantity": 0, "grams": 0, "price": "59.00", "total_discount": "0.00", "fulfillment_status": "fulfilled", "price_set": {"shop_money": {"amount": "59.00", "currency_code": "USD"}, "presentment_money": {"amount": "59.00", "currency_code": "USD"}}, "total_discount_set": {"shop_money": {"amount": "0.00", "currency_code": "USD"}, "presentment_money": {"amount": "0.00", "currency_code": "USD"}}, "discount_allocations": [{"amount": "1.77", "discount_application_index": 0, "amount_set": {"shop_money": {"amount": "1.77", "currency_code": "USD"}, "presentment_money": {"amount": "1.77", "currency_code": "USD"}}}], "origin_location": {"id": 3007664259261, "country_code": "UA", "province_code": "", "name": "airbyte integration test", "address1": "Heroiv UPA 72", "address2": "", "city": "Lviv", "zip": "30100"}, "admin_graphql_api_id": "gid://shopify/LineItem/11406125564093", "duties": [], "tax_lines": [], "fulfillment_line_item_id": 9633709097149}], "tracking_number": null, "tracking_numbers": [], "tracking_url": null, "tracking_urls": [], "receipt": {}, "name": "#1136.1", "admin_graphql_api_id": "gid://shopify/Fulfillment/4075788501181", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756884018} -{"stream": "fulfillments", "data": {"id": 3693416710333, "order_id": 4147980107965, "status": "success", "created_at": "2021-09-19T09:08:23-07:00", "service": "manual", "updated_at": "2022-02-22T00:35:47-08:00", "tracking_company": "Amazon Logistics US", "shipment_status": null, "location_id": 63590301885, "origin_address": null, "line_items": [{"id": 10576771317949, "variant_id": 40090580615357, "title": "Red & Silver Fishing Lure", "quantity": 1, "sku": "", "variant_title": "Plastic", "vendor": "Harris - Hamill", "fulfillment_service": "manual", "product_id": 6796218302653, "requires_shipping": true, "taxable": true, "gift_card": false, "name": "Red & Silver Fishing Lure - Plastic", "variant_inventory_management": "shopify", "properties": [], "product_exists": true, "fulfillable_quantity": 0, "grams": 285, "price": "27.00", "total_discount": "0.00", "fulfillment_status": "fulfilled", "price_set": {"shop_money": {"amount": "27.00", "currency_code": "USD"}, "presentment_money": {"amount": "27.00", "currency_code": "USD"}}, "total_discount_set": {"shop_money": {"amount": "0.00", "currency_code": "USD"}, "presentment_money": {"amount": "0.00", "currency_code": "USD"}}, "discount_allocations": [], "admin_graphql_api_id": "gid://shopify/LineItem/10576771317949", "duties": [], "tax_lines": [], "fulfillment_line_item_id": 8852381401277}], "tracking_number": "123456", "tracking_numbers": ["123456"], "tracking_url": "https://track.amazon.com/tracking/123456", "tracking_urls": ["https://track.amazon.com/tracking/123456"], "receipt": {}, "name": "#1121.1", "admin_graphql_api_id": "gid://shopify/Fulfillment/3693416710333", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756884645} -{"stream": "fulfillments", "data": {"id": 4465911431357, "order_id": 5033391718589, "status": "success", "created_at": "2023-04-24T11:00:09-07:00", "service": "manual", "updated_at": "2023-04-24T11:00:09-07:00", "tracking_company": null, "shipment_status": null, "location_id": 63590301885, "origin_address": null, "line_items": [{"id": 12247585521853, "variant_id": 41561961824445, "title": "4 Ounce Soy Candle", "quantity": 1, "sku": "", "variant_title": "Test Variant 2", "vendor": "Hartmann Group", "fulfillment_service": "manual", "product_id": 6796220989629, "requires_shipping": true, "taxable": true, "gift_card": false, "name": "4 Ounce Soy Candle - Test Variant 2", "variant_inventory_management": "shopify", "properties": [], "product_exists": true, "fulfillable_quantity": 0, "grams": 112, "price": "19.00", "total_discount": "0.00", "fulfillment_status": "fulfilled", "price_set": {"shop_money": {"amount": "19.00", "currency_code": "USD"}, "presentment_money": {"amount": "19.00", "currency_code": "USD"}}, "total_discount_set": {"shop_money": {"amount": "0.00", "currency_code": "USD"}, "presentment_money": {"amount": "0.00", "currency_code": "USD"}}, "discount_allocations": [], "origin_location": {"id": 3000230707389, "country_code": "UA", "province_code": "", "name": "Heroiv UPA 72", "address1": "Heroiv UPA 72", "address2": "", "city": "Lviv", "zip": "30100"}, "admin_graphql_api_id": "gid://shopify/LineItem/12247585521853", "duties": [], "tax_lines": [{"price": 3.17, "rate": 0.2, "title": "PDV", "price_set": {"shop_money": {"amount": "3.17", "currency_code": "USD"}, "presentment_money": {"amount": "3.17", "currency_code": "USD"}}, "channel_liable": null}], "fulfillment_line_item_id": 10383179514045}], "tracking_number": null, "tracking_numbers": [], "tracking_url": null, "tracking_urls": [], "receipt": {}, "name": "#1145.1", "admin_graphql_api_id": "gid://shopify/Fulfillment/4465911431357", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756885781} -{"stream": "inventory_items", "data": {"id": 42185200631997, "sku": "", "created_at": "2021-06-22T18:09:47-07:00", "updated_at": "2022-02-22T00:40:19-08:00", "requires_shipping": true, "cost": 19.0, "country_code_of_origin": null, "province_code_of_origin": null, "harmonized_system_code": null, "tracked": true, "country_harmonized_system_codes": [], "admin_graphql_api_id": "gid://shopify/InventoryItem/42185200631997", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756887598} -{"stream": "inventory_items", "data": {"id": 43653682495677, "sku": "", "created_at": "2022-03-06T14:09:20-08:00", "updated_at": "2022-03-06T14:09:20-08:00", "requires_shipping": true, "cost": 19.0, "country_code_of_origin": null, "province_code_of_origin": null, "harmonized_system_code": null, "tracked": true, "country_harmonized_system_codes": [], "admin_graphql_api_id": "gid://shopify/InventoryItem/43653682495677", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756887599} -{"stream": "inventory_items", "data": {"id": 43653688524989, "sku": "", "created_at": "2022-03-06T14:12:20-08:00", "updated_at": "2022-03-06T14:12:20-08:00", "requires_shipping": true, "cost": 19.0, "country_code_of_origin": null, "province_code_of_origin": null, "harmonized_system_code": null, "tracked": true, "country_harmonized_system_codes": [], "admin_graphql_api_id": "gid://shopify/InventoryItem/43653688524989", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756887599} -{"stream": "inventory_levels", "data": {"inventory_item_id": 42185194635453, "location_id": 63590301885, "available": 49, "updated_at": "2022-02-27T23:44:30-08:00", "admin_graphql_api_id": "gid://shopify/InventoryLevel/97912455357?inventory_item_id=42185194635453", "shop_url": "airbyte-integration-test", "id": "63590301885|42185194635453"}, "emitted_at": 1691756890176} -{"stream": "inventory_levels", "data": {"inventory_item_id": 42185194668221, "location_id": 63590301885, "available": 12, "updated_at": "2021-06-22T18:09:27-07:00", "admin_graphql_api_id": "gid://shopify/InventoryLevel/97912455357?inventory_item_id=42185194668221", "shop_url": "airbyte-integration-test", "id": "63590301885|42185194668221"}, "emitted_at": 1691756890177} -{"stream": "inventory_levels", "data": {"inventory_item_id": 42185194700989, "location_id": 63590301885, "available": 3, "updated_at": "2021-06-22T18:09:27-07:00", "admin_graphql_api_id": "gid://shopify/InventoryLevel/97912455357?inventory_item_id=42185194700989", "shop_url": "airbyte-integration-test", "id": "63590301885|42185194700989"}, "emitted_at": 1691756890178} -{"stream": "locations", "data": {"id": 63590301885, "name": "Heroiv UPA 72", "address1": "Heroiv UPA 72", "address2": null, "city": "Lviv", "zip": "30100", "province": null, "country": "UA", "phone": "", "created_at": "2021-06-22T18:00:29-07:00", "updated_at": "2023-02-25T16:20:00-08:00", "country_code": "UA", "country_name": "Ukraine", "province_code": null, "legacy": false, "active": true, "admin_graphql_api_id": "gid://shopify/Location/63590301885", "localized_country_name": "Ukraine", "localized_province_name": null, "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756893148} -{"stream": "metafield_articles", "data": {"id": 21519818162365, "namespace": "global", "key": "new", "value": "newvalue", "description": null, "owner_id": 558137508029, "created_at": "2022-10-07T16:09:02-07:00", "updated_at": "2022-10-07T16:09:02-07:00", "owner_resource": "article", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/21519818162365", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756895300} -{"stream": "metafield_articles", "data": {"id": 22365709992125, "namespace": "custom", "key": "test_blog_post_metafield", "value": "Test Article Metafield", "description": null, "owner_id": 558137508029, "created_at": "2023-04-14T03:18:26-07:00", "updated_at": "2023-04-14T03:18:26-07:00", "owner_resource": "article", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22365709992125", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756895301} -{"stream": "metafield_articles", "data": {"id": 22365710352573, "namespace": "custom", "key": "test_blog_post_metafield", "value": "Test Blog Post Metafiled", "description": null, "owner_id": 558627979453, "created_at": "2023-04-14T03:19:18-07:00", "updated_at": "2023-04-14T03:19:18-07:00", "owner_resource": "article", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22365710352573", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756895754} -{"stream": "metafield_blogs", "data": {"id": 21519428255933, "namespace": "some_fields", "key": "sponsor", "value": "Shopify", "description": null, "owner_id": 80417685693, "created_at": "2022-10-07T06:05:23-07:00", "updated_at": "2022-10-07T06:05:23-07:00", "owner_resource": "blog", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/21519428255933", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756897833} -{"stream": "metafield_blogs", "data": {"id": 22365710745789, "namespace": "custom", "key": "test_blog_metafield", "value": "Test Blog Metafield", "description": null, "owner_id": 80417685693, "created_at": "2023-04-14T03:20:20-07:00", "updated_at": "2023-04-14T03:20:20-07:00", "owner_resource": "blog", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22365710745789", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756897835} -{"stream": "metafield_collections", "data": {"id": 21520343367869, "namespace": "my_fields", "key": "discount", "value": "25%", "description": null, "owner_id": 270889287869, "created_at": "2022-10-08T04:44:51-07:00", "updated_at": "2022-10-08T04:44:51-07:00", "owner_resource": "collection", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/21520343367869", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756899880} -{"stream": "metafield_collections", "data": {"id": 22365707174077, "namespace": "custom", "key": "test_collection_metafield", "value": "Test Collection Metafield", "description": null, "owner_id": 270889287869, "created_at": "2023-04-14T03:15:30-07:00", "updated_at": "2023-04-14T03:15:30-07:00", "owner_resource": "collection", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22365707174077", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756899881} -{"stream": "metafield_collections", "data": {"id": 21520343367869, "namespace": "my_fields", "key": "discount", "value": "25%", "description": null, "owner_id": 270889287869, "created_at": "2022-10-08T04:44:51-07:00", "updated_at": "2022-10-08T04:44:51-07:00", "owner_resource": "collection", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/21520343367869", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756900342} -{"stream": "metafield_customers", "data": {"id": 22346893361341, "namespace": "custom", "key": "test_definition_list_1", "value": "Teste\n", "description": null, "owner_id": 6569096478909, "created_at": "2023-04-13T04:50:10-07:00", "updated_at": "2023-04-13T04:50:10-07:00", "owner_resource": "customer", "type": "multi_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22346893361341", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756902518} -{"stream": "metafield_customers", "data": {"id": 22346893394109, "namespace": "custom", "key": "test_definition", "value": "Taster", "description": null, "owner_id": 6569096478909, "created_at": "2023-04-13T04:50:10-07:00", "updated_at": "2023-04-13T04:50:10-07:00", "owner_resource": "customer", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22346893394109", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756902519} -{"stream": "metafield_draft_orders", "data": {"id": 22532787175613, "namespace": "new_metafield", "key": "new_metafield", "value": "updated_mon_24.04.2023", "description": null, "owner_id": 929019691197, "created_at": "2023-04-24T07:18:06-07:00", "updated_at": "2023-04-24T07:18:06-07:00", "owner_resource": "draft_order", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22532787175613", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756905162} -{"stream": "metafield_locations", "data": {"id": 21524407255229, "namespace": "inventory", "key": "warehouse_2", "value": "234", "description": null, "owner_id": 63590301885, "created_at": "2022-10-12T02:21:27-07:00", "updated_at": "2022-10-12T02:21:27-07:00", "owner_resource": "location", "type": "number_integer", "admin_graphql_api_id": "gid://shopify/Metafield/21524407255229", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756908275} -{"stream": "metafield_locations", "data": {"id": 21524407681213, "namespace": "inventory", "key": "warehouse_233", "value": "564", "description": null, "owner_id": 63590301885, "created_at": "2022-10-12T02:21:35-07:00", "updated_at": "2022-10-12T02:21:35-07:00", "owner_resource": "location", "type": "number_integer", "admin_graphql_api_id": "gid://shopify/Metafield/21524407681213", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756908276} -{"stream": "metafield_orders", "data": {"id": 22347287855293, "namespace": "my_fields", "key": "purchase_order", "value": "trtrtr", "description": null, "owner_id": 4147980107965, "created_at": "2023-04-13T05:09:08-07:00", "updated_at": "2023-04-13T05:09:08-07:00", "owner_resource": "order", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22347287855293", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756910905} -{"stream": "metafield_orders", "data": {"id": 22365749805245, "namespace": "my_fields", "key": "purchase_order", "value": "Test Draft Order Metafield", "description": null, "owner_id": 3935377129661, "created_at": "2023-04-14T03:52:40-07:00", "updated_at": "2023-04-14T03:52:40-07:00", "owner_resource": "order", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22365749805245", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756911406} -{"stream": "metafield_pages", "data": {"id": 22534014828733, "namespace": "new_metafield", "key": "new_metafield", "value": "updated_mon_24.04.2023", "description": null, "owner_id": 83074252989, "created_at": "2023-04-24T11:08:41-07:00", "updated_at": "2023-04-24T11:08:41-07:00", "owner_resource": "page", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22534014828733", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756913812} -{"stream": "metafield_product_images", "data": {"id": 22533588451517, "namespace": "new_metafield", "key": "new_metafield", "value": "updated_mon_24.04.2023", "description": null, "owner_id": 29301297316029, "created_at": "2023-04-24T10:32:19-07:00", "updated_at": "2023-04-24T10:32:19-07:00", "owner_resource": "product_image", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22533588451517", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756915214} -{"stream": "metafield_products", "data": {"id": 22365706944701, "namespace": "custom", "key": "test_product_metafield", "value": "gid://shopify/Product/6796220989629", "description": null, "owner_id": 6796220989629, "created_at": "2023-04-14T03:15:07-07:00", "updated_at": "2023-04-14T03:15:07-07:00", "owner_resource": "product", "type": "product_reference", "admin_graphql_api_id": "gid://shopify/Metafield/22365706944701", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756916707} -{"stream": "metafield_products", "data": {"id": 22365762486461, "namespace": "custom", "key": "product_metafield_test_2", "value": "Test", "description": null, "owner_id": 6796220989629, "created_at": "2023-04-14T03:59:44-07:00", "updated_at": "2023-04-14T03:59:44-07:00", "owner_resource": "product", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22365762486461", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756916708} -{"stream": "metafield_product_variants", "data": {"id": 22365715955901, "namespace": "custom", "key": "test_variant_metafield", "value": "Test Varia", "description": null, "owner_id": 41561961824445, "created_at": "2023-04-14T03:24:03-07:00", "updated_at": "2023-04-14T03:24:03-07:00", "owner_resource": "variant", "type": "multi_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22365715955901", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756919411} -{"stream": "metafield_shops", "data": {"id": 22534020104381, "namespace": "new_metafield", "key": "new_metafield", "value": "updated_mon_24.04.2023", "description": null, "owner_id": 58033176765, "created_at": "2023-04-24T11:12:38-07:00", "updated_at": "2023-04-24T11:12:38-07:00", "owner_resource": "shop", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22534020104381", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756921030} -{"stream": "metafield_smart_collections", "data": {"id": 21525604106429, "namespace": "my_fields", "key": "discount", "value": "50%", "description": null, "owner_id": 273278566589, "created_at": "2022-10-12T13:36:55-07:00", "updated_at": "2022-10-12T13:36:55-07:00", "owner_resource": "collection", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/21525604106429", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756923193} -{"stream": "metafield_smart_collections", "data": {"id": 22366265573565, "namespace": "my_fields", "key": "new_key", "value": "51%", "description": null, "owner_id": 273278566589, "created_at": "2023-04-14T05:21:58-07:00", "updated_at": "2023-04-14T05:21:58-07:00", "owner_resource": "collection", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22366265573565", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756923195} -{"stream": "order_refunds", "data": {"id": 829538369725, "order_id": 3935377129661, "created_at": "2021-09-21T05:31:59-07:00", "note": "test refund", "user_id": 74861019325, "processed_at": "2021-09-21T05:31:59-07:00", "restock": true, "duties": "[]", "total_duties_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "return": null, "admin_graphql_api_id": "gid://shopify/Refund/829538369725", "refund_line_items": [{"id": 332807864509, "quantity": 1, "line_item_id": 10130216452285, "location_id": 63590301885, "restock_type": "cancel", "subtotal": 102.0, "total_tax": 17.0, "subtotal_set": {"shop_money": {"amount": 102.0, "currency_code": "USD"}, "presentment_money": {"amount": 102.0, "currency_code": "USD"}}, "total_tax_set": {"shop_money": {"amount": 17.0, "currency_code": "USD"}, "presentment_money": {"amount": 17.0, "currency_code": "USD"}}, "line_item": {"id": 10130216452285, "variant_id": 40090604011709, "title": "8 Ounce Soy Candle", "quantity": 1, "sku": "", "variant_title": "Wooden", "vendor": "Bosco Inc", "fulfillment_service": "manual", "product_id": 6796229509309, "requires_shipping": true, "taxable": true, "gift_card": false, "name": "8 Ounce Soy Candle - Wooden", "variant_inventory_management": "shopify", "properties": [], "product_exists": true, "fulfillable_quantity": 0, "grams": 63, "price": 102.0, "total_discount": 0.0, "fulfillment_status": null, "price_set": {"shop_money": {"amount": 102.0, "currency_code": "USD"}, "presentment_money": {"amount": 102.0, "currency_code": "USD"}}, "total_discount_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "discount_allocations": [], "duties": [], "admin_graphql_api_id": "gid://shopify/LineItem/10130216452285", "tax_lines": [{"title": "PDV", "price": 17.0, "rate": 0.2, "channel_liable": false, "price_set": {"shop_money": {"amount": 17.0, "currency_code": "USD"}, "presentment_money": {"amount": 17.0, "currency_code": "USD"}}}]}}], "transactions": [{"id": 5189894406333, "order_id": 3935377129661, "kind": "refund", "gateway": "bogus", "status": "success", "message": "Bogus Gateway: Forced success", "created_at": "2021-09-21T05:31:58-07:00", "test": true, "authorization": null, "location_id": null, "user_id": 74861019325, "parent_id": 4933790040253, "processed_at": "2021-09-21T05:31:58-07:00", "device_id": null, "error_code": null, "source_name": "1830279", "payment_details": {"credit_card_bin": "1", "avs_result_code": null, "cvv_result_code": null, "credit_card_number": "\u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 1", "credit_card_company": "Bogus", "buyer_action_info": null, "credit_card_name": "Bogus Gateway", "credit_card_wallet": null, "credit_card_expiration_month": 11, "credit_card_expiration_year": 2023}, "receipt": {"paid_amount": "102.00"}, "amount": "102.00", "currency": "USD", "payment_id": "c21670281707709.2", "total_unsettled_set": {"presentment_money": {"amount": "0.0", "currency": "USD"}, "shop_money": {"amount": "0.0", "currency": "USD"}}, "admin_graphql_api_id": "gid://shopify/OrderTransaction/5189894406333"}], "order_adjustments": [], "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756925587} -{"stream": "order_refunds", "data": {"id": 845032358077, "order_id": 4147980107965, "created_at": "2022-03-07T02:09:04-08:00", "note": null, "user_id": 74861019325, "processed_at": "2022-03-07T02:09:04-08:00", "restock": true, "duties": "[]", "total_duties_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "return": {"id": 822313149, "admin_graphql_api_id": "gid://shopify/Return/822313149"}, "admin_graphql_api_id": "gid://shopify/Refund/845032358077", "refund_line_items": [{"id": 352716947645, "quantity": 1, "line_item_id": 10576771317949, "location_id": 63590301885, "restock_type": "return", "subtotal": 27.0, "total_tax": 0.0, "subtotal_set": {"shop_money": {"amount": 27.0, "currency_code": "USD"}, "presentment_money": {"amount": 27.0, "currency_code": "USD"}}, "total_tax_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "line_item": {"id": 10576771317949, "variant_id": 40090580615357, "title": "Red & Silver Fishing Lure", "quantity": 1, "sku": "", "variant_title": "Plastic", "vendor": "Harris - Hamill", "fulfillment_service": "manual", "product_id": 6796218302653, "requires_shipping": true, "taxable": true, "gift_card": false, "name": "Red & Silver Fishing Lure - Plastic", "variant_inventory_management": "shopify", "properties": [], "product_exists": true, "fulfillable_quantity": 0, "grams": 285, "price": 27.0, "total_discount": 0.0, "fulfillment_status": "fulfilled", "price_set": {"shop_money": {"amount": 27.0, "currency_code": "USD"}, "presentment_money": {"amount": 27.0, "currency_code": "USD"}}, "total_discount_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "discount_allocations": [], "duties": [], "admin_graphql_api_id": "gid://shopify/LineItem/10576771317949", "tax_lines": []}}], "transactions": [], "order_adjustments": [], "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756926131} -{"stream": "order_refunds", "data": {"id": 852809646269, "order_id": 4554821468349, "created_at": "2022-06-15T06:25:43-07:00", "note": null, "user_id": 74861019325, "processed_at": "2022-06-15T06:25:43-07:00", "restock": true, "duties": "[]", "total_duties_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "return": {"id": 947388605, "admin_graphql_api_id": "gid://shopify/Return/947388605"}, "admin_graphql_api_id": "gid://shopify/Refund/852809646269", "refund_line_items": [{"id": 363131404477, "quantity": 1, "line_item_id": 11406125564093, "location_id": 63590301885, "restock_type": "return", "subtotal": 57.23, "total_tax": 0.0, "subtotal_set": {"shop_money": {"amount": 57.23, "currency_code": "USD"}, "presentment_money": {"amount": 57.23, "currency_code": "USD"}}, "total_tax_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "line_item": {"id": 11406125564093, "variant_id": 40090597884093, "title": "All Black Sneaker Right Foot", "quantity": 1, "sku": "", "variant_title": "ivory", "vendor": "Becker - Moore", "fulfillment_service": "manual", "product_id": 6796226560189, "requires_shipping": false, "taxable": true, "gift_card": false, "name": "All Black Sneaker Right Foot - ivory", "variant_inventory_management": "shopify", "properties": [], "product_exists": true, "fulfillable_quantity": 0, "grams": 0, "price": 59.0, "total_discount": 0.0, "fulfillment_status": "fulfilled", "price_set": {"shop_money": {"amount": 59.0, "currency_code": "USD"}, "presentment_money": {"amount": 59.0, "currency_code": "USD"}}, "total_discount_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "discount_allocations": [{"amount": 1.77, "discount_application_index": 0, "amount_set": {"shop_money": {"amount": 1.77, "currency_code": "USD"}, "presentment_money": {"amount": 1.77, "currency_code": "USD"}}}], "duties": [], "admin_graphql_api_id": "gid://shopify/LineItem/11406125564093", "tax_lines": []}}], "transactions": [{"id": 5721170968765, "order_id": 4554821468349, "kind": "refund", "gateway": "bogus", "status": "success", "message": "Bogus Gateway: Forced success", "created_at": "2022-06-15T06:25:42-07:00", "test": true, "authorization": null, "location_id": null, "user_id": null, "parent_id": 5721110872253, "processed_at": "2022-06-15T06:25:42-07:00", "device_id": null, "error_code": null, "source_name": "1830279", "payment_details": {"credit_card_bin": "1", "avs_result_code": null, "cvv_result_code": null, "credit_card_number": "\u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 1", "credit_card_company": "Bogus", "buyer_action_info": null, "credit_card_name": "Bogus Gateway", "credit_card_wallet": null, "credit_card_expiration_month": 2, "credit_card_expiration_year": 2025}, "receipt": {"paid_amount": "57.23"}, "amount": "57.23", "currency": "USD", "payment_id": "c25048437719229.2", "total_unsettled_set": {"presentment_money": {"amount": "0.0", "currency": "USD"}, "shop_money": {"amount": "0.0", "currency": "USD"}}, "admin_graphql_api_id": "gid://shopify/OrderTransaction/5721170968765"}], "order_adjustments": [], "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756926794} -{"stream": "order_risks", "data": {"id": 6446736474301, "order_id": 4147980107965, "checkout_id": null, "source": "External", "score": 1.0, "recommendation": "cancel", "display": true, "cause_cancel": true, "message": "This order came from an anonymous proxy", "merchant_message": "This order came from an anonymous proxy", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756929536} -{"stream": "orders", "data": {"id": 4554821468349, "admin_graphql_api_id": "gid://shopify/Order/4554821468349", "app_id": 580111, "browser_ip": "176.113.167.23", "buyer_accepts_marketing": false, "cancel_reason": null, "cancelled_at": null, "cart_token": null, "checkout_id": 25048437719229, "checkout_token": "cf5d16a0a0688905bd551c6dec591506", "client_details": {"accept_language": "en-US,en;q=0.9,uk;q=0.8", "browser_height": 754, "browser_ip": "176.113.167.23", "browser_width": 1519, "session_hash": null, "user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.64 Safari/537.36 Edg/101.0.1210.53"}, "closed_at": "2022-06-15T06:25:43-07:00", "company": null, "confirmation_number": null, "confirmed": true, "contact_email": "integration-test@airbyte.io", "created_at": "2022-06-15T05:16:53-07:00", "currency": "USD", "current_subtotal_price": 0.0, "current_subtotal_price_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "current_total_additional_fees_set": null, "current_total_discounts": 0.0, "current_total_discounts_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "current_total_duties_set": null, "current_total_price": 0.0, "current_total_price_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "current_total_tax": 0.0, "current_total_tax_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "customer_locale": "en", "device_id": null, "discount_codes": [], "email": "integration-test@airbyte.io", "estimated_taxes": false, "financial_status": "refunded", "fulfillment_status": "fulfilled", "landing_site": "/wallets/checkouts.json", "landing_site_ref": null, "location_id": null, "merchant_of_record_app_id": null, "name": "#1136", "note": "updated_mon_24.04.2023", "note_attributes": [], "number": 136, "order_number": 1136, "order_status_url": "https://airbyte-integration-test.myshopify.com/58033176765/orders/e4f98630ea44a884e33e700203ce2130/authenticate?key=edf087d6ae55a4541bf1375432f6a4b8", "original_total_additional_fees_set": null, "original_total_duties_set": null, "payment_gateway_names": ["bogus"], "phone": null, "po_number": null, "presentment_currency": "USD", "processed_at": "2022-06-15T05:16:53-07:00", "reference": null, "referring_site": "https://airbyte-integration-test.myshopify.com/products/all-black-sneaker-right-foot", "source_identifier": null, "source_name": "web", "source_url": null, "subtotal_price": 57.23, "subtotal_price_set": {"shop_money": {"amount": 57.23, "currency_code": "USD"}, "presentment_money": {"amount": 57.23, "currency_code": "USD"}}, "tags": "Refund", "tax_exempt": false, "tax_lines": [], "taxes_included": true, "test": true, "token": "e4f98630ea44a884e33e700203ce2130", "total_discounts": 1.77, "total_discounts_set": {"shop_money": {"amount": 1.77, "currency_code": "USD"}, "presentment_money": {"amount": 1.77, "currency_code": "USD"}}, "total_line_items_price": 59.0, "total_line_items_price_set": {"shop_money": {"amount": 59.0, "currency_code": "USD"}, "presentment_money": {"amount": 59.0, "currency_code": "USD"}}, "total_outstanding": 0.0, "total_price": 57.23, "total_price_set": {"shop_money": {"amount": 57.23, "currency_code": "USD"}, "presentment_money": {"amount": 57.23, "currency_code": "USD"}}, "total_shipping_price_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "total_tax": 0.0, "total_tax_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "total_tip_received": 0.0, "total_weight": 0, "updated_at": "2023-04-24T07:00:37-07:00", "user_id": null, "billing_address": {"first_name": "Iryna", "address1": "2261 Market Street", "phone": null, "city": "San Francisco", "zip": "94114", "province": "California", "country": "United States", "last_name": "Grankova", "address2": "4381", "company": null, "latitude": 37.7647751, "longitude": -122.4320369, "name": "Iryna Grankova", "country_code": "US", "province_code": "CA"}, "customer": {"id": 5362027233469, "email": "integration-test@airbyte.io", "accepts_marketing": false, "created_at": "2021-07-08T05:41:47-07:00", "updated_at": "2022-06-22T03:50:13-07:00", "first_name": "Airbyte", "last_name": "Team", "state": "disabled", "note": null, "verified_email": true, "multipass_identifier": null, "tax_exempt": false, "phone": null, "email_marketing_consent": {"state": "not_subscribed", "opt_in_level": "single_opt_in", "consent_updated_at": null}, "sms_marketing_consent": null, "tags": "", "currency": "USD", "accepts_marketing_updated_at": "2021-07-08T05:41:47-07:00", "marketing_opt_in_level": null, "tax_exemptions": [], "admin_graphql_api_id": "gid://shopify/Customer/5362027233469", "default_address": {"id": 7492260823229, "customer_id": 5362027233469, "first_name": "Airbyte", "last_name": "Team", "company": null, "address1": "2261 Market Street", "address2": "4381", "city": "San Francisco", "province": "California", "country": "United States", "zip": "94114", "phone": null, "name": "Airbyte Team", "province_code": "CA", "country_code": "US", "country_name": "United States", "default": true}}, "discount_applications": [{"target_type": "line_item", "type": "automatic", "value": "3.0", "value_type": "percentage", "allocation_method": "across", "target_selection": "all", "title": "eeeee"}], "fulfillments": [{"id": 4075788501181, "admin_graphql_api_id": "gid://shopify/Fulfillment/4075788501181", "created_at": "2022-06-15T05:16:55-07:00", "location_id": 63590301885, "name": "#1136.1", "order_id": 4554821468349, "origin_address": {}, "receipt": {}, "service": "manual", "shipment_status": null, "status": "success", "tracking_company": null, "tracking_number": null, "tracking_numbers": [], "tracking_url": null, "tracking_urls": [], "updated_at": "2022-06-15T05:16:55-07:00", "line_items": [{"id": 11406125564093, "admin_graphql_api_id": "gid://shopify/LineItem/11406125564093", "fulfillable_quantity": 0, "fulfillment_service": "manual", "fulfillment_status": "fulfilled", "gift_card": false, "grams": 0, "name": "All Black Sneaker Right Foot - ivory", "price": 59.0, "price_set": {"shop_money": {"amount": 59.0, "currency_code": "USD"}, "presentment_money": {"amount": 59.0, "currency_code": "USD"}}, "product_exists": true, "product_id": 6796226560189, "properties": [], "quantity": 1, "requires_shipping": false, "sku": "", "taxable": true, "title": "All Black Sneaker Right Foot", "total_discount": 0.0, "total_discount_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "variant_id": 40090597884093, "variant_inventory_management": "shopify", "variant_title": "ivory", "vendor": "Becker - Moore", "tax_lines": [], "duties": [], "discount_allocations": [{"amount": "1.77", "amount_set": {"shop_money": {"amount": "1.77", "currency_code": "USD"}, "presentment_money": {"amount": "1.77", "currency_code": "USD"}}, "discount_application_index": 0}]}]}], "line_items": [{"id": 11406125564093, "admin_graphql_api_id": "gid://shopify/LineItem/11406125564093", "fulfillable_quantity": 0, "fulfillment_service": "manual", "fulfillment_status": "fulfilled", "gift_card": false, "grams": 0, "name": "All Black Sneaker Right Foot - ivory", "price": 59.0, "price_set": {"shop_money": {"amount": 59.0, "currency_code": "USD"}, "presentment_money": {"amount": 59.0, "currency_code": "USD"}}, "product_exists": true, "product_id": 6796226560189, "properties": [], "quantity": 1, "requires_shipping": false, "sku": "", "taxable": true, "title": "All Black Sneaker Right Foot", "total_discount": 0.0, "total_discount_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "variant_id": 40090597884093, "variant_inventory_management": "shopify", "variant_title": "ivory", "vendor": "Becker - Moore", "tax_lines": [], "duties": [], "discount_allocations": [{"amount": "1.77", "amount_set": {"shop_money": {"amount": "1.77", "currency_code": "USD"}, "presentment_money": {"amount": "1.77", "currency_code": "USD"}}, "discount_application_index": 0}]}], "payment_terms": null, "refunds": [{"id": 852809646269, "admin_graphql_api_id": "gid://shopify/Refund/852809646269", "created_at": "2022-06-15T06:25:43-07:00", "note": null, "order_id": 4554821468349, "processed_at": "2022-06-15T06:25:43-07:00", "restock": true, "total_duties_set": {"shop_money": {"amount": "0.00", "currency_code": "USD"}, "presentment_money": {"amount": "0.00", "currency_code": "USD"}}, "user_id": 74861019325, "order_adjustments": [], "transactions": [{"id": 5721170968765, "admin_graphql_api_id": "gid://shopify/OrderTransaction/5721170968765", "amount": "57.23", "authorization": null, "created_at": "2022-06-15T06:25:42-07:00", "currency": "USD", "device_id": null, "error_code": null, "gateway": "bogus", "kind": "refund", "location_id": null, "message": "Bogus Gateway: Forced success", "order_id": 4554821468349, "parent_id": 5721110872253, "payment_id": "c25048437719229.2", "processed_at": "2022-06-15T06:25:42-07:00", "receipt": {"paid_amount": "57.23"}, "source_name": "1830279", "status": "success", "test": true, "user_id": null, "payment_details": {"credit_card_bin": "1", "avs_result_code": null, "cvv_result_code": null, "credit_card_number": "\u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 1", "credit_card_company": "Bogus", "buyer_action_info": null, "credit_card_name": "Bogus Gateway", "credit_card_wallet": null, "credit_card_expiration_month": 2, "credit_card_expiration_year": 2025}}], "refund_line_items": [{"id": 363131404477, "line_item_id": 11406125564093, "location_id": 63590301885, "quantity": 1, "restock_type": "return", "subtotal": 57.23, "subtotal_set": {"shop_money": {"amount": "57.23", "currency_code": "USD"}, "presentment_money": {"amount": "57.23", "currency_code": "USD"}}, "total_tax": 0.0, "total_tax_set": {"shop_money": {"amount": "0.00", "currency_code": "USD"}, "presentment_money": {"amount": "0.00", "currency_code": "USD"}}, "line_item": {"id": 11406125564093, "admin_graphql_api_id": "gid://shopify/LineItem/11406125564093", "fulfillable_quantity": 0, "fulfillment_service": "manual", "fulfillment_status": "fulfilled", "gift_card": false, "grams": 0, "name": "All Black Sneaker Right Foot - ivory", "price": "59.00", "price_set": {"shop_money": {"amount": "59.00", "currency_code": "USD"}, "presentment_money": {"amount": "59.00", "currency_code": "USD"}}, "product_exists": true, "product_id": 6796226560189, "properties": [], "quantity": 1, "requires_shipping": false, "sku": "", "taxable": true, "title": "All Black Sneaker Right Foot", "total_discount": "0.00", "total_discount_set": {"shop_money": {"amount": "0.00", "currency_code": "USD"}, "presentment_money": {"amount": "0.00", "currency_code": "USD"}}, "variant_id": 40090597884093, "variant_inventory_management": "shopify", "variant_title": "ivory", "vendor": "Becker - Moore", "tax_lines": [], "duties": [], "discount_allocations": [{"amount": "1.77", "amount_set": {"shop_money": {"amount": "1.77", "currency_code": "USD"}, "presentment_money": {"amount": "1.77", "currency_code": "USD"}}, "discount_application_index": 0}]}}], "duties": []}], "shipping_address": null, "shipping_lines": [], "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756931624} -{"stream": "orders", "data": {"id": 4147980107965, "admin_graphql_api_id": "gid://shopify/Order/4147980107965", "app_id": 5505221, "browser_ip": null, "buyer_accepts_marketing": false, "cancel_reason": null, "cancelled_at": null, "cart_token": null, "checkout_id": null, "checkout_token": null, "client_details": null, "closed_at": null, "company": null, "confirmation_number": null, "confirmed": true, "contact_email": "airbyte@airbyte.com", "created_at": "2021-09-19T09:08:23-07:00", "currency": "USD", "current_subtotal_price": 0.0, "current_subtotal_price_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "current_total_additional_fees_set": null, "current_total_discounts": 0.0, "current_total_discounts_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "current_total_duties_set": null, "current_total_price": 0.0, "current_total_price_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "current_total_tax": 0.0, "current_total_tax_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "customer_locale": null, "device_id": null, "discount_codes": [], "email": "airbyte@airbyte.com", "estimated_taxes": false, "financial_status": "paid", "fulfillment_status": "fulfilled", "landing_site": null, "landing_site_ref": null, "location_id": null, "merchant_of_record_app_id": null, "name": "#1121", "note": "updated_mon_24.04.2023", "note_attributes": [], "number": 121, "order_number": 1121, "order_status_url": "https://airbyte-integration-test.myshopify.com/58033176765/orders/6adf11e07ccb49b280ea4b9f53d64f12/authenticate?key=4cef2ff10ba4d18f31114df33933f81e", "original_total_additional_fees_set": null, "original_total_duties_set": null, "payment_gateway_names": [], "phone": null, "po_number": null, "presentment_currency": "USD", "processed_at": "2021-09-19T09:08:23-07:00", "reference": null, "referring_site": null, "source_identifier": null, "source_name": "5505221", "source_url": null, "subtotal_price": 27.0, "subtotal_price_set": {"shop_money": {"amount": 27.0, "currency_code": "USD"}, "presentment_money": {"amount": 27.0, "currency_code": "USD"}}, "tags": "", "tax_exempt": false, "tax_lines": [], "taxes_included": false, "test": false, "token": "6adf11e07ccb49b280ea4b9f53d64f12", "total_discounts": 0.0, "total_discounts_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "total_line_items_price": 27.0, "total_line_items_price_set": {"shop_money": {"amount": 27.0, "currency_code": "USD"}, "presentment_money": {"amount": 27.0, "currency_code": "USD"}}, "total_outstanding": 0.0, "total_price": 27.0, "total_price_set": {"shop_money": {"amount": 27.0, "currency_code": "USD"}, "presentment_money": {"amount": 27.0, "currency_code": "USD"}}, "total_shipping_price_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "total_tax": 0.0, "total_tax_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "total_tip_received": 0.0, "total_weight": 0, "updated_at": "2023-04-24T07:03:06-07:00", "user_id": null, "billing_address": null, "customer": {"id": 5565161144509, "email": "airbyte@airbyte.com", "accepts_marketing": false, "created_at": "2021-09-19T08:31:05-07:00", "updated_at": "2021-09-19T09:08:24-07:00", "first_name": null, "last_name": null, "state": "disabled", "note": null, "verified_email": true, "multipass_identifier": null, "tax_exempt": false, "phone": null, "email_marketing_consent": {"state": "not_subscribed", "opt_in_level": "single_opt_in", "consent_updated_at": null}, "sms_marketing_consent": null, "tags": "", "currency": "USD", "accepts_marketing_updated_at": "2021-09-19T08:31:05-07:00", "marketing_opt_in_level": null, "tax_exemptions": [], "admin_graphql_api_id": "gid://shopify/Customer/5565161144509"}, "discount_applications": [], "fulfillments": [{"id": 3693416710333, "admin_graphql_api_id": "gid://shopify/Fulfillment/3693416710333", "created_at": "2021-09-19T09:08:23-07:00", "location_id": 63590301885, "name": "#1121.1", "order_id": 4147980107965, "origin_address": {}, "receipt": {}, "service": "manual", "shipment_status": null, "status": "success", "tracking_company": "Amazon Logistics US", "tracking_number": "123456", "tracking_numbers": ["123456"], "tracking_url": "https://track.amazon.com/tracking/123456", "tracking_urls": ["https://track.amazon.com/tracking/123456"], "updated_at": "2022-02-22T00:35:47-08:00", "line_items": [{"id": 10576771317949, "admin_graphql_api_id": "gid://shopify/LineItem/10576771317949", "fulfillable_quantity": 0, "fulfillment_service": "manual", "fulfillment_status": "fulfilled", "gift_card": false, "grams": 285, "name": "Red & Silver Fishing Lure - Plastic", "price": 27.0, "price_set": {"shop_money": {"amount": 27.0, "currency_code": "USD"}, "presentment_money": {"amount": 27.0, "currency_code": "USD"}}, "product_exists": true, "product_id": 6796218302653, "properties": [], "quantity": 1, "requires_shipping": true, "sku": "", "taxable": true, "title": "Red & Silver Fishing Lure", "total_discount": 0.0, "total_discount_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "variant_id": 40090580615357, "variant_inventory_management": "shopify", "variant_title": "Plastic", "vendor": "Harris - Hamill", "tax_lines": [], "duties": [], "discount_allocations": []}]}], "line_items": [{"id": 10576771317949, "admin_graphql_api_id": "gid://shopify/LineItem/10576771317949", "fulfillable_quantity": 0, "fulfillment_service": "manual", "fulfillment_status": "fulfilled", "gift_card": false, "grams": 285, "name": "Red & Silver Fishing Lure - Plastic", "price": 27.0, "price_set": {"shop_money": {"amount": 27.0, "currency_code": "USD"}, "presentment_money": {"amount": 27.0, "currency_code": "USD"}}, "product_exists": true, "product_id": 6796218302653, "properties": [], "quantity": 1, "requires_shipping": true, "sku": "", "taxable": true, "title": "Red & Silver Fishing Lure", "total_discount": 0.0, "total_discount_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "variant_id": 40090580615357, "variant_inventory_management": "shopify", "variant_title": "Plastic", "vendor": "Harris - Hamill", "tax_lines": [], "duties": [], "discount_allocations": []}], "payment_terms": null, "refunds": [{"id": 845032358077, "admin_graphql_api_id": "gid://shopify/Refund/845032358077", "created_at": "2022-03-07T02:09:04-08:00", "note": null, "order_id": 4147980107965, "processed_at": "2022-03-07T02:09:04-08:00", "restock": true, "total_duties_set": {"shop_money": {"amount": "0.00", "currency_code": "USD"}, "presentment_money": {"amount": "0.00", "currency_code": "USD"}}, "user_id": 74861019325, "order_adjustments": [], "transactions": [], "refund_line_items": [{"id": 352716947645, "line_item_id": 10576771317949, "location_id": 63590301885, "quantity": 1, "restock_type": "return", "subtotal": 27.0, "subtotal_set": {"shop_money": {"amount": "27.00", "currency_code": "USD"}, "presentment_money": {"amount": "27.00", "currency_code": "USD"}}, "total_tax": 0.0, "total_tax_set": {"shop_money": {"amount": "0.00", "currency_code": "USD"}, "presentment_money": {"amount": "0.00", "currency_code": "USD"}}, "line_item": {"id": 10576771317949, "admin_graphql_api_id": "gid://shopify/LineItem/10576771317949", "fulfillable_quantity": 0, "fulfillment_service": "manual", "fulfillment_status": "fulfilled", "gift_card": false, "grams": 285, "name": "Red & Silver Fishing Lure - Plastic", "price": "27.00", "price_set": {"shop_money": {"amount": "27.00", "currency_code": "USD"}, "presentment_money": {"amount": "27.00", "currency_code": "USD"}}, "product_exists": true, "product_id": 6796218302653, "properties": [], "quantity": 1, "requires_shipping": true, "sku": "", "taxable": true, "title": "Red & Silver Fishing Lure", "total_discount": "0.00", "total_discount_set": {"shop_money": {"amount": "0.00", "currency_code": "USD"}, "presentment_money": {"amount": "0.00", "currency_code": "USD"}}, "variant_id": 40090580615357, "variant_inventory_management": "shopify", "variant_title": "Plastic", "vendor": "Harris - Hamill", "tax_lines": [], "duties": [], "discount_allocations": []}}], "duties": []}], "shipping_address": {"first_name": "John", "address1": "San Francisco", "phone": "", "city": "San Francisco", "zip": "91326", "province": "California", "country": "United States", "last_name": "Doe", "address2": "10", "company": "Umbrella LLC", "latitude": 34.2894584, "longitude": -118.5622893, "name": "John Doe", "country_code": "US", "province_code": "CA"}, "shipping_lines": [], "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756931628} -{"stream": "orders", "data": {"id": 3935377129661, "admin_graphql_api_id": "gid://shopify/Order/3935377129661", "app_id": 1354745, "browser_ip": "76.14.176.236", "buyer_accepts_marketing": false, "cancel_reason": null, "cancelled_at": null, "cart_token": null, "checkout_id": 21670281707709, "checkout_token": "ea03756d615a5f9e752f3c085e8cf9bd", "client_details": {"accept_language": "en-US,en;q=0.9", "browser_height": null, "browser_ip": "76.14.176.236", "browser_width": null, "session_hash": null, "user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36"}, "closed_at": null, "company": null, "confirmation_number": null, "confirmed": true, "contact_email": null, "created_at": "2021-07-02T00:51:50-07:00", "currency": "USD", "current_subtotal_price": 0.0, "current_subtotal_price_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "current_total_additional_fees_set": null, "current_total_discounts": 0.0, "current_total_discounts_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "current_total_duties_set": null, "current_total_price": 0.0, "current_total_price_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "current_total_tax": 0.0, "current_total_tax_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "customer_locale": null, "device_id": null, "discount_codes": [], "email": "", "estimated_taxes": false, "financial_status": "refunded", "fulfillment_status": null, "landing_site": null, "landing_site_ref": null, "location_id": 63590301885, "merchant_of_record_app_id": null, "name": "#1001", "note": null, "note_attributes": [], "number": 1, "order_number": 1001, "order_status_url": "https://airbyte-integration-test.myshopify.com/58033176765/orders/16dd6c6e17f562f1f5eee0fefa00b4cb/authenticate?key=931eb302588779d0ab93839d42bf7166", "original_total_additional_fees_set": null, "original_total_duties_set": null, "payment_gateway_names": ["bogus"], "phone": null, "po_number": null, "presentment_currency": "USD", "processed_at": "2021-07-02T00:51:49-07:00", "reference": null, "referring_site": null, "source_identifier": null, "source_name": "shopify_draft_order", "source_url": null, "subtotal_price": 102.0, "subtotal_price_set": {"shop_money": {"amount": 102.0, "currency_code": "USD"}, "presentment_money": {"amount": 102.0, "currency_code": "USD"}}, "tags": "teest", "tax_exempt": false, "tax_lines": [{"price": 17.0, "rate": 0.2, "title": "PDV", "price_set": {"shop_money": {"amount": 17.0, "currency_code": "USD"}, "presentment_money": {"amount": 17.0, "currency_code": "USD"}}, "channel_liable": false}], "taxes_included": true, "test": true, "token": "16dd6c6e17f562f1f5eee0fefa00b4cb", "total_discounts": 0.0, "total_discounts_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "total_line_items_price": 102.0, "total_line_items_price_set": {"shop_money": {"amount": 102.0, "currency_code": "USD"}, "presentment_money": {"amount": 102.0, "currency_code": "USD"}}, "total_outstanding": 0.0, "total_price": 102.0, "total_price_set": {"shop_money": {"amount": 102.0, "currency_code": "USD"}, "presentment_money": {"amount": 102.0, "currency_code": "USD"}}, "total_shipping_price_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "total_tax": 17.0, "total_tax_set": {"shop_money": {"amount": 17.0, "currency_code": "USD"}, "presentment_money": {"amount": 17.0, "currency_code": "USD"}}, "total_tip_received": 0.0, "total_weight": 63, "updated_at": "2023-04-24T10:59:00-07:00", "user_id": 74861019325, "billing_address": null, "customer": {"id": 5349364105405, "email": null, "accepts_marketing": false, "created_at": "2021-07-02T00:51:46-07:00", "updated_at": "2021-07-02T00:51:46-07:00", "first_name": "Bogus", "last_name": "Gateway", "state": "disabled", "note": null, "verified_email": true, "multipass_identifier": null, "tax_exempt": false, "phone": null, "email_marketing_consent": null, "sms_marketing_consent": null, "tags": "", "currency": "USD", "accepts_marketing_updated_at": "2021-07-02T00:51:46-07:00", "marketing_opt_in_level": null, "tax_exemptions": [], "admin_graphql_api_id": "gid://shopify/Customer/5349364105405"}, "discount_applications": [], "fulfillments": [], "line_items": [{"id": 10130216452285, "admin_graphql_api_id": "gid://shopify/LineItem/10130216452285", "fulfillable_quantity": 0, "fulfillment_service": "manual", "fulfillment_status": null, "gift_card": false, "grams": 63, "name": "8 Ounce Soy Candle - Wooden", "price": 102.0, "price_set": {"shop_money": {"amount": 102.0, "currency_code": "USD"}, "presentment_money": {"amount": 102.0, "currency_code": "USD"}}, "product_exists": true, "product_id": 6796229509309, "properties": [], "quantity": 1, "requires_shipping": true, "sku": "", "taxable": true, "title": "8 Ounce Soy Candle", "total_discount": 0.0, "total_discount_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "variant_id": 40090604011709, "variant_inventory_management": "shopify", "variant_title": "Wooden", "vendor": "Bosco Inc", "tax_lines": [{"channel_liable": false, "price": 17.0, "price_set": {"shop_money": {"amount": 17.0, "currency_code": "USD"}, "presentment_money": {"amount": 17.0, "currency_code": "USD"}}, "rate": 0.2, "title": "PDV"}], "duties": [], "discount_allocations": []}], "payment_terms": null, "refunds": [{"id": 829538369725, "admin_graphql_api_id": "gid://shopify/Refund/829538369725", "created_at": "2021-09-21T05:31:59-07:00", "note": "test refund", "order_id": 3935377129661, "processed_at": "2021-09-21T05:31:59-07:00", "restock": true, "total_duties_set": {"shop_money": {"amount": "0.00", "currency_code": "USD"}, "presentment_money": {"amount": "0.00", "currency_code": "USD"}}, "user_id": 74861019325, "order_adjustments": [], "transactions": [{"id": 5189894406333, "admin_graphql_api_id": "gid://shopify/OrderTransaction/5189894406333", "amount": "102.00", "authorization": null, "created_at": "2021-09-21T05:31:58-07:00", "currency": "USD", "device_id": null, "error_code": null, "gateway": "bogus", "kind": "refund", "location_id": null, "message": "Bogus Gateway: Forced success", "order_id": 3935377129661, "parent_id": 4933790040253, "payment_id": "c21670281707709.2", "processed_at": "2021-09-21T05:31:58-07:00", "receipt": {"paid_amount": "102.00"}, "source_name": "1830279", "status": "success", "test": true, "user_id": 74861019325, "payment_details": {"credit_card_bin": "1", "avs_result_code": null, "cvv_result_code": null, "credit_card_number": "\u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 1", "credit_card_company": "Bogus", "buyer_action_info": null, "credit_card_name": "Bogus Gateway", "credit_card_wallet": null, "credit_card_expiration_month": 11, "credit_card_expiration_year": 2023}}], "refund_line_items": [{"id": 332807864509, "line_item_id": 10130216452285, "location_id": 63590301885, "quantity": 1, "restock_type": "cancel", "subtotal": 102.0, "subtotal_set": {"shop_money": {"amount": "102.00", "currency_code": "USD"}, "presentment_money": {"amount": "102.00", "currency_code": "USD"}}, "total_tax": 17.0, "total_tax_set": {"shop_money": {"amount": "17.00", "currency_code": "USD"}, "presentment_money": {"amount": "17.00", "currency_code": "USD"}}, "line_item": {"id": 10130216452285, "admin_graphql_api_id": "gid://shopify/LineItem/10130216452285", "fulfillable_quantity": 0, "fulfillment_service": "manual", "fulfillment_status": null, "gift_card": false, "grams": 63, "name": "8 Ounce Soy Candle - Wooden", "price": "102.00", "price_set": {"shop_money": {"amount": "102.00", "currency_code": "USD"}, "presentment_money": {"amount": "102.00", "currency_code": "USD"}}, "product_exists": true, "product_id": 6796229509309, "properties": [], "quantity": 1, "requires_shipping": true, "sku": "", "taxable": true, "title": "8 Ounce Soy Candle", "total_discount": "0.00", "total_discount_set": {"shop_money": {"amount": "0.00", "currency_code": "USD"}, "presentment_money": {"amount": "0.00", "currency_code": "USD"}}, "variant_id": 40090604011709, "variant_inventory_management": "shopify", "variant_title": "Wooden", "vendor": "Bosco Inc", "tax_lines": [{"channel_liable": false, "price": "17.00", "price_set": {"shop_money": {"amount": "17.00", "currency_code": "USD"}, "presentment_money": {"amount": "17.00", "currency_code": "USD"}}, "rate": 0.2, "title": "PDV"}], "duties": [], "discount_allocations": []}}], "duties": []}], "shipping_address": null, "shipping_lines": [], "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756931630} -{"stream": "pages", "data": {"id": 83074252989, "title": "Warranty information", "shop_id": 58033176765, "handle": "warranty-information", "body_html": "updated_mon_24.04.2023", "author": "Shopify API", "created_at": "2021-07-08T05:19:00-07:00", "updated_at": "2023-04-24T11:08:41-07:00", "published_at": "2021-07-08T05:19:00-07:00", "template_suffix": null, "admin_graphql_api_id": "gid://shopify/OnlineStorePage/83074252989", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756932639} -{"stream": "price_rules", "data": {"id": 945000284349, "value_type": "percentage", "value": "-3.0", "customer_selection": "all", "target_type": "line_item", "target_selection": "all", "allocation_method": "across", "allocation_limit": null, "once_per_customer": true, "usage_limit": 10, "starts_at": "2021-07-07T07:22:04-07:00", "ends_at": null, "created_at": "2021-07-07T07:23:11-07:00", "updated_at": "2023-04-24T05:52:22-07:00", "entitled_product_ids": [], "entitled_variant_ids": [], "entitled_collection_ids": [], "entitled_country_ids": [], "prerequisite_product_ids": [], "prerequisite_variant_ids": [], "prerequisite_collection_ids": [], "customer_segment_prerequisite_ids": [], "prerequisite_customer_ids": [], "prerequisite_subtotal_range": null, "prerequisite_quantity_range": null, "prerequisite_shipping_price_range": null, "prerequisite_to_entitlement_quantity_ratio": {"prerequisite_quantity": null, "entitled_quantity": null}, "prerequisite_to_entitlement_purchase": {"prerequisite_amount": null}, "title": "1V8Z165KSH5T", "admin_graphql_api_id": "gid://shopify/PriceRule/945000284349", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756933680} -{"stream": "product_images", "data": {"id": 29301297316029, "product_id": 6796220989629, "position": 1, "created_at": "2021-06-22T18:09:47-07:00", "updated_at": "2023-04-24T10:32:19-07:00", "alt": "updated_mon_24.04.2023", "width": 2200, "height": 1467, "src": "https://cdn.shopify.com/s/files/1/0580/3317/6765/products/4-ounce-soy-candle.jpg?v=1682357539", "variant_ids": [], "admin_graphql_api_id": "gid://shopify/ProductImage/29301297316029", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756935131} -{"stream": "products", "data": {"id": 6796220989629, "title": "4 Ounce Soy Candle", "body_html": "updated_mon_24.04.2023", "vendor": "Hartmann Group", "product_type": "Baby", "created_at": "2021-06-22T18:09:47-07:00", "handle": "4-ounce-soy-candle", "updated_at": "2023-04-24T11:05:13-07:00", "published_at": "2021-06-22T18:09:47-07:00", "template_suffix": "", "status": "active", "published_scope": "web", "tags": "developer-tools-generator", "admin_graphql_api_id": "gid://shopify/Product/6796220989629", "variants": [{"id": 40090585923773, "product_id": 6796220989629, "title": "Metal", "price": 19.0, "sku": "", "position": 1, "inventory_policy": "deny", "compare_at_price": null, "fulfillment_service": "manual", "inventory_management": "shopify", "option1": "Metal", "option2": null, "option3": null, "created_at": "2021-06-22T18:09:47-07:00", "updated_at": "2023-04-13T05:00:55-07:00", "taxable": true, "barcode": null, "grams": 112, "image_id": null, "weight": 112.0, "weight_unit": "g", "inventory_item_id": 42185200631997, "inventory_quantity": 15, "old_inventory_quantity": 15, "requires_shipping": true, "admin_graphql_api_id": "gid://shopify/ProductVariant/40090585923773"}, {"id": 41561955827901, "product_id": 6796220989629, "title": "Test Variant 1", "price": 19.0, "sku": "", "position": 2, "inventory_policy": "deny", "compare_at_price": null, "fulfillment_service": "manual", "inventory_management": "shopify", "option1": "Test Variant 1", "option2": null, "option3": null, "created_at": "2022-03-06T14:09:20-08:00", "updated_at": "2022-03-06T14:12:40-08:00", "taxable": true, "barcode": "", "grams": 112, "image_id": null, "weight": 112.0, "weight_unit": "g", "inventory_item_id": 43653682495677, "inventory_quantity": 2, "old_inventory_quantity": 2, "requires_shipping": true, "admin_graphql_api_id": "gid://shopify/ProductVariant/41561955827901"}, {"id": 41561961824445, "product_id": 6796220989629, "title": "Test Variant 2", "price": 19.0, "sku": "", "position": 3, "inventory_policy": "deny", "compare_at_price": null, "fulfillment_service": "manual", "inventory_management": "shopify", "option1": "Test Variant 2", "option2": null, "option3": null, "created_at": "2022-03-06T14:12:20-08:00", "updated_at": "2023-04-24T11:00:10-07:00", "taxable": true, "barcode": "", "grams": 112, "image_id": null, "weight": 112.0, "weight_unit": "g", "inventory_item_id": 43653688524989, "inventory_quantity": 0, "old_inventory_quantity": 0, "requires_shipping": true, "admin_graphql_api_id": "gid://shopify/ProductVariant/41561961824445"}], "options": [{"id": 8720178315453, "product_id": 6796220989629, "name": "Title", "position": 1, "values": ["Metal", "Test Variant 1", "Test Variant 2"]}], "images": [{"id": 29301297316029, "product_id": 6796220989629, "position": 1, "created_at": "2021-06-22T18:09:47-07:00", "updated_at": "2023-04-24T10:32:19-07:00", "alt": "updated_mon_24.04.2023", "width": 2200, "height": 1467, "src": "https://cdn.shopify.com/s/files/1/0580/3317/6765/products/4-ounce-soy-candle.jpg?v=1682357539", "variant_ids": [], "admin_graphql_api_id": "gid://shopify/ProductImage/29301297316029"}], "image": {"id": 29301297316029, "product_id": 6796220989629, "position": 1, "created_at": "2021-06-22T18:09:47-07:00", "updated_at": "2023-04-24T10:32:19-07:00", "alt": "updated_mon_24.04.2023", "width": 2200, "height": 1467, "src": "https://cdn.shopify.com/s/files/1/0580/3317/6765/products/4-ounce-soy-candle.jpg?v=1682357539", "variant_ids": [], "admin_graphql_api_id": "gid://shopify/ProductImage/29301297316029"}, "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756935547} -{"stream": "products_graph_ql", "data": {"id": "gid://shopify/Product/6796220989629", "title": "4 Ounce Soy Candle", "updatedAt": "2023-04-24T18:05:13Z", "createdAt": "2021-06-23T01:09:47Z", "publishedAt": "2021-06-23T01:09:47Z", "status": "ACTIVE", "vendor": "Hartmann Group", "productType": "Baby", "tags": ["developer-tools-generator"], "options": [{"id": "gid://shopify/ProductOption/8720178315453", "name": "Title", "position": 1, "values": ["Metal", "Test Variant 1", "Test Variant 2"]}], "handle": "4-ounce-soy-candle", "description": "updated_mon_24.04.2023", "tracksInventory": true, "totalInventory": 17, "totalVariants": 3, "onlineStoreUrl": null, "onlineStorePreviewUrl": "https://airbyte-integration-test.myshopify.com/products/4-ounce-soy-candle", "descriptionHtml": "updated_mon_24.04.2023", "isGiftCard": false, "legacyResourceId": "6796220989629", "mediaCount": 1, "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756936772} -{"stream": "product_variants", "data": {"id": 40090585923773, "product_id": 6796220989629, "title": "Metal", "price": 19.0, "sku": "", "position": 1, "inventory_policy": "deny", "compare_at_price": null, "fulfillment_service": "manual", "inventory_management": "shopify", "option1": "Metal", "option2": null, "option3": null, "created_at": "2021-06-22T18:09:47-07:00", "updated_at": "2023-04-13T05:00:55-07:00", "taxable": true, "barcode": null, "grams": 112, "image_id": null, "weight": 112.0, "weight_unit": "g", "inventory_item_id": 42185200631997, "inventory_quantity": 15, "old_inventory_quantity": 15, "requires_shipping": true, "admin_graphql_api_id": "gid://shopify/ProductVariant/40090585923773", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756938294} -{"stream": "product_variants", "data": {"id": 41561955827901, "product_id": 6796220989629, "title": "Test Variant 1", "price": 19.0, "sku": "", "position": 2, "inventory_policy": "deny", "compare_at_price": null, "fulfillment_service": "manual", "inventory_management": "shopify", "option1": "Test Variant 1", "option2": null, "option3": null, "created_at": "2022-03-06T14:09:20-08:00", "updated_at": "2022-03-06T14:12:40-08:00", "taxable": true, "barcode": "", "grams": 112, "image_id": null, "weight": 112.0, "weight_unit": "g", "inventory_item_id": 43653682495677, "inventory_quantity": 2, "old_inventory_quantity": 2, "requires_shipping": true, "admin_graphql_api_id": "gid://shopify/ProductVariant/41561955827901", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756938295} -{"stream": "product_variants", "data": {"id": 41561961824445, "product_id": 6796220989629, "title": "Test Variant 2", "price": 19.0, "sku": "", "position": 3, "inventory_policy": "deny", "compare_at_price": null, "fulfillment_service": "manual", "inventory_management": "shopify", "option1": "Test Variant 2", "option2": null, "option3": null, "created_at": "2022-03-06T14:12:20-08:00", "updated_at": "2023-04-24T11:00:10-07:00", "taxable": true, "barcode": "", "grams": 112, "image_id": null, "weight": 112.0, "weight_unit": "g", "inventory_item_id": 43653688524989, "inventory_quantity": 0, "old_inventory_quantity": 0, "requires_shipping": true, "admin_graphql_api_id": "gid://shopify/ProductVariant/41561961824445", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756938295} -{"stream": "shop", "data": {"id": 58033176765, "name": "airbyte integration test", "email": "sherif@airbyte.io", "domain": "airbyte-integration-test.myshopify.com", "province": "California", "country": "US", "address1": "350 29th Avenue", "zip": "94121", "city": "San Francisco", "source": null, "phone": "8023494963", "latitude": 37.7827286, "longitude": -122.4889911, "primary_locale": "en", "address2": "", "created_at": "2021-06-22T18:00:23-07:00", "updated_at": "2023-04-30T09:02:52-07:00", "country_code": "US", "country_name": "United States", "currency": "USD", "customer_email": "sherif@airbyte.io", "timezone": "(GMT-08:00) America/Los_Angeles", "iana_timezone": "America/Los_Angeles", "shop_owner": "Airbyte Airbyte", "money_format": "${{amount}}", "money_with_currency_format": "${{amount}} USD", "weight_unit": "kg", "province_code": "CA", "taxes_included": true, "auto_configure_tax_inclusivity": null, "tax_shipping": null, "county_taxes": true, "plan_display_name": "Developer Preview", "plan_name": "partner_test", "has_discounts": true, "has_gift_cards": false, "myshopify_domain": "airbyte-integration-test.myshopify.com", "google_apps_domain": null, "google_apps_login_enabled": null, "money_in_emails_format": "${{amount}}", "money_with_currency_in_emails_format": "${{amount}} USD", "eligible_for_payments": true, "requires_extra_payments_agreement": false, "password_enabled": true, "has_storefront": true, "finances": true, "primary_location_id": 63590301885, "checkout_api_supported": true, "multi_location_enabled": true, "setup_required": false, "pre_launch_enabled": false, "enabled_presentment_currencies": ["USD"], "transactional_sms_disabled": false, "marketing_sms_consent_enabled_at_checkout": false, "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756939467} -{"stream": "smart_collections", "data": {"id": 273278566589, "handle": "test-collection", "title": "Test Collection", "updated_at": "2023-04-24T10:55:09-07:00", "body_html": "updated_mon_24.04.2023", "published_at": "2021-07-19T07:02:54-07:00", "sort_order": "best-selling", "template_suffix": "", "disjunctive": false, "rules": ["{'column': 'type', 'relation': 'equals', 'condition': 'Beauty'}"], "published_scope": "web", "admin_graphql_api_id": "gid://shopify/Collection/273278566589", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756940487} -{"stream": "tender_transactions", "data": {"id": 4464009117885, "order_id": 5033391718589, "amount": "19.00", "currency": "USD", "user_id": null, "test": false, "processed_at": "2023-04-24T11:00:08-07:00", "remote_reference": null, "payment_details": null, "payment_method": "other", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756941551} -{"stream": "transactions", "data": {"id": 5721110872253, "order_id": 4554821468349, "kind": "sale", "gateway": "bogus", "status": "success", "message": "Bogus Gateway: Forced success", "created_at": "2022-06-15T05:16:52-07:00", "test": true, "authorization": "53433", "location_id": null, "user_id": null, "parent_id": null, "processed_at": "2022-06-15T05:16:52-07:00", "device_id": null, "error_code": null, "source_name": "580111", "payment_details": {"credit_card_bin": "1", "avs_result_code": null, "cvv_result_code": null, "credit_card_number": "\u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 1", "credit_card_company": "Bogus", "buyer_action_info": null, "credit_card_name": "Bogus Gateway", "credit_card_wallet": null, "credit_card_expiration_month": 2, "credit_card_expiration_year": 2025}, "receipt": {"paid_amount": "57.23"}, "amount": 57.23, "currency": "USD", "payment_id": "c25048437719229.1", "total_unsettled_set": {"presentment_money": {"amount": 0.0, "currency": "USD"}, "shop_money": {"amount": 0.0, "currency": "USD"}}, "admin_graphql_api_id": "gid://shopify/OrderTransaction/5721110872253", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756943730} -{"stream": "transactions", "data": {"id": 5721170968765, "order_id": 4554821468349, "kind": "refund", "gateway": "bogus", "status": "success", "message": "Bogus Gateway: Forced success", "created_at": "2022-06-15T06:25:42-07:00", "test": true, "authorization": null, "location_id": null, "user_id": null, "parent_id": 5721110872253, "processed_at": "2022-06-15T06:25:42-07:00", "device_id": null, "error_code": null, "source_name": "1830279", "payment_details": {"credit_card_bin": "1", "avs_result_code": null, "cvv_result_code": null, "credit_card_number": "\u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 1", "credit_card_company": "Bogus", "buyer_action_info": null, "credit_card_name": "Bogus Gateway", "credit_card_wallet": null, "credit_card_expiration_month": 2, "credit_card_expiration_year": 2025}, "receipt": {"paid_amount": "57.23"}, "amount": 57.23, "currency": "USD", "payment_id": "c25048437719229.2", "total_unsettled_set": {"presentment_money": {"amount": 0.0, "currency": "USD"}, "shop_money": {"amount": 0.0, "currency": "USD"}}, "admin_graphql_api_id": "gid://shopify/OrderTransaction/5721170968765", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756943731} -{"stream": "transactions", "data": {"id": 4933790040253, "order_id": 3935377129661, "kind": "sale", "gateway": "bogus", "status": "success", "message": "Bogus Gateway: Forced success", "created_at": "2021-07-02T00:51:49-07:00", "test": true, "authorization": "53433", "location_id": null, "user_id": null, "parent_id": null, "processed_at": "2021-07-02T00:51:49-07:00", "device_id": null, "error_code": null, "source_name": "shopify_draft_order", "payment_details": {"credit_card_bin": "1", "avs_result_code": null, "cvv_result_code": null, "credit_card_number": "\u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 1", "credit_card_company": "Bogus", "buyer_action_info": null, "credit_card_name": "Bogus Gateway", "credit_card_wallet": null, "credit_card_expiration_month": 11, "credit_card_expiration_year": 2023}, "receipt": {"paid_amount": "102.00"}, "amount": 102.0, "currency": "USD", "payment_id": "c21670281707709.1", "total_unsettled_set": {"presentment_money": {"amount": 0.0, "currency": "USD"}, "shop_money": {"amount": 0.0, "currency": "USD"}}, "admin_graphql_api_id": "gid://shopify/OrderTransaction/4933790040253", "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756944767} -{"stream": "customer_address", "data": {"id": 8092523135165, "customer_id": 6569096478909, "first_name": "New Test", "last_name": "Customer", "company": "Test Company", "address1": "My Best Accent", "address2": "", "city": "Fair Lawn", "province": "New Jersey", "country": "United States", "zip": "07410", "phone": "", "name": "New Test Customer", "province_code": "NJ", "country_code": "US", "country_name": "United States", "default": true, "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756950493} -{"stream": "customer_address", "data": {"id": 8212915650749, "customer_id": 6676027932861, "first_name": "MArcos", "last_name": "Millnitz", "company": null, "address1": null, "address2": null, "city": null, "province": null, "country": null, "zip": null, "phone": null, "name": "MArcos Millnitz", "province_code": null, "country_code": null, "country_name": null, "default": true, "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756950982} -{"stream": "countries", "data": {"id": 417014841533, "name": "Rest of World", "code": "*", "tax_name": "Tax", "tax": 0.0, "provinces": [], "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756952070} -{"stream": "countries", "data": {"id": 417014808765, "name": "Ukraine", "code": "UA", "tax_name": "PDV", "tax": 0.2, "provinces": [], "shop_url": "airbyte-integration-test"}, "emitted_at": 1691756952071} +{"stream": "articles", "data": {"id": 558137508029, "title": "My new Article title", "created_at": "2022-10-07T16:09:02-07:00", "body_html": "

I like articles

\n

Yea, I like posting them through REST.

", "blog_id": 80417685693, "author": "John Smith", "user_id": null, "published_at": "2011-03-24T08:45:47-07:00", "updated_at": "2023-04-14T03:18:26-07:00", "summary_html": null, "template_suffix": null, "handle": "my-new-article-title", "tags": "Has Been Tagged, This Post", "admin_graphql_api_id": "gid://shopify/OnlineStoreArticle/558137508029", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515711051} +{"stream": "articles", "data": {"id": 558627979453, "title": "Test Blog Post", "created_at": "2023-04-14T03:19:02-07:00", "body_html": "Test Blog Post 1", "blog_id": 80417685693, "author": "Airbyte Airbyte", "user_id": "74861019325", "published_at": null, "updated_at": "2023-04-14T03:19:18-07:00", "summary_html": "", "template_suffix": "", "handle": "test-blog-post", "tags": "Has Been Tagged", "admin_graphql_api_id": "gid://shopify/OnlineStoreArticle/558627979453", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515711052} +{"stream": "articles", "data": {"id": 558999371965, "deleted_at": "2023-09-05T13:50:04-07:00", "updated_at": "2023-09-05T13:50:04-07:00", "deleted_message": "Online Store deleted an article: Test Article 1.", "deleted_description": "Online Store deleted an article: Test Article 1.", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515711637} +{"stream": "blogs", "data": {"id": 80417685693, "handle": "news", "title": "News", "updated_at": "2023-09-05T14:02:00-07:00", "commentable": "no", "feedburner": null, "feedburner_location": null, "created_at": "2021-06-22T18:00:25-07:00", "template_suffix": null, "tags": "Has Been Tagged, This Post", "admin_graphql_api_id": "gid://shopify/OnlineStoreBlog/80417685693", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515714195} +{"stream": "blogs", "data": {"id": 85733114045, "deleted_at": "2023-09-06T03:30:22-07:00", "updated_at": "2023-09-06T03:30:22-07:00", "deleted_message": "Online Store deleted a blog: Test Blog 1.", "deleted_description": "Online Store deleted a blog: Test Blog 1.", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515714784} +{"stream": "collections", "data": {"id": 270889287869, "handle": "frontpage", "title": "Home page", "updated_at": "2023-09-05T07:06:59-07:00", "body_html": "updated_mon_24.04.2023", "published_at": "2021-06-22T18:00:25-07:00", "sort_order": "best-selling", "template_suffix": "", "products_count": 1, "collection_type": "custom", "published_scope": "web", "admin_graphql_api_id": "gid://shopify/Collection/270889287869", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515716895} +{"stream": "collects", "data": {"id": 29427031703741, "collection_id": 270889287869, "product_id": 6796220989629, "created_at": "2021-07-19T07:01:36-07:00", "updated_at": "2022-03-06T14:12:21-08:00", "position": 2, "sort_value": "0000000002", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515717882} +{"stream": "custom_collections", "data": {"id": 270889287869, "handle": "frontpage", "title": "Home page", "updated_at": "2023-09-05T07:06:59-07:00", "body_html": "updated_mon_24.04.2023", "published_at": "2021-06-22T18:00:25-07:00", "sort_order": "best-selling", "template_suffix": "", "published_scope": "web", "admin_graphql_api_id": "gid://shopify/Collection/270889287869", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515718902} +{"stream": "custom_collections", "data": {"id": 294253822141, "deleted_at": "2023-09-06T03:34:39-07:00", "updated_at": "2023-09-06T03:34:39-07:00", "deleted_message": "Airbyte Airbyte deleted a collection.", "deleted_description": "Airbyte Airbyte deleted a collection.", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515719560} +{"stream": "customers", "data": {"id": 6569096478909, "email": "test@test.com", "accepts_marketing": true, "created_at": "2023-04-13T02:30:04-07:00", "updated_at": "2023-04-24T06:53:48-07:00", "first_name": "New Test", "last_name": "Customer", "orders_count": 0, "state": "disabled", "total_spent": 0.0, "last_order_id": null, "note": "updated_mon_24.04.2023", "verified_email": true, "multipass_identifier": null, "tax_exempt": false, "tags": "", "last_order_name": null, "currency": "USD", "phone": "+380639379992", "addresses": [{"id": 8092523135165, "customer_id": 6569096478909, "first_name": "New Test", "last_name": "Customer", "company": "Test Company", "address1": "My Best Accent", "address2": "", "city": "Fair Lawn", "province": "New Jersey", "country": "United States", "zip": "07410", "phone": "", "name": "New Test Customer", "province_code": "NJ", "country_code": "US", "country_name": "United States", "default": true}], "accepts_marketing_updated_at": "2023-04-13T02:30:04-07:00", "marketing_opt_in_level": "single_opt_in", "tax_exemptions": "[]", "email_marketing_consent": {"state": "subscribed", "opt_in_level": "single_opt_in", "consent_updated_at": "2023-04-13T02:30:04-07:00"}, "sms_marketing_consent": {"state": "not_subscribed", "opt_in_level": "single_opt_in", "consent_updated_at": null, "consent_collected_from": "SHOPIFY"}, "admin_graphql_api_id": "gid://shopify/Customer/6569096478909", "default_address": {"id": 8092523135165, "customer_id": 6569096478909, "first_name": "New Test", "last_name": "Customer", "company": "Test Company", "address1": "My Best Accent", "address2": "", "city": "Fair Lawn", "province": "New Jersey", "country": "United States", "zip": "07410", "phone": "", "name": "New Test Customer", "province_code": "NJ", "country_code": "US", "country_name": "United States", "default": true}, "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515720735} +{"stream": "customers", "data": {"id": 6676027932861, "email": "marcos@airbyte.io", "accepts_marketing": false, "created_at": "2023-07-11T13:07:45-07:00", "updated_at": "2023-07-11T13:07:45-07:00", "first_name": "MArcos", "last_name": "Millnitz", "orders_count": 0, "state": "disabled", "total_spent": 0.0, "last_order_id": null, "note": null, "verified_email": true, "multipass_identifier": null, "tax_exempt": false, "tags": "", "last_order_name": null, "currency": "USD", "phone": null, "addresses": [{"id": 8212915650749, "customer_id": 6676027932861, "first_name": "MArcos", "last_name": "Millnitz", "company": null, "address1": null, "address2": null, "city": null, "province": null, "country": null, "zip": null, "phone": null, "name": "MArcos Millnitz", "province_code": null, "country_code": null, "country_name": null, "default": true}], "accepts_marketing_updated_at": "2023-07-11T13:07:45-07:00", "marketing_opt_in_level": null, "tax_exemptions": "[]", "email_marketing_consent": {"state": "not_subscribed", "opt_in_level": "single_opt_in", "consent_updated_at": null}, "sms_marketing_consent": null, "admin_graphql_api_id": "gid://shopify/Customer/6676027932861", "default_address": {"id": 8212915650749, "customer_id": 6676027932861, "first_name": "MArcos", "last_name": "Millnitz", "company": null, "address1": null, "address2": null, "city": null, "province": null, "country": null, "zip": null, "phone": null, "name": "MArcos Millnitz", "province_code": null, "country_code": null, "country_name": null, "default": true}, "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515720737} +{"stream": "discount_codes", "data": {"id": 11539415990461, "price_rule_id": 945000284349, "code": "updated_mon_24.04.2023", "usage_count": 0, "created_at": "2021-07-07T07:23:11-07:00", "updated_at": "2023-04-24T05:52:22-07:00", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515722975} +{"stream": "draft_orders", "data": {"id": 929019691197, "note": "updated_mon_24.04.2023", "email": null, "taxes_included": true, "currency": "USD", "invoice_sent_at": null, "created_at": "2022-02-22T03:23:19-08:00", "updated_at": "2023-04-24T07:18:06-07:00", "tax_exempt": false, "completed_at": null, "name": "#D21", "status": "open", "line_items": [{"id": 58117295538365, "variant_id": 40090585923773, "product_id": 6796220989629, "title": "4 Ounce Soy Candle", "variant_title": "Metal", "sku": "", "vendor": "Hartmann Group", "quantity": 2, "requires_shipping": true, "taxable": true, "gift_card": false, "fulfillment_service": "manual", "grams": 112, "tax_lines": [{"rate": 0.2, "title": "PDV", "price": 6.33}], "applied_discount": null, "name": "4 Ounce Soy Candle - Metal", "properties": [], "custom": false, "price": 19.0, "admin_graphql_api_id": "gid://shopify/DraftOrderLineItem/58117295538365"}, {"id": 58117295571133, "variant_id": null, "product_id": null, "title": "Test Item", "variant_title": null, "sku": null, "vendor": null, "quantity": 1, "requires_shipping": true, "taxable": true, "gift_card": false, "fulfillment_service": "manual", "grams": 1000, "tax_lines": [{"rate": 0.2, "title": "PDV", "price": 0.17}], "applied_discount": null, "name": "Test Item", "properties": [], "custom": true, "price": 1.0, "admin_graphql_api_id": "gid://shopify/DraftOrderLineItem/58117295571133"}], "shipping_address": null, "billing_address": null, "invoice_url": "https://airbyte-integration-test.myshopify.com/58033176765/invoices/12893992cc01fc67935ab014fcf9300f", "applied_discount": null, "order_id": null, "shipping_line": {"title": "Test Shipping Fee", "custom": true, "handle": null, "price": 3.0}, "tax_lines": [{"rate": 0.2, "title": "PDV", "price": 6.33}, {"rate": 0.2, "title": "PDV", "price": 0.17}], "tags": "", "note_attributes": [], "total_price": "42.00", "subtotal_price": "39.00", "total_tax": "6.50", "payment_terms": null, "admin_graphql_api_id": "gid://shopify/DraftOrder/929019691197", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515725894} +{"stream": "draft_orders", "data": {"id": 988639920317, "note": null, "email": null, "taxes_included": true, "currency": "USD", "invoice_sent_at": null, "created_at": "2023-04-24T11:00:01-07:00", "updated_at": "2023-04-24T11:00:09-07:00", "tax_exempt": false, "completed_at": "2023-04-24T11:00:09-07:00", "name": "#D29", "status": "completed", "line_items": [{"id": 58121808019645, "variant_id": 41561961824445, "product_id": 6796220989629, "title": "4 Ounce Soy Candle", "variant_title": "Test Variant 2", "sku": "", "vendor": "Hartmann Group", "quantity": 1, "requires_shipping": true, "taxable": true, "gift_card": false, "fulfillment_service": "manual", "grams": 112, "tax_lines": [{"rate": 0.2, "title": "PDV", "price": 3.17}], "applied_discount": null, "name": "4 Ounce Soy Candle - Test Variant 2", "properties": [], "custom": false, "price": 19.0, "admin_graphql_api_id": "gid://shopify/DraftOrderLineItem/58121808019645"}], "shipping_address": null, "billing_address": null, "invoice_url": "https://airbyte-integration-test.myshopify.com/58033176765/invoices/95271a5eeb083c831f76a98fa3712f89", "applied_discount": null, "order_id": 5033391718589, "shipping_line": null, "tax_lines": [{"rate": 0.2, "title": "PDV", "price": 3.17}], "tags": "", "note_attributes": [], "total_price": "19.00", "subtotal_price": "19.00", "total_tax": "3.17", "payment_terms": null, "admin_graphql_api_id": "gid://shopify/DraftOrder/988639920317", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515725895} +{"stream": "draft_orders", "data": {"id": 997801689277, "note": null, "email": null, "taxes_included": true, "currency": "USD", "invoice_sent_at": null, "created_at": "2023-07-11T12:57:53-07:00", "updated_at": "2023-07-11T12:57:55-07:00", "tax_exempt": false, "completed_at": null, "name": "#D30", "status": "open", "line_items": [{"id": 58159126905021, "variant_id": 40090585923773, "product_id": 6796220989629, "title": "4 Ounce Soy Candle", "variant_title": "Metal", "sku": "", "vendor": "Hartmann Group", "quantity": 1, "requires_shipping": true, "taxable": true, "gift_card": false, "fulfillment_service": "manual", "grams": 112, "tax_lines": [{"rate": 0.2, "title": "PDV", "price": 3.17}], "applied_discount": null, "name": "4 Ounce Soy Candle - Metal", "properties": [], "custom": false, "price": 19.0, "admin_graphql_api_id": "gid://shopify/DraftOrderLineItem/58159126905021"}], "shipping_address": null, "billing_address": null, "invoice_url": "https://airbyte-integration-test.myshopify.com/58033176765/invoices/a98bc7e113733d6faa36c198cf6c7c1a", "applied_discount": null, "order_id": null, "shipping_line": null, "tax_lines": [{"rate": 0.2, "title": "PDV", "price": 3.17}], "tags": "", "note_attributes": [], "total_price": "19.00", "subtotal_price": "19.00", "total_tax": "3.17", "payment_terms": null, "admin_graphql_api_id": "gid://shopify/DraftOrder/997801689277", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515725896} +{"stream": "fulfillment_orders", "data": {"id": 5558588309693, "shop_id": 58033176765, "order_id": 4554821468349, "assigned_location_id": 63590301885, "request_status": "unsubmitted", "status": "closed", "supported_actions": [], "destination": null, "line_items": [{"id": 11564232016061, "shop_id": 58033176765, "fulfillment_order_id": 5558588309693, "quantity": 1, "line_item_id": 11406125564093, "inventory_item_id": 42185212592317, "fulfillable_quantity": 0, "variant_id": 40090597884093}], "fulfill_at": "2022-06-15T05:00:00-07:00", "fulfill_by": null, "international_duties": null, "fulfillment_holds": [], "delivery_method": {"id": 119732437181, "method_type": "none", "min_delivery_date_time": null, "max_delivery_date_time": null}, "created_at": "2022-06-15T05:16:54-07:00", "updated_at": "2022-06-15T05:16:55-07:00", "assigned_location": {"address1": "Heroiv UPA 72", "address2": null, "city": "Lviv", "country_code": "UA", "location_id": 63590301885, "name": "Heroiv UPA 72", "phone": "", "province": null, "zip": "30100"}, "merchant_requests": [], "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515728519} +{"stream": "fulfillment_orders", "data": {"id": 5138290671805, "shop_id": 58033176765, "order_id": 4147980107965, "assigned_location_id": 63590301885, "request_status": "unsubmitted", "status": "closed", "supported_actions": [], "destination": {"id": 5183946588349, "address1": "San Francisco", "address2": "10", "city": "San Francisco", "company": "Umbrella LLC", "country": "United States", "email": "airbyte@airbyte.com", "first_name": "John", "last_name": "Doe", "phone": "", "province": "California", "zip": "91326"}, "line_items": [{"id": 10713758531773, "shop_id": 58033176765, "fulfillment_order_id": 5138290671805, "quantity": 1, "line_item_id": 10576771317949, "inventory_item_id": 42185195290813, "fulfillable_quantity": 0, "variant_id": 40090580615357}], "fulfill_at": null, "fulfill_by": null, "international_duties": "{'incoterm': None}", "fulfillment_holds": [], "delivery_method": null, "created_at": "2021-09-19T09:08:23-07:00", "updated_at": "2021-09-19T09:08:23-07:00", "assigned_location": {"address1": "Heroiv UPA 72", "address2": null, "city": "Lviv", "country_code": "UA", "location_id": 63590301885, "name": "Heroiv UPA 72", "phone": "", "province": null, "zip": "30100"}, "merchant_requests": [], "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515729045} +{"stream": "fulfillment_orders", "data": {"id": 4919375659197, "shop_id": 58033176765, "order_id": 3935377129661, "assigned_location_id": 63590301885, "request_status": "unsubmitted", "status": "closed", "supported_actions": [], "destination": null, "line_items": [{"id": 10251692081341, "shop_id": 58033176765, "fulfillment_order_id": 4919375659197, "quantity": 1, "line_item_id": 10130216452285, "inventory_item_id": 42185218719933, "fulfillable_quantity": 1, "variant_id": 40090604011709}], "fulfill_at": null, "fulfill_by": null, "international_duties": null, "fulfillment_holds": [], "delivery_method": null, "created_at": "2021-07-02T00:51:51-07:00", "updated_at": "2021-09-21T05:31:59-07:00", "assigned_location": {"address1": "Heroiv UPA 72", "address2": null, "city": "Lviv", "country_code": "UA", "location_id": 63590301885, "name": "Heroiv UPA 72", "phone": "", "province": null, "zip": "30100"}, "merchant_requests": [], "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515729529} +{"stream": "fulfillments", "data": {"id": 4075788501181, "order_id": 4554821468349, "status": "success", "created_at": "2022-06-15T05:16:55-07:00", "service": "manual", "updated_at": "2022-06-15T05:16:55-07:00", "tracking_company": null, "shipment_status": null, "location_id": 63590301885, "origin_address": null, "line_items": [{"id": 11406125564093, "variant_id": 40090597884093, "title": "All Black Sneaker Right Foot", "quantity": 1, "sku": "", "variant_title": "ivory", "vendor": "Becker - Moore", "fulfillment_service": "manual", "product_id": 6796226560189, "requires_shipping": false, "taxable": true, "gift_card": false, "name": "All Black Sneaker Right Foot - ivory", "variant_inventory_management": "shopify", "properties": [], "product_exists": true, "fulfillable_quantity": 0, "grams": 0, "price": "59.00", "total_discount": "0.00", "fulfillment_status": "fulfilled", "price_set": {"shop_money": {"amount": "59.00", "currency_code": "USD"}, "presentment_money": {"amount": "59.00", "currency_code": "USD"}}, "total_discount_set": {"shop_money": {"amount": "0.00", "currency_code": "USD"}, "presentment_money": {"amount": "0.00", "currency_code": "USD"}}, "discount_allocations": [{"amount": "1.77", "discount_application_index": 0, "amount_set": {"shop_money": {"amount": "1.77", "currency_code": "USD"}, "presentment_money": {"amount": "1.77", "currency_code": "USD"}}}], "origin_location": {"id": 3007664259261, "country_code": "UA", "province_code": "", "name": "airbyte integration test", "address1": "Heroiv UPA 72", "address2": "", "city": "Lviv", "zip": "30100"}, "admin_graphql_api_id": "gid://shopify/LineItem/11406125564093", "duties": [], "tax_lines": [], "fulfillment_line_item_id": 9633709097149}], "tracking_number": null, "tracking_numbers": [], "tracking_url": null, "tracking_urls": [], "receipt": {}, "name": "#1136.1", "admin_graphql_api_id": "gid://shopify/Fulfillment/4075788501181", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515733294} +{"stream": "fulfillments", "data": {"id": 3693416710333, "order_id": 4147980107965, "status": "success", "created_at": "2021-09-19T09:08:23-07:00", "service": "manual", "updated_at": "2022-02-22T00:35:47-08:00", "tracking_company": "Amazon Logistics US", "shipment_status": null, "location_id": 63590301885, "origin_address": null, "line_items": [{"id": 10576771317949, "variant_id": 40090580615357, "title": "Red & Silver Fishing Lure", "quantity": 1, "sku": "", "variant_title": "Plastic", "vendor": "Harris - Hamill", "fulfillment_service": "manual", "product_id": 6796218302653, "requires_shipping": true, "taxable": true, "gift_card": false, "name": "Red & Silver Fishing Lure - Plastic", "variant_inventory_management": "shopify", "properties": [], "product_exists": true, "fulfillable_quantity": 0, "grams": 285, "price": "27.00", "total_discount": "0.00", "fulfillment_status": "fulfilled", "price_set": {"shop_money": {"amount": "27.00", "currency_code": "USD"}, "presentment_money": {"amount": "27.00", "currency_code": "USD"}}, "total_discount_set": {"shop_money": {"amount": "0.00", "currency_code": "USD"}, "presentment_money": {"amount": "0.00", "currency_code": "USD"}}, "discount_allocations": [], "admin_graphql_api_id": "gid://shopify/LineItem/10576771317949", "duties": [], "tax_lines": [], "fulfillment_line_item_id": 8852381401277}], "tracking_number": "123456", "tracking_numbers": ["123456"], "tracking_url": "https://track.amazon.com/tracking/123456", "tracking_urls": ["https://track.amazon.com/tracking/123456"], "receipt": {}, "name": "#1121.1", "admin_graphql_api_id": "gid://shopify/Fulfillment/3693416710333", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515733887} +{"stream": "fulfillments", "data": {"id": 4465911431357, "order_id": 5033391718589, "status": "success", "created_at": "2023-04-24T11:00:09-07:00", "service": "manual", "updated_at": "2023-04-24T11:00:09-07:00", "tracking_company": null, "shipment_status": null, "location_id": 63590301885, "origin_address": null, "line_items": [{"id": 12247585521853, "variant_id": 41561961824445, "title": "4 Ounce Soy Candle", "quantity": 1, "sku": "", "variant_title": "Test Variant 2", "vendor": "Hartmann Group", "fulfillment_service": "manual", "product_id": 6796220989629, "requires_shipping": true, "taxable": true, "gift_card": false, "name": "4 Ounce Soy Candle - Test Variant 2", "variant_inventory_management": "shopify", "properties": [], "product_exists": true, "fulfillable_quantity": 0, "grams": 112, "price": "19.00", "total_discount": "0.00", "fulfillment_status": "fulfilled", "price_set": {"shop_money": {"amount": "19.00", "currency_code": "USD"}, "presentment_money": {"amount": "19.00", "currency_code": "USD"}}, "total_discount_set": {"shop_money": {"amount": "0.00", "currency_code": "USD"}, "presentment_money": {"amount": "0.00", "currency_code": "USD"}}, "discount_allocations": [], "origin_location": {"id": 3000230707389, "country_code": "UA", "province_code": "", "name": "Heroiv UPA 72", "address1": "Heroiv UPA 72", "address2": "", "city": "Lviv", "zip": "30100"}, "admin_graphql_api_id": "gid://shopify/LineItem/12247585521853", "duties": [], "tax_lines": [{"price": 3.17, "rate": 0.2, "title": "PDV", "price_set": {"shop_money": {"amount": "3.17", "currency_code": "USD"}, "presentment_money": {"amount": "3.17", "currency_code": "USD"}}, "channel_liable": null}], "fulfillment_line_item_id": 10383179514045}], "tracking_number": null, "tracking_numbers": [], "tracking_url": null, "tracking_urls": [], "receipt": {}, "name": "#1145.1", "admin_graphql_api_id": "gid://shopify/Fulfillment/4465911431357", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515734898} +{"stream": "inventory_items", "data": {"id": 42185200631997, "sku": "", "created_at": "2021-06-22T18:09:47-07:00", "updated_at": "2022-02-22T00:40:19-08:00", "requires_shipping": true, "cost": 19.0, "country_code_of_origin": null, "province_code_of_origin": null, "harmonized_system_code": null, "tracked": true, "country_harmonized_system_codes": [], "admin_graphql_api_id": "gid://shopify/InventoryItem/42185200631997", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515737355} +{"stream": "inventory_items", "data": {"id": 43653682495677, "sku": "", "created_at": "2022-03-06T14:09:20-08:00", "updated_at": "2022-03-06T14:09:20-08:00", "requires_shipping": true, "cost": 19.0, "country_code_of_origin": null, "province_code_of_origin": null, "harmonized_system_code": null, "tracked": true, "country_harmonized_system_codes": [], "admin_graphql_api_id": "gid://shopify/InventoryItem/43653682495677", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515737357} +{"stream": "inventory_items", "data": {"id": 43653688524989, "sku": "", "created_at": "2022-03-06T14:12:20-08:00", "updated_at": "2022-03-06T14:12:20-08:00", "requires_shipping": true, "cost": 19.0, "country_code_of_origin": null, "province_code_of_origin": null, "harmonized_system_code": null, "tracked": true, "country_harmonized_system_codes": [], "admin_graphql_api_id": "gid://shopify/InventoryItem/43653688524989", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515737357} +{"stream": "inventory_levels", "data": {"inventory_item_id": 42185194668221, "location_id": 63590301885, "available": 12, "updated_at": "2021-06-22T18:09:27-07:00", "admin_graphql_api_id": "gid://shopify/InventoryLevel/97912455357?inventory_item_id=42185194668221", "shop_url": "airbyte-integration-test", "id": "63590301885|42185194668221"}, "emitted_at": 1694515741090} +{"stream": "inventory_levels", "data": {"inventory_item_id": 42185194700989, "location_id": 63590301885, "available": 3, "updated_at": "2021-06-22T18:09:27-07:00", "admin_graphql_api_id": "gid://shopify/InventoryLevel/97912455357?inventory_item_id=42185194700989", "shop_url": "airbyte-integration-test", "id": "63590301885|42185194700989"}, "emitted_at": 1694515741095} +{"stream": "inventory_levels", "data": {"inventory_item_id": 42185194733757, "location_id": 63590301885, "available": 38, "updated_at": "2021-06-22T18:09:27-07:00", "admin_graphql_api_id": "gid://shopify/InventoryLevel/97912455357?inventory_item_id=42185194733757", "shop_url": "airbyte-integration-test", "id": "63590301885|42185194733757"}, "emitted_at": 1694515741095} +{"stream": "locations", "data": {"id": 63590301885, "name": "Heroiv UPA 72", "address1": "Heroiv UPA 72", "address2": null, "city": "Lviv", "zip": "30100", "province": null, "country": "UA", "phone": "", "created_at": "2021-06-22T18:00:29-07:00", "updated_at": "2023-02-25T16:20:00-08:00", "country_code": "UA", "country_name": "Ukraine", "province_code": null, "legacy": false, "active": true, "admin_graphql_api_id": "gid://shopify/Location/63590301885", "localized_country_name": "Ukraine", "localized_province_name": null, "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515744081} +{"stream": "metafield_articles", "data": {"id": 21519818162365, "namespace": "global", "key": "new", "value": "newvalue", "description": null, "owner_id": 558137508029, "created_at": "2022-10-07T16:09:02-07:00", "updated_at": "2022-10-07T16:09:02-07:00", "owner_resource": "article", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/21519818162365", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515746297} +{"stream": "metafield_articles", "data": {"id": 22365709992125, "namespace": "custom", "key": "test_blog_post_metafield", "value": "Test Article Metafield", "description": null, "owner_id": 558137508029, "created_at": "2023-04-14T03:18:26-07:00", "updated_at": "2023-04-14T03:18:26-07:00", "owner_resource": "article", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22365709992125", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515746298} +{"stream": "metafield_articles", "data": {"id": 22365710352573, "namespace": "custom", "key": "test_blog_post_metafield", "value": "Test Blog Post Metafiled", "description": null, "owner_id": 558627979453, "created_at": "2023-04-14T03:19:18-07:00", "updated_at": "2023-04-14T03:19:18-07:00", "owner_resource": "article", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22365710352573", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515746889} +{"stream": "metafield_blogs", "data": {"id": 21519428255933, "namespace": "some_fields", "key": "sponsor", "value": "Shopify", "description": null, "owner_id": 80417685693, "created_at": "2022-10-07T06:05:23-07:00", "updated_at": "2022-10-07T06:05:23-07:00", "owner_resource": "blog", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/21519428255933", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515751027} +{"stream": "metafield_blogs", "data": {"id": 22365710745789, "namespace": "custom", "key": "test_blog_metafield", "value": "Test Blog Metafield", "description": null, "owner_id": 80417685693, "created_at": "2023-04-14T03:20:20-07:00", "updated_at": "2023-04-14T03:20:20-07:00", "owner_resource": "blog", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22365710745789", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515751028} +{"stream": "metafield_collections", "data": {"id": 21520343367869, "namespace": "my_fields", "key": "discount", "value": "25%", "description": null, "owner_id": 270889287869, "created_at": "2022-10-08T04:44:51-07:00", "updated_at": "2022-10-08T04:44:51-07:00", "owner_resource": "collection", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/21520343367869", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515753693} +{"stream": "metafield_collections", "data": {"id": 22365707174077, "namespace": "custom", "key": "test_collection_metafield", "value": "Test Collection Metafield", "description": null, "owner_id": 270889287869, "created_at": "2023-04-14T03:15:30-07:00", "updated_at": "2023-04-14T03:15:30-07:00", "owner_resource": "collection", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22365707174077", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515753695} +{"stream": "metafield_customers", "data": {"id": 22346893361341, "namespace": "custom", "key": "test_definition_list_1", "value": "Teste\n", "description": null, "owner_id": 6569096478909, "created_at": "2023-04-13T04:50:10-07:00", "updated_at": "2023-04-13T04:50:10-07:00", "owner_resource": "customer", "type": "multi_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22346893361341", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515756110} +{"stream": "metafield_customers", "data": {"id": 22346893394109, "namespace": "custom", "key": "test_definition", "value": "Taster", "description": null, "owner_id": 6569096478909, "created_at": "2023-04-13T04:50:10-07:00", "updated_at": "2023-04-13T04:50:10-07:00", "owner_resource": "customer", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22346893394109", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515756111} +{"stream": "metafield_draft_orders", "data": {"id": 22532787175613, "namespace": "new_metafield", "key": "new_metafield", "value": "updated_mon_24.04.2023", "description": null, "owner_id": 929019691197, "created_at": "2023-04-24T07:18:06-07:00", "updated_at": "2023-04-24T07:18:06-07:00", "owner_resource": "draft_order", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22532787175613", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515758972} +{"stream": "metafield_locations", "data": {"id": 21524407255229, "namespace": "inventory", "key": "warehouse_2", "value": "234", "description": null, "owner_id": 63590301885, "created_at": "2022-10-12T02:21:27-07:00", "updated_at": "2022-10-12T02:21:27-07:00", "owner_resource": "location", "type": "number_integer", "admin_graphql_api_id": "gid://shopify/Metafield/21524407255229", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515762054} +{"stream": "metafield_locations", "data": {"id": 21524407681213, "namespace": "inventory", "key": "warehouse_233", "value": "564", "description": null, "owner_id": 63590301885, "created_at": "2022-10-12T02:21:35-07:00", "updated_at": "2022-10-12T02:21:35-07:00", "owner_resource": "location", "type": "number_integer", "admin_graphql_api_id": "gid://shopify/Metafield/21524407681213", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515762055} +{"stream": "metafield_orders", "data": {"id": 22347287855293, "namespace": "my_fields", "key": "purchase_order", "value": "trtrtr", "description": null, "owner_id": 4147980107965, "created_at": "2023-04-13T05:09:08-07:00", "updated_at": "2023-04-13T05:09:08-07:00", "owner_resource": "order", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22347287855293", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515764913} +{"stream": "metafield_orders", "data": {"id": 22365749805245, "namespace": "my_fields", "key": "purchase_order", "value": "Test Draft Order Metafield", "description": null, "owner_id": 3935377129661, "created_at": "2023-04-14T03:52:40-07:00", "updated_at": "2023-04-14T03:52:40-07:00", "owner_resource": "order", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22365749805245", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515765507} +{"stream": "metafield_pages", "data": {"id": 22534014828733, "namespace": "new_metafield", "key": "new_metafield", "value": "updated_mon_24.04.2023", "description": null, "owner_id": 83074252989, "created_at": "2023-04-24T11:08:41-07:00", "updated_at": "2023-04-24T11:08:41-07:00", "owner_resource": "page", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22534014828733", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515769416} +{"stream": "metafield_product_images", "data": {"id": 22533588451517, "namespace": "new_metafield", "key": "new_metafield", "value": "updated_mon_24.04.2023", "description": null, "owner_id": 29301297316029, "created_at": "2023-04-24T10:32:19-07:00", "updated_at": "2023-04-24T10:32:19-07:00", "owner_resource": "product_image", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22533588451517", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515772770} +{"stream": "metafield_products", "data": {"id": 22365706944701, "namespace": "custom", "key": "test_product_metafield", "value": "gid://shopify/Product/6796220989629", "description": null, "owner_id": 6796220989629, "created_at": "2023-04-14T03:15:07-07:00", "updated_at": "2023-04-14T03:15:07-07:00", "owner_resource": "product", "type": "product_reference", "admin_graphql_api_id": "gid://shopify/Metafield/22365706944701", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515774333} +{"stream": "metafield_products", "data": {"id": 22365762486461, "namespace": "custom", "key": "product_metafield_test_2", "value": "Test", "description": null, "owner_id": 6796220989629, "created_at": "2023-04-14T03:59:44-07:00", "updated_at": "2023-04-14T03:59:44-07:00", "owner_resource": "product", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22365762486461", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515774335} +{"stream": "metafield_product_variants", "data": {"id": 22365715955901, "namespace": "custom", "key": "test_variant_metafield", "value": "Test Varia", "description": null, "owner_id": 41561961824445, "created_at": "2023-04-14T03:24:03-07:00", "updated_at": "2023-04-14T03:24:03-07:00", "owner_resource": "variant", "type": "multi_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22365715955901", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515779393} +{"stream": "metafield_shops", "data": {"id": 22534020104381, "namespace": "new_metafield", "key": "new_metafield", "value": "updated_mon_24.04.2023", "description": null, "owner_id": 58033176765, "created_at": "2023-04-24T11:12:38-07:00", "updated_at": "2023-04-24T11:12:38-07:00", "owner_resource": "shop", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22534020104381", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515780429} +{"stream": "metafield_smart_collections", "data": {"id": 21525604106429, "namespace": "my_fields", "key": "discount", "value": "50%", "description": null, "owner_id": 273278566589, "created_at": "2022-10-12T13:36:55-07:00", "updated_at": "2022-10-12T13:36:55-07:00", "owner_resource": "collection", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/21525604106429", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515782611} +{"stream": "metafield_smart_collections", "data": {"id": 22366265573565, "namespace": "my_fields", "key": "new_key", "value": "51%", "description": null, "owner_id": 273278566589, "created_at": "2023-04-14T05:21:58-07:00", "updated_at": "2023-04-14T05:21:58-07:00", "owner_resource": "collection", "type": "single_line_text_field", "admin_graphql_api_id": "gid://shopify/Metafield/22366265573565", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515782612} +{"stream": "order_refunds", "data": {"id": 829538369725, "order_id": 3935377129661, "created_at": "2021-09-21T05:31:59-07:00", "note": "test refund", "user_id": 74861019325, "processed_at": "2021-09-21T05:31:59-07:00", "restock": true, "duties": "[]", "total_duties_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "return": null, "admin_graphql_api_id": "gid://shopify/Refund/829538369725", "refund_line_items": [{"id": 332807864509, "quantity": 1, "line_item_id": 10130216452285, "location_id": 63590301885, "restock_type": "cancel", "subtotal": 102.0, "total_tax": 17.0, "subtotal_set": {"shop_money": {"amount": 102.0, "currency_code": "USD"}, "presentment_money": {"amount": 102.0, "currency_code": "USD"}}, "total_tax_set": {"shop_money": {"amount": 17.0, "currency_code": "USD"}, "presentment_money": {"amount": 17.0, "currency_code": "USD"}}, "line_item": {"id": 10130216452285, "variant_id": 40090604011709, "title": "8 Ounce Soy Candle", "quantity": 1, "sku": "", "variant_title": "Wooden", "vendor": "Bosco Inc", "fulfillment_service": "manual", "product_id": 6796229509309, "requires_shipping": true, "taxable": true, "gift_card": false, "name": "8 Ounce Soy Candle - Wooden", "variant_inventory_management": "shopify", "properties": [], "product_exists": true, "fulfillable_quantity": 0, "grams": 63, "price": 102.0, "total_discount": 0.0, "fulfillment_status": null, "price_set": {"shop_money": {"amount": 102.0, "currency_code": "USD"}, "presentment_money": {"amount": 102.0, "currency_code": "USD"}}, "total_discount_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "discount_allocations": [], "duties": [], "admin_graphql_api_id": "gid://shopify/LineItem/10130216452285", "tax_lines": [{"title": "PDV", "price": 17.0, "rate": 0.2, "channel_liable": false, "price_set": {"shop_money": {"amount": 17.0, "currency_code": "USD"}, "presentment_money": {"amount": 17.0, "currency_code": "USD"}}}]}}], "transactions": [{"id": 5189894406333, "order_id": 3935377129661, "kind": "refund", "gateway": "bogus", "status": "success", "message": "Bogus Gateway: Forced success", "created_at": "2021-09-21T05:31:58-07:00", "test": true, "authorization": null, "location_id": null, "user_id": 74861019325, "parent_id": 4933790040253, "processed_at": "2021-09-21T05:31:58-07:00", "device_id": null, "error_code": null, "source_name": "1830279", "payment_details": {"credit_card_bin": "1", "avs_result_code": null, "cvv_result_code": null, "credit_card_number": "\u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 1", "credit_card_company": "Bogus", "buyer_action_info": null, "credit_card_name": "Bogus Gateway", "credit_card_wallet": null, "credit_card_expiration_month": 11, "credit_card_expiration_year": 2023}, "receipt": {"paid_amount": "102.00"}, "amount": "102.00", "currency": "USD", "payment_id": "c21670281707709.2", "total_unsettled_set": {"presentment_money": {"amount": "0.0", "currency": "USD"}, "shop_money": {"amount": "0.0", "currency": "USD"}}, "admin_graphql_api_id": "gid://shopify/OrderTransaction/5189894406333"}], "order_adjustments": [], "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515786314} +{"stream": "order_refunds", "data": {"id": 845032358077, "order_id": 4147980107965, "created_at": "2022-03-07T02:09:04-08:00", "note": null, "user_id": 74861019325, "processed_at": "2022-03-07T02:09:04-08:00", "restock": true, "duties": "[]", "total_duties_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "return": {"id": 822313149, "admin_graphql_api_id": "gid://shopify/Return/822313149"}, "admin_graphql_api_id": "gid://shopify/Refund/845032358077", "refund_line_items": [{"id": 352716947645, "quantity": 1, "line_item_id": 10576771317949, "location_id": 63590301885, "restock_type": "return", "subtotal": 27.0, "total_tax": 0.0, "subtotal_set": {"shop_money": {"amount": 27.0, "currency_code": "USD"}, "presentment_money": {"amount": 27.0, "currency_code": "USD"}}, "total_tax_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "line_item": {"id": 10576771317949, "variant_id": 40090580615357, "title": "Red & Silver Fishing Lure", "quantity": 1, "sku": "", "variant_title": "Plastic", "vendor": "Harris - Hamill", "fulfillment_service": "manual", "product_id": 6796218302653, "requires_shipping": true, "taxable": true, "gift_card": false, "name": "Red & Silver Fishing Lure - Plastic", "variant_inventory_management": "shopify", "properties": [], "product_exists": true, "fulfillable_quantity": 0, "grams": 285, "price": 27.0, "total_discount": 0.0, "fulfillment_status": "fulfilled", "price_set": {"shop_money": {"amount": 27.0, "currency_code": "USD"}, "presentment_money": {"amount": 27.0, "currency_code": "USD"}}, "total_discount_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "discount_allocations": [], "duties": [], "admin_graphql_api_id": "gid://shopify/LineItem/10576771317949", "tax_lines": []}}], "transactions": [], "order_adjustments": [], "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515786925} +{"stream": "order_refunds", "data": {"id": 852809646269, "order_id": 4554821468349, "created_at": "2022-06-15T06:25:43-07:00", "note": null, "user_id": 74861019325, "processed_at": "2022-06-15T06:25:43-07:00", "restock": true, "duties": "[]", "total_duties_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "return": {"id": 947388605, "admin_graphql_api_id": "gid://shopify/Return/947388605"}, "admin_graphql_api_id": "gid://shopify/Refund/852809646269", "refund_line_items": [{"id": 363131404477, "quantity": 1, "line_item_id": 11406125564093, "location_id": 63590301885, "restock_type": "return", "subtotal": 57.23, "total_tax": 0.0, "subtotal_set": {"shop_money": {"amount": 57.23, "currency_code": "USD"}, "presentment_money": {"amount": 57.23, "currency_code": "USD"}}, "total_tax_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "line_item": {"id": 11406125564093, "variant_id": 40090597884093, "title": "All Black Sneaker Right Foot", "quantity": 1, "sku": "", "variant_title": "ivory", "vendor": "Becker - Moore", "fulfillment_service": "manual", "product_id": 6796226560189, "requires_shipping": false, "taxable": true, "gift_card": false, "name": "All Black Sneaker Right Foot - ivory", "variant_inventory_management": "shopify", "properties": [], "product_exists": true, "fulfillable_quantity": 0, "grams": 0, "price": 59.0, "total_discount": 0.0, "fulfillment_status": "fulfilled", "price_set": {"shop_money": {"amount": 59.0, "currency_code": "USD"}, "presentment_money": {"amount": 59.0, "currency_code": "USD"}}, "total_discount_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "discount_allocations": [{"amount": 1.77, "discount_application_index": 0, "amount_set": {"shop_money": {"amount": 1.77, "currency_code": "USD"}, "presentment_money": {"amount": 1.77, "currency_code": "USD"}}}], "duties": [], "admin_graphql_api_id": "gid://shopify/LineItem/11406125564093", "tax_lines": []}}], "transactions": [{"id": 5721170968765, "order_id": 4554821468349, "kind": "refund", "gateway": "bogus", "status": "success", "message": "Bogus Gateway: Forced success", "created_at": "2022-06-15T06:25:42-07:00", "test": true, "authorization": null, "location_id": null, "user_id": null, "parent_id": 5721110872253, "processed_at": "2022-06-15T06:25:42-07:00", "device_id": null, "error_code": null, "source_name": "1830279", "payment_details": {"credit_card_bin": "1", "avs_result_code": null, "cvv_result_code": null, "credit_card_number": "\u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 1", "credit_card_company": "Bogus", "buyer_action_info": null, "credit_card_name": "Bogus Gateway", "credit_card_wallet": null, "credit_card_expiration_month": 2, "credit_card_expiration_year": 2025}, "receipt": {"paid_amount": "57.23"}, "amount": "57.23", "currency": "USD", "payment_id": "c25048437719229.2", "total_unsettled_set": {"presentment_money": {"amount": "0.0", "currency": "USD"}, "shop_money": {"amount": "0.0", "currency": "USD"}}, "admin_graphql_api_id": "gid://shopify/OrderTransaction/5721170968765"}], "order_adjustments": [], "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515787500} +{"stream": "order_risks", "data": {"id": 6446736474301, "order_id": 4147980107965, "checkout_id": null, "source": "External", "score": 1.0, "recommendation": "cancel", "display": true, "cause_cancel": true, "message": "This order came from an anonymous proxy", "merchant_message": "This order came from an anonymous proxy", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515790478} +{"stream": "orders", "data": {"id": 4554821468349, "admin_graphql_api_id": "gid://shopify/Order/4554821468349", "app_id": 580111, "browser_ip": "176.113.167.23", "buyer_accepts_marketing": false, "cancel_reason": null, "cancelled_at": null, "cart_token": null, "checkout_id": 25048437719229, "checkout_token": "cf5d16a0a0688905bd551c6dec591506", "client_details": {"accept_language": "en-US,en;q=0.9,uk;q=0.8", "browser_height": 754, "browser_ip": "176.113.167.23", "browser_width": 1519, "session_hash": null, "user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.64 Safari/537.36 Edg/101.0.1210.53"}, "closed_at": "2022-06-15T06:25:43-07:00", "company": null, "confirmation_number": null, "confirmed": true, "contact_email": "integration-test@airbyte.io", "created_at": "2022-06-15T05:16:53-07:00", "currency": "USD", "current_subtotal_price": 0.0, "current_subtotal_price_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "current_total_additional_fees_set": null, "current_total_discounts": 0.0, "current_total_discounts_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "current_total_duties_set": null, "current_total_price": 0.0, "current_total_price_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "current_total_tax": 0.0, "current_total_tax_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "customer_locale": "en", "device_id": null, "discount_codes": [], "email": "integration-test@airbyte.io", "estimated_taxes": false, "financial_status": "refunded", "fulfillment_status": "fulfilled", "landing_site": "/wallets/checkouts.json", "landing_site_ref": null, "location_id": null, "merchant_of_record_app_id": null, "name": "#1136", "note": "updated_mon_24.04.2023", "note_attributes": [], "number": 136, "order_number": 1136, "order_status_url": "https://airbyte-integration-test.myshopify.com/58033176765/orders/e4f98630ea44a884e33e700203ce2130/authenticate?key=edf087d6ae55a4541bf1375432f6a4b8", "original_total_additional_fees_set": null, "original_total_duties_set": null, "payment_gateway_names": ["bogus"], "phone": null, "po_number": null, "presentment_currency": "USD", "processed_at": "2022-06-15T05:16:53-07:00", "reference": null, "referring_site": "https://airbyte-integration-test.myshopify.com/products/all-black-sneaker-right-foot", "source_identifier": null, "source_name": "web", "source_url": null, "subtotal_price": 57.23, "subtotal_price_set": {"shop_money": {"amount": 57.23, "currency_code": "USD"}, "presentment_money": {"amount": 57.23, "currency_code": "USD"}}, "tags": "Refund", "tax_exempt": false, "tax_lines": [], "taxes_included": true, "test": true, "token": "e4f98630ea44a884e33e700203ce2130", "total_discounts": 1.77, "total_discounts_set": {"shop_money": {"amount": 1.77, "currency_code": "USD"}, "presentment_money": {"amount": 1.77, "currency_code": "USD"}}, "total_line_items_price": 59.0, "total_line_items_price_set": {"shop_money": {"amount": 59.0, "currency_code": "USD"}, "presentment_money": {"amount": 59.0, "currency_code": "USD"}}, "total_outstanding": 0.0, "total_price": 57.23, "total_price_set": {"shop_money": {"amount": 57.23, "currency_code": "USD"}, "presentment_money": {"amount": 57.23, "currency_code": "USD"}}, "total_shipping_price_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "total_tax": 0.0, "total_tax_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "total_tip_received": 0.0, "total_weight": 0, "updated_at": "2023-04-24T07:00:37-07:00", "user_id": null, "billing_address": {"first_name": "Iryna", "address1": "2261 Market Street", "phone": null, "city": "San Francisco", "zip": "94114", "province": "California", "country": "United States", "last_name": "Grankova", "address2": "4381", "company": null, "latitude": 37.7647751, "longitude": -122.4320369, "name": "Iryna Grankova", "country_code": "US", "province_code": "CA"}, "customer": {"id": 5362027233469, "email": "integration-test@airbyte.io", "accepts_marketing": false, "created_at": "2021-07-08T05:41:47-07:00", "updated_at": "2022-06-22T03:50:13-07:00", "first_name": "Airbyte", "last_name": "Team", "state": "disabled", "note": null, "verified_email": true, "multipass_identifier": null, "tax_exempt": false, "phone": null, "email_marketing_consent": {"state": "not_subscribed", "opt_in_level": "single_opt_in", "consent_updated_at": null}, "sms_marketing_consent": null, "tags": "", "currency": "USD", "accepts_marketing_updated_at": "2021-07-08T05:41:47-07:00", "marketing_opt_in_level": null, "tax_exemptions": [], "admin_graphql_api_id": "gid://shopify/Customer/5362027233469", "default_address": {"id": 7492260823229, "customer_id": 5362027233469, "first_name": "Airbyte", "last_name": "Team", "company": null, "address1": "2261 Market Street", "address2": "4381", "city": "San Francisco", "province": "California", "country": "United States", "zip": "94114", "phone": null, "name": "Airbyte Team", "province_code": "CA", "country_code": "US", "country_name": "United States", "default": true}}, "discount_applications": [{"target_type": "line_item", "type": "automatic", "value": "3.0", "value_type": "percentage", "allocation_method": "across", "target_selection": "all", "title": "eeeee"}], "fulfillments": [{"id": 4075788501181, "admin_graphql_api_id": "gid://shopify/Fulfillment/4075788501181", "created_at": "2022-06-15T05:16:55-07:00", "location_id": 63590301885, "name": "#1136.1", "order_id": 4554821468349, "origin_address": {}, "receipt": {}, "service": "manual", "shipment_status": null, "status": "success", "tracking_company": null, "tracking_number": null, "tracking_numbers": [], "tracking_url": null, "tracking_urls": [], "updated_at": "2022-06-15T05:16:55-07:00", "line_items": [{"id": 11406125564093, "admin_graphql_api_id": "gid://shopify/LineItem/11406125564093", "fulfillable_quantity": 0, "fulfillment_service": "manual", "fulfillment_status": "fulfilled", "gift_card": false, "grams": 0, "name": "All Black Sneaker Right Foot - ivory", "price": 59.0, "price_set": {"shop_money": {"amount": 59.0, "currency_code": "USD"}, "presentment_money": {"amount": 59.0, "currency_code": "USD"}}, "product_exists": true, "product_id": 6796226560189, "properties": [], "quantity": 1, "requires_shipping": false, "sku": "", "taxable": true, "title": "All Black Sneaker Right Foot", "total_discount": 0.0, "total_discount_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "variant_id": 40090597884093, "variant_inventory_management": "shopify", "variant_title": "ivory", "vendor": "Becker - Moore", "tax_lines": [], "duties": [], "discount_allocations": [{"amount": "1.77", "amount_set": {"shop_money": {"amount": "1.77", "currency_code": "USD"}, "presentment_money": {"amount": "1.77", "currency_code": "USD"}}, "discount_application_index": 0}]}]}], "line_items": [{"id": 11406125564093, "admin_graphql_api_id": "gid://shopify/LineItem/11406125564093", "fulfillable_quantity": 0, "fulfillment_service": "manual", "fulfillment_status": "fulfilled", "gift_card": false, "grams": 0, "name": "All Black Sneaker Right Foot - ivory", "price": 59.0, "price_set": {"shop_money": {"amount": 59.0, "currency_code": "USD"}, "presentment_money": {"amount": 59.0, "currency_code": "USD"}}, "product_exists": true, "product_id": 6796226560189, "properties": [], "quantity": 1, "requires_shipping": false, "sku": "", "taxable": true, "title": "All Black Sneaker Right Foot", "total_discount": 0.0, "total_discount_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "variant_id": 40090597884093, "variant_inventory_management": "shopify", "variant_title": "ivory", "vendor": "Becker - Moore", "tax_lines": [], "duties": [], "discount_allocations": [{"amount": "1.77", "amount_set": {"shop_money": {"amount": "1.77", "currency_code": "USD"}, "presentment_money": {"amount": "1.77", "currency_code": "USD"}}, "discount_application_index": 0}]}], "payment_terms": null, "refunds": [{"id": 852809646269, "admin_graphql_api_id": "gid://shopify/Refund/852809646269", "created_at": "2022-06-15T06:25:43-07:00", "note": null, "order_id": 4554821468349, "processed_at": "2022-06-15T06:25:43-07:00", "restock": true, "total_duties_set": {"shop_money": {"amount": "0.00", "currency_code": "USD"}, "presentment_money": {"amount": "0.00", "currency_code": "USD"}}, "user_id": 74861019325, "order_adjustments": [], "transactions": [{"id": 5721170968765, "admin_graphql_api_id": "gid://shopify/OrderTransaction/5721170968765", "amount": "57.23", "authorization": null, "created_at": "2022-06-15T06:25:42-07:00", "currency": "USD", "device_id": null, "error_code": null, "gateway": "bogus", "kind": "refund", "location_id": null, "message": "Bogus Gateway: Forced success", "order_id": 4554821468349, "parent_id": 5721110872253, "payment_id": "c25048437719229.2", "processed_at": "2022-06-15T06:25:42-07:00", "receipt": {"paid_amount": "57.23"}, "source_name": "1830279", "status": "success", "test": true, "user_id": null, "payment_details": {"credit_card_bin": "1", "avs_result_code": null, "cvv_result_code": null, "credit_card_number": "\u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 1", "credit_card_company": "Bogus", "buyer_action_info": null, "credit_card_name": "Bogus Gateway", "credit_card_wallet": null, "credit_card_expiration_month": 2, "credit_card_expiration_year": 2025}}], "refund_line_items": [{"id": 363131404477, "line_item_id": 11406125564093, "location_id": 63590301885, "quantity": 1, "restock_type": "return", "subtotal": 57.23, "subtotal_set": {"shop_money": {"amount": "57.23", "currency_code": "USD"}, "presentment_money": {"amount": "57.23", "currency_code": "USD"}}, "total_tax": 0.0, "total_tax_set": {"shop_money": {"amount": "0.00", "currency_code": "USD"}, "presentment_money": {"amount": "0.00", "currency_code": "USD"}}, "line_item": {"id": 11406125564093, "admin_graphql_api_id": "gid://shopify/LineItem/11406125564093", "fulfillable_quantity": 0, "fulfillment_service": "manual", "fulfillment_status": "fulfilled", "gift_card": false, "grams": 0, "name": "All Black Sneaker Right Foot - ivory", "price": "59.00", "price_set": {"shop_money": {"amount": "59.00", "currency_code": "USD"}, "presentment_money": {"amount": "59.00", "currency_code": "USD"}}, "product_exists": true, "product_id": 6796226560189, "properties": [], "quantity": 1, "requires_shipping": false, "sku": "", "taxable": true, "title": "All Black Sneaker Right Foot", "total_discount": "0.00", "total_discount_set": {"shop_money": {"amount": "0.00", "currency_code": "USD"}, "presentment_money": {"amount": "0.00", "currency_code": "USD"}}, "variant_id": 40090597884093, "variant_inventory_management": "shopify", "variant_title": "ivory", "vendor": "Becker - Moore", "tax_lines": [], "duties": [], "discount_allocations": [{"amount": "1.77", "amount_set": {"shop_money": {"amount": "1.77", "currency_code": "USD"}, "presentment_money": {"amount": "1.77", "currency_code": "USD"}}, "discount_application_index": 0}]}}], "duties": []}], "shipping_address": null, "shipping_lines": [], "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515793162} +{"stream": "orders", "data": {"id": 4147980107965, "admin_graphql_api_id": "gid://shopify/Order/4147980107965", "app_id": 5505221, "browser_ip": null, "buyer_accepts_marketing": false, "cancel_reason": null, "cancelled_at": null, "cart_token": null, "checkout_id": null, "checkout_token": null, "client_details": null, "closed_at": null, "company": null, "confirmation_number": null, "confirmed": true, "contact_email": "airbyte@airbyte.com", "created_at": "2021-09-19T09:08:23-07:00", "currency": "USD", "current_subtotal_price": 0.0, "current_subtotal_price_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "current_total_additional_fees_set": null, "current_total_discounts": 0.0, "current_total_discounts_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "current_total_duties_set": null, "current_total_price": 0.0, "current_total_price_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "current_total_tax": 0.0, "current_total_tax_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "customer_locale": null, "device_id": null, "discount_codes": [], "email": "airbyte@airbyte.com", "estimated_taxes": false, "financial_status": "paid", "fulfillment_status": "fulfilled", "landing_site": null, "landing_site_ref": null, "location_id": null, "merchant_of_record_app_id": null, "name": "#1121", "note": "updated_mon_24.04.2023", "note_attributes": [], "number": 121, "order_number": 1121, "order_status_url": "https://airbyte-integration-test.myshopify.com/58033176765/orders/6adf11e07ccb49b280ea4b9f53d64f12/authenticate?key=4cef2ff10ba4d18f31114df33933f81e", "original_total_additional_fees_set": null, "original_total_duties_set": null, "payment_gateway_names": [], "phone": null, "po_number": null, "presentment_currency": "USD", "processed_at": "2021-09-19T09:08:23-07:00", "reference": null, "referring_site": null, "source_identifier": null, "source_name": "5505221", "source_url": null, "subtotal_price": 27.0, "subtotal_price_set": {"shop_money": {"amount": 27.0, "currency_code": "USD"}, "presentment_money": {"amount": 27.0, "currency_code": "USD"}}, "tags": "", "tax_exempt": false, "tax_lines": [], "taxes_included": false, "test": false, "token": "6adf11e07ccb49b280ea4b9f53d64f12", "total_discounts": 0.0, "total_discounts_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "total_line_items_price": 27.0, "total_line_items_price_set": {"shop_money": {"amount": 27.0, "currency_code": "USD"}, "presentment_money": {"amount": 27.0, "currency_code": "USD"}}, "total_outstanding": 0.0, "total_price": 27.0, "total_price_set": {"shop_money": {"amount": 27.0, "currency_code": "USD"}, "presentment_money": {"amount": 27.0, "currency_code": "USD"}}, "total_shipping_price_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "total_tax": 0.0, "total_tax_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "total_tip_received": 0.0, "total_weight": 0, "updated_at": "2023-04-24T07:03:06-07:00", "user_id": null, "billing_address": null, "customer": {"id": 5565161144509, "email": "airbyte@airbyte.com", "accepts_marketing": false, "created_at": "2021-09-19T08:31:05-07:00", "updated_at": "2021-09-19T09:08:24-07:00", "first_name": null, "last_name": null, "state": "disabled", "note": null, "verified_email": true, "multipass_identifier": null, "tax_exempt": false, "phone": null, "email_marketing_consent": {"state": "not_subscribed", "opt_in_level": "single_opt_in", "consent_updated_at": null}, "sms_marketing_consent": null, "tags": "", "currency": "USD", "accepts_marketing_updated_at": "2021-09-19T08:31:05-07:00", "marketing_opt_in_level": null, "tax_exemptions": [], "admin_graphql_api_id": "gid://shopify/Customer/5565161144509"}, "discount_applications": [], "fulfillments": [{"id": 3693416710333, "admin_graphql_api_id": "gid://shopify/Fulfillment/3693416710333", "created_at": "2021-09-19T09:08:23-07:00", "location_id": 63590301885, "name": "#1121.1", "order_id": 4147980107965, "origin_address": {}, "receipt": {}, "service": "manual", "shipment_status": null, "status": "success", "tracking_company": "Amazon Logistics US", "tracking_number": "123456", "tracking_numbers": ["123456"], "tracking_url": "https://track.amazon.com/tracking/123456", "tracking_urls": ["https://track.amazon.com/tracking/123456"], "updated_at": "2022-02-22T00:35:47-08:00", "line_items": [{"id": 10576771317949, "admin_graphql_api_id": "gid://shopify/LineItem/10576771317949", "fulfillable_quantity": 0, "fulfillment_service": "manual", "fulfillment_status": "fulfilled", "gift_card": false, "grams": 285, "name": "Red & Silver Fishing Lure - Plastic", "price": 27.0, "price_set": {"shop_money": {"amount": 27.0, "currency_code": "USD"}, "presentment_money": {"amount": 27.0, "currency_code": "USD"}}, "product_exists": true, "product_id": 6796218302653, "properties": [], "quantity": 1, "requires_shipping": true, "sku": "", "taxable": true, "title": "Red & Silver Fishing Lure", "total_discount": 0.0, "total_discount_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "variant_id": 40090580615357, "variant_inventory_management": "shopify", "variant_title": "Plastic", "vendor": "Harris - Hamill", "tax_lines": [], "duties": [], "discount_allocations": []}]}], "line_items": [{"id": 10576771317949, "admin_graphql_api_id": "gid://shopify/LineItem/10576771317949", "fulfillable_quantity": 0, "fulfillment_service": "manual", "fulfillment_status": "fulfilled", "gift_card": false, "grams": 285, "name": "Red & Silver Fishing Lure - Plastic", "price": 27.0, "price_set": {"shop_money": {"amount": 27.0, "currency_code": "USD"}, "presentment_money": {"amount": 27.0, "currency_code": "USD"}}, "product_exists": true, "product_id": 6796218302653, "properties": [], "quantity": 1, "requires_shipping": true, "sku": "", "taxable": true, "title": "Red & Silver Fishing Lure", "total_discount": 0.0, "total_discount_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "variant_id": 40090580615357, "variant_inventory_management": "shopify", "variant_title": "Plastic", "vendor": "Harris - Hamill", "tax_lines": [], "duties": [], "discount_allocations": []}], "payment_terms": null, "refunds": [{"id": 845032358077, "admin_graphql_api_id": "gid://shopify/Refund/845032358077", "created_at": "2022-03-07T02:09:04-08:00", "note": null, "order_id": 4147980107965, "processed_at": "2022-03-07T02:09:04-08:00", "restock": true, "total_duties_set": {"shop_money": {"amount": "0.00", "currency_code": "USD"}, "presentment_money": {"amount": "0.00", "currency_code": "USD"}}, "user_id": 74861019325, "order_adjustments": [], "transactions": [], "refund_line_items": [{"id": 352716947645, "line_item_id": 10576771317949, "location_id": 63590301885, "quantity": 1, "restock_type": "return", "subtotal": 27.0, "subtotal_set": {"shop_money": {"amount": "27.00", "currency_code": "USD"}, "presentment_money": {"amount": "27.00", "currency_code": "USD"}}, "total_tax": 0.0, "total_tax_set": {"shop_money": {"amount": "0.00", "currency_code": "USD"}, "presentment_money": {"amount": "0.00", "currency_code": "USD"}}, "line_item": {"id": 10576771317949, "admin_graphql_api_id": "gid://shopify/LineItem/10576771317949", "fulfillable_quantity": 0, "fulfillment_service": "manual", "fulfillment_status": "fulfilled", "gift_card": false, "grams": 285, "name": "Red & Silver Fishing Lure - Plastic", "price": "27.00", "price_set": {"shop_money": {"amount": "27.00", "currency_code": "USD"}, "presentment_money": {"amount": "27.00", "currency_code": "USD"}}, "product_exists": true, "product_id": 6796218302653, "properties": [], "quantity": 1, "requires_shipping": true, "sku": "", "taxable": true, "title": "Red & Silver Fishing Lure", "total_discount": "0.00", "total_discount_set": {"shop_money": {"amount": "0.00", "currency_code": "USD"}, "presentment_money": {"amount": "0.00", "currency_code": "USD"}}, "variant_id": 40090580615357, "variant_inventory_management": "shopify", "variant_title": "Plastic", "vendor": "Harris - Hamill", "tax_lines": [], "duties": [], "discount_allocations": []}}], "duties": []}], "shipping_address": {"first_name": "John", "address1": "San Francisco", "phone": "", "city": "San Francisco", "zip": "91326", "province": "California", "country": "United States", "last_name": "Doe", "address2": "10", "company": "Umbrella LLC", "latitude": 34.2894584, "longitude": -118.5622893, "name": "John Doe", "country_code": "US", "province_code": "CA"}, "shipping_lines": [], "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515793166} +{"stream": "orders", "data": {"id": 3935377129661, "admin_graphql_api_id": "gid://shopify/Order/3935377129661", "app_id": 1354745, "browser_ip": "76.14.176.236", "buyer_accepts_marketing": false, "cancel_reason": null, "cancelled_at": null, "cart_token": null, "checkout_id": 21670281707709, "checkout_token": "ea03756d615a5f9e752f3c085e8cf9bd", "client_details": {"accept_language": "en-US,en;q=0.9", "browser_height": null, "browser_ip": "76.14.176.236", "browser_width": null, "session_hash": null, "user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36"}, "closed_at": null, "company": null, "confirmation_number": null, "confirmed": true, "contact_email": null, "created_at": "2021-07-02T00:51:50-07:00", "currency": "USD", "current_subtotal_price": 0.0, "current_subtotal_price_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "current_total_additional_fees_set": null, "current_total_discounts": 0.0, "current_total_discounts_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "current_total_duties_set": null, "current_total_price": 0.0, "current_total_price_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "current_total_tax": 0.0, "current_total_tax_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "customer_locale": null, "device_id": null, "discount_codes": [], "email": "", "estimated_taxes": false, "financial_status": "refunded", "fulfillment_status": null, "landing_site": null, "landing_site_ref": null, "location_id": 63590301885, "merchant_of_record_app_id": null, "name": "#1001", "note": null, "note_attributes": [], "number": 1, "order_number": 1001, "order_status_url": "https://airbyte-integration-test.myshopify.com/58033176765/orders/16dd6c6e17f562f1f5eee0fefa00b4cb/authenticate?key=931eb302588779d0ab93839d42bf7166", "original_total_additional_fees_set": null, "original_total_duties_set": null, "payment_gateway_names": ["bogus"], "phone": null, "po_number": null, "presentment_currency": "USD", "processed_at": "2021-07-02T00:51:49-07:00", "reference": null, "referring_site": null, "source_identifier": null, "source_name": "shopify_draft_order", "source_url": null, "subtotal_price": 102.0, "subtotal_price_set": {"shop_money": {"amount": 102.0, "currency_code": "USD"}, "presentment_money": {"amount": 102.0, "currency_code": "USD"}}, "tags": "teest", "tax_exempt": false, "tax_lines": [{"price": 17.0, "rate": 0.2, "title": "PDV", "price_set": {"shop_money": {"amount": 17.0, "currency_code": "USD"}, "presentment_money": {"amount": 17.0, "currency_code": "USD"}}, "channel_liable": false}], "taxes_included": true, "test": true, "token": "16dd6c6e17f562f1f5eee0fefa00b4cb", "total_discounts": 0.0, "total_discounts_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "total_line_items_price": 102.0, "total_line_items_price_set": {"shop_money": {"amount": 102.0, "currency_code": "USD"}, "presentment_money": {"amount": 102.0, "currency_code": "USD"}}, "total_outstanding": 0.0, "total_price": 102.0, "total_price_set": {"shop_money": {"amount": 102.0, "currency_code": "USD"}, "presentment_money": {"amount": 102.0, "currency_code": "USD"}}, "total_shipping_price_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "total_tax": 17.0, "total_tax_set": {"shop_money": {"amount": 17.0, "currency_code": "USD"}, "presentment_money": {"amount": 17.0, "currency_code": "USD"}}, "total_tip_received": 0.0, "total_weight": 63, "updated_at": "2023-04-24T10:59:00-07:00", "user_id": 74861019325, "billing_address": null, "customer": {"id": 5349364105405, "email": null, "accepts_marketing": false, "created_at": "2021-07-02T00:51:46-07:00", "updated_at": "2021-07-02T00:51:46-07:00", "first_name": "Bogus", "last_name": "Gateway", "state": "disabled", "note": null, "verified_email": true, "multipass_identifier": null, "tax_exempt": false, "phone": null, "email_marketing_consent": null, "sms_marketing_consent": null, "tags": "", "currency": "USD", "accepts_marketing_updated_at": "2021-07-02T00:51:46-07:00", "marketing_opt_in_level": null, "tax_exemptions": [], "admin_graphql_api_id": "gid://shopify/Customer/5349364105405"}, "discount_applications": [], "fulfillments": [], "line_items": [{"id": 10130216452285, "admin_graphql_api_id": "gid://shopify/LineItem/10130216452285", "fulfillable_quantity": 0, "fulfillment_service": "manual", "fulfillment_status": null, "gift_card": false, "grams": 63, "name": "8 Ounce Soy Candle - Wooden", "price": 102.0, "price_set": {"shop_money": {"amount": 102.0, "currency_code": "USD"}, "presentment_money": {"amount": 102.0, "currency_code": "USD"}}, "product_exists": true, "product_id": 6796229509309, "properties": [], "quantity": 1, "requires_shipping": true, "sku": "", "taxable": true, "title": "8 Ounce Soy Candle", "total_discount": 0.0, "total_discount_set": {"shop_money": {"amount": 0.0, "currency_code": "USD"}, "presentment_money": {"amount": 0.0, "currency_code": "USD"}}, "variant_id": 40090604011709, "variant_inventory_management": "shopify", "variant_title": "Wooden", "vendor": "Bosco Inc", "tax_lines": [{"channel_liable": false, "price": 17.0, "price_set": {"shop_money": {"amount": 17.0, "currency_code": "USD"}, "presentment_money": {"amount": 17.0, "currency_code": "USD"}}, "rate": 0.2, "title": "PDV"}], "duties": [], "discount_allocations": []}], "payment_terms": null, "refunds": [{"id": 829538369725, "admin_graphql_api_id": "gid://shopify/Refund/829538369725", "created_at": "2021-09-21T05:31:59-07:00", "note": "test refund", "order_id": 3935377129661, "processed_at": "2021-09-21T05:31:59-07:00", "restock": true, "total_duties_set": {"shop_money": {"amount": "0.00", "currency_code": "USD"}, "presentment_money": {"amount": "0.00", "currency_code": "USD"}}, "user_id": 74861019325, "order_adjustments": [], "transactions": [{"id": 5189894406333, "admin_graphql_api_id": "gid://shopify/OrderTransaction/5189894406333", "amount": "102.00", "authorization": null, "created_at": "2021-09-21T05:31:58-07:00", "currency": "USD", "device_id": null, "error_code": null, "gateway": "bogus", "kind": "refund", "location_id": null, "message": "Bogus Gateway: Forced success", "order_id": 3935377129661, "parent_id": 4933790040253, "payment_id": "c21670281707709.2", "processed_at": "2021-09-21T05:31:58-07:00", "receipt": {"paid_amount": "102.00"}, "source_name": "1830279", "status": "success", "test": true, "user_id": 74861019325, "payment_details": {"credit_card_bin": "1", "avs_result_code": null, "cvv_result_code": null, "credit_card_number": "\u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 1", "credit_card_company": "Bogus", "buyer_action_info": null, "credit_card_name": "Bogus Gateway", "credit_card_wallet": null, "credit_card_expiration_month": 11, "credit_card_expiration_year": 2023}}], "refund_line_items": [{"id": 332807864509, "line_item_id": 10130216452285, "location_id": 63590301885, "quantity": 1, "restock_type": "cancel", "subtotal": 102.0, "subtotal_set": {"shop_money": {"amount": "102.00", "currency_code": "USD"}, "presentment_money": {"amount": "102.00", "currency_code": "USD"}}, "total_tax": 17.0, "total_tax_set": {"shop_money": {"amount": "17.00", "currency_code": "USD"}, "presentment_money": {"amount": "17.00", "currency_code": "USD"}}, "line_item": {"id": 10130216452285, "admin_graphql_api_id": "gid://shopify/LineItem/10130216452285", "fulfillable_quantity": 0, "fulfillment_service": "manual", "fulfillment_status": null, "gift_card": false, "grams": 63, "name": "8 Ounce Soy Candle - Wooden", "price": "102.00", "price_set": {"shop_money": {"amount": "102.00", "currency_code": "USD"}, "presentment_money": {"amount": "102.00", "currency_code": "USD"}}, "product_exists": true, "product_id": 6796229509309, "properties": [], "quantity": 1, "requires_shipping": true, "sku": "", "taxable": true, "title": "8 Ounce Soy Candle", "total_discount": "0.00", "total_discount_set": {"shop_money": {"amount": "0.00", "currency_code": "USD"}, "presentment_money": {"amount": "0.00", "currency_code": "USD"}}, "variant_id": 40090604011709, "variant_inventory_management": "shopify", "variant_title": "Wooden", "vendor": "Bosco Inc", "tax_lines": [{"channel_liable": false, "price": "17.00", "price_set": {"shop_money": {"amount": "17.00", "currency_code": "USD"}, "presentment_money": {"amount": "17.00", "currency_code": "USD"}}, "rate": 0.2, "title": "PDV"}], "duties": [], "discount_allocations": []}}], "duties": []}], "shipping_address": null, "shipping_lines": [], "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515793168} +{"stream": "pages", "data": {"id": 83074252989, "title": "Warranty information", "shop_id": 58033176765, "handle": "warranty-information", "body_html": "updated_mon_24.04.2023", "author": "Shopify API", "created_at": "2021-07-08T05:19:00-07:00", "updated_at": "2023-04-24T11:08:41-07:00", "published_at": "2021-07-08T05:19:00-07:00", "template_suffix": null, "admin_graphql_api_id": "gid://shopify/OnlineStorePage/83074252989", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515794764} +{"stream": "pages", "data": {"id": 95926616253, "deleted_at": "2023-09-06T03:37:06-07:00", "updated_at": "2023-09-06T03:37:06-07:00", "deleted_message": "Online Store deleted a page: Test Page for delete.", "deleted_description": "Online Store deleted a page: Test Page for delete.", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515795428} +{"stream": "price_rules", "data": {"id": 945000284349, "value_type": "percentage", "value": "-3.0", "customer_selection": "all", "target_type": "line_item", "target_selection": "all", "allocation_method": "across", "allocation_limit": null, "once_per_customer": true, "usage_limit": 10, "starts_at": "2021-07-07T07:22:04-07:00", "ends_at": null, "created_at": "2021-07-07T07:23:11-07:00", "updated_at": "2023-04-24T05:52:22-07:00", "entitled_product_ids": [], "entitled_variant_ids": [], "entitled_collection_ids": [], "entitled_country_ids": [], "prerequisite_product_ids": [], "prerequisite_variant_ids": [], "prerequisite_collection_ids": [], "customer_segment_prerequisite_ids": [], "prerequisite_customer_ids": [], "prerequisite_subtotal_range": null, "prerequisite_quantity_range": null, "prerequisite_shipping_price_range": null, "prerequisite_to_entitlement_quantity_ratio": {"prerequisite_quantity": null, "entitled_quantity": null}, "prerequisite_to_entitlement_purchase": {"prerequisite_amount": null}, "title": "1V8Z165KSH5T", "admin_graphql_api_id": "gid://shopify/PriceRule/945000284349", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515796518} +{"stream": "price_rules", "data": {"id": 1278552473789, "deleted_at": "2023-09-06T03:48:46-07:00", "updated_at": "2023-09-06T03:48:46-07:00", "deleted_message": "Airbyte Test deleted this discount.", "deleted_description": "Airbyte Test deleted this discount.", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515797168} +{"stream": "product_images", "data": {"id": 29301297316029, "product_id": 6796220989629, "position": 1, "created_at": "2021-06-22T18:09:47-07:00", "updated_at": "2023-04-24T10:32:19-07:00", "alt": "updated_mon_24.04.2023", "width": 2200, "height": 1467, "src": "https://cdn.shopify.com/s/files/1/0580/3317/6765/products/4-ounce-soy-candle.jpg?v=1682357539", "variant_ids": [], "admin_graphql_api_id": "gid://shopify/ProductImage/29301297316029", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515800514} +{"stream": "products", "data": {"id": 6796220989629, "title": "4 Ounce Soy Candle", "body_html": "updated_mon_24.04.2023", "vendor": "Hartmann Group", "product_type": "Baby", "created_at": "2021-06-22T18:09:47-07:00", "handle": "4-ounce-soy-candle", "updated_at": "2023-04-24T11:05:13-07:00", "published_at": "2021-06-22T18:09:47-07:00", "template_suffix": "", "status": "active", "published_scope": "web", "tags": "developer-tools-generator", "admin_graphql_api_id": "gid://shopify/Product/6796220989629", "variants": [{"id": 40090585923773, "product_id": 6796220989629, "title": "Metal", "price": 19.0, "sku": "", "position": 1, "inventory_policy": "deny", "compare_at_price": null, "fulfillment_service": "manual", "inventory_management": "shopify", "option1": "Metal", "option2": null, "option3": null, "created_at": "2021-06-22T18:09:47-07:00", "updated_at": "2023-04-13T05:00:55-07:00", "taxable": true, "barcode": null, "grams": 112, "image_id": null, "weight": 112.0, "weight_unit": "g", "inventory_item_id": 42185200631997, "inventory_quantity": 15, "old_inventory_quantity": 15, "requires_shipping": true, "admin_graphql_api_id": "gid://shopify/ProductVariant/40090585923773"}, {"id": 41561955827901, "product_id": 6796220989629, "title": "Test Variant 1", "price": 19.0, "sku": "", "position": 2, "inventory_policy": "deny", "compare_at_price": null, "fulfillment_service": "manual", "inventory_management": "shopify", "option1": "Test Variant 1", "option2": null, "option3": null, "created_at": "2022-03-06T14:09:20-08:00", "updated_at": "2022-03-06T14:12:40-08:00", "taxable": true, "barcode": "", "grams": 112, "image_id": null, "weight": 112.0, "weight_unit": "g", "inventory_item_id": 43653682495677, "inventory_quantity": 2, "old_inventory_quantity": 2, "requires_shipping": true, "admin_graphql_api_id": "gid://shopify/ProductVariant/41561955827901"}, {"id": 41561961824445, "product_id": 6796220989629, "title": "Test Variant 2", "price": 19.0, "sku": "", "position": 3, "inventory_policy": "deny", "compare_at_price": null, "fulfillment_service": "manual", "inventory_management": "shopify", "option1": "Test Variant 2", "option2": null, "option3": null, "created_at": "2022-03-06T14:12:20-08:00", "updated_at": "2023-04-24T11:00:10-07:00", "taxable": true, "barcode": "", "grams": 112, "image_id": null, "weight": 112.0, "weight_unit": "g", "inventory_item_id": 43653688524989, "inventory_quantity": 0, "old_inventory_quantity": 0, "requires_shipping": true, "admin_graphql_api_id": "gid://shopify/ProductVariant/41561961824445"}], "options": [{"id": 8720178315453, "product_id": 6796220989629, "name": "Title", "position": 1, "values": ["Metal", "Test Variant 1", "Test Variant 2"]}], "images": [{"id": 29301297316029, "product_id": 6796220989629, "position": 1, "created_at": "2021-06-22T18:09:47-07:00", "updated_at": "2023-04-24T10:32:19-07:00", "alt": "updated_mon_24.04.2023", "width": 2200, "height": 1467, "src": "https://cdn.shopify.com/s/files/1/0580/3317/6765/products/4-ounce-soy-candle.jpg?v=1682357539", "variant_ids": [], "admin_graphql_api_id": "gid://shopify/ProductImage/29301297316029"}], "image": {"id": 29301297316029, "product_id": 6796220989629, "position": 1, "created_at": "2021-06-22T18:09:47-07:00", "updated_at": "2023-04-24T10:32:19-07:00", "alt": "updated_mon_24.04.2023", "width": 2200, "height": 1467, "src": "https://cdn.shopify.com/s/files/1/0580/3317/6765/products/4-ounce-soy-candle.jpg?v=1682357539", "variant_ids": [], "admin_graphql_api_id": "gid://shopify/ProductImage/29301297316029"}, "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515800926} +{"stream": "products", "data": {"id": 6796217811133, "deleted_at": "2023-09-05T07:07:00-07:00", "updated_at": "2023-09-05T07:07:00-07:00", "deleted_message": "Airbyte Airbyte deleted a product: Yoga Mat Rolled.", "deleted_description": "Airbyte Airbyte deleted a product: Yoga Mat Rolled.", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515801493} +{"stream": "products_graph_ql", "data": {"id": "gid://shopify/Product/6796220989629", "title": "4 Ounce Soy Candle", "updatedAt": "2023-04-24T18:05:13Z", "createdAt": "2021-06-23T01:09:47Z", "publishedAt": "2021-06-23T01:09:47Z", "status": "ACTIVE", "vendor": "Hartmann Group", "productType": "Baby", "tags": ["developer-tools-generator"], "options": [{"id": "gid://shopify/ProductOption/8720178315453", "name": "Title", "position": 1, "values": ["Metal", "Test Variant 1", "Test Variant 2"]}], "handle": "4-ounce-soy-candle", "description": "updated_mon_24.04.2023", "tracksInventory": true, "totalInventory": 17, "totalVariants": 3, "onlineStoreUrl": null, "onlineStorePreviewUrl": "https://airbyte-integration-test.myshopify.com/products/4-ounce-soy-candle", "descriptionHtml": "updated_mon_24.04.2023", "isGiftCard": false, "legacyResourceId": "6796220989629", "mediaCount": 1, "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515803002} +{"stream": "product_variants", "data": {"id": 40090579959997, "product_id": 6796217843901, "title": "Soft", "price": 85.0, "sku": "", "position": 1, "inventory_policy": "deny", "compare_at_price": null, "fulfillment_service": "manual", "inventory_management": "shopify", "option1": "Soft", "option2": null, "option3": null, "created_at": "2021-06-22T18:09:27-07:00", "updated_at": "2021-06-22T18:09:27-07:00", "taxable": true, "barcode": null, "grams": 391, "image_id": null, "weight": 391.0, "weight_unit": "g", "inventory_item_id": 42185194668221, "inventory_quantity": 12, "old_inventory_quantity": 12, "requires_shipping": true, "admin_graphql_api_id": "gid://shopify/ProductVariant/40090579959997", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515805873} +{"stream": "product_variants", "data": {"id": 40090585923773, "product_id": 6796220989629, "title": "Metal", "price": 19.0, "sku": "", "position": 1, "inventory_policy": "deny", "compare_at_price": null, "fulfillment_service": "manual", "inventory_management": "shopify", "option1": "Metal", "option2": null, "option3": null, "created_at": "2021-06-22T18:09:47-07:00", "updated_at": "2023-04-13T05:00:55-07:00", "taxable": true, "barcode": null, "grams": 112, "image_id": null, "weight": 112.0, "weight_unit": "g", "inventory_item_id": 42185200631997, "inventory_quantity": 15, "old_inventory_quantity": 15, "requires_shipping": true, "admin_graphql_api_id": "gid://shopify/ProductVariant/40090585923773", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515806484} +{"stream": "product_variants", "data": {"id": 41561955827901, "product_id": 6796220989629, "title": "Test Variant 1", "price": 19.0, "sku": "", "position": 2, "inventory_policy": "deny", "compare_at_price": null, "fulfillment_service": "manual", "inventory_management": "shopify", "option1": "Test Variant 1", "option2": null, "option3": null, "created_at": "2022-03-06T14:09:20-08:00", "updated_at": "2022-03-06T14:12:40-08:00", "taxable": true, "barcode": "", "grams": 112, "image_id": null, "weight": 112.0, "weight_unit": "g", "inventory_item_id": 43653682495677, "inventory_quantity": 2, "old_inventory_quantity": 2, "requires_shipping": true, "admin_graphql_api_id": "gid://shopify/ProductVariant/41561955827901", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515806485} +{"stream": "shop", "data": {"id": 58033176765, "name": "airbyte integration test", "email": "sherif@airbyte.io", "domain": "airbyte-integration-test.myshopify.com", "province": "California", "country": "US", "address1": "350 29th Avenue", "zip": "94121", "city": "San Francisco", "source": null, "phone": "8023494963", "latitude": 37.7827286, "longitude": -122.4889911, "primary_locale": "en", "address2": "", "created_at": "2021-06-22T18:00:23-07:00", "updated_at": "2023-04-30T09:02:52-07:00", "country_code": "US", "country_name": "United States", "currency": "USD", "customer_email": "sherif@airbyte.io", "timezone": "(GMT-08:00) America/Los_Angeles", "iana_timezone": "America/Los_Angeles", "shop_owner": "Airbyte Airbyte", "money_format": "${{amount}}", "money_with_currency_format": "${{amount}} USD", "weight_unit": "kg", "province_code": "CA", "taxes_included": true, "auto_configure_tax_inclusivity": null, "tax_shipping": null, "county_taxes": true, "plan_display_name": "Developer Preview", "plan_name": "partner_test", "has_discounts": true, "has_gift_cards": false, "myshopify_domain": "airbyte-integration-test.myshopify.com", "google_apps_domain": null, "google_apps_login_enabled": null, "money_in_emails_format": "${{amount}}", "money_with_currency_in_emails_format": "${{amount}} USD", "eligible_for_payments": true, "requires_extra_payments_agreement": false, "password_enabled": true, "has_storefront": true, "finances": true, "primary_location_id": 63590301885, "checkout_api_supported": true, "multi_location_enabled": true, "setup_required": false, "pre_launch_enabled": false, "enabled_presentment_currencies": ["USD"], "transactional_sms_disabled": false, "marketing_sms_consent_enabled_at_checkout": false, "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515807543} +{"stream": "smart_collections", "data": {"id": 273278566589, "handle": "test-collection", "title": "Test Collection", "updated_at": "2023-09-05T07:12:04-07:00", "body_html": "updated_mon_24.04.2023", "published_at": "2021-07-19T07:02:54-07:00", "sort_order": "best-selling", "template_suffix": "", "disjunctive": false, "rules": ["{'column': 'type', 'relation': 'equals', 'condition': 'Beauty'}"], "published_scope": "web", "admin_graphql_api_id": "gid://shopify/Collection/273278566589", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515808735} +{"stream": "tender_transactions", "data": {"id": 4464009117885, "order_id": 5033391718589, "amount": "19.00", "currency": "USD", "user_id": null, "test": false, "processed_at": "2023-04-24T11:00:08-07:00", "remote_reference": null, "payment_details": null, "payment_method": "other", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515810069} +{"stream": "transactions", "data": {"id": 5721110872253, "order_id": 4554821468349, "kind": "sale", "gateway": "bogus", "status": "success", "message": "Bogus Gateway: Forced success", "created_at": "2022-06-15T05:16:52-07:00", "test": true, "authorization": "53433", "location_id": null, "user_id": null, "parent_id": null, "processed_at": "2022-06-15T05:16:52-07:00", "device_id": null, "error_code": null, "source_name": "580111", "payment_details": {"credit_card_bin": "1", "avs_result_code": null, "cvv_result_code": null, "credit_card_number": "\u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 1", "credit_card_company": "Bogus", "buyer_action_info": null, "credit_card_name": "Bogus Gateway", "credit_card_wallet": null, "credit_card_expiration_month": 2, "credit_card_expiration_year": 2025}, "receipt": {"paid_amount": "57.23"}, "amount": 57.23, "currency": "USD", "payment_id": "c25048437719229.1", "total_unsettled_set": {"presentment_money": {"amount": 0.0, "currency": "USD"}, "shop_money": {"amount": 0.0, "currency": "USD"}}, "admin_graphql_api_id": "gid://shopify/OrderTransaction/5721110872253", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515812344} +{"stream": "transactions", "data": {"id": 5721170968765, "order_id": 4554821468349, "kind": "refund", "gateway": "bogus", "status": "success", "message": "Bogus Gateway: Forced success", "created_at": "2022-06-15T06:25:42-07:00", "test": true, "authorization": null, "location_id": null, "user_id": null, "parent_id": 5721110872253, "processed_at": "2022-06-15T06:25:42-07:00", "device_id": null, "error_code": null, "source_name": "1830279", "payment_details": {"credit_card_bin": "1", "avs_result_code": null, "cvv_result_code": null, "credit_card_number": "\u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 1", "credit_card_company": "Bogus", "buyer_action_info": null, "credit_card_name": "Bogus Gateway", "credit_card_wallet": null, "credit_card_expiration_month": 2, "credit_card_expiration_year": 2025}, "receipt": {"paid_amount": "57.23"}, "amount": 57.23, "currency": "USD", "payment_id": "c25048437719229.2", "total_unsettled_set": {"presentment_money": {"amount": 0.0, "currency": "USD"}, "shop_money": {"amount": 0.0, "currency": "USD"}}, "admin_graphql_api_id": "gid://shopify/OrderTransaction/5721170968765", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515812345} +{"stream": "transactions", "data": {"id": 4933790040253, "order_id": 3935377129661, "kind": "sale", "gateway": "bogus", "status": "success", "message": "Bogus Gateway: Forced success", "created_at": "2021-07-02T00:51:49-07:00", "test": true, "authorization": "53433", "location_id": null, "user_id": null, "parent_id": null, "processed_at": "2021-07-02T00:51:49-07:00", "device_id": null, "error_code": null, "source_name": "shopify_draft_order", "payment_details": {"credit_card_bin": "1", "avs_result_code": null, "cvv_result_code": null, "credit_card_number": "\u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 \u2022\u2022\u2022\u2022 1", "credit_card_company": "Bogus", "buyer_action_info": null, "credit_card_name": "Bogus Gateway", "credit_card_wallet": null, "credit_card_expiration_month": 11, "credit_card_expiration_year": 2023}, "receipt": {"paid_amount": "102.00"}, "amount": 102.0, "currency": "USD", "payment_id": "c21670281707709.1", "total_unsettled_set": {"presentment_money": {"amount": 0.0, "currency": "USD"}, "shop_money": {"amount": 0.0, "currency": "USD"}}, "admin_graphql_api_id": "gid://shopify/OrderTransaction/4933790040253", "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515813344} +{"stream": "customer_address", "data": {"id": 8092523135165, "customer_id": 6569096478909, "first_name": "New Test", "last_name": "Customer", "company": "Test Company", "address1": "My Best Accent", "address2": "", "city": "Fair Lawn", "province": "New Jersey", "country": "United States", "zip": "07410", "phone": "", "name": "New Test Customer", "province_code": "NJ", "country_code": "US", "country_name": "United States", "default": true, "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515819425} +{"stream": "customer_address", "data": {"id": 8212915650749, "customer_id": 6676027932861, "first_name": "MArcos", "last_name": "Millnitz", "company": null, "address1": null, "address2": null, "city": null, "province": null, "country": null, "zip": null, "phone": null, "name": "MArcos Millnitz", "province_code": null, "country_code": null, "country_name": null, "default": true, "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515820001} +{"stream": "countries", "data": {"id": 417014841533, "name": "Rest of World", "code": "*", "tax_name": "Tax", "tax": 0.0, "provinces": [], "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515821010} +{"stream": "countries", "data": {"id": 417014808765, "name": "Ukraine", "code": "UA", "tax_name": "PDV", "tax": 0.2, "provinces": [], "shop_url": "airbyte-integration-test"}, "emitted_at": 1694515821011} diff --git a/airbyte-integrations/connectors/source-shopify/integration_tests/state.json b/airbyte-integrations/connectors/source-shopify/integration_tests/state.json index 652fa38ae934..f96c4878b03f 100644 --- a/airbyte-integrations/connectors/source-shopify/integration_tests/state.json +++ b/airbyte-integrations/connectors/source-shopify/integration_tests/state.json @@ -1,183 +1,257 @@ { - "customers": { - "updated_at": "2022-10-11T08:40:51-07:00" - }, - "orders": { - "updated_at": "2022-10-12T11:15:27-07:00" - }, - "draft_orders": { - "updated_at": "2022-10-08T05:07:29-07:00" - }, - "products": { - "updated_at": "2023-03-20T06:08:51-07:00" - }, - "products_graph_ql": { - "updatedAt": "2023-03-20T13:08:51Z" - }, - "abandoned_checkouts": {}, - "metafields": { - "updated_at": "2022-05-30T23:42:02-07:00" - }, - "collects": { - "id": 29427031703741 - }, - "custom_collections": { - "updated_at": "2023-03-20T06:08:12-07:00" - }, - "order_refunds": { - "orders": { - "updated_at": "2022-10-12T11:15:27-07:00" + "customers": { + "updated_at": "2023-07-11T13:07:45-07:00" }, - "created_at": "2022-10-10T06:21:53-07:00" - }, - "order_risks": { "orders": { - "updated_at": "2022-03-07T02:09:04-08:00" + "deleted": { + "deleted_at": "" + }, + "updated_at": "2023-04-24T11:00:10-07:00" }, - "id": 6446736474301 - }, - "transactions": { - "orders": { - "updated_at": "2022-10-12T11:15:27-07:00" - }, - "created_at": "2022-10-10T06:21:52-07:00" - }, - "tender_transactions": { - "processed_at": "2022-10-10T06:21:52-07:00" - }, - "pages": { - "updated_at": "2022-10-08T08:07:00-07:00" - }, - "price_rules": { - "updated_at": "2022-10-14T10:19:39-07:00" - }, - "discount_codes": { - "price_rules": { - "updated_at": "2022-10-14T10:10:25-07:00" + "draft_orders": { + "updated_at": "2023-07-11T12:57:55-07:00" }, - "updated_at": "2022-10-14T10:10:25-07:00" - }, - "inventory_items": { "products": { - "updated_at": "2023-03-20T06:08:51-07:00" - }, - "updated_at": "2023-01-06T10:35:26-08:00" - }, - "inventory_levels": { - "locations": {}, - "updated_at": "2023-01-06T10:35:27-08:00" - }, - "fulfillment_orders": { - "orders": { - "updated_at": "2022-10-10T06:05:29-07:00" + "deleted": { + "deleted_at": "2023-09-05T13:32:22-07:00" + }, + "updated_at": "2023-09-05T07:12:05-07:00" }, - "id": 5567724486845 - }, - "fulfillments": { - "orders": { - "updated_at": "2022-10-10T06:05:29-07:00" - }, - "updated_at": "2022-06-22T03:50:14-07:00" - }, - "balance_transactions": {}, - "articles": { - "id": 558137508029 - }, - "metafield_articles": { + "products_graph_ql": { + "updatedAt": "2023-09-05T14:12:05Z" + }, + "abandoned_checkouts": { + "updated_at": "2023-07-11T13:07:45-07:00" + }, + "metafields": { + "updated_at": "2022-05-30T23:42:02-07:00" + }, + "collects": { + "id": 29427031703741 + }, + "custom_collections": { + "deleted": { + "deleted_at": "2023-09-06T03:34:39-07:00" + }, + "updated_at": "2023-09-05T07:06:59-07:00" + }, + "order_refunds": { + "orders": { + "updated_at": "2023-04-24T11:00:10-07:00", + "deleted": { + "deleted_at": "" + } + }, + "created_at": "2022-10-10T06:21:53-07:00" + }, + "order_risks": { + "orders": { + "updated_at": "2023-04-24T07:03:06-07:00", + "deleted": { + "deleted_at": "" + } + }, + "id": 6446736474301 + }, + "transactions": { + "orders": { + "updated_at": "2023-04-24T11:00:10-07:00", + "deleted": { + "deleted_at": "" + } + }, + "created_at": "2023-04-24T11:00:08-07:00" + }, + "tender_transactions": { + "processed_at": "2023-04-24T11:00:08-07:00" + }, + "pages": { + "deleted": { + "deleted_at": "2023-09-06T03:37:06-07:00" + }, + "updated_at": "2023-04-24T11:08:41-07:00" + }, + "price_rules": { + "deleted": { + "deleted_at": "2023-09-06T03:48:46-07:00" + }, + "updated_at": "2023-04-24T05:52:22-07:00" + }, + "discount_codes": { + "price_rules": { + "updated_at": "2023-04-24T05:52:22-07:00", + "deleted": { + "deleted_at": "" + } + }, + "updated_at": "2023-04-24T05:52:22-07:00" + }, + "inventory_items": { + "products": { + "updated_at": "2023-04-20T04:12:51-07:00", + "deleted": { + "deleted_at": "" + } + }, + "updated_at": "2023-04-14T03:29:27-07:00" + }, + "inventory_levels": { + "locations": {}, + "updated_at": "2023-04-24T11:00:10-07:00" + }, + "fulfillment_orders": { + "orders": { + "updated_at": "2023-04-24T11:00:10-07:00", + "deleted": { + "deleted_at": "" + } + }, + "id": 5985636450493 + }, + "fulfillments": { + "orders": { + "updated_at": "2023-04-24T11:00:10-07:00", + "deleted": { + "deleted_at": "" + } + }, + "updated_at": "2023-04-24T11:00:09-07:00" + }, + "balance_transactions": {}, "articles": { - "id": 558137508029 - }, - "updated_at": "2022-10-07T16:09:02-07:00" - }, - "blogs": { - "id": 80417685693 - }, - "metafield_blogs": { + "id": 558999404733, + "deleted": { + "deleted_at": "2023-09-05T14:02:00-07:00" + } + }, + "metafield_articles": { + "articles": { + "id": 558627979453, + "deleted": {} + }, + "updated_at": "2023-04-14T03:19:18-07:00" + }, "blogs": { - "id": 80417685693 + "id": 85733114045, + "deleted": { + "deleted_at": "2023-09-06T03:30:22-07:00" + } }, - "updated_at": "2022-10-07T06:05:23-07:00" - }, - "metafield_customers": { - "customers": { - "updated_at": "2022-10-11T08:40:51-07:00" + "metafield_blogs": { + "updated_at": "2022-10-07T06:05:23-07:00", + "blogs": { + "id": 80417685693 + } }, - "updated_at": "2022-10-11T08:40:51-07:00" - }, - "metafield_orders": { - "orders": { - "updated_at": "2022-10-12T11:15:27-07:00" + "metafield_customers": { + "customers": { + "updated_at": "2023-04-24T06:53:48-07:00" + }, + "updated_at": "2023-04-13T04:50:10-07:00" }, - "updated_at": "2022-10-12T11:15:27-07:00" - }, - "metafield_draft_orders": { - "draft_orders": { - "updated_at": "2022-10-08T05:07:29-07:00" + "metafield_orders": { + "orders": { + "updated_at": "2023-04-24T10:59:00-07:00", + "deleted": { + "deleted_at": "" + } + }, + "updated_at": "2023-04-14T03:52:40-07:00" }, - "updated_at": "2022-10-08T05:07:29-07:00" - }, - "metafield_products": { - "products": { - "updated_at": "2023-03-20T06:08:32-07:00" + "metafield_draft_orders": { + "draft_orders": { + "updated_at": "2023-04-24T07:18:06-07:00" + }, + "updated_at": "2023-04-24T07:18:06-07:00" }, - "updated_at": "2022-10-08T08:45:01-07:00" - }, - "product_images": { - "products": { - "updated_at": "2023-03-20T06:08:51-07:00" + "metafield_products": { + "products": { + "updated_at": "2023-04-20T04:12:59-07:00", + "deleted": { + "deleted_at": "" + } + }, + "updated_at": "2023-04-14T04:04:46-07:00" }, - "id": 32940458868925 - }, - "metafield_product_images": { - "products": { - "updated_at": "2023-03-20T06:08:51-07:00" + "product_images": { + "id": 33290489659581, + "products": { + "updated_at": "", + "deleted": { + "deleted_at": "2023-09-05T13:32:22-07:00" + } + } }, - "updated_at": "2022-10-13T04:01:00-07:00" - }, - "product_variants": { - "products": { - "updated_at": "2023-03-20T06:08:51-07:00" + "metafield_product_images": { + "products": { + "updated_at": "", + "deleted": { + "deleted_at": "2023-09-05T13:32:22-07:00" + } + }, + "updated_at": "2023-04-24T10:32:19-07:00" }, - "id": 42595864019133 - }, - "metafield_product_variants": { - "products": { - "updated_at": "2023-03-20T06:08:51-07:00" + "product_variants": { + "id": 42778150305981, + "products": { + "updated_at": "", + "deleted": { + "deleted_at": "2023-09-05T13:32:22-07:00" + } + } + }, + "metafield_product_variants": { + "products": { + "updated_at": "", + "deleted": { + "deleted_at": "2023-09-05T13:32:22-07:00" + } + }, + "updated_at": "2023-04-14T03:29:27-07:00" + }, + "collections": { + "collects": { + "id": 29427031703741 + }, + "updated_at": "2023-03-20T06:08:12-07:00" + }, + "metafield_collections": { + "collects": { + "id": 29427031703741 + }, + "updated_at": "2022-10-08T04:44:51-07:00" }, - "updated_at": "2022-10-14T10:16:04-07:00" - }, - "collections": { - "updated_at": "2023-03-20T06:08:12-07:00", - "collects": { - "id": 29427031703741 - } - }, - "metafield_collections": { - "updated_at": "2022-10-08T04:44:51-07:00", - "collects": { - "id": 29427031703741 - } - }, - "smart_collections": { - "updated_at": "2023-03-20T06:08:12-07:00" - }, - "metafield_smart_collections": { "smart_collections": { - "updated_at": "2023-03-20T06:08:12-07:00" + "updated_at": "2023-09-05T07:12:04-07:00" }, - "updated_at": "2022-10-12T13:36:55-07:00" - }, - "metafield_pages": { - "pages": { - "updated_at": "2022-10-08T08:07:00-07:00" - }, - "updated_at": "2022-10-08T08:07:00-07:00" - }, - "metafield_shops": { - "updated_at": "2022-05-30T23:42:02-07:00" - }, - "metafield_locations": { - "locations": {}, - "updated_at": "2022-10-12T02:21:35-07:00" - } + "metafield_smart_collections": { + "smart_collections": { + "updated_at": "2023-09-05T07:12:04-07:00" + }, + "updated_at": "2023-04-14T05:21:58-07:00" + }, + "metafield_pages": { + "pages": { + "updated_at": "2023-04-24T11:08:41-07:00", + "deleted": { + "deleted_at": "" + } + }, + "updated_at": "2023-04-24T11:08:41-07:00" + }, + "metafield_shops": { + "updated_at": "2023-04-24T11:12:38-07:00" + }, + "metafield_locations": { + "locations": {}, + "updated_at": "2022-10-12T02:21:35-07:00" + }, + "disputes": {}, + "customer_saved_search": {}, + "customer_address": { + "id": 8212915650749, + "customers": { + "updated_at": "2023-07-11T13:07:45-07:00" + } + } } diff --git a/airbyte-integrations/connectors/source-shopify/metadata.yaml b/airbyte-integrations/connectors/source-shopify/metadata.yaml index 23dacfc59428..274470ea46f9 100644 --- a/airbyte-integrations/connectors/source-shopify/metadata.yaml +++ b/airbyte-integrations/connectors/source-shopify/metadata.yaml @@ -2,7 +2,7 @@ data: connectorSubtype: api connectorType: source definitionId: 9da77001-af33-4bcd-be46-6252bf9342b9 - dockerImageTag: 1.0.0 + dockerImageTag: 1.1.1 dockerRepository: airbyte/source-shopify documentationUrl: https://docs.airbyte.com/integrations/sources/shopify githubIssueLabel: source-shopify @@ -14,7 +14,7 @@ data: enabled: true oss: enabled: true - releaseStage: alpha + releaseStage: generally_available suggestedStreams: streams: - customers @@ -53,7 +53,7 @@ data: - language:python ab_internal: sl: 300 - ql: 200 + ql: 400 supportLevel: certified allowedHosts: hosts: diff --git a/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/articles.json b/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/articles.json index 85ec2388ea75..86eaf83caed7 100644 --- a/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/articles.json +++ b/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/articles.json @@ -49,6 +49,16 @@ }, "shop_url": { "type": ["null", "string"] + }, + "deleted_at": { + "type": ["null", "string"], + "format": "date-time" + }, + "deleted_message": { + "type": ["null", "string"] + }, + "deleted_description": { + "type": ["null", "string"] } } } diff --git a/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/blogs.json b/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/blogs.json index a9ea23eea82e..55ce6bc3c386 100644 --- a/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/blogs.json +++ b/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/blogs.json @@ -40,6 +40,16 @@ }, "shop_url": { "type": ["null", "string"] + }, + "deleted_at": { + "type": ["null", "string"], + "format": "date-time" + }, + "deleted_message": { + "type": ["null", "string"] + }, + "deleted_description": { + "type": ["null", "string"] } } } diff --git a/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/custom_collections.json b/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/custom_collections.json index 85041b590019..59b2246cc63f 100644 --- a/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/custom_collections.json +++ b/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/custom_collections.json @@ -55,6 +55,16 @@ }, "shop_url": { "type": ["null", "string"] + }, + "deleted_at": { + "type": ["null", "string"], + "format": "date-time" + }, + "deleted_message": { + "type": ["null", "string"] + }, + "deleted_description": { + "type": ["null", "string"] } }, "additionalProperties": true, diff --git a/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/orders.json b/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/orders.json index 096f8832e587..416b20b7d0f4 100644 --- a/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/orders.json +++ b/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/orders.json @@ -2413,6 +2413,16 @@ } } } + }, + "deleted_at": { + "type": ["null", "string"], + "format": "date-time" + }, + "deleted_message": { + "type": ["null", "string"] + }, + "deleted_description": { + "type": ["null", "string"] } } } diff --git a/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/pages.json b/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/pages.json index 79a5006372b3..578430a050d2 100644 --- a/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/pages.json +++ b/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/pages.json @@ -40,6 +40,16 @@ }, "shop_url": { "type": ["null", "string"] + }, + "deleted_at": { + "type": ["null", "string"], + "format": "date-time" + }, + "deleted_message": { + "type": ["null", "string"] + }, + "deleted_description": { + "type": ["null", "string"] } } } diff --git a/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/price_rules.json b/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/price_rules.json index 0bfb04759d5e..cc9bd9e69c1d 100644 --- a/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/price_rules.json +++ b/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/price_rules.json @@ -159,6 +159,16 @@ }, "shop_url": { "type": ["null", "string"] + }, + "deleted_at": { + "type": ["null", "string"], + "format": "date-time" + }, + "deleted_message": { + "type": ["null", "string"] + }, + "deleted_description": { + "type": ["null", "string"] } } } diff --git a/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/products.json b/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/products.json index 90066b9aefeb..c97a60b74645 100644 --- a/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/products.json +++ b/airbyte-integrations/connectors/source-shopify/source_shopify/schemas/products.json @@ -268,6 +268,16 @@ }, "shop_url": { "type": ["null", "string"] + }, + "deleted_at": { + "type": ["null", "string"], + "format": "date-time" + }, + "deleted_message": { + "type": ["null", "string"] + }, + "deleted_description": { + "type": ["null", "string"] } } } diff --git a/airbyte-integrations/connectors/source-shopify/source_shopify/source.py b/airbyte-integrations/connectors/source-shopify/source_shopify/source.py index 8d0ca3ddb74f..1ca395ec6df8 100644 --- a/airbyte-integrations/connectors/source-shopify/source_shopify/source.py +++ b/airbyte-integrations/connectors/source-shopify/source_shopify/source.py @@ -27,18 +27,19 @@ class ShopifyStream(HttpStream, ABC): + + # define default logger + logger = logging.getLogger("airbyte") + # Latest Stable Release api_version = "2023-07" # Page size limit = 250 - # Define primary key as sort key for full_refresh, or very first sync for incremental_refresh + primary_key = "id" order_field = "updated_at" filter_field = "updated_at_min" - # define default logger - logger = logging.getLogger("airbyte") - raise_on_http_errors = True max_retries = 5 @@ -47,6 +48,11 @@ def __init__(self, config: Dict): self._transformer = DataTypeEnforcer(self.get_json_schema()) self.config = config + @property + @abstractmethod + def data_field(self) -> str: + """The name of the field in the response which contains the data""" + @property def url_base(self) -> str: return f"https://{self.config['shop']}.myshopify.com/admin/api/{self.api_version}/" @@ -58,8 +64,7 @@ def default_filter_field_value(self) -> Union[int, str]: # by default, we use the user defined `Start Date` as initial value, or 0 for `id`-dependent streams. return 0 if self.filter_field == "since_id" else (self.config.get("start_date") or "") - @staticmethod - def next_page_token(response: requests.Response) -> Optional[Mapping[str, Any]]: + def next_page_token(self, response: requests.Response) -> Optional[Mapping[str, Any]]: next_page = response.links.get("next", None) if next_page: return dict(parse_qsl(urlparse(next_page.get("url")).query)) @@ -112,10 +117,66 @@ def should_retry(self, response: requests.Response) -> bool: else: return super().should_retry(response) + +class ShopifyDeletedEventsStream(ShopifyStream): + + data_field = "events" + primary_key = "id" + cursor_field = "deleted_at" + @property - @abstractmethod - def data_field(self) -> str: - """The name of the field in the response which contains the data""" + def availability_strategy(self) -> None: + """ + No need to apply the `availability strategy` for this service stream. + """ + return None + + def __init__(self, config: Dict, deleted_events_api_name: str): + self.deleted_events_api_name = deleted_events_api_name + super().__init__(config) + + def path(self, **kwargs) -> str: + return f"{self.data_field}.json" + + def get_json_schema(self) -> None: + """ + No need to apply the `schema` for this service stream. + """ + return {} + + def produce_deleted_records_from_events(self, delete_events: Iterable[Mapping[str, Any]] = []) -> None: + for event in delete_events: + yield { + "id": event["subject_id"], + self.cursor_field: event["created_at"], + "updated_at": event["created_at"], + "deleted_message": event["message"], + "deleted_description": event["description"], + "shop_url": event["shop_url"], + } + + def read_records(self, stream_state: Mapping[str, Any] = None, **kwargs): + delete_events = super().read_records(stream_state=stream_state, **kwargs) + yield from self.produce_deleted_records_from_events(delete_events) + + def request_params( + self, + stream_state: Mapping[str, Any] = None, + next_page_token: Mapping[str, Any] = None, + **kwargs, + ) -> Mapping[str, Any]: + params = {} + if not next_page_token: + params.update(**{"filter": self.deleted_events_api_name, "verb": "destroy"}) + else: + # `filter` and `verb` cannot be passed, when `page_info` is present. + # See https://shopify.dev/api/usage/pagination-rest + params.update(**next_page_token) + if stream_state: + state = stream_state.get("deleted", {}).get(self.cursor_field) + if state: + params["created_at_min"] = state + return params class IncrementalShopifyStream(ShopifyStream, ABC): @@ -127,6 +188,7 @@ def state_checkpoint_interval(self) -> int: # Setting the default cursor field for all streams cursor_field = "updated_at" + deleted_cursor_field = "deleted_at" @property def default_state_comparison_value(self) -> Union[int, str]: @@ -178,6 +240,64 @@ def filter_records_newer_than_state(self, stream_state: Mapping[str, Any] = None yield from records_slice +class IncrementalShopifyStreamWithDeletedEvents(IncrementalShopifyStream): + @property + @abstractmethod + def deleted_events_api_name(self) -> str: + """ + The string value of the Shopify Events Object to pull: + + articles -> Article + blogs -> Blog + custom_collections -> Collection + orders -> Order + pages -> Page + price_rules -> PriceRule + products -> Product + + """ + + @property + def deleted_events(self) -> ShopifyDeletedEventsStream: + """ + The Events stream instance to fetch the `destroyed` records for specified `deleted_events_api_name`, like: `Product`. + See more in `ShopifyDeletedEventsStream` class. + """ + return ShopifyDeletedEventsStream(self.config, self.deleted_events_api_name) + + @property + def default_deleted_state_comparison_value(self) -> Union[int, str]: + """ + Set the default STATE comparison value for cases when the deleted record doesn't have it's value. + We expect the `deleted_at` cursor field for destroyed records would be always type of String. + """ + return "" + + def get_updated_state(self, current_stream_state: MutableMapping[str, Any], latest_record: Mapping[str, Any]) -> Mapping[str, Any]: + """ + We extend the stream state with `deleted` property to store the `destroyed` records STATE separetely from the Stream State. + """ + state = super().get_updated_state(current_stream_state, latest_record) + # add `deleted` property to each stream supports `deleted events`, + # to povide the `Incremental` sync mode, for the `Incremental Delete` records. + last_deleted_record_value = latest_record.get(self.deleted_cursor_field) or self.default_deleted_state_comparison_value + current_deleted_state_value = current_stream_state.get(self.deleted_cursor_field) or self.default_deleted_state_comparison_value + state["deleted"] = {self.deleted_cursor_field: max(last_deleted_record_value, current_deleted_state_value)} + return state + + def read_records( + self, + stream_state: Mapping[str, Any] = None, + stream_slice: Optional[Mapping[str, Any]] = None, + **kwargs, + ) -> Iterable[Mapping[str, Any]]: + """Override to fetch deleted records for supported streams""" + # main records stream + yield from super().read_records(stream_state=stream_state, stream_slice=stream_slice, **kwargs) + # fetch deleted events after the Stream data is pulled + yield from self.deleted_events.read_records(stream_state=stream_state, **kwargs) + + class ShopifySubstream(IncrementalShopifyStream): """ ShopifySubstream - provides slicing functionality for streams using parts of data from parent stream. @@ -283,7 +403,10 @@ def stream_slices(self, stream_state: Mapping[str, Any] = None, **kwargs) -> Ite } ) else: - yield {self.slice_key: record[self.nested_record]} + # avoid checking `deleted` records for substreams, a.k.a `Metafields` streams, + # since `deleted` records are not available, thus we avoid HTTP-400 errors. + if self.deleted_cursor_field not in record: + yield {self.slice_key: record[self.nested_record]} # output slice from sorted list to avoid filtering older records if self.nested_substream: @@ -323,11 +446,12 @@ def path(self, stream_slice: Mapping[str, Any] = None, **kwargs) -> str: return f"{self.parent_stream_class.data_field}/{object_id}/{self.data_field}.json" -class Articles(IncrementalShopifyStream): +class Articles(IncrementalShopifyStreamWithDeletedEvents): data_field = "articles" cursor_field = "id" order_field = "id" filter_field = "since_id" + deleted_events_api_name = "Article" def path(self, **kwargs) -> str: return f"{self.data_field}.json" @@ -337,11 +461,12 @@ class MetafieldArticles(MetafieldShopifySubstream): parent_stream_class: object = Articles -class Blogs(IncrementalShopifyStream): +class Blogs(IncrementalShopifyStreamWithDeletedEvents): cursor_field = "id" order_field = "id" data_field = "blogs" filter_field = "since_id" + deleted_events_api_name = "Blog" def path(self, **kwargs) -> str: return f"{self.data_field}.json" @@ -362,8 +487,9 @@ class MetafieldCustomers(MetafieldShopifySubstream): parent_stream_class: object = Customers -class Orders(IncrementalShopifyStream): +class Orders(IncrementalShopifyStreamWithDeletedEvents): data_field = "orders" + deleted_events_api_name = "Order" def path(self, **kwargs) -> str: return f"{self.data_field}.json" @@ -402,9 +528,10 @@ class MetafieldDraftOrders(MetafieldShopifySubstream): parent_stream_class: object = DraftOrders -class Products(IncrementalShopifyStream): +class Products(IncrementalShopifyStreamWithDeletedEvents): use_cache = True data_field = "products" + deleted_events_api_name = "Product" def path(self, **kwargs) -> str: return f"{self.data_field}.json" @@ -533,8 +660,9 @@ def request_params( return params -class CustomCollections(IncrementalShopifyStream): +class CustomCollections(IncrementalShopifyStreamWithDeletedEvents): data_field = "custom_collections" + deleted_events_api_name = "Collection" def path(self, **kwargs) -> str: return f"{self.data_field}.json" @@ -651,8 +779,9 @@ def path(self, **kwargs) -> str: return f"{self.data_field}.json" -class Pages(IncrementalShopifyStream): +class Pages(IncrementalShopifyStreamWithDeletedEvents): data_field = "pages" + deleted_events_api_name = "Page" def path(self, **kwargs) -> str: return f"{self.data_field}.json" @@ -662,8 +791,9 @@ class MetafieldPages(MetafieldShopifySubstream): parent_stream_class: object = Pages -class PriceRules(IncrementalShopifyStream): +class PriceRules(IncrementalShopifyStreamWithDeletedEvents): data_field = "price_rules" + deleted_events_api_name = "PriceRule" def path(self, **kwargs) -> str: return f"{self.data_field}.json" diff --git a/airbyte-integrations/connectors/source-shopify/unit_tests/conftest.py b/airbyte-integrations/connectors/source-shopify/unit_tests/conftest.py index e0c062eeff74..23833b0932c9 100644 --- a/airbyte-integrations/connectors/source-shopify/unit_tests/conftest.py +++ b/airbyte-integrations/connectors/source-shopify/unit_tests/conftest.py @@ -19,6 +19,15 @@ def basic_config(): return {"shop": "test_shop", "credentials": {"auth_method": "api_password", "api_password": "api_password"}} +@pytest.fixture +def auth_config(): + return { + "shop": "test_shop", + "credentials": {"auth_method": "api_password", "api_password": "api_password"}, + "authenticator": None, + } + + @pytest.fixture def catalog_with_streams(): def _catalog_with_streams(names): diff --git a/airbyte-integrations/connectors/source-shopify/unit_tests/test_deleted_events_stream.py b/airbyte-integrations/connectors/source-shopify/unit_tests/test_deleted_events_stream.py new file mode 100644 index 000000000000..2b2e9bdc04ac --- /dev/null +++ b/airbyte-integrations/connectors/source-shopify/unit_tests/test_deleted_events_stream.py @@ -0,0 +1,244 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + + +import pytest +from source_shopify.auth import ShopifyAuthenticator +from source_shopify.source import Products, ShopifyDeletedEventsStream + + +@pytest.fixture +def config(basic_config): + basic_config["start_date"] = "2020-11-01" + basic_config["authenticator"] = ShopifyAuthenticator(basic_config) + return basic_config + + +@pytest.mark.parametrize( + "stream,expected_main_path,expected_events_path", + [ + (Products, "products.json", "events.json"), + ], +) +def test_path(stream, expected_main_path, expected_events_path, config): + stream = stream(config) + main_path = stream.path() + events_path = stream.deleted_events.path() + assert main_path == expected_main_path + assert events_path == expected_events_path + + +@pytest.mark.parametrize( + "stream,expected_events_schema", + [ + (Products, {}), + ], +) +def test_get_json_schema(stream, expected_events_schema, config): + stream = stream(config) + schema = stream.deleted_events.get_json_schema() + # no schema is expected + assert schema == expected_events_schema + + +@pytest.mark.parametrize( + "stream,expected_data_field,expected_pk,expected_cursor_field", + [ + (Products, "events", "id", "deleted_at"), + ], +) +def test_has_correct_instance_vars(stream, expected_data_field, expected_pk, expected_cursor_field, config): + stream = stream(config) + assert stream.deleted_events.data_field == expected_data_field + assert stream.deleted_events.primary_key == expected_pk + assert stream.deleted_events.cursor_field == expected_cursor_field + + +@pytest.mark.parametrize( + "stream,expected", + [ + (Products, None), + ], +) +def test_has_no_availability_strategy(stream, expected, config): + stream = stream(config) + # no availability_strategy is expected + assert stream.deleted_events.availability_strategy is expected + + +@pytest.mark.parametrize( + "stream,deleted_records_json,expected", + [ + ( + Products, + [ + { + 'id': 123, + 'subject_id': 234, + 'created_at': '2023-09-05T14:02:00-07:00', + 'subject_type': 'Product', + 'verb': 'destroy', + 'arguments': [], + 'message': 'Test Message', + 'author': 'Online Store', + 'description': 'Test Description', + 'shop_url': 'airbyte-integration-test', + }, + ], + [ + { + 'id': 123, + 'subject_id': 234, + 'created_at': '2023-09-05T14:02:00-07:00', + 'subject_type': 'Product', + 'verb': 'destroy', + 'arguments': [], + 'message': 'Test Message', + 'author': 'Online Store', + 'description': 'Test Description', + 'shop_url': 'airbyte-integration-test', + }, + ] + ), + ], +) +def test_read_deleted_records(stream, requests_mock, deleted_records_json, expected, config, mocker): + stream = stream(config) + deleted_records_url = stream.url_base + stream.deleted_events.path() + requests_mock.get(deleted_records_url, json=deleted_records_json) + mocker.patch("source_shopify.source.IncrementalShopifyStreamWithDeletedEvents.read_records", return_value=deleted_records_json) + assert list(stream.read_records(sync_mode=None)) == expected + + +@pytest.mark.parametrize( + "stream,input,expected", + [ + ( + Products, + [ + { + 'id': 123, + 'subject_id': 234, + 'created_at': '2023-09-05T14:02:00-07:00', + 'subject_type': 'Product', + 'verb': 'destroy', + 'arguments': [], + 'message': 'Test Message', + 'author': 'Online Store', + 'description': 'Test Description', + 'shop_url': 'airbyte-integration-test', + } + ], + [ + { + 'id': 234, + 'deleted_at': '2023-09-05T14:02:00-07:00', + 'updated_at': '2023-09-05T14:02:00-07:00', + 'deleted_message': 'Test Message', + 'deleted_description': 'Test Description', + 'shop_url': 'airbyte-integration-test', + } + ], + ), + ], +) +def test_produce_deleted_records_from_events(stream, input, expected, config): + stream = stream(config) + result = stream.deleted_events.produce_deleted_records_from_events(input) + assert list(result) == expected + + +@pytest.mark.parametrize( + "stream, stream_state, next_page_token, expected_stream_params, expected_deleted_params", + [ + # params with NO STATE + ( + Products, + {}, + None, + {'limit': 250, 'order': 'updated_at asc', 'updated_at_min': '2020-11-01'}, + {'filter': 'Product', 'verb': 'destroy'}, + ), + # params with STATE + ( + Products, + {"updated_at": "2028-01-01", "deleted": {"deleted_at": "2029-01-01"}}, + None, + {'limit': 250, 'order': 'updated_at asc', 'updated_at_min': '2028-01-01'}, + {'created_at_min': '2029-01-01', 'filter': 'Product', 'verb': 'destroy'}, + ), + # params with NO STATE but with NEXT_PAGE_TOKEN + ( + Products, + {}, + {'page_info': 'next_page_token'}, + {'limit': 250, 'page_info': 'next_page_token'}, + {'page_info': 'next_page_token'}, + ), + ], +) +def test_request_params(config, stream, stream_state, next_page_token, expected_stream_params, expected_deleted_params): + stream = stream(config) + assert stream.request_params(stream_state=stream_state, next_page_token=next_page_token) == expected_stream_params + assert stream.deleted_events.request_params(stream_state=stream_state, next_page_token=next_page_token) == expected_deleted_params + + +@pytest.mark.parametrize( + "stream,expected", + [ + (Products, ShopifyDeletedEventsStream), + ], +) +def test_deleted_events_instance(stream, config, expected): + stream = stream(config) + assert isinstance(stream.deleted_events, expected) + + +@pytest.mark.parametrize( + "stream,expected", + [ + (Products, ""), + ], +) +def test_default_deleted_state_comparison_value(stream, config, expected): + stream = stream(config) + assert stream.default_deleted_state_comparison_value == expected + + +@pytest.mark.parametrize( + "stream, last_record, current_state, expected", + [ + # NO INITIAL STATE + ( + Products, + {"id": 1, "updated_at": "2021-01-01"}, + {}, + {'updated_at': '2021-01-01', 'deleted': {'deleted_at': ''}}, + ), + # with INITIAL STATE + ( + Products, + {"id": 1, "updated_at": "2022-01-01"}, + {'updated_at': '2021-01-01', 'deleted': {'deleted_at': ''}}, + {'updated_at': '2022-01-01', 'deleted': {'deleted_at': ''}}, + ), + # with NO Last Record value and NO current state value + ( + Products, + {}, + {}, + {'updated_at': '', 'deleted': {'deleted_at': ''}}, + ), + # with NO Last Record value but with Current state value + ( + Products, + {}, + {'updated_at': '2030-01-01', 'deleted': {'deleted_at': ''}}, + {'updated_at': '2030-01-01', 'deleted': {'deleted_at': ''}}, + ), + ], +) +def test_get_updated_state(config, stream, last_record, current_state, expected): + stream = stream(config) + assert stream.get_updated_state(current_state, last_record) == expected diff --git a/airbyte-integrations/connectors/source-shopify/unit_tests/unit_test.py b/airbyte-integrations/connectors/source-shopify/unit_tests/unit_test.py index a1fea8e4538a..14da41e6c0b1 100644 --- a/airbyte-integrations/connectors/source-shopify/unit_tests/unit_test.py +++ b/airbyte-integrations/connectors/source-shopify/unit_tests/unit_test.py @@ -5,13 +5,14 @@ import pytest import requests -from source_shopify.source import BalanceTransactions, DiscountCodes, FulfillmentOrders, PriceRules, ShopifyStream, SourceShopify +from source_shopify.source import BalanceTransactions, DiscountCodes, FulfillmentOrders, PriceRules, SourceShopify -def test_get_next_page_token(requests_mock): +def test_get_next_page_token(requests_mock, auth_config): """ Test shows that next_page parameters are parsed correctly from the response object and could be passed for next request API call, """ + stream = PriceRules(auth_config) response_header_links = { "Date": "Thu, 32 Jun 2099 24:24:24 GMT", "Content-Type": "application/json; charset=utf-8", @@ -25,7 +26,7 @@ def test_get_next_page_token(requests_mock): requests_mock.get("https://test.myshopify.com/", headers=response_header_links) response = requests.get("https://test.myshopify.com/") - test = ShopifyStream.next_page_token(response) + test = stream.next_page_token(response=response) assert test == expected_output_token diff --git a/airbyte-integrations/connectors/source-smartsheets/metadata.yaml b/airbyte-integrations/connectors/source-smartsheets/metadata.yaml index c88443efa7e2..46e5bc5e5586 100644 --- a/airbyte-integrations/connectors/source-smartsheets/metadata.yaml +++ b/airbyte-integrations/connectors/source-smartsheets/metadata.yaml @@ -1,4 +1,7 @@ data: + ab_internal: + ql: 300 + sl: 100 allowedHosts: hosts: - app.smartsheet.com @@ -8,6 +11,7 @@ data: definitionId: 374ebc65-6636-4ea0-925c-7d35999a8ffc dockerImageTag: 1.1.1 dockerRepository: airbyte/source-smartsheets + documentationUrl: https://docs.airbyte.com/integrations/sources/smartsheets githubIssueLabel: source-smartsheets icon: smartsheet.svg license: MIT @@ -18,11 +22,7 @@ data: oss: enabled: true releaseStage: beta - documentationUrl: https://docs.airbyte.com/integrations/sources/smartsheets + supportLevel: community tags: - language:python - ab_internal: - sl: 200 - ql: 300 - supportLevel: certified metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-snowflake/.dockerignore b/airbyte-integrations/connectors/source-snowflake/.dockerignore index 65c7d0ad3e73..e4fbece78752 100644 --- a/airbyte-integrations/connectors/source-snowflake/.dockerignore +++ b/airbyte-integrations/connectors/source-snowflake/.dockerignore @@ -1,3 +1,3 @@ * !Dockerfile -!build +!build/distributions diff --git a/airbyte-integrations/connectors/source-snowflake/build.gradle b/airbyte-integrations/connectors/source-snowflake/build.gradle index 3b8184d8b668..da4ac2b7629f 100644 --- a/airbyte-integrations/connectors/source-snowflake/build.gradle +++ b/airbyte-integrations/connectors/source-snowflake/build.gradle @@ -16,7 +16,6 @@ dependencies { implementation project(':airbyte-integrations:connectors:source-jdbc') implementation project(':airbyte-integrations:connectors:source-relational-db') implementation libs.airbyte.protocol - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) implementation group: 'net.snowflake', name: 'snowflake-jdbc', version: '3.13.22' implementation 'com.zaxxer:HikariCP:5.0.1' @@ -25,7 +24,6 @@ dependencies { integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-snowflake') - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) integrationTestJavaImplementation 'org.apache.commons:commons-lang3:3.11' } diff --git a/airbyte-integrations/connectors/source-square/metadata.yaml b/airbyte-integrations/connectors/source-square/metadata.yaml index 23c1c36c7654..481db7beee22 100644 --- a/airbyte-integrations/connectors/source-square/metadata.yaml +++ b/airbyte-integrations/connectors/source-square/metadata.yaml @@ -1,4 +1,7 @@ data: + ab_internal: + ql: 300 + sl: 100 allowedHosts: hosts: - connect.squareupsandbox.com @@ -8,6 +11,7 @@ data: definitionId: 77225a51-cd15-4a13-af02-65816bd0ecf4 dockerImageTag: 1.1.2 dockerRepository: airbyte/source-square + documentationUrl: https://docs.airbyte.com/integrations/sources/square githubIssueLabel: source-square icon: square.svg license: MIT @@ -18,12 +22,8 @@ data: oss: enabled: true releaseStage: beta - documentationUrl: https://docs.airbyte.com/integrations/sources/square + supportLevel: community tags: - language:low-code - language:python - ab_internal: - sl: 200 - ql: 300 - supportLevel: certified metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-stock-ticker-api-tutorial/build.gradle b/airbyte-integrations/connectors/source-stock-ticker-api-tutorial/build.gradle index 27dd58f4d228..65c40ae2d8c8 100644 --- a/airbyte-integrations/connectors/source-stock-ticker-api-tutorial/build.gradle +++ b/airbyte-integrations/connectors/source-stock-ticker-api-tutorial/build.gradle @@ -11,7 +11,3 @@ airbyteStandardSourceTestFile { configuredCatalogPath = "fullrefresh_configured_catalog.json" specPath = "spec.json" } - -dependencies { - implementation files(project(':airbyte-integrations:bases:base-standard-source-test-file').airbyteDocker.outputs) -} diff --git a/airbyte-integrations/connectors/source-stripe/Dockerfile b/airbyte-integrations/connectors/source-stripe/Dockerfile index 7038660a56b2..bd488734f77d 100644 --- a/airbyte-integrations/connectors/source-stripe/Dockerfile +++ b/airbyte-integrations/connectors/source-stripe/Dockerfile @@ -13,5 +13,5 @@ ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=3.17.4 +LABEL io.airbyte.version=4.1.1 LABEL io.airbyte.name=airbyte/source-stripe diff --git a/airbyte-integrations/connectors/source-stripe/acceptance-test-config.yml b/airbyte-integrations/connectors/source-stripe/acceptance-test-config.yml index 1a76cc309b6f..a25b6928b6f7 100644 --- a/airbyte-integrations/connectors/source-stripe/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-stripe/acceptance-test-config.yml @@ -13,8 +13,6 @@ acceptance_tests: discovery: tests: - config_path: "secrets/config.json" - backward_compatibility_tests_config: - disable_for_version: "3.17.0" # invoices schema fix basic_read: tests: - config_path: "secrets/config.json" @@ -36,20 +34,16 @@ acceptance_tests: bypass_reason: "This stream can't be seeded in our sandbox account" - name: "external_account_cards" bypass_reason: "This stream can't be seeded in our sandbox account" - - name: "checkout_sessions" - bypass_reason: "This stream can't be seeded in our sandbox account" - - name: "checkout_sessions_line_items" - bypass_reason: "This stream can't be seeded in our sandbox account" - name: "payment_methods" bypass_reason: "this stream can't be seeded in our sandbox account" - name: "persons" bypass_reason: "this stream can't be seeded in our sandbox account" - name: "reviews" bypass_reason: "this stream can't be seeded in our sandbox account" - - name: "transfers" - bypass_reason: "This stream can't be seeded in our sandbox account" - name: "transactions" bypass_reason: "This stream can't be seeded in our sandbox account" + - name: "events" + bypass_reason: "Data expires every 30 days." expect_records: path: "integration_tests/expected_records.jsonl" extra_fields: no diff --git a/airbyte-integrations/connectors/source-stripe/integration_tests/abnormal_state.json b/airbyte-integrations/connectors/source-stripe/integration_tests/abnormal_state.json index fa0c3e0dcf85..e34da831b7be 100644 --- a/airbyte-integrations/connectors/source-stripe/integration_tests/abnormal_state.json +++ b/airbyte-integrations/connectors/source-stripe/integration_tests/abnormal_state.json @@ -6,13 +6,6 @@ "stream_descriptor": { "name": "application_fees" } } }, - { - "type": "STREAM", - "stream": { - "stream_state": { "date": 10000000000 }, - "stream_descriptor": { "name": "application_fees_refunds" } - } - }, { "type": "STREAM", "stream": { @@ -69,13 +62,6 @@ "stream_descriptor": { "name": "plans" } } }, - { - "type": "STREAM", - "stream": { - "stream_state": { "created": 10000000000 }, - "stream_descriptor": { "name": "persons" } - } - }, { "type": "STREAM", "stream": { @@ -236,5 +222,61 @@ "stream_state": { "created": 10000000000 }, "stream_descriptor": { "name": "transactions" } } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { "updated": 10000000000 }, + "stream_descriptor": { "name": "application_fees_refunds" } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { "updated": 10000000000 }, + "stream_descriptor": { "name": "bank_accounts" } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { "updated": 10000000000 }, + "stream_descriptor": { "name": "credit_notes" } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { "updated": 10000000000 }, + "stream_descriptor": { "name": "early_fraud_warnings" } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { "updated": 10000000000 }, + "stream_descriptor": { "name": "external_account_bank_accounts" } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { "updated": 10000000000 }, + "stream_descriptor": { "name": "external_account_cards" } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { "updated": 10000000000 }, + "stream_descriptor": { "name": "payment_methods" } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { "updated": 10000000000 }, + "stream_descriptor": { "name": "persons" } + } } ] diff --git a/airbyte-integrations/connectors/source-stripe/integration_tests/configured_catalog.json b/airbyte-integrations/connectors/source-stripe/integration_tests/configured_catalog.json index 31f8336f0ba2..fc3ccb073b53 100644 --- a/airbyte-integrations/connectors/source-stripe/integration_tests/configured_catalog.json +++ b/airbyte-integrations/connectors/source-stripe/integration_tests/configured_catalog.json @@ -4,35 +4,40 @@ "stream": { "name": "accounts", "json_schema": {}, - "supported_sync_modes": ["full_refresh"] + "supported_sync_modes": ["full_refresh"], + "source_defined_primary_key": [["id"]] }, + "primary_key": [["id"]], "sync_mode": "full_refresh", "destination_sync_mode": "overwrite" }, { "stream": { - "name": "application_fees_refunds", + "name": "application_fees", "json_schema": {}, - "supported_sync_modes": ["full_refresh"], + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["updated"], "source_defined_primary_key": [["id"]] }, + "primary_key": [["id"]], + "cursor_field": ["updated"], "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite", - "primary_key": [["id"]] + "destination_sync_mode": "overwrite" }, { "stream": { - "name": "application_fees", + "name": "application_fees_refunds", "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, - "default_cursor_field": ["created"], + "default_cursor_field": ["updated"], "source_defined_primary_key": [["id"]] }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" }, { "stream": { @@ -40,13 +45,13 @@ "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, - "default_cursor_field": ["created"], + "default_cursor_field": ["updated"], "source_defined_primary_key": [["id"]] }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" }, { "stream": { @@ -57,21 +62,38 @@ "default_cursor_field": ["created"], "source_defined_primary_key": [["id"]] }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", + "primary_key": [["id"]], "cursor_field": ["created"], - "primary_key": [["id"]] + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" }, { "stream": { "name": "bank_accounts", "json_schema": {}, - "supported_sync_modes": ["full_refresh"], + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["updated"], + "source_defined_primary_key": [["id"]] + }, + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" + }, + { + "stream": { + "name": "cardholders", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["updated"], "source_defined_primary_key": [["id"]] }, + "primary_key": [["id"]], + "cursor_field": ["updated"], "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite", - "primary_key": [["id"]] + "destination_sync_mode": "overwrite" }, { "stream": { @@ -79,228 +101,287 @@ "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, - "default_cursor_field": ["created"], + "default_cursor_field": ["updated"], "source_defined_primary_key": [["id"]] }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" }, { "stream": { - "name": "cardholders", + "name": "charges", "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, - "default_cursor_field": ["created"], + "default_cursor_field": ["updated"], "source_defined_primary_key": [["id"]] }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" }, { "stream": { - "name": "external_account_bank_accounts", + "name": "checkout_sessions", "json_schema": {}, - "supported_sync_modes": ["full_refresh"], + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["updated"], "source_defined_primary_key": [["id"]] }, + "primary_key": [["id"]], + "cursor_field": ["updated"], "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite", - "primary_key": [["id"]] + "destination_sync_mode": "overwrite" }, { "stream": { - "name": "invoices", + "name": "checkout_sessions_line_items", "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, - "default_cursor_field": ["created"], + "default_cursor_field": ["checkout_session_expires_at"], "source_defined_primary_key": [["id"]] }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] + "primary_key": [["id"]], + "cursor_field": ["checkout_session_expires_at"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" }, { "stream": { - "name": "payment_intents", + "name": "coupons", "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, - "default_cursor_field": ["created"], + "default_cursor_field": ["updated"], "source_defined_primary_key": [["id"]] }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" }, { "stream": { - "name": "payouts", + "name": "credit_notes", "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, - "default_cursor_field": ["created"], + "default_cursor_field": ["updated"], "source_defined_primary_key": [["id"]] }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" }, { "stream": { - "name": "plans", + "name": "customer_balance_transactions", + "json_schema": {}, + "supported_sync_modes": ["full_refresh"], + "source_defined_primary_key": [["id"]] + }, + "primary_key": [["id"]], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" + }, + { + "stream": { + "name": "customers", "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, - "default_cursor_field": ["created"], + "default_cursor_field": ["updated"], "source_defined_primary_key": [["id"]] }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" }, { "stream": { - "name": "prices", + "name": "disputes", "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, - "default_cursor_field": ["created"], + "default_cursor_field": ["updated"], "source_defined_primary_key": [["id"]] }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" }, { "stream": { - "name": "products", + "name": "early_fraud_warnings", "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, - "default_cursor_field": ["created"], + "default_cursor_field": ["updated"], "source_defined_primary_key": [["id"]] }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" }, { "stream": { - "name": "charges", + "name": "events", "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, "default_cursor_field": ["created"], "source_defined_primary_key": [["id"]] }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", + "primary_key": [["id"]], "cursor_field": ["created"], - "primary_key": [["id"]] + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" }, { "stream": { - "name": "checkout_sessions", + "name": "external_account_bank_accounts", "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, - "default_cursor_field": ["expires_at"], + "default_cursor_field": ["updated"], "source_defined_primary_key": [["id"]] }, + "primary_key": [["id"]], + "cursor_field": ["updated"], "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite", - "cursor_field": ["expires_at"], - "primary_key": [["id"]] + "destination_sync_mode": "overwrite" }, { "stream": { - "name": "checkout_sessions_line_items", + "name": "external_account_cards", "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, - "default_cursor_field": ["checkout_session_expires_at"], + "default_cursor_field": ["updated"], "source_defined_primary_key": [["id"]] }, + "primary_key": [["id"]], + "cursor_field": ["updated"], "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite", - "cursor_field": ["checkout_session_expires_at"], - "primary_key": [["id"]] + "destination_sync_mode": "overwrite" }, { "stream": { - "name": "coupons", + "name": "file_links", "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, "default_cursor_field": ["created"], "source_defined_primary_key": [["id"]] }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", + "primary_key": [["id"]], "cursor_field": ["created"], - "primary_key": [["id"]] + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" }, { "stream": { - "name": "shipping_rates", + "name": "files", "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, "default_cursor_field": ["created"], "source_defined_primary_key": [["id"]] }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", + "primary_key": [["id"]], "cursor_field": ["created"], - "primary_key": [["id"]] + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" }, { "stream": { - "name": "subscription_items", + "name": "invoice_items", "json_schema": {}, - "supported_sync_modes": ["full_refresh"], + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["updated"], "source_defined_primary_key": [["id"]] }, + "primary_key": [["id"]], + "cursor_field": ["updated"], "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite", - "primary_key": [["id"]] + "destination_sync_mode": "overwrite" }, { "stream": { - "name": "customer_balance_transactions", + "name": "invoice_line_items", "json_schema": {}, "supported_sync_modes": ["full_refresh"], "source_defined_primary_key": [["id"]] }, + "primary_key": [["id"]], "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite", - "primary_key": [["id"]] + "destination_sync_mode": "overwrite" }, { "stream": { - "name": "files", + "name": "invoices", "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, - "default_cursor_field": ["created"], + "default_cursor_field": ["updated"], "source_defined_primary_key": [["id"]] }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" + }, + { + "stream": { + "name": "payment_intents", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["updated"], + "source_defined_primary_key": [["id"]] + }, + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" + }, + { + "stream": { + "name": "payment_methods", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["updated"], + "source_defined_primary_key": [["id"]] + }, + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" + }, + { + "stream": { + "name": "payouts", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["updated"], + "source_defined_primary_key": [["id"]] + }, + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" }, { "stream": { @@ -308,13 +389,41 @@ "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, - "default_cursor_field": ["created"], + "default_cursor_field": ["updated"], "source_defined_primary_key": [["id"]] }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" + }, + { + "stream": { + "name": "plans", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["updated"], + "source_defined_primary_key": [["id"]] + }, + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" + }, + { + "stream": { + "name": "prices", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["updated"], + "source_defined_primary_key": [["id"]] + }, + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" }, { "stream": { @@ -322,62 +431,162 @@ "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, - "default_cursor_field": ["created"], + "default_cursor_field": ["updated"], "source_defined_primary_key": [["id"]] }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" }, { "stream": { - "name": "file_links", + "name": "promotion_codes", "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, - "default_cursor_field": ["created"], + "default_cursor_field": ["updated"], "source_defined_primary_key": [["id"]] }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" }, { "stream": { - "name": "top_ups", + "name": "refunds", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["updated"], + "source_defined_primary_key": [["id"]] + }, + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" + }, + { + "stream": { + "name": "reviews", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["updated"], + "source_defined_primary_key": [["id"]] + }, + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" + }, + { + "stream": { + "name": "setup_attempts", "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, "default_cursor_field": ["created"], "source_defined_primary_key": [["id"]] }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", + "primary_key": [["id"]], "cursor_field": ["created"], - "primary_key": [["id"]] + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" }, { "stream": { - "name": "setup_attempts", + "name": "setup_intents", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["updated"], + "source_defined_primary_key": [["id"]] + }, + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" + }, + { + "stream": { + "name": "shipping_rates", "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, "default_cursor_field": ["created"], "source_defined_primary_key": [["id"]] }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", + "primary_key": [["id"]], "cursor_field": ["created"], - "primary_key": [["id"]] + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" }, { "stream": { - "name": "usage_records", + "name": "subscription_items", "json_schema": {}, - "supported_sync_modes": ["full_refresh"] + "supported_sync_modes": ["full_refresh"], + "source_defined_primary_key": [["id"]] + }, + "primary_key": [["id"]], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" + }, + { + "stream": { + "name": "subscriptions", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["updated"], + "source_defined_primary_key": [["id"]] + }, + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" + }, + { + "stream": { + "name": "subscription_schedule", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["updated"], + "source_defined_primary_key": [["id"]] + }, + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" + }, + { + "stream": { + "name": "top_ups", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["updated"], + "source_defined_primary_key": [["id"]] + }, + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" + }, + { + "stream": { + "name": "transactions", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["updated"], + "source_defined_primary_key": [["id"]] }, + "primary_key": [["id"]], + "cursor_field": ["updated"], "sync_mode": "full_refresh", "destination_sync_mode": "overwrite" }, @@ -388,27 +597,27 @@ "supported_sync_modes": ["full_refresh"], "source_defined_primary_key": [["id"]] }, + "primary_key": [["id"]], "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite", - "primary_key": [["id"]] + "destination_sync_mode": "overwrite" }, { "stream": { - "name": "transactions", + "name": "transfers", "json_schema": {}, "supported_sync_modes": ["full_refresh", "incremental"], "source_defined_cursor": true, - "default_cursor_field": ["created"], + "default_cursor_field": ["updated"], "source_defined_primary_key": [["id"]] }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] + "primary_key": [["id"]], + "cursor_field": ["updated"], + "sync_mode": "full_refresh", + "destination_sync_mode": "overwrite" }, { "stream": { - "name": "credit_notes", + "name": "usage_records", "json_schema": {}, "supported_sync_modes": ["full_refresh"] }, diff --git a/airbyte-integrations/connectors/source-stripe/integration_tests/connected_account_configured_catalog.json b/airbyte-integrations/connectors/source-stripe/integration_tests/connected_account_configured_catalog.json deleted file mode 100644 index 29700a83523b..000000000000 --- a/airbyte-integrations/connectors/source-stripe/integration_tests/connected_account_configured_catalog.json +++ /dev/null @@ -1,97 +0,0 @@ -{ - "streams": [ - { - "stream": { - "name": "subscriptions", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "default_cursor_field": ["created"], - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] - }, - { - "stream": { - "name": "shipping_rates", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "default_cursor_field": ["created"], - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] - }, - { - "stream": { - "name": "application_fees", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "default_cursor_field": ["created"], - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] - }, - { - "stream": { - "name": "invoices", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "default_cursor_field": ["created"], - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] - }, - { - "stream": { - "name": "early_fraud_warnings", - "json_schema": {}, - "supported_sync_modes": ["full_refresh"] - }, - "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite" - }, - { - "stream": { - "name": "payment_intents", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "default_cursor_field": ["created"], - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "incremental", - "destination_sync_mode": "append", - "cursor_field": ["created"], - "primary_key": [["id"]] - }, - { - "stream": { - "name": "subscription_schedule", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "default_cursor_field": ["created"], - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] - } - ] -} diff --git a/airbyte-integrations/connectors/source-stripe/integration_tests/expected_records.jsonl b/airbyte-integrations/connectors/source-stripe/integration_tests/expected_records.jsonl index 8ca6426f4d31..d699385e28e1 100644 --- a/airbyte-integrations/connectors/source-stripe/integration_tests/expected_records.jsonl +++ b/airbyte-integrations/connectors/source-stripe/integration_tests/expected_records.jsonl @@ -1,58 +1,61 @@ -{"stream": "accounts", "data": {"id": "acct_1Jx8unEYmRTj5on1", "object": "account", "business_profile": {"mcc": null, "name": "Airbyte", "support_address": null, "support_email": null, "support_phone": null, "support_url": null, "url": null}, "capabilities": {}, "charges_enabled": false, "controller": {"type": "account"}, "country": "US", "default_currency": "usd", "details_submitted": false, "email": null, "future_requirements": {"alternatives": [], "current_deadline": null, "currently_due": [], "disabled_reason": null, "errors": [], "eventually_due": [], "past_due": [], "pending_verification": []}, "metadata": {}, "payouts_enabled": false, "requirements": {"alternatives": [], "current_deadline": null, "currently_due": ["business_profile.product_description", "business_profile.support_phone", "business_profile.url", "external_account", "tos_acceptance.date", "tos_acceptance.ip"], "disabled_reason": "requirements.past_due", "errors": [], "eventually_due": ["business_profile.product_description", "business_profile.support_phone", "business_profile.url", "external_account", "tos_acceptance.date", "tos_acceptance.ip"], "past_due": [], "pending_verification": []}, "settings": {"bacs_debit_payments": {}, "branding": {"icon": null, "logo": null, "primary_color": null, "secondary_color": null}, "card_issuing": {"tos_acceptance": {"date": null, "ip": null}}, "card_payments": {"statement_descriptor_prefix": null, "statement_descriptor_prefix_kana": null, "statement_descriptor_prefix_kanji": null}, "dashboard": {"display_name": null, "timezone": "Etc/UTC"}, "payments": {"statement_descriptor": null, "statement_descriptor_kana": null, "statement_descriptor_kanji": null}, "sepa_debit_payments": {}}, "type": "standard"}, "emitted_at": 1689684208922} -{"stream": "accounts", "data": {"id": "acct_1HRPLyCpK2Z3jTFF", "object": "account", "capabilities": {"acss_debit_payments": "inactive", "afterpay_clearpay_payments": "inactive", "bancontact_payments": "inactive", "card_payments": "inactive", "eps_payments": "inactive", "giropay_payments": "inactive", "ideal_payments": "inactive", "p24_payments": "inactive", "sepa_debit_payments": "inactive", "sofort_payments": "inactive", "transfers": "inactive"}, "charges_enabled": false, "country": "US", "default_currency": "usd", "details_submitted": false, "future_requirements": {"alternatives": [], "current_deadline": null, "currently_due": [], "disabled_reason": null, "errors": [], "eventually_due": [], "past_due": [], "pending_verification": []}, "payouts_enabled": false, "requirements": {"alternatives": [], "current_deadline": null, "currently_due": ["business_profile.mcc", "business_profile.product_description", "business_profile.support_phone", "business_profile.url", "external_account", "individual.dob.day", "individual.dob.month", "individual.dob.year", "individual.email", "individual.first_name", "individual.last_name", "individual.phone", "individual.ssn_last_4", "tos_acceptance.date", "tos_acceptance.ip"], "disabled_reason": "requirements.past_due", "errors": [], "eventually_due": ["business_profile.mcc", "business_profile.product_description", "business_profile.support_phone", "business_profile.url", "external_account", "individual.dob.day", "individual.dob.month", "individual.dob.year", "individual.email", "individual.first_name", "individual.last_name", "individual.phone", "individual.ssn_last_4", "tos_acceptance.date", "tos_acceptance.ip"], "past_due": ["business_profile.mcc", "business_profile.product_description", "business_profile.support_phone", "business_profile.url", "external_account", "individual.dob.day", "individual.dob.month", "individual.dob.year", "individual.email", "individual.first_name", "individual.last_name", "individual.phone", "individual.ssn_last_4", "tos_acceptance.date", "tos_acceptance.ip"], "pending_verification": []}, "settings": {"bacs_debit_payments": {}, "branding": {"icon": null, "logo": null, "primary_color": null, "secondary_color": null}, "card_issuing": {"tos_acceptance": {"date": null, "ip": null}}, "card_payments": {"statement_descriptor_prefix": null, "statement_descriptor_prefix_kana": null, "statement_descriptor_prefix_kanji": null}, "dashboard": {"display_name": null, "timezone": "America/Los_Angeles"}, "payments": {"statement_descriptor": null, "statement_descriptor_kana": null, "statement_descriptor_kanji": null}, "sepa_debit_payments": {}}, "type": "standard"}, "emitted_at": 1689684208922} -{"stream": "accounts", "data": {"id": "acct_1MwD6tIyVv44cUB4", "object": "account", "business_profile": {"mcc": null, "name": null, "product_description": null, "support_address": null, "support_email": null, "support_phone": null, "support_url": null, "url": null}, "business_type": null, "capabilities": {"card_payments": "inactive", "transfers": "inactive"}, "charges_enabled": false, "country": "US", "created": 1681342196, "default_currency": "usd", "details_submitted": false, "email": "jenny.rosen@example.com", "external_accounts": {"object": "list", "data": [], "has_more": false, "total_count": 0, "url": "/v1/accounts/acct_1MwD6tIyVv44cUB4/external_accounts"}, "future_requirements": {"alternatives": [], "current_deadline": null, "currently_due": [], "disabled_reason": null, "errors": [], "eventually_due": [], "past_due": [], "pending_verification": []}, "metadata": {}, "payouts_enabled": false, "requirements": {"alternatives": [], "current_deadline": null, "currently_due": ["business_profile.mcc", "business_profile.url", "business_type", "external_account", "representative.first_name", "representative.last_name", "tos_acceptance.date", "tos_acceptance.ip"], "disabled_reason": "requirements.past_due", "errors": [], "eventually_due": ["business_profile.mcc", "business_profile.url", "business_type", "external_account", "representative.first_name", "representative.last_name", "tos_acceptance.date", "tos_acceptance.ip"], "past_due": ["business_profile.mcc", "business_profile.url", "business_type", "external_account", "representative.first_name", "representative.last_name", "tos_acceptance.date", "tos_acceptance.ip"], "pending_verification": []}, "settings": {"bacs_debit_payments": {}, "branding": {"icon": null, "logo": null, "primary_color": null, "secondary_color": null}, "card_issuing": {"tos_acceptance": {"date": null, "ip": null}}, "card_payments": {"decline_on": {"avs_failure": false, "cvc_failure": false}, "statement_descriptor_prefix": null, "statement_descriptor_prefix_kana": null, "statement_descriptor_prefix_kanji": null}, "dashboard": {"display_name": null, "timezone": "Etc/UTC"}, "payments": {"statement_descriptor": null, "statement_descriptor_kana": null, "statement_descriptor_kanji": null}, "payouts": {"debit_negative_balances": false, "schedule": {"delay_days": 2, "interval": "daily"}, "statement_descriptor": null}, "sepa_debit_payments": {}}, "tos_acceptance": {"date": null, "ip": null, "user_agent": null}, "type": "custom"}, "emitted_at": 1689684209297} -{"stream": "balance_transactions", "data": {"id": "txn_1KVQhfEcXtiJtvvhF7ox3YEm", "object": "balance_transaction", "amount": -9164, "available_on": 1645488000, "created": 1645406919, "currency": "usd", "description": "STRIPE PAYOUT", "exchange_rate": null, "fee": 0, "fee_details": [], "net": -9164, "reporting_category": "payout", "source": "po_1KVQhfEcXtiJtvvhZlUkl08U", "status": "available", "type": "payout"}, "emitted_at": 1689684215036} -{"stream": "balance_transactions", "data": {"id": "txn_3K9FSOEcXtiJtvvh0KoS5mx7", "object": "balance_transaction", "amount": 5300, "available_on": 1640649600, "created": 1640120473, "currency": "usd", "description": null, "exchange_rate": null, "fee": 184, "fee_details": [{"amount": 184, "application": null, "currency": "usd", "description": "Stripe processing fees", "type": "stripe_fee"}], "net": 5116, "reporting_category": "charge", "source": "ch_3K9FSOEcXtiJtvvh0zxb7clc", "status": "available", "type": "charge"}, "emitted_at": 1689684215036} -{"stream": "balance_transactions", "data": {"id": "txn_3K9F5DEcXtiJtvvh1qsqmHcH", "object": "balance_transaction", "amount": 4200, "available_on": 1640649600, "created": 1640119035, "currency": "usd", "description": "edgao test", "exchange_rate": null, "fee": 152, "fee_details": [{"amount": 152, "application": null, "currency": "usd", "description": "Stripe processing fees", "type": "stripe_fee"}], "net": 4048, "reporting_category": "charge", "source": "ch_3K9F5DEcXtiJtvvh1w2MaTpj", "status": "available", "type": "charge"}, "emitted_at": 1689684215037} -{"stream": "cardholders", "data": {"id": "ich_1KUKBeEcXtiJtvvhCEFgko6h", "object": "issuing.cardholder", "billing": {"address": {"city": "San Francisco", "country": "US", "line1": "1234 Main Street", "line2": null, "postal_code": "94111", "state": "CA"}}, "company": null, "created": 1645143542, "email": "jenny.rosen@example.com", "individual": null, "livemode": false, "metadata": {}, "name": "Jenny Rosen", "phone_number": "+18888675309", "preferred_locales": [], "requirements": {"disabled_reason": null, "past_due": []}, "spending_controls": {"allowed_categories": [], "blocked_categories": [], "spending_limits": [], "spending_limits_currency": null}, "status": "active", "type": "individual"}, "emitted_at": 1689684219593} -{"stream": "charges", "data": {"id": "ch_3K9FSOEcXtiJtvvh0zxb7clc", "object": "charge", "amount": 5300, "amount_captured": 5300, "amount_refunded": 0, "amount_updates": [], "application": null, "application_fee": null, "application_fee_amount": null, "balance_transaction": "txn_3K9FSOEcXtiJtvvh0KoS5mx7", "billing_details": {"address": {"city": null, "country": null, "line1": null, "line2": null, "postal_code": null, "state": null}, "email": null, "name": null, "phone": null}, "calculated_statement_descriptor": "AIRBYTE.IO", "captured": true, "created": 1640120473, "currency": "usd", "customer": null, "description": null, "destination": null, "dispute": null, "disputed": false, "failure_balance_transaction": null, "failure_code": null, "failure_message": null, "fraud_details": {}, "invoice": null, "livemode": false, "metadata": {}, "on_behalf_of": null, "order": null, "outcome": {"network_status": "approved_by_network", "reason": null, "risk_level": "normal", "risk_score": 48, "seller_message": "Payment complete.", "type": "authorized"}, "paid": true, "payment_intent": "pi_3K9FSOEcXtiJtvvh0AEIFllC", "payment_method": "src_1K9FSOEcXtiJtvvhHGu1qtOx", "payment_method_details": {"card": {"brand": "visa", "checks": {"address_line1_check": null, "address_postal_code_check": null, "cvc_check": "pass"}, "country": "US", "exp_month": 12, "exp_year": 2034, "fingerprint": "X7e9fFB0r8MMcdo6", "funding": "credit", "installments": null, "last4": "4242", "mandate": null, "network": "visa", "network_token": {"used": false}, "three_d_secure": null, "wallet": null}, "type": "card"}, "receipt_email": null, "receipt_number": "1509-9197", "receipt_url": "https://pay.stripe.com/receipts/payment/CAcaFwoVYWNjdF8xSndub2lFY1h0aUp0dnZoKJ6C36UGMgbHNxWFIZs6LBZJopnCEqXAr1eGbMC_s5Z-CjimuY7h3BPBSgA3kwq3H409GQNJ-c_Rq1jL", "refunded": false, "refunds": {"object": "list", "data": [], "has_more": false, "total_count": 0.0, "url": "/v1/charges/ch_3K9FSOEcXtiJtvvh0zxb7clc/refunds"}, "review": null, "shipping": null, "source": {"id": "src_1K9FSOEcXtiJtvvhHGu1qtOx", "object": "source", "amount": null, "card": {"address_line1_check": null, "address_zip_check": null, "brand": "Visa", "country": "US", "cvc_check": "pass", "dynamic_last4": null, "exp_month": 12, "exp_year": 2034, "fingerprint": "X7e9fFB0r8MMcdo6", "funding": "credit", "last4": "4242", "name": null, "three_d_secure": "optional", "tokenization_method": null}, "client_secret": "src_client_secret_3WszbFGtWT8vmMjqnNztOwhU", "created": 1640120473, "currency": null, "flow": "none", "livemode": false, "metadata": {}, "owner": {"address": null, "email": null, "name": null, "phone": null, "verified_address": null, "verified_email": null, "verified_name": null, "verified_phone": null}, "statement_descriptor": null, "status": "consumed", "type": "card", "usage": "reusable"}, "source_transfer": null, "statement_descriptor": "airbyte.io", "statement_descriptor_suffix": null, "status": "succeeded", "transfer_data": null, "transfer_group": null}, "emitted_at": 1689764126216} -{"stream": "charges", "data": {"id": "ch_3K9F5DEcXtiJtvvh1w2MaTpj", "object": "charge", "amount": 4200, "amount_captured": 4200, "amount_refunded": 0, "amount_updates": [], "application": null, "application_fee": null, "application_fee_amount": null, "balance_transaction": "txn_3K9F5DEcXtiJtvvh1qsqmHcH", "billing_details": {"address": {"city": null, "country": null, "line1": null, "line2": null, "postal_code": null, "state": null}, "email": null, "name": null, "phone": null}, "calculated_statement_descriptor": "AIRBYTE.IO", "captured": true, "created": 1640119035, "currency": "usd", "customer": null, "description": "edgao test", "destination": null, "dispute": null, "disputed": false, "failure_balance_transaction": null, "failure_code": null, "failure_message": null, "fraud_details": {}, "invoice": null, "livemode": false, "metadata": {}, "on_behalf_of": null, "order": null, "outcome": {"network_status": "approved_by_network", "reason": null, "risk_level": "normal", "risk_score": 63, "seller_message": "Payment complete.", "type": "authorized"}, "paid": true, "payment_intent": "pi_3K9F5DEcXtiJtvvh16scJMp6", "payment_method": "src_1K9F5CEcXtiJtvvhrsZdur8Y", "payment_method_details": {"card": {"brand": "visa", "checks": {"address_line1_check": null, "address_postal_code_check": null, "cvc_check": "pass"}, "country": "US", "exp_month": 9, "exp_year": 2028, "fingerprint": "X7e9fFB0r8MMcdo6", "funding": "credit", "installments": null, "last4": "4242", "mandate": null, "network": "visa", "network_token": {"used": false}, "three_d_secure": null, "wallet": null}, "type": "card"}, "receipt_email": null, "receipt_number": "1549-5630", "receipt_url": "https://pay.stripe.com/receipts/payment/CAcaFwoVYWNjdF8xSndub2lFY1h0aUp0dnZoKJ6C36UGMgap0zETEvk6LBZ9WiYPxmb7YdOMYue__fsqDfzaiB9KIoJo1the8s2BD-W_hVVO6OkQI4Mu", "refunded": false, "refunds": {"object": "list", "data": [], "has_more": false, "total_count": 0.0, "url": "/v1/charges/ch_3K9F5DEcXtiJtvvh1w2MaTpj/refunds"}, "review": null, "shipping": null, "source": {"id": "src_1K9F5CEcXtiJtvvhrsZdur8Y", "object": "source", "amount": null, "card": {"address_line1_check": null, "address_zip_check": null, "brand": "Visa", "country": "US", "cvc_check": "pass", "dynamic_last4": null, "exp_month": 9, "exp_year": 2028, "fingerprint": "X7e9fFB0r8MMcdo6", "funding": "credit", "last4": "4242", "name": null, "three_d_secure": "optional", "tokenization_method": null}, "client_secret": "src_client_secret_QyH8xuqSyiZh8oxzzIszqQ92", "created": 1640119035, "currency": null, "flow": "none", "livemode": false, "metadata": {}, "owner": {"address": null, "email": null, "name": null, "phone": null, "verified_address": null, "verified_email": null, "verified_name": null, "verified_phone": null}, "statement_descriptor": null, "status": "consumed", "type": "card", "usage": "reusable"}, "source_transfer": null, "statement_descriptor": "airbyte.io", "statement_descriptor_suffix": null, "status": "succeeded", "transfer_data": null, "transfer_group": null}, "emitted_at": 1689764126217} -{"stream": "charges", "data": {"id": "ch_3K9F4mEcXtiJtvvh1kUzxjwN", "object": "charge", "amount": 4200, "amount_captured": 0, "amount_refunded": 0, "amount_updates": [], "application": null, "application_fee": null, "application_fee_amount": null, "balance_transaction": null, "billing_details": {"address": {"city": null, "country": null, "line1": null, "line2": null, "postal_code": null, "state": null}, "email": null, "name": null, "phone": null}, "calculated_statement_descriptor": "AIRBYTE.IO", "captured": false, "created": 1640119009, "currency": "usd", "customer": null, "description": "edgao test", "destination": null, "dispute": null, "disputed": false, "failure_balance_transaction": null, "failure_code": "card_declined", "failure_message": "Your card was declined. Your request was in test mode, but used a non test (live) card. For a list of valid test cards, visit: https://stripe.com/docs/testing.", "fraud_details": {}, "invoice": null, "livemode": false, "metadata": {}, "on_behalf_of": null, "order": null, "outcome": {"network_status": "not_sent_to_network", "reason": "test_mode_live_card", "risk_level": "normal", "risk_score": 6, "seller_message": "This charge request was in test mode, but did not use a Stripe test card number. For the list of these numbers, see stripe.com/docs/testing", "type": "invalid"}, "paid": false, "payment_intent": "pi_3K9F4mEcXtiJtvvh18NKhEuo", "payment_method": "src_1K9F4hEcXtiJtvvhrUEwvCyi", "payment_method_details": {"card": {"brand": "visa", "checks": {"address_line1_check": null, "address_postal_code_check": null, "cvc_check": null}, "country": "US", "exp_month": 9, "exp_year": 2028, "fingerprint": "Re3p4j8issXA77iI", "funding": "credit", "installments": null, "last4": "8097", "mandate": null, "network": "visa", "network_token": {"used": false}, "three_d_secure": null, "wallet": null}, "type": "card"}, "receipt_email": null, "receipt_number": null, "receipt_url": null, "refunded": false, "refunds": {"object": "list", "data": [], "has_more": false, "total_count": 0.0, "url": "/v1/charges/ch_3K9F4mEcXtiJtvvh1kUzxjwN/refunds"}, "review": null, "shipping": null, "source": {"id": "src_1K9F4hEcXtiJtvvhrUEwvCyi", "object": "source", "amount": null, "card": {"address_line1_check": null, "address_zip_check": null, "brand": "Visa", "country": "US", "cvc_check": null, "dynamic_last4": null, "exp_month": 9, "exp_year": 2028, "fingerprint": "Re3p4j8issXA77iI", "funding": "credit", "last4": "8097", "name": null, "three_d_secure": "optional", "tokenization_method": null}, "client_secret": "src_client_secret_b3v8YqNMLGykB120fqv2Tjhq", "created": 1640119009, "currency": null, "flow": "none", "livemode": false, "metadata": {}, "owner": {"address": null, "email": null, "name": null, "phone": null, "verified_address": null, "verified_email": null, "verified_name": null, "verified_phone": null}, "statement_descriptor": null, "status": "consumed", "type": "card", "usage": "reusable"}, "source_transfer": null, "statement_descriptor": "airbyte.io", "statement_descriptor_suffix": null, "status": "failed", "transfer_data": null, "transfer_group": null}, "emitted_at": 1689764126219} -{"stream": "coupons", "data": {"id": "Coupon000001", "object": "coupon", "amount_off": 500, "created": 1675345584, "currency": "usd", "duration": "once", "duration_in_months": null, "livemode": false, "max_redemptions": null, "metadata": {}, "name": "Test Coupon 1", "percent_off": null, "redeem_by": null, "times_redeemed": 1, "valid": true}, "emitted_at": 1689684226504} -{"stream": "coupons", "data": {"id": "4SUEGKZg", "object": "coupon", "amount_off": 200, "created": 1674209030, "currency": "usd", "duration": "repeating", "duration_in_months": 3, "livemode": false, "max_redemptions": null, "metadata": {}, "name": "\u0406\u0435\u043a\u0448\u0437\u0443", "percent_off": null, "redeem_by": null, "times_redeemed": 0, "valid": true}, "emitted_at": 1689684226504} -{"stream": "coupons", "data": {"id": "iJ6qlwM5", "object": "coupon", "amount_off": null, "created": 1674208993, "currency": null, "duration": "forever", "duration_in_months": null, "livemode": false, "max_redemptions": null, "metadata": {}, "name": "\u0415\u0443\u0456\u0435", "percent_off": 10.0, "redeem_by": null, "times_redeemed": 3, "valid": true}, "emitted_at": 1689684226505} -{"stream": "customer_balance_transactions", "data": {"id": "cbtxn_1MX2zPEcXtiJtvvhr4L2D3Q1", "object": "customer_balance_transaction", "amount": -50000.0, "created": 1675345091, "credit_note": null, "currency": "usd", "customer": "cus_NGoTFiJFVbSsvZ", "description": null, "ending_balance": 0.0, "invoice": "in_1MX2yFEcXtiJtvvhMXhUCgKx", "livemode": false, "metadata": {}, "type": "applied_to_invoice"}, "emitted_at": 1689684227663} -{"stream": "customer_balance_transactions", "data": {"id": "cbtxn_1MWIPLEcXtiJtvvhLnQYjVCj", "object": "customer_balance_transaction", "amount": 50000.0, "created": 1675166031, "credit_note": null, "currency": "usd", "customer": "cus_NGoTFiJFVbSsvZ", "description": "Test credit balance", "ending_balance": 50000.0, "invoice": null, "livemode": false, "metadata": {}, "type": "adjustment"}, "emitted_at": 1689684227664} -{"stream": "customers", "data": {"id": "cus_LIiHR6omh14Xdg", "object": "customer", "address": {"city": "san francisco", "country": "US", "line1": "san francisco", "line2": "", "postal_code": "", "state": "CA"}, "balance": 0, "created": 1646998902, "currency": "usd", "default_source": "card_1MSHU1EcXtiJtvvhytSN6V54", "delinquent": false, "description": "test", "discount": null, "email": "test@airbyte_integration_test.com", "invoice_prefix": "09A6A98F", "invoice_settings": {"custom_fields": null, "default_payment_method": null, "footer": null, "rendering_options": null}, "livemode": false, "metadata": {}, "name": "Test", "next_invoice_sequence": 1, "phone": null, "preferred_locales": [], "shipping": {"address": {"city": "", "country": "US", "line1": "", "line2": "", "postal_code": "", "state": ""}, "name": "", "phone": ""}, "tax_exempt": "none", "test_clock": null}, "emitted_at": 1689691086995} -{"stream": "disputes", "data": {"id": "dp_1MSI78EcXtiJtvvhxC77m2kh", "object": "dispute", "amount": 700, "balance_transaction": "txn_1MSI78EcXtiJtvvhAGjxP1UM", "balance_transactions": [{"id": "txn_1MSI78EcXtiJtvvhAGjxP1UM", "object": "balance_transaction", "amount": -700, "available_on": 1674518400, "created": 1674211590, "currency": "usd", "description": "Chargeback withdrawal for ch_3MSI77EcXtiJtvvh1GzoukUC", "exchange_rate": null, "fee": 1500, "fee_details": [{"amount": 1500, "application": null, "currency": "usd", "description": "Dispute fee", "type": "stripe_fee"}], "net": -2200, "reporting_category": "dispute", "source": "dp_1MSI78EcXtiJtvvhxC77m2kh", "status": "available", "type": "adjustment"}], "charge": "ch_3MSI77EcXtiJtvvh1GzoukUC", "created": 1674211590, "currency": "usd", "evidence": {"access_activity_log": null, "billing_address": "12345", "cancellation_policy": null, "cancellation_policy_disclosure": null, "cancellation_rebuttal": null, "customer_communication": null, "customer_email_address": null, "customer_name": null, "customer_purchase_ip": null, "customer_signature": null, "duplicate_charge_documentation": null, "duplicate_charge_explanation": null, "duplicate_charge_id": null, "product_description": null, "receipt": null, "refund_policy": null, "refund_policy_disclosure": null, "refund_refusal_explanation": null, "service_date": null, "service_documentation": null, "shipping_address": null, "shipping_carrier": null, "shipping_date": null, "shipping_documentation": null, "shipping_tracking_number": null, "uncategorized_file": null, "uncategorized_text": null}, "evidence_details": {"due_by": 1675036799.0, "has_evidence": false, "past_due": false, "submission_count": 0}, "is_charge_refundable": false, "livemode": false, "metadata": {}, "payment_intent": "pi_3MSI77EcXtiJtvvh1glmQd8s", "reason": "fraudulent", "status": "lost"}, "emitted_at": 1689691088952} -{"stream": "events", "data": {"id": "evt_1NSrYfEcXtiJtvvhoo4M4yDP", "object": "event", "api_version": "2020-08-27", "created": 1689124173, "data": {"object": {"object": "balance", "available": [{"amount": 513474, "currency": "usd", "source_types": {"card": 513474}}], "connect_reserved": [{"amount": 0, "currency": "usd"}], "issuing": {"available": [{"amount": 150000, "currency": "usd"}]}, "livemode": false, "pending": [{"amount": 0, "currency": "usd", "source_types": {"card": 0}}]}}, "livemode": false, "pending_webhooks": 0, "request": {"id": null, "idempotency_key": null}, "type": "balance.available"}, "emitted_at": 1689691091429} -{"stream": "invoice_items", "data": {"id": "ii_1K9GKLEcXtiJtvvhmr2AYOAx", "object": "invoiceitem", "amount": 8400, "currency": "usd", "customer": "cus_Kou8knsO3qQOwU", "date": 1640123817, "description": "a box of parsnips", "discountable": true, "discounts": [], "invoice": "in_1K9GK0EcXtiJtvvhSo2LvGqT", "livemode": false, "metadata": {}, "period": {"end": 1640123817, "start": 1640123817}, "plan": null, "price": {"id": "price_1K9GKLEcXtiJtvvhXbrg33lq", "object": "price", "active": false, "billing_scheme": "per_unit", "created": 1640123817, "currency": "usd", "custom_unit_amount": null, "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_Kou8cQxtIpF1p7", "recurring": null, "tax_behavior": "unspecified", "tiers_mode": null, "transform_quantity": null, "type": "one_time", "unit_amount": 8400, "unit_amount_decimal": "8400"}, "proration": false, "quantity": 1, "subscription": null, "tax_rates": [], "test_clock": null, "unit_amount": 8400, "unit_amount_decimal": "8400"}, "emitted_at": 1689691092541} -{"stream": "invoice_items", "data": {"id": "ii_1MX384EcXtiJtvvhguyn3iYb", "object": "invoiceitem", "amount": 6000, "currency": "usd", "customer": "cus_NGoTFiJFVbSsvZ", "date": 1675345628, "description": "Test Product 1", "discountable": true, "discounts": ["di_1MX384EcXtiJtvvhkOrY57Ep"], "invoice": "in_1MX37hEcXtiJtvvhRSl1KbQm", "livemode": false, "metadata": {}, "period": {"end": 1675345628, "start": 1675345628}, "plan": null, "price": {"id": "price_1MX364EcXtiJtvvhE3WgTl4O", "object": "price", "active": true, "billing_scheme": "per_unit", "created": 1675345504, "currency": "usd", "custom_unit_amount": null, "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_NHcKselSHfKdfc", "recurring": null, "tax_behavior": "exclusive", "tiers_mode": null, "transform_quantity": null, "type": "one_time", "unit_amount": 2000, "unit_amount_decimal": "2000"}, "proration": false, "quantity": 3, "subscription": null, "tax_rates": [], "test_clock": null, "unit_amount": 2000, "unit_amount_decimal": "2000"}, "emitted_at": 1689691092833} -{"stream": "invoice_items", "data": {"id": "ii_1MX2yfEcXtiJtvvhfhyOG7SP", "object": "invoiceitem", "amount": 25200, "currency": "usd", "customer": "cus_NGoTFiJFVbSsvZ", "date": 1675345045, "description": "edgao-test-product", "discountable": true, "discounts": ["di_1MX2ysEcXtiJtvvh8ORqRVKm"], "invoice": "in_1MX2yFEcXtiJtvvhMXhUCgKx", "livemode": false, "metadata": {}, "period": {"end": 1675345045, "start": 1675345045}, "plan": null, "price": {"id": "price_1K9GbqEcXtiJtvvhJ3lZe4i5", "object": "price", "active": true, "billing_scheme": "per_unit", "created": 1640124902, "currency": "usd", "custom_unit_amount": null, "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_KouQ5ez86yREmB", "recurring": null, "tax_behavior": "inclusive", "tiers_mode": null, "transform_quantity": null, "type": "one_time", "unit_amount": 12600, "unit_amount_decimal": "12600"}, "proration": false, "quantity": 2, "subscription": null, "tax_rates": [], "test_clock": null, "unit_amount": 12600, "unit_amount_decimal": "12600"}, "emitted_at": 1689691092834} -{"stream": "invoice_line_items", "data": {"id": "il_1K9GKLEcXtiJtvvhhHaYMebN", "object": "line_item", "amount": 8400, "amount_excluding_tax": 8400, "currency": "usd", "description": "a box of parsnips", "discount_amounts": [], "discountable": true, "discounts": [], "invoice_item": "ii_1K9GKLEcXtiJtvvhmr2AYOAx", "livemode": false, "metadata": {}, "period": {"end": 1640123817, "start": 1640123817}, "plan": null, "price": {"id": "price_1K9GKLEcXtiJtvvhXbrg33lq", "object": "price", "active": false, "billing_scheme": "per_unit", "created": 1640123817, "currency": "usd", "custom_unit_amount": null, "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_Kou8cQxtIpF1p7", "recurring": null, "tax_behavior": "unspecified", "tiers_mode": null, "transform_quantity": null, "type": "one_time", "unit_amount": 8400, "unit_amount_decimal": "8400"}, "proration": false, "proration_details": {"credited_items": null}, "quantity": 1, "subscription": null, "tax_amounts": [], "tax_rates": [], "type": "invoiceitem", "unit_amount_excluding_tax": "8400", "invoice_id": "in_1K9GK0EcXtiJtvvhSo2LvGqT"}, "emitted_at": 1689691095089} -{"stream": "invoices", "data": {"id": "in_1K9GK0EcXtiJtvvhSo2LvGqT", "object": "invoice", "account_country": "US", "account_name": "Airbyte, Inc.", "account_tax_ids": null, "amount_due": 0, "amount_paid": 0, "amount_remaining": 0, "amount_shipping": 0, "application": null, "application_fee_amount": null, "attempt_count": 0, "attempted": true, "auto_advance": false, "automatic_tax": {"enabled": false, "status": null}, "billing_reason": "manual", "charge": null, "collection_method": "send_invoice", "created": 1640123796, "currency": "usd", "custom_fields": null, "customer": "cus_Kou8knsO3qQOwU", "customer_address": null, "customer_email": "edward.gao+stripe-test-customer-1@airbyte.io", "customer_name": "edgao-test-customer-1", "customer_phone": null, "customer_shipping": null, "customer_tax_exempt": "none", "customer_tax_ids": [], "default_payment_method": null, "default_source": null, "default_tax_rates": [], "description": null, "discount": null, "discounts": [], "due_date": 1688750070.0, "effective_at": 1686158070, "ending_balance": 0, "footer": null, "from_invoice": null, "hosted_invoice_url": "https://invoice.stripe.com/i/acct_1JwnoiEcXtiJtvvh/test_YWNjdF8xSndub2lFY1h0aUp0dnZoLF9Lb3U4bk9YR0lWV3BhN2EzMXZNUFJSaEdXUUVNR1J0LDgwODE4MzQ00200vG3gv95N?s=ap", "invoice_pdf": "https://pay.stripe.com/invoice/acct_1JwnoiEcXtiJtvvh/test_YWNjdF8xSndub2lFY1h0aUp0dnZoLF9Lb3U4bk9YR0lWV3BhN2EzMXZNUFJSaEdXUUVNR1J0LDgwODE4MzQ00200vG3gv95N/pdf?s=ap", "last_finalization_error": null, "latest_revision": null, "lines": {"object": "list", "data": [{"id": "il_1K9GKLEcXtiJtvvhhHaYMebN", "object": "line_item", "amount": 8400, "amount_excluding_tax": 8400, "currency": "usd", "description": "a box of parsnips", "discount_amounts": [], "discountable": true, "discounts": [], "invoice_item": "ii_1K9GKLEcXtiJtvvhmr2AYOAx", "livemode": false, "metadata": {}, "period": {"end": 1640123817, "start": 1640123817}, "plan": null, "price": {"id": "price_1K9GKLEcXtiJtvvhXbrg33lq", "object": "price", "active": false, "billing_scheme": "per_unit", "created": 1640123817, "currency": "usd", "custom_unit_amount": null, "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_Kou8cQxtIpF1p7", "recurring": null, "tax_behavior": "unspecified", "tiers_mode": null, "transform_quantity": null, "type": "one_time", "unit_amount": 8400, "unit_amount_decimal": "8400"}, "proration": false, "proration_details": {"credited_items": null}, "quantity": 1, "subscription": null, "tax_amounts": [], "tax_rates": [], "type": "invoiceitem", "unit_amount_excluding_tax": "8400"}], "has_more": false, "total_count": 1, "url": "/v1/invoices/in_1K9GK0EcXtiJtvvhSo2LvGqT/lines"}, "livemode": false, "metadata": {}, "next_payment_attempt": null, "number": "CA35DF83-0001", "on_behalf_of": null, "paid": true, "paid_out_of_band": false, "payment_intent": null, "payment_settings": {"default_mandate": null, "payment_method_options": null, "payment_method_types": null}, "period_end": 1640123795.0, "period_start": 1640123795.0, "post_payment_credit_notes_amount": 0, "pre_payment_credit_notes_amount": 8400, "quote": null, "receipt_number": null, "rendering_options": null, "shipping_cost": null, "shipping_details": null, "starting_balance": 0, "statement_descriptor": null, "status": "paid", "status_transitions": {"finalized_at": 1686158070, "marked_uncollectible_at": null, "paid_at": 1686158100, "voided_at": null}, "subscription": null, "subtotal": 8400, "subtotal_excluding_tax": 8400, "tax": null, "test_clock": null, "total": 8400, "total_discount_amounts": [], "total_excluding_tax": 8400, "total_tax_amounts": [], "transfer_data": null, "webhooks_delivered_at": 1640123796.0}, "emitted_at": 1690277544798} -{"stream": "payment_intents", "data": {"id": "pi_3K9FSOEcXtiJtvvh0AEIFllC", "object": "payment_intent", "amount": 5300, "amount_capturable": 0, "amount_details": {"tip": {}}, "amount_received": 5300, "application": null, "application_fee_amount": null, "automatic_payment_methods": null, "canceled_at": null, "cancellation_reason": null, "capture_method": "automatic", "client_secret": "pi_3K9FSOEcXtiJtvvh0AEIFllC_secret_uPUtIaSltgtW0qK7mLD0uF2Mr", "confirmation_method": "automatic", "created": 1640120472, "currency": "usd", "customer": null, "description": null, "invoice": null, "last_payment_error": null, "latest_charge": "ch_3K9FSOEcXtiJtvvh0zxb7clc", "livemode": false, "metadata": {}, "next_action": null, "on_behalf_of": null, "payment_method": null, "payment_method_options": {"card": {"installments": null, "mandate_options": null, "network": null, "request_three_d_secure": "automatic"}}, "payment_method_types": ["card"], "processing": null, "receipt_email": null, "review": null, "setup_future_usage": null, "shipping": null, "source": "src_1K9FSOEcXtiJtvvhHGu1qtOx", "statement_descriptor": "airbyte.io", "statement_descriptor_suffix": null, "status": "succeeded", "transfer_data": null, "transfer_group": null}, "emitted_at": 1689691099579} -{"stream": "payment_intents", "data": {"id": "pi_3K9F5DEcXtiJtvvh16scJMp6", "object": "payment_intent", "amount": 4200, "amount_capturable": 0, "amount_details": {"tip": {}}, "amount_received": 4200, "application": null, "application_fee_amount": null, "automatic_payment_methods": null, "canceled_at": null, "cancellation_reason": null, "capture_method": "automatic", "client_secret": "pi_3K9F5DEcXtiJtvvh16scJMp6_secret_YwhzCTpXtfcKYeklXnPnysRRi", "confirmation_method": "automatic", "created": 1640119035, "currency": "usd", "customer": null, "description": "edgao test", "invoice": null, "last_payment_error": null, "latest_charge": "ch_3K9F5DEcXtiJtvvh1w2MaTpj", "livemode": false, "metadata": {}, "next_action": null, "on_behalf_of": null, "payment_method": null, "payment_method_options": {"card": {"installments": null, "mandate_options": null, "network": null, "request_three_d_secure": "automatic"}}, "payment_method_types": ["card"], "processing": null, "receipt_email": null, "review": null, "setup_future_usage": null, "shipping": null, "source": "src_1K9F5CEcXtiJtvvhrsZdur8Y", "statement_descriptor": "airbyte.io", "statement_descriptor_suffix": null, "status": "succeeded", "transfer_data": null, "transfer_group": null}, "emitted_at": 1689691099579} -{"stream": "payment_intents", "data": {"id": "pi_3K9F4mEcXtiJtvvh18NKhEuo", "object": "payment_intent", "amount": 4200, "amount_capturable": 0, "amount_details": {"tip": {}}, "amount_received": 0, "application": null, "application_fee_amount": null, "automatic_payment_methods": null, "canceled_at": null, "cancellation_reason": null, "capture_method": "automatic", "client_secret": "pi_3K9F4mEcXtiJtvvh18NKhEuo_secret_pfUt7CTkPjVdJacycm0bMpdLt", "confirmation_method": "automatic", "created": 1640119008, "currency": "usd", "customer": null, "description": "edgao test", "invoice": null, "last_payment_error": {"charge": "ch_3K9F4mEcXtiJtvvh1kUzxjwN", "code": "card_declined", "decline_code": "test_mode_live_card", "doc_url": "https://stripe.com/docs/error-codes/card-declined", "message": "Your card was declined. Your request was in test mode, but used a non test (live) card. For a list of valid test cards, visit: https://stripe.com/docs/testing.", "source": {"id": "src_1K9F4hEcXtiJtvvhrUEwvCyi", "object": "source", "amount": null, "card": {"address_line1_check": null, "address_zip_check": null, "brand": "Visa", "country": "US", "cvc_check": "unchecked", "dynamic_last4": null, "exp_month": 9, "exp_year": 2028, "fingerprint": "Re3p4j8issXA77iI", "funding": "credit", "last4": "8097", "name": null, "three_d_secure": "optional", "tokenization_method": null}, "client_secret": "src_client_secret_b3v8YqNMLGykB120fqv2Tjhq", "created": 1640119003, "currency": null, "flow": "none", "livemode": false, "metadata": {}, "owner": {"address": null, "email": null, "name": null, "phone": null, "verified_address": null, "verified_email": null, "verified_name": null, "verified_phone": null}, "statement_descriptor": null, "status": "consumed", "type": "card", "usage": "reusable"}, "type": "card_error"}, "latest_charge": "ch_3K9F4mEcXtiJtvvh1kUzxjwN", "livemode": false, "metadata": {}, "next_action": null, "on_behalf_of": null, "payment_method": null, "payment_method_options": {"card": {"installments": null, "mandate_options": null, "network": null, "request_three_d_secure": "automatic"}}, "payment_method_types": ["card"], "processing": null, "receipt_email": null, "review": null, "setup_future_usage": null, "shipping": null, "source": null, "statement_descriptor": "airbyte.io", "statement_descriptor_suffix": null, "status": "requires_payment_method", "transfer_data": null, "transfer_group": null}, "emitted_at": 1689691099580} -{"stream": "payouts", "data": {"id": "po_1KVQhfEcXtiJtvvhZlUkl08U", "object": "payout", "amount": 9164, "arrival_date": 1645488000, "automatic": true, "balance_transaction": "txn_1KVQhfEcXtiJtvvhF7ox3YEm", "created": 1645406919, "currency": "usd", "description": "STRIPE PAYOUT", "destination": "ba_1KUL7UEcXtiJtvvhAEUlStmv", "failure_balance_transaction": null, "failure_code": null, "failure_message": null, "livemode": false, "metadata": {}, "method": "standard", "original_payout": null, "reconciliation_status": "completed", "reversed_by": null, "source_balance": null, "source_type": "card", "statement_descriptor": null, "status": "paid", "type": "bank_account"}, "emitted_at": 1689691101795} -{"stream": "payouts", "data": {"id": "po_1MXKoPEcXtiJtvvhwmqjvKoO", "object": "payout", "amount": 665880, "arrival_date": 1675382400, "automatic": false, "balance_transaction": "txn_1MXKoQEcXtiJtvvh65SHFZS6", "created": 1675413601, "currency": "usd", "description": "", "destination": "ba_1MSI1fEcXtiJtvvhPlqZqPlw", "failure_balance_transaction": null, "failure_code": null, "failure_message": null, "livemode": false, "metadata": {}, "method": "standard", "original_payout": null, "reconciliation_status": "not_applicable", "reversed_by": null, "source_balance": null, "source_type": "card", "statement_descriptor": "airbyte.io", "status": "paid", "type": "bank_account"}, "emitted_at": 1689691102064} -{"stream": "payouts", "data": {"id": "po_1MWHzjEcXtiJtvvhIdUQHhLq", "object": "payout", "amount": 154900, "arrival_date": 1675123200, "automatic": false, "balance_transaction": "txn_1MWHzjEcXtiJtvvhtydemd2Y", "created": 1675164443, "currency": "usd", "description": "Test", "destination": "ba_1MSI1fEcXtiJtvvhPlqZqPlw", "failure_balance_transaction": null, "failure_code": null, "failure_message": null, "livemode": false, "metadata": {}, "method": "standard", "original_payout": null, "reconciliation_status": "not_applicable", "reversed_by": null, "source_balance": "issuing", "source_type": "issuing", "statement_descriptor": "airbyte.io", "status": "paid", "type": "bank_account"}, "emitted_at": 1689691102066} -{"stream": "plans", "data": {"id": "price_1MSHZoEcXtiJtvvh6O8TYD8T", "object": "plan", "active": true, "aggregate_usage": null, "amount": 600, "amount_decimal": "600", "billing_scheme": "per_unit", "created": 1674209524, "currency": "usd", "interval": "month", "interval_count": 1, "livemode": false, "metadata": {}, "nickname": null, "product": "prod_NCgx1XP2IFQyKF", "tiers_mode": null, "transform_usage": null, "trial_period_days": null, "usage_type": "licensed"}, "emitted_at": 1689691103696} -{"stream": "prices", "data": {"id": "price_1K9GbqEcXtiJtvvhJ3lZe4i5", "object": "price", "active": true, "billing_scheme": "per_unit", "created": 1640124902, "currency": "usd", "custom_unit_amount": null, "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_KouQ5ez86yREmB", "recurring": null, "tax_behavior": "inclusive", "tiers_mode": null, "transform_quantity": null, "type": "one_time", "unit_amount": 12600.0, "unit_amount_decimal": "12600"}, "emitted_at": 1690480900454} -{"stream": "prices", "data": {"id": "price_1MX364EcXtiJtvvh6jKcimNL", "object": "price", "active": true, "billing_scheme": "per_unit", "created": 1675345504, "currency": "usd", "custom_unit_amount": null, "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_NHcKselSHfKdfc", "recurring": null, "tax_behavior": "exclusive", "tiers_mode": null, "transform_quantity": null, "type": "one_time", "unit_amount": 1700.0, "unit_amount_decimal": "1700"}, "emitted_at": 1690480900634} -{"stream": "prices", "data": {"id": "price_1MX364EcXtiJtvvhE3WgTl4O", "object": "price", "active": true, "billing_scheme": "per_unit", "created": 1675345504, "currency": "usd", "custom_unit_amount": null, "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_NHcKselSHfKdfc", "recurring": null, "tax_behavior": "exclusive", "tiers_mode": null, "transform_quantity": null, "type": "one_time", "unit_amount": 2000.0, "unit_amount_decimal": "2000"}, "emitted_at": 1690480900634} -{"stream": "products", "data": {"id": "prod_KouQ5ez86yREmB", "object": "product", "active": true, "attributes": [], "created": 1640124902, "default_price": "price_1K9GbqEcXtiJtvvhJ3lZe4i5", "description": null, "images": [], "livemode": false, "metadata": {}, "name": "edgao-test-product", "package_dimensions": null, "shippable": null, "statement_descriptor": null, "tax_code": "txcd_10000000", "type": "service", "unit_label": null, "updated": 1675345058, "url": null}, "emitted_at": 1689684235151} -{"stream": "products", "data": {"id": "prod_NHcKselSHfKdfc", "object": "product", "active": true, "attributes": [], "created": 1675345504, "default_price": "price_1MX364EcXtiJtvvhE3WgTl4O", "description": "Test Product 1 description", "images": ["https://files.stripe.com/links/MDB8YWNjdF8xSndub2lFY1h0aUp0dnZofGZsX3Rlc3RfdjBOT09UaHRiNVl2WmJ6clNYRUlmcFFD00cCBRNHnV"], "livemode": false, "metadata": {}, "name": "Test Product 1", "package_dimensions": null, "shippable": null, "statement_descriptor": null, "tax_code": "txcd_10301000", "type": "service", "unit_label": null, "updated": 1675345505, "url": null}, "emitted_at": 1689684235408} -{"stream": "products", "data": {"id": "prod_NCgx1XP2IFQyKF", "object": "product", "active": true, "attributes": [], "created": 1674209524, "default_price": null, "description": null, "images": [], "livemode": false, "metadata": {}, "name": "tu", "package_dimensions": null, "shippable": null, "statement_descriptor": null, "tax_code": "txcd_10000000", "type": "service", "unit_label": null, "updated": 1674209524, "url": null}, "emitted_at": 1689684235411} -{"stream": "promotion_codes", "data": {"id": "promo_1MVtmyEcXtiJtvvhkV5jPFPU", "object": "promotion_code", "active": true, "code": "g20", "coupon": {"id": "iJ6qlwM5", "object": "coupon", "amount_off": null, "created": 1674208993, "currency": null, "duration": "forever", "duration_in_months": null, "livemode": false, "max_redemptions": null, "metadata": {}, "name": "\u0415\u0443\u0456\u0435", "percent_off": 10.0, "redeem_by": null, "times_redeemed": 3, "valid": true}, "created": 1675071396, "customer": null, "expires_at": null, "livemode": false, "max_redemptions": null, "metadata": {}, "restrictions": {"first_time_transaction": false, "minimum_amount": null, "minimum_amount_currency": null}, "times_redeemed": 0}, "emitted_at": 1689691105334} -{"stream": "promotion_codes", "data": {"id": "promo_1MVtmkEcXtiJtvvht0RA3MKg", "object": "promotion_code", "active": true, "code": "FRIENDS20", "coupon": {"id": "iJ6qlwM5", "object": "coupon", "amount_off": null, "created": 1674208993, "currency": null, "duration": "forever", "duration_in_months": null, "livemode": false, "max_redemptions": null, "metadata": {}, "name": "\u0415\u0443\u0456\u0435", "percent_off": 10.0, "redeem_by": null, "times_redeemed": 3, "valid": true}, "created": 1675071382, "customer": null, "expires_at": null, "livemode": false, "max_redemptions": null, "metadata": {}, "restrictions": {"first_time_transaction": true, "minimum_amount": 10000, "minimum_amount_currency": "usd"}, "times_redeemed": 0}, "emitted_at": 1689691105335} -{"stream": "refunds", "data": {"id": "re_3MVuZyEcXtiJtvvh0A6rSbeJ", "object": "refund", "amount": 200000, "balance_transaction": "txn_3MVuZyEcXtiJtvvh0v0QyAMx", "charge": "ch_3MVuZyEcXtiJtvvh0tiVC7DI", "created": 1675074488, "currency": "usd", "metadata": {}, "payment_intent": "pi_3MVuZyEcXtiJtvvh07Ehi4cx", "reason": "fraudulent", "receipt_number": "3278-5368", "source_transfer_reversal": null, "status": "succeeded", "transfer_reversal": null}, "emitted_at": 1689691106971} -{"stream": "subscription_items", "data": {"id": "si_O2toUlN7ELjLcM", "object": "subscription_item", "billing_thresholds": null, "created": 1686250591, "metadata": {}, "plan": {"id": "price_1MSHZoEcXtiJtvvh6O8TYD8T", "object": "plan", "active": true, "aggregate_usage": null, "amount": 600, "amount_decimal": "600", "billing_scheme": "per_unit", "created": 1674209524, "currency": "usd", "interval": "month", "interval_count": 1, "livemode": false, "metadata": {}, "nickname": null, "product": "prod_NCgx1XP2IFQyKF", "tiers_mode": null, "transform_usage": null, "trial_period_days": null, "usage_type": "licensed"}, "price": {"id": "price_1MSHZoEcXtiJtvvh6O8TYD8T", "object": "price", "active": true, "billing_scheme": "per_unit", "created": 1674209524, "currency": "usd", "custom_unit_amount": null, "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_NCgx1XP2IFQyKF", "recurring": {"aggregate_usage": null, "interval": "month", "interval_count": 1, "trial_period_days": null, "usage_type": "licensed"}, "tax_behavior": "exclusive", "tiers_mode": null, "transform_quantity": null, "type": "recurring", "unit_amount": 600, "unit_amount_decimal": "600"}, "quantity": 1, "subscription": "sub_1NGo0YEcXtiJtvvh9rKhuT2H", "tax_rates": []}, "emitted_at": 1689691109493} -{"stream": "subscriptions", "data": {"id": "sub_1NGo0YEcXtiJtvvh9rKhuT2H", "object": "subscription", "application": null, "application_fee_percent": null, "automatic_tax": {"enabled": true}, "billing_cycle_anchor": 1686250590.0, "billing_thresholds": null, "cancel_at": null, "cancel_at_period_end": false, "canceled_at": null, "cancellation_details": {"comment": null, "feedback": null, "reason": null}, "collection_method": "charge_automatically", "created": 1686250590, "currency": "usd", "current_period_end": 1691520990.0, "current_period_start": 1688842590, "customer": "cus_O2topVBsfeTMXg", "days_until_due": null, "default_payment_method": "pm_1NGo0XEcXtiJtvvhZosRvz8G", "default_source": null, "default_tax_rates": [], "description": null, "discount": null, "ended_at": null, "items": {"object": "list", "data": [{"id": "si_O2toUlN7ELjLcM", "object": "subscription_item", "billing_thresholds": null, "created": 1686250591, "metadata": {}, "plan": {"id": "price_1MSHZoEcXtiJtvvh6O8TYD8T", "object": "plan", "active": true, "aggregate_usage": null, "amount": 600, "amount_decimal": "600", "billing_scheme": "per_unit", "created": 1674209524, "currency": "usd", "interval": "month", "interval_count": 1, "livemode": false, "metadata": {}, "nickname": null, "product": "prod_NCgx1XP2IFQyKF", "tiers_mode": null, "transform_usage": null, "trial_period_days": null, "usage_type": "licensed"}, "price": {"id": "price_1MSHZoEcXtiJtvvh6O8TYD8T", "object": "price", "active": true, "billing_scheme": "per_unit", "created": 1674209524, "currency": "usd", "custom_unit_amount": null, "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_NCgx1XP2IFQyKF", "recurring": {"aggregate_usage": null, "interval": "month", "interval_count": 1, "trial_period_days": null, "usage_type": "licensed"}, "tax_behavior": "exclusive", "tiers_mode": null, "transform_quantity": null, "type": "recurring", "unit_amount": 600, "unit_amount_decimal": "600"}, "quantity": 1, "subscription": "sub_1NGo0YEcXtiJtvvh9rKhuT2H", "tax_rates": []}], "has_more": false, "total_count": 1.0, "url": "/v1/subscription_items?subscription=sub_1NGo0YEcXtiJtvvh9rKhuT2H"}, "latest_invoice": "in_1NRgM1EcXtiJtvvhQT20qPcf", "livemode": false, "metadata": {}, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": {"payment_method_options": null, "payment_method_types": null, "save_default_payment_method": "off"}, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "plan": {"id": "price_1MSHZoEcXtiJtvvh6O8TYD8T", "object": "plan", "active": true, "aggregate_usage": null, "amount": 600, "amount_decimal": "600", "billing_scheme": "per_unit", "created": 1674209524, "currency": "usd", "interval": "month", "interval_count": 1, "livemode": false, "metadata": {}, "nickname": null, "product": "prod_NCgx1XP2IFQyKF", "tiers_mode": null, "transform_usage": null, "trial_period_days": null, "usage_type": "licensed"}, "quantity": 1, "schedule": null, "start_date": 1686250590, "status": "active", "test_clock": null, "transfer_data": null, "trial_end": null, "trial_settings": {"end_behavior": {"missing_payment_method": "create_invoice"}}, "trial_start": null}, "emitted_at": 1689691110777} -{"stream": "subscription_schedule", "data": {"id": "sub_sched_1NGRenEcXtiJtvvhmM4eGaJN", "object": "subscription_schedule", "application": null, "canceled_at": null, "completed_at": null, "created": 1686164673, "current_phase": {"end_date": 1717787073, "start_date": 1686164673}, "customer": "cus_NGoTFiJFVbSsvZ", "default_settings": {"application_fee_percent": null, "automatic_tax": {"enabled": false}, "billing_cycle_anchor": "automatic", "billing_thresholds": null, "collection_method": "charge_automatically", "default_payment_method": null, "default_source": null, "description": null, "invoice_settings": null, "on_behalf_of": null, "transfer_data": null}, "end_behavior": "cancel", "livemode": false, "metadata": {}, "phases": [{"add_invoice_items": [], "application_fee_percent": null, "automatic_tax": {"enabled": true}, "billing_cycle_anchor": null, "billing_thresholds": null, "collection_method": null, "coupon": null, "currency": "usd", "default_payment_method": null, "default_tax_rates": [], "description": null, "end_date": 1717787073, "invoice_settings": "{'days_until_due': None}", "items": [{"billing_thresholds": null, "metadata": {}, "plan": "price_1MSHZoEcXtiJtvvh6O8TYD8T", "price": "price_1MSHZoEcXtiJtvvh6O8TYD8T", "quantity": 1, "tax_rates": []}], "metadata": {}, "on_behalf_of": null, "proration_behavior": "create_prorations", "start_date": 1686164673, "transfer_data": null, "trial_end": null}, {"add_invoice_items": [], "application_fee_percent": null, "automatic_tax": {"enabled": true}, "billing_cycle_anchor": null, "billing_thresholds": null, "collection_method": null, "coupon": null, "currency": "usd", "default_payment_method": null, "default_tax_rates": [], "description": null, "end_date": 1749323073, "invoice_settings": "{'days_until_due': None}", "items": [{"billing_thresholds": null, "metadata": {}, "plan": "price_1MSHZoEcXtiJtvvh6O8TYD8T", "price": "price_1MSHZoEcXtiJtvvh6O8TYD8T", "quantity": 1, "tax_rates": []}], "metadata": {}, "on_behalf_of": null, "proration_behavior": "create_prorations", "start_date": 1717787073, "transfer_data": null, "trial_end": null}], "released_at": null, "released_subscription": null, "renewal_interval": null, "status": "active", "subscription": "sub_1NGReoEcXtiJtvvhq6goDeqt", "test_clock": null}, "emitted_at": 1689691112514} -{"stream": "setup_intents", "data": {"id": "seti_1KnfIjEcXtiJtvvhPw5znVKY", "object": "setup_intent", "application": null, "automatic_payment_methods": null, "cancellation_reason": null, "client_secret": "seti_1KnfIjEcXtiJtvvhPw5znVKY_secret_LUebPsqMz6AF4ivxIg4LMaAT0OdZF5L", "created": 1649752937, "customer": null, "description": null, "flow_directions": null, "last_setup_error": null, "latest_attempt": "setatt_1KnfIjEcXtiJtvvhqDfSlpM4", "livemode": false, "mandate": null, "metadata": {}, "next_action": null, "on_behalf_of": null, "payment_method": "pm_1KnfIj2eZvKYlo2CAlv2Vhqc", "payment_method_options": {"acss_debit": {"currency": "cad", "mandate_options": {"interval_description": "First day of every month", "payment_schedule": "interval", "transaction_type": "personal"}, "verification_method": "automatic"}}, "payment_method_types": ["acss_debit"], "single_use_mandate": null, "status": "succeeded", "usage": "off_session"}, "emitted_at": 1689691114375} -{"stream": "setup_intents", "data": {"id": "seti_1KnfIcEcXtiJtvvh61qlCaDf", "object": "setup_intent", "application": null, "automatic_payment_methods": null, "cancellation_reason": null, "client_secret": "seti_1KnfIcEcXtiJtvvh61qlCaDf_secret_LUebcbyw8V1e8Pxk3aAjzDXMOXdFMCe", "created": 1649752930, "customer": null, "description": null, "flow_directions": null, "last_setup_error": null, "latest_attempt": "setatt_1KnfIdEcXtiJtvvhpDrYVlRP", "livemode": false, "mandate": null, "metadata": {}, "next_action": null, "on_behalf_of": null, "payment_method": "pm_1KnfIc2eZvKYlo2Civ7snSPy", "payment_method_options": {"acss_debit": {"currency": "cad", "mandate_options": {"interval_description": "First day of every month", "payment_schedule": "interval", "transaction_type": "personal"}, "verification_method": "automatic"}}, "payment_method_types": ["acss_debit"], "single_use_mandate": null, "status": "succeeded", "usage": "off_session"}, "emitted_at": 1689691114377} -{"stream": "setup_intents", "data": {"id": "seti_1KnfIVEcXtiJtvvhWiIbMkpH", "object": "setup_intent", "application": null, "automatic_payment_methods": null, "cancellation_reason": null, "client_secret": "seti_1KnfIVEcXtiJtvvhWiIbMkpH_secret_LUebIUsiFnm75EzDUzf2RLhJ9WQ92Dp", "created": 1649752923, "customer": null, "description": null, "flow_directions": null, "last_setup_error": null, "latest_attempt": "setatt_1KnfIVEcXtiJtvvhqouWGuhD", "livemode": false, "mandate": null, "metadata": {}, "next_action": null, "on_behalf_of": null, "payment_method": "pm_1KnfIV2eZvKYlo2CaOLGBF00", "payment_method_options": {"acss_debit": {"currency": "cad", "mandate_options": {"interval_description": "First day of every month", "payment_schedule": "interval", "transaction_type": "personal"}, "verification_method": "automatic"}}, "payment_method_types": ["acss_debit"], "single_use_mandate": null, "status": "succeeded", "usage": "off_session"}, "emitted_at": 1689691114378} -{"stream": "shipping_rates", "data": {"id": "shr_1NXgplEcXtiJtvvhA1ntV782", "object": "shipping_rate", "active": true, "created": 1690274589, "delivery_estimate": "{'maximum': {'unit': 'business_day', 'value': 14}, 'minimum': {'unit': 'business_day', 'value': 10}}", "display_name": "Test Ground Shipping", "fixed_amount": {"amount": 999, "currency": "usd"}, "livemode": false, "metadata": {}, "tax_behavior": "inclusive", "tax_code": "txcd_92010001", "type": "fixed_amount"}, "emitted_at": 1690274706704} -{"stream": "credit_notes", "data": {"id": "cn_1NGPwmEcXtiJtvvhNXwHpgJF", "object": "credit_note", "amount": 8400, "amount_shipping": 0, "created": 1686158100, "currency": "usd", "customer": "cus_Kou8knsO3qQOwU", "customer_balance_transaction": null, "discount_amount": "0", "discount_amounts": [], "effective_at": 1686158100, "invoice": "in_1K9GK0EcXtiJtvvhSo2LvGqT", "lines": {"object": "list", "data": [{"id": "cnli_1NGPwmEcXtiJtvvhcL7yEIBJ", "object": "credit_note_line_item", "amount": 8400, "amount_excluding_tax": 8400, "description": "a box of parsnips", "discount_amount": 0, "discount_amounts": [], "invoice_line_item": "il_1K9GKLEcXtiJtvvhhHaYMebN", "livemode": false, "quantity": 1, "tax_amounts": [], "tax_rates": [], "type": "invoice_line_item", "unit_amount": 8400, "unit_amount_decimal": 8400.0, "unit_amount_excluding_tax": 8400.0}], "has_more": false, "url": "/v1/credit_notes/cn_1NGPwmEcXtiJtvvhNXwHpgJF/lines"}, "livemode": false, "memo": null, "metadata": {}, "number": "CA35DF83-0001-CN-01", "out_of_band_amount": null, "pdf": "https://pay.stripe.com/credit_notes/acct_1JwnoiEcXtiJtvvh/test_YWNjdF8xSndub2lFY1h0aUp0dnZoLF9PMlV3dFlJelh4NHM1R0VIWnhMR3RjWUtlejFlRWtILDgwODIyOTk50200TyP0Z9BQ/pdf?s=ap", "reason": null, "refund": null, "shipping_cost": null, "status": "issued", "subtotal": 8400, "subtotal_excluding_tax": 8400, "tax_amounts": [], "total": 8400, "total_excluding_tax": 8400, "type": "pre_payment", "voided_at": null}, "emitted_at": 1690282199229} -{"stream": "top_ups", "data": {"id": "tu_1MXKmvEcXtiJtvvhAbDiH3sm", "object": "topup", "amount": 100000, "balance_transaction": null, "created": 1675413509, "currency": "usd", "description": "Test test", "destination_balance": null, "expected_availability_date": 1675413509, "failure_code": "R03", "failure_message": "no_account", "livemode": false, "metadata": {}, "source": {"id": "src_1MXKmvEcXtiJtvvhV0fY3ZBF", "object": "source", "ach_debit": {"bank_name": "STRIPE TEST BANK", "country": "US", "fingerprint": "KUgiD3MWWaMMufNe", "last4": "1116", "routing_number": "110000000", "type": "individual"}, "amount": null, "client_secret": "src_client_secret_qghd0H1WkqAuSDuJBrYBSfD6", "code_verification": {"attempts_remaining": 3, "status": "succeeded"}, "created": 1675413509, "currency": "usd", "flow": "code_verification", "livemode": false, "metadata": {}, "owner": {"address": {"city": null, "country": "US", "line1": null, "line2": null, "postal_code": null, "state": null}, "email": null, "name": "Jenny Rosen", "phone": null, "verified_address": null, "verified_email": null, "verified_name": null, "verified_phone": null}, "statement_descriptor": null, "status": "chargeable", "type": "ach_debit", "usage": "reusable"}, "statement_descriptor": "Test", "status": "failed", "transfer_group": null}, "emitted_at": 1689684238843} -{"stream": "files", "data": {"id": "file_1Jx65GEcXtiJtvvhxZSXTW0X", "object": "file", "created": 1637224506, "expires_at": null, "filename": "1200x1200 logo.png", "links": {"object": "list", "data": [{"id": "link_1Jx65KEcXtiJtvvhtzDKT46T", "object": "file_link", "created": 1637224510, "expired": 0, "expires_at": null, "file": "file_1Jx65GEcXtiJtvvhxZSXTW0X", "livemode": false, "metadata": {}, "url": "https://files.stripe.com/links/MDB8YWNjdF8xSndub2lFY1h0aUp0dnZofGZsX3Rlc3RfS0VrR1lkejVjaTFlNmpuMUNHYmFkYmVT00UG0pCDcI"}, {"id": "link_1Jx65HEcXtiJtvvhJxpyHQyb", "object": "file_link", "created": 1637224507, "expired": 0, "expires_at": null, "file": "file_1Jx65GEcXtiJtvvhxZSXTW0X", "livemode": false, "metadata": {}, "url": "https://files.stripe.com/links/MDB8YWNjdF8xSndub2lFY1h0aUp0dnZofGZsX3Rlc3RfdTlISjJ4UzM3QUlVa3M4cDdGRm9HWEUz00YHXUch3u"}], "has_more": false, "url": "/v1/file_links?file=file_1Jx65GEcXtiJtvvhxZSXTW0X"}, "purpose": "business_logo", "size": 188116, "title": null, "type": "png", "url": "https://files.stripe.com/v1/files/file_1Jx65GEcXtiJtvvhxZSXTW0X/contents"}, "emitted_at": 1689684229233} -{"stream": "file_links", "data": {"id": "link_1KnfIiEcXtiJtvvhCNceSyei", "object": "file_link", "created": 1649752936, "expired": false, "expires_at": null, "file": "file_1Jx631EcXtiJtvvh9J1J59wL", "livemode": false, "metadata": {}, "url": "https://files.stripe.com/links/MDB8YWNjdF8xSndub2lFY1h0aUp0dnZofGZsX3Rlc3RfY1FvanBFTmt0dUdrRWJXTHBpUlVYVUtu007305bsv3"}, "emitted_at": 1689684236617} -{"stream": "setup_attempts", "data": {"id": "setatt_1KnfIjEcXtiJtvvhqDfSlpM4", "object": "setup_attempt", "application": null, "created": 1649752937, "customer": null, "flow_directions": null, "livemode": false, "on_behalf_of": null, "payment_method": "pm_1KnfIj2eZvKYlo2CAlv2Vhqc", "payment_method_details": {"acss_debit": {}, "type": "acss_debit"}, "setup_error": null, "setup_intent": "seti_1KnfIjEcXtiJtvvhPw5znVKY", "status": "succeeded", "usage": "off_session"}, "emitted_at": 1689684241319} -{"stream": "setup_attempts", "data": {"id": "setatt_1KnfIdEcXtiJtvvhpDrYVlRP", "object": "setup_attempt", "application": null, "created": 1649752931, "customer": null, "flow_directions": null, "livemode": false, "on_behalf_of": null, "payment_method": "pm_1KnfIc2eZvKYlo2Civ7snSPy", "payment_method_details": {"acss_debit": {}, "type": "acss_debit"}, "setup_error": null, "setup_intent": "seti_1KnfIcEcXtiJtvvh61qlCaDf", "status": "succeeded", "usage": "off_session"}, "emitted_at": 1689684242319} -{"stream": "setup_attempts", "data": {"id": "setatt_1KnfIVEcXtiJtvvhqouWGuhD", "object": "setup_attempt", "application": null, "created": 1649752923, "customer": null, "flow_directions": null, "livemode": false, "on_behalf_of": null, "payment_method": "pm_1KnfIV2eZvKYlo2CaOLGBF00", "payment_method_details": {"acss_debit": {}, "type": "acss_debit"}, "setup_error": null, "setup_intent": "seti_1KnfIVEcXtiJtvvhWiIbMkpH", "status": "succeeded", "usage": "off_session"}, "emitted_at": 1689684243299} -{"stream": "usage_records", "data": {"id": "sis_1NVDGQEcXtiJtvvhMFxjewz0", "object": "usage_record_summary", "invoice": null, "livemode": false, "period": {"end": null, "start": null}, "subscription_item": "si_O2toUlN7ELjLcM", "total_usage": 1}, "emitted_at": 1689684267054} -{"stream": "usage_records", "data": {"id": "sis_1NVDGREcXtiJtvvhoIIYCISg", "object": "usage_record_summary", "invoice": null, "livemode": false, "period": {"end": null, "start": null}, "subscription_item": "si_O2WiEt5xsnTylQ", "total_usage": 1}, "emitted_at": 1689684267303} -{"stream": "usage_records", "data": {"id": "sis_1NVDGREcXtiJtvvhlkyGWg6j", "object": "usage_record_summary", "invoice": null, "livemode": false, "period": {"end": null, "start": null}, "subscription_item": "si_O2WdoFASN6MHzF", "total_usage": 1}, "emitted_at": 1689684267550} -{"stream": "usage_records", "data": {"id": "sis_1NVDGREcXtiJtvvhx53SMf1G", "object": "usage_record_summary", "invoice": null, "livemode": false, "period": {"end": null, "start": null}, "subscription_item": "si_O2WZCuG0IxqQHl", "total_usage": 1}, "emitted_at": 1689684267794} -{"stream": "transfer_reversals", "data": {"id": "trr_1NGolCEcXtiJtvvhOYPck3CP", "object": "transfer_reversal", "amount": 100, "balance_transaction": "txn_1NGolCEcXtiJtvvhZRy4Kd5S", "created": 1686253482, "currency": "usd", "destination_payment_refund": "pyr_1NGolBEYmRTj5on1STal3rmp", "metadata": {}, "source_refund": null, "transfer": "tr_1NGoaCEcXtiJtvvhjmHtOGOm"}, "emitted_at": 1689684270142} +{"stream": "accounts", "data": {"id": "acct_1Jx8unEYmRTj5on1", "object": "account", "business_profile": {"mcc": null, "name": "Airbyte", "support_address": null, "support_email": null, "support_phone": null, "support_url": null, "url": null}, "capabilities": {}, "charges_enabled": false, "controller": {"type": "account"}, "country": "US", "default_currency": "usd", "details_submitted": false, "email": null, "future_requirements": {"alternatives": [], "current_deadline": null, "currently_due": [], "disabled_reason": null, "errors": [], "eventually_due": [], "past_due": [], "pending_verification": []}, "metadata": {}, "payouts_enabled": false, "requirements": {"alternatives": [], "current_deadline": null, "currently_due": ["business_profile.product_description", "business_profile.support_phone", "business_profile.url", "external_account", "tos_acceptance.date", "tos_acceptance.ip"], "disabled_reason": "requirements.past_due", "errors": [], "eventually_due": ["business_profile.product_description", "business_profile.support_phone", "business_profile.url", "external_account", "tos_acceptance.date", "tos_acceptance.ip"], "past_due": [], "pending_verification": []}, "settings": {"bacs_debit_payments": {}, "branding": {"icon": null, "logo": null, "primary_color": null, "secondary_color": null}, "card_issuing": {"tos_acceptance": {"date": null, "ip": null}}, "card_payments": {"statement_descriptor_prefix": null, "statement_descriptor_prefix_kana": null, "statement_descriptor_prefix_kanji": null}, "dashboard": {"display_name": null, "timezone": "Etc/UTC"}, "payments": {"statement_descriptor": null, "statement_descriptor_kana": null, "statement_descriptor_kanji": null}, "sepa_debit_payments": {}}, "type": "standard"}, "emitted_at": 1691675182553} +{"stream": "accounts", "data": {"id": "acct_1HRPLyCpK2Z3jTFF", "object": "account", "capabilities": {"acss_debit_payments": "inactive", "afterpay_clearpay_payments": "inactive", "bancontact_payments": "inactive", "card_payments": "inactive", "eps_payments": "inactive", "giropay_payments": "inactive", "ideal_payments": "inactive", "p24_payments": "inactive", "sepa_debit_payments": "inactive", "sofort_payments": "inactive", "transfers": "inactive"}, "charges_enabled": false, "country": "US", "default_currency": "usd", "details_submitted": false, "future_requirements": {"alternatives": [], "current_deadline": null, "currently_due": [], "disabled_reason": null, "errors": [], "eventually_due": [], "past_due": [], "pending_verification": []}, "payouts_enabled": false, "requirements": {"alternatives": [], "current_deadline": null, "currently_due": ["business_profile.mcc", "business_profile.product_description", "business_profile.support_phone", "business_profile.url", "external_account", "individual.dob.day", "individual.dob.month", "individual.dob.year", "individual.email", "individual.first_name", "individual.last_name", "individual.phone", "individual.ssn_last_4", "tos_acceptance.date", "tos_acceptance.ip"], "disabled_reason": "requirements.past_due", "errors": [], "eventually_due": ["business_profile.mcc", "business_profile.product_description", "business_profile.support_phone", "business_profile.url", "external_account", "individual.dob.day", "individual.dob.month", "individual.dob.year", "individual.email", "individual.first_name", "individual.last_name", "individual.phone", "individual.ssn_last_4", "tos_acceptance.date", "tos_acceptance.ip"], "past_due": ["business_profile.mcc", "business_profile.product_description", "business_profile.support_phone", "business_profile.url", "external_account", "individual.dob.day", "individual.dob.month", "individual.dob.year", "individual.email", "individual.first_name", "individual.last_name", "individual.phone", "individual.ssn_last_4", "tos_acceptance.date", "tos_acceptance.ip"], "pending_verification": []}, "settings": {"bacs_debit_payments": {}, "branding": {"icon": null, "logo": null, "primary_color": null, "secondary_color": null}, "card_issuing": {"tos_acceptance": {"date": null, "ip": null}}, "card_payments": {"statement_descriptor_prefix": null, "statement_descriptor_prefix_kana": null, "statement_descriptor_prefix_kanji": null}, "dashboard": {"display_name": null, "timezone": "America/Los_Angeles"}, "payments": {"statement_descriptor": null, "statement_descriptor_kana": null, "statement_descriptor_kanji": null}, "sepa_debit_payments": {}}, "type": "standard"}, "emitted_at": 1691675182554} +{"stream": "accounts", "data": {"id": "acct_1MwD6tIyVv44cUB4", "object": "account", "business_profile": {"mcc": null, "name": null, "product_description": null, "support_address": null, "support_email": null, "support_phone": null, "support_url": null, "url": null}, "business_type": null, "capabilities": {"card_payments": "inactive", "transfers": "inactive"}, "charges_enabled": false, "country": "US", "created": 1681342196, "default_currency": "usd", "details_submitted": false, "email": "jenny.rosen@example.com", "external_accounts": {"object": "list", "data": [], "has_more": false, "total_count": 0, "url": "/v1/accounts/acct_1MwD6tIyVv44cUB4/external_accounts"}, "future_requirements": {"alternatives": [], "current_deadline": null, "currently_due": [], "disabled_reason": null, "errors": [], "eventually_due": [], "past_due": [], "pending_verification": []}, "metadata": {}, "payouts_enabled": false, "requirements": {"alternatives": [], "current_deadline": null, "currently_due": ["business_profile.mcc", "business_profile.url", "business_type", "external_account", "representative.first_name", "representative.last_name", "tos_acceptance.date", "tos_acceptance.ip"], "disabled_reason": "requirements.past_due", "errors": [], "eventually_due": ["business_profile.mcc", "business_profile.url", "business_type", "external_account", "representative.first_name", "representative.last_name", "tos_acceptance.date", "tos_acceptance.ip"], "past_due": ["business_profile.mcc", "business_profile.url", "business_type", "external_account", "representative.first_name", "representative.last_name", "tos_acceptance.date", "tos_acceptance.ip"], "pending_verification": []}, "settings": {"bacs_debit_payments": {}, "branding": {"icon": null, "logo": null, "primary_color": null, "secondary_color": null}, "card_issuing": {"tos_acceptance": {"date": null, "ip": null}}, "card_payments": {"decline_on": {"avs_failure": false, "cvc_failure": false}, "statement_descriptor_prefix": null, "statement_descriptor_prefix_kana": null, "statement_descriptor_prefix_kanji": null}, "dashboard": {"display_name": null, "timezone": "Etc/UTC"}, "payments": {"statement_descriptor": null, "statement_descriptor_kana": null, "statement_descriptor_kanji": null}, "payouts": {"debit_negative_balances": false, "schedule": {"delay_days": 2, "interval": "daily"}, "statement_descriptor": null}, "sepa_debit_payments": {}}, "tos_acceptance": {"date": null, "ip": null, "user_agent": null}, "type": "custom"}, "emitted_at": 1691675182552} +{"stream": "balance_transactions", "data": {"id": "txn_1KVQhfEcXtiJtvvhF7ox3YEm", "object": "balance_transaction", "amount": -9164, "available_on": 1645488000, "created": 1645406919, "currency": "usd", "description": "STRIPE PAYOUT", "exchange_rate": null, "fee": 0, "fee_details": [], "net": -9164, "reporting_category": "payout", "source": "po_1KVQhfEcXtiJtvvhZlUkl08U", "status": "available", "type": "payout"}, "emitted_at": 1691675187989} +{"stream": "balance_transactions", "data": {"id": "txn_3K9FSOEcXtiJtvvh0KoS5mx7", "object": "balance_transaction", "amount": 5300, "available_on": 1640649600, "created": 1640120473, "currency": "usd", "description": null, "exchange_rate": null, "fee": 184, "fee_details": [{"amount": 184, "application": null, "currency": "usd", "description": "Stripe processing fees", "type": "stripe_fee"}], "net": 5116, "reporting_category": "charge", "source": "ch_3K9FSOEcXtiJtvvh0zxb7clc", "status": "available", "type": "charge"}, "emitted_at": 1691675187990} +{"stream": "balance_transactions", "data": {"id": "txn_3K9F5DEcXtiJtvvh1qsqmHcH", "object": "balance_transaction", "amount": 4200, "available_on": 1640649600, "created": 1640119035, "currency": "usd", "description": "edgao test", "exchange_rate": null, "fee": 152, "fee_details": [{"amount": 152, "application": null, "currency": "usd", "description": "Stripe processing fees", "type": "stripe_fee"}], "net": 4048, "reporting_category": "charge", "source": "ch_3K9F5DEcXtiJtvvh1w2MaTpj", "status": "available", "type": "charge"}, "emitted_at": 1691675187990} +{"stream": "cardholders", "data": {"id": "ich_1KUKBeEcXtiJtvvhCEFgko6h", "object": "issuing.cardholder", "billing": {"address": {"city": "San Francisco", "country": "US", "line1": "1234 Main Street", "line2": null, "postal_code": "94111", "state": "CA"}}, "company": null, "created": 1645143542, "email": "jenny.rosen@example.com", "individual": null, "livemode": false, "metadata": {}, "name": "Jenny Rosen", "phone_number": "+18888675309", "preferred_locales": [], "requirements": {"disabled_reason": null, "past_due": []}, "spending_controls": {"allowed_categories": [], "blocked_categories": [], "spending_limits": [], "spending_limits_currency": null}, "status": "active", "type": "individual", "updated": 1645143542}, "emitted_at": 1691675191187} +{"stream": "charges", "data": {"id": "ch_3K9FSOEcXtiJtvvh0zxb7clc", "object": "charge", "amount": 5300, "amount_captured": 5300, "amount_refunded": 0, "amount_updates": [], "application": null, "application_fee": null, "application_fee_amount": null, "balance_transaction": "txn_3K9FSOEcXtiJtvvh0KoS5mx7", "billing_details": {"address": {"city": null, "country": null, "line1": null, "line2": null, "postal_code": null, "state": null}, "email": null, "name": null, "phone": null}, "calculated_statement_descriptor": "AIRBYTE.IO", "captured": true, "created": 1640120473, "currency": "usd", "customer": null, "description": null, "destination": null, "dispute": null, "disputed": false, "failure_balance_transaction": null, "failure_code": null, "failure_message": null, "fraud_details": {}, "invoice": null, "livemode": false, "metadata": {}, "on_behalf_of": null, "order": null, "outcome": {"network_status": "approved_by_network", "reason": null, "risk_level": "normal", "risk_score": 48, "seller_message": "Payment complete.", "type": "authorized"}, "paid": true, "payment_intent": "pi_3K9FSOEcXtiJtvvh0AEIFllC", "payment_method": "src_1K9FSOEcXtiJtvvhHGu1qtOx", "payment_method_details": {"card": {"brand": "visa", "checks": {"address_line1_check": null, "address_postal_code_check": null, "cvc_check": "pass"}, "country": "US", "exp_month": 12, "exp_year": 2034, "fingerprint": "X7e9fFB0r8MMcdo6", "funding": "credit", "installments": null, "last4": "4242", "mandate": null, "network": "visa", "network_token": {"used": false}, "three_d_secure": null, "wallet": null}, "type": "card"}, "receipt_email": null, "receipt_number": "1509-9197", "receipt_url": "https://pay.stripe.com/receipts/payment/CAcaFwoVYWNjdF8xSndub2lFY1h0aUp0dnZoKLrU06YGMgbBz-JYWrE6LBZZPyoCFiGgb_iQwK2xHsAnCJWAZBLwSPC89M2ZroHi6hDqT4Kgei-5MmjU", "refunded": false, "refunds": {"object": "list", "data": [], "has_more": false, "total_count": 0.0, "url": "/v1/charges/ch_3K9FSOEcXtiJtvvh0zxb7clc/refunds"}, "review": null, "shipping": null, "source": {"id": "src_1K9FSOEcXtiJtvvhHGu1qtOx", "object": "source", "amount": null, "card": {"address_line1_check": null, "address_zip_check": null, "brand": "Visa", "country": "US", "cvc_check": "pass", "dynamic_last4": null, "exp_month": 12, "exp_year": 2034, "fingerprint": "X7e9fFB0r8MMcdo6", "funding": "credit", "last4": "4242", "name": null, "three_d_secure": "optional", "tokenization_method": null}, "client_secret": "src_client_secret_3WszbFGtWT8vmMjqnNztOwhU", "created": 1640120473, "currency": null, "flow": "none", "livemode": false, "metadata": {}, "owner": {"address": null, "email": null, "name": null, "phone": null, "verified_address": null, "verified_email": null, "verified_name": null, "verified_phone": null}, "statement_descriptor": null, "status": "consumed", "type": "card", "usage": "reusable"}, "source_transfer": null, "statement_descriptor": "airbyte.io", "statement_descriptor_suffix": null, "status": "succeeded", "transfer_data": null, "transfer_group": null, "updated": 1640120473}, "emitted_at": 1691675195287} +{"stream": "charges", "data": {"id": "ch_3K9F5DEcXtiJtvvh1w2MaTpj", "object": "charge", "amount": 4200, "amount_captured": 4200, "amount_refunded": 0, "amount_updates": [], "application": null, "application_fee": null, "application_fee_amount": null, "balance_transaction": "txn_3K9F5DEcXtiJtvvh1qsqmHcH", "billing_details": {"address": {"city": null, "country": null, "line1": null, "line2": null, "postal_code": null, "state": null}, "email": null, "name": null, "phone": null}, "calculated_statement_descriptor": "AIRBYTE.IO", "captured": true, "created": 1640119035, "currency": "usd", "customer": null, "description": "edgao test", "destination": null, "dispute": null, "disputed": false, "failure_balance_transaction": null, "failure_code": null, "failure_message": null, "fraud_details": {}, "invoice": null, "livemode": false, "metadata": {}, "on_behalf_of": null, "order": null, "outcome": {"network_status": "approved_by_network", "reason": null, "risk_level": "normal", "risk_score": 63, "seller_message": "Payment complete.", "type": "authorized"}, "paid": true, "payment_intent": "pi_3K9F5DEcXtiJtvvh16scJMp6", "payment_method": "src_1K9F5CEcXtiJtvvhrsZdur8Y", "payment_method_details": {"card": {"brand": "visa", "checks": {"address_line1_check": null, "address_postal_code_check": null, "cvc_check": "pass"}, "country": "US", "exp_month": 9, "exp_year": 2028, "fingerprint": "X7e9fFB0r8MMcdo6", "funding": "credit", "installments": null, "last4": "4242", "mandate": null, "network": "visa", "network_token": {"used": false}, "three_d_secure": null, "wallet": null}, "type": "card"}, "receipt_email": null, "receipt_number": "1549-5630", "receipt_url": "https://pay.stripe.com/receipts/payment/CAcaFwoVYWNjdF8xSndub2lFY1h0aUp0dnZoKLrU06YGMgapv26oBNw6LBYDpAr5Xk2_AMfmygpI4xwH_ASCB41s67fMlTMi3bWzqF_RqGdwL9ctQ8fA", "refunded": false, "refunds": {"object": "list", "data": [], "has_more": false, "total_count": 0.0, "url": "/v1/charges/ch_3K9F5DEcXtiJtvvh1w2MaTpj/refunds"}, "review": null, "shipping": null, "source": {"id": "src_1K9F5CEcXtiJtvvhrsZdur8Y", "object": "source", "amount": null, "card": {"address_line1_check": null, "address_zip_check": null, "brand": "Visa", "country": "US", "cvc_check": "pass", "dynamic_last4": null, "exp_month": 9, "exp_year": 2028, "fingerprint": "X7e9fFB0r8MMcdo6", "funding": "credit", "last4": "4242", "name": null, "three_d_secure": "optional", "tokenization_method": null}, "client_secret": "src_client_secret_QyH8xuqSyiZh8oxzzIszqQ92", "created": 1640119035, "currency": null, "flow": "none", "livemode": false, "metadata": {}, "owner": {"address": null, "email": null, "name": null, "phone": null, "verified_address": null, "verified_email": null, "verified_name": null, "verified_phone": null}, "statement_descriptor": null, "status": "consumed", "type": "card", "usage": "reusable"}, "source_transfer": null, "statement_descriptor": "airbyte.io", "statement_descriptor_suffix": null, "status": "succeeded", "transfer_data": null, "transfer_group": null, "updated": 1640119035}, "emitted_at": 1691675195290} +{"stream": "charges", "data": {"id": "ch_3K9F4mEcXtiJtvvh1kUzxjwN", "object": "charge", "amount": 4200, "amount_captured": 0, "amount_refunded": 0, "amount_updates": [], "application": null, "application_fee": null, "application_fee_amount": null, "balance_transaction": null, "billing_details": {"address": {"city": null, "country": null, "line1": null, "line2": null, "postal_code": null, "state": null}, "email": null, "name": null, "phone": null}, "calculated_statement_descriptor": "AIRBYTE.IO", "captured": false, "created": 1640119009, "currency": "usd", "customer": null, "description": "edgao test", "destination": null, "dispute": null, "disputed": false, "failure_balance_transaction": null, "failure_code": "card_declined", "failure_message": "Your card was declined. Your request was in test mode, but used a non test (live) card. For a list of valid test cards, visit: https://stripe.com/docs/testing.", "fraud_details": {}, "invoice": null, "livemode": false, "metadata": {}, "on_behalf_of": null, "order": null, "outcome": {"network_status": "not_sent_to_network", "reason": "test_mode_live_card", "risk_level": "normal", "risk_score": 6, "seller_message": "This charge request was in test mode, but did not use a Stripe test card number. For the list of these numbers, see stripe.com/docs/testing", "type": "invalid"}, "paid": false, "payment_intent": "pi_3K9F4mEcXtiJtvvh18NKhEuo", "payment_method": "src_1K9F4hEcXtiJtvvhrUEwvCyi", "payment_method_details": {"card": {"brand": "visa", "checks": {"address_line1_check": null, "address_postal_code_check": null, "cvc_check": null}, "country": "US", "exp_month": 9, "exp_year": 2028, "fingerprint": "Re3p4j8issXA77iI", "funding": "credit", "installments": null, "last4": "8097", "mandate": null, "network": "visa", "network_token": {"used": false}, "three_d_secure": null, "wallet": null}, "type": "card"}, "receipt_email": null, "receipt_number": null, "receipt_url": null, "refunded": false, "refunds": {"object": "list", "data": [], "has_more": false, "total_count": 0.0, "url": "/v1/charges/ch_3K9F4mEcXtiJtvvh1kUzxjwN/refunds"}, "review": null, "shipping": null, "source": {"id": "src_1K9F4hEcXtiJtvvhrUEwvCyi", "object": "source", "amount": null, "card": {"address_line1_check": null, "address_zip_check": null, "brand": "Visa", "country": "US", "cvc_check": null, "dynamic_last4": null, "exp_month": 9, "exp_year": 2028, "fingerprint": "Re3p4j8issXA77iI", "funding": "credit", "last4": "8097", "name": null, "three_d_secure": "optional", "tokenization_method": null}, "client_secret": "src_client_secret_b3v8YqNMLGykB120fqv2Tjhq", "created": 1640119009, "currency": null, "flow": "none", "livemode": false, "metadata": {}, "owner": {"address": null, "email": null, "name": null, "phone": null, "verified_address": null, "verified_email": null, "verified_name": null, "verified_phone": null}, "statement_descriptor": null, "status": "consumed", "type": "card", "usage": "reusable"}, "source_transfer": null, "statement_descriptor": "airbyte.io", "statement_descriptor_suffix": null, "status": "failed", "transfer_data": null, "transfer_group": null, "updated": 1640119009}, "emitted_at": 1691675195293} +{"stream": "coupons", "data": {"id": "Coupon000001", "object": "coupon", "amount_off": 500, "created": 1675345584, "currency": "usd", "duration": "once", "duration_in_months": null, "livemode": false, "max_redemptions": null, "metadata": {}, "name": "Test Coupon 1", "percent_off": null, "redeem_by": null, "times_redeemed": 1, "valid": true, "updated": 1675345584}, "emitted_at": 1691675198875} +{"stream": "coupons", "data": {"id": "4SUEGKZg", "object": "coupon", "amount_off": 200, "created": 1674209030, "currency": "usd", "duration": "repeating", "duration_in_months": 3, "livemode": false, "max_redemptions": null, "metadata": {}, "name": "\u0406\u0435\u043a\u0448\u0437\u0443", "percent_off": null, "redeem_by": null, "times_redeemed": 0, "valid": true, "updated": 1674209030}, "emitted_at": 1691675198878} +{"stream": "coupons", "data": {"id": "iJ6qlwM5", "object": "coupon", "amount_off": null, "created": 1674208993, "currency": null, "duration": "forever", "duration_in_months": null, "livemode": false, "max_redemptions": null, "metadata": {}, "name": "\u0415\u0443\u0456\u0435", "percent_off": 10.0, "redeem_by": null, "times_redeemed": 3, "valid": true, "updated": 1674208993}, "emitted_at": 1691675198880} +{"stream": "customer_balance_transactions", "data": {"id": "cbtxn_1MX2zPEcXtiJtvvhr4L2D3Q1", "object": "customer_balance_transaction", "amount": -50000.0, "created": 1675345091, "credit_note": null, "currency": "usd", "customer": "cus_NGoTFiJFVbSsvZ", "description": null, "ending_balance": 0.0, "invoice": "in_1MX2yFEcXtiJtvvhMXhUCgKx", "livemode": false, "metadata": {}, "type": "applied_to_invoice"}, "emitted_at": 1691675200929} +{"stream": "customer_balance_transactions", "data": {"id": "cbtxn_1MWIPLEcXtiJtvvhLnQYjVCj", "object": "customer_balance_transaction", "amount": 50000.0, "created": 1675166031, "credit_note": null, "currency": "usd", "customer": "cus_NGoTFiJFVbSsvZ", "description": "Test credit balance", "ending_balance": 50000.0, "invoice": null, "livemode": false, "metadata": {}, "type": "adjustment"}, "emitted_at": 1691675200932} +{"stream": "customers", "data": {"id": "cus_LIiHR6omh14Xdg", "object": "customer", "address": {"city": "san francisco", "country": "US", "line1": "san francisco", "line2": "", "postal_code": "", "state": "CA"}, "balance": 0, "created": 1646998902, "currency": "usd", "default_source": "card_1MSHU1EcXtiJtvvhytSN6V54", "delinquent": false, "description": "test", "discount": null, "email": "test@airbyte_integration_test.com", "invoice_prefix": "09A6A98F", "invoice_settings": {"custom_fields": null, "default_payment_method": null, "footer": null, "rendering_options": null}, "livemode": false, "metadata": {}, "name": "Test", "next_invoice_sequence": 1, "phone": null, "preferred_locales": [], "shipping": {"address": {"city": "", "country": "US", "line1": "", "line2": "", "postal_code": "", "state": ""}, "name": "", "phone": ""}, "tax_exempt": "none", "test_clock": null, "updated": 1646998902}, "emitted_at": 1691675201702} +{"stream": "disputes", "data": {"id": "dp_1MSI78EcXtiJtvvhxC77m2kh", "object": "dispute", "amount": 700, "balance_transaction": "txn_1MSI78EcXtiJtvvhAGjxP1UM", "balance_transactions": [{"id": "txn_1MSI78EcXtiJtvvhAGjxP1UM", "object": "balance_transaction", "amount": -700, "available_on": 1674518400, "created": 1674211590, "currency": "usd", "description": "Chargeback withdrawal for ch_3MSI77EcXtiJtvvh1GzoukUC", "exchange_rate": null, "fee": 1500, "fee_details": [{"amount": 1500, "application": null, "currency": "usd", "description": "Dispute fee", "type": "stripe_fee"}], "net": -2200, "reporting_category": "dispute", "source": "dp_1MSI78EcXtiJtvvhxC77m2kh", "status": "available", "type": "adjustment"}], "charge": "ch_3MSI77EcXtiJtvvh1GzoukUC", "created": 1674211590, "currency": "usd", "evidence": {"access_activity_log": null, "billing_address": "12345", "cancellation_policy": null, "cancellation_policy_disclosure": null, "cancellation_rebuttal": null, "customer_communication": null, "customer_email_address": null, "customer_name": null, "customer_purchase_ip": null, "customer_signature": null, "duplicate_charge_documentation": null, "duplicate_charge_explanation": null, "duplicate_charge_id": null, "product_description": null, "receipt": null, "refund_policy": null, "refund_policy_disclosure": null, "refund_refusal_explanation": null, "service_date": null, "service_documentation": null, "shipping_address": null, "shipping_carrier": null, "shipping_date": null, "shipping_documentation": null, "shipping_tracking_number": null, "uncategorized_file": null, "uncategorized_text": null}, "evidence_details": {"due_by": 1675036799.0, "has_evidence": false, "past_due": false, "submission_count": 0}, "is_charge_refundable": false, "livemode": false, "metadata": {}, "payment_intent": "pi_3MSI77EcXtiJtvvh1glmQd8s", "payment_method_details": {"card": {"brand": "visa", "network_reason_code": "83"}, "type": "card"}, "reason": "fraudulent", "status": "lost", "updated": 1674211590}, "emitted_at": 1692348303326} +{"stream": "invoice_items", "data": {"id": "ii_1K9GKLEcXtiJtvvhmr2AYOAx", "object": "invoiceitem", "amount": 8400, "currency": "usd", "customer": "cus_Kou8knsO3qQOwU", "date": 1640123817, "description": "a box of parsnips", "discountable": true, "discounts": [], "invoice": "in_1K9GK0EcXtiJtvvhSo2LvGqT", "livemode": false, "metadata": {}, "period": {"end": 1640123817, "start": 1640123817}, "plan": null, "price": {"id": "price_1K9GKLEcXtiJtvvhXbrg33lq", "object": "price", "active": false, "billing_scheme": "per_unit", "created": 1640123817, "currency": "usd", "custom_unit_amount": null, "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_Kou8cQxtIpF1p7", "recurring": null, "tax_behavior": "unspecified", "tiers_mode": null, "transform_quantity": null, "type": "one_time", "unit_amount": 8400, "unit_amount_decimal": "8400"}, "proration": false, "quantity": 1, "subscription": null, "tax_rates": [], "test_clock": null, "unit_amount": 8400, "unit_amount_decimal": "8400", "updated": 1640123817}, "emitted_at": 1691675215106} +{"stream": "invoice_items", "data": {"id": "ii_1MX384EcXtiJtvvhguyn3iYb", "object": "invoiceitem", "amount": 6000, "currency": "usd", "customer": "cus_NGoTFiJFVbSsvZ", "date": 1675345628, "description": "Test Product 1", "discountable": true, "discounts": ["di_1MX384EcXtiJtvvhkOrY57Ep"], "invoice": "in_1MX37hEcXtiJtvvhRSl1KbQm", "livemode": false, "metadata": {}, "period": {"end": 1675345628, "start": 1675345628}, "plan": null, "price": {"id": "price_1MX364EcXtiJtvvhE3WgTl4O", "object": "price", "active": true, "billing_scheme": "per_unit", "created": 1675345504, "currency": "usd", "custom_unit_amount": null, "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_NHcKselSHfKdfc", "recurring": null, "tax_behavior": "exclusive", "tiers_mode": null, "transform_quantity": null, "type": "one_time", "unit_amount": 2000, "unit_amount_decimal": "2000"}, "proration": false, "quantity": 3, "subscription": null, "tax_rates": [], "test_clock": null, "unit_amount": 2000, "unit_amount_decimal": "2000", "updated": 1675345628}, "emitted_at": 1691675215403} +{"stream": "invoice_items", "data": {"id": "ii_1MX2yfEcXtiJtvvhfhyOG7SP", "object": "invoiceitem", "amount": 25200, "currency": "usd", "customer": "cus_NGoTFiJFVbSsvZ", "date": 1675345045, "description": "edgao-test-product", "discountable": true, "discounts": ["di_1MX2ysEcXtiJtvvh8ORqRVKm"], "invoice": "in_1MX2yFEcXtiJtvvhMXhUCgKx", "livemode": false, "metadata": {}, "period": {"end": 1675345045, "start": 1675345045}, "plan": null, "price": {"id": "price_1K9GbqEcXtiJtvvhJ3lZe4i5", "object": "price", "active": true, "billing_scheme": "per_unit", "created": 1640124902, "currency": "usd", "custom_unit_amount": null, "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_KouQ5ez86yREmB", "recurring": null, "tax_behavior": "inclusive", "tiers_mode": null, "transform_quantity": null, "type": "one_time", "unit_amount": 12600, "unit_amount_decimal": "12600"}, "proration": false, "quantity": 2, "subscription": null, "tax_rates": [], "test_clock": null, "unit_amount": 12600, "unit_amount_decimal": "12600", "updated": 1675345045}, "emitted_at": 1691675215404} +{"stream": "invoice_line_items", "data": {"id": "il_1K9GKLEcXtiJtvvhhHaYMebN", "object": "line_item", "amount": 8400, "amount_excluding_tax": 8400, "currency": "usd", "description": "a box of parsnips", "discount_amounts": [], "discountable": true, "discounts": [], "invoice_item": "ii_1K9GKLEcXtiJtvvhmr2AYOAx", "livemode": false, "metadata": {}, "period": {"end": 1640123817, "start": 1640123817}, "plan": null, "price": {"id": "price_1K9GKLEcXtiJtvvhXbrg33lq", "object": "price", "active": false, "billing_scheme": "per_unit", "created": 1640123817, "currency": "usd", "custom_unit_amount": null, "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_Kou8cQxtIpF1p7", "recurring": null, "tax_behavior": "unspecified", "tiers_mode": null, "transform_quantity": null, "type": "one_time", "unit_amount": 8400, "unit_amount_decimal": "8400"}, "proration": false, "proration_details": {"credited_items": null}, "quantity": 1, "subscription": null, "tax_amounts": [], "tax_rates": [], "type": "invoiceitem", "unit_amount_excluding_tax": "8400", "invoice_id": "in_1K9GK0EcXtiJtvvhSo2LvGqT"}, "emitted_at": 1691675216433} +{"stream": "invoices", "data": {"id": "in_1K9GK0EcXtiJtvvhSo2LvGqT", "object": "invoice", "account_country": "US", "account_name": "Airbyte, Inc.", "account_tax_ids": null, "amount_due": 0, "amount_paid": 0, "amount_remaining": 0, "amount_shipping": 0, "application": null, "application_fee_amount": null, "attempt_count": 0, "attempted": true, "auto_advance": false, "automatic_tax": {"enabled": false, "status": null}, "billing_reason": "manual", "charge": null, "collection_method": "send_invoice", "created": 1640123796, "currency": "usd", "custom_fields": null, "customer": "cus_Kou8knsO3qQOwU", "customer_address": null, "customer_email": "edward.gao+stripe-test-customer-1@airbyte.io", "customer_name": "edgao-test-customer-1", "customer_phone": null, "customer_shipping": null, "customer_tax_exempt": "none", "customer_tax_ids": [], "default_payment_method": null, "default_source": null, "default_tax_rates": [], "description": null, "discount": null, "discounts": [], "due_date": 1688750070.0, "effective_at": 1686158070, "ending_balance": 0, "footer": null, "from_invoice": null, "hosted_invoice_url": "https://invoice.stripe.com/i/acct_1JwnoiEcXtiJtvvh/test_YWNjdF8xSndub2lFY1h0aUp0dnZoLF9Lb3U4bk9YR0lWV3BhN2EzMXZNUFJSaEdXUUVNR1J0LDgyMjE2MDE202007yElZZLO?s=ap", "invoice_pdf": "https://pay.stripe.com/invoice/acct_1JwnoiEcXtiJtvvh/test_YWNjdF8xSndub2lFY1h0aUp0dnZoLF9Lb3U4bk9YR0lWV3BhN2EzMXZNUFJSaEdXUUVNR1J0LDgyMjE2MDE202007yElZZLO/pdf?s=ap", "last_finalization_error": null, "latest_revision": null, "lines": {"object": "list", "data": [{"id": "il_1K9GKLEcXtiJtvvhhHaYMebN", "object": "line_item", "amount": 8400, "amount_excluding_tax": 8400, "currency": "usd", "description": "a box of parsnips", "discount_amounts": [], "discountable": true, "discounts": [], "invoice_item": "ii_1K9GKLEcXtiJtvvhmr2AYOAx", "livemode": false, "metadata": {}, "period": {"end": 1640123817, "start": 1640123817}, "plan": null, "price": {"id": "price_1K9GKLEcXtiJtvvhXbrg33lq", "object": "price", "active": false, "billing_scheme": "per_unit", "created": 1640123817, "currency": "usd", "custom_unit_amount": null, "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_Kou8cQxtIpF1p7", "recurring": null, "tax_behavior": "unspecified", "tiers_mode": null, "transform_quantity": null, "type": "one_time", "unit_amount": 8400, "unit_amount_decimal": "8400"}, "proration": false, "proration_details": {"credited_items": null}, "quantity": 1, "subscription": null, "tax_amounts": [], "tax_rates": [], "type": "invoiceitem", "unit_amount_excluding_tax": "8400"}], "has_more": false, "total_count": 1, "url": "/v1/invoices/in_1K9GK0EcXtiJtvvhSo2LvGqT/lines"}, "livemode": false, "metadata": {}, "next_payment_attempt": null, "number": "CA35DF83-0001", "on_behalf_of": null, "paid": true, "paid_out_of_band": false, "payment_intent": null, "payment_settings": {"default_mandate": null, "payment_method_options": null, "payment_method_types": null}, "period_end": 1640123795.0, "period_start": 1640123795.0, "post_payment_credit_notes_amount": 0, "pre_payment_credit_notes_amount": 8400, "quote": null, "receipt_number": null, "rendering_options": null, "shipping_cost": null, "shipping_details": null, "starting_balance": 0, "statement_descriptor": null, "status": "paid", "status_transitions": {"finalized_at": 1686158070, "marked_uncollectible_at": null, "paid_at": 1686158100, "voided_at": null}, "subscription": null, "subscription_details": {"metadata": null}, "subtotal": 8400, "subtotal_excluding_tax": 8400, "tax": null, "test_clock": null, "total": 8400, "total_discount_amounts": [], "total_excluding_tax": 8400, "total_tax_amounts": [], "transfer_data": null, "webhooks_delivered_at": 1640123796.0, "updated": 1640123796}, "emitted_at": 1691675217761} +{"stream": "payment_intents", "data": {"id": "pi_3K9FSOEcXtiJtvvh0AEIFllC", "object": "payment_intent", "amount": 5300, "amount_capturable": 0, "amount_details": {"tip": {}}, "amount_received": 5300, "application": null, "application_fee_amount": null, "automatic_payment_methods": null, "canceled_at": null, "cancellation_reason": null, "capture_method": "automatic", "client_secret": "pi_3K9FSOEcXtiJtvvh0AEIFllC_secret_uPUtIaSltgtW0qK7mLD0uF2Mr", "confirmation_method": "automatic", "created": 1640120472, "currency": "usd", "customer": null, "description": null, "invoice": null, "last_payment_error": null, "latest_charge": "ch_3K9FSOEcXtiJtvvh0zxb7clc", "livemode": false, "metadata": {}, "next_action": null, "on_behalf_of": null, "payment_method": null, "payment_method_options": {"card": {"installments": null, "mandate_options": null, "network": null, "request_three_d_secure": "automatic"}}, "payment_method_types": ["card"], "processing": null, "receipt_email": null, "review": null, "setup_future_usage": null, "shipping": null, "source": "src_1K9FSOEcXtiJtvvhHGu1qtOx", "statement_descriptor": "airbyte.io", "statement_descriptor_suffix": null, "status": "succeeded", "transfer_data": null, "transfer_group": null, "updated": 1640120472}, "emitted_at": 1691675220040} +{"stream": "payment_intents", "data": {"id": "pi_3K9F5DEcXtiJtvvh16scJMp6", "object": "payment_intent", "amount": 4200, "amount_capturable": 0, "amount_details": {"tip": {}}, "amount_received": 4200, "application": null, "application_fee_amount": null, "automatic_payment_methods": null, "canceled_at": null, "cancellation_reason": null, "capture_method": "automatic", "client_secret": "pi_3K9F5DEcXtiJtvvh16scJMp6_secret_YwhzCTpXtfcKYeklXnPnysRRi", "confirmation_method": "automatic", "created": 1640119035, "currency": "usd", "customer": null, "description": "edgao test", "invoice": null, "last_payment_error": null, "latest_charge": "ch_3K9F5DEcXtiJtvvh1w2MaTpj", "livemode": false, "metadata": {}, "next_action": null, "on_behalf_of": null, "payment_method": null, "payment_method_options": {"card": {"installments": null, "mandate_options": null, "network": null, "request_three_d_secure": "automatic"}}, "payment_method_types": ["card"], "processing": null, "receipt_email": null, "review": null, "setup_future_usage": null, "shipping": null, "source": "src_1K9F5CEcXtiJtvvhrsZdur8Y", "statement_descriptor": "airbyte.io", "statement_descriptor_suffix": null, "status": "succeeded", "transfer_data": null, "transfer_group": null, "updated": 1640119035}, "emitted_at": 1691675220044} +{"stream": "payment_intents", "data": {"id": "pi_3K9F4mEcXtiJtvvh18NKhEuo", "object": "payment_intent", "amount": 4200, "amount_capturable": 0, "amount_details": {"tip": {}}, "amount_received": 0, "application": null, "application_fee_amount": null, "automatic_payment_methods": null, "canceled_at": null, "cancellation_reason": null, "capture_method": "automatic", "client_secret": "pi_3K9F4mEcXtiJtvvh18NKhEuo_secret_pfUt7CTkPjVdJacycm0bMpdLt", "confirmation_method": "automatic", "created": 1640119008, "currency": "usd", "customer": null, "description": "edgao test", "invoice": null, "last_payment_error": {"charge": "ch_3K9F4mEcXtiJtvvh1kUzxjwN", "code": "card_declined", "decline_code": "test_mode_live_card", "doc_url": "https://stripe.com/docs/error-codes/card-declined", "message": "Your card was declined. Your request was in test mode, but used a non test (live) card. For a list of valid test cards, visit: https://stripe.com/docs/testing.", "source": {"id": "src_1K9F4hEcXtiJtvvhrUEwvCyi", "object": "source", "amount": null, "card": {"address_line1_check": null, "address_zip_check": null, "brand": "Visa", "country": "US", "cvc_check": "unchecked", "dynamic_last4": null, "exp_month": 9, "exp_year": 2028, "fingerprint": "Re3p4j8issXA77iI", "funding": "credit", "last4": "8097", "name": null, "three_d_secure": "optional", "tokenization_method": null}, "client_secret": "src_client_secret_b3v8YqNMLGykB120fqv2Tjhq", "created": 1640119003, "currency": null, "flow": "none", "livemode": false, "metadata": {}, "owner": {"address": null, "email": null, "name": null, "phone": null, "verified_address": null, "verified_email": null, "verified_name": null, "verified_phone": null}, "statement_descriptor": null, "status": "consumed", "type": "card", "usage": "reusable"}, "type": "card_error"}, "latest_charge": "ch_3K9F4mEcXtiJtvvh1kUzxjwN", "livemode": false, "metadata": {}, "next_action": null, "on_behalf_of": null, "payment_method": null, "payment_method_options": {"card": {"installments": null, "mandate_options": null, "network": null, "request_three_d_secure": "automatic"}}, "payment_method_types": ["card"], "processing": null, "receipt_email": null, "review": null, "setup_future_usage": null, "shipping": null, "source": null, "statement_descriptor": "airbyte.io", "statement_descriptor_suffix": null, "status": "requires_payment_method", "transfer_data": null, "transfer_group": null, "updated": 1640119008}, "emitted_at": 1691675220045} +{"stream": "payouts", "data": {"id": "po_1KVQhfEcXtiJtvvhZlUkl08U", "object": "payout", "amount": 9164, "arrival_date": 1645488000, "automatic": true, "balance_transaction": "txn_1KVQhfEcXtiJtvvhF7ox3YEm", "created": 1645406919, "currency": "usd", "description": "STRIPE PAYOUT", "destination": "ba_1KUL7UEcXtiJtvvhAEUlStmv", "failure_balance_transaction": null, "failure_code": null, "failure_message": null, "livemode": false, "metadata": {}, "method": "standard", "original_payout": null, "reconciliation_status": "completed", "reversed_by": null, "source_balance": null, "source_type": "card", "statement_descriptor": null, "status": "paid", "type": "bank_account", "updated": 1645406919}, "emitted_at": 1691675223099} +{"stream": "payouts", "data": {"id": "po_1MXKoPEcXtiJtvvhwmqjvKoO", "object": "payout", "amount": 665880, "arrival_date": 1675382400, "automatic": false, "balance_transaction": "txn_1MXKoQEcXtiJtvvh65SHFZS6", "created": 1675413601, "currency": "usd", "description": "", "destination": "ba_1MSI1fEcXtiJtvvhPlqZqPlw", "failure_balance_transaction": null, "failure_code": null, "failure_message": null, "livemode": false, "metadata": {}, "method": "standard", "original_payout": null, "reconciliation_status": "not_applicable", "reversed_by": null, "source_balance": null, "source_type": "card", "statement_descriptor": "airbyte.io", "status": "paid", "type": "bank_account", "updated": 1675413601}, "emitted_at": 1691675223392} +{"stream": "payouts", "data": {"id": "po_1MWHzjEcXtiJtvvhIdUQHhLq", "object": "payout", "amount": 154900, "arrival_date": 1675123200, "automatic": false, "balance_transaction": "txn_1MWHzjEcXtiJtvvhtydemd2Y", "created": 1675164443, "currency": "usd", "description": "Test", "destination": "ba_1MSI1fEcXtiJtvvhPlqZqPlw", "failure_balance_transaction": null, "failure_code": null, "failure_message": null, "livemode": false, "metadata": {}, "method": "standard", "original_payout": null, "reconciliation_status": "not_applicable", "reversed_by": null, "source_balance": "issuing", "source_type": "issuing", "statement_descriptor": "airbyte.io", "status": "paid", "type": "bank_account", "updated": 1675164443}, "emitted_at": 1691675223393} +{"stream": "plans", "data": {"id": "price_1MSHZoEcXtiJtvvh6O8TYD8T", "object": "plan", "active": true, "aggregate_usage": null, "amount": 600, "amount_decimal": "600", "billing_scheme": "per_unit", "created": 1674209524, "currency": "usd", "interval": "month", "interval_count": 1, "livemode": false, "metadata": {}, "nickname": null, "product": "prod_NCgx1XP2IFQyKF", "tiers_mode": null, "transform_usage": null, "trial_period_days": null, "usage_type": "licensed", "updated": 1674209524}, "emitted_at": 1691675225454} +{"stream": "prices", "data": {"id": "price_1K9GbqEcXtiJtvvhJ3lZe4i5", "object": "price", "active": true, "billing_scheme": "per_unit", "created": 1640124902, "currency": "usd", "custom_unit_amount": null, "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_KouQ5ez86yREmB", "recurring": null, "tax_behavior": "inclusive", "tiers_mode": null, "transform_quantity": null, "type": "one_time", "unit_amount": 12600.0, "unit_amount_decimal": "12600", "updated": 1640124902}, "emitted_at": 1691675226783} +{"stream": "prices", "data": {"id": "price_1MX364EcXtiJtvvh6jKcimNL", "object": "price", "active": true, "billing_scheme": "per_unit", "created": 1675345504, "currency": "usd", "custom_unit_amount": null, "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_NHcKselSHfKdfc", "recurring": null, "tax_behavior": "exclusive", "tiers_mode": null, "transform_quantity": null, "type": "one_time", "unit_amount": 1700.0, "unit_amount_decimal": "1700", "updated": 1675345504}, "emitted_at": 1691675227079} +{"stream": "prices", "data": {"id": "price_1MX364EcXtiJtvvhE3WgTl4O", "object": "price", "active": true, "billing_scheme": "per_unit", "created": 1675345504, "currency": "usd", "custom_unit_amount": null, "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_NHcKselSHfKdfc", "recurring": null, "tax_behavior": "exclusive", "tiers_mode": null, "transform_quantity": null, "type": "one_time", "unit_amount": 2000.0, "unit_amount_decimal": "2000", "updated": 1675345504}, "emitted_at": 1691675227079} +{"stream": "products", "data": {"id": "prod_KouQ5ez86yREmB", "object": "product", "active": true, "attributes": [], "created": 1640124902, "default_price": "price_1K9GbqEcXtiJtvvhJ3lZe4i5", "description": null, "images": [], "livemode": false, "metadata": {}, "name": "edgao-test-product", "package_dimensions": null, "shippable": null, "statement_descriptor": null, "tax_code": "txcd_10000000", "type": "service", "unit_label": null, "updated": 1675345058, "url": null, "features": []}, "emitted_at": 1691675228526} +{"stream": "products", "data": {"id": "prod_NHcKselSHfKdfc", "object": "product", "active": true, "attributes": [], "created": 1675345504, "default_price": "price_1MX364EcXtiJtvvhE3WgTl4O", "description": "Test Product 1 description", "images": ["https://files.stripe.com/links/MDB8YWNjdF8xSndub2lFY1h0aUp0dnZofGZsX3Rlc3RfdjBOT09UaHRiNVl2WmJ6clNYRUlmcFFD00cCBRNHnV"], "livemode": false, "metadata": {}, "name": "Test Product 1", "package_dimensions": null, "shippable": null, "statement_descriptor": null, "tax_code": "txcd_10301000", "type": "service", "unit_label": null, "updated": 1675345505, "url": null, "features": []}, "emitted_at": 1691675228867} +{"stream": "products", "data": {"id": "prod_NCgx1XP2IFQyKF", "object": "product", "active": true, "attributes": [], "created": 1674209524, "default_price": null, "description": null, "images": [], "livemode": false, "metadata": {}, "name": "tu", "package_dimensions": null, "shippable": null, "statement_descriptor": null, "tax_code": "txcd_10000000", "type": "service", "unit_label": null, "updated": 1674209524, "url": null, "features": []}, "emitted_at": 1691675228868} +{"stream": "promotion_codes", "data": {"id": "promo_1MVtmyEcXtiJtvvhkV5jPFPU", "object": "promotion_code", "active": true, "code": "g20", "coupon": {"id": "iJ6qlwM5", "object": "coupon", "amount_off": null, "created": 1674208993, "currency": null, "duration": "forever", "duration_in_months": null, "livemode": false, "max_redemptions": null, "metadata": {}, "name": "\u0415\u0443\u0456\u0435", "percent_off": 10.0, "redeem_by": null, "times_redeemed": 3, "valid": true}, "created": 1675071396, "customer": null, "expires_at": null, "livemode": false, "max_redemptions": null, "metadata": {}, "restrictions": {"first_time_transaction": false, "minimum_amount": null, "minimum_amount_currency": null}, "times_redeemed": 0, "updated": 1675071396}, "emitted_at": 1691675230472} +{"stream": "promotion_codes", "data": {"id": "promo_1MVtmkEcXtiJtvvht0RA3MKg", "object": "promotion_code", "active": true, "code": "FRIENDS20", "coupon": {"id": "iJ6qlwM5", "object": "coupon", "amount_off": null, "created": 1674208993, "currency": null, "duration": "forever", "duration_in_months": null, "livemode": false, "max_redemptions": null, "metadata": {}, "name": "\u0415\u0443\u0456\u0435", "percent_off": 10.0, "redeem_by": null, "times_redeemed": 3, "valid": true}, "created": 1675071382, "customer": null, "expires_at": null, "livemode": false, "max_redemptions": null, "metadata": {}, "restrictions": {"first_time_transaction": true, "minimum_amount": 10000, "minimum_amount_currency": "usd"}, "times_redeemed": 0, "updated": 1675071382}, "emitted_at": 1691675230475} +{"stream": "refunds", "data": {"id": "re_3MVuZyEcXtiJtvvh0A6rSbeJ", "object": "refund", "amount": 200000, "balance_transaction": "txn_3MVuZyEcXtiJtvvh0v0QyAMx", "charge": "ch_3MVuZyEcXtiJtvvh0tiVC7DI", "created": 1675074488, "currency": "usd", "metadata": {}, "payment_intent": "pi_3MVuZyEcXtiJtvvh07Ehi4cx", "reason": "fraudulent", "receipt_number": "3278-5368", "source_transfer_reversal": null, "status": "succeeded", "transfer_reversal": null, "updated": 1675074488}, "emitted_at": 1691675231909} +{"stream": "subscription_items", "data": {"id": "si_O2toUlN7ELjLcM", "object": "subscription_item", "billing_thresholds": null, "created": 1686250591, "metadata": {}, "plan": {"id": "price_1MSHZoEcXtiJtvvh6O8TYD8T", "object": "plan", "active": true, "aggregate_usage": null, "amount": 600, "amount_decimal": "600", "billing_scheme": "per_unit", "created": 1674209524, "currency": "usd", "interval": "month", "interval_count": 1, "livemode": false, "metadata": {}, "nickname": null, "product": "prod_NCgx1XP2IFQyKF", "tiers_mode": null, "transform_usage": null, "trial_period_days": null, "usage_type": "licensed"}, "price": {"id": "price_1MSHZoEcXtiJtvvh6O8TYD8T", "object": "price", "active": true, "billing_scheme": "per_unit", "created": 1674209524, "currency": "usd", "custom_unit_amount": null, "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_NCgx1XP2IFQyKF", "recurring": {"aggregate_usage": null, "interval": "month", "interval_count": 1, "trial_period_days": null, "usage_type": "licensed"}, "tax_behavior": "exclusive", "tiers_mode": null, "transform_quantity": null, "type": "recurring", "unit_amount": 600, "unit_amount_decimal": "600"}, "quantity": 1, "subscription": "sub_1NGo0YEcXtiJtvvh9rKhuT2H", "tax_rates": []}, "emitted_at": 1691675272005} +{"stream": "subscriptions", "data": {"id": "sub_1NGo0YEcXtiJtvvh9rKhuT2H", "object": "subscription", "application": null, "application_fee_percent": null, "automatic_tax": {"enabled": true}, "billing_cycle_anchor": 1686250590.0, "billing_thresholds": null, "cancel_at": null, "cancel_at_period_end": false, "canceled_at": 1694028755.0, "cancellation_details": {"comment": null, "feedback": null, "reason": "cancellation_requested"}, "collection_method": "charge_automatically", "created": 1686250590, "currency": "usd", "current_period_end": 1694199390.0, "current_period_start": 1691520990, "customer": "cus_O2topVBsfeTMXg", "days_until_due": null, "default_payment_method": "pm_1NGo0XEcXtiJtvvhZosRvz8G", "default_source": null, "default_tax_rates": [], "description": null, "discount": null, "ended_at": 1694028755.0, "items": {"object": "list", "data": [{"id": "si_O2toUlN7ELjLcM", "object": "subscription_item", "billing_thresholds": null, "created": 1686250591, "metadata": {}, "plan": {"id": "price_1MSHZoEcXtiJtvvh6O8TYD8T", "object": "plan", "active": true, "aggregate_usage": null, "amount": 600, "amount_decimal": "600", "billing_scheme": "per_unit", "created": 1674209524, "currency": "usd", "interval": "month", "interval_count": 1, "livemode": false, "metadata": {}, "nickname": null, "product": "prod_NCgx1XP2IFQyKF", "tiers_mode": null, "transform_usage": null, "trial_period_days": null, "usage_type": "licensed"}, "price": {"id": "price_1MSHZoEcXtiJtvvh6O8TYD8T", "object": "price", "active": true, "billing_scheme": "per_unit", "created": 1674209524, "currency": "usd", "custom_unit_amount": null, "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_NCgx1XP2IFQyKF", "recurring": {"aggregate_usage": null, "interval": "month", "interval_count": 1, "trial_period_days": null, "usage_type": "licensed"}, "tax_behavior": "exclusive", "tiers_mode": null, "transform_quantity": null, "type": "recurring", "unit_amount": 600, "unit_amount_decimal": "600"}, "quantity": 1, "subscription": "sub_1NGo0YEcXtiJtvvh9rKhuT2H", "tax_rates": []}], "has_more": false, "total_count": 1.0, "url": "/v1/subscription_items?subscription=sub_1NGo0YEcXtiJtvvh9rKhuT2H"}, "latest_invoice": "in_1NcvBHEcXtiJtvvhgEc8JnYJ", "livemode": false, "metadata": {}, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": {"payment_method_options": null, "payment_method_types": null, "save_default_payment_method": "off"}, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "plan": {"id": "price_1MSHZoEcXtiJtvvh6O8TYD8T", "object": "plan", "active": true, "aggregate_usage": null, "amount": 600, "amount_decimal": "600", "billing_scheme": "per_unit", "created": 1674209524, "currency": "usd", "interval": "month", "interval_count": 1, "livemode": false, "metadata": {}, "nickname": null, "product": "prod_NCgx1XP2IFQyKF", "tiers_mode": null, "transform_usage": null, "trial_period_days": null, "usage_type": "licensed"}, "quantity": 1, "schedule": null, "start_date": 1686250590, "status": "canceled", "test_clock": null, "transfer_data": null, "trial_end": null, "trial_settings": {"end_behavior": {"missing_payment_method": "create_invoice"}}, "trial_start": null, "updated": 1686250590}, "emitted_at": 1691675272499} +{"stream": "subscription_schedule", "data": {"id": "sub_sched_1NGRenEcXtiJtvvhmM4eGaJN", "object": "subscription_schedule", "application": null, "canceled_at": "1693942112", "completed_at": null, "created": 1686164673, "current_phase": null, "customer": "cus_NGoTFiJFVbSsvZ", "default_settings": {"application_fee_percent": null, "automatic_tax": {"enabled": false}, "billing_cycle_anchor": "automatic", "billing_thresholds": null, "collection_method": "charge_automatically", "default_payment_method": null, "default_source": null, "description": null, "invoice_settings": null, "on_behalf_of": null, "transfer_data": null}, "end_behavior": "cancel", "livemode": false, "metadata": {}, "phases": [{"add_invoice_items": [], "application_fee_percent": null, "automatic_tax": {"enabled": true}, "billing_cycle_anchor": null, "billing_thresholds": null, "collection_method": null, "coupon": null, "currency": "usd", "default_payment_method": null, "default_tax_rates": [], "description": null, "end_date": 1717787073, "invoice_settings": "{'days_until_due': None}", "items": [{"billing_thresholds": null, "metadata": {}, "plan": "price_1MSHZoEcXtiJtvvh6O8TYD8T", "price": "price_1MSHZoEcXtiJtvvh6O8TYD8T", "quantity": 1, "tax_rates": []}], "metadata": {}, "on_behalf_of": null, "proration_behavior": "create_prorations", "start_date": 1686164673, "transfer_data": null, "trial_end": null}, {"add_invoice_items": [], "application_fee_percent": null, "automatic_tax": {"enabled": true}, "billing_cycle_anchor": null, "billing_thresholds": null, "collection_method": null, "coupon": null, "currency": "usd", "default_payment_method": null, "default_tax_rates": [], "description": null, "end_date": 1749323073, "invoice_settings": "{'days_until_due': None}", "items": [{"billing_thresholds": null, "metadata": {}, "plan": "price_1MSHZoEcXtiJtvvh6O8TYD8T", "price": "price_1MSHZoEcXtiJtvvh6O8TYD8T", "quantity": 1, "tax_rates": []}], "metadata": {}, "on_behalf_of": null, "proration_behavior": "create_prorations", "start_date": 1717787073, "transfer_data": null, "trial_end": null}], "released_at": null, "released_subscription": null, "renewal_interval": null, "status": "canceled", "subscription": "sub_1NGReoEcXtiJtvvhq6goDeqt", "test_clock": null, "updated": 1686164673}, "emitted_at": 1693986394948} +{"stream": "setup_intents", "data": {"id": "seti_1KnfIjEcXtiJtvvhPw5znVKY", "object": "setup_intent", "application": null, "automatic_payment_methods": null, "cancellation_reason": null, "client_secret": "seti_1KnfIjEcXtiJtvvhPw5znVKY_secret_LUebPsqMz6AF4ivxIg4LMaAT0OdZF5L", "created": 1649752937, "customer": null, "description": null, "flow_directions": null, "last_setup_error": null, "latest_attempt": "setatt_1KnfIjEcXtiJtvvhqDfSlpM4", "livemode": false, "mandate": null, "metadata": {}, "next_action": null, "on_behalf_of": null, "payment_method": "pm_1KnfIj2eZvKYlo2CAlv2Vhqc", "payment_method_options": {"acss_debit": {"currency": "cad", "mandate_options": {"interval_description": "First day of every month", "payment_schedule": "interval", "transaction_type": "personal"}, "verification_method": "automatic"}}, "payment_method_types": ["acss_debit"], "single_use_mandate": null, "status": "succeeded", "usage": "off_session", "updated": 1649752937}, "emitted_at": 1691675266961} +{"stream": "setup_intents", "data": {"id": "seti_1KnfIcEcXtiJtvvh61qlCaDf", "object": "setup_intent", "application": null, "automatic_payment_methods": null, "cancellation_reason": null, "client_secret": "seti_1KnfIcEcXtiJtvvh61qlCaDf_secret_LUebcbyw8V1e8Pxk3aAjzDXMOXdFMCe", "created": 1649752930, "customer": null, "description": null, "flow_directions": null, "last_setup_error": null, "latest_attempt": "setatt_1KnfIdEcXtiJtvvhpDrYVlRP", "livemode": false, "mandate": null, "metadata": {}, "next_action": null, "on_behalf_of": null, "payment_method": "pm_1KnfIc2eZvKYlo2Civ7snSPy", "payment_method_options": {"acss_debit": {"currency": "cad", "mandate_options": {"interval_description": "First day of every month", "payment_schedule": "interval", "transaction_type": "personal"}, "verification_method": "automatic"}}, "payment_method_types": ["acss_debit"], "single_use_mandate": null, "status": "succeeded", "usage": "off_session", "updated": 1649752930}, "emitted_at": 1691675266965} +{"stream": "setup_intents", "data": {"id": "seti_1KnfIVEcXtiJtvvhWiIbMkpH", "object": "setup_intent", "application": null, "automatic_payment_methods": null, "cancellation_reason": null, "client_secret": "seti_1KnfIVEcXtiJtvvhWiIbMkpH_secret_LUebIUsiFnm75EzDUzf2RLhJ9WQ92Dp", "created": 1649752923, "customer": null, "description": null, "flow_directions": null, "last_setup_error": null, "latest_attempt": "setatt_1KnfIVEcXtiJtvvhqouWGuhD", "livemode": false, "mandate": null, "metadata": {}, "next_action": null, "on_behalf_of": null, "payment_method": "pm_1KnfIV2eZvKYlo2CaOLGBF00", "payment_method_options": {"acss_debit": {"currency": "cad", "mandate_options": {"interval_description": "First day of every month", "payment_schedule": "interval", "transaction_type": "personal"}, "verification_method": "automatic"}}, "payment_method_types": ["acss_debit"], "single_use_mandate": null, "status": "succeeded", "usage": "off_session", "updated": 1649752923}, "emitted_at": 1691675266967} +{"stream": "shipping_rates", "data": {"id": "shr_1NXgplEcXtiJtvvhA1ntV782", "object": "shipping_rate", "active": true, "created": 1690274589, "delivery_estimate": "{'maximum': {'unit': 'business_day', 'value': 14}, 'minimum': {'unit': 'business_day', 'value': 10}}", "display_name": "Test Ground Shipping", "fixed_amount": {"amount": 999, "currency": "usd"}, "livemode": false, "metadata": {}, "tax_behavior": "inclusive", "tax_code": "txcd_92010001", "type": "fixed_amount"}, "emitted_at": 1691675270714} +{"stream": "credit_notes", "data": {"id": "cn_1NGPwmEcXtiJtvvhNXwHpgJF", "object": "credit_note", "amount": 8400, "amount_shipping": 0, "created": 1686158100, "currency": "usd", "customer": "cus_Kou8knsO3qQOwU", "customer_balance_transaction": null, "discount_amount": "0", "discount_amounts": [], "effective_at": 1686158100, "invoice": "in_1K9GK0EcXtiJtvvhSo2LvGqT", "lines": {"object": "list", "data": [{"id": "cnli_1NGPwmEcXtiJtvvhcL7yEIBJ", "object": "credit_note_line_item", "amount": 8400, "amount_excluding_tax": 8400, "description": "a box of parsnips", "discount_amount": 0, "discount_amounts": [], "invoice_line_item": "il_1K9GKLEcXtiJtvvhhHaYMebN", "livemode": false, "quantity": 1, "tax_amounts": [], "tax_rates": [], "type": "invoice_line_item", "unit_amount": 8400, "unit_amount_decimal": 8400.0, "unit_amount_excluding_tax": 8400.0}], "has_more": false, "url": "/v1/credit_notes/cn_1NGPwmEcXtiJtvvhNXwHpgJF/lines"}, "livemode": false, "memo": null, "metadata": {}, "number": "CA35DF83-0001-CN-01", "out_of_band_amount": null, "pdf": "https://pay.stripe.com/credit_notes/acct_1JwnoiEcXtiJtvvh/test_YWNjdF8xSndub2lFY1h0aUp0dnZoLF9PMlV3dFlJelh4NHM1R0VIWnhMR3RjWUtlejFlRWtILDgyMjE1OTk50200InOhBD3s/pdf?s=ap", "reason": null, "refund": null, "shipping_cost": null, "status": "issued", "subtotal": 8400, "subtotal_excluding_tax": 8400, "tax_amounts": [], "total": 8400, "total_excluding_tax": 8400, "type": "pre_payment", "voided_at": null, "updated": 1686158100}, "emitted_at": 1691675199953} +{"stream": "top_ups", "data": {"id": "tu_1MXKmvEcXtiJtvvhAbDiH3sm", "object": "topup", "amount": 100000, "balance_transaction": null, "created": 1675413509, "currency": "usd", "description": "Test test", "destination_balance": null, "expected_availability_date": 1675413509, "failure_code": "R03", "failure_message": "no_account", "livemode": false, "metadata": {}, "source": {"id": "src_1MXKmvEcXtiJtvvhV0fY3ZBF", "object": "source", "ach_debit": {"bank_name": "STRIPE TEST BANK", "country": "US", "fingerprint": "KUgiD3MWWaMMufNe", "last4": "1116", "routing_number": "110000000", "type": "individual"}, "amount": null, "client_secret": "src_client_secret_qghd0H1WkqAuSDuJBrYBSfD6", "code_verification": {"attempts_remaining": 3, "status": "succeeded"}, "created": 1675413509, "currency": "usd", "flow": "code_verification", "livemode": false, "metadata": {}, "owner": {"address": {"city": null, "country": "US", "line1": null, "line2": null, "postal_code": null, "state": null}, "email": null, "name": "Jenny Rosen", "phone": null, "verified_address": null, "verified_email": null, "verified_name": null, "verified_phone": null}, "statement_descriptor": null, "status": "chargeable", "type": "ach_debit", "usage": "reusable"}, "statement_descriptor": "Test", "status": "failed", "transfer_group": null, "updated": 1675413509}, "emitted_at": 1691675275416} +{"stream": "files", "data": {"id": "file_1Jx65GEcXtiJtvvhxZSXTW0X", "object": "file", "created": 1637224506, "expires_at": null, "filename": "1200x1200 logo.png", "links": {"object": "list", "data": [{"id": "link_1Jx65KEcXtiJtvvhtzDKT46T", "object": "file_link", "created": 1637224510, "expired": 0, "expires_at": null, "file": "file_1Jx65GEcXtiJtvvhxZSXTW0X", "livemode": false, "metadata": {}, "url": "https://files.stripe.com/links/MDB8YWNjdF8xSndub2lFY1h0aUp0dnZofGZsX3Rlc3RfS0VrR1lkejVjaTFlNmpuMUNHYmFkYmVT00UG0pCDcI"}, {"id": "link_1Jx65HEcXtiJtvvhJxpyHQyb", "object": "file_link", "created": 1637224507, "expired": 0, "expires_at": null, "file": "file_1Jx65GEcXtiJtvvhxZSXTW0X", "livemode": false, "metadata": {}, "url": "https://files.stripe.com/links/MDB8YWNjdF8xSndub2lFY1h0aUp0dnZofGZsX3Rlc3RfdTlISjJ4UzM3QUlVa3M4cDdGRm9HWEUz00YHXUch3u"}], "has_more": false, "url": "/v1/file_links?file=file_1Jx65GEcXtiJtvvhxZSXTW0X"}, "purpose": "business_logo", "size": 188116, "title": null, "type": "png", "url": "https://files.stripe.com/v1/files/file_1Jx65GEcXtiJtvvhxZSXTW0X/contents"}, "emitted_at": 1691675213377} +{"stream": "file_links", "data": {"id": "link_1KnfIiEcXtiJtvvhCNceSyei", "object": "file_link", "created": 1649752936, "expired": false, "expires_at": null, "file": "file_1Jx631EcXtiJtvvh9J1J59wL", "livemode": false, "metadata": {}, "url": "https://files.stripe.com/links/MDB8YWNjdF8xSndub2lFY1h0aUp0dnZofGZsX3Rlc3RfY1FvanBFTmt0dUdrRWJXTHBpUlVYVUtu007305bsv3"}, "emitted_at": 1691675210778} +{"stream": "setup_attempts", "data": {"id": "setatt_1KnfIjEcXtiJtvvhqDfSlpM4", "object": "setup_attempt", "application": null, "created": 1649752937, "customer": null, "flow_directions": null, "livemode": false, "on_behalf_of": null, "payment_method": "pm_1KnfIj2eZvKYlo2CAlv2Vhqc", "payment_method_details": {"acss_debit": {}, "type": "acss_debit"}, "setup_error": null, "setup_intent": "seti_1KnfIjEcXtiJtvvhPw5znVKY", "status": "succeeded", "usage": "off_session"}, "emitted_at": 1691675236660} +{"stream": "setup_attempts", "data": {"id": "setatt_1KnfIdEcXtiJtvvhpDrYVlRP", "object": "setup_attempt", "application": null, "created": 1649752931, "customer": null, "flow_directions": null, "livemode": false, "on_behalf_of": null, "payment_method": "pm_1KnfIc2eZvKYlo2Civ7snSPy", "payment_method_details": {"acss_debit": {}, "type": "acss_debit"}, "setup_error": null, "setup_intent": "seti_1KnfIcEcXtiJtvvh61qlCaDf", "status": "succeeded", "usage": "off_session"}, "emitted_at": 1691675237949} +{"stream": "setup_attempts", "data": {"id": "setatt_1KnfIVEcXtiJtvvhqouWGuhD", "object": "setup_attempt", "application": null, "created": 1649752923, "customer": null, "flow_directions": null, "livemode": false, "on_behalf_of": null, "payment_method": "pm_1KnfIV2eZvKYlo2CaOLGBF00", "payment_method_details": {"acss_debit": {}, "type": "acss_debit"}, "setup_error": null, "setup_intent": "seti_1KnfIVEcXtiJtvvhWiIbMkpH", "status": "succeeded", "usage": "off_session"}, "emitted_at": 1691675239368} +{"stream": "usage_records", "data": {"id": "sis_1NfK1hEcXtiJtvvhuXRFRPDY", "object": "usage_record_summary", "invoice": null, "livemode": false, "period": {"end": null, "start": null}, "subscription_item": "si_O2toUlN7ELjLcM", "total_usage": 1}, "emitted_at": 1692093541956} +{"stream": "usage_records", "data": {"id": "sis_1NfK1iEcXtiJtvvh2TcPgdBs", "object": "usage_record_summary", "invoice": null, "livemode": false, "period": {"end": null, "start": null}, "subscription_item": "si_O2WiEt5xsnTylQ", "total_usage": 1}, "emitted_at": 1692093542207} +{"stream": "usage_records", "data": {"id": "sis_1NfK1iEcXtiJtvvh4wjsk4YA", "object": "usage_record_summary", "invoice": null, "livemode": false, "period": {"end": null, "start": null}, "subscription_item": "si_O2WdoFASN6MHzF", "total_usage": 1}, "emitted_at": 1692093542457} +{"stream": "usage_records", "data": {"id": "sis_1NfK1iEcXtiJtvvhb1gufGpA", "object": "usage_record_summary", "invoice": null, "livemode": false, "period": {"end": null, "start": null}, "subscription_item": "si_O2WZCuG0IxqQHl", "total_usage": 1}, "emitted_at": 1692093542712} +{"stream": "transfer_reversals", "data": {"id": "trr_1NGolCEcXtiJtvvhOYPck3CP", "object": "transfer_reversal", "amount": 100, "balance_transaction": "txn_1NGolCEcXtiJtvvhZRy4Kd5S", "created": 1686253482, "currency": "usd", "destination_payment_refund": "pyr_1NGolBEYmRTj5on1STal3rmp", "metadata": {}, "source_refund": null, "transfer": "tr_1NGoaCEcXtiJtvvhjmHtOGOm"}, "emitted_at": 1691675280329} +{"stream": "transfers", "data": {"id": "tr_1NH18zEcXtiJtvvhnd827cNO", "object": "transfer", "amount": 10000, "amount_reversed": 0, "balance_transaction": "txn_1NH190EcXtiJtvvhBO3PeR7p", "created": 1686301085, "currency": "usd", "description": null, "destination": "acct_1Jx8unEYmRTj5on1", "destination_payment": "py_1NH18zEYmRTj5on1GkCCsqLK", "livemode": false, "metadata": {}, "reversals": {"object": "list", "data": [], "has_more": false, "total_count": 0.0, "url": "/v1/transfers/tr_1NH18zEcXtiJtvvhnd827cNO/reversals"}, "reversed": false, "source_transaction": null, "source_type": "card", "transfer_group": null, "updated": 1686301085}, "emitted_at": 1693295032494} +{"stream": "transfers", "data": {"id": "tr_1NGoaCEcXtiJtvvhjmHtOGOm", "object": "transfer", "amount": 100, "amount_reversed": 100, "balance_transaction": "txn_1NGoaDEcXtiJtvvhsZrNMsdJ", "created": 1686252800, "currency": "usd", "description": null, "destination": "acct_1Jx8unEYmRTj5on1", "destination_payment": "py_1NGoaCEYmRTj5on1LAlAIG3a", "livemode": false, "metadata": {}, "reversals": {"object": "list", "data": [{"id": "trr_1NGolCEcXtiJtvvhOYPck3CP", "object": "transfer_reversal", "amount": 100, "balance_transaction": "txn_1NGolCEcXtiJtvvhZRy4Kd5S", "created": 1686253482, "currency": "usd", "destination_payment_refund": "pyr_1NGolBEYmRTj5on1STal3rmp", "metadata": {}, "source_refund": null, "transfer": "tr_1NGoaCEcXtiJtvvhjmHtOGOm"}], "has_more": false, "total_count": 1.0, "url": "/v1/transfers/tr_1NGoaCEcXtiJtvvhjmHtOGOm/reversals"}, "reversed": true, "source_transaction": null, "source_type": "card", "transfer_group": "ORDER10", "updated": 1686252800}, "emitted_at": 1693295032495} +{"stream": "checkout_sessions", "data": {"id": "cs_test_a1CyWU5MFKxAMRoqL3JAByQY35c0hUTN8kEfHgjxgefi5FXTTLmpI2kzJv", "object": "checkout.session", "after_expiration": null, "allow_promotion_codes": false, "amount_subtotal": 600, "amount_total": 600, "automatic_tax": {"enabled": true, "status": "complete"}, "billing_address_collection": "auto", "cancel_url": "https://stripe.com", "client_reference_id": null, "consent": null, "consent_collection": {"promotions": "none", "terms_of_service": "none"}, "created": 1686250464, "currency": "usd", "currency_conversion": null, "custom_fields": [], "custom_text": {"shipping_address": null, "submit": null}, "customer": "cus_O2topVBsfeTMXg", "customer_creation": "if_required", "customer_details": {"address": {"city": null, "country": "GE", "line1": null, "line2": null, "postal_code": null, "state": null}, "email": "integration-test+stripe@airbyte.io", "name": "INTEGRATION TEST", "phone": null, "tax_exempt": "none", "tax_ids": []}, "customer_email": null, "expires_at": 1686336864, "invoice": "in_1NGo0YEcXtiJtvvhr5YMntkt", "invoice_creation": null, "livemode": false, "locale": "auto", "metadata": {}, "mode": "subscription", "payment_intent": null, "payment_link": "plink_1NGny4EcXtiJtvvhtUjNl1V0", "payment_method_collection": "always", "payment_method_options": null, "payment_method_types": ["card"], "payment_status": "paid", "phone_number_collection": {"enabled": false}, "recovered_from": null, "setup_intent": null, "shipping_address_collection": null, "shipping_cost": null, "shipping_details": null, "shipping_options": [], "status": "complete", "submit_type": "auto", "subscription": "sub_1NGo0YEcXtiJtvvh9rKhuT2H", "success_url": "https://stripe.com", "total_details": {"amount_discount": 0, "amount_shipping": 0, "amount_tax": 0}, "url": null, "updated": 1686336864}, "emitted_at": 1693294914045} +{"stream": "checkout_sessions_line_items", "data": {"id": "li_1NGnyWEcXtiJtvvh0JLI6IUh", "object": "item", "amount_discount": 0, "amount_subtotal": 600, "amount_tax": 0, "amount_total": 600, "currency": "usd", "description": "tu", "discounts": [], "price": {"id": "price_1MSHZoEcXtiJtvvh6O8TYD8T", "object": "price", "active": true, "billing_scheme": "per_unit", "created": 1674209524, "currency": "usd", "custom_unit_amount": null, "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_NCgx1XP2IFQyKF", "recurring": {"aggregate_usage": null, "interval": "month", "interval_count": 1, "trial_period_days": null, "usage_type": "licensed"}, "tax_behavior": "exclusive", "tiers_mode": null, "transform_quantity": null, "type": "recurring", "unit_amount": 600, "unit_amount_decimal": "600"}, "quantity": 1, "taxes": [{"amount": 0, "rate": {"id": "txr_1NGnyXEcXtiJtvvhzuooCmsc", "object": "tax_rate", "active": false, "country": "GE", "created": 1686250465, "description": null, "display_name": "", "effective_percentage": 0.0, "inclusive": false, "jurisdiction": "Georgia", "livemode": false, "metadata": {}, "percentage": 0.0, "state": null, "tax_type": null}, "taxability_reason": "not_supported", "taxable_amount": 0}], "checkout_session_id": "cs_test_a1CyWU5MFKxAMRoqL3JAByQY35c0hUTN8kEfHgjxgefi5FXTTLmpI2kzJv", "checkout_session_expires_at": 1686336864}, "emitted_at": 1693294914845} diff --git a/airbyte-integrations/connectors/source-stripe/integration_tests/full_refresh_configured_catalog.json b/airbyte-integrations/connectors/source-stripe/integration_tests/full_refresh_configured_catalog.json deleted file mode 100644 index d20b624cce1c..000000000000 --- a/airbyte-integrations/connectors/source-stripe/integration_tests/full_refresh_configured_catalog.json +++ /dev/null @@ -1,74 +0,0 @@ -{ - "streams": [ - { - "stream": { - "name": "bank_accounts", - "json_schema": {}, - "supported_sync_modes": ["full_refresh"] - }, - "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite" - }, - { - "stream": { - "name": "external_account_bank_accounts", - "json_schema": {}, - "supported_sync_modes": ["full_refresh"], - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite", - "primary_key": [["id"]] - }, - { - "stream": { - "name": "customer_balance_transactions", - "json_schema": {}, - "supported_sync_modes": ["full_refresh"], - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite", - "primary_key": [["id"]] - }, - { - "stream": { - "name": "checkout_sessions", - "json_schema": {}, - "supported_sync_modes": ["full_refresh"], - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite", - "primary_key": [["id"]] - }, - { - "stream": { - "name": "checkout_sessions_line_items", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "default_cursor_field": ["checkout_session_expires_at"], - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite", - "cursor_field": ["checkout_session_expires_at"], - "primary_key": [["id"]] - }, - { - "stream": { - "name": "accounts", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "default_cursor_field": ["created"], - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "full_refresh", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] - } - ] -} diff --git a/airbyte-integrations/connectors/source-stripe/integration_tests/non_invoice_line_items_catalog.json b/airbyte-integrations/connectors/source-stripe/integration_tests/non_invoice_line_items_catalog.json deleted file mode 100644 index f9e9239038e4..000000000000 --- a/airbyte-integrations/connectors/source-stripe/integration_tests/non_invoice_line_items_catalog.json +++ /dev/null @@ -1,172 +0,0 @@ -{ - "streams": [ - { - "stream": { - "name": "customers", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "default_cursor_field": ["created"], - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] - }, - { - "stream": { - "name": "disputes", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "default_cursor_field": ["created"], - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] - }, - { - "stream": { - "name": "balance_transactions", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "default_cursor_field": ["created"], - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] - }, - { - "stream": { - "name": "charges", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "default_cursor_field": ["created"], - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] - }, - { - "stream": { - "name": "coupons", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "default_cursor_field": ["created"], - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] - }, - { - "stream": { - "name": "invoice_items", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "default_cursor_field": ["date"], - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["date"], - "primary_key": [["id"]] - }, - { - "stream": { - "name": "payouts", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "default_cursor_field": ["created"], - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] - }, - { - "stream": { - "name": "plans", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "default_cursor_field": ["created"], - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] - }, - { - "stream": { - "name": "promotion_codes", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "default_cursor_field": ["created"], - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] - }, - { - "stream": { - "name": "refunds", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "default_cursor_field": ["created"], - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] - }, - { - "stream": { - "name": "transfers", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "default_cursor_field": ["created"], - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] - }, - { - "stream": { - "name": "events", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "default_cursor_field": ["created"], - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "incremental", - "destination_sync_mode": "overwrite", - "cursor_field": ["created"], - "primary_key": [["id"]] - } - ] -} diff --git a/airbyte-integrations/connectors/source-stripe/metadata.yaml b/airbyte-integrations/connectors/source-stripe/metadata.yaml index e46be4d24e8f..d0f8dde30900 100644 --- a/airbyte-integrations/connectors/source-stripe/metadata.yaml +++ b/airbyte-integrations/connectors/source-stripe/metadata.yaml @@ -5,7 +5,7 @@ data: connectorSubtype: api connectorType: source definitionId: e094cb9a-26de-4645-8761-65c0c425d1de - dockerImageTag: 3.17.4 + dockerImageTag: 4.1.1 dockerRepository: airbyte/source-stripe githubIssueLabel: source-stripe icon: stripe.svg @@ -17,11 +17,23 @@ data: oss: enabled: true releaseStage: generally_available + suggestedStreams: + streams: + - customers + - invoices + - charges + - subscriptions + - refunds documentationUrl: https://docs.airbyte.com/integrations/sources/stripe tags: - language:python ab_internal: sl: 300 ql: 400 + releases: + breakingChanges: + 4.0.0: + message: "Version 4.0.0 changes the cursors in most of the Stripe streams that support incremental sync mode. This is done to not only sync the data that was created since previous sync, but also the data that was modified. A schema refresh of all effected streams is required to use the new cursor format." + upgradeDeadline: "2023-09-14" supportLevel: certified metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-stripe/setup.py b/airbyte-integrations/connectors/source-stripe/setup.py index 2ec69eca75f0..4365f97729bf 100644 --- a/airbyte-integrations/connectors/source-stripe/setup.py +++ b/airbyte-integrations/connectors/source-stripe/setup.py @@ -7,12 +7,7 @@ MAIN_REQUIREMENTS = ["airbyte-cdk", "stripe==2.56.0", "pendulum==2.1.2"] -TEST_REQUIREMENTS = [ - "pytest-mock~=3.6.1", - "pytest~=6.1", - "requests-mock", - "requests_mock~=1.8", -] +TEST_REQUIREMENTS = ["pytest-mock~=3.6.1", "pytest~=6.1", "requests-mock", "requests_mock~=1.8", "freezegun==1.2.2"] setup( name="source_stripe", diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/availability_strategy.py b/airbyte-integrations/connectors/source-stripe/source_stripe/availability_strategy.py index 3d8caf860ee5..9906c21a525a 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/availability_strategy.py +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/availability_strategy.py @@ -39,7 +39,7 @@ def handle_http_error( return False, reason -class StripeSubStreamAvailabilityStrategy(HttpAvailabilityStrategy): +class StripeSubStreamAvailabilityStrategy(StripeAvailabilityStrategy): def check_availability(self, stream: Stream, logger: logging.Logger, source: Optional[Source]) -> Tuple[bool, Optional[str]]: """Traverse through all the parents of a given stream and run availability strategy on each of them""" try: @@ -47,7 +47,7 @@ def check_availability(self, stream: Stream, logger: logging.Logger, source: Opt except AttributeError: return super().check_availability(stream, logger, source) if parent_stream: - parent_stream_instance = getattr(current_stream, "get_parent_stream_instance")() + parent_stream_instance = getattr(current_stream, "parent") # Accessing the `availability_strategy` property will instantiate AvailabilityStrategy under the hood availability_strategy = parent_stream_instance.availability_strategy if availability_strategy: diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/application_fees.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/application_fees.json index cd520cca84e5..16e07b9dcb04 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/application_fees.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/application_fees.json @@ -31,6 +31,9 @@ "created": { "type": ["null", "number"] }, + "updated": { + "type": ["null", "integer"] + }, "currency": { "type": ["null", "string"] }, diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/application_fees_refunds.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/application_fees_refunds.json index 1ad153698443..7f462a752dd7 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/application_fees_refunds.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/application_fees_refunds.json @@ -19,6 +19,9 @@ "created": { "type": ["null", "number"] }, + "updated": { + "type": ["null", "integer"] + }, "currency": { "type": ["null", "string"] }, diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/authorizations.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/authorizations.json index 861a99722d0a..e6e562ce3510 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/authorizations.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/authorizations.json @@ -36,6 +36,9 @@ "created": { "type": ["null", "integer"] }, + "updated": { + "type": ["null", "integer"] + }, "currency": { "type": ["null", "string"] }, diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/bank_accounts.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/bank_accounts.json index 8f44bb792566..9a1130c1c5b9 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/bank_accounts.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/bank_accounts.json @@ -40,6 +40,12 @@ }, "status": { "type": ["null", "string"] + }, + "updated": { + "type": ["null", "integer"] + }, + "is_deleted": { + "type": ["null", "boolean"] } } } diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/charges.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/charges.json index 0a6bb196269d..b275b90898eb 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/charges.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/charges.json @@ -348,6 +348,9 @@ "created": { "type": ["null", "integer"] }, + "updated": { + "type": ["null", "integer"] + }, "order": { "type": ["null", "string"] }, diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/checkout_sessions.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/checkout_sessions.json index 0d5ee3731c4c..b30a368edef2 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/checkout_sessions.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/checkout_sessions.json @@ -213,6 +213,233 @@ } } }, - "url": { "type": ["null", "string"] } + "url": { "type": ["null", "string"] }, + "updated": { "type": ["null", "integer"] }, + "created": { "type": ["null", "integer"] }, + "currency_conversion": { + "type": ["null", "object"], + "properties": { + "amount_subtotal": { + "type": ["null", "integer"] + }, + "amount_total": { + "type": ["null", "integer"] + }, + "fix_rate": { + "type": ["null", "string"] + }, + "source_currency": { + "type": ["null", "string"] + } + } + }, + "custom_fields": { + "type": ["null", "array"], + "items": { + "type": ["null", "object"], + "properties": { + "dropdown": { + "type": ["null", "object"], + "properties": { + "options": { + "type": ["null", "array"], + "items": { + "type": ["null", "object"] + } + }, + "value": { + "type": ["null", "string"] + } + } + }, + "key": { + "type": ["null", "string"] + }, + "label": { + "type": ["null", "object"], + "properties": { + "custom": { + "type": ["null", "string"] + }, + "type": { + "type": ["null", "string"] + } + } + }, + "numeric": { + "type": ["null", "object"], + "properties": { + "maximum_length": { + "type": ["null", "integer"] + }, + "minimum_length": { + "type": ["null", "integer"] + }, + "value": { + "type": ["null", "string"] + } + } + }, + "optional": { + "type": ["null", "boolean"] + }, + "text": { + "type": ["null", "object"], + "properties": { + "maximum_length": { + "type": ["null", "integer"] + }, + "minimum_length": { + "type": ["null", "integer"] + }, + "value": { + "type": ["null", "string"] + } + } + }, + "type": { + "type": ["null", "string"] + } + } + } + }, + "custom_text": { + "type": ["null", "object"], + "properties": { + "shipping_address": { + "type": ["null", "object"], + "properties": { + "message": { + "type": ["null", "string"] + } + } + }, + "submit": { + "type": ["null", "string"], + "properties": { + "message": { + "type": ["null", "string"] + } + } + } + } + }, + "customer_creation": { "type": ["null", "string"] }, + "invoice": { "type": ["null", "string"] }, + "invoice_creation": { + "type": ["null", "object"], + "properties": { + "enabled": { + "type": ["null", "boolean"] + }, + "invoice_data": { + "type": ["null", "object"], + "properties": { + "account_tax_ids": { + "type": ["null", "array"], + "items": { + "type": ["null", "string"] + } + }, + "custom_fields": { + "type": ["null", "array"], + "items": { + "type": ["null", "object"], + "properties": { + "name": { + "type": ["null", "string"] + }, + "value": { + "type": ["null", "string"] + } + } + } + }, + "description": { + "type": ["null", "string"] + }, + "footer": { + "type": ["null", "string"] + }, + "metadata": { + "type": ["null", "object"] + }, + "rendering_options": { + "type": ["null", "object"], + "properties": { + "amount_tax_display": { + "type": ["null", "string"] + } + } + } + } + } + } + }, + "payment_link": { "type": ["null", "string"] }, + "payment_method_collection": { "type": ["null", "string"] }, + "shipping_cost": { + "type": ["null", "object"], + "properties": { + "amount_total": { + "type": ["null", "integer"] + }, + "amount_subtotal": { + "type": ["null", "integer"] + }, + "amount_tax": { + "type": ["null", "integer"] + }, + "shipping_rate": { + "type": ["null", "string"] + }, + "taxes": { + "type": ["null", "array"], + "items": { + "type": ["null", "object"], + "properties": { + "amount": { + "type": ["null", "integer"] + }, + "rate": { + "$ref": "tax_rate.json" + }, + "taxability_reason": { + "type": ["null", "string"] + }, + "taxable_amount": { + "type": ["null", "integer"] + } + } + } + } + } + }, + "shipping_details": { + "type": ["null", "object"], + "properties": { + "address": { + "$ref": "address.json" + }, + "name": { + "type": ["null", "string"] + } + } + }, + "shipping_options": { + "type": ["null", "array"], + "items": { + "type": ["null", "object"], + "properties": { + "shipping_amount": { + "type": ["null", "integer"] + }, + "shipping_rate": { + "type": ["null", "string"] + } + } + } + }, + "status": { "type": ["null", "string"] } } } diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/checkout_sessions_line_items.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/checkout_sessions_line_items.json index 053ce4f6d6cc..09c6e9e28f3e 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/checkout_sessions_line_items.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/checkout_sessions_line_items.json @@ -7,6 +7,8 @@ "checkout_session_expires_at": { "type": ["null", "integer"] }, "object": { "type": ["null", "string"] }, "amount_subtotal": { "type": ["null", "integer"] }, + "amount_tax": { "type": ["null", "integer"] }, + "amount_discount": { "type": ["null", "integer"] }, "amount_total": { "type": ["null", "integer"] }, "currency": { "type": ["null", "string"] }, "description": { "type": ["null", "string"] }, diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/coupons.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/coupons.json index 44b5c61a8527..4f5a22146fe8 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/coupons.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/coupons.json @@ -47,8 +47,14 @@ "created": { "type": ["null", "integer"] }, + "updated": { + "type": ["null", "integer"] + }, "percent_off": { "type": ["null", "number"] + }, + "is_deleted": { + "type": ["null", "boolean"] } } } diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/credit_notes.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/credit_notes.json index b5f962fc3101..bfcc21ceddc5 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/credit_notes.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/credit_notes.json @@ -18,6 +18,9 @@ "created": { "type": ["null", "integer"] }, + "updated": { + "type": ["null", "integer"] + }, "currency": { "type": ["null", "string"] }, diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/disputes.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/disputes.json index b627b72dd7e0..d0983dcaacba 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/disputes.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/disputes.json @@ -27,6 +27,9 @@ "created": { "type": ["null", "integer"] }, + "updated": { + "type": ["null", "integer"] + }, "currency": { "type": ["null", "string"] }, @@ -154,6 +157,25 @@ }, "balance_transaction": { "type": ["null", "string"] + }, + "payment_method_details": { + "type": ["null", "object"], + "properties": { + "card": { + "type": ["null", "object"], + "properties": { + "brand": { + "type": ["null", "string"] + }, + "network_reason_code": { + "type": ["null", "string"] + } + } + }, + "type": { + "type": ["null", "string"] + } + } } } } diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/early_fraud_warnings.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/early_fraud_warnings.json index 63b52a80af0d..0b2890c57a62 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/early_fraud_warnings.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/early_fraud_warnings.json @@ -19,6 +19,9 @@ "created": { "type": ["null", "number"] }, + "updated": { + "type": ["null", "integer"] + }, "fraud_type": { "type": ["null", "string"] }, diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/external_account_bank_accounts.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/external_account_bank_accounts.json index 330c37645db0..872b617e0ecb 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/external_account_bank_accounts.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/external_account_bank_accounts.json @@ -43,6 +43,12 @@ }, "account": { "type": ["string", "null"] + }, + "updated": { + "type": ["null", "integer"] + }, + "is_deleted": { + "type": ["null", "boolean"] } } } diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/external_account_cards.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/external_account_cards.json index 00c1203e15e7..ff161461449e 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/external_account_cards.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/external_account_cards.json @@ -73,6 +73,12 @@ }, "account": { "type": ["string", "null"] + }, + "updated": { + "type": ["null", "integer"] + }, + "is_deleted": { + "type": ["null", "boolean"] } } } diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/invoice_items.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/invoice_items.json index 0c2f07854952..04142b340a3e 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/invoice_items.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/invoice_items.json @@ -93,8 +93,7 @@ "properties": {} }, "updated": { - "type": ["null", "string"], - "format": "date-time" + "type": ["null", "string"] } } }, @@ -121,6 +120,9 @@ "date": { "type": ["null", "integer"] }, + "updated": { + "type": ["null", "integer"] + }, "object": { "type": ["null", "string"] }, @@ -168,6 +170,9 @@ }, "unit_amount_decimal": { "type": ["null", "string"] + }, + "is_deleted": { + "type": ["null", "boolean"] } } } diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/invoices.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/invoices.json index 8189cefc7df7..3bd0ccc77778 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/invoices.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/invoices.json @@ -4,6 +4,9 @@ "created": { "type": ["null", "integer"] }, + "updated": { + "type": ["null", "integer"] + }, "next_payment_attempt": { "type": ["null", "number"] }, @@ -206,11 +209,7 @@ "type": ["null", "integer"] }, "lines": { - "type": ["null", "array", "object"], - "items": { - "type": ["null", "string"] - }, - "properties": {} + "type": ["null", "object"] }, "forgiven": { "type": ["null", "boolean"] @@ -236,6 +235,14 @@ "subscription": { "type": ["null", "string"] }, + "subscription_details": { + "type": ["null", "object"], + "properties": { + "metadata": { + "type": ["null", "object"] + } + } + }, "status": { "type": ["null", "string"] }, @@ -586,6 +593,9 @@ }, "account_country": { "type": ["null", "string"] + }, + "is_deleted": { + "type": ["null", "boolean"] } } } diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/payouts.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/payouts.json index a057a81ec4fb..1afc989ceda0 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/payouts.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/payouts.json @@ -22,6 +22,9 @@ "created": { "type": ["null", "integer"] }, + "updated": { + "type": ["null", "integer"] + }, "amount_reversed": { "type": ["null", "integer"] }, diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/persons.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/persons.json index a409b35c1551..8a4cfb640ee5 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/persons.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/persons.json @@ -75,6 +75,9 @@ "created": { "type": ["null", "integer"] }, + "updated": { + "type": ["null", "integer"] + }, "dob": { "type": ["null", "object"], "properties": { @@ -417,6 +420,9 @@ "type": ["null", "string"] } } + }, + "is_deleted": { + "type": ["null", "boolean"] } } } diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/plans.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/plans.json index 2b46c1435c85..2cdf3d8f2340 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/plans.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/plans.json @@ -36,6 +36,9 @@ "created": { "type": ["null", "integer"] }, + "updated": { + "type": ["null", "integer"] + }, "statement_description": { "type": ["null", "string"] }, @@ -90,6 +93,9 @@ }, "amount_decimal": { "type": ["null", "string"] + }, + "is_deleted": { + "type": ["null", "boolean"] } } } diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/prices.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/prices.json index 699186837509..4ec44e6f6d9f 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/prices.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/prices.json @@ -19,6 +19,9 @@ "created": { "type": ["null", "integer"] }, + "updated": { + "type": ["null", "integer"] + }, "currency": { "type": ["null", "string"] }, @@ -82,6 +85,9 @@ }, "unit_amount_decimal": { "type": ["null", "string"] + }, + "is_deleted": { + "type": ["null", "boolean"] } } } diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/products.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/products.json index b7416f78a356..e7db7e052c60 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/products.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/products.json @@ -87,6 +87,20 @@ }, "tax_code": { "type": ["null", "string"] + }, + "features": { + "type": ["null", "array"], + "items": { + "type": ["null", "object"], + "properties": { + "name": { + "type": ["null", "string"] + } + } + } + }, + "is_deleted": { + "type": ["null", "boolean"] } } } diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/promotion_codes.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/promotion_codes.json index c602c4398f13..0d487173b4a4 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/promotion_codes.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/promotion_codes.json @@ -43,6 +43,7 @@ "object": { "type": ["null", "string"] }, "active": { "type": ["null", "boolean"] }, "created": { "type": ["null", "integer"] }, + "updated": { "type": ["null", "integer"] }, "customer": { "type": ["null", "string"] }, "expires_at": { "type": ["null", "integer"] }, "livemode": { "type": ["null", "boolean"] }, diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/refunds.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/refunds.json index 89800f4f9318..15717d69ebba 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/refunds.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/refunds.json @@ -19,6 +19,9 @@ "created": { "type": ["null", "integer"] }, + "updated": { + "type": ["null", "integer"] + }, "currency": { "type": ["null", "string"] }, diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/reviews.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/reviews.json index aef12a767d8a..2f00ebc7a6d8 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/reviews.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/reviews.json @@ -15,6 +15,9 @@ "created": { "type": ["null", "integer"] }, + "updated": { + "type": ["null", "integer"] + }, "id": { "type": ["null", "string"] }, diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/card.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/card.json index 532e23a24519..8b4e9239adc3 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/card.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/card.json @@ -13,6 +13,9 @@ "created": { "type": ["null", "integer"] }, + "updated": { + "type": ["null", "integer"] + }, "currency": { "type": ["null", "string"] }, diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/cardholder.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/cardholder.json index 8c48e4e47803..1ff421aba58c 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/cardholder.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/cardholder.json @@ -20,6 +20,9 @@ "created": { "type": ["null", "integer"] }, + "updated": { + "type": ["null", "integer"] + }, "email": { "type": ["null", "string"] }, diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/customer.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/customer.json index 9d7850a5d562..075a50a3369c 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/customer.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/customer.json @@ -833,11 +833,17 @@ "created": { "type": ["null", "integer"] }, + "updated": { + "type": ["null", "integer"] + }, "tax_info": { "type": ["null", "string"] }, "test_clock": { "type": ["null", "string"] + }, + "is_deleted": { + "type": ["null", "boolean"] } } } diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/payment_intent.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/payment_intent.json index ba4e006c1ee8..5fadd401dd69 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/payment_intent.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/payment_intent.json @@ -62,6 +62,9 @@ "created": { "type": ["null", "integer"] }, + "updated": { + "type": ["null", "integer"] + }, "currency": { "type": ["null", "string"] }, diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/payment_method.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/payment_method.json index e181f7ea0e9b..29d7eef47d6e 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/payment_method.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/payment_method.json @@ -142,6 +142,9 @@ "created": { "type": ["null", "integer"] }, + "updated": { + "type": ["null", "integer"] + }, "customer": { "$ref": "customer.json" }, diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/setup_intent.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/setup_intent.json index 878fae7e2f0f..0b78f351591a 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/setup_intent.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/setup_intent.json @@ -17,6 +17,9 @@ "created": { "type": ["integer"] }, + "updated": { + "type": ["null", "integer"] + }, "customer": { "type": ["null", "string"] }, diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/tax_rate.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/tax_rate.json new file mode 100644 index 000000000000..45b2339775bb --- /dev/null +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/tax_rate.json @@ -0,0 +1,98 @@ +{ + "type": [ + "null", + "object" + ], + "properties": { + "id": { + "type": [ + "null", + "string" + ] + }, + "object": { + "type": [ + "null", + "string" + ] + }, + "active": { + "type": [ + "null", + "boolean" + ] + }, + "country": { + "type": [ + "null", + "string" + ] + }, + "created": { + "type": [ + "null", + "integer" + ] + }, + "description": { + "type": [ + "null", + "string" + ] + }, + "display_name": { + "type": [ + "null", + "string" + ] + }, + "effective_percentage": { + "type": [ + "null", + "number" + ] + }, + "inclusive": { + "type": [ + "null", + "boolean" + ] + }, + "jurisdiction": { + "type": [ + "null", + "string" + ] + }, + "livemode": { + "type": [ + "null", + "boolean" + ] + }, + "metadata": { + "type": [ + "null", + "object" + ] + }, + "percentage": { + "type": [ + "null", + "number" + ] + }, + "state": { + "type": [ + "null", + "string" + ] + }, + "tax_type": { + "type": [ + "null", + "string" + ] + } + } +} \ No newline at end of file diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/tax_rates.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/tax_rates.json index ee5b078c5d73..705a7c1a9ee7 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/tax_rates.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/shared/tax_rates.json @@ -1,53 +1,6 @@ { "type": ["null", "array"], "items": { - "type": ["null", "object"], - "properties": { - "id": { - "type": ["null", "string"] - }, - "object": { - "type": ["null", "string"] - }, - "active": { - "type": ["null", "boolean"] - }, - "country": { - "type": ["null", "string"] - }, - "created": { - "type": ["null", "integer"] - }, - "description": { - "type": ["null", "string"] - }, - "display_name": { - "type": ["null", "string"] - }, - "effective_percentage": { - "type": ["null", "number"] - }, - "inclusive": { - "type": ["null", "boolean"] - }, - "jurisdiction": { - "type": ["null", "string"] - }, - "livemode": { - "type": ["null", "boolean"] - }, - "metadata": { - "type": ["null", "object"] - }, - "percentage": { - "type": ["null", "number"] - }, - "state": { - "type": ["null", "string"] - }, - "tax_type": { - "type": ["null", "string"] - } - } + "$ref": "tax_rate.json" } } diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/subscription_items.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/subscription_items.json index c6d36caab561..40186badb810 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/subscription_items.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/subscription_items.json @@ -6,12 +6,10 @@ "properties": {} }, "canceled_at": { - "type": ["null", "string"], - "format": "date-time" + "type": ["null", "string"] }, "current_period_end": { - "type": ["null", "string"], - "format": "date-time" + "type": ["null", "string"] }, "plan": { "type": ["null", "object", "string"], diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/subscription_schedule.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/subscription_schedule.json index e8729bfefab4..9f187d82924c 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/subscription_schedule.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/subscription_schedule.json @@ -21,6 +21,9 @@ "created": { "type": ["null", "integer"] }, + "updated": { + "type": ["null", "integer"] + }, "current_phase": { "type": ["null", "object"], "additionalProperties": true, @@ -104,54 +107,7 @@ "type": ["null", "string"] }, "tax_rates": { - "type": ["null", "array"], - "items": { - "type": ["null", "object"], - "additionalProperties": true, - "properties": { - "id": { - "type": ["null", "string"] - }, - "object": { - "type": ["null", "string"] - }, - "active": { - "type": ["null", "boolean"] - }, - "country": { - "type": ["null", "string"] - }, - "created": { - "type": ["null", "string"], - "format": "date-time" - }, - "display_name": { - "type": ["null", "string"] - }, - "inclusive": { - "type": ["null", "boolean"] - }, - "jurisdiction": { - "type": ["null", "string"] - }, - "livemode": { - "type": ["null", "boolean"] - }, - "metadata": { - "type": ["null", "object"], - "additionalProperties": true - }, - "percentage": { - "type": ["null", "number"] - }, - "state": { - "type": ["null", "string"] - }, - "tax_type": { - "type": ["null", "string"] - } - } - } + "$ref": "tax_rates.json" } } } diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/subscriptions.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/subscriptions.json index 405647bd85cc..5d06810fb4c0 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/subscriptions.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/subscriptions.json @@ -233,6 +233,9 @@ "created": { "type": ["null", "integer"] }, + "updated": { + "type": ["null", "integer"] + }, "ended_at": { "type": ["null", "number"] }, @@ -442,6 +445,9 @@ "type": ["null", "boolean"] } } + }, + "is_deleted": { + "type": ["null", "boolean"] } } } diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/top_ups.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/top_ups.json index ec3424a67763..8d25d5cb7a4b 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/top_ups.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/top_ups.json @@ -31,6 +31,9 @@ "created": { "type": ["null", "integer"] }, + "updated": { + "type": ["null", "integer"] + }, "destination_balance": { "type": ["null", "string"] }, diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/transactions.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/transactions.json index fed1ef8855e9..74af29cec809 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/transactions.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/transactions.json @@ -29,6 +29,9 @@ "created": { "type": ["null", "integer"] }, + "updated": { + "type": ["null", "integer"] + }, "currency": { "type": ["null", "string"] }, diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/transfers.json b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/transfers.json index 45ace8c56e4f..70248975b80e 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/transfers.json +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/schemas/transfers.json @@ -42,6 +42,9 @@ "created": { "type": ["null", "integer"] }, + "updated": { + "type": ["null", "integer"] + }, "amount_reversed": { "type": ["null", "integer"] }, @@ -86,6 +89,9 @@ }, "description": { "type": ["null", "string"] + }, + "destination_payment": { + "type": ["null", "string"] } }, "type": ["null", "object"] diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/source.py b/airbyte-integrations/connectors/source-stripe/source_stripe/source.py index a2f2b3303a12..2ccc020bc07b 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/source.py +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/source.py @@ -3,128 +3,415 @@ # -from typing import Any, List, Mapping, Tuple +from typing import Any, List, Mapping, MutableMapping, Tuple import pendulum import stripe from airbyte_cdk import AirbyteLogger +from airbyte_cdk.models import FailureType from airbyte_cdk.sources import AbstractSource from airbyte_cdk.sources.streams import Stream from airbyte_cdk.sources.streams.http.auth import TokenAuthenticator +from airbyte_cdk.utils import AirbyteTracedException from source_stripe.streams import ( - Accounts, - ApplicationFees, - ApplicationFeesRefunds, - Authorizations, - BalanceTransactions, - BankAccounts, - Cardholders, - Cards, - Charges, - CheckoutSessions, CheckoutSessionsLineItems, - Coupons, - CreditNotes, + CreatedCursorIncrementalStripeStream, CustomerBalanceTransactions, - Customers, - Disputes, - EarlyFraudWarnings, Events, - ExternalAccountBankAccounts, - ExternalAccountCards, - FileLinks, - Files, - InvoiceItems, - InvoiceLineItems, - Invoices, - PaymentIntents, - PaymentMethods, - Payouts, + FilteringRecordExtractor, + IncrementalStripeStream, Persons, - Plans, - Prices, - Products, - PromotionCodes, - Refunds, - Reviews, SetupAttempts, - SetupIntents, - ShippingRates, - SubscriptionItems, - Subscriptions, - SubscriptionSchedule, - TopUps, - Transactions, - TransferReversals, - Transfers, - UsageRecords, + StripeLazySubStream, + StripeStream, + StripeSubStream, + UpdatedCursorIncrementalStripeLazySubStream, + UpdatedCursorIncrementalStripeStream, ) class SourceStripe(AbstractSource): + @staticmethod + def validate_and_fill_with_defaults(config: MutableMapping) -> MutableMapping: + start_date, lookback_window_days, slice_range = ( + config.get("start_date"), + config.get("lookback_window_days"), + config.get("slice_range"), + ) + if lookback_window_days is None: + config["lookback_window_days"] = 0 + elif not isinstance(lookback_window_days, int) or lookback_window_days < 0: + message = f"Invalid lookback window {lookback_window_days}. Please use only positive integer values or 0." + raise AirbyteTracedException( + message=message, + internal_message=message, + failure_type=FailureType.config_error, + ) + if start_date: + try: + start_date = pendulum.parse(start_date).int_timestamp + except pendulum.parsing.exceptions.ParserError as e: + message = f"Invalid start date {start_date}. Please use YYYY-MM-DDTHH:MM:SSZ format." + raise AirbyteTracedException( + message=message, + internal_message=message, + failure_type=FailureType.config_error, + ) from e + else: + start_date = pendulum.datetime(2017, 1, 25).int_timestamp + config["start_date"] = start_date + if slice_range is None: + config["slice_range"] = 365 + elif not isinstance(slice_range, int) or slice_range < 1: + message = f"Invalid slice range value {slice_range}. Please use positive integer values only." + raise AirbyteTracedException( + message=message, + internal_message=message, + failure_type=FailureType.config_error, + ) + return config + def check_connection(self, logger: AirbyteLogger, config: Mapping[str, Any]) -> Tuple[bool, Any]: + self.validate_and_fill_with_defaults(config) + stripe.api_key = config["client_secret"] try: - stripe.api_key = config["client_secret"] stripe.Account.retrieve(config["account_id"]) - return True, None - except Exception as e: - return False, e + except stripe.error.AuthenticationError as e: + return False, str(e) + return True, None def streams(self, config: Mapping[str, Any]) -> List[Stream]: + config = self.validate_and_fill_with_defaults(config) authenticator = TokenAuthenticator(config["client_secret"]) - start_date = pendulum.parse(config["start_date"]).int_timestamp args = { "authenticator": authenticator, "account_id": config["account_id"], - "start_date": start_date, - "slice_range": config.get("slice_range"), + "start_date": config["start_date"], + "slice_range": config["slice_range"], } - incremental_args = {**args, "lookback_window_days": config.get("lookback_window_days")} + incremental_args = {**args, "lookback_window_days": config["lookback_window_days"]} + subscriptions = IncrementalStripeStream( + name="subscriptions", + path="subscriptions", + use_cache=True, + extra_request_params={"status": "all"}, + event_types=[ + "customer.subscription.created", + "customer.subscription.paused", + "customer.subscription.pending_update_applied", + "customer.subscription.pending_update_expired", + "customer.subscription.resumed", + "customer.subscription.trial_will_end", + "customer.subscription.updated", + "customer.subscription.deleted", + ], + **args, + ) + subscription_items = StripeLazySubStream( + name="subscription_items", + path="subscription_items", + extra_request_params=lambda self, *args, stream_slice, **kwargs: {"subscription": stream_slice[self.parent_id]}, + parent=subscriptions, + use_cache=True, + parent_id="subscription_id", + sub_items_attr="items", + **args, + ) + transfers = IncrementalStripeStream( + name="transfers", + path="transfers", + use_cache=True, + event_types=["transfer.created", "transfer.reversed", "transfer.updated"], + **args, + ) + application_fees = IncrementalStripeStream( + name="application_fees", + path="application_fees", + use_cache=True, + event_types=["application_fee.created", "application_fee.refunded"], + **args, + ) + customers = IncrementalStripeStream( + name="customers", + path="customers", + use_cache=True, + event_types=["customer.created", "customer.updated", "customer.deleted"], + **args, + ) + invoices = IncrementalStripeStream( + name="invoices", + path="invoices", + use_cache=True, + event_types=[ + "invoice.created", + "invoice.finalization_failed", + "invoice.finalized", + "invoice.marked_uncollectible", + "invoice.paid", + "invoice.payment_action_required", + "invoice.payment_failed", + "invoice.payment_succeeded", + "invoice.sent", + "invoice.upcoming", + "invoice.updated", + "invoice.voided", + "invoice.deleted", + ], + **args, + ) return [ - Accounts(**args), - ApplicationFees(**incremental_args), - ApplicationFeesRefunds(**args), - Authorizations(**incremental_args), - BalanceTransactions(**incremental_args), - BankAccounts(**args), - Cardholders(**incremental_args), - Cards(**incremental_args), - Charges(**incremental_args), - CheckoutSessions(**args), - CheckoutSessionsLineItems(**args), - Coupons(**incremental_args), - CreditNotes(**args), + CheckoutSessionsLineItems(**incremental_args), CustomerBalanceTransactions(**args), - Customers(**incremental_args), - Disputes(**incremental_args), - EarlyFraudWarnings(**args), Events(**incremental_args), - ExternalAccountBankAccounts(**args), - ExternalAccountCards(**args), - FileLinks(**incremental_args), - Files(**incremental_args), - InvoiceItems(**incremental_args), - InvoiceLineItems(**args), - Invoices(**incremental_args), - PaymentIntents(**incremental_args), - PaymentMethods(**args), - Payouts(**incremental_args), - Persons(**incremental_args), - Plans(**incremental_args), - Prices(**incremental_args), - Products(**incremental_args), - PromotionCodes(**incremental_args), - Refunds(**incremental_args), - Reviews(**incremental_args), + UpdatedCursorIncrementalStripeStream( + name="external_account_cards", + path=lambda self, *args, **kwargs: f"accounts/{self.account_id}/external_accounts", + event_types=["account.external_account.created", "account.external_account.updated", "account.external_account.deleted"], + legacy_cursor_field=None, + extra_request_params={"object": "card"}, + record_extractor=FilteringRecordExtractor("updated", None, "card"), + **args, + ), + UpdatedCursorIncrementalStripeStream( + name="external_account_bank_accounts", + path=lambda self, *args, **kwargs: f"accounts/{self.account_id}/external_accounts", + event_types=["account.external_account.created", "account.external_account.updated", "account.external_account.deleted"], + legacy_cursor_field=None, + extra_request_params={"object": "bank_account"}, + record_extractor=FilteringRecordExtractor("updated", None, "bank_account"), + **args, + ), + Persons(**args), SetupAttempts(**incremental_args), - SetupIntents(**incremental_args), - ShippingRates(**incremental_args), - SubscriptionItems(**args), - Subscriptions(**incremental_args), - SubscriptionSchedule(**incremental_args), - TopUps(**incremental_args), - Transactions(**incremental_args), - TransferReversals(**args), - Transfers(**incremental_args), - UsageRecords(**args), + StripeStream(name="accounts", path="accounts", use_cache=True, **args), + CreatedCursorIncrementalStripeStream(name="shipping_rates", path="shipping_rates", **incremental_args), + CreatedCursorIncrementalStripeStream(name="balance_transactions", path="balance_transactions", **incremental_args), + CreatedCursorIncrementalStripeStream(name="files", path="files", **incremental_args), + CreatedCursorIncrementalStripeStream(name="file_links", path="file_links", **incremental_args), + UpdatedCursorIncrementalStripeStream( + name="checkout_sessions", + path="checkout/sessions", + use_cache=True, + legacy_cursor_field="expires_at", + event_types=[ + "checkout.session.async_payment_failed", + "checkout.session.async_payment_succeeded", + "checkout.session.completed", + "checkout.session.expired", + ], + **args, + ), + UpdatedCursorIncrementalStripeStream( + name="payment_methods", + path="payment_methods", + event_types=[ + "payment_method.attached", + "payment_method.automatically_updated", + "payment_method.detached", + "payment_method.updated", + ], + **args, + ), + UpdatedCursorIncrementalStripeStream( + name="credit_notes", + path="credit_notes", + event_types=["credit_note.created", "credit_note.updated", "credit_note.voided"], + **args, + ), + UpdatedCursorIncrementalStripeStream( + name="early_fraud_warnings", + path="radar/early_fraud_warnings", + event_types=["radar.early_fraud_warning.created", "radar.early_fraud_warning.updated"], + **args, + ), + IncrementalStripeStream( + name="authorizations", + path="issuing/authorizations", + event_types=["issuing_authorization.created", "issuing_authorization.request", "issuing_authorization.updated"], + **args, + ), + customers, + IncrementalStripeStream( + name="cardholders", + path="issuing/cardholders", + event_types=["issuing_cardholder.created", "issuing_cardholder.updated"], + **args, + ), + IncrementalStripeStream( + name="charges", + path="charges", + expand_items=["data.refunds"], + event_types=[ + "charge.captured", + "charge.expired", + "charge.failed", + "charge.pending", + "charge.refunded", + "charge.succeeded", + "charge.updated", + ], + **args, + ), + IncrementalStripeStream( + name="coupons", path="coupons", event_types=["coupon.created", "coupon.updated", "coupon.deleted"], **args + ), + IncrementalStripeStream( + name="disputes", + path="disputes", + event_types=[ + "charge.dispute.closed", + "charge.dispute.created", + "charge.dispute.funds_reinstated", + "charge.dispute.funds_withdrawn", + "charge.dispute.updated", + ], + **args, + ), + application_fees, + invoices, + IncrementalStripeStream( + name="invoice_items", + path="invoiceitems", + legacy_cursor_field="date", + event_types=["invoiceitem.created", "invoiceitem.updated", "invoiceitem.deleted"], + **args, + ), + IncrementalStripeStream( + name="payouts", + path="payouts", + event_types=[ + "payout.canceled", + "payout.created", + "payout.failed", + "payout.paid", + "payout.reconciliation_completed", + "payout.updated", + ], + **args, + ), + IncrementalStripeStream( + name="plans", + path="plans", + expand_items=["data.tiers"], + event_types=["plan.created", "plan.updated", "plan.deleted"], + **args, + ), + IncrementalStripeStream(name="prices", path="prices", event_types=["price.created", "price.updated", "price.deleted"], **args), + IncrementalStripeStream( + name="products", path="products", event_types=["product.created", "product.updated", "product.deleted"], **args + ), + IncrementalStripeStream(name="reviews", path="reviews", event_types=["review.closed", "review.opened"], **args), + subscriptions, + IncrementalStripeStream( + name="subscription_schedule", + path="subscription_schedules", + event_types=[ + "subscription_schedule.aborted", + "subscription_schedule.canceled", + "subscription_schedule.completed", + "subscription_schedule.created", + "subscription_schedule.expiring", + "subscription_schedule.released", + "subscription_schedule.updated", + ], + **args, + ), + transfers, + IncrementalStripeStream( + name="refunds", path="refunds", use_cache=True, event_types=["refund.created", "refund.updated"], **args + ), + IncrementalStripeStream( + name="payment_intents", + path="payment_intents", + event_types=[ + "payment_intent.amount_capturable_updated", + "payment_intent.canceled", + "payment_intent.created", + "payment_intent.partially_funded", + "payment_intent.payment_failed", + "payment_intent.processing", + "payment_intent.requires_action", + "payment_intent.succeeded", + ], + **args, + ), + IncrementalStripeStream( + name="promotion_codes", + path="promotion_codes", + event_types=["promotion_code.created", "promotion_code.updated"], + **args, + ), + IncrementalStripeStream( + name="setup_intents", + path="setup_intents", + event_types=[ + "setup_intent.canceled", + "setup_intent.created", + "setup_intent.requires_action", + "setup_intent.setup_failed", + "setup_intent.succeeded", + ], + **args, + ), + IncrementalStripeStream( + name="cards", path="issuing/cards", event_types=["issuing_card.created", "issuing_card.updated"], **args + ), + IncrementalStripeStream( + name="transactions", + path="issuing/transactions", + event_types=["issuing_transaction.created", "issuing_transaction.updated"], + **args, + ), + IncrementalStripeStream( + name="top_ups", + path="topups", + event_types=["topup.canceled", "topup.created", "topup.failed", "topup.reversed", "topup.succeeded"], + **args, + ), + UpdatedCursorIncrementalStripeLazySubStream( + name="application_fees_refunds", + path=lambda self, stream_slice, *args, **kwargs: f"application_fees/{stream_slice[self.parent_id]}/refunds", + parent=application_fees, + event_types=["application_fee.refund.updated"], + parent_id="refund_id", + sub_items_attr="refunds", + add_parent_id=True, + **args, + ), + UpdatedCursorIncrementalStripeLazySubStream( + name="bank_accounts", + path=lambda self, stream_slice, *args, **kwargs: f"customers/{stream_slice[self.parent_id]}/sources", + parent=customers, + event_types=["customer.source.created", "customer.source.expiring", "customer.source.updated", "customer.source.deleted"], + legacy_cursor_field=None, + parent_id="customer_id", + sub_items_attr="sources", + response_filter={"attr": "object", "value": "bank_account"}, + extra_request_params={"object": "bank_account"}, + record_extractor=FilteringRecordExtractor("updated", None, "bank_account"), + **args, + ), + StripeLazySubStream( + name="invoice_line_items", + path=lambda self, *args, stream_slice, **kwargs: f"invoices/{stream_slice[self.parent_id]}/lines", + parent=invoices, + parent_id="invoice_id", + sub_items_attr="lines", + add_parent_id=True, + **args, + ), + subscription_items, + StripeSubStream( + name="transfer_reversals", + path=lambda self, stream_slice, *args, **kwargs: f"transfers/{stream_slice.get('parent', {}).get('id')}/reversals", + parent=transfers, + **args, + ), + StripeSubStream( + name="usage_records", + path=lambda self, stream_slice, *args, **kwargs: f"subscription_items/{stream_slice.get('parent', {}).get('id')}/usage_record_summaries", + parent=subscription_items, + primary_key=None, + **args, + ), ] diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/spec.yaml b/airbyte-integrations/connectors/source-stripe/source_stripe/spec.yaml index 872aa665492f..b718b82b39aa 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/spec.yaml +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/spec.yaml @@ -6,7 +6,6 @@ connectionSpecification: required: - client_secret - account_id - - start_date properties: account_id: type: string @@ -30,6 +29,7 @@ connectionSpecification: description: >- UTC date and time in the format 2017-01-25T00:00:00Z. Only data generated after this date will be replicated. + default: "2017-01-25T00:00:00Z" examples: - "2017-01-25T00:00:00Z" format: date-time @@ -42,7 +42,8 @@ connectionSpecification: description: >- When set, the connector will always re-export data from the past N days, where N is the value set here. This is useful if your data is frequently updated - after creation. More info here order: 3 slice_range: diff --git a/airbyte-integrations/connectors/source-stripe/source_stripe/streams.py b/airbyte-integrations/connectors/source-stripe/source_stripe/streams.py index 224a33a84ee1..8862d98e5d36 100644 --- a/airbyte-integrations/connectors/source-stripe/source_stripe/streams.py +++ b/airbyte-integrations/connectors/source-stripe/source_stripe/streams.py @@ -2,15 +2,17 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # +import copy import math from abc import ABC, abstractmethod from itertools import chain -from typing import Any, Iterable, List, Mapping, MutableMapping, Optional, Tuple, Type +from typing import Any, Callable, Iterable, List, Mapping, MutableMapping, Optional, Tuple, Union import pendulum import requests from airbyte_cdk.models import SyncMode from airbyte_cdk.sources.streams.availability_strategy import AvailabilityStrategy +from airbyte_cdk.sources.streams.core import StreamData from airbyte_cdk.sources.streams.http import HttpStream, HttpSubStream from airbyte_cdk.sources.utils.transform import TransformConfig, TypeTransformer from source_stripe.availability_strategy import StripeAvailabilityStrategy, StripeSubStreamAvailabilityStrategy @@ -18,9 +20,60 @@ STRIPE_API_VERSION = "2022-11-15" +class IRecordExtractor(ABC): + @abstractmethod + def extract_records(self, response: requests.Response) -> Iterable[Mapping]: + pass + + +class DefaultRecordExtractor(IRecordExtractor): + def extract_records(self, response: requests.Response) -> Iterable[MutableMapping]: + response_json = response.json() + yield from response_json.get("data", []) + + +class EventRecordExtractor(DefaultRecordExtractor): + def __init__(self, cursor_field: str): + self.cursor_field = cursor_field + + def extract_records(self, response: requests.Response) -> Iterable[MutableMapping]: + records = super().extract_records(response) + # set the record updated date = date of event creation + for record in records: + item = record["data"]["object"] + item[self.cursor_field] = record["created"] + if record["type"].endswith(".deleted"): + item["is_deleted"] = True + yield item + + +class UpdatedCursorIncrementalRecordExtractor(DefaultRecordExtractor): + def __init__(self, cursor_field: str, legacy_cursor_field: Optional[str]): + self.cursor_field = cursor_field + self.legacy_cursor_field = legacy_cursor_field + + def extract_records(self, response: requests.Response) -> Iterable[MutableMapping]: + records = super().extract_records(response) + for record in records: + if self.legacy_cursor_field and self.cursor_field not in record: + record[self.cursor_field] = record[self.legacy_cursor_field] + yield record + + +class FilteringRecordExtractor(UpdatedCursorIncrementalRecordExtractor): + def __init__(self, cursor_field: str, legacy_cursor_field: Optional[str], object_type: str): + super().__init__(cursor_field, legacy_cursor_field) + self.object_type = object_type + + def extract_records(self, response: requests.Response) -> Iterable[MutableMapping]: + records = super().extract_records(response) + for record in records: + if record["object"] == self.object_type: + yield record + + class StripeStream(HttpStream, ABC): url_base = "https://api.stripe.com/v1/" - primary_key = "id" DEFAULT_SLICE_RANGE = 365 transformer = TypeTransformer(TransformConfig.DefaultSchemaNormalization) @@ -28,11 +81,64 @@ class StripeStream(HttpStream, ABC): def availability_strategy(self) -> Optional[AvailabilityStrategy]: return StripeAvailabilityStrategy() - def __init__(self, start_date: int, account_id: str, slice_range: int = DEFAULT_SLICE_RANGE, **kwargs): - super().__init__(**kwargs) + @property + def primary_key(self) -> Optional[Union[str, List[str], List[List[str]]]]: + return self._primary_key + + @property + def name(self) -> str: + if self._name: + return self._name + return super().name + + def path(self, *args, **kwargs) -> str: + if self._path: + return self._path if isinstance(self._path, str) else self._path(self, *args, **kwargs) + return super().path(*args, **kwargs) + + @property + def use_cache(self) -> bool: + return self._use_cache + + @property + def expand_items(self) -> Optional[List[str]]: + return self._expand_items + + def extra_request_params(self, *args, **kwargs) -> Mapping[str, Any]: + if callable(self._extra_request_params): + return self._extra_request_params(self, *args, **kwargs) + return self._extra_request_params or {} + + @property + def record_extractor(self) -> IRecordExtractor: + return self._record_extractor + + def __init__( + self, + start_date: int, + account_id: str, + *args, + slice_range: int = DEFAULT_SLICE_RANGE, + record_extractor: Optional[IRecordExtractor] = None, + name: Optional[str] = None, + path: Optional[Union[Callable, str]] = None, + use_cache: bool = False, + expand_items: Optional[List[str]] = None, + extra_request_params: Optional[Union[Mapping[str, Any], Callable]] = None, + primary_key: Optional[str] = "id", + **kwargs, + ): self.account_id = account_id self.start_date = start_date self.slice_range = slice_range or self.DEFAULT_SLICE_RANGE + self._record_extractor = record_extractor or DefaultRecordExtractor() + self._name = name + self._path = path + self._use_cache = use_cache + self._expand_items = expand_items + self._extra_request_params = extra_request_params + self._primary_key = primary_key + super().__init__(*args, **kwargs) def next_page_token(self, response: requests.Response) -> Optional[Mapping[str, Any]]: decoded_response = response.json() @@ -47,36 +153,78 @@ def request_params( next_page_token: Mapping[str, Any] = None, ) -> MutableMapping[str, Any]: # Stripe default pagination is 10, max is 100 - params = {"limit": 100} + params = {"limit": 100, **self.extra_request_params(stream_state, stream_slice, next_page_token)} + if self.expand_items: + params["expand[]"] = self.expand_items # Handle pagination by inserting the next page's token in the request parameters if next_page_token: params.update(next_page_token) return params + def parse_response( + self, + response: requests.Response, + *, + stream_state: Mapping[str, Any], + stream_slice: Optional[Mapping[str, Any]] = None, + next_page_token: Optional[Mapping[str, Any]] = None, + ) -> Iterable[Mapping[str, Any]]: + yield from self.record_extractor.extract_records(response) + def request_headers(self, **kwargs) -> Mapping[str, Any]: headers = {"Stripe-Version": STRIPE_API_VERSION} if self.account_id: headers["Stripe-Account"] = self.account_id return headers - def parse_response(self, response: requests.Response, **kwargs) -> Iterable[Mapping]: - response_json = response.json() - yield from response_json.get("data", []) # Stripe puts records in a container array "data" +class IStreamSelector(ABC): + @abstractmethod + def get_parent_stream(self, stream_state: Mapping[str, Any]) -> StripeStream: + pass + + +class CreatedCursorIncrementalStripeStream(StripeStream): + # Stripe returns most recently created objects first, so we don't want to persist state until the entire stream has been read + state_checkpoint_interval = math.inf + + @property + def cursor_field(self) -> str: + return self._cursor_field + + def __init__( + self, + *args, + lookback_window_days: int = 0, + start_date_max_days_from_now: Optional[int] = None, + cursor_field: str = "created", + **kwargs, + ): + super().__init__(*args, **kwargs) + self.lookback_window_days = lookback_window_days + self.start_date_max_days_from_now = start_date_max_days_from_now + self._cursor_field = cursor_field + + def get_updated_state(self, current_stream_state: MutableMapping[str, Any], latest_record: Mapping[str, Any]) -> Mapping[str, Any]: + """ + Return the latest state by comparing the cursor value in the latest record with the stream's most recent state object + and returning an updated state object. + """ + state_cursor_value = current_stream_state.get(self.cursor_field, 0) + latest_record_value = latest_record.get(self.cursor_field) + if state_cursor_value and latest_record_value: + return {self.cursor_field: max(latest_record_value, state_cursor_value)} + return current_stream_state -class BasePaginationStripeStream(StripeStream, ABC): def request_params( self, - stream_state: Mapping[str, Any], + stream_state: Mapping[str, Any] = None, stream_slice: Mapping[str, Any] = None, next_page_token: Mapping[str, Any] = None, ) -> MutableMapping[str, Any]: - params = super().request_params(stream_state, stream_slice, next_page_token) - for key in ("created[gte]", "created[lte]"): - if key in stream_slice: - params[key] = stream_slice[key] - return params + params = super(CreatedCursorIncrementalStripeStream, self).request_params(stream_state, stream_slice, next_page_token) + return {"created[gte]": stream_slice["created[gte]"], "created[lte]": stream_slice["created[lte]"], **params} def chunk_dates(self, start_date_ts: int) -> Iterable[Tuple[int, int]]: now = pendulum.now().int_timestamp @@ -88,126 +236,274 @@ def chunk_dates(self, start_date_ts: int) -> Iterable[Tuple[int, int]]: after_ts = before_ts + 1 def stream_slices( - self, *, sync_mode: SyncMode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None - ) -> Iterable[Optional[Mapping[str, Any]]]: - for start, end in self.chunk_dates(self.start_date): - yield {"created[gte]": start, "created[lte]": end} - - def read_records( - self, - sync_mode: SyncMode, - cursor_field: List[str] = None, - stream_slice: Mapping[str, Any] = None, - stream_state: Mapping[str, Any] = None, - ) -> Iterable[Mapping[str, Any]]: - if stream_slice is None: - return [] - - yield from super().read_records(sync_mode, cursor_field, stream_slice, stream_state) - - -class IncrementalStripeStream(BasePaginationStripeStream, ABC): - # Stripe returns most recently created objects first, so we don't want to persist state until the entire stream has been read - state_checkpoint_interval = math.inf - - def __init__(self, lookback_window_days: int = 0, **kwargs): - super().__init__(**kwargs) - self.lookback_window_days = lookback_window_days - - @property - @abstractmethod - def cursor_field(self) -> str: - """ - Defining a cursor field indicates that a stream is incremental, so any incremental stream must extend this class - and define a cursor field. - """ - pass - - def get_updated_state(self, current_stream_state: MutableMapping[str, Any], latest_record: Mapping[str, Any]) -> Mapping[str, Any]: - """ - Return the latest state by comparing the cursor value in the latest record with the stream's most recent state object - and returning an updated state object. - """ - return {self.cursor_field: max(latest_record.get(self.cursor_field), current_stream_state.get(self.cursor_field, 0))} - - def stream_slices( - self, *, sync_mode: SyncMode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None + self, sync_mode: SyncMode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None ) -> Iterable[Optional[Mapping[str, Any]]]: + stream_state = stream_state or {} start_ts = self.get_start_timestamp(stream_state) if start_ts >= pendulum.now().int_timestamp: - # if the state is in the future - this will produce a state message but not make an API request - yield None - else: - for start, end in self.chunk_dates(start_ts): - yield {"created[gte]": start, "created[lte]": end} + return [] + for start, end in self.chunk_dates(start_ts): + yield {"created[gte]": start, "created[lte]": end} def get_start_timestamp(self, stream_state) -> int: start_point = self.start_date - if stream_state and self.cursor_field in stream_state: - start_point = max(start_point, stream_state[self.cursor_field]) + start_point = max(start_point, stream_state.get(self.cursor_field, 0)) if start_point and self.lookback_window_days: self.logger.info(f"Applying lookback window of {self.lookback_window_days} days to stream {self.name}") start_point = int(pendulum.from_timestamp(start_point).subtract(days=abs(self.lookback_window_days)).timestamp()) + if self.start_date_max_days_from_now: + allowed_start_date = pendulum.now().subtract(days=self.start_date_max_days_from_now).int_timestamp + if start_point < allowed_start_date: + self.logger.info( + f"Applying the restriction of maximum {self.start_date_max_days_from_now} days lookback to stream {self.name}" + ) + start_point = allowed_start_date return start_point -class Authorizations(IncrementalStripeStream): +class Events(CreatedCursorIncrementalStripeStream): """ - API docs: https://stripe.com/docs/api/issuing/authorizations/list + API docs: https://stripe.com/docs/api/events/list """ - cursor_field = "created" + def __init__(self, *args, event_types: Optional[Iterable[str]] = None, **kwargs): + super().__init__(*args, **kwargs) + self.event_types = event_types - def path(self, **kwargs) -> str: - return "issuing/authorizations" + def request_params( + self, + stream_state: Mapping[str, Any] = None, + stream_slice: Mapping[str, Any] = None, + next_page_token: Mapping[str, Any] = None, + ) -> MutableMapping[str, Any]: + params = super().request_params(stream_state=stream_state, stream_slice=stream_slice, next_page_token=next_page_token) + if self.event_types: + params["types[]"] = self.event_types + return params + + def path(self, **kwargs): + return "events" -class Customers(IncrementalStripeStream): +class UpdatedCursorIncrementalStripeStream(StripeStream): """ - API docs: https://stripe.com/docs/api/customers/list + `CreatedCursorIncrementalStripeStream` does not provide a way to read updated data since given date because the API does not allow to do this. + It only returns newly created entities since given date. So to have all the updated data as well we need to make use of the Events API, + which allows to retrieve updated data since given date for a number of predefined events which are associated with the corresponding + entities. """ - cursor_field = "created" - use_cache = True + @property + def cursor_field(self): + return self._cursor_field - def path(self, **kwargs) -> str: - return "customers" + @property + def legacy_cursor_field(self): + return self._legacy_cursor_field + @property + def event_types(self) -> Iterable[str]: + """A list of event types that are associated with entity.""" + return self._event_types -class BalanceTransactions(IncrementalStripeStream): - """ - API docs: https://stripe.com/docs/api/balance_transactions/list - """ + def __init__( + self, + *args, + cursor_field: str = "updated", + legacy_cursor_field: Optional[str] = "created", + event_types: Optional[List[str]] = None, + record_extractor: Optional[IRecordExtractor] = None, + **kwargs, + ): + self._event_types = event_types + self._cursor_field = cursor_field + self._legacy_cursor_field = legacy_cursor_field + record_extractor = record_extractor or UpdatedCursorIncrementalRecordExtractor(self.cursor_field, self.legacy_cursor_field) + super().__init__(*args, record_extractor=record_extractor, **kwargs) + # `lookback_window_days` is hardcoded as it does not make any sense to re-export events, + # as each event holds the latest value of a record. + # `start_date_max_days_from_now` represents the events API limitation. + self.events_stream = Events( + authenticator=self.authenticator, + lookback_window_days=0, + start_date_max_days_from_now=30, + account_id=self.account_id, + start_date=self.start_date, + slice_range=self.slice_range, + event_types=self.event_types, + cursor_field=self.cursor_field, + record_extractor=EventRecordExtractor(cursor_field=self.cursor_field), + ) - cursor_field = "created" - name = "balance_transactions" + def update_cursor_field(self, stream_state: MutableMapping[str, Any]) -> MutableMapping[str, Any]: + if not self.legacy_cursor_field: + # Streams that used to support only full_refresh mode. + # Now they support event-based incremental syncs but have a cursor field only in that mode. + return stream_state + # support for both legacy and new cursor fields + current_stream_state_value = stream_state.get(self.cursor_field, stream_state.get(self.legacy_cursor_field, 0)) + return {self.cursor_field: current_stream_state_value} - def path(self, **kwargs) -> str: - return "balance_transactions" + def get_updated_state(self, current_stream_state: MutableMapping[str, Any], latest_record: Mapping[str, Any]) -> Mapping[str, Any]: + latest_record_value = latest_record.get(self.cursor_field) + current_stream_state = self.update_cursor_field(current_stream_state) + current_state_value = current_stream_state.get(self.cursor_field) + if latest_record_value and current_state_value: + return {self.cursor_field: max(latest_record_value, current_state_value)} + return current_stream_state + + def stream_slices( + self, sync_mode: SyncMode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None + ) -> Iterable[Optional[Mapping[str, Any]]]: + # When reading from a stream, a `read_records` is called once per slice. + # We yield a single slice here because we don't want to make duplicate calls for event based incremental syncs. + yield {} + + def read_event_increments( + self, cursor_field: Optional[List[str]] = None, stream_state: Optional[Mapping[str, Any]] = None + ) -> Iterable[StreamData]: + stream_state = self.update_cursor_field(stream_state or {}) + for event_slice in self.events_stream.stream_slices( + sync_mode=SyncMode.incremental, cursor_field=cursor_field, stream_state=stream_state + ): + yield from self.events_stream.read_records( + SyncMode.incremental, cursor_field=cursor_field, stream_slice=event_slice, stream_state=stream_state + ) + + def read_records( + self, + sync_mode: SyncMode, + cursor_field: Optional[List[str]] = None, + stream_slice: Optional[Mapping[str, Any]] = None, + stream_state: Optional[Mapping[str, Any]] = None, + ) -> Iterable[StreamData]: + if not stream_state: + # both full refresh and initial incremental sync should use usual endpoints + yield from super().read_records(sync_mode, cursor_field=cursor_field, stream_slice=stream_slice, stream_state=stream_state) + return + yield from self.read_event_increments(cursor_field=cursor_field, stream_state=stream_state) -class Cardholders(IncrementalStripeStream): +class IncrementalStripeStreamSelector(IStreamSelector): + def __init__( + self, + created_cursor_incremental_stream: CreatedCursorIncrementalStripeStream, + updated_cursor_incremental_stream: UpdatedCursorIncrementalStripeStream, + ): + self._created_cursor_stream = created_cursor_incremental_stream + self._updated_cursor_stream = updated_cursor_incremental_stream + + def get_parent_stream(self, stream_state: Mapping[str, Any]) -> StripeStream: + return self._updated_cursor_stream if stream_state else self._created_cursor_stream + + +class IncrementalStripeStream(StripeStream): """ - API docs: https://stripe.com/docs/api/issuing/cardholders/list + This class combines both normal incremental sync and event based sync. It uses common endpoints for sliced data syncs in + the full refresh sync mode and initial incremental sync. For incremental syncs with a state, event based sync comes into action. """ - cursor_field = "created" + def __init__( + self, + *args, + cursor_field: str = "updated", + legacy_cursor_field: Optional[str] = "created", + event_types: Optional[List[str]] = None, + **kwargs, + ): + super().__init__(*args, **kwargs) + self._cursor_field = cursor_field + created_cursor_stream = CreatedCursorIncrementalStripeStream( + *args, + cursor_field=cursor_field, + # `lookback_window_days` set to 0 because this particular instance is in charge of full_refresh/initial incremental syncs only + lookback_window_days=0, + record_extractor=UpdatedCursorIncrementalRecordExtractor(cursor_field, legacy_cursor_field), + **kwargs, + ) + updated_cursor_stream = UpdatedCursorIncrementalStripeStream( + *args, + cursor_field=cursor_field, + legacy_cursor_field=legacy_cursor_field, + event_types=event_types, + **kwargs, + ) + self._parent_stream = None + self.stream_selector = IncrementalStripeStreamSelector(created_cursor_stream, updated_cursor_stream) + + @property + def parent_stream(self): + return self._parent_stream + + @parent_stream.setter + def parent_stream(self, stream): + self._parent_stream = stream - def path(self, **kwargs) -> str: - return "issuing/cardholders" + @property + def cursor_field(self) -> Union[str, List[str]]: + return [self._cursor_field] + + def stream_slices( + self, sync_mode: SyncMode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None + ) -> Iterable[Optional[Mapping[str, Any]]]: + self.parent_stream = self.stream_selector.get_parent_stream(stream_state) + yield from self.parent_stream.stream_slices(sync_mode, cursor_field, stream_state) + + def get_updated_state(self, current_stream_state: MutableMapping[str, Any], latest_record: Mapping[str, Any]) -> Mapping[str, Any]: + return self.parent_stream.get_updated_state(current_stream_state, latest_record) + + def read_records( + self, + sync_mode: SyncMode, + cursor_field: Optional[List[str]] = None, + stream_slice: Optional[Mapping[str, Any]] = None, + stream_state: Optional[Mapping[str, Any]] = None, + ) -> Iterable[StreamData]: + yield from self.parent_stream.read_records(sync_mode, cursor_field, stream_slice, stream_state) -class Charges(IncrementalStripeStream): +class CheckoutSessionsLineItems(CreatedCursorIncrementalStripeStream): """ - API docs: https://stripe.com/docs/api/charges/list + API docs: https://stripe.com/docs/api/checkout/sessions/line_items """ - cursor_field = "created" + cursor_field = "checkout_session_expires_at" + + @property + def expand_items(self) -> Optional[List[str]]: + return ["data.discounts", "data.taxes"] - def path(self, **kwargs) -> str: - return "charges" + @property + def checkout_session(self): + return UpdatedCursorIncrementalStripeStream( + name="checkout_sessions", + path="checkout/sessions", + use_cache=True, + legacy_cursor_field="expires_at", + event_types=[ + "checkout.session.async_payment_failed", + "checkout.session.async_payment_succeeded", + "checkout.session.completed", + "checkout.session.expired", + ], + authenticator=self.authenticator, + account_id=self.account_id, + start_date=self.start_date, + slice_range=self.slice_range, + ) + + def __init__(self, *args, **kwargs): + super().__init__(*args, **kwargs) + + # https://stripe.com/docs/api/checkout/sessions/create#create_checkout_session-expires_at + # 'expires_at' - can be anywhere from 1 to 24 hours after Checkout Session creation. + # thus we should always add 1 day to lookback window to avoid possible checkout_sessions losses + self.lookback_window_days = self.lookback_window_days + 1 + + def path(self, stream_slice: Mapping[str, Any] = None, **kwargs): + return f"checkout/sessions/{stream_slice['checkout_session_id']}/line_items" def request_params( self, @@ -215,25 +511,74 @@ def request_params( stream_slice: Mapping[str, Any] = None, next_page_token: Mapping[str, Any] = None, ) -> MutableMapping[str, Any]: - params = super().request_params(stream_state=stream_state, stream_slice=stream_slice, next_page_token=next_page_token) - params["expand[]"] = ["data.refunds"] + # override to not refer to slice values + params = {"limit": 100, **self.extra_request_params(stream_state, stream_slice, next_page_token)} + if self.expand_items: + params["expand[]"] = self.expand_items + if next_page_token: + params.update(next_page_token) return params + def stream_slices( + self, sync_mode: SyncMode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None + ) -> Iterable[Optional[Mapping[str, Any]]]: + checkout_session_state = None + if stream_state: + checkout_session_state = {"expires_at": stream_state["checkout_session_expires_at"]} + for checkout_session in self.checkout_session.read_records( + sync_mode=SyncMode.full_refresh, stream_state=checkout_session_state, stream_slice={} + ): + yield { + "checkout_session_id": checkout_session["id"], + "expires_at": checkout_session["expires_at"], + } + + @property + def raise_on_http_errors(self): + return False + + def parse_response(self, response: requests.Response, stream_slice: Mapping[str, Any] = None, **kwargs) -> Iterable[Mapping]: + if response.status_code == 404: + self.logger.warning(response.json()) + return + response.raise_for_status() + + response_json = response.json() + data = response_json.get("data", []) + if data and stream_slice: + self.logger.info(f"stream_slice: {stream_slice}") + cs_id = stream_slice.get("checkout_session_id", None) + cs_expires_at = stream_slice.get("expires_at", None) + for e in data: + e["checkout_session_id"] = cs_id + e["checkout_session_expires_at"] = cs_expires_at + yield from data + -class CustomerBalanceTransactions(BasePaginationStripeStream): +class CustomerBalanceTransactions(StripeStream): """ API docs: https://stripe.com/docs/api/customer_balance_transactions/list """ - name = "customer_balance_transactions" - def path(self, stream_slice: Mapping[str, Any] = None, **kwargs): return f"customers/{stream_slice['id']}/balance_transactions" + @property + def customers(self) -> IncrementalStripeStream: + return IncrementalStripeStream( + name="customers", + path="customers", + use_cache=True, + event_types=["customer.created", "customer.updated", "customer.deleted"], + authenticator=self.authenticator, + account_id=self.account_id, + start_date=self.start_date, + ) + def stream_slices( - self, *, sync_mode: SyncMode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None + self, sync_mode: SyncMode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None ) -> Iterable[Optional[Mapping[str, Any]]]: - parent_stream = Customers(authenticator=self.authenticator, account_id=self.account_id, start_date=self.start_date) + parent_stream = self.customers slices = parent_stream.stream_slices(sync_mode=SyncMode.full_refresh) for _slice in slices: for customer in parent_stream.read_records(sync_mode=SyncMode.full_refresh, stream_slice=_slice): @@ -245,49 +590,86 @@ def stream_slices( yield customer -class Coupons(IncrementalStripeStream): +class SetupAttempts(CreatedCursorIncrementalStripeStream, HttpSubStream): """ - API docs: https://stripe.com/docs/api/coupons/list + Docs: https://stripe.com/docs/api/setup_attempts/list """ - cursor_field = "created" - - def path(self, **kwargs): - return "coupons" - + def __init__(self, **kwargs): + # SetupAttempts needs lookback_window, but it's parent class does not + parent_kwargs = copy.copy(kwargs) + parent_kwargs.pop("lookback_window_days") + parent = IncrementalStripeStream( + name="setup_intents", + path="setup_intents", + event_types=[ + "setup_intent.canceled", + "setup_intent.created", + "setup_intent.requires_action", + "setup_intent.setup_failed", + "setup_intent.succeeded", + ], + **parent_kwargs, + ) + super().__init__(parent=parent, **kwargs) -class Disputes(IncrementalStripeStream): - """ - API docs: https://stripe.com/docs/api/disputes/list - """ + def path(self, **kwargs) -> str: + return "setup_attempts" - cursor_field = "created" + def stream_slices( + self, sync_mode: SyncMode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None + ) -> Iterable[Optional[Mapping[str, Any]]]: + # this is a unique combination of CreatedCursorIncrementalStripeStream and HttpSubStream, + # so we need to have all the parent IDs multiplied by all the date slices + incremental_slices = list( + CreatedCursorIncrementalStripeStream.stream_slices( + self, sync_mode=sync_mode, cursor_field=cursor_field, stream_state=stream_state + ) + ) + if incremental_slices: + parent_records = HttpSubStream.stream_slices(self, sync_mode=sync_mode, cursor_field=cursor_field, stream_state=stream_state) + yield from (slice | rec for rec in parent_records for slice in incremental_slices) + else: + yield from [] - def path(self, **kwargs): - return "disputes" + def request_params( + self, + stream_state: Mapping[str, Any], + stream_slice: Mapping[str, Any] = None, + next_page_token: Mapping[str, Any] = None, + ) -> MutableMapping[str, Any]: + setup_intent_id = stream_slice.get("parent", {}).get("id") + params = super().request_params(stream_state=stream_state, stream_slice=stream_slice, next_page_token=next_page_token) + params.update(setup_intent=setup_intent_id) + return params -class EarlyFraudWarnings(StripeStream): +class Persons(UpdatedCursorIncrementalStripeStream, HttpSubStream): """ - API docs: https://stripe.com/docs/api/radar/early_fraud_warnings/list + API docs: https://stripe.com/docs/api/persons/list """ - def path(self, **kwargs): - return "radar/early_fraud_warnings" + event_types = ["person.created", "person.updated", "person.deleted"] + def __init__(self, *args, **kwargs): + parent = StripeStream(*args, name="accounts", path="accounts", use_cache=True, **kwargs) + super().__init__(*args, parent=parent, **kwargs) -class Events(IncrementalStripeStream): - """ - API docs: https://stripe.com/docs/api/events/list - """ + def path(self, stream_slice: Mapping[str, Any] = None, **kwargs): + return f"accounts/{stream_slice['parent']['id']}/persons" + + def stream_slices( + self, sync_mode: SyncMode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None + ) -> Iterable[Optional[Mapping[str, Any]]]: + parent = HttpSubStream if not stream_state else UpdatedCursorIncrementalStripeStream + yield from parent.stream_slices(self, sync_mode, cursor_field=cursor_field, stream_state=stream_state) - cursor_field = "created" - def path(self, **kwargs): - return "events" +class StripeSubStream(StripeStream, HttpSubStream): + pass -class StripeSubStream(BasePaginationStripeStream, ABC): +class StripeLazySubStream(StripeStream, HttpSubStream): """ Research shows that records related to SubStream can be extracted from Parent streams which already contain 1st page of needed items. Thus, it significantly decreases a number of requests needed to get @@ -329,30 +711,43 @@ class StripeSubStream(BasePaginationStripeStream, ABC): } """ - filter: Optional[Mapping[str, Any]] = None - add_parent_id: bool = False + @property + def filter(self) -> Optional[Mapping[str, Any]]: + return self._filter @property - @abstractmethod - def parent(self) -> Type[StripeStream]: - """ - :return: parent stream which contains needed records in - """ + def add_parent_id(self) -> bool: + return self._add_parent_id @property - @abstractmethod def parent_id(self) -> str: """ :return: string with attribute name """ + return self._parent_id @property - @abstractmethod def sub_items_attr(self) -> str: """ :return: string if single primary key, list of strings if composite primary key, list of list of strings if composite primary key consisting of nested fields. If the stream has no primary keys, return None. """ + return self._sub_items_attr + + def __init__( + self, + *args, + response_filter: Optional[Mapping[str, Any]] = None, + add_parent_id: bool = False, + parent_id: Optional[str] = None, + sub_items_attr: Optional[str] = None, + **kwargs, + ): + super().__init__(*args, **kwargs) + self._filter = response_filter + self._add_parent_id = add_parent_id + self._parent_id = parent_id + self._sub_items_attr = sub_items_attr @property def availability_strategy(self) -> Optional[AvailabilityStrategy]: @@ -367,19 +762,8 @@ def request_params(self, stream_slice: Mapping[str, Any] = None, **kwargs): return params - def get_parent_stream_instance(self): - return self.parent(authenticator=self.authenticator, account_id=self.account_id, start_date=self.start_date) - - def stream_slices( - self, *, sync_mode: SyncMode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None - ) -> Iterable[Optional[Mapping[str, Any]]]: - parent_stream = self.get_parent_stream_instance() - slices = parent_stream.stream_slices(sync_mode=SyncMode.full_refresh) - for _slice in slices: - yield from parent_stream.read_records(sync_mode=SyncMode.full_refresh, stream_slice=_slice) - def read_records(self, sync_mode: SyncMode, stream_slice: Optional[Mapping[str, Any]] = None, **kwargs) -> Iterable[Mapping[str, Any]]: - parent_record = stream_slice + parent_record = stream_slice["parent"] items_obj = parent_record.get(self.sub_items_attr, {}) if not items_obj: return @@ -401,600 +785,78 @@ def read_records(self, sync_mode: SyncMode, stream_slice: Optional[Mapping[str, yield item -class ApplicationFees(IncrementalStripeStream): - """ - API docs: https://stripe.com/docs/api/application_fees - """ - - cursor_field = "created" - - def path(self, **kwargs): - return "application_fees" - - -class ApplicationFeesRefunds(StripeSubStream): - """ - API docs: https://stripe.com/docs/api/fee_refunds/list - """ - - name = "application_fees_refunds" - - parent = ApplicationFees - parent_id: str = "refund_id" - sub_items_attr = "refunds" - add_parent_id = True - - def path(self, stream_slice: Mapping[str, Any] = None, **kwargs): - return f"application_fees/{stream_slice[self.parent_id]}/refunds" - - -class Invoices(IncrementalStripeStream): - """ - API docs: https://stripe.com/docs/api/invoices/list - """ - - cursor_field = "created" - - def path(self, **kwargs): - return "invoices" - +class IncrementalStripeLazySubStreamSelector(IStreamSelector): + def __init__(self, updated_cursor_incremental_stream: UpdatedCursorIncrementalStripeStream, lazy_sub_stream: StripeLazySubStream): + self._updated_incremental_stream = updated_cursor_incremental_stream + self._lazy_sub_stream = lazy_sub_stream -class InvoiceLineItems(StripeSubStream): - """ - API docs: https://stripe.com/docs/api/invoices/invoice_lines - """ - - name = "invoice_line_items" - - parent = Invoices - parent_id: str = "invoice_id" - sub_items_attr = "lines" - add_parent_id = True - - def path(self, stream_slice: Mapping[str, Any] = None, **kwargs): - return f"invoices/{stream_slice[self.parent_id]}/lines" + def get_parent_stream(self, stream_state: Mapping[str, Any]) -> StripeStream: + return self._updated_incremental_stream if stream_state else self._lazy_sub_stream -class InvoiceItems(IncrementalStripeStream): - """ - API docs: https://stripe.com/docs/api/invoiceitems/list - """ - - cursor_field = "date" - name = "invoice_items" - - def path(self, **kwargs): - return "invoiceitems" - - -class Payouts(IncrementalStripeStream): - """ - API docs: https://stripe.com/docs/api/payouts/list - """ - - cursor_field = "created" - - def path(self, **kwargs): - return "payouts" - - -class Plans(IncrementalStripeStream): - """ - API docs: https://stripe.com/docs/api/plans/list - """ - - cursor_field = "created" - - def path(self, **kwargs): - return "plans" - - def request_params(self, stream_slice: Mapping[str, Any] = None, **kwargs): - params = super().request_params(stream_slice=stream_slice, **kwargs) - params["expand[]"] = ["data.tiers"] - return params - - -class Prices(IncrementalStripeStream): - """ - API docs: https://stripe.com/docs/api/prices/list - """ - - cursor_field = "created" - - def path(self, **kwargs): - return "prices" - - -class Products(IncrementalStripeStream): - """ - API docs: https://stripe.com/docs/api/products/list - """ - - cursor_field = "created" - - def path(self, **kwargs): - return "products" - - -class ShippingRates(IncrementalStripeStream): - """ - API docs: https://stripe.com/docs/api/shipping_rates/list - """ - - cursor_field = "created" - - def path(self, **kwargs): - return "shipping_rates" - - -class Reviews(IncrementalStripeStream): - """ - API docs: https://stripe.com/docs/api/radar/reviews/list - """ - - cursor_field = "created" - - def path(self, **kwargs): - return "reviews" - - -class Subscriptions(IncrementalStripeStream): - """ - API docs: https://stripe.com/docs/api/subscriptions/list - """ - - use_cache = True - cursor_field = "created" - status = "all" - - def path(self, **kwargs): - return "subscriptions" - - def request_params(self, stream_state=None, **kwargs): - stream_state = stream_state or {} - params = super().request_params(stream_state=stream_state, **kwargs) - params["status"] = self.status - return params - - -class SubscriptionItems(StripeSubStream): - """ - API docs: https://stripe.com/docs/api/subscription_items/list - """ - - use_cache = True - - name = "subscription_items" - - parent: StripeStream = Subscriptions - parent_id: str = "subscription_id" - sub_items_attr: str = "items" - - def path(self, **kwargs): - return "subscription_items" - - def request_params(self, stream_slice: Mapping[str, Any] = None, **kwargs): - params = super().request_params(stream_slice=stream_slice, **kwargs) - params["subscription"] = stream_slice[self.parent_id] - return params - - -class SubscriptionSchedule(IncrementalStripeStream): - """ - API docs: https://stripe.com/docs/api/subscription_schedules - """ - - cursor_field = "created" - - def path(self, **kwargs): - return "subscription_schedules" - - -class Transfers(IncrementalStripeStream): - """ - API docs: https://stripe.com/docs/api/transfers/list - """ - - use_cache = True - cursor_field = "created" - - def path(self, **kwargs): - return "transfers" - - -class Refunds(IncrementalStripeStream): - """ - API docs: https://stripe.com/docs/api/refunds/list - """ - - cursor_field = "created" - - def path(self, **kwargs): - return "refunds" - - -class PaymentIntents(IncrementalStripeStream): - """ - API docs: https://stripe.com/docs/api/payment_intents/list - """ - - cursor_field = "created" - - def path(self, **kwargs): - return "payment_intents" - - -class PaymentMethods(StripeStream): - """ - API docs: https://stripe.com/docs/api/payment_methods/list - """ - - def path(self, **kwargs): - return "payment_methods" - - -class BankAccounts(StripeSubStream): - """ - API docs: https://stripe.com/docs/api/customer_bank_accounts/list - """ - - name = "bank_accounts" - - parent = Customers - parent_id = "customer_id" - sub_items_attr = "sources" - filter = {"attr": "object", "value": "bank_account"} - - def path(self, stream_slice: Mapping[str, Any] = None, **kwargs): - return f"customers/{stream_slice[self.parent_id]}/sources" - - def request_params(self, stream_slice: Mapping[str, Any] = None, **kwargs) -> MutableMapping[str, Any]: - params = super().request_params(stream_slice=stream_slice, **kwargs) - params["object"] = "bank_account" - return params - - -class CheckoutSessions(IncrementalStripeStream): - """ - API docs: https://stripe.com/docs/api/checkout/sessions/list - """ - - name = "checkout_sessions" - - cursor_field = "expires_at" - - def __init__(self, *args, **kwargs): - super().__init__(*args, **kwargs) - - # https://stripe.com/docs/api/checkout/sessions/create#create_checkout_session-expires_at - # 'expires_at' - can be anywhere from 1 to 24 hours after Checkout Session creation. - # thus we should always add 1 day to lookback window to avoid possible checkout_sessions losses - self.lookback_window_days = self.lookback_window_days + 1 - - def stream_slices( - self, *, sync_mode: SyncMode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None - ) -> Iterable[Optional[Mapping[str, Any]]]: - yield from [{}] - - def path(self, **kwargs): - return "checkout/sessions" - - def parse_response(self, response: requests.Response, stream_state: Mapping[str, Any] = None, **kwargs) -> Iterable[Mapping]: - since_date = self.get_start_timestamp(stream_state) - for item in super().parse_response(response, **kwargs): - # Filter out too old items - expires_at = item.get(self.cursor_field) - if expires_at and expires_at > since_date: - yield item - - -class CheckoutSessionsLineItems(IncrementalStripeStream): - """ - API docs: https://stripe.com/docs/api/checkout/sessions/line_items - """ - - name = "checkout_sessions_line_items" - - cursor_field = "checkout_session_expires_at" - - def __init__(self, *args, **kwargs): +class UpdatedCursorIncrementalStripeLazySubStream(StripeStream, ABC): + def __init__( + self, + parent: StripeStream, + *args, + cursor_field: str = "updated", + legacy_cursor_field: Optional[str] = "created", + event_types: Optional[List[str]] = None, + parent_id: Optional[str] = None, + add_parent_id: bool = False, + sub_items_attr: Optional[str] = None, + response_filter: Optional[Mapping[str, Any]] = None, + **kwargs, + ): super().__init__(*args, **kwargs) - - # https://stripe.com/docs/api/checkout/sessions/create#create_checkout_session-expires_at - # 'expires_at' - can be anywhere from 1 to 24 hours after Checkout Session creation. - # thus we should always add 1 day to lookback window to avoid possible checkout_sessions losses - self.lookback_window_days = self.lookback_window_days + 1 - - def path(self, stream_slice: Mapping[str, Any] = None, **kwargs): - return f"checkout/sessions/{stream_slice['checkout_session_id']}/line_items" - - def stream_slices( - self, *, sync_mode: SyncMode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None - ) -> Iterable[Optional[Mapping[str, Any]]]: - checkout_session_state = None - if stream_state: - checkout_session_state = {"expires_at": stream_state["checkout_session_expires_at"]} - checkout_session_stream = CheckoutSessions(authenticator=self.authenticator, account_id=self.account_id, start_date=self.start_date) - for checkout_session in checkout_session_stream.read_records( - sync_mode=SyncMode.full_refresh, stream_state=checkout_session_state, stream_slice={} - ): - yield { - "checkout_session_id": checkout_session["id"], - "expires_at": checkout_session["expires_at"], - } - - def request_params(self, stream_slice: Mapping[str, Any] = None, **kwargs): - params = super().request_params(stream_slice=stream_slice, **kwargs) - params["expand[]"] = ["data.discounts", "data.taxes"] - return params + self._cursor_field = cursor_field + updated_cursor_incremental_stream = UpdatedCursorIncrementalStripeStream( + *args, + cursor_field=cursor_field, + legacy_cursor_field=legacy_cursor_field, + event_types=event_types, + **kwargs, + ) + lazy_substream = StripeLazySubStream( + *args, + parent=parent, + parent_id=parent_id, + add_parent_id=add_parent_id, + sub_items_attr=sub_items_attr, + response_filter=response_filter, + **kwargs, + ) + self._parent_stream = None + self.stream_selector = IncrementalStripeLazySubStreamSelector(updated_cursor_incremental_stream, lazy_substream) @property - def raise_on_http_errors(self): - return False - - def parse_response(self, response: requests.Response, stream_slice: Mapping[str, Any] = None, **kwargs) -> Iterable[Mapping]: - if response.status_code == 404: - self.logger.warning(response.json()) - return - response.raise_for_status() - - response_json = response.json() - data = response_json.get("data", []) - if data and stream_slice: - self.logger.info(f"stream_slice: {stream_slice}") - cs_id = stream_slice.get("checkout_session_id", None) - cs_expires_at = stream_slice.get("expires_at", None) - for e in data: - e["checkout_session_id"] = cs_id - e["checkout_session_expires_at"] = cs_expires_at - yield from data - - -class PromotionCodes(IncrementalStripeStream): - """ - API docs: https://stripe.com/docs/api/promotion_codes/list - """ - - cursor_field = "created" - - def path(self, **kwargs): - return "promotion_codes" - - -class ExternalAccount(BasePaginationStripeStream, ABC): - """ - Bank Accounts and Cards are separate streams because they have different schemas - """ - - object = "" - - def path(self, **kwargs): - return f"accounts/{self.account_id}/external_accounts" - - def stream_slices( - self, *, sync_mode: SyncMode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None - ) -> Iterable[Optional[Mapping[str, Any]]]: - yield from [{}] - - def request_params(self, **kwargs): - params = super().request_params(**kwargs) - return {**params, **{"object": self.object}} - - -class ExternalAccountBankAccounts(ExternalAccount): - """ - https://stripe.com/docs/api/external_account_bank_accounts/list - """ - - object = "bank_account" - - -class ExternalAccountCards(ExternalAccount): - """ - https://stripe.com/docs/api/external_account_cards/list - """ - - object = "card" - - -class SetupIntents(IncrementalStripeStream): - """ - API docs: https://stripe.com/docs/api/setup_intents/list - """ - - cursor_field = "created" - - def path(self, **kwargs): - return "setup_intents" - - -class Accounts(BasePaginationStripeStream): - """ - Docs: https://stripe.com/docs/api/accounts/list - Even the endpoint allow to filter based on created the data usually don't have this field. - """ - - def path(self, **kwargs): - return "accounts" - - -class Persons(IncrementalStripeStream): - """ - API docs: https://stripe.com/docs/api/persons/list - """ - - name = "persons" - cursor_field = "created" - - def path(self, stream_slice: Mapping[str, Any] = None, **kwargs): - return f"accounts/{stream_slice['id']}/persons" - - def stream_slices( - self, *, sync_mode: SyncMode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None - ) -> Iterable[Optional[Mapping[str, Any]]]: - parent_stream = Accounts(authenticator=self.authenticator, account_id=self.account_id, start_date=self.start_date) - slices = parent_stream.stream_slices(sync_mode=SyncMode.full_refresh) - for _slice in slices: - for account in parent_stream.read_records(sync_mode=SyncMode.full_refresh, stream_slice=_slice): - # we use `get` here because some attributes may not be returned by some API versions - yield account - - -class CreditNotes(StripeStream): - """ - API docs: https://stripe.com/docs/api/credit_notes/list - """ - - name = "credit_notes" - - def path(self, **kwargs) -> str: - return "credit_notes" + def cursor_field(self) -> Union[str, List[str]]: + return [self._cursor_field] - def request_params( - self, stream_state: Mapping[str, Any], stream_slice: Mapping[str, Any] = None, next_page_token: Mapping[str, Any] = None - ) -> MutableMapping[str, Any]: - return next_page_token or {} - - def stream_slices( - self, *, sync_mode: SyncMode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None - ) -> Iterable[Optional[Mapping[str, Any]]]: - yield from [{}] - - -class Cards(IncrementalStripeStream): - """ - Docs: https://stripe.com/docs/api/issuing/cards/list - """ - - cursor_field = "created" - - def path(self, **kwargs): - return "issuing/cards" - - -class TopUps(IncrementalStripeStream): - """ - API docs: https://stripe.com/docs/api/topups/list - """ - - name = "top_ups" - cursor_field = "created" - - def path(self, **kwargs) -> str: - return "topups" - - -class Files(IncrementalStripeStream): - """ - API docs: https://stripe.com/docs/api/files/list - """ - - name = "files" - cursor_field = "created" - - def path(self, **kwargs) -> str: - return "files" - - -class FileLinks(IncrementalStripeStream): - """ - API docs: https://stripe.com/docs/api/file_links/list - """ - - name = "file_links" - cursor_field = "created" - - def path(self, **kwargs) -> str: - return "file_links" - - -class SetupAttempts(IncrementalStripeStream, HttpSubStream): - """ - Docs: https://stripe.com/docs/api/setup_attempts/list - """ - - cursor_field = "created" - - def __init__(self, **kwargs): - parent = SetupIntents(**kwargs) - super().__init__(parent=parent, **kwargs) + @property + def parent_stream(self): + return self._parent_stream - def path(self, **kwargs) -> str: - return "setup_attempts" + @parent_stream.setter + def parent_stream(self, stream): + self._parent_stream = stream def stream_slices( - self, *, sync_mode: SyncMode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None + self, sync_mode: SyncMode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None ) -> Iterable[Optional[Mapping[str, Any]]]: + self.parent_stream = self.stream_selector.get_parent_stream(stream_state) + yield from self.parent_stream.stream_slices(sync_mode, cursor_field=cursor_field, stream_state=stream_state) - incremental_slices = list( - IncrementalStripeStream.stream_slices(self, sync_mode=sync_mode, cursor_field=cursor_field, stream_state=stream_state) - ) - if incremental_slices: - parent_records = HttpSubStream.stream_slices(self, sync_mode=sync_mode, cursor_field=cursor_field, stream_state=stream_state) - yield from (slice | rec for rec in parent_records for slice in incremental_slices) - else: - yield None - - def request_params( - self, - stream_state: Mapping[str, Any], - stream_slice: Mapping[str, Any] = None, - next_page_token: Mapping[str, Any] = None, - ) -> MutableMapping[str, Any]: - setup_intent_id = stream_slice.get("parent", {}).get("id") - params = super().request_params(stream_state=stream_state, stream_slice=stream_slice, next_page_token=next_page_token) - params.update(setup_intent=setup_intent_id) - return params - - -class UsageRecords(StripeStream, HttpSubStream): - """ - Docs: https://stripe.com/docs/api/usage_records/subscription_item_summary_list - """ - - primary_key = None - - def __init__(self, **kwargs): - parent = SubscriptionItems(**kwargs) - super().__init__(parent=parent, **kwargs) - - def path( - self, - *, - stream_state: Mapping[str, Any] = None, - stream_slice: Mapping[str, Any] = None, - next_page_token: Mapping[str, Any] = None, - ) -> str: - subscription_item_id = stream_slice.get("parent", {}).get("id") - return f"subscription_items/{subscription_item_id}/usage_record_summaries" - - -class TransferReversals(StripeStream, HttpSubStream): - """ - Docs: https://stripe.com/docs/api/transfer_reversals/list - """ - - def __init__(self, **kwargs): - parent = Transfers(**kwargs) - super().__init__(parent=parent, **kwargs) + def get_updated_state(self, current_stream_state: MutableMapping[str, Any], latest_record: Mapping[str, Any]) -> Mapping[str, Any]: + return self.parent_stream.get_updated_state(current_stream_state, latest_record) - def path( + def read_records( self, - *, - stream_state: Mapping[str, Any] = None, - stream_slice: Mapping[str, Any] = None, - next_page_token: Mapping[str, Any] = None, - ) -> str: - transfer_id = stream_slice.get("parent", {}).get("id") - return f"transfers/{transfer_id}/reversals" - - -class Transactions(IncrementalStripeStream): - """ - Docs: https://stripe.com/docs/api/issuing/transactions/list - """ - - cursor_field = "created" - - def path(self, **kwargs) -> str: - return "issuing/transactions" + sync_mode: SyncMode, + cursor_field: Optional[List[str]] = None, + stream_slice: Optional[Mapping[str, Any]] = None, + stream_state: Optional[Mapping[str, Any]] = None, + ) -> Iterable[StreamData]: + yield from self.parent_stream.read_records( + sync_mode, cursor_field=cursor_field, stream_slice=stream_slice, stream_state=stream_state + ) diff --git a/airbyte-integrations/connectors/source-stripe/unit_tests/conftest.py b/airbyte-integrations/connectors/source-stripe/unit_tests/conftest.py index f72068c051d9..da7f4d7c8441 100644 --- a/airbyte-integrations/connectors/source-stripe/unit_tests/conftest.py +++ b/airbyte-integrations/connectors/source-stripe/unit_tests/conftest.py @@ -4,30 +4,7 @@ import pytest from airbyte_cdk.sources.streams.http.auth import TokenAuthenticator - - -@pytest.fixture(autouse=True) -def disable_cache(mocker): - mocker.patch( - "source_stripe.streams.Customers.use_cache", - new_callable=mocker.PropertyMock, - return_value=False - ) - mocker.patch( - "source_stripe.streams.Transfers.use_cache", - new_callable=mocker.PropertyMock, - return_value=False - ) - mocker.patch( - "source_stripe.streams.Subscriptions.use_cache", - new_callable=mocker.PropertyMock, - return_value=False - ) - mocker.patch( - "source_stripe.streams.SubscriptionItems.use_cache", - new_callable=mocker.PropertyMock, - return_value=False - ) +from source_stripe.streams import IncrementalStripeStream, StripeLazySubStream @pytest.fixture(name="config") @@ -47,3 +24,54 @@ def stream_args_fixture(): "slice_range": 365, } return args + + +@pytest.fixture(name="incremental_stream_args") +def incremental_args_fixture(stream_args): + return { + "lookback_window_days": 14, + **stream_args + } + + +@pytest.fixture(name="invoices") +def invoices_fixture(stream_args): + def mocker(args=stream_args): + return IncrementalStripeStream( + name="invoices", + path="invoices", + use_cache=True, + event_types=[ + "invoice.created", + "invoice.finalization_failed", + "invoice.finalized", + "invoice.marked_uncollectible", + "invoice.paid", + "invoice.payment_action_required", + "invoice.payment_failed", + "invoice.payment_succeeded", + "invoice.sent", + "invoice.upcoming", + "invoice.updated", + "invoice.voided", + ], + **args + ) + return mocker + + +@pytest.fixture(name="invoice_line_items") +def invoice_line_items_fixture(invoices, stream_args): + parent_stream = invoices() + + def mocker(args=stream_args, parent_stream=parent_stream): + return StripeLazySubStream( + name="invoice_line_items", + path=lambda self, *args, stream_slice, **kwargs: f"invoices/{stream_slice[self.parent_id]}/lines", + parent=parent_stream, + parent_id="invoice_id", + sub_items_attr="lines", + add_parent_id=True, + **args, + ) + return mocker diff --git a/airbyte-integrations/connectors/source-stripe/unit_tests/test_availability_strategy.py b/airbyte-integrations/connectors/source-stripe/unit_tests/test_availability_strategy.py index 76b6d68c556d..44f887c1ca3d 100644 --- a/airbyte-integrations/connectors/source-stripe/unit_tests/test_availability_strategy.py +++ b/airbyte-integrations/connectors/source-stripe/unit_tests/test_availability_strategy.py @@ -2,10 +2,11 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # -import pendulum +import logging + from airbyte_cdk.sources.streams.http.availability_strategy import HttpAvailabilityStrategy -from source_stripe.availability_strategy import StripeSubStreamAvailabilityStrategy -from source_stripe.streams import InvoiceLineItems, Invoices +from source_stripe.availability_strategy import STRIPE_ERROR_CODES, StripeSubStreamAvailabilityStrategy +from source_stripe.streams import IncrementalStripeStream, StripeLazySubStream def test_traverse_over_substreams(mocker): @@ -24,15 +25,15 @@ def test_traverse_over_substreams(mocker): child_1 = mocker.Mock() child_1.availability_strategy = StripeSubStreamAvailabilityStrategy() - child_1.get_parent_stream_instance.return_value = root + child_1.parent = root child_1_1 = mocker.Mock() child_1_1.availability_strategy = StripeSubStreamAvailabilityStrategy() - child_1_1.get_parent_stream_instance.return_value = child_1 + child_1_1.parent = child_1 child_1_1_1 = mocker.Mock() child_1_1_1.availability_strategy = StripeSubStreamAvailabilityStrategy() - child_1_1_1.get_parent_stream_instance.return_value = child_1_1 + child_1_1_1.parent = child_1_1 # Start traverse is_available, reason = child_1_1_1.availability_strategy.check_availability(child_1_1_1, mocker.Mock(), mocker.Mock()) @@ -65,15 +66,15 @@ def test_traverse_over_substreams_failure(mocker): child_1 = mocker.Mock() child_1.availability_strategy = StripeSubStreamAvailabilityStrategy() - child_1.get_parent_stream_instance.return_value = root + child_1.parent = root child_1_1 = mocker.Mock() child_1_1.availability_strategy = StripeSubStreamAvailabilityStrategy() - child_1_1.get_parent_stream_instance.return_value = child_1 + child_1_1.parent = child_1 child_1_1_1 = mocker.Mock() child_1_1_1.availability_strategy = StripeSubStreamAvailabilityStrategy() - child_1_1_1.get_parent_stream_instance.return_value = child_1_1 + child_1_1_1.parent = child_1_1 # Start traverse is_available, reason = child_1_1_1.availability_strategy.check_availability(child_1_1_1, mocker.Mock(), mocker.Mock()) @@ -88,35 +89,43 @@ def test_traverse_over_substreams_failure(mocker): assert id(check_availability_mock.call_args_list[1].args[0]) == id(child_1) -def test_substream_availability(mocker): +def test_substream_availability(mocker, invoice_line_items): check_availability_mock = mocker.MagicMock() check_availability_mock.return_value = (True, None) mocker.patch( "airbyte_cdk.sources.streams.http.availability_strategy.HttpAvailabilityStrategy.check_availability", check_availability_mock ) - - stream = InvoiceLineItems(start_date=pendulum.today().subtract(days=3).int_timestamp, account_id="None") + stream = invoice_line_items() is_available, reason = stream.availability_strategy.check_availability(stream, mocker.Mock(), mocker.Mock()) assert is_available and reason is None assert check_availability_mock.call_count == 2 - assert isinstance(check_availability_mock.call_args_list[0].args[0], Invoices) - assert isinstance(check_availability_mock.call_args_list[1].args[0], InvoiceLineItems) + assert isinstance(check_availability_mock.call_args_list[0].args[0], IncrementalStripeStream) + assert isinstance(check_availability_mock.call_args_list[1].args[0], StripeLazySubStream) -def test_substream_availability_no_parent(mocker): +def test_substream_availability_no_parent(mocker, invoice_line_items): check_availability_mock = mocker.MagicMock() check_availability_mock.return_value = (True, None) mocker.patch( "airbyte_cdk.sources.streams.http.availability_strategy.HttpAvailabilityStrategy.check_availability", check_availability_mock ) - - stream = InvoiceLineItems(start_date=pendulum.today().subtract(days=3).int_timestamp, account_id="None") + stream = invoice_line_items() stream.parent = None stream.availability_strategy.check_availability(stream, mocker.Mock(), mocker.Mock()) assert check_availability_mock.call_count == 1 - assert isinstance(check_availability_mock.call_args_list[0].args[0], InvoiceLineItems) + assert isinstance(check_availability_mock.call_args_list[0].args[0], StripeLazySubStream) + + +def test_403_error_handling(invoices, requests_mock): + stream = invoices() + logger = logging.getLogger("airbyte") + for error_code in STRIPE_ERROR_CODES: + requests_mock.get(f"{stream.url_base}{stream.path()}", status_code=403, json={"error": {"code": f"{error_code}"}}) + available, message = stream.check_availability(logger) + assert not available + assert STRIPE_ERROR_CODES[error_code] in message diff --git a/airbyte-integrations/connectors/source-stripe/unit_tests/test_source.py b/airbyte-integrations/connectors/source-stripe/unit_tests/test_source.py index f5ea6c77b31c..03b445132e36 100644 --- a/airbyte-integrations/connectors/source-stripe/unit_tests/test_source.py +++ b/airbyte-integrations/connectors/source-stripe/unit_tests/test_source.py @@ -2,62 +2,39 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # -import json -from unittest.mock import Mock, patch +import logging +from contextlib import nullcontext as does_not_raise +from unittest.mock import patch -import pendulum import pytest import source_stripe +from airbyte_cdk.utils import AirbyteTracedException from source_stripe import SourceStripe -from source_stripe.source import Invoices -now_dt = pendulum.now() - -SECONDS_IN_DAY = 24 * 60 * 60 - - -@pytest.mark.parametrize( - "lookback_window_days, current_state, expected, message", - [ - (None, now_dt.timestamp(), now_dt.timestamp(), - "if lookback_window_days is not set should not affect cursor value"), - (0, now_dt.timestamp(), now_dt.timestamp(), - "if lookback_window_days is not set should not affect cursor value"), - (10, now_dt.timestamp(), int(now_dt.timestamp() - SECONDS_IN_DAY * 10), - "Should calculate cursor value as expected"), - # ignore sign - (-10, now_dt.timestamp(), int(now_dt.timestamp() - SECONDS_IN_DAY * 10), - "Should not care for the sign, use the module"), - ], -) -def test_lookback_window(lookback_window_days, current_state, expected, message): - inv_stream = Invoices(account_id=213, start_date=1577836800, - lookback_window_days=lookback_window_days) - inv_stream.cursor_field = "created" - assert inv_stream.get_start_timestamp( - {"created": current_state}) == expected, message - - -def test_source_streams(): - with open("sample_files/config.json") as f: - config = json.load(f) - streams = SourceStripe().streams(config=config) - assert len(streams) == 46 +logger = logging.getLogger("airbyte") @patch.object(source_stripe.source, "stripe") def test_source_check_connection_ok(mocked_client, config): - assert SourceStripe().check_connection(None, config=config) == (True, None) + assert SourceStripe().check_connection(logger, config=config) == (True, None) -@patch.object(source_stripe.source, "stripe") -def test_source_check_connection_failure(mocked_client, config): - exception = Exception("Test") - mocked_client.Account.retrieve = Mock(side_effect=exception) - assert SourceStripe().check_connection(None, config=config) == (False, exception) +def test_streams_are_unique(config): + stream_names = [s.name for s in SourceStripe().streams(config=config)] + assert len(stream_names) == len(set(stream_names)) == 46 +@pytest.mark.parametrize( + "input_config, is_success, expected_error_msg", + ( + ({"lookback_window_days": "month"}, False, "Invalid lookback window month. Please use only positive integer values or 0."), + ({"start_date": "January First, 2022"}, False, "Invalid start date January First, 2022. Please use YYYY-MM-DDTHH:MM:SSZ format."), + ({"slice_range": -10}, False, "Invalid slice range value -10. Please use positive integer values only."), + ({"account_id": 1, "client_secret": "secret"}, True, None) + ) +) @patch.object(source_stripe.source, "stripe") -def test_streams_are_unique(mocked_client, config): - streams = [s.name for s in SourceStripe().streams(config)] - assert sorted(streams) == sorted(set(streams)) +def test_config_validation(mocked_client, input_config, is_success, expected_error_msg): + context = pytest.raises(AirbyteTracedException, match=expected_error_msg) if expected_error_msg else does_not_raise() + with context: + SourceStripe().check_connection(logger, config=input_config) diff --git a/airbyte-integrations/connectors/source-stripe/unit_tests/test_streams.py b/airbyte-integrations/connectors/source-stripe/unit_tests/test_streams.py index 1fd42de179e9..05276835bdeb 100644 --- a/airbyte-integrations/connectors/source-stripe/unit_tests/test_streams.py +++ b/airbyte-integrations/connectors/source-stripe/unit_tests/test_streams.py @@ -2,95 +2,103 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # -import logging - +import freezegun import pendulum import pytest -from airbyte_cdk.models import SyncMode -from source_stripe.availability_strategy import STRIPE_ERROR_CODES from source_stripe.streams import ( - ApplicationFees, - ApplicationFeesRefunds, - BalanceTransactions, - BankAccounts, - Charges, - CheckoutSessions, CheckoutSessionsLineItems, - Coupons, + CreatedCursorIncrementalStripeStream, CustomerBalanceTransactions, - Customers, - Disputes, - EarlyFraudWarnings, - Events, - ExternalAccount, - ExternalAccountBankAccounts, - ExternalAccountCards, - InvoiceItems, - InvoiceLineItems, - Invoices, - PaymentIntents, - Payouts, + FilteringRecordExtractor, + IncrementalStripeStream, Persons, - Plans, - Prices, - Products, - PromotionCodes, - Refunds, - SetupIntents, - ShippingRates, - SubscriptionItems, - Subscriptions, - SubscriptionSchedule, - Transfers, + SetupAttempts, + StripeStream, + UpdatedCursorIncrementalStripeLazySubStream, + UpdatedCursorIncrementalStripeStream, ) -def test_missed_id_child_stream(requests_mock): +@pytest.fixture() +def accounts(stream_args): + def mocker(args=stream_args): + return StripeStream(name="accounts", path="accounts", **args) + return mocker - session_id_missed = "cs_test_a165K4wNihuJlp2u3tknuohrvjAxyXFUB7nxZH3lwXRKJsadNEvIEWMUJ9" - session_id_exists = "cs_test_a1RjRHNyGUQOFVF3OkL8V8J0lZUASyVoCtsnZYG74VrBv3qz4245BLA1BP" - response_sessions = { - "data": [{"id": session_id_missed, "expires_at": 100_000}, {"id": session_id_exists, "expires_at": 100_000}], - "has_more": False, - "object": "list", - "url": "/v1/checkout/sessions", - } +@pytest.fixture() +def balance_transactions(incremental_stream_args): + def mocker(args=incremental_stream_args): + return CreatedCursorIncrementalStripeStream(name="balance_transactions", path="balance_transactions", **args) + return mocker - response_sessions_line_items = { - "data": [{"id": "li_1JpAUUIEn5WyEQxnfGJT5MbL"}], - "has_more": False, - "object": "list", - "url": "/v1/checkout/sessions/{}/line_items".format(session_id_exists), - } - response_error = { - "error": { - "code": "resource_missing", - "doc_url": "https://stripe.com/docs/error-codes/resource-missing", - "message": "No such checkout session: '{}'".format(session_id_missed), - "param": "session", - "type": "invalid_request_error", - } - } +@pytest.fixture() +def credit_notes(stream_args): + def mocker(args=stream_args): + return UpdatedCursorIncrementalStripeStream( + name="credit_notes", + path="credit_notes", + event_types=["credit_note.created", "credit_note.updated", "credit_note.voided"], + **args + ) + return mocker - requests_mock.get("https://api.stripe.com/v1/checkout/sessions", json=response_sessions) - requests_mock.get( - "https://api.stripe.com/v1/checkout/sessions/{}/line_items".format(session_id_exists), json=response_sessions_line_items - ) - requests_mock.get( - "https://api.stripe.com/v1/checkout/sessions/{}/line_items".format(session_id_missed), json=response_error, status_code=404 - ) - stream = CheckoutSessionsLineItems(start_date=100_100, account_id=None) - records = [] - for slice_ in stream.stream_slices(sync_mode=SyncMode.full_refresh): - records.extend(stream.read_records(sync_mode=SyncMode.full_refresh, stream_slice=slice_)) - assert len(records) == 1 +@pytest.fixture() +def customers(stream_args): + def mocker(args=stream_args): + return IncrementalStripeStream( + name="customers", + path="customers", + use_cache=True, + event_types=["customer.created", "customer.updated"], + **args, + ) + return mocker + +@pytest.fixture() +def bank_accounts(customers, stream_args): + def mocker(args=stream_args): + return UpdatedCursorIncrementalStripeLazySubStream( + name="bank_accounts", + path=lambda self, stream_slice, *args, **kwargs: f"customers/{stream_slice[self.parent_id]}/sources", + parent=customers(), + event_types=["customer.source.created", "customer.source.expiring", "customer.source.updated"], + legacy_cursor_field=None, + parent_id="customer_id", + sub_items_attr="sources", + response_filter={"attr": "object", "value": "bank_account"}, + extra_request_params={"object": "bank_account"}, + record_extractor=FilteringRecordExtractor("updated", None, "bank_account"), + **args, + ) + return mocker -def test_sub_stream(requests_mock): +@pytest.fixture() +def external_bank_accounts(stream_args): + def mocker(args=stream_args): + return UpdatedCursorIncrementalStripeStream( + name="external_account_bank_accounts", + path=lambda self, *args, **kwargs: f"accounts/{self.account_id}/external_accounts", + event_types=["account.external_account.created", "account.external_account.updated"], + legacy_cursor_field=None, + extra_request_params={"object": "bank_account"}, + record_extractor=FilteringRecordExtractor("updated", None, "bank_account"), + **args + ) + return mocker + + +def test_request_headers(accounts): + stream = accounts() + headers = stream.request_headers() + assert headers["Stripe-Version"] == "2022-11-15" + + +def test_lazy_sub_stream(requests_mock, invoice_line_items, invoices, stream_args): # First initial request to parent stream requests_mock.get( "https://api.stripe.com/v1/invoices", @@ -142,12 +150,15 @@ def test_sub_stream(requests_mock): "url": "/v1/invoices/in_1KD6OVIEn5WyEQxn9xuASHsD/lines", }, ) + # make start date a recent date so there's just one slice in a parent stream - start_date = pendulum.today().subtract(days=3).int_timestamp - stream = InvoiceLineItems(start_date=start_date, account_id="None") + stream_args["start_date"] = pendulum.today().subtract(days=3).int_timestamp + parent_stream = invoices(stream_args) + stream = invoice_line_items(stream_args, parent_stream=parent_stream) records = [] - for slice_ in stream.stream_slices(sync_mode=SyncMode.full_refresh): - records.extend(stream.read_records(sync_mode=SyncMode.full_refresh, stream_slice=slice_)) + + for slice_ in stream.stream_slices(sync_mode="full_refresh"): + records.extend(stream.read_records(sync_mode="full_refresh", stream_slice=slice_)) assert list(records) == [ {"id": "il_1", "invoice_id": "in_1KD6OVIEn5WyEQxn9xuASHsD", "object": "line_item"}, {"id": "il_2", "invoice_id": "in_1KD6OVIEn5WyEQxn9xuASHsD", "object": "line_item"}, @@ -155,127 +166,386 @@ def test_sub_stream(requests_mock): ] +@freezegun.freeze_time("2023-08-23T15:00:15Z") +def test_created_cursor_incremental_stream(requests_mock, balance_transactions, incremental_stream_args): + incremental_stream_args["start_date"] = pendulum.now().subtract(months=23).int_timestamp + stream = balance_transactions(incremental_stream_args) + requests_mock.get( + "/v1/balance_transactions", + [ + { + "json": { + "data": [{ + "id": "txn_1KVQhfEcXtiJtvvhF7ox3YEm", "object": "balance_transaction", "amount": 435, "status": "available"} + ], + "has_more": False + } + }, + { + "json": { + "data":[{ + "id": "txn_tiJtvvhF7ox3YEmKvVQhfEcX", "object": "balance_transaction", "amount": -9164, "status": "available"} + ], + "has_more": False + } + } + ] + ) + + slices = list(stream.stream_slices("full_refresh")) + assert slices == [{'created[gte]': 1631199615, 'created[lte]': 1662735615}, {'created[gte]': 1662735616, 'created[lte]': 1692802815}] + records = [] + for slice_ in slices: + for record in stream.read_records("full_refresh", stream_slice=slice_): + records.append(record) + assert records == [ + {"id": "txn_1KVQhfEcXtiJtvvhF7ox3YEm", "object": "balance_transaction", "amount": 435, "status": "available"}, + {"id": "txn_tiJtvvhF7ox3YEmKvVQhfEcX", "object": "balance_transaction", "amount": -9164, "status": "available"} + ] + + @pytest.mark.parametrize( - "stream_cls, kwargs, expected", - [ - (ApplicationFees, {}, "application_fees"), - (ApplicationFeesRefunds, {"stream_slice": {"refund_id": "fr"}}, "application_fees/fr/refunds"), - (Customers, {}, "customers"), - (BalanceTransactions, {}, "balance_transactions"), - (Charges, {}, "charges"), - (CustomerBalanceTransactions, {"stream_slice": {"id": "C1"}}, "customers/C1/balance_transactions"), - (Coupons, {}, "coupons"), - (Disputes, {}, "disputes"), - (EarlyFraudWarnings, {}, "radar/early_fraud_warnings"), - (Events, {}, "events"), - (Invoices, {}, "invoices"), - (InvoiceLineItems, {"stream_slice": {"invoice_id": "I1"}}, "invoices/I1/lines"), - (InvoiceItems, {}, "invoiceitems"), - (Payouts, {}, "payouts"), - (Persons, {"stream_slice": {"id": "A1"}}, "accounts/A1/persons"), - (Plans, {}, "plans"), - (Prices, {}, "prices"), - (Products, {}, "products"), - (Subscriptions, {}, "subscriptions"), - (SubscriptionItems, {}, "subscription_items"), - (SubscriptionSchedule, {}, "subscription_schedules"), - (Transfers, {}, "transfers"), - (Refunds, {}, "refunds"), - (PaymentIntents, {}, "payment_intents"), - (BankAccounts, {"stream_slice": {"customer_id": "C1"}}, "customers/C1/sources"), - (CheckoutSessions, {}, "checkout/sessions"), - (CheckoutSessionsLineItems, {"stream_slice": {"checkout_session_id": "CS1"}}, "checkout/sessions/CS1/line_items"), - (PromotionCodes, {}, "promotion_codes"), - (ExternalAccount, {}, "accounts//external_accounts"), - (SetupIntents, {}, "setup_intents"), - (ShippingRates, {}, "shipping_rates"), - ], + "start_date, lookback_window, max_days_from_now, stream_state, expected_start_timestamp", + ( + ("2020-01-01T00:00:00Z", 0, 0, {}, "2020-01-01T00:00:00Z"), + ("2020-01-01T00:00:00Z", 14, 0, {}, "2019-12-18T00:00:00Z"), + ("2020-01-01T00:00:00Z", 0, 30, {}, "2023-07-24T15:00:15Z"), + ("2020-01-01T00:00:00Z", 14, 30, {}, "2023-07-24T15:00:15Z"), + ("2020-01-01T00:00:00Z", 0, 0, {"created": pendulum.parse("2022-07-17T00:00:00Z").int_timestamp}, "2022-07-17T00:00:00Z"), + ("2020-01-01T00:00:00Z", 14, 0, {"created": pendulum.parse("2022-07-17T00:00:00Z").int_timestamp}, "2022-07-03T00:00:00Z"), + ("2020-01-01T00:00:00Z", 0, 30, {"created": pendulum.parse("2022-07-17T00:00:00Z").int_timestamp}, "2023-07-24T15:00:15Z"), + ("2020-01-01T00:00:00Z", 14, 30, {"created": pendulum.parse("2022-07-17T00:00:00Z").int_timestamp}, "2023-07-24T15:00:15Z"), + ) ) -def test_path_and_headers( - stream_cls, - kwargs, - expected, - stream_args, -): - stream = stream_cls(**stream_args) - assert stream.path(**kwargs) == expected - headers = stream.request_headers(**kwargs) - assert headers["Stripe-Version"] == "2022-11-15" +@freezegun.freeze_time("2023-08-23T15:00:15Z") +def test_get_start_timestamp(balance_transactions, incremental_stream_args, start_date, lookback_window, max_days_from_now, stream_state, expected_start_timestamp): + incremental_stream_args["start_date"] = pendulum.parse(start_date).int_timestamp + incremental_stream_args["lookback_window_days"] = lookback_window + incremental_stream_args["start_date_max_days_from_now"] = max_days_from_now + stream = balance_transactions(incremental_stream_args) + assert stream.get_start_timestamp(stream_state) == pendulum.parse(expected_start_timestamp).int_timestamp + + +@pytest.mark.parametrize("sync_mode", ("full_refresh", "incremental")) +def test_updated_cursor_incremental_stream_slices(credit_notes, sync_mode): + stream = credit_notes() + assert list(stream.stream_slices(sync_mode)) == [{}] + + +@pytest.mark.parametrize( + "last_record, stream_state, expected_state", + ( + ({"updated": 110}, {"updated": 111}, {"updated": 111}), + ({"created": 110}, {"updated": 111}, {"updated": 111}) + ) +) +def test_updated_cursor_incremental_stream_get_updated_state(credit_notes, last_record, stream_state, expected_state): + stream = credit_notes() + assert stream.get_updated_state(last_record, stream_state) == expected_state + + +@pytest.mark.parametrize("sync_mode", ("full_refresh", "incremental")) +def test_updated_cursor_incremental_stream_read_wo_state(requests_mock, sync_mode, credit_notes): + requests_mock.get( + "/v1/credit_notes", + [ + { + "json": { + "data": [{ + "id": "cn_1NGPwmEcXtiJtvvhNXwHpgJF", "object": "credit_note", "amount": 8400, "amount_shipping": 0, + "created": 1686158100 + }, { + "id": "cn_JtvvhNXwHpgJF1NGPwmEcXti", "object": "credit_note", "amount": 350, "amount_shipping": 150, + "created": 1685861100 + }], + "has_more": False + } + } + ] + ) + stream = credit_notes() + records = [record for record in stream.read_records(sync_mode)] + assert records == [ + {"id": "cn_1NGPwmEcXtiJtvvhNXwHpgJF", "object": "credit_note", "amount": 8400, "amount_shipping": 0, + "updated": 1686158100, "created": 1686158100}, + {"id": "cn_JtvvhNXwHpgJF1NGPwmEcXti", "object": "credit_note", "amount": 350, "amount_shipping": 150, + "created": 1685861100, "updated": 1685861100} + ] + + +@freezegun.freeze_time("2023-08-23T00:00:00") +def test_updated_cursor_incremental_stream_read_w_state(requests_mock, credit_notes): + requests_mock.get( + "/v1/events", + [ + { + "json": { + "data": [ + { + "id": "evt_1NdNFoEcXtiJtvvhBP5mxQmL", "object": "event", "api_version": "2020-08-27", "created": 1691629292, + "data": { + "object": {"object": "credit_note", "invoice": "in_1K9GK0EcXtiJtvvhSo2LvGqT", "created": 1653341716} + }, + "type": "credit_note.voided" + } + ], + "has_more": False + } + } + ] + ) + + stream = credit_notes() + records = [record for record in stream.read_records('incremental', stream_state={"updated": pendulum.parse("2023-01-01T15:00:15Z").int_timestamp})] + assert records == [ + {"object": "credit_note", "invoice": "in_1K9GK0EcXtiJtvvhSo2LvGqT", "created": 1653341716, "updated": 1691629292} + ] + + +def test_checkout_session_line_items(requests_mock): + + session_id_missed = "cs_test_a165K4wNihuJlp2u3tknuohrvjAxyXFUB7nxZH3lwXRKJsadNEvIEWMUJ9" + session_id_exists = "cs_test_a1RjRHNyGUQOFVF3OkL8V8J0lZUASyVoCtsnZYG74VrBv3qz4245BLA1BP" + + response_sessions = { + "data": [{"id": session_id_missed, "expires_at": 100_000}, {"id": session_id_exists, "expires_at": 100_000}], + "has_more": False, + "object": "list", + "url": "/v1/checkout/sessions", + } + + response_sessions_line_items = { + "data": [{"id": "li_1JpAUUIEn5WyEQxnfGJT5MbL"}], + "has_more": False, + "object": "list", + "url": "/v1/checkout/sessions/{}/line_items".format(session_id_exists), + } + + response_error = { + "error": { + "code": "resource_missing", + "doc_url": "https://stripe.com/docs/error-codes/resource-missing", + "message": "No such checkout session: '{}'".format(session_id_missed), + "param": "session", + "type": "invalid_request_error", + } + } + + requests_mock.get("https://api.stripe.com/v1/checkout/sessions", json=response_sessions) + requests_mock.get( + "https://api.stripe.com/v1/checkout/sessions/{}/line_items".format(session_id_exists), json=response_sessions_line_items + ) + requests_mock.get( + "https://api.stripe.com/v1/checkout/sessions/{}/line_items".format(session_id_missed), json=response_error, status_code=404 + ) + + stream = CheckoutSessionsLineItems(start_date=100_100, account_id=None) + records = [] + for slice_ in stream.stream_slices(sync_mode="full_refresh"): + records.extend(stream.read_records(sync_mode="full_refresh", stream_slice=slice_)) + assert len(records) == 1 + + +def test_customer_balance_transactions_stream_slices(requests_mock, stream_args): + stream_args["start_date"] = pendulum.now().subtract(days=1).int_timestamp + requests_mock.get( + "/v1/customers", + json={ + "data": [ + {"id": 1, "next_invoice_sequence": 1, "balance": 0, "created": 1653341716}, + {"id": 2, "created": 1653341000}, + {"id": 3, "next_invoice_sequence": 13, "balance": 343.43, "created": 1651716334} + ] + } + ) + stream = CustomerBalanceTransactions(**stream_args) + assert list(stream.stream_slices("full_refresh")) == [ + {"id": 2, "created": 1653341000, "updated": 1653341000}, {"id": 3, "next_invoice_sequence": 13, "balance": 343.43, "created": 1651716334, "updated": 1651716334} + ] + + +@freezegun.freeze_time("2023-08-23T15:00:15Z") +def test_setup_attempts(requests_mock, incremental_stream_args): + requests_mock.get( + "/v1/setup_intents", + [{"json": {"data": [{"id": 1, "created": 111, "object": "setup_intent"}]}}, {"json":{"data":[{"id": 2, "created": 222, "object": "setup_intent"}]}}] + ) + requests_mock.get( + "/v1/setup_attempts", + [{"json": {"data": [{"id": 1, "created": 112, "object": "setup_attempt"}]}}, + {"json": {"data": [{"id": 2, "created": 230, "object": "setup_attempt"}]}}, + {"json": {"data": [{"id": 3, "created": 345, "object": "setup_attempt"}]}}, + {"json": {"data": [{"id": 4, "created": 450, "object": "setup_attempt"}]}}] + ) + incremental_stream_args["slice_range"] = 1 + incremental_stream_args["lookback_window_days"] = 0 + incremental_stream_args["start_date"] = pendulum.now().subtract(days=2).int_timestamp + stream = SetupAttempts(**incremental_stream_args) + slices = list(stream.stream_slices("full_refresh")) + assert slices == [ + {"created[gte]": 1692630015, "created[lte]": 1692716415, "parent": {"id": 1, "created": 111, "updated": 111, "object": "setup_intent"}}, + {"created[gte]": 1692716416, "created[lte]": 1692802815, + "parent": {"id": 1, "created": 111, "updated": 111, "object": "setup_intent"}}, + {"created[gte]": 1692630015, "created[lte]": 1692716415, "parent": {"id": 2, "created": 222, "updated": 222, "object": "setup_intent"}}, + {"created[gte]": 1692716416, "created[lte]": 1692802815, "parent": {"id": 2, "created": 222, "updated": 222, "object": "setup_intent"}} + ] + records = [] + for slice_ in slices: + for record in stream.read_records("full_refresh", stream_slice=slice_): + records.append(record) + assert records == [ + {"id": 1, "created": 112, "object": "setup_attempt"}, + {"id": 2, "created": 230, "object": "setup_attempt"}, + {"id": 3, "created": 345, "object": "setup_attempt"}, + {"id": 4, "created": 450, "object": "setup_attempt"} + ] + + +def test_persons_wo_state(requests_mock, stream_args): + requests_mock.get( + "/v1/accounts", + json={"data": [{"id": 1, "object": "account", "created": 111}]} + ) + stream = Persons(**stream_args) + slices = list(stream.stream_slices("full_refresh")) + assert slices == [{"parent": {"id": 1, "object": "account", "created": 111}}] + requests_mock.get( + "/v1/accounts/1/persons", + json={"data": [{"id": 11, "object": "person", "created": 222}]} + ) + records = [] + for slice_ in slices: + for record in stream.read_records("full_refresh", stream_slice=slice_): + records.append(record) + assert records == [{"id": 11, "object": "person", "created": 222, "updated": 222}] + + +@freezegun.freeze_time("2023-08-23T15:00:15") +def test_persons_w_state(requests_mock, stream_args): + requests_mock.get( + "/v1/events", + json={ + "data": [ + { + "id": "evt_1NdNFoEcXtiJtvvhBP5mxQmL", "object": "event", "api_version": "2020-08-27", "created": 1691629292, "data": { + "object": { + "object": "person", "name": "John", "created": 1653341716 + } + }, + "type": "person.updated" + } + ], + "has_more": False + } + ) + stream = Persons(**stream_args) + slices = list(stream.stream_slices("incremental", stream_state={"updated": pendulum.parse("2023-08-20T00:00:00").int_timestamp})) + assert slices == [{}] + records = [ + record for record in stream.read_records("incremental", stream_state={"updated": pendulum.parse("2023-08-20T00:00:00").int_timestamp}) + ] + assert records == [{"object": "person", "name": "John", "created": 1653341716, "updated": 1691629292}] @pytest.mark.parametrize( - "stream, kwargs, expected", - [ - ( - CustomerBalanceTransactions, - {"stream_state": {}, "stream_slice": {"created[gte]": 1596466368, "created[lte]": 1596552768}}, - {"limit": 100, "created[gte]": 1596466368, "created[lte]": 1596552768}, - ), - ( - Customers, - {"stream_state": {}, "stream_slice": {"created[gte]": 1596466368, "created[lte]": 1596552768}}, - {"created[gte]": 1596466368, "created[lte]": 1596552768, "limit": 100}, - ), - (InvoiceLineItems, {"stream_state": {}, "stream_slice": {"starting_after": "2030"}}, {"limit": 100, "starting_after": "2030"}), - ( - Subscriptions, - {"stream_slice": {"created[gte]": 1596466368, "created[lte]": 1596552768}}, - {"created[gte]": 1596466368, "limit": 100, "status": "all", "created[lte]": 1596552768}, - ), - (SubscriptionItems, {"stream_state": {}, "stream_slice": {"subscription_id": "SI"}}, {"limit": 100, "subscription": "SI"}), - (BankAccounts, {"stream_state": {}, "stream_slice": {"subscription_id": "SI"}}, {"limit": 100, "object": "bank_account"}), - (CheckoutSessions, {"stream_state": None, "stream_slice": {}}, {"limit": 100}), - ( - CheckoutSessionsLineItems, - {"stream_state": None, "stream_slice": {}}, - {"limit": 100, "expand[]": ["data.discounts", "data.taxes"]}, - ), - (ExternalAccountBankAccounts, {"stream_state": None, "stream_slice": {}}, {"limit": 100, "object": "bank_account"}), - (ExternalAccountCards, {"stream_state": None, "stream_slice": {}}, {"limit": 100, "object": "card"}), - ], + "sync_mode, stream_state", + ( + ("full_refresh", {}), + ("incremental", {}), + ("incremental", {"updated": 1693987430}) + ) ) -def test_request_params( - stream, - kwargs, - expected, - stream_args, -): - assert stream(**stream_args).request_params(**kwargs) == expected +def test_cursorless_incremental_stream(requests_mock, external_bank_accounts, sync_mode, stream_state): + # Testing streams that *only* have the cursor field value in incremental mode because of API discrepancies, + # e.g. /bank_accounts does not return created/updated date, however /events?type=bank_account.updated returns the update date. + # Key condition here is that the underlying stream has legacy cursor field set to None. + stream = external_bank_accounts() + requests_mock.get( + "/v1/accounts//external_accounts", + json={ + "data": [ + { + "id": "ba_1Nncwa2eZvKYlo2CDILv1Q7N", + "object": "bank_account", + "account": "acct_1032D82eZvKYlo2C", + "bank_name": "STRIPE TEST BANK", + "country": "US" + } + ] + } + ) + requests_mock.get( + "/v1/events", + json={ + "data": [ + { + "id": "evt_1NdNFoEcXtiJtvvhBP5mxQmL", "object": "event", "api_version": "2020-08-27", "created": 1691629292, + "data": { + "object": { + "id": "ba_1Nncwa2eZvKYlo2CDILv1Q7N", + "object": "bank_account", + "account": "acct_1032D82eZvKYlo2C", + "bank_name": "STRIPE TEST BANK", + "country": "US" + } + }, + "type": "account.external_account.updated" + } + ], + "has_more": False + } + ) + for slice_ in stream.stream_slices(sync_mode=sync_mode, stream_state=stream_state): + for record in stream.read_records(sync_mode=sync_mode, stream_state=stream_state, stream_slice=slice_): + stream.get_updated_state(stream_state, record) + # no assertions, this should be just a successful sync @pytest.mark.parametrize( - "stream_cls", + "sync_mode, stream_state", ( - ApplicationFees, - Customers, - BalanceTransactions, - Charges, - Coupons, - Disputes, - Events, - Invoices, - InvoiceItems, - Payouts, - Plans, - Prices, - Products, - Subscriptions, - SubscriptionSchedule, - Transfers, - Refunds, - PaymentIntents, - CheckoutSessions, - PromotionCodes, - ExternalAccount, - SetupIntents, - ShippingRates + ("full_refresh", {}), + ("incremental", {}), + ("incremental", {"updated": 1693987430}) ) ) -def test_403_error_handling(stream_args, stream_cls, requests_mock): - stream = stream_cls(**stream_args) - logger = logging.getLogger("airbyte") - for error_code in STRIPE_ERROR_CODES: - requests_mock.get(f"{stream.url_base}{stream.path()}", status_code=403, json={"error": {"code": f"{error_code}"}}) - available, message = stream.check_availability(logger) - assert not available - assert STRIPE_ERROR_CODES[error_code] in message +def test_cursorless_incremental_substream(requests_mock, bank_accounts, sync_mode, stream_state): + # same for substreams + stream = bank_accounts() + requests_mock.get( + "/v1/customers", + json={ + "data": [ + {"id": 1, "created": 1, "object": "customer", "sources": {"data": [{"id": 1, "object": "bank_account"}], "has_more": True}} + ], + "has_more": False + } + ) + requests_mock.get( + "/v1/customers/1/sources", + json={"has_more": False, "data": [{"id": 2, "object": "bank_account"}]} + ) + requests_mock.get( + "/v1/events", + json={ + "data": [{ + "id": "evt_1NdNFoEcXtiJtvvhBP5mxQmL", + "object": "event", + "api_version": "2020-08-27", + "created": 1691629292, + "data": { + "object": { + "id": "ba_1Nncwa2eZvKYlo2CDILv1Q7N", + "object": "bank_account", + "account": "acct_1032D82eZvKYlo2C", + "bank_name": "STRIPE TEST BANK", + "country": "US" + } + }, + "type": "account.external_account.updated" + }] + } + ) + for slice_ in stream.stream_slices(sync_mode=sync_mode, stream_state=stream_state): + for record in stream.read_records(sync_mode=sync_mode, stream_state=stream_state, stream_slice=slice_): + stream.get_updated_state(stream_state, record) diff --git a/airbyte-integrations/connectors/source-tempo/metadata.yaml b/airbyte-integrations/connectors/source-tempo/metadata.yaml index a3bc6a870eba..d29e9d18b11c 100644 --- a/airbyte-integrations/connectors/source-tempo/metadata.yaml +++ b/airbyte-integrations/connectors/source-tempo/metadata.yaml @@ -1,4 +1,7 @@ data: + ab_internal: + ql: 300 + sl: 100 allowedHosts: hosts: - api.tempo.io @@ -7,6 +10,7 @@ data: definitionId: d1aa448b-7c54-498e-ad95-263cbebcd2db dockerImageTag: 0.3.1 dockerRepository: airbyte/source-tempo + documentationUrl: https://docs.airbyte.com/integrations/sources/tempo githubIssueLabel: source-tempo icon: tempo.svg license: MIT @@ -17,12 +21,8 @@ data: oss: enabled: true releaseStage: beta - documentationUrl: https://docs.airbyte.com/integrations/sources/tempo + supportLevel: community tags: - language:low-code - language:python - ab_internal: - sl: 200 - ql: 300 - supportLevel: certified metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-teradata/build.gradle b/airbyte-integrations/connectors/source-teradata/build.gradle index 47b083feee8a..0dcd469d167d 100644 --- a/airbyte-integrations/connectors/source-teradata/build.gradle +++ b/airbyte-integrations/connectors/source-teradata/build.gradle @@ -25,6 +25,4 @@ dependencies { integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-teradata') integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors/source-tidb/build.gradle b/airbyte-integrations/connectors/source-tidb/build.gradle index 6f41920bc5ca..494dab619b99 100644 --- a/airbyte-integrations/connectors/source-tidb/build.gradle +++ b/airbyte-integrations/connectors/source-tidb/build.gradle @@ -21,7 +21,7 @@ dependencies { implementation 'mysql:mysql-connector-java:8.0.22' // Add testcontainers and use GenericContainer for TiDB - implementation libs.connectors.testcontainers.tidb + testImplementation libs.testcontainers.tidb testImplementation testFixtures(project(':airbyte-integrations:connectors:source-jdbc')) @@ -30,9 +30,7 @@ dependencies { integrationTestJavaImplementation project(':airbyte-integrations:connectors:source-tidb') integrationTestJavaImplementation project(':airbyte-integrations:bases:standard-source-test') - integrationTestJavaImplementation libs.connectors.testcontainers.tidb + integrationTestJavaImplementation libs.testcontainers.tidb - implementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) - integrationTestJavaImplementation files(project(':airbyte-integrations:bases:base-java').airbyteDocker.outputs) } diff --git a/airbyte-integrations/connectors/source-trello/.dockerignore b/airbyte-integrations/connectors/source-trello/.dockerignore index 4ab13fc2e420..5fda561be30c 100644 --- a/airbyte-integrations/connectors/source-trello/.dockerignore +++ b/airbyte-integrations/connectors/source-trello/.dockerignore @@ -1,6 +1,5 @@ * !Dockerfile -!Dockerfile.test !main.py !source_trello !setup.py diff --git a/airbyte-integrations/connectors/source-trello/Dockerfile b/airbyte-integrations/connectors/source-trello/Dockerfile index ab1cf6ecde2d..9366b898b53c 100644 --- a/airbyte-integrations/connectors/source-trello/Dockerfile +++ b/airbyte-integrations/connectors/source-trello/Dockerfile @@ -6,7 +6,9 @@ WORKDIR /airbyte/integration_code # upgrade pip to the latest version RUN apk --no-cache upgrade \ - && pip install --upgrade pip + && pip install --upgrade pip \ + && apk --no-cache add tzdata build-base + COPY setup.py ./ # install necessary packages to a temporary folder @@ -18,8 +20,11 @@ WORKDIR /airbyte/integration_code # copy all loaded and built libraries to a pure basic image COPY --from=builder /install /usr/local +# add default timezone settings +COPY --from=builder /usr/share/zoneinfo/Etc/UTC /etc/localtime +RUN echo "Etc/UTC" > /etc/timezone -# Bash is installed for more convenient debugging. +# bash is installed for more convenient debugging. RUN apk --no-cache add bash # copy payload code only @@ -29,5 +34,5 @@ COPY source_trello ./source_trello ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=0.3.4 +LABEL io.airbyte.version=1.0.0 LABEL io.airbyte.name=airbyte/source-trello diff --git a/airbyte-integrations/connectors/source-trello/README.md b/airbyte-integrations/connectors/source-trello/README.md index c713b949a5ad..c573a11f875d 100644 --- a/airbyte-integrations/connectors/source-trello/README.md +++ b/airbyte-integrations/connectors/source-trello/README.md @@ -1,34 +1,10 @@ # Trello Source -This is the repository for the Trello source connector, written in Python. -For information about how to use this connector within Airbyte, see [the documentation](https://docs.airbyte.io/integrations/sources/trello). +This is the repository for the Trello configuration based source connector. +For information about how to use this connector within Airbyte, see [the documentation](https://docs.airbyte.com/integrations/sources/trello). ## Local development -### Prerequisites -**To iterate on this connector, make sure to complete this prerequisites section.** - -#### Minimum Python version required `= 3.7.0` - -#### Build & Activate Virtual Environment and install dependencies -From this connector directory, create a virtual environment: -``` -python -m venv .venv -``` - -This will generate a virtualenv for this module in `.venv/`. Make sure this venv is active in your -development environment of choice. To activate it from the terminal, run: -``` -source .venv/bin/activate -pip install -r requirements.txt -``` -If you are in an IDE, follow your IDE's instructions to activate the virtualenv. - -Note that while we are installing dependencies from `requirements.txt`, you should only edit `setup.py` for your dependencies. `requirements.txt` is -used for editable installs (`pip install -e`) to pull in Python dependencies from the monorepo and will call `setup.py`. -If this is mumbo jumbo to you, don't worry about it, just put your deps in `setup.py` but install using `pip install -r requirements.txt` and everything -should work as you expect. - #### Building via Gradle You can also build the connector in Gradle. This is typically used in CI and not needed for your development workflow. @@ -38,22 +14,14 @@ To build using Gradle, from the Airbyte repository root, run: ``` #### Create credentials -**If you are a community contributor**, follow the instructions in the [documentation](https://docs.airbyte.io/integrations/sources/trello) -to generate the necessary credentials. Then create a file `secrets/config.json` conforming to the `source_trello/spec.json` file. +**If you are a community contributor**, follow the instructions in the [documentation](https://docs.airbyte.com/integrations/sources/trello) +to generate the necessary credentials. Then create a file `secrets/config.json` conforming to the `source_trello/spec.yaml` file. Note that any directory named `secrets` is gitignored across the entire Airbyte repo, so there is no danger of accidentally checking in sensitive information. See `integration_tests/sample_config.json` for a sample config file. **If you are an Airbyte core member**, copy the credentials in Lastpass under the secret name `source trello test creds` and place them into `secrets/config.json`. -### Locally running the connector -``` -python main.py spec -python main.py check --config secrets/config.json -python main.py discover --config secrets/config.json -python main.py read --config secrets/config.json --catalog integration_tests/configured_catalog.json -``` - ### Locally running the connector docker image #### Build @@ -78,32 +46,15 @@ docker run --rm -v $(pwd)/secrets:/secrets airbyte/source-trello:dev discover -- docker run --rm -v $(pwd)/secrets:/secrets -v $(pwd)/integration_tests:/integration_tests airbyte/source-trello:dev read --config /secrets/config.json --catalog /integration_tests/configured_catalog.json ``` ## Testing -Make sure to familiarize yourself with [pytest test discovery](https://docs.pytest.org/en/latest/goodpractices.html#test-discovery) to know how your test files and methods should be named. -First install test dependencies into your virtual environment: -``` -pip install .[tests] -``` -### Unit Tests -To run unit tests locally, from the connector directory run: -``` -python -m pytest unit_tests -``` -### Integration Tests -There are two types of integration tests: Acceptance Tests (Airbyte's test suite for all source connectors) and custom integration tests (which are specific to this connector). -#### Custom Integration tests -Place custom tests inside `integration_tests/` folder, then, from the connector root, run -``` -python -m pytest integration_tests -``` #### Acceptance Tests -Customize `acceptance-test-config.yml` file to configure tests. See [Connector Acceptance Tests](https://docs.airbyte.io/connector-development/testing-connectors/connector-acceptance-tests-reference) for more information. +Customize `acceptance-test-config.yml` file to configure tests. See [Connector Acceptance Tests](https://docs.airbyte.com/connector-development/testing-connectors/connector-acceptance-tests-reference) for more information. If your connector requires to create or destroy resources for use during acceptance tests create fixtures for it and place them inside integration_tests/acceptance.py. -To run your integration tests with acceptance tests, from the connector root, run + +To run your integration tests with Docker, run: ``` -python -m pytest integration_tests -p integration_tests.acceptance +./acceptance-test-docker.sh ``` -To run your integration tests with docker ### Using gradle to run tests All commands should be run from airbyte project root. @@ -125,7 +76,7 @@ We split dependencies between two groups, dependencies that are: ### Publishing a new version of the connector You've checked out the repo, implemented a million dollar feature, and you're ready to share your changes with the world. Now what? 1. Make sure your changes are passing unit and integration tests. -2. Bump the connector version in `Dockerfile` -- just increment the value of the `LABEL io.airbyte.version` appropriately (we use [SemVer](https://semver.org/)). -3. Create a Pull Request. -4. Pat yourself on the back for being an awesome contributor. -5. Someone from Airbyte will take a look at your PR and iterate with you to merge it into master. +1. Bump the connector version in `Dockerfile` -- just increment the value of the `LABEL io.airbyte.version` appropriately (we use [SemVer](https://semver.org/)). +1. Create a Pull Request. +1. Pat yourself on the back for being an awesome contributor. +1. Someone from Airbyte will take a look at your PR and iterate with you to merge it into master. diff --git a/airbyte-integrations/connectors/source-trello/__init__.py b/airbyte-integrations/connectors/source-trello/__init__.py new file mode 100644 index 000000000000..c941b3045795 --- /dev/null +++ b/airbyte-integrations/connectors/source-trello/__init__.py @@ -0,0 +1,3 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# diff --git a/airbyte-integrations/connectors/source-trello/acceptance-test-config.yml b/airbyte-integrations/connectors/source-trello/acceptance-test-config.yml index 66a0278cb620..cb0434023537 100644 --- a/airbyte-integrations/connectors/source-trello/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-trello/acceptance-test-config.yml @@ -5,7 +5,7 @@ test_strictness_level: "high" acceptance_tests: spec: tests: - - spec_path: "source_trello/spec.json" + - spec_path: "source_trello/spec.yaml" backward_compatibility_tests_config: disable_for_version: 0.2.0 connection: @@ -34,8 +34,6 @@ acceptance_tests: configured_catalog_path: "integration_tests/configured_catalog.json" future_state: future_state_path: "integration_tests/abnormal_state.json" - cursor_paths: - actions: ["611aa586ef5f2c8e1deec8b6", "date"] full_refresh: tests: - config_path: "secrets/config.json" diff --git a/airbyte-integrations/connectors/source-trello/acceptance-test-docker.sh b/airbyte-integrations/connectors/source-trello/acceptance-test-docker.sh index 5797d20fe9a7..b6d65deeccb4 100644 --- a/airbyte-integrations/connectors/source-trello/acceptance-test-docker.sh +++ b/airbyte-integrations/connectors/source-trello/acceptance-test-docker.sh @@ -1,2 +1,3 @@ #!/usr/bin/env sh + source "$(git rev-parse --show-toplevel)/airbyte-integrations/bases/connector-acceptance-test/acceptance-test-docker.sh" diff --git a/airbyte-integrations/connectors/source-trello/integration_tests/__init__.py b/airbyte-integrations/connectors/source-trello/integration_tests/__init__.py index e69de29bb2d1..c941b3045795 100644 --- a/airbyte-integrations/connectors/source-trello/integration_tests/__init__.py +++ b/airbyte-integrations/connectors/source-trello/integration_tests/__init__.py @@ -0,0 +1,3 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# diff --git a/airbyte-integrations/connectors/source-trello/integration_tests/abnormal_state.json b/airbyte-integrations/connectors/source-trello/integration_tests/abnormal_state.json index 4d239734099d..752578573c81 100644 --- a/airbyte-integrations/connectors/source-trello/integration_tests/abnormal_state.json +++ b/airbyte-integrations/connectors/source-trello/integration_tests/abnormal_state.json @@ -6,12 +6,16 @@ "name": "actions" }, "stream_state": { - "611aa586ef5f2c8e1deec8b6": { - "date": "2099-03-16T20:10:54.641Z" - }, - "611aa0ef37acd675af67dc9b": { - "date": "2099-03-16T18:47:16.404Z" - } + "states": [ + { + "partition": { "id": "611aa586ef5f2c8e1deec8b6" }, + "cursor": { "date": "2099-03-16T20:10:54.641Z" } + }, + { + "partition": { "id": "611aa0ef37acd675af67dc9b" }, + "cursor": { "date": "2099-03-16T18:47:16.404Z" } + } + ] } } } diff --git a/airbyte-integrations/connectors/source-trello/integration_tests/acceptance.py b/airbyte-integrations/connectors/source-trello/integration_tests/acceptance.py index d49b55882333..9e6409236281 100644 --- a/airbyte-integrations/connectors/source-trello/integration_tests/acceptance.py +++ b/airbyte-integrations/connectors/source-trello/integration_tests/acceptance.py @@ -10,4 +10,7 @@ @pytest.fixture(scope="session", autouse=True) def connector_setup(): + """This fixture is a placeholder for external resources that acceptance test might require.""" + # TODO: setup test dependencies if needed. otherwise remove the TODO comments yield + # TODO: clean up test dependencies diff --git a/airbyte-integrations/connectors/source-trello/metadata.yaml b/airbyte-integrations/connectors/source-trello/metadata.yaml index 8d72b0bc1636..656f391d1718 100644 --- a/airbyte-integrations/connectors/source-trello/metadata.yaml +++ b/airbyte-integrations/connectors/source-trello/metadata.yaml @@ -1,27 +1,33 @@ data: + ab_internal: + ql: 300 + sl: 100 allowedHosts: hosts: - api.trello.com + registries: + oss: + enabled: true + cloud: + enabled: true connectorSubtype: api connectorType: source definitionId: 8da67652-004c-11ec-9a03-0242ac130003 - dockerImageTag: 0.3.4 + dockerImageTag: 1.0.0 dockerRepository: airbyte/source-trello + documentationUrl: https://docs.airbyte.com/integrations/sources/trello githubIssueLabel: source-trello icon: trello.svg license: MIT name: Trello - registries: - cloud: - enabled: true - oss: - enabled: true + releases: + breakingChanges: + 1.0.0: + upgradeDeadline: "2023-09-28" + message: "The verison migrates the Trello connector to the low-code framework for greater maintainability. This introduces a breaking change to the state format for the `response` stream. If you are using the incremental sync mode for this stream, you will need to reset the affected connection after upgrading to prevent sync failures." + releaseDate: 2021-08-18 releaseStage: beta - documentationUrl: https://docs.airbyte.com/integrations/sources/trello + supportLevel: community tags: - - language:python - ab_internal: - sl: 200 - ql: 300 - supportLevel: certified + - language:low-code metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-trello/setup.py b/airbyte-integrations/connectors/source-trello/setup.py index 4209a8aabf1b..38d12ba64785 100644 --- a/airbyte-integrations/connectors/source-trello/setup.py +++ b/airbyte-integrations/connectors/source-trello/setup.py @@ -5,12 +5,14 @@ from setuptools import find_packages, setup -MAIN_REQUIREMENTS = ["airbyte-cdk~=0.1"] +MAIN_REQUIREMENTS = [ + "airbyte-cdk", +] TEST_REQUIREMENTS = [ - "pytest~=6.1", + "requests-mock~=1.9.3", + "pytest~=6.2", "pytest-mock~=3.6.1", - "requests-mock", ] setup( @@ -20,7 +22,7 @@ author_email="contact@airbyte.io", packages=find_packages(), install_requires=MAIN_REQUIREMENTS, - package_data={"": ["*.json", "schemas/*.json", "schemas/shared/*.json"]}, + package_data={"": ["*.json", "*.yaml", "schemas/*.json", "schemas/shared/*.json"]}, extras_require={ "tests": TEST_REQUIREMENTS, }, diff --git a/airbyte-integrations/connectors/source-trello/source_trello/__init__.py b/airbyte-integrations/connectors/source-trello/source_trello/__init__.py index 1267f6961f64..b0f5075e713e 100644 --- a/airbyte-integrations/connectors/source-trello/source_trello/__init__.py +++ b/airbyte-integrations/connectors/source-trello/source_trello/__init__.py @@ -1,25 +1,5 @@ # -# MIT License -# -# Copyright (c) 2020 Airbyte -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in all -# copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -# SOFTWARE. +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. # diff --git a/airbyte-integrations/connectors/source-trello/source_trello/auth.py b/airbyte-integrations/connectors/source-trello/source_trello/auth.py deleted file mode 100644 index e34c9a208f70..000000000000 --- a/airbyte-integrations/connectors/source-trello/source_trello/auth.py +++ /dev/null @@ -1,24 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - - -from airbyte_cdk.sources.streams.http.requests_native_auth.abstract_token import AbstractHeaderAuthenticator - - -class TrelloAuthenticator(AbstractHeaderAuthenticator): - """ - https://developer.atlassian.com/cloud/trello/guides/rest-api/authorization/#passing-token-and-key-in-api-requests - """ - - def __init__(self, apiKey: str, apiToken: str): - self.apiKey = apiKey - self.apiToken = apiToken - - @property - def auth_header(self) -> str: - return "Authorization" - - @property - def token(self) -> str: - return f'OAuth oauth_consumer_key="{self.apiKey}", oauth_token="{self.apiToken}"' diff --git a/airbyte-integrations/connectors/source-trello/source_trello/components.py b/airbyte-integrations/connectors/source-trello/source_trello/components.py new file mode 100644 index 000000000000..2f3dd3721704 --- /dev/null +++ b/airbyte-integrations/connectors/source-trello/source_trello/components.py @@ -0,0 +1,44 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + +from dataclasses import dataclass +from typing import Iterable + +from airbyte_cdk.models import SyncMode +from airbyte_cdk.sources.declarative.partition_routers.substream_partition_router import SubstreamPartitionRouter +from airbyte_cdk.sources.declarative.types import StreamSlice +from airbyte_cdk.sources.streams.core import Stream + + +@dataclass +class OrderIdsPartitionRouter(SubstreamPartitionRouter): + def stream_slices(self) -> Iterable[StreamSlice]: + + stream_map = {stream_config.stream.name: stream_config.stream for stream_config in self.parent_stream_configs} + + board_ids = set(self.config.get("board_ids", [])) + if not board_ids: + board_ids = self.read_all_boards(stream_boards=stream_map["boards"], stream_organizations=stream_map["organizations"]) + + for board_id in board_ids: + yield {"id": board_id} + + def read_all_boards(self, stream_boards: Stream, stream_organizations: Stream): + """ + Method to get id of each board in the boards stream, + get ids of boards associated with each organization in the organizations stream + and yield each unique board id + """ + board_ids = set() + + for record in stream_boards.read_records(sync_mode=SyncMode.full_refresh): + if record["id"] not in board_ids: + board_ids.add(record["id"]) + yield record["id"] + + for record in stream_organizations.read_records(sync_mode=SyncMode.full_refresh): + for board_id in record["idBoards"]: + if board_id not in board_ids: + board_ids.add(board_id) + yield board_id diff --git a/airbyte-integrations/connectors/source-trello/source_trello/manifest.yaml b/airbyte-integrations/connectors/source-trello/source_trello/manifest.yaml new file mode 100644 index 000000000000..7f762698cfc8 --- /dev/null +++ b/airbyte-integrations/connectors/source-trello/source_trello/manifest.yaml @@ -0,0 +1,271 @@ +version: 0.51.2 +type: DeclarativeSource + +check: + type: CheckStream + stream_names: + - boards + +definitions: + selector: + type: RecordSelector + extractor: + type: DpathExtractor + field_path: [] + boards_selector: + $ref: "#/definitions/selector" + record_filter: + condition: "{{ record.id in config.board_ids or not config.board_ids }}" + requester: + type: HttpRequester + url_base: https://api.trello.com/1/ + http_method: GET + request_headers: {} + authenticator: + type: ApiKeyAuthenticator + api_token: 'OAuth oauth_consumer_key="{{ config[''key''] }}", oauth_token="{{ config[''token''] }}"' + inject_into: + type: RequestOption + field_name: Authorization + inject_into: header + error_handler: + type: CompositeErrorHandler + error_handlers: + - type: DefaultErrorHandler + backoff_strategies: + - type: ConstantBackoffStrategy + backoff_time_in_seconds: 10 + request_body_json: {} + paginator: + type: DefaultPaginator + page_token_option: + type: RequestOption + inject_into: request_parameter + field_name: before + page_size_option: + type: RequestOption + field_name: limit + inject_into: request_parameter + pagination_strategy: + type: CursorPagination + page_size: 500 + cursor_value: '{{ (last_records|last)[''id''] }}' + stop_condition: '{{ not last_records }}' + board_id_partition_router: + - type: CustomPartitionRouter + class_name: + source_trello.components.OrderIdsPartitionRouter + parent_stream_configs: + - type: ParentStreamConfig + parent_key: id + partition_field: id + stream: + $ref: "#/definitions/boards_stream" + - type: ParentStreamConfig + parent_key: idBoards + partition_field: id + stream: + $ref: "#/definitions/organizations_stream" + boards_stream: + type: DeclarativeStream + name: boards + primary_key: id + retriever: + type: SimpleRetriever + requester: + $ref: "#/definitions/requester" + path: members/me/boards + request_parameters: + since: '{{ config[''start_date''] }}' + record_selector: + $ref: "#/definitions/boards_selector" + organizations_stream: + type: DeclarativeStream + name: organizations + primary_key: id + retriever: + type: SimpleRetriever + requester: + $ref: "#/definitions/requester" + path: members/me/organizations + request_parameters: + since: '{{ config[''start_date''] }}' + record_selector: + $ref: "#/definitions/selector" + actions_stream: + type: DeclarativeStream + name: actions + primary_key: id + retriever: + type: SimpleRetriever + requester: + $ref: "#/definitions/requester" + path: boards/{{ stream_partition.id }}/actions + record_selector: + $ref: "#/definitions/selector" + paginator: + $ref: "#/definitions/paginator" + partition_router: + $ref: "#/definitions/board_id_partition_router" + incremental_sync: + type: DatetimeBasedCursor + cursor_field: date + cursor_datetime_formats: + - '%Y-%m-%dT%H:%M:%S.%fZ' + datetime_format: '%Y-%m-%dT%H:%M:%S.%fZ' + start_datetime: + type: MinMaxDatetime + datetime: '{{ config[''start_date''] }}' + datetime_format: '%Y-%m-%dT%H:%M:%SZ' + start_time_option: + type: RequestOption + field_name: since + inject_into: request_parameter + end_datetime: + type: MinMaxDatetime + datetime: '{{ now_utc().strftime(''%Y-%m-%dT%H:%M:%SZ'') }}' + datetime_format: '%Y-%m-%dT%H:%M:%SZ' + cards_stream: + type: DeclarativeStream + name: cards + primary_key: id + retriever: + type: SimpleRetriever + requester: + $ref: "#/definitions/requester" + path: boards/{{ stream_partition.id }}/cards/all + request_parameters: + list: 'true' + sort: '-id' + since: '{{ config[''start_date''] }}' + members: 'true' + pluginData: 'true' + actions_display: 'true' + customFieldItems: 'true' + record_selector: + $ref: "#/definitions/selector" + paginator: + $ref: "#/definitions/paginator" + partition_router: + $ref: "#/definitions/board_id_partition_router" + checklists_stream: + type: DeclarativeStream + name: checklists + primary_key: id + retriever: + type: SimpleRetriever + requester: + $ref: "#/definitions/requester" + path: boards/{{ stream_partition.id }}/checklists + request_parameters: + since: '{{ config[''start_date''] }}' + fields: all + checkItem_fields: all + record_selector: + $ref: "#/definitions/selector" + partition_router: + $ref: "#/definitions/board_id_partition_router" + lists_stream: + type: DeclarativeStream + name: lists + primary_key: id + retriever: + type: SimpleRetriever + requester: + $ref: "#/definitions/requester" + path: boards/{{ stream_partition.id }}/lists + request_parameters: + since: '{{ config[''start_date''] }}' + record_selector: + $ref: "#/definitions/selector" + partition_router: + $ref: "#/definitions/board_id_partition_router" + users_stream: + type: DeclarativeStream + name: users + primary_key: id + retriever: + type: SimpleRetriever + requester: + $ref: "#/definitions/requester" + path: boards/{{ stream_partition.id }}/members + request_parameters: + since: '{{ config[''start_date''] }}' + record_selector: + $ref: "#/definitions/selector" + partition_router: + $ref: "#/definitions/board_id_partition_router" + +streams: + - "#/definitions/boards_stream" + - "#/definitions/organizations_stream" + - "#/definitions/actions_stream" + - "#/definitions/cards_stream" + - "#/definitions/checklists_stream" + - "#/definitions/lists_stream" + - "#/definitions/users_stream" + +spec: + type: Spec + documentation_url: https://docs.airbyte.com/integrations/sources/trello + connection_specification: + $schema: http://json-schema.org/draft-07/schema# + type: object + additionalProperties: true + required: + - key + - token + - start_date + properties: + key: + type: string + title: API key + description: Trello API key. See the docs for instructions on how to generate it. + airbyte_secret: true + order: 0 + token: + type: string + title: API token + description: Trello API token. See the docs for instructions on how to generate it. + airbyte_secret: true + order: 1 + start_date: + type: string + title: Start Date + pattern: "^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}Z$" + description: UTC date and time in the format 2017-01-25T00:00:00Z. Any data before this date will not be replicated. + examples: + - '2021-03-01T00:00:00Z' + format: date-time + order: 2 + board_ids: + type: array + items: + type: string + pattern: "^[0-9a-fA-F]{24}$" + title: Trello Board IDs + description: IDs of the boards to replicate data from. If left empty, data from all boards to which you have access will be replicated. + order: 3 + advanced_auth: + auth_flow_type: oauth2.0 + oauth_config_specification: + complete_oauth_output_specification: + type: object + additionalProperties: false + properties: + token: + type: string + path_in_connector_config: + - token + key: + type: string + path_in_connector_config: + - key + complete_oauth_server_input_specification: + type: object + additionalProperties: false + properties: + client_id: + type: string + client_secret: + type: string diff --git a/airbyte-integrations/connectors/source-trello/source_trello/source.py b/airbyte-integrations/connectors/source-trello/source_trello/source.py index 5caaea8444e8..591073e589be 100644 --- a/airbyte-integrations/connectors/source-trello/source_trello/source.py +++ b/airbyte-integrations/connectors/source-trello/source_trello/source.py @@ -2,219 +2,17 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # +from airbyte_cdk.sources.declarative.yaml_declarative_source import YamlDeclarativeSource -import datetime -from abc import ABC -from typing import Any, Iterable, List, Mapping, MutableMapping, Optional, Tuple +""" +This file provides the necessary constructs to interpret a provided declarative YAML configuration file into +source connector. -import requests -from airbyte_cdk.sources import AbstractSource -from airbyte_cdk.sources.streams import Stream -from airbyte_cdk.sources.streams.http import HttpStream -from airbyte_cdk.sources.utils.transform import TransformConfig, TypeTransformer +WARNING: Do not modify this file. +""" -from .auth import TrelloAuthenticator -from .utils import TrelloRequestRateLimits as balancer -from .utils import read_all_boards - -class TrelloStream(HttpStream, ABC): - url_base = "https://api.trello.com/1/" - - # Define primary key as sort key for full_refresh, or very first sync for incremental_refresh - primary_key = "id" - - # Page size - limit = None - - extra_params = None - - transformer: TypeTransformer = TypeTransformer(TransformConfig.DefaultSchemaNormalization) - - def __init__(self, config: Mapping[str, Any]): - super().__init__(authenticator=config["authenticator"]) - self.start_date = config["start_date"] - self.config = config - - def next_page_token(self, response: requests.Response) -> Optional[Mapping[str, Any]]: - return None - - def request_params( - self, stream_state: Mapping[str, Any], stream_slice: Mapping[str, Any] = None, next_page_token: Mapping[str, Any] = None - ) -> MutableMapping[str, Any]: - params = {"limit": self.limit, "since": self.start_date} - if next_page_token: - params.update(**next_page_token) - if self.extra_params: - params.update(self.extra_params) - return params - - @balancer.balance_rate_limit() - def parse_response(self, response: requests.Response, **kwargs) -> Iterable[Mapping]: - json_response = response.json() - for record in json_response: - yield record - - -class ChildStreamMixin: - def stream_slices(self, sync_mode, **kwargs) -> Iterable[Optional[Mapping[str, any]]]: - board_ids = set(self.config.get("board_ids", [])) - for board_id in read_all_boards(Boards(self.config), Organizations(self.config)): - if not board_ids or board_id in board_ids: - yield {"id": board_id} - - -class IncrementalTrelloStream(TrelloStream, ABC): - cursor_field = "date" - - def next_page_token(self, response: requests.Response) -> Optional[Mapping[str, Any]]: - response_json = response.json() - if response_json: - return {"before": response_json[-1]["id"]} - - def request_params( - self, stream_state: Mapping[str, Any], stream_slice: Mapping[str, Any] = None, next_page_token: Mapping[str, Any] = None - ) -> MutableMapping[str, Any]: - params = super().request_params(stream_state, stream_slice, next_page_token) - if stream_state: - board_id = stream_slice["id"] - since = stream_state.get(board_id, {}).get(self.cursor_field) - if since: - params["since"] = since - return params - - def get_updated_state(self, current_stream_state: MutableMapping[str, Any], latest_record: Mapping[str, Any]) -> Mapping[str, Any]: - board_id = latest_record["data"]["board"]["id"] - updated_state = latest_record[self.cursor_field] - stream_state_value = current_stream_state.get(board_id, {}).get(self.cursor_field) - if stream_state_value: - updated_state = max(updated_state, stream_state_value) - current_stream_state.setdefault(board_id, {})[self.cursor_field] = updated_state - return current_stream_state - - -class Boards(TrelloStream): - """Return list of all boards. - API Docs: https://developer.atlassian.com/cloud/trello/rest/api-group-members/#api-members-id-boards-get - Endpoint: https://api.trello.com/1/members/me/boards - """ - - def path(self, stream_slice: Mapping[str, Any] = None, **kwargs) -> str: - return "members/me/boards" - - def parse_response(self, response: requests.Response, **kwargs) -> Iterable[Mapping]: - board_ids = self.config.get("board_ids", []) - for record in super().parse_response(response, **kwargs): - if not board_ids or record["id"] in board_ids: - yield record - - -class Cards(ChildStreamMixin, TrelloStream): - """Return list of all cards of a boards. - API Docs: https://developer.atlassian.com/cloud/trello/rest/api-group-boards/#api-boards-id-cards-get - Endpoint: https://api.trello.com/1/boards//cards/all - """ - - limit = 500 - extra_params = { - "customFieldItems": "true", - "pluginData": "true", - "actions_display": "true", - "members": "true", - "list": "true", - "sort": "-id", - } - - def next_page_token(self, response: requests.Response) -> Optional[Mapping[str, Any]]: - response_json = response.json() - if response_json: - return {"before": response_json[-1]["id"]} - - def path(self, stream_slice: Mapping[str, Any] = None, **kwargs) -> str: - return f"boards/{stream_slice['id']}/cards/all" - - -class Checklists(ChildStreamMixin, TrelloStream): - """Return list of all checklists of a boards. - API Docs: https://developer.atlassian.com/cloud/trello/rest/api-group-boards/#api-boards-id-checklists-get - Endpoint: https://api.trello.com/1/boards//checklists - """ - - extra_params = {"fields": "all", "checkItem_fields": "all"} - - def path(self, stream_slice: Mapping[str, Any] = None, **kwargs) -> str: - return f"boards/{stream_slice['id']}/checklists" - - -class Lists(ChildStreamMixin, TrelloStream): - """Return list of all lists of a boards. - API Docs: https://developer.atlassian.com/cloud/trello/rest/api-group-boards/#api-boards-id-lists-get - Endpoint: https://api.trello.com/1/boards//lists - """ - - def path(self, stream_slice: Mapping[str, Any] = None, **kwargs) -> str: - return f"boards/{stream_slice['id']}/lists" - - -class Organizations(TrelloStream): - """Return list of all member's organizations - API Docs: https://developer.atlassian.com/cloud/trello/rest/api-group-members/#api-members-id-organizations-get - Endpoint: https://api.trello.com/1/members/me/organizations - """ - - def path(self, stream_slice: Mapping[str, Any] = None, **kwargs) -> str: - return "members/me/organizations" - - -class Users(ChildStreamMixin, TrelloStream): - """Return list of all members of a boards. - API Docs: https://developer.atlassian.com/cloud/trello/rest/api-group-boards/#api-boards-id-members-get - Endpoint: https://api.trello.com/1/boards//members - """ - - def path(self, stream_slice: Mapping[str, Any] = None, **kwargs) -> str: - return f"boards/{stream_slice['id']}/members" - - -class Actions(ChildStreamMixin, IncrementalTrelloStream): - """Return list of all actions of a boards. - API Docs: https://developer.atlassian.com/cloud/trello/rest/api-group-boards/#api-boards-boardid-actions-get - Endpoint: https://api.trello.com/1/boards//actions - """ - - limit = 1000 - - def path(self, stream_slice: Mapping[str, Any] = None, **kwargs) -> str: - return f"boards/{stream_slice['id']}/actions" - - -class SourceTrello(AbstractSource): - """ - Source Trello fetch date from web-based, Kanban-style, list-making application. - """ - - def _validate_and_transform(self, config: Mapping[str, Any]): - datetime.datetime.strptime(config["start_date"], "%Y-%m-%dT%H:%M:%SZ") - return config - - @staticmethod - def _get_authenticator(config: dict): - return TrelloAuthenticator(apiKey=config["key"], apiToken=config["token"]) - - def check_connection(self, logger, config) -> Tuple[bool, any]: - """ - Testing connection availability for the connector by granting the credentials. - """ - - config = self._validate_and_transform(config) - config["authenticator"] = self._get_authenticator(config) - available_boards = set(read_all_boards(Boards({**config, "board_ids": []}), Organizations(config))) - unknown_boards = set(config.get("board_ids", [])) - available_boards - if unknown_boards: - unknown_boards = ", ".join(sorted(unknown_boards)) - return False, f"Board ID(s): {unknown_boards} not found" - return True, None - - def streams(self, config: Mapping[str, Any]) -> List[Stream]: - config["authenticator"] = self._get_authenticator(config) - return [Actions(config), Boards(config), Cards(config), Checklists(config), Lists(config), Users(config), Organizations(config)] +# Declarative Source +class SourceTrello(YamlDeclarativeSource): + def __init__(self): + super().__init__(**{"path_to_yaml": "manifest.yaml"}) diff --git a/airbyte-integrations/connectors/source-trello/source_trello/spec.json b/airbyte-integrations/connectors/source-trello/source_trello/spec.json deleted file mode 100644 index 5576ac580c4f..000000000000 --- a/airbyte-integrations/connectors/source-trello/source_trello/spec.json +++ /dev/null @@ -1,76 +0,0 @@ -{ - "documentationUrl": "https://docs.airbyte.com/integrations/sources/trello", - "connectionSpecification": { - "$schema": "http://json-schema.org/draft-07/schema#", - "title": "Trello Spec", - "type": "object", - "required": ["key", "token", "start_date"], - "additionalProperties": true, - "properties": { - "key": { - "type": "string", - "title": "API key", - "description": "Trello API key. See the docs for instructions on how to generate it.", - "airbyte_secret": true, - "order": 0 - }, - "token": { - "type": "string", - "title": "API token", - "description": "Trello API token. See the docs for instructions on how to generate it.", - "airbyte_secret": true, - "order": 1 - }, - "start_date": { - "type": "string", - "title": "Start Date", - "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}Z$", - "description": "UTC date and time in the format 2017-01-25T00:00:00Z. Any data before this date will not be replicated.", - "examples": ["2021-03-01T00:00:00Z"], - "format": "date-time", - "order": 2 - }, - "board_ids": { - "type": "array", - "items": { - "type": "string", - "pattern": "^[0-9a-fA-F]{24}$" - }, - "title": "Trello Board IDs", - "description": "IDs of the boards to replicate data from. If left empty, data from all boards to which you have access will be replicated.", - "order": 3 - } - } - }, - "advanced_auth": { - "auth_flow_type": "oauth2.0", - "oauth_config_specification": { - "complete_oauth_output_specification": { - "type": "object", - "additionalProperties": false, - "properties": { - "token": { - "type": "string", - "path_in_connector_config": ["token"] - }, - "key": { - "type": "string", - "path_in_connector_config": ["key"] - } - } - }, - "complete_oauth_server_input_specification": { - "type": "object", - "additionalProperties": false, - "properties": { - "client_id": { - "type": "string" - }, - "client_secret": { - "type": "string" - } - } - } - } - } -} diff --git a/airbyte-integrations/connectors/source-trello/source_trello/utils.py b/airbyte-integrations/connectors/source-trello/source_trello/utils.py deleted file mode 100644 index 9e3545574baf..000000000000 --- a/airbyte-integrations/connectors/source-trello/source_trello/utils.py +++ /dev/null @@ -1,102 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - - -from functools import wraps -from time import sleep - -import requests -from airbyte_cdk import AirbyteLogger -from airbyte_cdk.models import SyncMode -from airbyte_cdk.sources.streams import Stream - - -class TrelloRequestRateLimits: - @staticmethod - def balance_rate_limit(threshold: float = 0.5, rate_limits_headers=None): - """ - To avoid reaching Trello API Rate Limits, use the rate limits header value, - to determine the current rate limits and load and handle sleep time based on load %. - Recommended sleep time between each request is 9 sec. - Header example: - { - x-rate-limit-api-token-interval-ms: 10000 - x-rate-limit-api-token-max: 100 - x-rate-limit-api-token-remaining: 80 - x-rate-limit-api-key-interval-ms: 10000 - x-rate-limit-api-key-max: 300 - x-rate-limit-api-key-remaining: 100 - } - More information: https://developer.atlassian.com/cloud/trello/guides/rest-api/rate-limits/ - """ - - # Define standard timings in seconds - if rate_limits_headers is None: - rate_limits_headers = [ - ("x-rate-limit-api-key-remaining", "x-rate-limit-api-key-max"), - ("x-rate-limit-api-token-remaining", "x-rate-limit-api-token-max"), - ] - - sleep_on_high_load: float = 9.0 - - def decorator(func): - @wraps(func) - def wrapper_balance_rate_limit(*args, **kwargs): - sleep_time = 0 - free_load = float("inf") - # find the Response inside args list - for arg in args: - response = arg if type(arg) is requests.models.Response else None - - # Get the rate_limits from response - rate_limits = ( - [ - (response.headers.get(rate_remaining_limit_header), response.headers.get(rate_max_limit_header)) - for rate_remaining_limit_header, rate_max_limit_header in rate_limits_headers - ] - if response - else None - ) - - # define current load from rate_limits - if rate_limits: - for current_rate, max_rate_limit in rate_limits: - free_load = min(free_load, int(current_rate) / int(max_rate_limit)) - - # define sleep time based on load conditions - if free_load <= threshold: - sleep_time = sleep_on_high_load - - # sleep based on load conditions - sleep(sleep_time) - AirbyteLogger().info(f"Sleep {sleep_time} seconds based on load conditions.") - - return func(*args, **kwargs) - - return wrapper_balance_rate_limit - - return decorator - - -def read_full_refresh(stream_instance: Stream): - slices = stream_instance.stream_slices(sync_mode=SyncMode.full_refresh) - for _slice in slices: - records = stream_instance.read_records(stream_slice=_slice, sync_mode=SyncMode.full_refresh) - for record in records: - yield record - - -def read_all_boards(stream_boards: Stream, stream_organizations: Stream): - board_ids = set() - - for record in read_full_refresh(stream_boards): - if record["id"] not in board_ids: - board_ids.add(record["id"]) - yield record["id"] - - for record in read_full_refresh(stream_organizations): - for board_id in record["idBoards"]: - if board_id not in board_ids: - board_ids.add(board_id) - yield board_id diff --git a/airbyte-integrations/connectors/source-trello/unit_tests/__init__.py b/airbyte-integrations/connectors/source-trello/unit_tests/__init__.py index 9db886e0930f..3f8e5f92f4c7 100644 --- a/airbyte-integrations/connectors/source-trello/unit_tests/__init__.py +++ b/airbyte-integrations/connectors/source-trello/unit_tests/__init__.py @@ -1,7 +1,7 @@ # # MIT License # -# Copyright (c) 2020 Airbyte +# Copyright (c) 2023 Airbyte # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal diff --git a/airbyte-integrations/connectors/source-trello/unit_tests/conftest.py b/airbyte-integrations/connectors/source-trello/unit_tests/conftest.py deleted file mode 100644 index 92c382d52cf8..000000000000 --- a/airbyte-integrations/connectors/source-trello/unit_tests/conftest.py +++ /dev/null @@ -1,11 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -from airbyte_cdk.sources.streams.http.auth import NoAuth -from pytest import fixture - - -@fixture -def config(): - return {"start_date": "start_date", "authenticator": NoAuth} diff --git a/airbyte-integrations/connectors/source-trello/unit_tests/helpers.py b/airbyte-integrations/connectors/source-trello/unit_tests/helpers.py deleted file mode 100644 index e1989be16e65..000000000000 --- a/airbyte-integrations/connectors/source-trello/unit_tests/helpers.py +++ /dev/null @@ -1,11 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - - -NO_SLEEP_HEADERS = { - "x-rate-limit-api-token-max": "1", - "x-rate-limit-api-token-remaining": "1", - "x-rate-limit-api-key-max": "1", - "x-rate-limit-api-key-remaining": "1", -} diff --git a/airbyte-integrations/connectors/source-trello/unit_tests/test_control_rate_limit.py b/airbyte-integrations/connectors/source-trello/unit_tests/test_control_rate_limit.py deleted file mode 100644 index 0bf094625d0c..000000000000 --- a/airbyte-integrations/connectors/source-trello/unit_tests/test_control_rate_limit.py +++ /dev/null @@ -1,89 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -from functools import wraps - -import requests - -# Define standard timings in seconds -SLEEP_ON_HIGH_LOAD: float = 9.0 - -TEST_DATA_FIELD = "some_data_field" -TEST_RATE_LIMIT_THRESHOLD = 0.1 -TEST_HEADERS_NAME = [ - ("x-rate-limit-api-key-remaining", "x-rate-limit-api-key-max"), - ("x-rate-limit-api-token-remaining", "x-rate-limit-api-token-max"), -] - - -def control_request_rate_limit_decorator(threshold: float = 0.05, limit_headers=None): - """ - This decorator was replicated completely, as separeted function in order to be tested. - The only difference is: - :: the real one inside utils.py sleeps the actual defined time and returns the function back, - :: and this fake one simply sleeps and returns the wait_time as actual sleep time in order to be tested. - """ - - def decorator(func): - @wraps(func) - def wrapper_control_request_rate_limit(*args, **kwargs): - sleep_time = 0 - free_load = float("inf") - # find the Response inside args list - for arg in args: - response = arg if type(arg) is requests.models.Response else None - - # Get the rate_limits from response - rate_limits = ( - [ - (response.headers.get(rate_remaining_limit_header), response.headers.get(rate_max_limit_header)) - for rate_remaining_limit_header, rate_max_limit_header in limit_headers - ] - if response - else None - ) - - # define current load from rate_limits - if rate_limits: - for current_rate, max_rate_limit in rate_limits: - free_load = min(free_load, int(current_rate) / int(max_rate_limit)) - - # define sleep time based on load conditions - if free_load <= threshold: - sleep_time = SLEEP_ON_HIGH_LOAD - - # for this test RETURN sleep_time based on load conditions - return sleep_time - - return wrapper_control_request_rate_limit - - return decorator - - -# Simulating real function call based CDK's parse_response() method -@control_request_rate_limit_decorator(TEST_RATE_LIMIT_THRESHOLD, TEST_HEADERS_NAME) -def fake_parse_response(response: requests.Response, **kwargs): - json_response = response.json() - records = json_response.get(TEST_DATA_FIELD, []) if TEST_DATA_FIELD is not None else json_response - yield from records - - -def test_with_load(requests_mock): - """ - Test simulates high load of rate limit. - In this case we should wait at least 9 sec before next API call. - """ - test_response_header = { - "x-rate-limit-api-token-max": "300", - "x-rate-limit-api-token-remaining": "10", - "x-rate-limit-api-key-max": "300", - "x-rate-limit-api-key-remaining": "100", - } - - requests_mock.get("https://test.trello.com/", headers=test_response_header) - test_response = requests.get("https://test.trello.com/") - - actual_sleep_time = fake_parse_response(test_response) - - assert SLEEP_ON_HIGH_LOAD == actual_sleep_time diff --git a/airbyte-integrations/connectors/source-trello/unit_tests/test_incremental_streams.py b/airbyte-integrations/connectors/source-trello/unit_tests/test_incremental_streams.py deleted file mode 100644 index b598330cf496..000000000000 --- a/airbyte-integrations/connectors/source-trello/unit_tests/test_incremental_streams.py +++ /dev/null @@ -1,62 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - - -from airbyte_cdk.models import SyncMode -from pytest import fixture -from source_trello.source import IncrementalTrelloStream - - -@fixture -def patch_incremental_base_class(mocker): - # Mock abstract methods to enable instantiating abstract class - mocker.patch.object(IncrementalTrelloStream, "path", "v0/example_endpoint") - mocker.patch.object(IncrementalTrelloStream, "primary_key", "test_primary_key") - mocker.patch.object(IncrementalTrelloStream, "__abstractmethods__", set()) - - -def test_cursor_field(patch_incremental_base_class, config): - stream = IncrementalTrelloStream(config) - expected_cursor_field = "date" - assert stream.cursor_field == expected_cursor_field - - -def test_get_updated_state(patch_incremental_base_class, config): - stream = IncrementalTrelloStream(config) - expected_cursor_field = "date" - inputs = { - "current_stream_state": {"611aa0ef37acd675af67dc9b": {expected_cursor_field: "2021-07-12T10:44:09+00:00"}}, - "latest_record": {"data": {"board": {"id": "611aa0ef37acd675af67dc9b"}}, expected_cursor_field: "2021-07-15T10:44:09+00:00"}, - } - expected_state = {"611aa0ef37acd675af67dc9b": {expected_cursor_field: "2021-07-15T10:44:09+00:00"}} - assert stream.get_updated_state(**inputs) == expected_state - - -def test_stream_slices(patch_incremental_base_class, config): - stream = IncrementalTrelloStream(config) - expected_cursor_field = "date" - inputs = { - "sync_mode": SyncMode.incremental, - "cursor_field": expected_cursor_field, - "stream_state": {expected_cursor_field: "2021-07-15T10:44:09+00:00"}, - } - expected_stream_slice = [None] - assert stream.stream_slices(**inputs) == expected_stream_slice - - -def test_supports_incremental(patch_incremental_base_class, mocker, config): - mocker.patch.object(IncrementalTrelloStream, "cursor_field", "dummy_field") - stream = IncrementalTrelloStream(config) - assert stream.supports_incremental - - -def test_source_defined_cursor(patch_incremental_base_class, config): - stream = IncrementalTrelloStream(config) - assert stream.source_defined_cursor - - -def test_stream_checkpoint_interval(patch_incremental_base_class, config): - stream = IncrementalTrelloStream(config) - expected_checkpoint_interval = None - assert stream.state_checkpoint_interval == expected_checkpoint_interval diff --git a/airbyte-integrations/connectors/source-trello/unit_tests/test_order_ids_partition_router.py b/airbyte-integrations/connectors/source-trello/unit_tests/test_order_ids_partition_router.py new file mode 100644 index 000000000000..bea02ae4008a --- /dev/null +++ b/airbyte-integrations/connectors/source-trello/unit_tests/test_order_ids_partition_router.py @@ -0,0 +1,61 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + + +import pytest +from airbyte_cdk.sources.streams.core import Stream +from source_trello.components import OrderIdsPartitionRouter + + +class MockStream(Stream): + def __init__(self, records): + self.records = records + + def primary_key(self): + return + + def read_records(self, sync_mode): + return self.records + + +# test cases as a list of tuples (boards_records, organizations_records, expected_board_ids) +test_cases = [ + ( + # test same ids in both boards and organizations + [{"id": "b11111111111111111111111", "name": "board_1"}, {"id": "b22222222222222222222222", "name": "board_2"}], + [{"id": "org111111111111111111111", "idBoards": ["b11111111111111111111111", "b22222222222222222222222"]}], + ["b11111111111111111111111", "b22222222222222222222222"] + ), + ( + # test one different id in organizations + [{"id": "b11111111111111111111111", "name": "board_1"}, {"id": "b22222222222222222222222", "name": "board_2"}], + [{"id": "org111111111111111111111", "idBoards": ["b11111111111111111111111", "b33333333333333333333333"]}], + ["b11111111111111111111111", "b22222222222222222222222", "b33333333333333333333333"] + ), + ( + # test different ids in multiple boards and organizations + [{"id": "b11111111111111111111111", "name": "board_1"}, {"id": "b22222222222222222222222", "name": "board_2"}], + [{"id": "org111111111111111111111", "idBoards": ["b11111111111111111111111", "b33333333333333333333333"]}, + {"id": "org222222222222222222222", "idBoards": ["b00000000000000000000000", "b44444444444444444444444"]}], + ["b11111111111111111111111", "b22222222222222222222222", "b33333333333333333333333", "b00000000000000000000000", "b44444444444444444444444"] + ), + ( + # test empty boards and organizations + [], + [], + [] + ) +] + + +@pytest.mark.parametrize("boards_records, organizations_records, expected_board_ids", test_cases) +def test_read_all_boards(boards_records, organizations_records, expected_board_ids): + # Set up mock streams with provided records + partition_router = OrderIdsPartitionRouter(parent_stream_configs=[None], config=None, parameters=None) + boards_stream = MockStream(records=boards_records) + organizations_stream = MockStream(records=organizations_records) + + # Call the function and check the result + board_ids = list(partition_router.read_all_boards(boards_stream, organizations_stream)) + assert board_ids == expected_board_ids diff --git a/airbyte-integrations/connectors/source-trello/unit_tests/test_source.py b/airbyte-integrations/connectors/source-trello/unit_tests/test_source.py deleted file mode 100644 index c86f790ba865..000000000000 --- a/airbyte-integrations/connectors/source-trello/unit_tests/test_source.py +++ /dev/null @@ -1,51 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -from unittest.mock import MagicMock - -from source_trello.source import SourceTrello - -from .helpers import NO_SLEEP_HEADERS - - -def test_streams(mocker): - source = SourceTrello() - config_mock = MagicMock() - streams = source.streams(config_mock) - expected_streams_number = 7 - assert len(streams) == expected_streams_number - - -def test_check_connection(requests_mock): - config = { - "start_date": "2020-01-01T00:00:00Z", - "key": "key", - "token": "token", - } - - logger = MagicMock() - - requests_mock.get( - "https://api.trello.com/1/members/me/boards", - headers=NO_SLEEP_HEADERS, - json=[ - {"id": "b11111111111111111111111", "name": "board_1"}, - {"id": "b22222222222222222222222", "name": "board_2"} - ], - ) - - requests_mock.get( - "https://api.trello.com/1/members/me/organizations", - headers=NO_SLEEP_HEADERS, - json=[{"id": "org111111111111111111111", "idBoards": ["b11111111111111111111111", "b22222222222222222222222"]}], - ) - - source = SourceTrello() - status, error = source.check_connection(logger, config) - assert status is True - assert error is None - config["board_ids"] = ["b11111111111111111111111", "b33333333333333333333333", "b44444444444444444444444"] - status, error = source.check_connection(logger, config) - assert status is False - assert error == 'Board ID(s): b33333333333333333333333, b44444444444444444444444 not found' diff --git a/airbyte-integrations/connectors/source-trello/unit_tests/test_streams.py b/airbyte-integrations/connectors/source-trello/unit_tests/test_streams.py deleted file mode 100644 index 9254e616ec06..000000000000 --- a/airbyte-integrations/connectors/source-trello/unit_tests/test_streams.py +++ /dev/null @@ -1,118 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - - -from itertools import cycle -from unittest.mock import MagicMock - -from airbyte_cdk.sources.streams.http.auth.core import NoAuth -from pytest import fixture -from source_trello.source import Boards, Cards, TrelloStream -from source_trello.utils import read_full_refresh - -from .helpers import NO_SLEEP_HEADERS - - -@fixture -def patch_base_class(mocker): - # Mock abstract methods to enable instantiating abstract class - mocker.patch.object(TrelloStream, "path", "v0/example_endpoint") - mocker.patch.object(TrelloStream, "primary_key", "test_primary_key") - mocker.patch.object(TrelloStream, "__abstractmethods__", set()) - - -def test_request_params(patch_base_class, config): - stream = TrelloStream(config) - inputs = {"stream_slice": None, "stream_state": None, "next_page_token": {"before": "id"}} - expected_params = {"limit": None, "since": "start_date", "before": "id"} - assert stream.request_params(**inputs) == expected_params - - -def test_next_page_token(patch_base_class, config): - stream = TrelloStream(config) - inputs = {"response": MagicMock()} - expected_token = None - assert stream.next_page_token(**inputs) == expected_token - - -def test_boards_stream(requests_mock): - mock_boards_request = requests_mock.get( - "https://api.trello.com/1/members/me/boards", - headers=NO_SLEEP_HEADERS, - json=[{"id": "b11111111111111111111111", "name": "board_1"}, {"id": "b22222222222222222222222", "name": "board_2"}], - ) - - config = {"authenticator": NoAuth(), "start_date": "2021-02-11T08:35:49.540Z"} - stream1 = Boards(config=config) - records = list(read_full_refresh(stream1)) - assert records == [{"id": "b11111111111111111111111", "name": "board_1"}, {"id": "b22222222222222222222222", "name": "board_2"}] - - stream2 = Boards(config={**config, "board_ids": ["b22222222222222222222222"]}) - records = list(read_full_refresh(stream2)) - assert records == [{"id": "b22222222222222222222222", "name": "board_2"}] - - stream3 = Boards(config={**config, "board_ids": ["not-found"]}) - records = list(read_full_refresh(stream3)) - assert records == [] - - assert mock_boards_request.call_count == 3 - - -def test_cards_stream(requests_mock): - mock_boards_request = requests_mock.get( - "https://api.trello.com/1/members/me/boards", - headers=NO_SLEEP_HEADERS, - json=[{"id": "b11111111111111111111111", "name": "board_1"}, {"id": "b22222222222222222222222", "name": "board_2"}], - ) - - mock_organizations_request = requests_mock.get( - "https://api.trello.com/1/members/me/organizations", - headers=NO_SLEEP_HEADERS, - json=[{"id": "org111111111111111111111", "idBoards": ["b11111111111111111111111", "b22222222222222222222222"]}], - ) - - json_responses1 = cycle([ - [{"id": "c11111111111111111111111", "name": "card_1"}, {"id": "c22222222222222222222222", "name": "card_2"}], - [], - ]) - - mock_cards_request_1 = requests_mock.get( - "https://api.trello.com/1/boards/b11111111111111111111111/cards/all", - headers=NO_SLEEP_HEADERS, - json=lambda request, context: next(json_responses1), - ) - - json_responses2 = cycle([ - [{"id": "c33333333333333333333333", "name": "card_3"}, {"id": "c44444444444444444444444", "name": "card_4"}], - [], - ]) - - mock_cards_request_2 = requests_mock.get( - "https://api.trello.com/1/boards/b22222222222222222222222/cards/all", - headers=NO_SLEEP_HEADERS, - json=lambda request, context: next(json_responses2), - ) - - config = {"authenticator": NoAuth(), "start_date": "2021-02-11T08:35:49.540Z"} - stream1 = Cards(config=config) - records = list(read_full_refresh(stream1)) - assert records == [ - {"id": "c11111111111111111111111", "name": "card_1"}, - {"id": "c22222222222222222222222", "name": "card_2"}, - {"id": "c33333333333333333333333", "name": "card_3"}, - {"id": "c44444444444444444444444", "name": "card_4"}, - ] - - stream2 = Cards(config={**config, "board_ids": ["b22222222222222222222222"]}) - records = list(read_full_refresh(stream2)) - assert records == [{"id": "c33333333333333333333333", "name": "card_3"}, {"id": "c44444444444444444444444", "name": "card_4"}] - - stream3 = Cards(config={**config, "board_ids": ["not-found"]}) - records = list(read_full_refresh(stream3)) - assert records == [] - - assert mock_boards_request.call_count == 3 - assert mock_organizations_request.call_count == 3 - assert mock_cards_request_1.call_count == 2 - assert mock_cards_request_2.call_count == 4 diff --git a/airbyte-integrations/connectors/source-trustpilot/acceptance-test-config.yml b/airbyte-integrations/connectors/source-trustpilot/acceptance-test-config.yml index 9041b42c7b1b..6ee6dc17190a 100644 --- a/airbyte-integrations/connectors/source-trustpilot/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-trustpilot/acceptance-test-config.yml @@ -19,12 +19,10 @@ acceptance_tests: - config_path: "secrets/config.json" configured_catalog_path: "integration_tests/configured_catalog.json" empty_streams: [] - incremental: + incremental: tests: - config_path: "secrets/config.json" configured_catalog_path: "integration_tests/configured_catalog.json" - cursor_paths: - private_reviews: ["5f5e954ec15b2700017c834f_createdAt"] future_state: future_state_path: "integration_tests/abnormal_state.json" full_refresh: diff --git a/airbyte-integrations/connectors/source-twilio/acceptance-test-config.yml b/airbyte-integrations/connectors/source-twilio/acceptance-test-config.yml index 9c1849dc0b9a..adbf72dc66c2 100644 --- a/airbyte-integrations/connectors/source-twilio/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-twilio/acceptance-test-config.yml @@ -63,7 +63,6 @@ acceptance_tests: configured_catalog_path: "integration_tests/incremental_catalog.json" future_state: future_state_path: "integration_tests/abnormal_state.json" - threshold_days: 30 timeout_seconds: 3600 full_refresh: tests: diff --git a/airbyte-integrations/connectors/source-twilio/integration_tests/expected_records.jsonl b/airbyte-integrations/connectors/source-twilio/integration_tests/expected_records.jsonl index 330566a9ea1a..c099ad1e1650 100644 --- a/airbyte-integrations/connectors/source-twilio/integration_tests/expected_records.jsonl +++ b/airbyte-integrations/connectors/source-twilio/integration_tests/expected_records.jsonl @@ -7,9 +7,9 @@ {"stream": "available_phone_number_countries", "data": {"country_code": "AU", "country": "Australia", "uri": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/AvailablePhoneNumbers/AU.json", "beta": false, "subresource_uris": {"local": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/AvailablePhoneNumbers/AU/Local.json", "toll_free": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/AvailablePhoneNumbers/AU/TollFree.json", "mobile": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/AvailablePhoneNumbers/AU/Mobile.json"}}, "emitted_at": 1691419684730} {"stream": "available_phone_number_countries", "data": {"country_code": "BE", "country": "Belgium", "uri": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/AvailablePhoneNumbers/BE.json", "beta": false, "subresource_uris": {"toll_free": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/AvailablePhoneNumbers/BE/TollFree.json"}}, "emitted_at": 1691419684732} {"stream": "available_phone_number_countries", "data": {"country_code": "SE", "country": "Sweden", "uri": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/AvailablePhoneNumbers/SE.json", "beta": false, "subresource_uris": {"mobile": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/AvailablePhoneNumbers/SE/Mobile.json"}}, "emitted_at": 1691419684732} -{"stream": "calls", "data": {"date_updated": "2022-07-13T19:44:06Z", "price_unit": "USD", "parent_call_sid": null, "caller_name": null, "duration": 62, "from": "+13392299964", "to": "+12056561170", "annotation": null, "answered_by": null, "sid": "CA0bc0fdb5783917659002fe37ba581e11", "queue_time": 0, "price": -0.017, "api_version": "2010-04-01", "status": "completed", "direction": "inbound", "start_time": "2022-07-13T19:43:04Z", "date_created": "2022-07-13T19:43:04Z", "from_formatted": "(339) 229-9964", "group_sid": null, "trunk_sid": "", "forwarded_from": "+12056561170", "uri": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA0bc0fdb5783917659002fe37ba581e11.json", "account_sid": "ACdade166c12e160e9ed0a6088226718fb", "end_time": "2022-07-13T19:44:06Z", "to_formatted": "(205) 656-1170", "phone_number_sid": "PNe40bd7f3ac343b32fd51275d2d5b3dcc", "subresource_uris": {"feedback": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA0bc0fdb5783917659002fe37ba581e11/Feedback.json", "user_defined_messages": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA0bc0fdb5783917659002fe37ba581e11/UserDefinedMessages.json", "notifications": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA0bc0fdb5783917659002fe37ba581e11/Notifications.json", "recordings": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA0bc0fdb5783917659002fe37ba581e11/Recordings.json", "streams": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA0bc0fdb5783917659002fe37ba581e11/Streams.json", "payments": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA0bc0fdb5783917659002fe37ba581e11/Payments.json", "user_defined_message_subscriptions": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA0bc0fdb5783917659002fe37ba581e11/UserDefinedMessageSubscriptions.json", "siprec": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA0bc0fdb5783917659002fe37ba581e11/Siprec.json", "events": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA0bc0fdb5783917659002fe37ba581e11/Events.json", "feedback_summaries": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/FeedbackSummary.json"}}, "emitted_at": 1691419833550} -{"stream": "calls", "data": {"date_updated": "2022-07-19T20:11:13Z", "price_unit": "USD", "parent_call_sid": null, "caller_name": null, "duration": 12, "from": "+16613444179", "to": "+12056561170", "annotation": null, "answered_by": null, "sid": "CA22893fba469912ccdf127472f69b301d", "queue_time": 0, "price": -0.0085, "api_version": "2010-04-01", "status": "completed", "direction": "inbound", "start_time": "2022-07-19T20:11:01Z", "date_created": "2022-07-19T20:11:01Z", "from_formatted": "(661) 344-4179", "group_sid": null, "trunk_sid": "", "forwarded_from": "+12056561170", "uri": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA22893fba469912ccdf127472f69b301d.json", "account_sid": "ACdade166c12e160e9ed0a6088226718fb", "end_time": "2022-07-19T20:11:13Z", "to_formatted": "(205) 656-1170", "phone_number_sid": "PNe40bd7f3ac343b32fd51275d2d5b3dcc", "subresource_uris": {"feedback": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA22893fba469912ccdf127472f69b301d/Feedback.json", "user_defined_messages": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA22893fba469912ccdf127472f69b301d/UserDefinedMessages.json", "notifications": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA22893fba469912ccdf127472f69b301d/Notifications.json", "recordings": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA22893fba469912ccdf127472f69b301d/Recordings.json", "streams": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA22893fba469912ccdf127472f69b301d/Streams.json", "payments": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA22893fba469912ccdf127472f69b301d/Payments.json", "user_defined_message_subscriptions": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA22893fba469912ccdf127472f69b301d/UserDefinedMessageSubscriptions.json", "siprec": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA22893fba469912ccdf127472f69b301d/Siprec.json", "events": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA22893fba469912ccdf127472f69b301d/Events.json", "feedback_summaries": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/FeedbackSummary.json"}}, "emitted_at": 1691419833553} -{"stream": "calls", "data": {"date_updated": "2022-07-20T18:24:12Z", "price_unit": "USD", "parent_call_sid": null, "caller_name": null, "duration": 11, "from": "+16613444179", "to": "+12056561170", "annotation": null, "answered_by": null, "sid": "CAcf07b73a4f6c8e50942ca59b7d0468e9", "queue_time": 0, "price": -0.0085, "api_version": "2010-04-01", "status": "completed", "direction": "inbound", "start_time": "2022-07-20T18:24:01Z", "date_created": "2022-07-20T18:24:01Z", "from_formatted": "(661) 344-4179", "group_sid": null, "trunk_sid": "", "forwarded_from": "+12056561170", "uri": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CAcf07b73a4f6c8e50942ca59b7d0468e9.json", "account_sid": "ACdade166c12e160e9ed0a6088226718fb", "end_time": "2022-07-20T18:24:12Z", "to_formatted": "(205) 656-1170", "phone_number_sid": "PNe40bd7f3ac343b32fd51275d2d5b3dcc", "subresource_uris": {"feedback": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CAcf07b73a4f6c8e50942ca59b7d0468e9/Feedback.json", "user_defined_messages": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CAcf07b73a4f6c8e50942ca59b7d0468e9/UserDefinedMessages.json", "notifications": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CAcf07b73a4f6c8e50942ca59b7d0468e9/Notifications.json", "recordings": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CAcf07b73a4f6c8e50942ca59b7d0468e9/Recordings.json", "streams": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CAcf07b73a4f6c8e50942ca59b7d0468e9/Streams.json", "payments": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CAcf07b73a4f6c8e50942ca59b7d0468e9/Payments.json", "user_defined_message_subscriptions": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CAcf07b73a4f6c8e50942ca59b7d0468e9/UserDefinedMessageSubscriptions.json", "siprec": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CAcf07b73a4f6c8e50942ca59b7d0468e9/Siprec.json", "events": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CAcf07b73a4f6c8e50942ca59b7d0468e9/Events.json", "feedback_summaries": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/FeedbackSummary.json"}}, "emitted_at": 1691419833554} +{"stream": "calls", "data": {"date_updated": "2022-08-20T16:59:45Z", "price_unit": "USD", "parent_call_sid": null, "caller_name": null, "duration": 61, "from": "+17179858033", "to": "+12056561170", "annotation": null, "answered_by": null, "sid": "CAccdb30ed5e4061cd630f7ce416f48e43", "queue_time": 0, "price": -0.017, "api_version": "2010-04-01", "status": "completed", "direction": "inbound", "start_time": "2022-08-20T16:58:44Z", "date_created": "2022-08-20T16:58:44Z", "from_formatted": "(717) 985-8033", "group_sid": null, "trunk_sid": "", "forwarded_from": "+12056561170", "uri": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CAccdb30ed5e4061cd630f7ce416f48e43.json", "account_sid": "ACdade166c12e160e9ed0a6088226718fb", "end_time": "2022-08-20T16:59:45Z", "to_formatted": "(205) 656-1170", "phone_number_sid": "PNe40bd7f3ac343b32fd51275d2d5b3dcc", "subresource_uris": {"feedback": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CAccdb30ed5e4061cd630f7ce416f48e43/Feedback.json", "user_defined_messages": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CAccdb30ed5e4061cd630f7ce416f48e43/UserDefinedMessages.json", "notifications": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CAccdb30ed5e4061cd630f7ce416f48e43/Notifications.json", "recordings": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CAccdb30ed5e4061cd630f7ce416f48e43/Recordings.json", "streams": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CAccdb30ed5e4061cd630f7ce416f48e43/Streams.json", "payments": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CAccdb30ed5e4061cd630f7ce416f48e43/Payments.json", "user_defined_message_subscriptions": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CAccdb30ed5e4061cd630f7ce416f48e43/UserDefinedMessageSubscriptions.json", "siprec": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CAccdb30ed5e4061cd630f7ce416f48e43/Siprec.json", "events": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CAccdb30ed5e4061cd630f7ce416f48e43/Events.json", "feedback_summaries": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/FeedbackSummary.json"}}, "emitted_at": 1694639568884} +{"stream": "calls", "data": {"date_updated": "2022-08-30T19:09:35Z", "price_unit": "USD", "parent_call_sid": null, "caller_name": null, "duration": 4, "from": "+441728448673", "to": "+12056561170", "annotation": null, "answered_by": null, "sid": "CA6fc4413cab9421a73aa5132002602067", "queue_time": 0, "price": -0.0085, "api_version": "2010-04-01", "status": "completed", "direction": "inbound", "start_time": "2022-08-30T19:09:31Z", "date_created": "2022-08-30T19:09:31Z", "from_formatted": "+441728448673", "group_sid": null, "trunk_sid": "", "forwarded_from": "+12056561170", "uri": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA6fc4413cab9421a73aa5132002602067.json", "account_sid": "ACdade166c12e160e9ed0a6088226718fb", "end_time": "2022-08-30T19:09:35Z", "to_formatted": "(205) 656-1170", "phone_number_sid": "PNe40bd7f3ac343b32fd51275d2d5b3dcc", "subresource_uris": {"feedback": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA6fc4413cab9421a73aa5132002602067/Feedback.json", "user_defined_messages": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA6fc4413cab9421a73aa5132002602067/UserDefinedMessages.json", "notifications": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA6fc4413cab9421a73aa5132002602067/Notifications.json", "recordings": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA6fc4413cab9421a73aa5132002602067/Recordings.json", "streams": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA6fc4413cab9421a73aa5132002602067/Streams.json", "payments": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA6fc4413cab9421a73aa5132002602067/Payments.json", "user_defined_message_subscriptions": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA6fc4413cab9421a73aa5132002602067/UserDefinedMessageSubscriptions.json", "siprec": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA6fc4413cab9421a73aa5132002602067/Siprec.json", "events": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA6fc4413cab9421a73aa5132002602067/Events.json", "feedback_summaries": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/FeedbackSummary.json"}}, "emitted_at": 1694639568886} +{"stream": "calls", "data": {"date_updated": "2022-09-06T14:31:59Z", "price_unit": "USD", "parent_call_sid": null, "caller_name": null, "duration": 22, "from": "+12094410996", "to": "+12056561170", "annotation": null, "answered_by": null, "sid": "CA208a00b1876f3ebc57127ec25ea3faec", "queue_time": 0, "price": -0.0085, "api_version": "2010-04-01", "status": "completed", "direction": "inbound", "start_time": "2022-09-06T14:31:37Z", "date_created": "2022-09-06T14:31:37Z", "from_formatted": "(209) 441-0996", "group_sid": null, "trunk_sid": "", "forwarded_from": "+12056561170", "uri": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA208a00b1876f3ebc57127ec25ea3faec.json", "account_sid": "ACdade166c12e160e9ed0a6088226718fb", "end_time": "2022-09-06T14:31:59Z", "to_formatted": "(205) 656-1170", "phone_number_sid": "PNe40bd7f3ac343b32fd51275d2d5b3dcc", "subresource_uris": {"feedback": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA208a00b1876f3ebc57127ec25ea3faec/Feedback.json", "user_defined_messages": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA208a00b1876f3ebc57127ec25ea3faec/UserDefinedMessages.json", "notifications": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA208a00b1876f3ebc57127ec25ea3faec/Notifications.json", "recordings": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA208a00b1876f3ebc57127ec25ea3faec/Recordings.json", "streams": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA208a00b1876f3ebc57127ec25ea3faec/Streams.json", "payments": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA208a00b1876f3ebc57127ec25ea3faec/Payments.json", "user_defined_message_subscriptions": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA208a00b1876f3ebc57127ec25ea3faec/UserDefinedMessageSubscriptions.json", "siprec": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA208a00b1876f3ebc57127ec25ea3faec/Siprec.json", "events": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/CA208a00b1876f3ebc57127ec25ea3faec/Events.json", "feedback_summaries": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Calls/FeedbackSummary.json"}}, "emitted_at": 1694639568887} {"stream": "conferences", "data": {"status": "completed", "reason_conference_ended": "last-participant-left", "date_updated": "2022-09-23T14:44:41Z", "region": "us1", "friendly_name": "test_conference", "uri": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Conferences/CFca0fa08200f55a6d60779d18b644a675.json", "account_sid": "ACdade166c12e160e9ed0a6088226718fb", "call_sid_ending_conference": "CA8858f240bdccfb3393def1682c2dbdf0", "sid": "CFca0fa08200f55a6d60779d18b644a675", "date_created": "2022-09-23T14:44:11Z", "api_version": "2010-04-01", "subresource_uris": {"participants": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Conferences/CFca0fa08200f55a6d60779d18b644a675/Participants.json", "recordings": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Conferences/CFca0fa08200f55a6d60779d18b644a675/Recordings.json"}}, "emitted_at": 1691419855153} {"stream": "conferences", "data": {"status": "completed", "reason_conference_ended": "last-participant-left", "date_updated": "2023-02-15T14:49:37Z", "region": "us1", "friendly_name": "Conference2", "uri": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Conferences/CF15e8707d15e02c1af88809b159ff8b42.json", "account_sid": "ACdade166c12e160e9ed0a6088226718fb", "call_sid_ending_conference": "CA04ae9210566d36c425bae2087736f6ac", "sid": "CF15e8707d15e02c1af88809b159ff8b42", "date_created": "2023-02-15T14:49:21Z", "api_version": "2010-04-01", "subresource_uris": {"participants": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Conferences/CF15e8707d15e02c1af88809b159ff8b42/Participants.json", "recordings": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Conferences/CF15e8707d15e02c1af88809b159ff8b42/Recordings.json"}}, "emitted_at": 1691419855509} {"stream": "conferences", "data": {"status": "completed", "reason_conference_ended": "last-participant-left", "date_updated": "2023-02-16T09:57:39Z", "region": "us1", "friendly_name": "Conference2", "uri": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Conferences/CF33199d5a9a0b202b3bd9558438a052d8.json", "account_sid": "ACdade166c12e160e9ed0a6088226718fb", "call_sid_ending_conference": "CAf8464ca5eda3ab7cc3e2d86cdb3c720f", "sid": "CF33199d5a9a0b202b3bd9558438a052d8", "date_created": "2023-02-16T09:57:11Z", "api_version": "2010-04-01", "subresource_uris": {"participants": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Conferences/CF33199d5a9a0b202b3bd9558438a052d8/Participants.json", "recordings": "/2010-04-01/Accounts/ACdade166c12e160e9ed0a6088226718fb/Conferences/CF33199d5a9a0b202b3bd9558438a052d8/Recordings.json"}}, "emitted_at": 1691419855510} diff --git a/airbyte-integrations/connectors/source-twitter/metadata.yaml b/airbyte-integrations/connectors/source-twitter/metadata.yaml index 11ff23358334..b80e85f83dbf 100644 --- a/airbyte-integrations/connectors/source-twitter/metadata.yaml +++ b/airbyte-integrations/connectors/source-twitter/metadata.yaml @@ -1,4 +1,7 @@ data: + ab_internal: + ql: 300 + sl: 100 allowedHosts: hosts: - api.twitter.com @@ -7,6 +10,7 @@ data: definitionId: d7fd4f40-5e5a-4b8b-918f-a73077f8c131 dockerImageTag: 0.1.2 dockerRepository: airbyte/source-twitter + documentationUrl: https://docs.airbyte.com/integrations/sources/twitter githubIssueLabel: source-twitter icon: twitter.svg license: MIT @@ -17,12 +21,8 @@ data: oss: enabled: true releaseStage: beta - documentationUrl: https://docs.airbyte.com/integrations/sources/twitter + supportLevel: community tags: - language:low-code - language:python - ab_internal: - sl: 200 - ql: 300 - supportLevel: certified metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-typeform/.dockerignore b/airbyte-integrations/connectors/source-typeform/.dockerignore index cb57facccb8d..138d52c577c0 100644 --- a/airbyte-integrations/connectors/source-typeform/.dockerignore +++ b/airbyte-integrations/connectors/source-typeform/.dockerignore @@ -1,6 +1,5 @@ * !Dockerfile -!Dockerfile.test !main.py !source_typeform !setup.py diff --git a/airbyte-integrations/connectors/source-typeform/Dockerfile b/airbyte-integrations/connectors/source-typeform/Dockerfile index 82ab07c099d5..2b795d062c90 100644 --- a/airbyte-integrations/connectors/source-typeform/Dockerfile +++ b/airbyte-integrations/connectors/source-typeform/Dockerfile @@ -1,16 +1,38 @@ -FROM python:3.9-slim - -# Bash is installed for more convenient debugging. -RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* +FROM python:3.9.11-alpine3.15 as base +# build and load all requirements +FROM base as builder WORKDIR /airbyte/integration_code + +# upgrade pip to the latest version +RUN apk --no-cache upgrade \ + && pip install --upgrade pip \ + && apk --no-cache add tzdata build-base + + COPY setup.py ./ -RUN pip install . -COPY source_typeform ./source_typeform +# install necessary packages to a temporary folder +RUN pip install --prefix=/install . + +# build a clean environment +FROM base +WORKDIR /airbyte/integration_code + +# copy all loaded and built libraries to a pure basic image +COPY --from=builder /install /usr/local +# add default timezone settings +COPY --from=builder /usr/share/zoneinfo/Etc/UTC /etc/localtime +RUN echo "Etc/UTC" > /etc/timezone + +# bash is installed for more convenient debugging. +RUN apk --no-cache add bash + +# copy payload code only COPY main.py ./ +COPY source_typeform ./source_typeform ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=1.0.0 +LABEL io.airbyte.version=1.1.0 LABEL io.airbyte.name=airbyte/source-typeform diff --git a/airbyte-integrations/connectors/source-typeform/README.md b/airbyte-integrations/connectors/source-typeform/README.md index acbe4c6db7b3..dcfe46718b03 100644 --- a/airbyte-integrations/connectors/source-typeform/README.md +++ b/airbyte-integrations/connectors/source-typeform/README.md @@ -1,34 +1,10 @@ # Typeform Source -This is the repository for the Typeform source connector, written in Python. -For information about how to use this connector within Airbyte, see [the documentation](https://docs.airbyte.io/integrations/sources/typeform). +This is the repository for the Typeform configuration based source connector. +For information about how to use this connector within Airbyte, see [the documentation](https://docs.airbyte.com/integrations/sources/typeform). ## Local development -### Prerequisites -**To iterate on this connector, make sure to complete this prerequisites section.** - -#### Minimum Python version required `= 3.7.0` - -#### Build & Activate Virtual Environment and install dependencies -From this connector directory, create a virtual environment: -``` -python -m venv .venv -``` - -This will generate a virtualenv for this module in `.venv/`. Make sure this venv is active in your -development environment of choice. To activate it from the terminal, run: -``` -source .venv/bin/activate -pip install -r requirements.txt -``` -If you are in an IDE, follow your IDE's instructions to activate the virtualenv. - -Note that while we are installing dependencies from `requirements.txt`, you should only edit `setup.py` for your dependencies. `requirements.txt` is -used for editable installs (`pip install -e`) to pull in Python dependencies from the monorepo and will call `setup.py`. -If this is mumbo jumbo to you, don't worry about it, just put your deps in `setup.py` but install using `pip install -r requirements.txt` and everything -should work as you expect. - #### Building via Gradle You can also build the connector in Gradle. This is typically used in CI and not needed for your development workflow. @@ -38,22 +14,14 @@ To build using Gradle, from the Airbyte repository root, run: ``` #### Create credentials -**If you are a community contributor**, follow the instructions in the [documentation](https://docs.airbyte.io/integrations/sources/typeform) -to generate the necessary credentials. Then create a file `secrets/config.json` conforming to the `source_typeform/spec.json` file. +**If you are a community contributor**, follow the instructions in the [documentation](https://docs.airbyte.com/integrations/sources/typeform) +to generate the necessary credentials. Then create a file `secrets/config.json` conforming to the `source_typeform/spec.yaml` file. Note that any directory named `secrets` is gitignored across the entire Airbyte repo, so there is no danger of accidentally checking in sensitive information. See `integration_tests/sample_config.json` for a sample config file. **If you are an Airbyte core member**, copy the credentials in Lastpass under the secret name `source typeform test creds` and place them into `secrets/config.json`. -### Locally running the connector -``` -python main.py spec -python main.py check --config secrets/config.json -python main.py discover --config secrets/config.json -python main.py read --config secrets/config.json --catalog integration_tests/configured_catalog.json -``` - ### Locally running the connector docker image #### Build @@ -78,32 +46,15 @@ docker run --rm -v $(pwd)/secrets:/secrets airbyte/source-typeform:dev discover docker run --rm -v $(pwd)/secrets:/secrets -v $(pwd)/integration_tests:/integration_tests airbyte/source-typeform:dev read --config /secrets/config.json --catalog /integration_tests/configured_catalog.json ``` ## Testing -Make sure to familiarize yourself with [pytest test discovery](https://docs.pytest.org/en/latest/goodpractices.html#test-discovery) to know how your test files and methods should be named. -First install test dependencies into your virtual environment: -``` -pip install .[tests] -``` -### Unit Tests -To run unit tests locally, from the connector directory run: -``` -python -m pytest unit_tests -``` -### Integration Tests -There are two types of integration tests: Acceptance Tests (Airbyte's test suite for all source connectors) and custom integration tests (which are specific to this connector). -#### Custom Integration tests -Place custom tests inside `integration_tests/` folder, then, from the connector root, run -``` -python -m pytest integration_tests -``` #### Acceptance Tests -Customize `acceptance-test-config.yml` file to configure tests. See [Connector Acceptance Tests](https://docs.airbyte.io/connector-development/testing-connectors/connector-acceptance-tests-reference) for more information. +Customize `acceptance-test-config.yml` file to configure tests. See [Connector Acceptance Tests](https://docs.airbyte.com/connector-development/testing-connectors/connector-acceptance-tests-reference) for more information. If your connector requires to create or destroy resources for use during acceptance tests create fixtures for it and place them inside integration_tests/acceptance.py. -To run your integration tests with acceptance tests, from the connector root, run + +To run your integration tests with Docker, run: ``` -python -m pytest integration_tests -p integration_tests.acceptance +./acceptance-test-docker.sh ``` -To run your integration tests with docker ### Using gradle to run tests All commands should be run from airbyte project root. diff --git a/airbyte-integrations/connectors/source-typeform/__init__.py b/airbyte-integrations/connectors/source-typeform/__init__.py new file mode 100644 index 000000000000..c941b3045795 --- /dev/null +++ b/airbyte-integrations/connectors/source-typeform/__init__.py @@ -0,0 +1,3 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# diff --git a/airbyte-integrations/connectors/source-typeform/acceptance-test-config.yml b/airbyte-integrations/connectors/source-typeform/acceptance-test-config.yml index c8f7582adcad..ebcb571f701e 100644 --- a/airbyte-integrations/connectors/source-typeform/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-typeform/acceptance-test-config.yml @@ -1,42 +1,43 @@ +# See [Connector Acceptance Tests](https://docs.airbyte.com/connector-development/testing-connectors/connector-acceptance-tests-reference) +# for more information about how to configure these tests connector_image: airbyte/source-typeform:1.0.0 test_strictness_level: "high" acceptance_tests: spec: tests: - - spec_path: "source_typeform/spec.json" - backward_compatibility_tests_config: - disable_for_version: "0.3.0" + - spec_path: "source_typeform/spec.yaml" + backward_compatibility_tests_config: + disable_for_version: "0.3.0" connection: tests: - - config_path: "secrets/config.json" - status: "succeed" - - config_path: "secrets/config_oauth.json" - status: "succeed" - - config_path: "integration_tests/invalid_config.json" - status: "failed" + - config_path: "secrets/config.json" + status: "succeed" + - config_path: "secrets/config_oauth.json" + status: "succeed" + - config_path: "integration_tests/invalid_config.json" + status: "failed" discovery: tests: - - config_path: "secrets/config.json" - backward_compatibility_tests_config: - disable_for_version: "0.3.0" + - config_path: "secrets/config.json" + backward_compatibility_tests_config: + disable_for_version: "0.3.0" basic_read: tests: - - config_path: "secrets/config.json" - empty_streams: - - name: webhooks - bypass_reason: "no data" - expect_records: - path: "integration_tests/expected_records.jsonl" - fail_on_extra_columns: true + - config_path: "secrets/config.json" + empty_streams: + - name: webhooks + bypass_reason: "no data" + expect_records: + path: "integration_tests/expected_records.jsonl" + fail_on_extra_columns: true incremental: tests: - - config_path: "secrets/incremental_config.json" - configured_catalog_path: "integration_tests/configured_catalog_incremental.json" - future_state: - future_state_path: "integration_tests/abnormal_state.json" - cursor_paths: - "responses": ["SdMKQYkv", "submitted_at"] + - config_path: "secrets/incremental_config.json" + configured_catalog_path: "integration_tests/configured_catalog_incremental.json" + future_state: + future_state_path: "integration_tests/abnormal_state.json" + skip_comprehensive_incremental_tests: true full_refresh: tests: - - config_path: "secrets/config.json" - configured_catalog_path: "integration_tests/configured_catalog.json" + - config_path: "secrets/config.json" + configured_catalog_path: "integration_tests/configured_catalog.json" diff --git a/airbyte-integrations/connectors/source-typeform/acceptance-test-docker.sh b/airbyte-integrations/connectors/source-typeform/acceptance-test-docker.sh index 5797d20fe9a7..b6d65deeccb4 100644 --- a/airbyte-integrations/connectors/source-typeform/acceptance-test-docker.sh +++ b/airbyte-integrations/connectors/source-typeform/acceptance-test-docker.sh @@ -1,2 +1,3 @@ #!/usr/bin/env sh + source "$(git rev-parse --show-toplevel)/airbyte-integrations/bases/connector-acceptance-test/acceptance-test-docker.sh" diff --git a/airbyte-integrations/connectors/source-typeform/integration_tests/abnormal_state.json b/airbyte-integrations/connectors/source-typeform/integration_tests/abnormal_state.json index 3b04806c8ce9..d09ec8ec208c 100644 --- a/airbyte-integrations/connectors/source-typeform/integration_tests/abnormal_state.json +++ b/airbyte-integrations/connectors/source-typeform/integration_tests/abnormal_state.json @@ -2,21 +2,15 @@ { "type": "STREAM", "stream": { + "stream_descriptor": { "name": "responses" }, "stream_state": { - "SdMKQYkv": { - "submitted_at": 9999999999 - }, - "XtrcGoGJ": { - "submitted_at": 9999999999 - }, - "kRt99jlK": { - "submitted_at": 9999999999 - }, - "VWO7mLtl": { - "submitted_at": 9999999999 - } - }, - "stream_descriptor": { "name": "responses" } + "states": [ + { + "partition": { "form_id": "SdMKQYkv" }, + "cursor": { "submitted_at": "2050-09-04T16:39:47Z" } + } + ] + } } } ] diff --git a/airbyte-integrations/connectors/source-typeform/integration_tests/acceptance.py b/airbyte-integrations/connectors/source-typeform/integration_tests/acceptance.py index 82823254d266..9e6409236281 100644 --- a/airbyte-integrations/connectors/source-typeform/integration_tests/acceptance.py +++ b/airbyte-integrations/connectors/source-typeform/integration_tests/acceptance.py @@ -11,4 +11,6 @@ @pytest.fixture(scope="session", autouse=True) def connector_setup(): """This fixture is a placeholder for external resources that acceptance test might require.""" + # TODO: setup test dependencies if needed. otherwise remove the TODO comments yield + # TODO: clean up test dependencies diff --git a/airbyte-integrations/connectors/source-typeform/integration_tests/sample_config.json b/airbyte-integrations/connectors/source-typeform/integration_tests/sample_config.json new file mode 100644 index 000000000000..ecc4913b84c7 --- /dev/null +++ b/airbyte-integrations/connectors/source-typeform/integration_tests/sample_config.json @@ -0,0 +1,3 @@ +{ + "fix-me": "TODO" +} diff --git a/airbyte-integrations/connectors/source-typeform/integration_tests/sample_state.json b/airbyte-integrations/connectors/source-typeform/integration_tests/sample_state.json new file mode 100644 index 000000000000..129af8dec641 --- /dev/null +++ b/airbyte-integrations/connectors/source-typeform/integration_tests/sample_state.json @@ -0,0 +1,16 @@ +[ + { + "type": "STREAM", + "stream": { + "stream_descriptor": { "name": "responses" }, + "stream_state": { + "states": [ + { + "partition": { "form_id": "SdMKQYkv" }, + "cursor": { "submitted_at": "2021-09-04T16:39:47Z" } + } + ] + } + } + } +] diff --git a/airbyte-integrations/connectors/source-typeform/metadata.yaml b/airbyte-integrations/connectors/source-typeform/metadata.yaml index 8c8904a2e6a7..ce9e3e2468d4 100644 --- a/airbyte-integrations/connectors/source-typeform/metadata.yaml +++ b/airbyte-integrations/connectors/source-typeform/metadata.yaml @@ -2,27 +2,32 @@ data: allowedHosts: hosts: - api.typeform.com + registries: + cloud: + enabled: true + oss: + enabled: true connectorSubtype: api connectorType: source definitionId: e7eff203-90bf-43e5-a240-19ea3056c474 - dockerImageTag: 1.0.0 + dockerImageTag: 1.1.0 dockerRepository: airbyte/source-typeform githubIssueLabel: source-typeform icon: typeform.svg license: MIT name: Typeform - registries: - cloud: - enabled: true - dockerImageTag: 1.0.0 - oss: - enabled: true + releaseDate: 2021-07-10 releaseStage: generally_available + supportLevel: certified documentationUrl: https://docs.airbyte.com/integrations/sources/typeform + releases: + breakingChanges: + 1.1.0: + upgradeDeadline: "2023-09-25" + message: "This version migrates the Typeform connector to the low-code framework for greater maintainability. This introduces a breaking change to the state format for the `responses` stream. If you are using the incremental sync mode for this stream, you will need to reset affected connections after upgrading to prevent sync failures." tags: - - language:python + - language:low-code ab_internal: sl: 200 ql: 400 - supportLevel: certified metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-typeform/setup.py b/airbyte-integrations/connectors/source-typeform/setup.py index 720f7ea64da1..282003bf9077 100644 --- a/airbyte-integrations/connectors/source-typeform/setup.py +++ b/airbyte-integrations/connectors/source-typeform/setup.py @@ -5,11 +5,9 @@ from setuptools import find_packages, setup -MAIN_REQUIREMENTS = [ - "airbyte-cdk", -] +MAIN_REQUIREMENTS = ["airbyte-cdk~=0.1"] -TEST_REQUIREMENTS = ["requests-mock~=1.9.3", "pytest~=6.1", "pytest-mock~=3.6", "requests_mock~=1.8"] +TEST_REQUIREMENTS = ["requests-mock~=1.9.3", "pytest~=6.2", "pytest-mock~=3.6.1"] setup( name="source_typeform", @@ -18,7 +16,7 @@ author_email="contact@airbyte.io", packages=find_packages(), install_requires=MAIN_REQUIREMENTS, - package_data={"": ["*.json", "schemas/*.json", "schemas/shared/*.json"]}, + package_data={"": ["*.json", "*.yaml", "schemas/*.json", "schemas/shared/*.json"]}, extras_require={ "tests": TEST_REQUIREMENTS, }, diff --git a/airbyte-integrations/connectors/source-typeform/source_typeform/__init__.py b/airbyte-integrations/connectors/source-typeform/source_typeform/__init__.py index 4398c5361697..2cf08f1a5d12 100644 --- a/airbyte-integrations/connectors/source-typeform/source_typeform/__init__.py +++ b/airbyte-integrations/connectors/source-typeform/source_typeform/__init__.py @@ -1,29 +1,7 @@ # # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # -""" -MIT License -Copyright (c) 2020 Airbyte - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. -""" from .source import SourceTypeform diff --git a/airbyte-integrations/connectors/source-typeform/source_typeform/components.py b/airbyte-integrations/connectors/source-typeform/source_typeform/components.py new file mode 100644 index 000000000000..3966a856ca2c --- /dev/null +++ b/airbyte-integrations/connectors/source-typeform/source_typeform/components.py @@ -0,0 +1,41 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + +from dataclasses import dataclass +from typing import Any, Iterable, Mapping + +from airbyte_cdk.models import SyncMode +from airbyte_cdk.sources.declarative.auth.declarative_authenticator import DeclarativeAuthenticator +from airbyte_cdk.sources.declarative.auth.oauth import DeclarativeSingleUseRefreshTokenOauth2Authenticator +from airbyte_cdk.sources.declarative.auth.token import BearerAuthenticator +from airbyte_cdk.sources.declarative.partition_routers.substream_partition_router import SubstreamPartitionRouter +from airbyte_cdk.sources.declarative.types import StreamSlice + + +@dataclass +class TypeformAuthenticator(DeclarativeAuthenticator): + config: Mapping[str, Any] + token_auth: BearerAuthenticator + oauth2: DeclarativeSingleUseRefreshTokenOauth2Authenticator + + def __new__(cls, token_auth, oauth2, config, *args, **kwargs): + if config["credentials"]["access_token"]: + return token_auth + return oauth2 + + +@dataclass +class FormIdPartitionRouter(SubstreamPartitionRouter): + def stream_slices(self) -> Iterable[StreamSlice]: + form_ids = self.config.get("form_ids", []) + + if form_ids: + for item in form_ids: + yield {"form_id": item} + else: + for parent_stream_config in self.parent_stream_configs: + for item in parent_stream_config.stream.read_records(sync_mode=SyncMode.full_refresh): + yield {"form_id": item["id"]} + + yield from [] diff --git a/airbyte-integrations/connectors/source-typeform/source_typeform/manifest.yaml b/airbyte-integrations/connectors/source-typeform/source_typeform/manifest.yaml new file mode 100644 index 000000000000..31d68c2435a5 --- /dev/null +++ b/airbyte-integrations/connectors/source-typeform/source_typeform/manifest.yaml @@ -0,0 +1,319 @@ +version: 0.50.0 +type: DeclarativeSource +check: + type: CheckStream + stream_names: + - forms + +definitions: + items_selector: + type: RecordSelector + extractor: + type: DpathExtractor + field_path: + - items + no_selector: + type: RecordSelector + extractor: + type: DpathExtractor + field_path: [] + token_auth: + type: BearerAuthenticator + api_token: "{{ config['credentials']['access_token'] }}" + oauth2: + type: OAuthAuthenticator + token_refresh_endpoint: https://api.typeform.com/oauth/token + client_id: "{{ config['credentials']['client_id'] }}" + client_secret: "{{ config['credentials']['client_secret'] }}" + refresh_token: "{{ config['credentials']['refresh_token'] }}" + requester: + type: HttpRequester + url_base: https://api.typeform.com/ + http_method: GET + request_parameters: {} + request_headers: {} + authenticator: + class_name: source_typeform.components.TypeformAuthenticator + token_auth: "#/definitions/token_auth" + oauth2: "#/definitions/oauth2" + request_body_json: {} + paginator: + type: DefaultPaginator + page_token_option: + type: RequestOption + inject_into: request_parameter + field_name: page + page_size_option: + type: RequestOption + field_name: page_size + inject_into: request_parameter + pagination_strategy: + type: PageIncrement + page_size: 200 + start_from_page: 1 + paginated_stream: + type: DeclarativeStream + primary_key: id + retriever: + type: SimpleRetriever + requester: + $ref: "#/definitions/requester" + path: "{{ parameters.path }}" + record_selector: + $ref: "#/definitions/items_selector" + paginator: + $ref: "#/definitions/paginator" + trim_forms_stream: + $ref: "#/definitions/paginated_stream" + name: trim_forms + $parameters: + path: forms + form_id_partition_router: + - type: CustomPartitionRouter + class_name: source_typeform.components.FormIdPartitionRouter + parent_stream_configs: + - type: ParentStreamConfig + parent_key: id + partition_field: form_id + stream: + $ref: "#/definitions/trim_forms_stream" + + forms_stream: + type: DeclarativeStream + name: forms + primary_key: id + retriever: + type: SimpleRetriever + requester: + $ref: "#/definitions/requester" + path: forms/{{ stream_partition.form_id }} + record_selector: + $ref: "#/definitions/no_selector" + partition_router: + $ref: "#/definitions/form_id_partition_router" + + responses_stream: + type: DeclarativeStream + name: responses + primary_key: response_id + retriever: + type: SimpleRetriever + requester: + $ref: "#/definitions/requester" + path: forms/{{ stream_partition.form_id }}/responses + record_selector: + $ref: "#/definitions/items_selector" + paginator: + type: DefaultPaginator + page_size_option: + type: RequestOption + field_name: page_size + inject_into: request_parameter + pagination_strategy: + type: PageIncrement + page_size: 1000 + partition_router: + $ref: "#/definitions/form_id_partition_router" + transformations: + - type: AddFields + fields: + - path: + - form_id + value: "{{ stream_partition.form_id }}" + incremental_sync: + type: DatetimeBasedCursor + cursor_field: submitted_at + cursor_datetime_formats: + - "%Y-%m-%dT%H:%M:%SZ" + datetime_format: "%Y-%m-%dT%H:%M:%SZ" + start_datetime: + type: MinMaxDatetime + datetime: >- + {{ format_datetime((config.start_date if config.start_date else + now_utc() - duration('P1Y')), '%Y-%m-%dT%H:%M:%SZ') }} + datetime_format: "%Y-%m-%dT%H:%M:%SZ" + start_time_option: + type: RequestOption + field_name: since + inject_into: request_parameter + end_datetime: + type: MinMaxDatetime + datetime: "{{ now_utc().strftime('%Y-%m-%dT%H:%M:%SZ') }}" + datetime_format: "%Y-%m-%dT%H:%M:%SZ" + + webhooks_stream: + type: DeclarativeStream + name: webhooks + primary_key: id + retriever: + type: SimpleRetriever + requester: + $ref: "#/definitions/requester" + path: forms/{{ stream_partition.form_id }}/webhooks + record_selector: + $ref: "#/definitions/items_selector" + partition_router: + $ref: "#/definitions/form_id_partition_router" + workspaces_stream: + $ref: "#/definitions/paginated_stream" + name: workspaces + $parameters: + path: workspaces + images_stream: + type: DeclarativeStream + name: images + primary_key: id + retriever: + type: SimpleRetriever + requester: + $ref: "#/definitions/requester" + record_selector: + $ref: "#/definitions/no_selector" + $parameters: + path: images + themes_stream: + $ref: "#/definitions/paginated_stream" + name: themes + $parameters: + path: themes + +streams: + - "#/definitions/forms_stream" + - "#/definitions/responses_stream" + - "#/definitions/webhooks_stream" + - "#/definitions/workspaces_stream" + - "#/definitions/images_stream" + - "#/definitions/themes_stream" +spec: + type: Spec + documentation_url: https://docs.airbyte.com/integrations/sources/typeform + connection_specification: + $schema: http://json-schema.org/draft-07/schema# + type: object + additionalProperties: true + required: + - credentials + properties: + credentials: + title: Authorization Method + type: object + order: 0 + oneOf: + - type: object + title: OAuth2.0 + required: + - client_id + - client_secret + - refresh_token + - access_token + - token_expiry_date + properties: + auth_type: + type: string + const: oauth2.0 + client_id: + type: string + description: The Client ID of the Typeform developer application. + airbyte_secret: true + client_secret: + type: string + description: The Client Secret the Typeform developer application. + airbyte_secret: true + access_token: + type: string + description: Access Token for making authenticated requests. + airbyte_secret: true + token_expiry_date: + type: string + description: The date-time when the access token should be refreshed. + format: date-time + refresh_token: + type: string + description: The key to refresh the expired access_token. + airbyte_secret: true + - title: Private Token + type: object + required: + - access_token + properties: + auth_type: + type: string + const: access_token + access_token: + type: string + title: Private Token + description: + Log into your Typeform account and then generate a personal + Access Token. + airbyte_secret: true + start_date: + type: string + title: Start Date + description: + The date from which you'd like to replicate data for Typeform API, + in the format YYYY-MM-DDT00:00:00Z. All data generated after this date will + be replicated. + examples: + - "2021-03-01T00:00:00Z" + pattern: "^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}Z$" + order: 2 + format: date-time + form_ids: + title: Form IDs to replicate + description: + When this parameter is set, the connector will replicate data only + from the input forms. Otherwise, all forms in your Typeform account will be + replicated. You can find form IDs in your form URLs. For example, in the URL + "https://mysite.typeform.com/to/u6nXL7" the form_id is u6nXL7. You can find + form URLs on Share panel + type: array + items: + type: string + uniqueItems: true + order: 3 + advanced_auth: + auth_flow_type: oauth2.0 + predicate_key: + - credentials + - auth_type + predicate_value: oauth2.0 + oauth_config_specification: + complete_oauth_output_specification: + type: object + properties: + access_token: + type: string + path_in_connector_config: + - credentials + - access_token + refresh_token: + type: string + path_in_connector_config: + - credentials + - refresh_token + token_expiry_date: + type: string + format: date-time + path_in_connector_config: + - credentials + - token_expiry_date + complete_oauth_server_input_specification: + type: object + properties: + client_id: + type: string + client_secret: + type: string + complete_oauth_server_output_specification: + type: object + properties: + client_id: + type: string + path_in_connector_config: + - credentials + - client_id + client_secret: + type: string + path_in_connector_config: + - credentials + - client_secret diff --git a/airbyte-integrations/connectors/source-typeform/source_typeform/source.py b/airbyte-integrations/connectors/source-typeform/source_typeform/source.py index 17c48ae7b27a..58ec8391d7d7 100644 --- a/airbyte-integrations/connectors/source-typeform/source_typeform/source.py +++ b/airbyte-integrations/connectors/source-typeform/source_typeform/source.py @@ -2,303 +2,17 @@ # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # +from airbyte_cdk.sources.declarative.yaml_declarative_source import YamlDeclarativeSource -import urllib.parse as urlparse -from abc import ABC, abstractmethod -from typing import Any, Iterable, List, Mapping, MutableMapping, Optional, Tuple -from urllib.parse import parse_qs +""" +This file provides the necessary constructs to interpret a provided declarative YAML configuration file into +source connector. -import pendulum -import requests -from airbyte_cdk import AirbyteLogger -from airbyte_cdk.models import SyncMode -from airbyte_cdk.sources import AbstractSource -from airbyte_cdk.sources.streams import Stream -from airbyte_cdk.sources.streams.http import HttpStream -from airbyte_cdk.sources.streams.http.auth import TokenAuthenticator -from airbyte_cdk.sources.streams.http.requests_native_auth.oauth import SingleUseRefreshTokenOauth2Authenticator -from pendulum.datetime import DateTime -from requests.auth import AuthBase +WARNING: Do not modify this file. +""" -class TypeformStream(HttpStream, ABC): - url_base = "https://api.typeform.com/" - # maximum number of entities in API response per single page - limit: int = 200 - date_format: str = "YYYY-MM-DDTHH:mm:ss[Z]" - - def __init__(self, **kwargs: Mapping[str, Any]): - super().__init__(authenticator=kwargs["authenticator"]) - self.config: Mapping[str, Any] = kwargs - # if start_date is not provided during setup, use date from a year ago instead - self.start_date: DateTime = pendulum.today().subtract(years=1) - if kwargs.get("start_date"): - self.start_date: DateTime = pendulum.from_format(kwargs["start_date"], self.date_format) - - # changes page limit, this param is using for development and debugging - if kwargs.get("page_size"): - self.limit = kwargs.get("page_size") - - def next_page_token(self, response: requests.Response) -> Optional[Any]: - return None - - def parse_response(self, response: requests.Response, **kwargs) -> Iterable[Mapping]: - yield from response.json()["items"] - - -class PaginatedStream(TypeformStream): - def next_page_token(self, response: requests.Response) -> Optional[Any]: - page = self.get_current_page_token(response.url) - # stop pagination if current page equals to total pages - return None if not page or response.json()["page_count"] <= page else page + 1 - - def get_current_page_token(self, url: str) -> Optional[int]: - """ - Fetches page query parameter from URL - """ - parsed = urlparse.urlparse(url) - page = parse_qs(parsed.query).get("page") - return int(page[0]) if page else None - - def request_params(self, next_page_token: Optional[Any] = None, **kwargs) -> MutableMapping[str, Any]: - params = {"page_size": self.limit} - params["page"] = next_page_token or 1 - return params - - -class TrimForms(PaginatedStream): - """ - This stream is responsible for fetching list of from_id(s) which required to process data from Forms and Responses. - API doc: https://developer.typeform.com/create/reference/retrieve-forms/ - """ - - primary_key = "id" - - def path(self, **kwargs) -> str: - return "forms" - - -class TrimFormsMixin: - def stream_slices(self, **kwargs) -> Iterable[Optional[Mapping[str, any]]]: - form_ids = self.config.get("form_ids", []) - if form_ids: - for item in form_ids: - yield {"form_id": item} - else: - for item in TrimForms(**self.config).read_records(sync_mode=SyncMode.full_refresh): - yield {"form_id": item["id"]} - - yield from [] - - -class Forms(TrimFormsMixin, TypeformStream): - """ - This stream is responsible for detailed information about Form. - API doc: https://developer.typeform.com/create/reference/retrieve-form/ - """ - - primary_key = "id" - - def path(self, stream_slice: Mapping[str, Any] = None, **kwargs) -> str: - return f"forms/{stream_slice['form_id']}" - - def parse_response(self, response: requests.Response, **kwargs) -> Iterable[Mapping]: - yield response.json() - - -class IncrementalTypeformStream(TypeformStream, ABC): - cursor_field: str = "submitted_at" - token_field: str = "token" - - @property - def limit(self): - return super().limit - - state_checkpoint_interval = limit - - @abstractmethod - def get_updated_state( - self, - current_stream_state: MutableMapping[str, Any], - latest_record: Mapping[str, Any], - ) -> Mapping[str, Any]: - pass - - def next_page_token(self, response: requests.Response) -> Optional[Any]: - items = response.json()["items"] - if items and len(items) == self.limit: - return items[-1][self.token_field] - return None - - -class Responses(TrimFormsMixin, IncrementalTypeformStream): - """ - This stream is responsible for fetching responses for particular form_id. - API doc: https://developer.typeform.com/responses/reference/retrieve-responses/ - """ - - primary_key = "response_id" - limit: int = 1000 - - def path(self, stream_slice: Optional[Mapping[str, Any]] = None, **kwargs) -> str: - return f"forms/{stream_slice['form_id']}/responses" - - def get_form_id(self, record: Mapping[str, Any]) -> Optional[str]: - """ - Fetches form id to which current record belongs. - """ - referer = record.get("metadata", {}).get("referer") - return urlparse.urlparse(referer).path.split("/")[-1] if referer else None - - def current_state_value_int(self, current_stream_state: MutableMapping[str, Any], form_id: str) -> int: - # state used to be stored as int, now we store it as str, so need to handle both cases - value = current_stream_state.get(form_id, {}).get(self.cursor_field, self.start_date.int_timestamp) - if isinstance(value, str): - value = pendulum.from_format(value, self.date_format).int_timestamp - return value - - def get_updated_state( - self, - current_stream_state: MutableMapping[str, Any], - latest_record: Mapping[str, Any], - ) -> Mapping[str, Any]: - form_id = self.get_form_id(latest_record) - if not form_id or not latest_record.get(self.cursor_field): - return current_stream_state - - current_stream_state[form_id] = current_stream_state.get(form_id, {}) - new_state_value = max( - pendulum.from_format(latest_record[self.cursor_field], self.date_format).int_timestamp, - self.current_state_value_int(current_stream_state, form_id), - ) - current_stream_state[form_id][self.cursor_field] = pendulum.from_timestamp(new_state_value).format(self.date_format) - return current_stream_state - - def request_params( - self, - stream_state: Mapping[str, Any], - stream_slice: Mapping[str, any] = None, - next_page_token: Optional[Any] = None, - ) -> MutableMapping[str, Any]: - params = {"page_size": self.limit} - stream_state = stream_state or {} - - if not next_page_token: - # use state for first request in incremental sync - params["sort"] = "submitted_at,asc" - # start from last state or from start date - since = max(self.start_date.int_timestamp, self.current_state_value_int(stream_state, stream_slice["form_id"])) - if since: - params["since"] = pendulum.from_timestamp(since).format(self.date_format) - else: - # use response token for pagination after first request - # this approach allow to avoid data duplication within single sync - params["after"] = next_page_token - - return params - - def parse_response(self, response: requests.Response, stream_slice: Mapping[str, Any], **kwargs) -> Iterable[Mapping]: - responses = response.json()["items"] - for response in responses: - response["form_id"] = stream_slice["form_id"] - return responses - - -class Webhooks(TrimFormsMixin, TypeformStream): - """ - This stream is responsible for fetching webhooks for particular form_id. - API doc: https://developer.typeform.com/webhooks/reference/retrieve-webhooks/ - """ - - primary_key = "id" - - def path(self, stream_slice: Optional[Mapping[str, Any]] = None, **kwargs) -> str: - return f"forms/{stream_slice['form_id']}/webhooks" - - -class Workspaces(PaginatedStream): - """ - This stream is responsible for fetching workspaces. - API doc: https://developer.typeform.com/create/reference/retrieve-workspaces/ - """ - - primary_key = "id" - - def path(self, **kwargs) -> str: - return "workspaces" - - -class Images(TypeformStream): - """ - This stream is responsible for fetching images. - API doc: https://developer.typeform.com/create/reference/retrieve-images-collection/ - """ - - primary_key = "id" - - def path(self, **kwargs) -> str: - return "images" - - def parse_response(self, response: requests.Response, **kwargs) -> Iterable[Mapping]: - return response.json() - - -class Themes(PaginatedStream): - """ - This stream is responsible for fetching themes. - API doc: https://developer.typeform.com/create/reference/retrieve-themes/ - """ - - primary_key = "id" - - def path(self, **kwargs) -> str: - return "themes" - - -class SourceTypeform(AbstractSource): - def get_auth(self, config: MutableMapping) -> AuthBase: - credentials = config.get("credentials") - if credentials and credentials.get("access_token"): - return TokenAuthenticator(token=credentials["access_token"]) - return SingleUseRefreshTokenOauth2Authenticator(config, token_refresh_endpoint="https://api.typeform.com/oauth/token") - - def check_connection(self, logger: AirbyteLogger, config: Mapping[str, Any]) -> Tuple[bool, any]: - try: - form_ids = config.get("form_ids", []).copy() - auth = self.get_auth(config) - # verify if form inputted by user is valid - try: - url = urlparse.urljoin(TypeformStream.url_base, "me") - auth_headers = auth.get_auth_header() - session = requests.get(url, headers=auth_headers) - session.raise_for_status() - except Exception as e: - return False, f"Cannot authenticate, please verify token. Error: {e}" - if form_ids: - for form in form_ids: - try: - url = urlparse.urljoin(TypeformStream.url_base, f"forms/{form}") - response = requests.get(url, headers=auth_headers) - response.raise_for_status() - except Exception as e: - return ( - False, - f"Cannot find forms with ID: {form}. Please make sure they are valid form IDs and try again. Error: {e}", - ) - return True, None - else: - return True, None - - except Exception as e: - return False, e - - def streams(self, config: Mapping[str, Any]) -> List[Stream]: - auth = self.get_auth(config) - return [ - Forms(authenticator=auth, **config), - Responses(authenticator=auth, **config), - Webhooks(authenticator=auth, **config), - Workspaces(authenticator=auth, **config), - Images(authenticator=auth, **config), - Themes(authenticator=auth, **config), - ] +# Declarative Source +class SourceTypeform(YamlDeclarativeSource): + def __init__(self): + super().__init__(**{"path_to_yaml": "manifest.yaml"}) diff --git a/airbyte-integrations/connectors/source-typeform/source_typeform/spec.json b/airbyte-integrations/connectors/source-typeform/source_typeform/spec.json deleted file mode 100644 index ea424a86dc97..000000000000 --- a/airbyte-integrations/connectors/source-typeform/source_typeform/spec.json +++ /dev/null @@ -1,146 +0,0 @@ -{ - "documentationUrl": "https://docs.airbyte.com/integrations/sources/typeform", - "connectionSpecification": { - "$schema": "http://json-schema.org/draft-07/schema#", - "title": "Source Typeform Spec", - "type": "object", - "required": ["credentials"], - "additionalProperties": true, - "properties": { - "credentials": { - "title": "Authorization Method", - "type": "object", - "order": 0, - "oneOf": [ - { - "type": "object", - "title": "OAuth2.0", - "required": [ - "client_id", - "client_secret", - "refresh_token", - "access_token", - "token_expiry_date" - ], - "properties": { - "auth_type": { - "type": "string", - "const": "oauth2.0" - }, - "client_id": { - "type": "string", - "description": "The Client ID of the Typeform developer application.", - "airbyte_secret": true - }, - "client_secret": { - "type": "string", - "description": "The Client Secret the Typeform developer application.", - "airbyte_secret": true - }, - "access_token": { - "type": "string", - "description": "Access Token for making authenticated requests.", - "airbyte_secret": true - }, - "token_expiry_date": { - "type": "string", - "description": "The date-time when the access token should be refreshed.", - "format": "date-time" - }, - "refresh_token": { - "type": "string", - "description": "The key to refresh the expired access_token.", - "airbyte_secret": true - } - } - }, - { - "title": "Private Token", - "type": "object", - "required": ["access_token"], - "properties": { - "auth_type": { - "type": "string", - "const": "access_token" - }, - "access_token": { - "type": "string", - "title": "Private Token", - "description": "Log into your Typeform account and then generate a personal Access Token.", - "airbyte_secret": true - } - } - } - ] - }, - "start_date": { - "type": "string", - "title": "Start Date", - "description": "The date from which you'd like to replicate data for Typeform API, in the format YYYY-MM-DDT00:00:00Z. All data generated after this date will be replicated.", - "examples": ["2021-03-01T00:00:00Z"], - "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}Z$", - "order": 2, - "format": "date-time" - }, - "form_ids": { - "title": "Form IDs to replicate", - "description": "When this parameter is set, the connector will replicate data only from the input forms. Otherwise, all forms in your Typeform account will be replicated. You can find form IDs in your form URLs. For example, in the URL \"https://mysite.typeform.com/to/u6nXL7\" the form_id is u6nXL7. You can find form URLs on Share panel", - "type": "array", - "items": { - "type": "string" - }, - "uniqueItems": true, - "order": 3 - } - } - }, - "advanced_auth": { - "auth_flow_type": "oauth2.0", - "predicate_key": ["credentials", "auth_type"], - "predicate_value": "oauth2.0", - "oauth_config_specification": { - "complete_oauth_output_specification": { - "type": "object", - "properties": { - "access_token": { - "type": "string", - "path_in_connector_config": ["credentials", "access_token"] - }, - "refresh_token": { - "type": "string", - "path_in_connector_config": ["credentials", "refresh_token"] - }, - "token_expiry_date": { - "type": "string", - "format": "date-time", - "path_in_connector_config": ["credentials", "token_expiry_date"] - } - } - }, - "complete_oauth_server_input_specification": { - "type": "object", - "properties": { - "client_id": { - "type": "string" - }, - "client_secret": { - "type": "string" - } - } - }, - "complete_oauth_server_output_specification": { - "type": "object", - "properties": { - "client_id": { - "type": "string", - "path_in_connector_config": ["credentials", "client_id"] - }, - "client_secret": { - "type": "string", - "path_in_connector_config": ["credentials", "client_secret"] - } - } - } - } - } -} diff --git a/airbyte-integrations/connectors/source-typeform/unit_tests/__init__.py b/airbyte-integrations/connectors/source-typeform/unit_tests/__init__.py new file mode 100644 index 000000000000..c941b3045795 --- /dev/null +++ b/airbyte-integrations/connectors/source-typeform/unit_tests/__init__.py @@ -0,0 +1,3 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# diff --git a/airbyte-integrations/connectors/source-typeform/unit_tests/conftest.py b/airbyte-integrations/connectors/source-typeform/unit_tests/conftest.py deleted file mode 100644 index ef5db854a4a9..000000000000 --- a/airbyte-integrations/connectors/source-typeform/unit_tests/conftest.py +++ /dev/null @@ -1,547 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -import pytest - - -@pytest.fixture -def config(): - return {"start_date": "2020-01-01T00:00:00Z", "credentials": {"access_token": "7607999ef26581e81726777b7b79f20e70e75602"}, "form_ids": ["u6nXL7", "k9xNV4"]} - - -@pytest.fixture -def config_without_forms(): - return {"start_date": "2020-01-01T00:00:00Z", "credentials":{"access_token": "7607999ef26581e81726777b7b79f20e70e75602"}} - - -@pytest.fixture -def form_response(): - return setup_response( - 200, - { - "id": "id", - "title": "title", - "language": "en", - "fields": [{}], - "hidden": ["string"], - "variables": {"score": 0, "price": 0}, - "welcome_screens": [ - { - "ref": "nice-readable-welcome-ref", - "title": "Welcome Title", - "properties": {"description": "Cool description for the welcome", "show_button": True, "button_text": "start"}, - "attachment": { - "type": "image", - "href": { - "image": {"value": "https://images.typeform.com/images/4bcd3"}, - "Pexels": {"value": "https://www.pexels.com/video/people-traveling-in-the-desert-1739011"}, - "Vimeo": {"value": "https://vimeo.com/245714980"}, - "YouTube": {"value": "https://www.youtube.com/watch?v=cGk3tZIIpXE"}, - }, - "scale": 0, - "properties": {"description": "description"}, - }, - "layout": { - "type": "float", - "placement": "left", - "attachment": { - "type": "image", - "href": { - "image": {"value": "https://images.typeform.com/images/4bcd3"}, - "Pexels": {"value": "https://www.pexels.com/video/people-traveling-in-the-desert-1739011"}, - "Vimeo": {"value": "https://vimeo.com/245714980"}, - "YouTube": {"value": "https://www.youtube.com/watch?v=cGk3tZIIpXE"}, - }, - "scale": 0, - "properties": {"brightness": 0, "description": "description", "focal_point": {"x": 0, "y": 0}}, - }, - }, - } - ], - "thankyou_screens": [ - { - "ref": "nice-readable-thank-you-ref", - "title": "Thank you Title", - "properties": { - "show_button": True, - "button_text": "start", - "button_mode": "redirect", - "redirect_url": "https://www.typeform.com", - "share_icons": True, - }, - "attachment": { - "type": "image", - "href": { - "image": {"value": "https://images.typeform.com/images/4bcd3"}, - "Pexels": {"value": "https://www.pexels.com/video/people-traveling-in-the-desert-1739011"}, - "Vimeo": {"value": "https://vimeo.com/245714980"}, - "YouTube": {"value": "https://www.youtube.com/watch?v=cGk3tZIIpXE"}, - }, - "scale": 0, - "properties": {"description": "description"}, - }, - "layout": { - "type": "float", - "placement": "left", - "attachment": { - "type": "image", - "href": { - "image": {"value": "https://images.typeform.com/images/4bcd3"}, - "Pexels": {"value": "https://www.pexels.com/video/people-traveling-in-the-desert-1739011"}, - "Vimeo": {"value": "https://vimeo.com/245714980"}, - "YouTube": {"value": "https://www.youtube.com/watch?v=cGk3tZIIpXE"}, - }, - "scale": 0, - "properties": {"brightness": 0, "description": "description", "focal_point": {"x": 0, "y": 0}}, - }, - }, - } - ], - "logic": [ - { - "type": "type", - "ref": "ref", - "actions": [ - { - "action": "action", - "details": { - "to": {"type": "type", "value": "value"}, - "target": {"type": "type", "value": "value"}, - "value": {"type": "type", "value": 0}, - }, - "condition": {"op": "op", "vars": [{"type": "type", "value": {}}]}, - } - ], - } - ], - "theme": {"href": "https://api.typeform.com/themes/Fs24as"}, - "workspace": {"href": "https://api.typeform.com/workspaces/Aw33bz"}, - "_links": {"display": "https://subdomain.typeform.com/to/abc123"}, - "settings": { - "language": "language", - "is_public": True, - "progress_bar": "proportion", - "show_progress_bar": True, - "show_typeform_branding": True, - "show_time_to_complete": True, - "hide_navigation": True, - "meta": {"title": "title", "allow_indexing": True, "description": "description", "image": {"href": "href"}}, - "redirect_after_submit_url": "redirect_after_submit_url", - "google_analytics": "google_analytics", - "facebook_pixel": "facebook_pixel", - "google_tag_manager": "google_tag_manager", - }, - "cui_settings": { - "avatar": "https://images.typeform.com/images/4bcd3", - "is_typing_emulation_disabled": True, - "typing_emulation_speed": "fast", - }, - }, - ) - - -@pytest.fixture -def forms_response(): - return setup_response(200, {"total_items": 2, "page_count": 1, "items": [{"id": "u6nXL7"}, {"id": "k9xNV4"}]}) - - -@pytest.fixture -def response_response(): - return setup_response( - 200, - { - "items": [ - { - "answers": [ - { - "field": {"id": "hVONkQcnSNRj", "ref": "my_custom_dropdown_reference", "type": "dropdown"}, - "text": "Job opportunities", - "type": "text", - }, - { - "boolean": False, - "field": {"id": "RUqkXSeXBXSd", "ref": "my_custom_yes_no_reference", "type": "yes_no"}, - "type": "boolean", - }, - { - "boolean": True, - "field": {"id": "gFFf3xAkJKsr", "ref": "my_custom_legal_reference", "type": "legal"}, - "type": "boolean", - }, - { - "field": {"id": "JwWggjAKtOkA", "ref": "my_custom_short_text_reference", "type": "short_text"}, - "text": "Lian", - "type": "text", - }, - { - "email": "lian1078@other.com", - "field": {"id": "SMEUb7VJz92Q", "ref": "my_custom_email_reference", "type": "email"}, - "type": "email", - }, - { - "field": {"id": "pn48RmPazVdM", "ref": "my_custom_number_reference", "type": "number"}, - "number": 1, - "type": "number", - }, - { - "field": {"id": "Q7M2XAwY04dW", "ref": "my_custom_number2_reference", "type": "number"}, - "number": 1, - "type": "number", - }, - { - "field": {"id": "WOTdC00F8A3h", "ref": "my_custom_rating_reference", "type": "rating"}, - "number": 3, - "type": "number", - }, - { - "field": {"id": "DlXFaesGBpoF", "ref": "my_custom_long_text_reference", "type": "long_text"}, - "text": "It's a big, busy city. I moved here for a job, but I like it, so I am planning to stay. I have made good friends here.", - "type": "text", - }, - { - "field": {"id": "NRsxU591jIW9", "ref": "my_custom_opinion_scale_reference", "type": "opinion_scale"}, - "number": 1, - "type": "number", - }, - { - "choices": {"labels": ["New York", "Tokyo"]}, - "field": {"id": "PNe8ZKBK8C2Q", "ref": "my_custom_picture_choice_reference", "type": "picture_choice"}, - "type": "choices", - }, - { - "date": "2012-03-20T00:00:00Z", - "field": {"id": "KoJxDM3c6x8h", "ref": "my_custom_date_reference", "type": "date"}, - "type": "date", - }, - { - "choice": {"label": "A friend's experience in Sydney"}, - "field": {"id": "ceIXxpbP3t2q", "ref": "my_custom_multiple_choice_reference", "type": "multiple_choice"}, - "type": "choice", - }, - { - "choices": {"labels": ["New York", "Tokyo"]}, - "field": {"id": "abISxvbD5t1p", "ref": "my_custom_ranking_reference", "type": "ranking"}, - "type": "choices", - }, - { - "choice": {"label": "Tokyo"}, - "field": {"id": "k6TP9oLGgHjl", "ref": "my_custom_multiple_choice2_reference", "type": "multiple_choice"}, - "type": "choice", - }, - ], - "calculated": {"score": 2}, - "hidden": {}, - "landed_at": "2017-09-14T22:33:59Z", - "landing_id": "21085286190ffad1248d17c4135ee56f", - "metadata": { - "browser": "default", - "network_id": "responsdent_network_id", - "platform": "other", - "referer": "https://user_id.typeform.com/to/lR6F4j", - "user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/603.3.8 (KHTML, like Gecko) Version/10.1.2 Safari/603.3.8", - }, - "response_id": "21085286190ffad1248d17c4135ee56f", - "submitted_at": "2017-09-14T22:38:22Z", - "token": "test21085286190ffad1248d17c4135ee56f", - "variables": [{"key": "score", "number": 2, "type": "number"}, {"key": "name", "text": "typeform", "type": "text"}], - }, - { - "answers": [ - { - "choice": {"label": "New York"}, - "field": {"id": "k6TP9oLGgHjl", "ref": "my_custom_multiple_choice2_reference", "type": "multiple_choice"}, - "type": "choice", - }, - { - "field": {"id": "X4BgU2f1K6tG", "ref": "my_custom_file_upload_reference", "type": "file_upload"}, - "file_url": "https://api.typeform.com/forms/lT9Z2j/responses/7f46165474d11ee5836777d85df2cdab/fields/X4BgU2f1K6tG/files/afd8258fd453-aerial_view_rural_city_latvia_valmiera_urban_district_48132860.jpg", - "type": "file_url", - }, - { - "choice": {"label": "Other"}, - "field": {"id": "ceIXxpbP3t2q", "ref": "my_custom_multiple_choice_reference", "type": "multiple_choice"}, - "type": "choice", - }, - { - "field": {"id": "hVONkQcnSNRj", "ref": "my_custom_dropdown_reference", "type": "dropdown"}, - "text": "Cost of living", - "type": "text", - }, - { - "field": {"id": "JwWggjAKtOkA", "ref": "my_custom_short_text_reference", "type": "short_text"}, - "text": "Sarah", - "type": "text", - }, - { - "boolean": True, - "field": {"id": "RUqkXSeXBXSd", "ref": "my_custom_yes_no_reference", "type": "yes_no"}, - "type": "boolean", - }, - { - "field": {"id": "Fep7sEoBsnvC", "ref": "my_custom_long_text_reference", "type": "long_text"}, - "text": "I read a magazine article about traveling to Sydney", - "type": "text", - }, - { - "boolean": True, - "field": {"id": "gFFf3xAkJKsr", "ref": "my_custom_legal_reference", "type": "legal"}, - "type": "boolean", - }, - { - "field": {"id": "BFcpoPU5yJPM", "ref": "my_custom_short_text_reference", "type": "short_text"}, - "text": "San Francisco", - "type": "text", - }, - { - "email": "sarahbsmith@example.com", - "field": {"id": "SMEUb7VJz92Q", "ref": "my_custom_rmail_reference", "type": "email"}, - "type": "email", - }, - { - "field": {"id": "pn48RmPazVdM", "ref": "my_custom_number_reference", "type": "number"}, - "number": 1, - "type": "number", - }, - { - "field": {"id": "WOTdC00F8A3h", "ref": "my_custom_rating_reference", "type": "rating"}, - "number": 3, - "type": "number", - }, - { - "field": {"id": "Q7M2XAwY04dW", "ref": "my_custom_number2_reference", "type": "number"}, - "number": 3, - "type": "number", - }, - { - "field": {"id": "DlXFaesGBpoF", "ref": "my_custom_long_text_reference", "type": "long_text"}, - "text": "It's a rural area. Very quiet. There are a lot of farms...farming is the major industry here.", - "type": "text", - }, - { - "field": {"id": "NRsxU591jIW9", "ref": "my_custom_opinion_scale_reference", "type": "opinion_scale"}, - "number": 1, - "type": "number", - }, - { - "date": "2016-05-13T00:00:00Z", - "field": {"id": "KoJxDM3c6x8h", "ref": "my_custom_date_reference", "type": "date"}, - "type": "date", - }, - { - "choices": {"labels": ["London", "New York"]}, - "field": {"id": "PNe8ZKBK8C2Q", "ref": "my_custom_picture_choice_reference", "type": "picture_choice"}, - "type": "choices", - }, - ], - "calculated": {"score": 4}, - "hidden": {}, - "landed_at": "2017-09-14T22:27:38Z", - "landing_id": "610fc266478b41e4927945e20fe54ad2", - "metadata": { - "browser": "default", - "network_id": "responsdent_network_id", - "platform": "other", - "referer": "https://user_id.typeform.com/to/lR6F4j", - "user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36", - }, - "submitted_at": "2017-09-14T22:33:56Z", - "token": "test610fc266478b41e4927945e20fe54ad2", - }, - { - "answers": [ - { - "boolean": False, - "field": {"id": "RUqkXSeXBXSd", "ref": "my_custom_yes_no_reference", "type": "yes_no"}, - "type": "boolean", - }, - { - "boolean": False, - "field": {"id": "gFFf3xAkJKsr", "ref": "my_custom_legal_reference", "type": "legal"}, - "type": "boolean", - }, - { - "field": {"id": "JwWggjAKtOkA", "ref": "my_custom_short_text_reference", "type": "short_text"}, - "text": "Paolo", - "type": "text", - }, - { - "field": {"id": "pn48RmPazVdM", "ref": "my_custom_number_reference", "type": "number"}, - "number": 5, - "type": "number", - }, - { - "field": {"id": "Q7M2XAwY04dW", "ref": "my_custom_number2_reference", "type": "number"}, - "number": 5, - "type": "number", - }, - { - "choices": {"labels": ["Barcelona", "Sydney"]}, - "field": {"id": "PNe8ZKBK8C2Q", "ref": "my_custom_picture_choice_reference", "type": "picture_choice"}, - "type": "choices", - }, - { - "field": {"id": "WOTdC00F8A3h", "ref": "my_custom_rating_reference", "type": "rating"}, - "number": 5, - "type": "number", - }, - { - "field": {"id": "DlXFaesGBpoF", "ref": "my_custom_long_text_reference", "type": "long_text"}, - "text": "I live in a medium-sized European city. It's not too crowded, and the people are nice. I like the weather. It's also easy to travel to many beautiful and interesting vacation destinations from where I live.", - "type": "text", - }, - { - "field": {"id": "NRsxU591jIW9", "ref": "my_custom_opinion_scale_reference", "type": "opinion_scale"}, - "number": 4, - "type": "number", - }, - { - "date": "1999-08-01T00:00:00Z", - "field": {"id": "KoJxDM3c6x8h", "ref": "my_custom_date_reference", "type": "date"}, - "type": "date", - }, - { - "choice": {"label": "Barcelona"}, - "field": {"id": "k6TP9oLGgHjl", "ref": "my_custom_multiple_choice_reference", "type": "multiple_choice"}, - "type": "choice", - }, - ], - "calculated": {"score": 10}, - "hidden": {}, - "landed_at": "2017-09-14T22:24:49Z", - "landing_id": "9ba5db11ec6c63d22f08aade805bd363", - "metadata": { - "browser": "default", - "network_id": "responsdent_network_id", - "platform": "other", - "referer": "https://user_id.typeform.com/to/lR6F4j", - "user_agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 10_2_1 like Mac OS X) AppleWebKit/602.4.6 (KHTML, like Gecko) Version/10.0 Mobile/14D27 Safari/602.1", - }, - "submitted_at": "2017-09-14T22:27:34Z", - "token": "9ba5db11ec6c63d22f08aade805bd363", - }, - { - "answers": [], - "calculated": {"score": 0}, - "hidden": {}, - "landed_at": "2017-09-15T09:09:30Z", - "landing_id": "5fcb3f9c162e1fcdaadff4405b741080", - "metadata": { - "browser": "default", - "network_id": "responsdent_network_id", - "platform": "other", - "referer": "https://user_id.typeform.com/to/lR6F4j", - "user_agent": "Mozilla/5.0 (Linux; Android 4.1.2; GT-N7000 Build/JZO54K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.91 Mobile Safari/537.36", - }, - "submitted_at": "0001-01-01T00:00:00Z", - "token": "test5fcb3f9c162e1fcdaadff4405b741080", - }, - ], - "page_count": 1, - "total_items": 4, - }, - ) - - -@pytest.fixture -def webhooks_response(): - return setup_response( - 200, - { - "items": [ - { - "created_at": "2016-11-21T12:23:28Z", - "enabled": True, - "form_id": "abc123", - "id": "yRtagDm8AT", - "tag": "phoenix", - "updated_at": "2016-11-21T12:23:28Z", - "url": "https://test.com", - "verify_ssl": True, - } - ] - }, - ) - - -@pytest.fixture -def images_response(): - return setup_response( - 200, [{"file_name": "file_name1", "id": "id1", "src": "src1"}, {"file_name": "file_name2", "id": "id2", "src": "src2"}] - ) - - -@pytest.fixture -def workspaces_response(): - return setup_response( - 200, - { - "items": [ - { - "forms": [{"count": 12, "href": "https://api.typeform.com/workspaces/a1b2c3/forms"}], - "id": "a1b2c3", - "name": "My Workspace1", - "self": [{"href": "https://api.typeform.com/workspaces/a1b2c3"}], - "shared": False, - }, - { - "forms": [{"count": 10, "href": "https://api.typeform.com/workspaces/a1b2c3/forms"}], - "id": "a1b2c3d4", - "name": "My Workspace2", - "self": [{"href": "https://api.typeform.com/workspaces/a1b2c3"}], - "shared": True, - }, - ], - "page_count": 1, - "total_items": 2, - }, - ) - - -@pytest.fixture -def themes_response(): - return setup_response( - 200, - { - "items": [ - { - "background": [{"brightness": 12, "href": "https://api.typeform.com/workspaces/a1b2c3/forms", "layout": "fullscreen"}], - "colors": [{"answer": "answer1", "background": "background1", "button": "button1", "question": "question1"}], - "fields": [{"alignment": "left", "font_size": "medium"}], - "font": "Helvetica Neue", - "has_transparent_button": True, - "id": "a1b2c3", - "name": "name1", - "screens": [{"alignment": "left", "font_size": "medium"}], - "visibility": "public", - }, - { - "background": [{"brightness": 13, "href": "https://api.typeform.com/workspaces/a1b2c3/forms", "layout": "fullscreen"}], - "colors": [{"answer": "answer2", "background": "background2", "button": "button2", "question": "question2"}], - "fields": [{"alignment": "left", "font_size": "medium"}], - "font": "Helvetica Neue", - "has_transparent_button": True, - "id": "a1b2c3", - "name": "name1", - "screens": [{"alignment": "left", "font_size": "medium"}], - "visibility": "public", - }, - ], - "page_count": 1, - "total_items": 2, - }, - ) - - -@pytest.fixture -def empty_response_ok(): - return setup_response(200, {}) - - -@pytest.fixture -def empty_response_bad(): - return setup_response(400, {}) - - -def setup_response(status, body): - return [{"json": body, "status_code": status}] diff --git a/airbyte-integrations/connectors/source-typeform/unit_tests/test_form_id_partition_router.py b/airbyte-integrations/connectors/source-typeform/unit_tests/test_form_id_partition_router.py new file mode 100644 index 000000000000..bec641b9fbc5 --- /dev/null +++ b/airbyte-integrations/connectors/source-typeform/unit_tests/test_form_id_partition_router.py @@ -0,0 +1,47 @@ +# +# Copyright (c) 2023 Airbyte, Inc., all rights reserved. +# + + +from unittest.mock import Mock + +import pytest +from airbyte_cdk.sources.declarative.partition_routers.substream_partition_router import ParentStreamConfig +from source_typeform.components import FormIdPartitionRouter + +# test cases as a list of tuples (form_ids, parent_stream_configs, expected_slices) +test_cases = [ + ( + # test form ids present in config + ["form_id_1", "form_id_2"], + [{"stream": Mock(read_records=Mock(return_value=[{"id": "form_id_3"}, {"id": "form_id_4"}]))}], + [{"form_id": "form_id_1"}, {"form_id": "form_id_2"}], + ), + ( + # test no form ids in config + [], + [ + {"stream": Mock(read_records=Mock(return_value=[{"id": "form_id_3"}, {"id": "form_id_4"}]))}, + {"stream": Mock(read_records=Mock(return_value=[{"id": "form_id_5"}, {"id": "form_id_6"}]))}, + ], + [{"form_id": "form_id_3"}, {"form_id": "form_id_4"}, {"form_id": "form_id_5"}, {"form_id": "form_id_6"}], + ), +] + + +@pytest.mark.parametrize("form_ids, parent_stream_configs, expected_slices", test_cases) +def test_stream_slices(form_ids, parent_stream_configs, expected_slices): + stream_configs = [] + + for parent_stream_config in parent_stream_configs: + stream_config = ParentStreamConfig( + stream=parent_stream_config["stream"], parent_key=None, partition_field=None, config=None, parameters=None + ) + stream_configs.append(stream_config) + if not stream_configs: + stream_configs = [None] + + router = FormIdPartitionRouter(config={"form_ids": form_ids}, parent_stream_configs=stream_configs, parameters=None) + slices = list(router.stream_slices()) + + assert slices == expected_slices diff --git a/airbyte-integrations/connectors/source-typeform/unit_tests/test_responses_stream.py b/airbyte-integrations/connectors/source-typeform/unit_tests/test_responses_stream.py deleted file mode 100644 index 53aa38990976..000000000000 --- a/airbyte-integrations/connectors/source-typeform/unit_tests/test_responses_stream.py +++ /dev/null @@ -1,65 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - - -from typing import Any, Mapping, Optional - -import pendulum -from airbyte_cdk.sources.streams.http.auth import TokenAuthenticator -from pendulum.datetime import DateTime -from source_typeform.source import Responses - -start_date_str = "2020-06-27T15:32:38Z" -start_date = pendulum.parse(start_date_str) -start_date_ts = start_date.int_timestamp -config = {"token": "10", "start_date": start_date_str, "page_size": 2} - -UTC = pendulum.timezone("UTC") -responses = Responses(authenticator=TokenAuthenticator(token=config["token"]), **config) - - -def get_last_record(last_record_cursor: DateTime, form_id: Optional[str] = "form1") -> Mapping[str, Any]: - metadata = {"referer": f"http://134/{form_id}"} if form_id else {} - return {Responses.cursor_field: last_record_cursor.format(Responses.date_format), "metadata": metadata} - - -def test_get_updated_state_new(): - # current record cursor greater than current state - current_state = {"form1": {Responses.cursor_field: start_date_ts + 100000}} - last_record_cursor = pendulum.now(UTC) - last_record = get_last_record(last_record_cursor) - - new_state = responses.get_updated_state(current_state, last_record) - assert new_state["form1"][Responses.cursor_field] == last_record_cursor.format(Responses.date_format) - - -def test_get_updated_state_not_changed(): - # current record cursor less than current state - current_state = {"form1": {Responses.cursor_field: start_date_ts + 100000}} - last_record_cursor = pendulum.from_timestamp(start_date_ts + 100) - last_record = get_last_record(last_record_cursor) - - new_state = responses.get_updated_state(current_state, last_record) - assert new_state["form1"][Responses.cursor_field] == pendulum.from_timestamp(start_date_ts + 100000).format(Responses.date_format) - - -def test_get_updated_state_form_id_is_new(): - # current record has new form id which is not exists in current state - current_state = {"form1": {Responses.cursor_field: start_date_ts + 100000}} - last_record_cursor = pendulum.from_timestamp(start_date_ts + 100) - last_record = get_last_record(last_record_cursor, form_id="form2") - - new_state = responses.get_updated_state(current_state, last_record) - assert new_state["form2"][Responses.cursor_field] == last_record_cursor.format(Responses.date_format) - assert new_state["form1"][Responses.cursor_field] == start_date_ts + 100000 - - -def test_get_updated_state_form_id_not_found_in_record(): - # current record doesn't have form_id - current_state = {"form1": {Responses.cursor_field: 100000}} - last_record_cursor = pendulum.now(UTC) - last_record = get_last_record(last_record_cursor, form_id=None) - - new_state = responses.get_updated_state(current_state, last_record) - assert new_state["form1"][Responses.cursor_field] == 100000 diff --git a/airbyte-integrations/connectors/source-typeform/unit_tests/test_source.py b/airbyte-integrations/connectors/source-typeform/unit_tests/test_source.py deleted file mode 100644 index 50e4ce49a0e7..000000000000 --- a/airbyte-integrations/connectors/source-typeform/unit_tests/test_source.py +++ /dev/null @@ -1,63 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -import re - -from airbyte_cdk import AirbyteLogger -from source_typeform import SourceTypeform -from source_typeform.source import TypeformStream - -logger = AirbyteLogger() - -TYPEFORM_BASE_URL = TypeformStream.url_base - - -def test_check_connection_success(requests_mock, config, empty_response_ok): - requests_mock.register_uri("GET", TYPEFORM_BASE_URL + "me", empty_response_ok) - requests_mock.register_uri("GET", TYPEFORM_BASE_URL + "forms/u6nXL7", empty_response_ok) - requests_mock.register_uri("GET", TYPEFORM_BASE_URL + "forms/k9xNV4", empty_response_ok) - - ok, error = SourceTypeform().check_connection(logger, config) - - assert ok and not error - - -def test_check_connection_bad_request_me(requests_mock, config, empty_response_bad): - requests_mock.register_uri("GET", TYPEFORM_BASE_URL + "me", empty_response_bad) - - ok, error = SourceTypeform().check_connection(logger, config) - - assert not ok and error and re.match("Cannot authenticate, please verify token.", error) - - -def test_check_connection_bad_request_forms(requests_mock, config, empty_response_ok, empty_response_bad): - requests_mock.register_uri("GET", TYPEFORM_BASE_URL + "me", empty_response_ok) - requests_mock.register_uri("GET", TYPEFORM_BASE_URL + "forms/u6nXL7", empty_response_bad) - - ok, error = SourceTypeform().check_connection(logger, config) - - assert not ok and error and re.match("Cannot find forms with ID: u6nXL7", error) - - -def test_check_connection_empty(): - config = {} - - ok, error = SourceTypeform().check_connection(logger, config) - - assert not ok and error - - -def test_check_connection_incomplete(config): - credentials = config["credentials"] - credentials.pop("access_token") - - ok, error = SourceTypeform().check_connection(logger, config) - - assert not ok and error - - -def test_streams(config): - streams = SourceTypeform().streams(config) - - assert len(streams) == 6 diff --git a/airbyte-integrations/connectors/source-typeform/unit_tests/test_streams.py b/airbyte-integrations/connectors/source-typeform/unit_tests/test_streams.py deleted file mode 100644 index 125db0d02d9a..000000000000 --- a/airbyte-integrations/connectors/source-typeform/unit_tests/test_streams.py +++ /dev/null @@ -1,112 +0,0 @@ -# -# Copyright (c) 2023 Airbyte, Inc., all rights reserved. -# - -from typing import Any, List, Mapping -from unittest.mock import MagicMock - -from airbyte_cdk import AirbyteLogger -from airbyte_cdk.models import SyncMode -from source_typeform.source import Forms, Images, Responses, Themes, TypeformStream, Webhooks, Workspaces - -logger = AirbyteLogger() - -TYPEFORM_BASE_URL = TypeformStream.url_base - - -def merge_records(stream: TypeformStream, sync_mode: SyncMode) -> List[Mapping[str, Any]]: - merged_records = [] - for stream_slice in stream.stream_slices(sync_mode=sync_mode): - records = stream.read_records(sync_mode=sync_mode, stream_slice=stream_slice) - for record in records: - merged_records.append(record) - - return merged_records - - -def test_stream_forms_configured(requests_mock, config, form_response): - requests_mock.register_uri("GET", TYPEFORM_BASE_URL + "forms/u6nXL7", form_response) - requests_mock.register_uri("GET", TYPEFORM_BASE_URL + "forms/k9xNV4", form_response) - - stream = Forms(authenticator=MagicMock(), **config) - - merged_records = merge_records(stream, SyncMode.full_refresh) - - assert len(merged_records) == 2 - - -def test_stream_forms_unconfigured(requests_mock, config_without_forms, forms_response, form_response): - requests_mock.register_uri("GET", TYPEFORM_BASE_URL + "forms/u6nXL7", form_response) - requests_mock.register_uri("GET", TYPEFORM_BASE_URL + "forms/k9xNV4", form_response) - requests_mock.register_uri("GET", TYPEFORM_BASE_URL + "forms?page_size=200&page=1", forms_response) - - stream = Forms(authenticator=MagicMock(), **config_without_forms) - - merged_records = merge_records(stream, SyncMode.full_refresh) - - assert len(merged_records) == 2 - - -def test_stream_responses_configured(requests_mock, config, response_response): - requests_mock.register_uri("GET", TYPEFORM_BASE_URL + "forms/u6nXL7/responses", response_response) - requests_mock.register_uri("GET", TYPEFORM_BASE_URL + "forms/k9xNV4/responses", response_response) - - stream = Responses(authenticator=MagicMock(), **config) - - merged_records = merge_records(stream, SyncMode.incremental) - - assert len(merged_records) == 8 - - -def test_stream_responses_unconfigured(requests_mock, config_without_forms, forms_response, response_response): - requests_mock.register_uri("GET", TYPEFORM_BASE_URL + "forms/u6nXL7/responses", response_response) - requests_mock.register_uri("GET", TYPEFORM_BASE_URL + "forms/k9xNV4/responses", response_response) - requests_mock.register_uri("GET", TYPEFORM_BASE_URL + "forms?page_size=200&page=1", forms_response) - - stream = Responses(authenticator=MagicMock(), **config_without_forms) - - merged_records = merge_records(stream, SyncMode.incremental) - - assert len(merged_records) == 8 - - -def test_stream_webhooks(requests_mock, config, forms_response, webhooks_response): - requests_mock.register_uri("GET", TYPEFORM_BASE_URL + "forms/u6nXL7/webhooks", webhooks_response) - requests_mock.register_uri("GET", TYPEFORM_BASE_URL + "forms/k9xNV4/webhooks", webhooks_response) - requests_mock.register_uri("GET", TYPEFORM_BASE_URL + "forms?page_size=200&page=1", forms_response) - - stream = Webhooks(authenticator=MagicMock(), **config) - - merged_records = merge_records(stream, SyncMode.full_refresh) - - assert len(merged_records) == 2 - - -def test_stream_workspaces(requests_mock, config, workspaces_response): - requests_mock.register_uri("GET", TYPEFORM_BASE_URL + "workspaces?page=1&page_size=200", workspaces_response) - - stream = Workspaces(authenticator=MagicMock(), **config) - - merged_records = merge_records(stream, SyncMode.full_refresh) - - assert len(merged_records) == 2 - - -def test_stream_images(requests_mock, config, images_response): - requests_mock.register_uri("GET", TYPEFORM_BASE_URL + "images", images_response) - - stream = Images(authenticator=MagicMock(), **config) - - merged_records = merge_records(stream, SyncMode.full_refresh) - - assert len(merged_records) == 2 - - -def test_stream_themes(requests_mock, config, themes_response): - requests_mock.register_uri("GET", TYPEFORM_BASE_URL + "themes?page=1&page_size=200", themes_response) - - stream = Themes(authenticator=MagicMock(), **config) - - merged_records = merge_records(stream, SyncMode.full_refresh) - - assert len(merged_records) == 2 diff --git a/airbyte-integrations/connectors/source-woocommerce/metadata.yaml b/airbyte-integrations/connectors/source-woocommerce/metadata.yaml index 1415b8c68efc..9e34f36b4e55 100644 --- a/airbyte-integrations/connectors/source-woocommerce/metadata.yaml +++ b/airbyte-integrations/connectors/source-woocommerce/metadata.yaml @@ -1,4 +1,7 @@ data: + ab_internal: + ql: 300 + sl: 100 allowedHosts: hosts: - ${domain} @@ -7,6 +10,7 @@ data: definitionId: 2a2552ca-9f78-4c1c-9eb7-4d0dc66d72df dockerImageTag: 0.2.3 dockerRepository: airbyte/source-woocommerce + documentationUrl: https://docs.airbyte.com/integrations/sources/woocommerce githubIssueLabel: source-woocommerce icon: woocommerce.svg license: MIT @@ -17,12 +21,8 @@ data: oss: enabled: true releaseStage: beta - documentationUrl: https://docs.airbyte.com/integrations/sources/woocommerce + supportLevel: community tags: - language:low-code - language:python - ab_internal: - sl: 200 - ql: 300 - supportLevel: certified metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-yandex-metrica/metadata.yaml b/airbyte-integrations/connectors/source-yandex-metrica/metadata.yaml index 7fa1a9be1deb..31c05d9a4759 100644 --- a/airbyte-integrations/connectors/source-yandex-metrica/metadata.yaml +++ b/airbyte-integrations/connectors/source-yandex-metrica/metadata.yaml @@ -1,4 +1,7 @@ data: + ab_internal: + ql: 300 + sl: 100 allowedHosts: hosts: - api-metrica.yandex.net @@ -7,6 +10,7 @@ data: definitionId: 7865dce4-2211-4f6a-88e5-9d0fe161afe7 dockerImageTag: 1.0.0 dockerRepository: airbyte/source-yandex-metrica + documentationUrl: https://docs.airbyte.com/integrations/sources/yandex-metrica githubIssueLabel: source-yandex-metrica icon: yandexmetrica.svg license: MIT @@ -17,11 +21,7 @@ data: oss: enabled: true releaseStage: beta - documentationUrl: https://docs.airbyte.com/integrations/sources/yandex-metrica + supportLevel: community tags: - language:python - ab_internal: - sl: 200 - ql: 300 - supportLevel: certified metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-youtube-analytics/metadata.yaml b/airbyte-integrations/connectors/source-youtube-analytics/metadata.yaml index 0562428d329f..9cd1fe065eaa 100644 --- a/airbyte-integrations/connectors/source-youtube-analytics/metadata.yaml +++ b/airbyte-integrations/connectors/source-youtube-analytics/metadata.yaml @@ -1,4 +1,7 @@ data: + ab_internal: + ql: 300 + sl: 100 allowedHosts: hosts: - "*.googleapis.com" @@ -7,6 +10,7 @@ data: definitionId: afa734e4-3571-11ec-991a-1e0031268139 dockerImageTag: 0.1.4 dockerRepository: airbyte/source-youtube-analytics + documentationUrl: https://docs.airbyte.com/integrations/sources/youtube-analytics githubIssueLabel: source-youtube-analytics icon: youtube-analytics.svg license: MIT @@ -17,11 +21,7 @@ data: oss: enabled: true releaseStage: beta - documentationUrl: https://docs.airbyte.com/integrations/sources/youtube-analytics + supportLevel: community tags: - language:python - ab_internal: - sl: 200 - ql: 300 - supportLevel: certified metadataSpecVersion: "1.0" diff --git a/airbyte-integrations/connectors/source-zendesk-chat/acceptance-test-config.yml b/airbyte-integrations/connectors/source-zendesk-chat/acceptance-test-config.yml index b00d731dd5f3..c8bc3e42359a 100644 --- a/airbyte-integrations/connectors/source-zendesk-chat/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-zendesk-chat/acceptance-test-config.yml @@ -35,11 +35,6 @@ acceptance_tests: configured_catalog_path: "integration_tests/configured_catalog.json" future_state: bypass_reason: "Unable to use 'future_state_path' because Zendesk Chat API returns an error when specifying a date in the future." - cursor_paths: - agents: ["id"] - bans: ["id"] - agent_timeline: ["start_time"] - chats: ["update_timestamp"] full_refresh: tests: - config_path: "secrets/config.json" diff --git a/airbyte-integrations/connectors/source-zendesk-sell/Dockerfile b/airbyte-integrations/connectors/source-zendesk-sell/Dockerfile index 381fff970479..80ba9e83322f 100644 --- a/airbyte-integrations/connectors/source-zendesk-sell/Dockerfile +++ b/airbyte-integrations/connectors/source-zendesk-sell/Dockerfile @@ -34,5 +34,5 @@ COPY source_zendesk_sell ./source_zendesk_sell ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=0.1.0 +LABEL io.airbyte.version=0.1.1 LABEL io.airbyte.name=airbyte/source-zendesk-sell diff --git a/airbyte-integrations/connectors/source-zendesk-sell/metadata.yaml b/airbyte-integrations/connectors/source-zendesk-sell/metadata.yaml index 5920a672a86f..c03f4804fbf3 100644 --- a/airbyte-integrations/connectors/source-zendesk-sell/metadata.yaml +++ b/airbyte-integrations/connectors/source-zendesk-sell/metadata.yaml @@ -2,7 +2,7 @@ data: connectorSubtype: api connectorType: source definitionId: 982eaa4c-bba1-4cce-a971-06a41f700b8c - dockerImageTag: 0.1.0 + dockerImageTag: 0.1.1 dockerRepository: airbyte/source-zendesk-sell githubIssueLabel: source-zendesk-sell icon: zendesk.svg diff --git a/airbyte-integrations/connectors/source-zendesk-sell/source_zendesk_sell/schemas/calls.json b/airbyte-integrations/connectors/source-zendesk-sell/source_zendesk_sell/schemas/calls.json index 94612ce6a249..6b8b8dc37abe 100644 --- a/airbyte-integrations/connectors/source-zendesk-sell/source_zendesk_sell/schemas/calls.json +++ b/airbyte-integrations/connectors/source-zendesk-sell/source_zendesk_sell/schemas/calls.json @@ -21,7 +21,7 @@ "type": ["null", "number"] }, "phone_number": { - "type": ["null", "number"] + "type": ["null", "string"] }, "incoming": { "type": ["null", "boolean"] diff --git a/airbyte-integrations/connectors/source-zendesk-support/Dockerfile b/airbyte-integrations/connectors/source-zendesk-support/Dockerfile index 422f04e3f269..76e880ed9f13 100644 --- a/airbyte-integrations/connectors/source-zendesk-support/Dockerfile +++ b/airbyte-integrations/connectors/source-zendesk-support/Dockerfile @@ -25,5 +25,5 @@ COPY source_zendesk_support ./source_zendesk_support ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py" ENTRYPOINT ["python", "/airbyte/integration_code/main.py"] -LABEL io.airbyte.version=1.3.0 +LABEL io.airbyte.version=1.7.0 LABEL io.airbyte.name=airbyte/source-zendesk-support \ No newline at end of file diff --git a/airbyte-integrations/connectors/source-zendesk-support/acceptance-test-config.yml b/airbyte-integrations/connectors/source-zendesk-support/acceptance-test-config.yml index 39893d0528cc..fb956e46e31c 100644 --- a/airbyte-integrations/connectors/source-zendesk-support/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-zendesk-support/acceptance-test-config.yml @@ -38,15 +38,14 @@ acceptance_tests: bypass_reason: "not available in current subscription plan" - name: "post_comment_votes" bypass_reason: "not available in current subscription plan" + - name: "tags" + bypass_reason: "API issue" # TODO: remove this after all changes being merged incremental: tests: - config_path: "secrets/config.json" configured_catalog_path: "integration_tests/incremental_catalog.json" future_state: future_state_path: "integration_tests/abnormal_state.json" - cursor_paths: - ticket_comments: ["created_at"] - threshold_days: 100 full_refresh: tests: - config_path: "secrets/config.json" diff --git a/airbyte-integrations/connectors/source-zendesk-support/integration_tests/abnormal_state.json b/airbyte-integrations/connectors/source-zendesk-support/integration_tests/abnormal_state.json index 1f2f9af814dd..ffacf434d37b 100644 --- a/airbyte-integrations/connectors/source-zendesk-support/integration_tests/abnormal_state.json +++ b/airbyte-integrations/connectors/source-zendesk-support/integration_tests/abnormal_state.json @@ -124,5 +124,75 @@ "stream_state": { "updated_at": "2222-07-19T22:21:26Z" }, "stream_descriptor": { "name": "ticket_skips" } } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { "updated_at": "2222-07-19T22:21:26Z" }, + "stream_descriptor": { "name": "custom_roles" } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { "updated_at": "2222-07-19T22:21:26Z" }, + "stream_descriptor": { "name": "schedules" } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { "updated_at": "2222-07-19T22:21:26Z" }, + "stream_descriptor": { "name": "sla_policies" } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { "updated_at": "2222-07-19T22:21:26Z" }, + "stream_descriptor": { "name": "post_votes" } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { "updated_at": "2222-07-19T22:21:26Z" }, + "stream_descriptor": { "name": "post_comments" } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { "updated_at": "2222-07-19T22:21:26Z" }, + "stream_descriptor": { "name": "post_comment_votes" } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { "updated_at": "2222-07-19T22:21:26Z" }, + "stream_descriptor": { "name": "articles" } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { "updated_at": "2222-07-19T22:21:26Z" }, + "stream_descriptor": { "name": "article_votes" } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { "updated_at": "2222-07-19T22:21:26Z" }, + "stream_descriptor": { "name": "article_comments" } + } + }, + { + "type": "STREAM", + "stream": { + "stream_state": { "updated_at": "2222-07-19T22:21:26Z" }, + "stream_descriptor": { "name": "article_comment_votes" } + } } ] diff --git a/airbyte-integrations/connectors/source-zendesk-support/integration_tests/configured_catalog.json b/airbyte-integrations/connectors/source-zendesk-support/integration_tests/configured_catalog.json index 2ff49c6edcd7..7992e9dabc2e 100644 --- a/airbyte-integrations/connectors/source-zendesk-support/integration_tests/configured_catalog.json +++ b/airbyte-integrations/connectors/source-zendesk-support/integration_tests/configured_catalog.json @@ -1,17 +1,5 @@ { "streams": [ - { - "stream": { - "name": "articles", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "default_cursor_field": ["updated_at"], - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "full_refresh", - "destination_sync_mode": "append" - }, { "stream": { "name": "audit_logs", @@ -248,51 +236,6 @@ "sync_mode": "full_refresh", "destination_sync_mode": "append" }, - { - "stream": { - "name": "posts", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "default_cursor_field": ["updated_at"], - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "full_refresh", - "destination_sync_mode": "append" - }, - { - "stream": { - "name": "post_comments", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "full_refresh", - "destination_sync_mode": "append" - }, - { - "stream": { - "name": "post_votes", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "full_refresh", - "destination_sync_mode": "append" - }, - { - "stream": { - "name": "post_comment_votes", - "json_schema": {}, - "supported_sync_modes": ["full_refresh", "incremental"], - "source_defined_cursor": true, - "source_defined_primary_key": [["id"]] - }, - "sync_mode": "full_refresh", - "destination_sync_mode": "append" - }, { "stream": { "name": "organization_memberships", diff --git a/airbyte-integrations/connectors/source-zendesk-support/integration_tests/expected_records.jsonl b/airbyte-integrations/connectors/source-zendesk-support/integration_tests/expected_records.jsonl index efb260f8a610..4cb1550d013c 100644 --- a/airbyte-integrations/connectors/source-zendesk-support/integration_tests/expected_records.jsonl +++ b/airbyte-integrations/connectors/source-zendesk-support/integration_tests/expected_records.jsonl @@ -1,12 +1,19 @@ -{"stream":"articles","data":{"id":7253394952591,"url":"https://d3v-airbyte.zendesk.com/api/v2/help_center/en-us/articles/7253394952591.json","html_url":"https://d3v-airbyte.zendesk.com/hc/en-us/articles/7253394952591-How-do-I-customize-my-Help-Center-","author_id":360786799676,"comments_disabled":false,"draft":false,"promoted":false,"position":0,"vote_sum":0,"vote_count":0,"section_id":7253394947215,"created_at":"2023-06-22T00:32:20Z","updated_at":"2023-06-22T00:32:20Z","name":"How do I customize my Help Center?","title":"How do I customize my Help Center?","source_locale":"en-us","locale":"en-us","outdated":false,"outdated_locales":[],"edited_at":"2023-06-22T00:32:20Z","user_segment_id":null,"permission_group_id":7253379449487,"content_tag_ids":[],"label_names":[],"body":"

You can modify the look and feel of your Help Center by changing colors and fonts. See Branding your Help Center to learn how.

\n\n

You can also change the design of your Help Center. If you're comfortable working with page code, you can dig in to the site's HTML, CSS, and Javascript to customize your theme. To get started, see Customizing the Help Center.

"},"emitted_at":1693493353852} -{"stream":"articles","data":{"id":7253351877519,"url":"https://d3v-airbyte.zendesk.com/api/v2/help_center/en-us/articles/7253351877519.json","html_url":"https://d3v-airbyte.zendesk.com/hc/en-us/articles/7253351877519-Sample-article-Stellar-Skyonomy-refund-policies","author_id":360786799676,"comments_disabled":false,"draft":true,"promoted":false,"position":0,"vote_sum":0,"vote_count":0,"section_id":7253394933775,"created_at":"2023-06-22T00:32:20Z","updated_at":"2023-06-22T00:32:20Z","name":"Sample article: Stellar Skyonomy refund policies","title":"Sample article: Stellar Skyonomy refund policies","source_locale":"en-us","locale":"en-us","outdated":false,"outdated_locales":[],"edited_at":"2023-06-22T00:32:20Z","user_segment_id":null,"permission_group_id":7253379449487,"content_tag_ids":[],"label_names":[],"body":"

All Stellar Skyonomy merchandise purchases are backed by our 30-day satisfaction guarantee, no questions asked. We even pay to have it shipped back to us. Additionally, you can cancel your Stellar Skyonomy subscription at any time. Before you cancel, review our refund policies in this article.


Refund policy

We automatically issue a full refund when you initiate a return within 30 days of delivery.

To cancel an annual website subscription you can do so at any time and your refund will be prorated based on the cancellation date.


Request a refund

If you believe you’re eligible for a refund but haven’t received one, contact us by completing a refund request form. We review every refund and aim to respond within two business days.

If you haven't received a refund you're expecting, note that it can take up to 10 business days to appear on your card statement.

"},"emitted_at":1693493353853} -{"stream":"articles","data":{"id":7253391127951,"url":"https://d3v-airbyte.zendesk.com/api/v2/help_center/en-us/articles/7253391127951.json","html_url":"https://d3v-airbyte.zendesk.com/hc/en-us/articles/7253391127951-How-do-I-publish-my-content-in-other-languages-","author_id":360786799676,"comments_disabled":false,"draft":false,"promoted":false,"position":0,"vote_sum":0,"vote_count":0,"section_id":7253394947215,"created_at":"2023-06-22T00:32:20Z","updated_at":"2023-06-22T00:32:20Z","name":"How do I publish my content in other languages?","title":"How do I publish my content in other languages?","source_locale":"en-us","locale":"en-us","outdated":false,"outdated_locales":[],"edited_at":"2023-06-22T00:32:20Z","user_segment_id":null,"permission_group_id":7253379449487,"content_tag_ids":[],"label_names":[],"body":"

If you have configured your Help Center to support multiple languages, you can publish content in your supported languages.

\n\n

Here's the workflow for localizing your Help Center content into other languages:

\n\n
    \n
  1. Get your content translated in the other languages.
  2. \n
  3. Configure the Help Center to support all your languages.
  4. \n
  5. Add the translated content to the Help Center.
  6. \n
\n\n\n

For complete instructions, see Localizing the Help Center.

"},"emitted_at":1693493353853} -{"stream":"articles","data":{"id":7253391134863,"url":"https://d3v-airbyte.zendesk.com/api/v2/help_center/en-us/articles/7253391134863.json","html_url":"https://d3v-airbyte.zendesk.com/hc/en-us/articles/7253391134863-How-can-agents-leverage-knowledge-to-help-customers-","author_id":360786799676,"comments_disabled":false,"draft":false,"promoted":false,"position":0,"vote_sum":0,"vote_count":0,"section_id":7253394947215,"created_at":"2023-06-22T00:32:20Z","updated_at":"2023-06-22T00:32:20Z","name":"How can agents leverage knowledge to help customers?","title":"How can agents leverage knowledge to help customers?","source_locale":"en-us","locale":"en-us","outdated":false,"outdated_locales":[],"edited_at":"2023-06-22T00:32:20Z","user_segment_id":null,"permission_group_id":7253379449487,"content_tag_ids":[],"label_names":[],"body":"

You can use our Knowledge Capture app to leverage your team’s collective knowledge.

\n

Using the app, agents can:\n

    \n
  • Search the Help Center without leaving the ticket
  • \n
  • Insert links to relevant Help Center articles in ticket comments
  • \n
  • Add inline feedback to existing articles that need updates
  • \n
  • Create new articles while answering tickets using a pre-defined template
  • \n
\n\n\n

Agents never have to leave the ticket interface to share, flag, or create knowledge, so they can help the customer, while also improving your self-service offerings for other customers.

\n\n

To get started, see our Knowledge Capture documentation.

\n\n

And before your agents can start creating new knowledge directly from tickets, you’ll need to create a template for them to use. To help you along, we’ve provided some template ideas below. You can copy and paste any sample template below into a new article, add the KCTemplate label to the article, and you’ll be all set.

\n\n

Q&A template:

\n\n
\n\n

\n

\n

[Title]

\n\n\n

\n

\n

Question

\nwrite the question here.\n\n\n

\n

\n

Answer

\nwrite the answer here.\n\n\n
\n\n

Solution template:

\n\n
\n\n

\n

\n

[Title]

\n\n\n

\n

\n

Symptoms

\nwrite the symptoms here.\n\n\n

\n

\n

Resolution

\nwrite the resolution here.\n\n\n

\n

\n

Cause

\nwrite the cause here.\n\n\n
\n\n

How-to template:

\n\n
\n\n

\n

\n

[Title]

\n\n\n

\n

\n

Objective

\nwrite the purpose or task here.\n\n\n

\n

\n

Procedure

\nwrite the steps here.\n\n\n
\n"},"emitted_at":1693493353854} -{"stream":"articles","data":{"id":7253391120527,"url":"https://d3v-airbyte.zendesk.com/api/v2/help_center/en-us/articles/7253391120527.json","html_url":"https://d3v-airbyte.zendesk.com/hc/en-us/articles/7253391120527-What-are-these-sections-and-articles-doing-here-","author_id":360786799676,"comments_disabled":false,"draft":false,"promoted":false,"position":0,"vote_sum":0,"vote_count":0,"section_id":7253394947215,"created_at":"2023-06-22T00:32:20Z","updated_at":"2023-06-22T00:32:20Z","name":"What are these sections and articles doing here?","title":"What are these sections and articles doing here?","source_locale":"en-us","locale":"en-us","outdated":false,"outdated_locales":[],"edited_at":"2023-06-22T00:32:20Z","user_segment_id":null,"permission_group_id":7253379449487,"content_tag_ids":[],"label_names":[],"body":"

This FAQ is a section in the General category of your help center knowledge base. We created this category and a few common sections to help you get started with your Help Center.

\n\n

The knowledge base in the Help Center consists of three main page types: category pages, section pages, and articles. Here's the structure:

\n\n

\"Comments

\n\n

You can create your own categories, sections, and articles and modify or completely delete ours. See the Organizing knowledge base content and Creating articles in the Help Center to learn how.

"},"emitted_at":1693493353854} -{"stream":"articles","data":{"id":7253394935055,"url":"https://d3v-airbyte.zendesk.com/api/v2/help_center/en-us/articles/7253394935055.json","html_url":"https://d3v-airbyte.zendesk.com/hc/en-us/articles/7253394935055-Welcome-to-your-Help-Center-","author_id":360786799676,"comments_disabled":false,"draft":false,"promoted":false,"position":0,"vote_sum":0,"vote_count":0,"section_id":7253394933775,"created_at":"2023-06-22T00:32:19Z","updated_at":"2023-06-22T00:33:42Z","name":"Welcome to your Help Center!","title":"Welcome to your Help Center!","source_locale":"en-us","locale":"en-us","outdated":false,"outdated_locales":[],"edited_at":"2023-06-22T00:32:19Z","user_segment_id":null,"permission_group_id":7253379449487,"content_tag_ids":[],"label_names":[],"body":"

You're looking at your new Help Center. We populated it with placeholder content to help you get started. Feel free to edit or delete this content.

\n\n

The Help Center is designed to provide a complete self-service support option for your customers. The Help Center contains: a knowledge base and, on Guide Professional and Enterprise, a Customer Portal for support requests. You can also add a community to your Help Center if you have Zendesk Gather.

\n\n

Your customers can search for knowledge base articles to learn a task or search the community, if available, to ask fellow users questions. If your customers can't find an answer, they can submit a support request.

\n\n

For more information, see Help Center guide for end users.

Each user has a Help Center profile (Guide Professional and Enterprise), so your Help Center users can get to know one another better. Profiles contain relevant information about the user, along with their activities and contributions.

"},"emitted_at":1693493353854} +{"stream":"articles","data":{"id":7253394952591,"url":"https://d3v-airbyte.zendesk.com/api/v2/help_center/en-us/articles/7253394952591.json","html_url":"https://d3v-airbyte.zendesk.com/hc/en-us/articles/7253394952591-How-do-I-customize-my-Help-Center-","author_id":360786799676,"comments_disabled":false,"draft":false,"promoted":false,"position":0,"vote_sum":0,"vote_count":0,"section_id":7253394947215,"created_at":"2023-06-22T00:32:20Z","updated_at":"2023-06-22T00:32:20Z","name":"How do I customize my Help Center?","title":"How do I customize my Help Center?","source_locale":"en-us","locale":"en-us","outdated":false,"outdated_locales":[],"edited_at":"2023-06-22T00:32:20Z","user_segment_id":null,"permission_group_id":7253379449487,"content_tag_ids":[],"label_names":[],"body":"

You can modify the look and feel of your Help Center by changing colors and fonts. See Branding your Help Center to learn how.

\n\n

You can also change the design of your Help Center. If you're comfortable working with page code, you can dig in to the site's HTML, CSS, and Javascript to customize your theme. To get started, see Customizing the Help Center.

"},"emitted_at":1693841595187} +{"stream":"articles","data":{"id":7253351877519,"url":"https://d3v-airbyte.zendesk.com/api/v2/help_center/en-us/articles/7253351877519.json","html_url":"https://d3v-airbyte.zendesk.com/hc/en-us/articles/7253351877519-Sample-article-Stellar-Skyonomy-refund-policies","author_id":360786799676,"comments_disabled":false,"draft":true,"promoted":false,"position":0,"vote_sum":0,"vote_count":0,"section_id":7253394933775,"created_at":"2023-06-22T00:32:20Z","updated_at":"2023-06-22T00:32:20Z","name":"Sample article: Stellar Skyonomy refund policies","title":"Sample article: Stellar Skyonomy refund policies","source_locale":"en-us","locale":"en-us","outdated":false,"outdated_locales":[],"edited_at":"2023-06-22T00:32:20Z","user_segment_id":null,"permission_group_id":7253379449487,"content_tag_ids":[],"label_names":[],"body":"

All Stellar Skyonomy merchandise purchases are backed by our 30-day satisfaction guarantee, no questions asked. We even pay to have it shipped back to us. Additionally, you can cancel your Stellar Skyonomy subscription at any time. Before you cancel, review our refund policies in this article.


Refund policy

We automatically issue a full refund when you initiate a return within 30 days of delivery.

To cancel an annual website subscription you can do so at any time and your refund will be prorated based on the cancellation date.


Request a refund

If you believe you’re eligible for a refund but haven’t received one, contact us by completing a refund request form. We review every refund and aim to respond within two business days.

If you haven't received a refund you're expecting, note that it can take up to 10 business days to appear on your card statement.

"},"emitted_at":1693841595186} +{"stream":"articles","data":{"id":7253391127951,"url":"https://d3v-airbyte.zendesk.com/api/v2/help_center/en-us/articles/7253391127951.json","html_url":"https://d3v-airbyte.zendesk.com/hc/en-us/articles/7253391127951-How-do-I-publish-my-content-in-other-languages-","author_id":360786799676,"comments_disabled":false,"draft":false,"promoted":false,"position":0,"vote_sum":0,"vote_count":0,"section_id":7253394947215,"created_at":"2023-06-22T00:32:20Z","updated_at":"2023-06-22T00:32:20Z","name":"How do I publish my content in other languages?","title":"How do I publish my content in other languages?","source_locale":"en-us","locale":"en-us","outdated":false,"outdated_locales":[],"edited_at":"2023-06-22T00:32:20Z","user_segment_id":null,"permission_group_id":7253379449487,"content_tag_ids":[],"label_names":[],"body":"

If you have configured your Help Center to support multiple languages, you can publish content in your supported languages.

\n\n

Here's the workflow for localizing your Help Center content into other languages:

\n\n
    \n
  1. Get your content translated in the other languages.
  2. \n
  3. Configure the Help Center to support all your languages.
  4. \n
  5. Add the translated content to the Help Center.
  6. \n
\n\n\n

For complete instructions, see Localizing the Help Center.

"},"emitted_at":1693841595187} +{"stream":"articles","data":{"id":7253391134863,"url":"https://d3v-airbyte.zendesk.com/api/v2/help_center/en-us/articles/7253391134863.json","html_url":"https://d3v-airbyte.zendesk.com/hc/en-us/articles/7253391134863-How-can-agents-leverage-knowledge-to-help-customers-","author_id":360786799676,"comments_disabled":false,"draft":false,"promoted":false,"position":0,"vote_sum":0,"vote_count":0,"section_id":7253394947215,"created_at":"2023-06-22T00:32:20Z","updated_at":"2023-06-22T00:32:20Z","name":"How can agents leverage knowledge to help customers?","title":"How can agents leverage knowledge to help customers?","source_locale":"en-us","locale":"en-us","outdated":false,"outdated_locales":[],"edited_at":"2023-06-22T00:32:20Z","user_segment_id":null,"permission_group_id":7253379449487,"content_tag_ids":[],"label_names":[],"body":"

You can use our Knowledge Capture app to leverage your team’s collective knowledge.

\n

Using the app, agents can:\n

    \n
  • Search the Help Center without leaving the ticket
  • \n
  • Insert links to relevant Help Center articles in ticket comments
  • \n
  • Add inline feedback to existing articles that need updates
  • \n
  • Create new articles while answering tickets using a pre-defined template
  • \n
\n\n\n

Agents never have to leave the ticket interface to share, flag, or create knowledge, so they can help the customer, while also improving your self-service offerings for other customers.

\n\n

To get started, see our Knowledge Capture documentation.

\n\n

And before your agents can start creating new knowledge directly from tickets, you’ll need to create a template for them to use. To help you along, we’ve provided some template ideas below. You can copy and paste any sample template below into a new article, add the KCTemplate label to the article, and you’ll be all set.

\n\n

Q&A template:

\n\n
\n\n

\n

\n

[Title]

\n\n\n

\n

\n

Question

\nwrite the question here.\n\n\n

\n

\n

Answer

\nwrite the answer here.\n\n\n
\n\n

Solution template:

\n\n
\n\n

\n

\n

[Title]

\n\n\n

\n

\n

Symptoms

\nwrite the symptoms here.\n\n\n

\n

\n

Resolution

\nwrite the resolution here.\n\n\n

\n

\n

Cause

\nwrite the cause here.\n\n\n
\n\n

How-to template:

\n\n
\n\n

\n

\n

[Title]

\n\n\n

\n

\n

Objective

\nwrite the purpose or task here.\n\n\n

\n

\n

Procedure

\nwrite the steps here.\n\n\n
\n"},"emitted_at":1693841595186} +{"stream":"articles","data":{"id":7253391120527,"url":"https://d3v-airbyte.zendesk.com/api/v2/help_center/en-us/articles/7253391120527.json","html_url":"https://d3v-airbyte.zendesk.com/hc/en-us/articles/7253391120527-What-are-these-sections-and-articles-doing-here-","author_id":360786799676,"comments_disabled":false,"draft":false,"promoted":false,"position":0,"vote_sum":1,"vote_count":1,"section_id":7253394947215,"created_at":"2023-06-22T00:32:20Z","updated_at":"2023-09-04T13:52:58Z","name":"What are these sections and articles doing here?","title":"What are these sections and articles doing here?","source_locale":"en-us","locale":"en-us","outdated":false,"outdated_locales":[],"edited_at":"2023-06-22T00:32:20Z","user_segment_id":null,"permission_group_id":7253379449487,"content_tag_ids":[],"label_names":[],"body":"

This FAQ is a section in the General category of your help center knowledge base. We created this category and a few common sections to help you get started with your Help Center.

\n\n

The knowledge base in the Help Center consists of three main page types: category pages, section pages, and articles. Here's the structure:

\n\n

\"Comments

\n\n

You can create your own categories, sections, and articles and modify or completely delete ours. See the Organizing knowledge base content and Creating articles in the Help Center to learn how.

"},"emitted_at":1693841595187} +{"stream":"articles","data":{"id":7253394935055,"url":"https://d3v-airbyte.zendesk.com/api/v2/help_center/en-us/articles/7253394935055.json","html_url":"https://d3v-airbyte.zendesk.com/hc/en-us/articles/7253394935055-Welcome-to-your-Help-Center-","author_id":360786799676,"comments_disabled":false,"draft":false,"promoted":false,"position":0,"vote_sum":1,"vote_count":1,"section_id":7253394933775,"created_at":"2023-06-22T00:32:19Z","updated_at":"2023-09-04T13:52:38Z","name":"Welcome to your Help Center!","title":"Welcome to your Help Center!","source_locale":"en-us","locale":"en-us","outdated":false,"outdated_locales":[],"edited_at":"2023-06-22T00:32:19Z","user_segment_id":null,"permission_group_id":7253379449487,"content_tag_ids":[],"label_names":[],"body":"

You're looking at your new Help Center. We populated it with placeholder content to help you get started. Feel free to edit or delete this content.

\n\n

The Help Center is designed to provide a complete self-service support option for your customers. The Help Center contains: a knowledge base and, on Guide Professional and Enterprise, a Customer Portal for support requests. You can also add a community to your Help Center if you have Zendesk Gather.

\n\n

Your customers can search for knowledge base articles to learn a task or search the community, if available, to ask fellow users questions. If your customers can't find an answer, they can submit a support request.

\n\n

For more information, see Help Center guide for end users.

Each user has a Help Center profile (Guide Professional and Enterprise), so your Help Center users can get to know one another better. Profiles contain relevant information about the user, along with their activities and contributions.

"},"emitted_at":1693841595187} +{"stream":"article_comments","data":{"id":7253381447311,"url":"https://d3v-airbyte.zendesk.com/api/v2/help_center/en-us/articles/7253394935055/comments/7253381447311.json","body":"

Test comment 2

","author_id":360786799676,"source_id":7253394935055,"source_type":"Article","html_url":"https://d3v-airbyte.zendesk.com/hc/en-us/articles/7253394935055/comments/7253381447311","locale":"en-us","created_at":"2023-06-22T00:33:36Z","updated_at":"2023-06-22T00:33:42Z","vote_sum":-1,"vote_count":1,"non_author_editor_id":null,"non_author_updated_at":null},"emitted_at":1693835587672} +{"stream":"article_comments","data":{"id":7253366869647,"url":"https://d3v-airbyte.zendesk.com/api/v2/help_center/en-us/articles/7253394935055/comments/7253366869647.json","body":"

Test comment

","author_id":360786799676,"source_id":7253394935055,"source_type":"Article","html_url":"https://d3v-airbyte.zendesk.com/hc/en-us/articles/7253394935055/comments/7253366869647","locale":"en-us","created_at":"2023-06-22T00:33:29Z","updated_at":"2023-06-22T00:33:40Z","vote_sum":1,"vote_count":1,"non_author_editor_id":null,"non_author_updated_at":null},"emitted_at":1693835587672} +{"stream":"article_votes","data":{"id":7816935174287,"url":"https://d3v-airbyte.zendesk.com/api/v2/help_center/votes/7816935174287.json","user_id":360786799676,"value":1,"item_id":7253394935055,"item_type":"Article","created_at":"2023-09-04T13:52:38Z","updated_at":"2023-09-04T13:52:38Z"},"emitted_at":1693835592223} +{"stream":"article_votes","data":{"id":7816935384335,"url":"https://d3v-airbyte.zendesk.com/api/v2/help_center/votes/7816935384335.json","user_id":360786799676,"value":1,"item_id":7253391120527,"item_type":"Article","created_at":"2023-09-04T13:52:58Z","updated_at":"2023-09-04T13:52:58Z"},"emitted_at":1693835592686} +{"stream":"article_comment_votes","data":{"id":7253393200655,"url":"https://d3v-airbyte.zendesk.com/api/v2/help_center/votes/7253393200655.json","user_id":360786799676,"value":-1,"item_id":7253381447311,"item_type":"Comment","created_at":"2023-06-22T00:33:42Z","updated_at":"2023-06-22T00:33:42Z"},"emitted_at":1693835598941} +{"stream":"article_comment_votes","data":{"id":7253381522703,"url":"https://d3v-airbyte.zendesk.com/api/v2/help_center/votes/7253381522703.json","user_id":360786799676,"value":1,"item_id":7253366869647,"item_type":"Comment","created_at":"2023-06-22T00:33:40Z","updated_at":"2023-06-22T00:33:40Z"},"emitted_at":1693835599304} {"stream": "audit_logs", "data": {"url": "https://d3v-airbyte.zendesk.com/api/v2/audit_logs/7502393054223.json", "id": 7502393054223, "action_label": "Signed in", "actor_id": 360786799676, "source_id": 360786799676, "source_type": "user", "source_label": "Team member: Team Airbyte", "action": "login", "change_description": "Successful sign-in using Zendesk password from https://d3v-airbyte.zendesk.com/access/login", "ip_address": "109.86.166.58", "created_at": "2023-07-24T10:56:28Z", "actor_name": "Team Airbyte"}, "emitted_at": 1690888150345} {"stream": "audit_logs", "data": {"url": "https://d3v-airbyte.zendesk.com/api/v2/audit_logs/7465455408271.json", "id": 7465455408271, "action_label": "Signed in", "actor_id": 360786799676, "source_id": 360786799676, "source_type": "user", "source_label": "Team member: Team Airbyte", "action": "login", "change_description": "Successful sign-in using Zendesk password from https://d3v-airbyte.zendesk.com/access/login", "ip_address": "109.86.166.58", "created_at": "2023-07-21T08:03:28Z", "actor_name": "Team Airbyte"}, "emitted_at": 1690888150346} {"stream": "audit_logs", "data": {"url": "https://d3v-airbyte.zendesk.com/api/v2/audit_logs/7453133196303.json", "id": 7453133196303, "action_label": "Signed in", "actor_id": 360786799676, "source_id": 360786799676, "source_type": "user", "source_label": "Team member: Team Airbyte", "action": "login", "change_description": "Successful sign-in using Zendesk password from https://d3v-airbyte.zendesk.com/access/login", "ip_address": "136.24.229.166", "created_at": "2023-07-19T19:09:32Z", "actor_name": "Team Airbyte"}, "emitted_at": 1690888150346} +{"stream":"deleted_tickets","data":{"id":123,"subject":"Voicemail from: Caller +1 (607) 210-9549","description":"Call from: +1 (607) 210-9549\\nTime of call: July 13, 2022 at 2:33:27 PM","actor":{"id":360786799676,"name":"Team Airbyte"},"deleted_at":"2023-09-07T16:46:02Z","previous_state":"new"},"emitted_at":1694110102400} {"stream": "group_memberships", "data": {"url": "https://d3v-airbyte.zendesk.com/api/v2/group_memberships/360007820916.json", "id": 360007820916, "user_id": 360786799676, "group_id": 360003074836, "default": true, "created_at": "2020-12-11T18:34:05Z", "updated_at": "2020-12-11T18:34:05Z"}, "emitted_at": 1690888151470} {"stream": "group_memberships", "data": {"url": "https://d3v-airbyte.zendesk.com/api/v2/group_memberships/360011727976.json", "id": 360011727976, "user_id": 361084605116, "group_id": 360003074836, "default": true, "created_at": "2021-04-23T14:33:11Z", "updated_at": "2021-04-23T14:33:11Z"}, "emitted_at": 1690888151471} {"stream": "group_memberships", "data": {"url": "https://d3v-airbyte.zendesk.com/api/v2/group_memberships/360011812655.json", "id": 360011812655, "user_id": 361089721035, "group_id": 360003074836, "default": true, "created_at": "2021-04-23T14:34:20Z", "updated_at": "2021-04-23T14:34:20Z"}, "emitted_at": 1690888151471} @@ -29,9 +36,6 @@ {"stream": "satisfaction_ratings", "data": {"url": "https://d3v-airbyte.zendesk.com/api/v2/satisfaction_ratings/5527212710799.json", "id": 5527212710799, "assignee_id": null, "group_id": null, "requester_id": 5527080499599, "ticket_id": 144, "score": "offered", "created_at": "2022-09-19T16:01:43Z", "updated_at": "2022-09-19T16:01:43Z", "comment": null}, "emitted_at": 1690888165602} {"stream": "sla_policies", "data": {"url": "https://d3v-airbyte.zendesk.com/api/v2/slas/policies/360001110696.json", "id": 360001110696, "title": "test police", "description": "for tests", "position": 1, "filter": {"all": [{"field": "assignee_id", "operator": "is", "value": 361089721035}], "any": []}, "policy_metrics": [{"priority": "high", "metric": "first_reply_time", "target": 61, "business_hours": false}], "created_at": "2021-07-16T11:05:31Z", "updated_at": "2021-07-16T11:05:31Z"}, "emitted_at": 1690888166730} {"stream": "sla_policies", "data": {"url": "https://d3v-airbyte.zendesk.com/api/v2/slas/policies/360001113715.json", "id": 360001113715, "title": "test police 2", "description": "test police 2", "position": 2, "filter": {"all": [{"field": "organization_id", "operator": "is", "value": 360033549136}], "any": []}, "policy_metrics": [{"priority": "high", "metric": "first_reply_time", "target": 121, "business_hours": false}], "created_at": "2021-07-16T11:06:01Z", "updated_at": "2021-07-16T11:06:01Z"}, "emitted_at": 1690888166731} -{"stream": "tags", "data": {"name": "test", "count": 6}, "emitted_at": 1690888168471} -{"stream": "tags", "data": {"name": "tag2", "count": 3}, "emitted_at": 1690888168472} -{"stream": "tags", "data": {"name": "tag1", "count": 2}, "emitted_at": 1690888168472} {"stream": "ticket_audits", "data": {"id": 7429253845903, "ticket_id": 152, "created_at": "2023-07-16T12:01:39Z", "author_id": -1, "metadata": {"system": {}, "custom": {}}, "events": [{"id": 7429253846031, "type": "Change", "value": "closed", "field_name": "status", "previous_value": "solved"}], "via": {"channel": "rule", "source": {"to": {}, "from": {"deleted": false, "title": "Close ticket 4 days after status is set to solved", "id": 6241378811151}, "rel": "automation"}}}, "emitted_at": 1690888174095} {"stream": "ticket_audits", "data": {"id": 7283194465039, "ticket_id": 141, "created_at": "2023-06-26T12:15:34Z", "author_id": 360786799676, "metadata": {"system": {"client": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Edg/114.0.1823.58", "ip_address": "85.209.47.207", "location": "Kyiv, 30, Ukraine", "latitude": 50.458, "longitude": 30.5303}, "custom": {}}, "events": [{"id": 7283194465167, "type": "Change", "value": "7282634891791", "field_name": "assignee_id", "previous_value": null}, {"id": 7283194465295, "type": "Change", "value": "360006394556", "field_name": "group_id", "previous_value": null}, {"id": 7283194465423, "type": "Notification", "via": {"channel": "rule", "source": {"from": {"deleted": false, "title": "Notify assignee of assignment", "id": 360011363256, "revision_id": 1}, "rel": "trigger"}}, "subject": "[{{ticket.account}}] Assignment: {{ticket.title}}", "body": "You have been assigned to this ticket (#{{ticket.id}}).\n\n{{ticket.comments_formatted}}", "recipients": [7282634891791]}], "via": {"channel": "web", "source": {"from": {}, "to": {}, "rel": null}}}, "emitted_at": 1690888174096} {"stream": "ticket_audits", "data": {"id": 7283163099535, "ticket_id": 153, "created_at": "2023-06-26T12:13:42Z", "author_id": 360786799676, "metadata": {"system": {"client": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Edg/114.0.1823.58", "ip_address": "85.209.47.207", "location": "Kyiv, 30, Ukraine", "latitude": 50.458, "longitude": 30.5303}, "custom": {}}, "events": [{"id": 7283163099663, "type": "Change", "value": "7282634891791", "field_name": "assignee_id", "previous_value": "360786799676"}, {"id": 7283163099791, "type": "Change", "value": "360006394556", "field_name": "group_id", "previous_value": "6770788212111"}, {"id": 7283163099919, "type": "Notification", "via": {"channel": "rule", "source": {"from": {"deleted": false, "title": "Notify assignee of assignment", "id": 360011363256, "revision_id": 1}, "rel": "trigger"}}, "subject": "[{{ticket.account}}] Assignment: {{ticket.title}}", "body": "You have been assigned to this ticket (#{{ticket.id}}).\n\n{{ticket.comments_formatted}}", "recipients": [7282634891791]}], "via": {"channel": "web", "source": {"from": {}, "to": {}, "rel": null}}}, "emitted_at": 1690888174097} @@ -49,9 +53,8 @@ {"stream": "ticket_metric_events", "data": {"id": 4992797383439, "ticket_id": 121, "metric": "reply_time", "instance_id": 0, "type": "measure", "time": "2022-06-17T14:49:20Z"}, "emitted_at": 1690888180348} {"stream": "ticket_skips", "data": {"id": 7290033348623, "ticket_id": 121, "user_id": 360786799676, "reason": "I have no idea.", "created_at": "2023-06-27T08:24:02Z", "updated_at": "2023-06-27T08:24:02Z", "ticket": {"url": "https://d3v-airbyte.zendesk.com/api/v2/tickets/121.json", "id": 121, "external_id": null, "via": {"channel": "voice", "source": {"rel": "voicemail", "from": {"formatted_phone": "+1 (689) 689-8023", "phone": "+16896898023", "name": "Caller +1 (689) 689-8023"}, "to": {"formatted_phone": "+1 (205) 953-1462", "phone": "+12059531462", "name": "Airbyte", "brand_id": 360000358316}}}, "created_at": "2022-06-17T14:49:20Z", "updated_at": "2022-06-17T16:01:42Z", "type": null, "subject": "Voicemail from: Caller +1 (689) 689-8023", "raw_subject": "Voicemail from: Caller +1 (689) 689-8023", "description": "Call from: +1 (689) 689-8023\\nTime of call: June 17, 2022 at 2:48:27 PM", "priority": null, "status": "new", "recipient": null, "requester_id": 4992781783439, "submitter_id": 4992781783439, "assignee_id": null, "organization_id": null, "group_id": null, "collaborator_ids": [], "follower_ids": [], "email_cc_ids": [], "forum_topic_id": null, "problem_id": null, "has_incidents": false, "is_public": false, "due_at": null, "tags": [], "custom_fields": [], "satisfaction_rating": {"score": "offered"}, "sharing_agreement_ids": [], "custom_status_id": 4044356, "fields": [], "followup_ids": [], "ticket_form_id": 360000084116, "deleted_ticket_form_id": null, "brand_id": 360000358316, "allow_channelback": false, "allow_attachments": true, "from_messaging_channel": false}}, "emitted_at": 1690888182191} {"stream": "ticket_skips", "data": {"id": 7290088475023, "ticket_id": 125, "user_id": 360786799676, "reason": "Another test skip.", "created_at": "2023-06-27T08:30:01Z", "updated_at": "2023-06-27T08:30:01Z", "ticket": {"url": "https://d3v-airbyte.zendesk.com/api/v2/tickets/125.json", "id": 125, "external_id": null, "via": {"channel": "web", "source": {"from": {}, "to": {}, "rel": null}}, "created_at": "2022-07-18T10:16:53Z", "updated_at": "2022-07-18T10:36:02Z", "type": "question", "subject": "Ticket Test 2", "raw_subject": "Ticket Test 2", "description": "238473846", "priority": "urgent", "status": "open", "recipient": null, "requester_id": 360786799676, "submitter_id": 360786799676, "assignee_id": 361089721035, "organization_id": 360033549136, "group_id": 5059439464079, "collaborator_ids": [360786799676], "follower_ids": [360786799676], "email_cc_ids": [], "forum_topic_id": null, "problem_id": null, "has_incidents": false, "is_public": false, "due_at": null, "tags": [], "custom_fields": [], "satisfaction_rating": {"score": "unoffered"}, "sharing_agreement_ids": [], "custom_status_id": 4044376, "fields": [], "followup_ids": [], "ticket_form_id": 360000084116, "deleted_ticket_form_id": null, "brand_id": 360000358316, "allow_channelback": false, "allow_attachments": true, "from_messaging_channel": false}}, "emitted_at": 1690888182192} -{"stream": "tickets", "data": {"url": "https://d3v-airbyte.zendesk.com/api/v2/tickets/121.json", "id": 121, "external_id": null, "via": {"channel": "voice", "source": {"rel": "voicemail", "from": {"formatted_phone": "+1 (689) 689-8023", "phone": "+16896898023", "name": "Caller +1 (689) 689-8023"}, "to": {"formatted_phone": "+1 (205) 953-1462", "phone": "+12059531462", "name": "Airbyte", "brand_id": 360000358316}}}, "created_at": "2022-06-17T14:49:20Z", "updated_at": "2022-06-17T16:01:42Z", "type": null, "subject": "Voicemail from: Caller +1 (689) 689-8023", "raw_subject": "Voicemail from: Caller +1 (689) 689-8023", "description": "Call from: +1 (689) 689-8023\\nTime of call: June 17, 2022 at 2:48:27 PM", "priority": null, "status": "new", "recipient": null, "requester_id": 4992781783439, "submitter_id": 4992781783439, "assignee_id": null, "organization_id": null, "group_id": null, "collaborator_ids": [], "follower_ids": [], "email_cc_ids": [], "forum_topic_id": null, "problem_id": null, "has_incidents": false, "is_public": false, "due_at": null, "tags": [], "custom_fields": [], "satisfaction_rating": {"score": "offered"}, "sharing_agreement_ids": [], "custom_status_id": 4044356, "fields": [], "followup_ids": [], "ticket_form_id": 360000084116, "brand_id": 360000358316, "allow_channelback": false, "allow_attachments": true, "from_messaging_channel": false, "generated_timestamp": 1655481702}, "emitted_at": 1690888183377} -{"stream": "tickets", "data": {"url": "https://d3v-airbyte.zendesk.com/api/v2/tickets/122.json", "id": 122, "external_id": null, "via": {"channel": "voice", "source": {"rel": "voicemail", "from": {"formatted_phone": "+1 (912) 420-0314", "phone": "+19124200314", "name": "Caller +1 (912) 420-0314"}, "to": {"formatted_phone": "+1 (205) 953-1462", "phone": "+12059531462", "name": "Airbyte", "brand_id": 360000358316}}}, "created_at": "2022-06-17T19:52:39Z", "updated_at": "2022-06-17T21:01:41Z", "type": null, "subject": "Voicemail from: Caller +1 (912) 420-0314", "raw_subject": "Voicemail from: Caller +1 (912) 420-0314", "description": "Call from: +1 (912) 420-0314\\nTime of call: June 17, 2022 at 7:52:02 PM", "priority": null, "status": "new", "recipient": null, "requester_id": 4993467856015, "submitter_id": 4993467856015, "assignee_id": null, "organization_id": null, "group_id": null, "collaborator_ids": [], "follower_ids": [], "email_cc_ids": [], "forum_topic_id": null, "problem_id": null, "has_incidents": false, "is_public": false, "due_at": null, "tags": [], "custom_fields": [], "satisfaction_rating": {"score": "offered"}, "sharing_agreement_ids": [], "custom_status_id": 4044356, "fields": [], "followup_ids": [], "ticket_form_id": 360000084116, "brand_id": 360000358316, "allow_channelback": false, "allow_attachments": true, "from_messaging_channel": false, "generated_timestamp": 1655499701}, "emitted_at": 1690888183379} -{"stream": "tickets", "data": {"url": "https://d3v-airbyte.zendesk.com/api/v2/tickets/123.json", "id": 123, "external_id": null, "via": {"channel": "voice", "source": {"rel": "voicemail", "from": {"formatted_phone": "+1 (607) 210-9549", "phone": "+16072109549", "name": "Caller +1 (607) 210-9549"}, "to": {"formatted_phone": "+1 (205) 953-1462", "phone": "+12059531462", "name": "Airbyte", "brand_id": 360000358316}}}, "created_at": "2022-07-13T14:34:05Z", "updated_at": "2022-07-13T16:02:03Z", "type": null, "subject": "Voicemail from: Caller +1 (607) 210-9549", "raw_subject": "Voicemail from: Caller +1 (607) 210-9549", "description": "Call from: +1 (607) 210-9549\\nTime of call: July 13, 2022 at 2:33:27 PM", "priority": null, "status": "new", "recipient": null, "requester_id": 5137812260495, "submitter_id": 5137812260495, "assignee_id": null, "organization_id": null, "group_id": null, "collaborator_ids": [], "follower_ids": [], "email_cc_ids": [], "forum_topic_id": null, "problem_id": null, "has_incidents": false, "is_public": false, "due_at": null, "tags": [], "custom_fields": [], "satisfaction_rating": {"score": "offered"}, "sharing_agreement_ids": [], "custom_status_id": 4044356, "fields": [], "followup_ids": [], "ticket_form_id": 360000084116, "brand_id": 360000358316, "allow_channelback": false, "allow_attachments": true, "from_messaging_channel": false, "generated_timestamp": 1657728123}, "emitted_at": 1690888183380} +{"stream":"tickets","data":{"url":"https://d3v-airbyte.zendesk.com/api/v2/tickets/121.json","id":121,"external_id":null,"via":{"channel":"voice","source":{"rel":"voicemail","from":{"formatted_phone":"+1 (689) 689-8023","phone":"+16896898023","name":"Caller +1 (689) 689-8023"},"to":{"formatted_phone":"+1 (205) 953-1462","phone":"+12059531462","name":"Airbyte","brand_id":360000358316}}},"created_at":"2022-06-17T14:49:20Z","updated_at":"2022-06-17T16:01:42Z","type":null,"subject":"Voicemail from: Caller +1 (689) 689-8023","raw_subject":"Voicemail from: Caller +1 (689) 689-8023","description":"Call from: +1 (689) 689-8023\\nTime of call: June 17, 2022 at 2:48:27 PM","priority":null,"status":"new","recipient":null,"requester_id":4992781783439,"submitter_id":4992781783439,"assignee_id":null,"organization_id":null,"group_id":null,"collaborator_ids":[],"follower_ids":[],"email_cc_ids":[],"forum_topic_id":null,"problem_id":null,"has_incidents":false,"is_public":false,"due_at":null,"tags":[],"custom_fields":[],"satisfaction_rating":{"score":"offered"},"sharing_agreement_ids":[],"custom_status_id":4044356,"fields":[],"followup_ids":[],"ticket_form_id":360000084116,"brand_id":360000358316,"allow_channelback":false,"allow_attachments":true,"from_messaging_channel":false,"generated_timestamp":1655481702},"emitted_at":1694176872771} +{"stream":"tickets","data":{"url":"https://d3v-airbyte.zendesk.com/api/v2/tickets/122.json","id":122,"external_id":null,"via":{"channel":"voice","source":{"rel":"voicemail","from":{"formatted_phone":"+1 (912) 420-0314","phone":"+19124200314","name":"Caller +1 (912) 420-0314"},"to":{"formatted_phone":"+1 (205) 953-1462","phone":"+12059531462","name":"Airbyte","brand_id":360000358316}}},"created_at":"2022-06-17T19:52:39Z","updated_at":"2022-06-17T21:01:41Z","type":null,"subject":"Voicemail from: Caller +1 (912) 420-0314","raw_subject":"Voicemail from: Caller +1 (912) 420-0314","description":"Call from: +1 (912) 420-0314\\nTime of call: June 17, 2022 at 7:52:02 PM","priority":null,"status":"new","recipient":null,"requester_id":4993467856015,"submitter_id":4993467856015,"assignee_id":null,"organization_id":null,"group_id":null,"collaborator_ids":[],"follower_ids":[],"email_cc_ids":[],"forum_topic_id":null,"problem_id":null,"has_incidents":false,"is_public":false,"due_at":null,"tags":[],"custom_fields":[],"satisfaction_rating":{"score":"offered"},"sharing_agreement_ids":[],"custom_status_id":4044356,"fields":[],"followup_ids":[],"ticket_form_id":360000084116,"brand_id":360000358316,"allow_channelback":false,"allow_attachments":true,"from_messaging_channel":false,"generated_timestamp":1655499701},"emitted_at":1694176872772} {"stream":"users","data":{"id":4992781783439,"url":"https://d3v-airbyte.zendesk.com/api/v2/users/4992781783439.json","name":"Caller +1 (689) 689-8023","email":null,"created_at":"2022-06-17T14:49:19Z","updated_at":"2022-06-17T14:49:19Z","time_zone":"Pacific/Noumea","iana_time_zone":"Pacific/Noumea","phone":"+16896898023","shared_phone_number":false,"photo":null,"locale_id":1,"locale":"en-US","organization_id":null,"role":"end-user","verified":true,"external_id":null,"tags":[],"alias":null,"active":true,"shared":false,"shared_agent":false,"last_login_at":null,"two_factor_auth_enabled":false,"signature":null,"details":null,"notes":null,"role_type":null,"custom_role_id":null,"moderator":false,"ticket_restriction":"requested","only_private_comments":false,"restricted_agent":true,"suspended":false,"default_group_id":null,"report_csv":false,"user_fields":{"test_display_name_checkbox_field":false,"test_display_name_decimal_field":null,"test_display_name_text_field":null}},"emitted_at":1693221422922} {"stream":"users","data":{"id":4993467856015,"url":"https://d3v-airbyte.zendesk.com/api/v2/users/4993467856015.json","name":"Caller +1 (912) 420-0314","email":null,"created_at":"2022-06-17T19:52:38Z","updated_at":"2022-06-17T19:52:38Z","time_zone":"Pacific/Noumea","iana_time_zone":"Pacific/Noumea","phone":"+19124200314","shared_phone_number":false,"photo":null,"locale_id":1,"locale":"en-US","organization_id":null,"role":"end-user","verified":true,"external_id":null,"tags":[],"alias":null,"active":true,"shared":false,"shared_agent":false,"last_login_at":null,"two_factor_auth_enabled":false,"signature":null,"details":null,"notes":null,"role_type":null,"custom_role_id":null,"moderator":false,"ticket_restriction":"requested","only_private_comments":false,"restricted_agent":true,"suspended":false,"default_group_id":null,"report_csv":false,"user_fields":{"test_display_name_checkbox_field":false,"test_display_name_decimal_field":null,"test_display_name_text_field":null}},"emitted_at":1693221422922} {"stream":"users","data":{"id":5137812260495,"url":"https://d3v-airbyte.zendesk.com/api/v2/users/5137812260495.json","name":"Caller +1 (607) 210-9549","email":null,"created_at":"2022-07-13T14:34:04Z","updated_at":"2022-07-13T14:34:04Z","time_zone":"Pacific/Noumea","iana_time_zone":"Pacific/Noumea","phone":"+16072109549","shared_phone_number":false,"photo":null,"locale_id":1,"locale":"en-US","organization_id":null,"role":"end-user","verified":true,"external_id":null,"tags":[],"alias":null,"active":true,"shared":false,"shared_agent":false,"last_login_at":null,"two_factor_auth_enabled":false,"signature":null,"details":null,"notes":null,"role_type":null,"custom_role_id":null,"moderator":false,"ticket_restriction":"requested","only_private_comments":false,"restricted_agent":true,"suspended":false,"default_group_id":null,"report_csv":false,"user_fields":{"test_display_name_checkbox_field":false,"test_display_name_decimal_field":null,"test_display_name_text_field":null}},"emitted_at":1693221422922} @@ -60,7 +63,7 @@ {"stream": "custom_roles", "data": {"id": 360000210596, "name": "Staff", "description": "Can edit tickets within their groups", "role_type": 0, "created_at": "2020-12-11T18:34:36Z", "updated_at": "2020-12-11T18:34:36Z", "configuration": {"chat_access": true, "end_user_list_access": "full", "forum_access_restricted_content": false, "light_agent": false, "manage_business_rules": false, "manage_dynamic_content": false, "manage_extensions_and_channels": false, "manage_facebook": false, "moderate_forums": false, "side_conversation_create": true, "ticket_access": "within-groups", "ticket_comment_access": "public", "ticket_deletion": false, "ticket_tag_editing": false, "twitter_search_access": false, "view_deleted_tickets": false, "voice_access": true, "group_access": false, "organization_editing": false, "organization_notes_editing": false, "assign_tickets_to_any_group": false, "end_user_profile_access": "readonly", "explore_access": "readonly", "forum_access": "readonly", "macro_access": "manage-personal", "report_access": "readonly", "ticket_editing": true, "ticket_merge": false, "user_view_access": "manage-personal", "view_access": "manage-personal", "voice_dashboard_access": false, "manage_automations": false, "manage_contextual_workspaces": false, "manage_organization_fields": false, "manage_skills": false, "manage_slas": false, "manage_ticket_fields": false, "manage_ticket_forms": false, "manage_user_fields": false, "ticket_redaction": false, "manage_roles": "none", "manage_groups": false, "manage_group_memberships": false, "manage_organizations": false, "manage_suspended_tickets": false, "manage_triggers": false, "manage_team_members": "readonly"}, "team_member_count": 1}, "emitted_at": 1692702313283} {"stream": "custom_roles", "data": {"id": 360000210616, "name": "Team lead", "description": "Can manage all tickets and forums", "role_type": 0, "created_at": "2020-12-11T18:34:36Z", "updated_at": "2023-06-26T11:06:24Z", "configuration": {"chat_access": true, "end_user_list_access": "full", "forum_access_restricted_content": false, "light_agent": false, "manage_business_rules": true, "manage_dynamic_content": true, "manage_extensions_and_channels": true, "manage_facebook": true, "moderate_forums": false, "side_conversation_create": true, "ticket_access": "all", "ticket_comment_access": "public", "ticket_deletion": true, "ticket_tag_editing": true, "twitter_search_access": false, "view_deleted_tickets": true, "voice_access": true, "group_access": true, "organization_editing": true, "organization_notes_editing": true, "assign_tickets_to_any_group": false, "end_user_profile_access": "full", "explore_access": "edit", "forum_access": "full", "macro_access": "full", "report_access": "full", "ticket_editing": true, "ticket_merge": true, "user_view_access": "full", "view_access": "playonly", "voice_dashboard_access": true, "manage_automations": true, "manage_contextual_workspaces": true, "manage_organization_fields": true, "manage_skills": true, "manage_slas": true, "manage_ticket_fields": true, "manage_ticket_forms": true, "manage_user_fields": true, "ticket_redaction": true, "manage_roles": "all-except-self", "manage_groups": true, "manage_group_memberships": true, "manage_organizations": true, "manage_suspended_tickets": true, "manage_triggers": true, "manage_team_members": "readonly"}, "team_member_count": 2}, "emitted_at": 1692702313284} {"stream": "schedules", "data": {"id": 4567312249615, "name": "Test Schedule", "time_zone": "New Caledonia", "created_at": "2022-03-25T10:23:34Z", "updated_at": "2022-03-25T10:23:34Z", "intervals": [{"start_time": 1980, "end_time": 2460}, {"start_time": 3420, "end_time": 3900}, {"start_time": 4860, "end_time": 5340}, {"start_time": 6300, "end_time": 6780}, {"start_time": 7740, "end_time": 8220}]}, "emitted_at": 1690888192224} -{"stream": "ticket_forms", "data": {"url": "https://d3v-airbyte.zendesk.com/api/v2/ticket_forms/360000084116.json", "name": "Default Ticket Form", "display_name": "Default Ticket Form", "id": 360000084116, "raw_name": "Default Ticket Form", "raw_display_name": "Default Ticket Form", "end_user_visible": true, "position": 1, "ticket_field_ids": [360002833076, 360002833096, 360002833116, 360002833136, 360002833156, 360002833176, 360002833196], "active": true, "default": true, "created_at": "2020-12-11T18:34:37Z", "updated_at": "2020-12-11T18:34:37Z", "in_all_brands": true, "restricted_brand_ids": [], "end_user_conditions": [], "agent_conditions": []}, "emitted_at": 1690888193249} +{"stream":"ticket_forms","data":{"url":"https://d3v-airbyte.zendesk.com/api/v2/ticket_forms/360000084116.json","name":"Default Ticket Form","display_name":"Default Ticket Form","id":360000084116,"raw_name":"Default Ticket Form","raw_display_name":"Default Ticket Form","end_user_visible":true,"position":1,"ticket_field_ids":[360002833076,360002833096,360002833116,360002833136,360002833156,360002833176,360002833196],"active":true,"default":true,"created_at":"2020-12-11T18:34:37Z","updated_at":"2020-12-11T18:34:37Z","in_all_brands":true,"restricted_brand_ids":[],"end_user_conditions":[],"agent_conditions":[]},"emitted_at":1694082682196} {"stream": "account_attributes", "data": {"url": "https://d3v-airbyte.zendesk.com/api/v2/routing/attributes/ac43b460-0ebd-11ee-85a3-4750db6aa722.json", "id": "ac43b460-0ebd-11ee-85a3-4750db6aa722", "name": "Language", "created_at": "2023-06-19T16:23:49Z", "updated_at": "2023-06-19T16:23:49Z"}, "emitted_at": 1690888194272} {"stream": "account_attributes", "data": {"url": "https://d3v-airbyte.zendesk.com/api/v2/routing/attributes/c15cdb76-0ebd-11ee-a37f-f315f48c0150.json", "id": "c15cdb76-0ebd-11ee-a37f-f315f48c0150", "name": "Quality", "created_at": "2023-06-19T16:24:25Z", "updated_at": "2023-06-19T16:24:25Z"}, "emitted_at": 1690888194273} {"stream": "attribute_definitions", "data": {"title": "Number of incidents", "subject": "number_of_incidents", "type": "text", "group": "ticket", "nullable": false, "repeatable": false, "operators": [{"value": "less_than", "title": "Less than", "terminal": false}, {"value": "greater_than", "title": "Greater than", "terminal": false}, {"value": "is", "title": "Is", "terminal": false}, {"value": "less_than_equal", "title": "Less than or equal to", "terminal": false}, {"value": "greater_than_equal", "title": "Greater than or equal to", "terminal": false}], "condition": "all"}, "emitted_at": 1690888195504} diff --git a/airbyte-integrations/connectors/source-zendesk-support/integration_tests/incremental_catalog.json b/airbyte-integrations/connectors/source-zendesk-support/integration_tests/incremental_catalog.json index 42aa125638b1..08b3d403363c 100644 --- a/airbyte-integrations/connectors/source-zendesk-support/integration_tests/incremental_catalog.json +++ b/airbyte-integrations/connectors/source-zendesk-support/integration_tests/incremental_catalog.json @@ -1,5 +1,17 @@ { "streams": [ + { + "stream": { + "name": "articles", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["updated_at"], + "source_defined_primary_key": [["id"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "append" + }, { "stream": { "name": "audit_logs", @@ -12,6 +24,18 @@ "sync_mode": "incremental", "destination_sync_mode": "append" }, + { + "stream": { + "name": "custom_roles", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["updated_at"], + "source_defined_primary_key": [["id"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "append" + }, { "stream": { "name": "group_memberships", @@ -204,6 +228,30 @@ "sync_mode": "incremental", "destination_sync_mode": "append" }, + { + "stream": { + "name": "schedules", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["updated_at"], + "source_defined_primary_key": [["id"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "append" + }, + { + "stream": { + "name": "sla_policies", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["updated_at"], + "source_defined_primary_key": [["id"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "append" + }, { "stream": { "name": "ticket_skips", @@ -215,6 +263,54 @@ }, "sync_mode": "incremental", "destination_sync_mode": "append" + }, + { + "stream": { + "name": "posts", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["updated_at"], + "source_defined_primary_key": [["id"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "append" + }, + { + "stream": { + "name": "article_votes", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["updated_at"], + "source_defined_primary_key": [["id"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "append" + }, + { + "stream": { + "name": "article_comments", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["updated_at"], + "source_defined_primary_key": [["id"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "append" + }, + { + "stream": { + "name": "article_comment_votes", + "json_schema": {}, + "supported_sync_modes": ["full_refresh", "incremental"], + "source_defined_cursor": true, + "default_cursor_field": ["updated_at"], + "source_defined_primary_key": [["id"]] + }, + "sync_mode": "incremental", + "destination_sync_mode": "append" } ] } diff --git a/airbyte-integrations/connectors/source-zendesk-support/metadata.yaml b/airbyte-integrations/connectors/source-zendesk-support/metadata.yaml index 58cbb851c40e..e69b99244ef6 100644 --- a/airbyte-integrations/connectors/source-zendesk-support/metadata.yaml +++ b/airbyte-integrations/connectors/source-zendesk-support/metadata.yaml @@ -7,7 +7,7 @@ data: connectorType: source maxSecondsBetweenMessages: 10800 definitionId: 79c1aa37-dae3-42ae-b333-d1c105477715 - dockerImageTag: 1.3.0 + dockerImageTag: 1.7.0 dockerRepository: airbyte/source-zendesk-support githubIssueLabel: source-zendesk-support icon: zendesk-support.svg diff --git a/airbyte-integrations/connectors/source-zendesk-support/setup.py b/airbyte-integrations/connectors/source-zendesk-support/setup.py index 58dc32bc30d0..519b1350c914 100644 --- a/airbyte-integrations/connectors/source-zendesk-support/setup.py +++ b/airbyte-integrations/connectors/source-zendesk-support/setup.py @@ -7,7 +7,7 @@ MAIN_REQUIREMENTS = ["airbyte-cdk", "pytz"] -TEST_REQUIREMENTS = ["pytest~=6.1", "pytest-mock~=3.6", "requests-mock==1.9.3"] +TEST_REQUIREMENTS = ["freezegun", "pytest~=6.1", "pytest-mock~=3.6", "requests-mock==1.9.3"] setup( version="0.1.0", diff --git a/airbyte-integrations/connectors/source-zendesk-support/source_zendesk_support/schemas/article_comments.json b/airbyte-integrations/connectors/source-zendesk-support/source_zendesk_support/schemas/article_comments.json new file mode 100644 index 000000000000..09b85f7b0952 --- /dev/null +++ b/airbyte-integrations/connectors/source-zendesk-support/source_zendesk_support/schemas/article_comments.json @@ -0,0 +1,52 @@ +{ + "$schema": "https://json-schema.org/draft-07/schema#", + "title": "Post Comments", + "type": ["null", "object"], + "properties": { + "author_id": { + "type": ["null", "integer"] + }, + "body": { + "type": ["null", "string"] + }, + "created_at": { + "type": ["null", "string"], + "format": "date-time" + }, + "html_url": { + "type": ["null", "string"] + }, + "id": { + "type": ["null", "integer"] + }, + "locale": { + "type": ["null", "string"] + }, + "non_author_editor_id": { + "type": ["null", "integer"] + }, + "non_author_updated_at": { + "type": ["null", "string"], + "format": "date-time" + }, + "source_id": { + "type": ["null", "integer"] + }, + "source_type": { + "type": ["null", "string"] + }, + "updated_at": { + "type": ["null", "string"], + "format": "date-time" + }, + "url": { + "type": ["null", "string"] + }, + "vote_count": { + "type": ["null", "integer"] + }, + "vote_sum": { + "type": ["null", "integer"] + } + } +} diff --git a/airbyte-integrations/connectors/source-zendesk-support/source_zendesk_support/schemas/deleted_tickets.json b/airbyte-integrations/connectors/source-zendesk-support/source_zendesk_support/schemas/deleted_tickets.json new file mode 100644 index 000000000000..e6e72140e9f7 --- /dev/null +++ b/airbyte-integrations/connectors/source-zendesk-support/source_zendesk_support/schemas/deleted_tickets.json @@ -0,0 +1,34 @@ +{ + "$schema": "https://json-schema.org/draft-07/schema#", + "title": "Deleted Tickets", + "type": ["null", "object"], + "properties": { + "actor": { + "type": ["null", "object"], + "properties": { + "id": { + "type": ["null", "integer"] + }, + "name": { + "type": ["null", "string"] + } + } + }, + "id": { + "type": ["null", "integer"] + }, + "subject": { + "type": ["null", "string"] + }, + "description": { + "type": ["null", "string"] + }, + "deleted_at": { + "type": ["null", "string"], + "format": "date-time" + }, + "previous_state": { + "type": ["null", "string"] + } + } +} diff --git a/airbyte-integrations/connectors/source-zendesk-support/source_zendesk_support/source.py b/airbyte-integrations/connectors/source-zendesk-support/source_zendesk_support/source.py index 2ec47f3924f1..9863efd5d6cb 100644 --- a/airbyte-integrations/connectors/source-zendesk-support/source_zendesk_support/source.py +++ b/airbyte-integrations/connectors/source-zendesk-support/source_zendesk_support/source.py @@ -7,19 +7,24 @@ from datetime import datetime from typing import Any, List, Mapping, Tuple +import pendulum from airbyte_cdk.models import SyncMode from airbyte_cdk.sources import AbstractSource from airbyte_cdk.sources.streams import Stream from airbyte_cdk.sources.streams.http.requests_native_auth import TokenAuthenticator -from source_zendesk_support.streams import DATETIME_FORMAT, SourceZendeskException +from source_zendesk_support.streams import DATETIME_FORMAT, ZendeskConfigException from .streams import ( AccountAttributes, + ArticleComments, + ArticleCommentVotes, Articles, + ArticleVotes, AttributeDefinitions, AuditLogs, Brands, CustomRoles, + DeletedTickets, GroupMemberships, Groups, Macros, @@ -66,6 +71,21 @@ class SourceZendeskSupport(AbstractSource): support and sales software which aims for quick implementation and adaptation at scale. """ + @classmethod + def get_default_start_date(cls) -> str: + """ + Gets the default start date for data retrieval. + + The default date is set to the current date and time in UTC minus 2 years. + + Returns: + str: The default start date in 'YYYY-MM-DDTHH:mm:ss[Z]' format. + + Note: + Start Date is a required request parameter for Zendesk Support API streams. + """ + return pendulum.now(tz="UTC").subtract(years=2).format("YYYY-MM-DDTHH:mm:ss[Z]") + @classmethod def get_authenticator(cls, config: Mapping[str, Any]) -> [TokenAuthenticator, BasicApiTokenAuthenticator]: @@ -82,7 +102,7 @@ def get_authenticator(cls, config: Mapping[str, Any]) -> [TokenAuthenticator, Ba elif auth.get("credentials") == "api_token": return BasicApiTokenAuthenticator(config["credentials"]["email"], config["credentials"]["api_token"]) else: - raise SourceZendeskException(f"Not implemented authorization method: {config['credentials']}") + raise ZendeskConfigException(message=f"Not implemented authorization method: {config['credentials']}") def check_connection(self, logger, config) -> Tuple[bool, any]: """Connection check to validate that the user-provided config can be used to connect to the underlying API @@ -93,17 +113,18 @@ def check_connection(self, logger, config) -> Tuple[bool, any]: (False, error) otherwise. """ auth = self.get_authenticator(config) - settings = None try: datetime.strptime(config["start_date"], DATETIME_FORMAT) settings = UserSettingsStream(config["subdomain"], authenticator=auth, start_date=None).get_settings() except Exception as e: return False, e - active_features = [k for k, v in settings.get("active_features", {}).items() if v] - # logger.info("available features: %s" % active_features) if "organization_access_enabled" not in active_features: - return False, "Organization access is not enabled. Please check admin permission of the current account" + return ( + False, + "Please verify that the account linked to the API key has admin permissions and try again." + "For more information visit https://support.zendesk.com/hc/en-us/articles/4408832171034-About-team-member-product-roles-and-access.", + ) return True, None @classmethod @@ -113,7 +134,7 @@ def convert_config2stream_args(cls, config: Mapping[str, Any]) -> Mapping[str, A """ return { "subdomain": config["subdomain"], - "start_date": config["start_date"], + "start_date": config.get("start_date", cls.get_default_start_date()), "authenticator": cls.get_authenticator(config), "ignore_pagination": config.get("ignore_pagination", False), } @@ -125,7 +146,11 @@ def streams(self, config: Mapping[str, Any]) -> List[Stream]: args = self.convert_config2stream_args(config) streams = [ Articles(**args), + ArticleComments(**args), + ArticleCommentVotes(**args), + ArticleVotes(**args), AuditLogs(**args), + DeletedTickets(**args), GroupMemberships(**args), Groups(**args), Macros(**args), diff --git a/airbyte-integrations/connectors/source-zendesk-support/source_zendesk_support/spec.json b/airbyte-integrations/connectors/source-zendesk-support/source_zendesk_support/spec.json index 08aefc819353..a90fb7bf6fc5 100644 --- a/airbyte-integrations/connectors/source-zendesk-support/source_zendesk_support/spec.json +++ b/airbyte-integrations/connectors/source-zendesk-support/source_zendesk_support/spec.json @@ -4,7 +4,7 @@ "$schema": "http://json-schema.org/draft-07/schema#", "title": "Source Zendesk Support Spec", "type": "object", - "required": ["start_date", "subdomain"], + "required": ["subdomain"], "additionalProperties": true, "properties": { "start_date": { diff --git a/airbyte-integrations/connectors/source-zendesk-support/source_zendesk_support/streams.py b/airbyte-integrations/connectors/source-zendesk-support/source_zendesk_support/streams.py index 88655a5b3817..a857542cf974 100644 --- a/airbyte-integrations/connectors/source-zendesk-support/source_zendesk_support/streams.py +++ b/airbyte-integrations/connectors/source-zendesk-support/source_zendesk_support/streams.py @@ -14,10 +14,12 @@ import pytz import requests from airbyte_cdk.models import SyncMode -from airbyte_cdk.sources.streams.core import package_name_from_class +from airbyte_cdk.sources.streams.core import StreamData, package_name_from_class from airbyte_cdk.sources.streams.http import HttpStream, HttpSubStream from airbyte_cdk.sources.utils.schema_helpers import ResourceSchemaLoader from airbyte_cdk.sources.utils.transform import TransformConfig, TypeTransformer +from airbyte_cdk.utils import AirbyteTracedException +from airbyte_protocol.models import FailureType DATETIME_FORMAT: str = "%Y-%m-%dT%H:%M:%SZ" LAST_END_TIME_KEY: str = "_last_end_time" @@ -35,8 +37,12 @@ def to_int(s): return s -class SourceZendeskException(Exception): - """default exception of custom SourceZendesk logic""" +class ZendeskConfigException(AirbyteTracedException): + """default config exception to custom SourceZendesk logic""" + + def __init__(self, **kwargs): + failure_type: FailureType = FailureType.config_error + super(ZendeskConfigException, self).__init__(failure_type=failure_type, **kwargs) class BaseZendeskSupportStream(HttpStream, ABC): @@ -119,11 +125,29 @@ def should_retry(self, response: requests.Response) -> bool: except requests.exceptions.JSONDecodeError: reason = response.reason error = {"title": f"{reason}", "message": "Received empty JSON response"} - self.logger.error(f"Skipping stream {self.name}: Check permissions, error message: {error}.") + self.logger.error( + f"Skipping stream {self.name}, error message: {error}. Please ensure the authenticated user has access to this stream. If the issue persists, contact Zendesk support." + ) setattr(self, "raise_on_http_errors", False) return False return super().should_retry(response) + def read_records( + self, + sync_mode: SyncMode, + cursor_field: Optional[List[str]] = None, + stream_slice: Optional[Mapping[str, Any]] = None, + stream_state: Optional[Mapping[str, Any]] = None, + ) -> Iterable[StreamData]: + try: + yield from super().read_records( + sync_mode=sync_mode, cursor_field=cursor_field, stream_slice=stream_slice, stream_state=stream_state + ) + except requests.exceptions.JSONDecodeError: + self.logger.error( + f"Skipping stream {self.name}: Non-JSON response received. Please ensure that you have enough permissions for this stream." + ) + class SourceZendeskSupportStream(BaseZendeskSupportStream): """Basic Zendesk class""" @@ -679,7 +703,7 @@ def path(self, **kwargs): return "community/topics" -class SlaPolicies(FullRefreshZendeskSupportStream): +class SlaPolicies(IncrementalZendeskSupportStream): """SlaPolicies stream: https://developer.zendesk.com/api-reference/ticketing/business-rules/sla_policies/""" def path(self, *args, **kwargs) -> str: @@ -698,7 +722,7 @@ class Brands(FullRefreshZendeskSupportStream): """Brands stream: https://developer.zendesk.com/api-reference/ticketing/account-configuration/brands/#list-brands""" -class CustomRoles(FullRefreshZendeskSupportStream): +class CustomRoles(IncrementalZendeskSupportStream): """CustomRoles stream: https://developer.zendesk.com/api-reference/ticketing/account-configuration/custom_roles/#list-custom-roles""" def request_params( @@ -710,7 +734,7 @@ def request_params( return {} -class Schedules(FullRefreshZendeskSupportStream): +class Schedules(IncrementalZendeskSupportStream): """Schedules stream: https://developer.zendesk.com/api-reference/ticketing/ticket-management/schedules/#list-schedules""" def path(self, *args, **kwargs) -> str: @@ -778,7 +802,7 @@ def parse_response(self, response: requests.Response, **kwargs) -> Iterable[Mapp def get_settings(self) -> Mapping[str, Any]: for resp in self.read_records(SyncMode.full_refresh): return resp - raise SourceZendeskException("not found settings") + raise ZendeskConfigException(message="Can not get access to settings endpoint; Please check provided credentials") def request_params( self, @@ -796,7 +820,9 @@ def path(self, *args, **kwargs) -> str: return "user_fields" -class PostComments(FullRefreshZendeskSupportStream, HttpSubStream): +class PostComments(CursorPaginationZendeskSupportStream, HttpSubStream): + """Post Comments Stream: https://developer.zendesk.com/api-reference/help_center/help-center-api/post_comments/""" + response_list_name = "comments" def __init__(self, **kwargs): @@ -814,7 +840,7 @@ def path( return f"community/posts/{post_id}/comments" -class AbstractVotes(FullRefreshZendeskSupportStream, ABC): +class AbstractVotes(CursorPaginationZendeskSupportStream, ABC): response_list_name = "votes" def get_json_schema(self) -> Mapping[str, Any]: @@ -878,3 +904,79 @@ def request_params( if next_page_token: params.update(next_page_token) return params + + +class ArticleVotes(AbstractVotes, HttpSubStream): + def __init__(self, **kwargs): + parent = Articles(**kwargs) + super().__init__(parent=parent, **kwargs) + + def path( + self, + *, + stream_state: Mapping[str, Any] = None, + stream_slice: Mapping[str, Any] = None, + next_page_token: Mapping[str, Any] = None, + ) -> str: + article_id = stream_slice.get("parent").get("id") + return f"help_center/articles/{article_id}/votes" + + +class ArticleComments(CursorPaginationZendeskSupportStream, HttpSubStream): + response_list_name = "comments" + + def __init__(self, **kwargs): + parent = Articles(**kwargs) + super().__init__(parent=parent, **kwargs) + + def path( + self, + *, + stream_state: Mapping[str, Any] = None, + stream_slice: Mapping[str, Any] = None, + next_page_token: Mapping[str, Any] = None, + ) -> str: + article_id = stream_slice.get("parent").get("id") + return f"help_center/articles/{article_id}/comments" + + +class ArticleCommentVotes(AbstractVotes, HttpSubStream): + def __init__(self, **kwargs): + parent = ArticleComments(**kwargs) + super().__init__(parent=parent, **kwargs) + + def path( + self, + *, + stream_state: Mapping[str, Any] = None, + stream_slice: Mapping[str, Any] = None, + next_page_token: Mapping[str, Any] = None, + ) -> str: + article_id = stream_slice.get("parent").get("source_id") + comment_id = stream_slice.get("parent").get("id") + return f"help_center/articles/{article_id}/comments/{comment_id}/votes" + + +class DeletedTickets(CursorPaginationZendeskSupportStream): + """Deleted Tickets Stream https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#list-deleted-tickets""" + + response_list_name: str = "deleted_tickets" + transformer: TypeTransformer = TypeTransformer(TransformConfig.DefaultSchemaNormalization) + cursor_field = "deleted_at" + + def path(self, **kwargs) -> str: + return "deleted_tickets.json" + + def request_params( + self, + stream_state: Mapping[str, Any], + stream_slice: Mapping[str, Any] = None, + next_page_token: Mapping[str, Any] = None, + ) -> MutableMapping[str, Any]: + params = { + "sort_by": self.cursor_field, + "page[size]": self.page_size, + } + if next_page_token: + params.update(next_page_token) + return params diff --git a/airbyte-integrations/connectors/source-zendesk-support/unit_tests/unit_test.py b/airbyte-integrations/connectors/source-zendesk-support/unit_tests/unit_test.py index 6e4c17b3febb..ed84366d22d9 100644 --- a/airbyte-integrations/connectors/source-zendesk-support/unit_tests/unit_test.py +++ b/airbyte-integrations/connectors/source-zendesk-support/unit_tests/unit_test.py @@ -10,6 +10,7 @@ from unittest.mock import patch from urllib.parse import parse_qsl, urlparse +import freezegun import pendulum import pytest import pytz @@ -69,6 +70,12 @@ "credentials": {"credentials": "api_token", "email": "integration-test@airbyte.io", "api_token": "api_token"}, } +TEST_CONFIG_WITHOUT_START_DATE = { + "subdomain": "sandbox", + "credentials": {"credentials": "api_token", "email": "integration-test@airbyte.io", "api_token": "api_token"}, +} + + # raw config oauth TEST_CONFIG_OAUTH = { "subdomain": "sandbox", @@ -116,6 +123,12 @@ def test_convert_config2stream_args(config): assert "authenticator" in result +@freezegun.freeze_time("2022-01-01") +def test_default_start_date(): + result = SourceZendeskSupport().convert_config2stream_args(TEST_CONFIG_WITHOUT_START_DATE) + assert result["start_date"] == "2020-01-01T00:00:00Z" + + @pytest.mark.parametrize( "config, expected", [(TEST_CONFIG, "aW50ZWdyYXRpb24tdGVzdEBhaXJieXRlLmlvL3Rva2VuOmFwaV90b2tlbg=="), (TEST_CONFIG_OAUTH, "test_access_token")], @@ -145,19 +158,19 @@ def test_check(response, start_date, check_passed): @pytest.mark.parametrize( "ticket_forms_response, status_code, expected_n_streams, expected_warnings, reason", [ - ('{"ticket_forms": [{"id": 1, "updated_at": "2021-07-08T00:05:45Z"}]}', 200, 31, [], None), + ('{"ticket_forms": [{"id": 1, "updated_at": "2021-07-08T00:05:45Z"}]}', 200, 35, [], None), ( '{"error": "Not sufficient permissions"}', 403, - 28, - ["Skipping stream ticket_forms: Check permissions, error message: Not sufficient permissions."], + 32, + ["Skipping stream ticket_forms, error message: Not sufficient permissions. Please ensure the authenticated user has access to this stream. If the issue persists, contact Zendesk support."], None ), ( '', 404, - 28, - ["Skipping stream ticket_forms: Check permissions, error message: {'title': 'Not Found', 'message': 'Received empty JSON response'}."], + 32, + ["Skipping stream ticket_forms, error message: {'title': 'Not Found', 'message': 'Received empty JSON response'}. Please ensure the authenticated user has access to this stream. If the issue persists, contact Zendesk support."], 'Not Found' ), ], @@ -167,7 +180,7 @@ def test_full_access_streams(caplog, requests_mock, ticket_forms_response, statu requests_mock.get("/api/v2/ticket_forms", status_code=status_code, text=ticket_forms_response, reason=reason) result = SourceZendeskSupport().streams(config=TEST_CONFIG) assert len(result) == expected_n_streams - logged_warnings = iter([record for record in caplog.records if record.levelname == "ERROR"]) + logged_warnings = (record for record in caplog.records if record.levelname == "ERROR") for msg in expected_warnings: assert msg in next(logged_warnings).message @@ -992,7 +1005,8 @@ def test_read_post_votes_stream(requests_mock): post_votes_response = { "votes": [ - {"author_id": 89567, "body": "Test_comment for Test_post", "id": 35467, "post_id": 7253375870607} + {"author_id": 89567, "body": "Test_comment for Test_post", "id": 35467, "post_id": 7253375870607, + "updated_at": "2023-01-02T00:00:00Z"} ] } requests_mock.get("https://subdomain.zendesk.com/api/v2/community/posts/7253375870607/votes", json=post_votes_response) @@ -1012,12 +1026,13 @@ def test_read_post_comment_votes_stream(requests_mock): post_comments_response = { "comments": [ - {"author_id": 89567, "body": "Test_comment for Test_post", "id": 35467, "post_id": 7253375870607} + {"author_id": 89567, "body": "Test_comment for Test_post", "id": 35467, "post_id": 7253375870607, + "updated_at": "2023-01-02T00:00:00Z"} ] } requests_mock.get("https://subdomain.zendesk.com/api/v2/community/posts/7253375870607/comments", json=post_comments_response) - votes = [{"id": 35467, "user_id": 888887, "value": -1}] + votes = [{"id": 35467, "user_id": 888887, "value": -1, "updated_at": "2023-01-03T00:00:00Z"}] requests_mock.get("https://subdomain.zendesk.com/api/v2/community/posts/7253375870607/comments/35467/votes", json={"votes": votes}) stream = PostCommentVotes(subdomain="subdomain", start_date="2020-01-01T00:00:00Z") @@ -1077,3 +1092,14 @@ def test_read_tickets_comment(requests_mock, status_code): stream = TicketComments(subdomain="subdomain", start_date="2020-01-01T00:00:00Z") read_full_refresh(stream) assert request_history.call_count == 1 + + +def test_read_non_json_error(requests_mock, caplog): + requests_mock.get( + "https://subdomain.zendesk.com/api/v2/incremental/tickets/cursor.json", + text="not_json_response" + ) + stream = Tickets(subdomain="subdomain", start_date="2020-01-01T00:00:00Z") + expected_message = "Skipping stream tickets: Non-JSON response received. Please ensure that you have enough permissions for this stream." + read_full_refresh(stream) + assert expected_message in (record.message for record in caplog.records if record.levelname == "ERROR") diff --git a/airbyte-integrations/connectors/source-zenloop/acceptance-test-config.yml b/airbyte-integrations/connectors/source-zenloop/acceptance-test-config.yml index e5b5f839bec9..de6f12368cf2 100644 --- a/airbyte-integrations/connectors/source-zenloop/acceptance-test-config.yml +++ b/airbyte-integrations/connectors/source-zenloop/acceptance-test-config.yml @@ -24,9 +24,6 @@ tests: - config_path: "secrets/config.json" configured_catalog_path: "integration_tests/configured_catalog.json" future_state_path: "integration_tests/abnormal_state.json" - cursor_paths: - "answers": [ "states", 0, "cursor", "inserted_at" ] - "answers_survey_group": [ "states", 0, "cursor", "inserted_at" ] full_refresh: - config_path: "secrets/config.json" configured_catalog_path: "integration_tests/configured_catalog.json" diff --git a/airbyte-json-validation/build.gradle b/airbyte-json-validation/build.gradle index f59ad1824523..da1231ed3ea5 100644 --- a/airbyte-json-validation/build.gradle +++ b/airbyte-json-validation/build.gradle @@ -7,5 +7,3 @@ dependencies { // needed so that we can follow $ref when parsing json. jackson does not support this natively. implementation 'me.andrz.jackson:jackson-json-reference-core:0.3.2' } - -Task publishArtifactsTask = getPublishArtifactsTask("$rootProject.ext.version", project) diff --git a/airbyte-test-utils/build.gradle b/airbyte-test-utils/build.gradle index 3ec37f539308..c00ee55bf8b2 100644 --- a/airbyte-test-utils/build.gradle +++ b/airbyte-test-utils/build.gradle @@ -19,13 +19,11 @@ dependencies { api libs.junit.jupiter.api // Mark as compile only to avoid leaking transitively to connectors - compileOnly libs.platform.testcontainers.jdbc - compileOnly libs.platform.testcontainers.postgresql - compileOnly libs.platform.testcontainers.cockroachdb + compileOnly libs.testcontainers.jdbc + compileOnly libs.testcontainers.postgresql + compileOnly libs.testcontainers.cockroachdb - testImplementation libs.platform.testcontainers.jdbc - testImplementation libs.platform.testcontainers.postgresql - testImplementation libs.platform.testcontainers.cockroachdb + testImplementation libs.testcontainers.jdbc + testImplementation libs.testcontainers.postgresql + testImplementation libs.testcontainers.cockroachdb } - -Task publishArtifactsTask = getPublishArtifactsTask("$rootProject.ext.version", project) diff --git a/build.gradle b/build.gradle index 3a94a394ec5e..f4ee01e11afd 100644 --- a/build.gradle +++ b/build.gradle @@ -1,6 +1,6 @@ -import com.bmuschko.gradle.docker.tasks.image.DockerBuildImage import com.github.spotbugs.snom.SpotBugsTask import ru.vyarus.gradle.plugin.python.task.PythonTask +import com.hierynomus.gradle.license.tasks.LicenseFormat // The buildscript block defines dependencies in order for .gradle file evaluation. // This is separate from application dependencies. @@ -33,17 +33,10 @@ plugins { id 'com.github.node-gradle.node' version '3.5.1' id 'com.github.hierynomus.license' version '0.16.1' id 'com.github.spotbugs' version '5.0.13' - // The distribution plugin has been added to address the an issue with the copyGeneratedTar - // task depending on "distTar". When that dependency has been refactored away, this plugin - // can be removed. - id 'distribution' id 'version-catalog' - id 'maven-publish' id 'ru.vyarus.use-python' } -apply from: "$rootDir/publish-repositories.gradle" - repositories { mavenCentral() maven { @@ -67,160 +60,6 @@ ext { image_tag = System.getenv("VERSION") ?: 'dev' } -def createLicenseWith = { File license, String startComment, String endComment, String lineComment, boolean isPython -> - /* - In java, we don't have a second linter/styling tool other than spotless so it doesn't really - matter if we write a newline or not for startComment/endComment. - - However, in python, we are using black that double-checks and reformats the code. - Thus, writing an extra empty newline (not removed by trimTrailingWhitespace() is actually a - big deal and would be reformatted (removed) because of black's specs. - */ - def tmp = File.createTempFile('tmp', '.tmp') - tmp.withWriter { - def w = it - if (startComment.length() > 0 || !isPython) { - w.writeLine(startComment) - } - license.eachLine { - w << lineComment - w.writeLine(it) - } - if (endComment.length() > 0 || !isPython) { - w.writeLine(endComment) - } - w.writeLine("") - if (isPython) { - w.writeLine("") - } - } - return tmp -} - -def createPythonLicenseWith = { license -> - return createLicenseWith(license, '', '', '', true) -} - -def createJavaLicenseWith = { license -> - return createLicenseWith(license, '/*', ' */', ' * ', false) -} - -// We are the spotless exclusions rules using file tree. It seems the excludeTarget option is super finicky in a -// monorepo setup and it doesn't actually exclude directories reliably. This code makes the behavior predictable. -def createSpotlessTarget = { pattern -> - def excludes = [ - '.gradle', - 'node_modules', - '.eggs', - '.mypy_cache', - '.venv', - '*.egg-info', - 'build', - 'dbt-project-template', - 'dbt-project-template-mssql', - 'dbt-project-template-mysql', - 'dbt-project-template-oracle', - 'dbt-project-template-clickhouse', - 'dbt-project-template-snowflake', - 'dbt-project-template-tidb', - 'dbt-project-template-duckdb', - 'dbt_test_config', - 'normalization_test_output', - 'tools', - 'secrets', - 'charts', // Helm charts often have injected template strings that will fail general linting. Helm linting is done separately. - 'resources/seed/*_catalog.json', // Do not remove - this is also necessary to prevent diffs in our github workflows - 'resources/seed/*_registry.json', // Do not remove - this is also necessary to prevent diffs in our github workflows - 'airbyte-integrations/connectors/source-amplitude/unit_tests/api_data/zipped.json', // Zipped file presents as non-UTF-8 making spotless sad - 'airbyte-webapp', // The webapp module uses its own auto-formatter, so spotless is not necessary here - 'airbyte-webapp-e2e-tests', // This module also uses its own auto-formatter - 'airbyte-connector-builder-server/connector_builder/generated', // autogenerated code doesn't need to be formatted - 'airbyte-ci/connectors/metadata_service/lib/tests/fixtures/**/invalid', // These are deliberately invalid and unformattable. - ] - - if (System.getenv().containsKey("SUB_BUILD")) { - excludes.add("airbyte-integrations/connectors") - } - - return fileTree(dir: rootDir, include: pattern, exclude: excludes.collect { "**/${it}" }) -} - -node { - download = true - version = '18.16.1' - npmVersion = '9.5.1' - // when setting both these directories, npm and node will be in separate directories - workDir = file("${buildDir}/nodejs") - npmWorkDir = file("${buildDir}/npm") -} - -spotless { - java { - target createSpotlessTarget('**/*.java') - - importOrder() - - eclipse('4.21.0').configFile(rootProject.file('tools/gradle/codestyle/java-google-style.xml')) - - licenseHeaderFile createJavaLicenseWith(rootProject.file('LICENSE_SHORT')) - removeUnusedImports() - trimTrailingWhitespace() - } - groovyGradle { - target createSpotlessTarget('**/*.gradle') - } - sql { - target createSpotlessTarget('**/*.sql') - - dbeaver().configFile(rootProject.file('tools/gradle/codestyle/sql-dbeaver.properties')) - } - format 'styling', { - target createSpotlessTarget(['**/*.yaml', '**/*.json']) - - prettier() - .npmExecutable("${tasks.named('npmSetup').get().npmDir.get()}/bin/npm") // get the npm executable path from gradle-node-plugin - .nodeExecutable("${tasks.named('nodeSetup').get().nodeDir.get()}/bin/node") // get the node executable path from gradle-node-plugin - } -} - -tasks.named('spotlessStyling').configure { - it.dependsOn('nodeSetup', 'npmSetup') -} - -check.dependsOn 'spotlessApply' - -@SuppressWarnings('GroovyAssignabilityCheck') -def Task getPublishArtifactsTask(String buildVersion, Project subproject) { - // generate a unique task name based on the directory name. - return task("publishArtifact-$subproject.name" { - apply plugin: 'maven-publish' - publishing { - repositories { - publications { - "$subproject.name"(MavenPublication) { - from subproject.components.java - - // use the subproject group and name with the assumption there are no identical subproject - // names, group names or subproject group/name combination. - groupId = "$subproject.group" - artifactId = "$subproject.name" - version = "$buildVersion" - repositories.add(rootProject.repositories.getByName('cloudrepo')) - } - } - } - } - }) -} - -allprojects { - apply plugin: 'com.bmuschko.docker-remote-api' - - task copyDocker(type: Sync) { - from "${project.projectDir}/Dockerfile" - into "build/docker/" - } -} allprojects { apply plugin: 'base' @@ -229,7 +68,7 @@ allprojects { // projects clobber each other in an environments with subprojects when projects are in directories named identically. def sub = rootDir.relativePath(projectDir.parentFile).replace('/', '.') group = "io.${rootProject.name}${sub.isEmpty() ? '' : ".$sub"}" - project.archivesBaseName = "${project.group}-${project.name}" + project.base.archivesName = "${project.group}-${project.name}" version = rootProject.ext.version } @@ -239,7 +78,7 @@ def getCDKTargetVersion() { file("airbyte-cdk/java/airbyte-cdk/src/main/resources/version.properties").withInputStream { props.load(it) } return props.getProperty('version') } -def getLatestFileModifiedTimeFromFiles(files) { +static def getLatestFileModifiedTimeFromFiles(files) { if (files.isEmpty()) { return null } @@ -278,7 +117,7 @@ def checkCDKJarExists(requiredSnapshotVersion) { } } } -def getCDKSnapshotRequirement(dependenciesList) { +static def getCDKSnapshotRequirement(dependenciesList) { def cdkSnapshotRequirement = dependenciesList.find { it.requested instanceof ModuleComponentSelector && it.requested.group == 'io.airbyte' && @@ -291,70 +130,25 @@ def getCDKSnapshotRequirement(dependenciesList) { return cdkSnapshotRequirement.requested.version } } -// Java projects common configurations -subprojects { subproj -> +// Common configurations for 'assemble'. +allprojects { - configurations { - runtimeClasspath + tasks.withType(Tar).configureEach { + duplicatesStrategy DuplicatesStrategy.INCLUDE } - - // Common Docker Configuration: - // If subprojects have the dockerImageName property configured in their gradle.properties file, - // register: - // 1) A copyGeneratedTar task to copy generated TARs. Subprojects that produce TARs can use this - // to copy the produced tar into the docker image. - // 2) A buildDockerImage task to build the docker image. - // 3) Make the docker image task depend on the default assemble task. - if (subproj.hasProperty('dockerImageName')) { - project.logger.lifecycle("configuring docker task for $subproj.name") - - // Although this task is defined for every subproject with the dockerImageName property, - // It is not necessarily used for all subprojects. Non-TAR producing projects can ignore this. - tasks.register("copyGeneratedTar", Copy) { - dependsOn copyDocker - dependsOn distTar - from('build/distributions') { - // Assume that tars are named --*.tar. - // Because we only have a handle to the child project, and to keep things simple, - // use a * regex to catch all prefixes. - include "*$subproj.name-*.tar" - } - into 'build/docker/bin' - } - - tasks.register("buildDockerImage", DockerBuildImage) { - // This is currently only used for connectors. - def jdkVersion = System.getenv('JDK_VERSION') ?: '17.0.4' - - def arch = System.getenv('BUILD_ARCH') ?: System.getProperty("os.arch").toLowerCase() - def isArm64 = arch == "aarch64" || arch == "arm64" - def buildArch = System.getenv('DOCKER_BUILD_ARCH') ?: isArm64 ? 'arm64' : 'amd64' - def buildPlatform = System.getenv('DOCKER_BUILD_PLATFORM') ?: isArm64 ? 'linux/arm64' : 'linux/amd64' - def alpineImage = System.getenv('ALPINE_IMAGE') ?: isArm64 ? 'arm64v8/alpine:3.14' : 'amd64/alpine:3.14' - def nginxImage = System.getenv('NGINX_IMAGE') ?: isArm64 ? 'arm64v8/nginx:alpine' : 'amd64/nginx:alpine' - - // Used by the platform -- Must be an Amazon Corretto-based image for build to work without modification to Dockerfile instructions - def openjdkImage = System.getenv('JDK_IMAGE') ?: "airbyte/airbyte-base-java-image:1.0" - - platform = buildPlatform - images.add("airbyte/$subproj.dockerImageName:$rootProject.ext.image_tag") - buildArgs.put('JDK_VERSION', jdkVersion) - buildArgs.put('DOCKER_BUILD_ARCH', buildArch) - buildArgs.put('ALPINE_IMAGE', alpineImage) - buildArgs.put('NGINX_IMAGE', nginxImage) - buildArgs.put('JDK_IMAGE', openjdkImage) - buildArgs.put('VERSION', rootProject.ext.version) - - } - - tasks.named("assemble") { - dependsOn buildDockerImage - } + tasks.withType(Zip).configureEach { + duplicatesStrategy DuplicatesStrategy.INCLUDE + // Disabling distZip causes the build to break for some reason, so: instead of disabling it, make it fast. + entryCompression ZipEntryCompression.STORED } +} - if (subproj.name == 'airbyte-webapp' || subproj.name == 'airbyte-webapp-e2e-tests') { +// Java projects common configurations. +subprojects { subproj -> + + if (!subproj.file('src/main/java').directory) { return } @@ -363,8 +157,10 @@ subprojects { subproj -> apply plugin: 'com.github.spotbugs' apply plugin: 'pmd' - sourceCompatibility = JavaVersion.VERSION_17 - targetCompatibility = JavaVersion.VERSION_17 + java { + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 + } if (subproj.name.startsWith("source-") || subproj.name.startsWith("destination-")) { // This is a Java connector project. @@ -408,13 +204,16 @@ subprojects { subproj -> } jacocoTestReport { - dependsOn test reports { html.required = true xml.required = true csv.required = false } } + def jacocoTestReportTask = tasks.named('jacocoTestReport') + jacocoTestReportTask.configure { + dependsOn tasks.named('test') + } jacocoTestCoverageVerification { violationRules { @@ -437,13 +236,15 @@ subprojects { subproj -> // make tag accessible in submodules. ext { cloudStorageTestTagName = 'cloud-storage' - numberThreads = project.hasProperty('numberThreads') ? project.getProperty('numberThreads') as int : Runtime.runtime.availableProcessors() ?: 1 + numberThreads = project.hasProperty('numberThreads') + ? project.getProperty('numberThreads') as int + : Runtime.runtime.availableProcessors() ?: 1 } spotbugs { ignoreFailures = false effort = 'max' - excludeFilter = rootProject.file('spotbugs-exclude-filter-file.xml') + excludeFilter.set rootProject.file('spotbugs-exclude-filter-file.xml') reportLevel = 'high' showProgress = false toolVersion = '4.7.3' @@ -466,18 +267,7 @@ subprojects { subproj -> // uncomment to get the full log output // showStandardStreams = true } - finalizedBy jacocoTestReport - } - - task allTests(type: Test) { - useJUnitPlatform() - testLogging() { - events "passed", "failed", "started" - exceptionFormat 'full' - // uncomment to get the full log output - // showStandardStreams = true - } - finalizedBy jacocoTestReport + finalizedBy jacocoTestReportTask } dependencies { @@ -532,15 +322,7 @@ subprojects { subproj -> implementation libs.spotbugs.annotations } - tasks.withType(Tar) { - duplicatesStrategy DuplicatesStrategy.INCLUDE - } - - tasks.withType(Zip) { - duplicatesStrategy DuplicatesStrategy.INCLUDE - } - - tasks.withType(SpotBugsTask) { + tasks.withType(SpotBugsTask).configureEach { // Reports can be found under each subproject in build/spotbugs/ reports { xml.required = false @@ -548,79 +330,165 @@ subprojects { subproj -> } } - tasks.withType(Pmd) { + tasks.withType(Pmd).configureEach { exclude '**/generated/**' exclude '**/jooq/**' } javadoc.options.addStringOption('Xdoclint:none', '-quiet') - check.dependsOn 'jacocoTestCoverageVerification' + tasks.named('check').configure { + dependsOn tasks.named('jacocoTestCoverageVerification') + } } +// License generation logic. +def createLicenseWith = { File license, String startComment, String endComment, String lineComment, boolean isPython -> + /* + In java, we don't have a second linter/styling tool other than spotless so it doesn't really + matter if we write a newline or not for startComment/endComment. -// add licenses for python projects. -subprojects { - def pythonFormatTask = project.tasks.findByName('blackFormat') - - if (pythonFormatTask != null) { - apply plugin: "com.github.hierynomus.license" - license { - header rootProject.file("LICENSE_SHORT") + However, in python, we are using black that double-checks and reformats the code. + Thus, writing an extra empty newline (not removed by trimTrailingWhitespace() is actually a + big deal and would be reformatted (removed) because of black's specs. + */ + def tmp = File.createTempFile('tmp', '.tmp') + tmp.withWriter { + def w = it + if (startComment.length() > 0 || !isPython) { + w.writeLine(startComment) } - task licenseFormatPython(type: com.hierynomus.gradle.license.tasks.LicenseFormat) { - header = createPythonLicenseWith(rootProject.file('LICENSE_SHORT')) - source = fileTree(dir: projectDir) - .include("**/*.py") - .exclude(".venv/**/*.py") - .exclude("**/airbyte_api_client/**/*.py") - .exclude("**/__init__.py") - strictCheck = true + license.eachLine { + w << lineComment + w.writeLine(it) } - def licenseTask = project.tasks.findByName('licenseFormatPython') - def isortFormatTask = project.tasks.findByName('isortFormat') - if (isortFormatTask != null) { - isortFormat.dependsOn licenseTask + if (endComment.length() > 0 || !isPython) { + w.writeLine(endComment) } - def flakeCheckTask = project.tasks.findByName('flakeCheck') - if (flakeCheckTask != null) { - flakeCheck.dependsOn licenseTask + w.writeLine("") + if (isPython) { + w.writeLine("") } - blackFormat.dependsOn licenseTask + } + return tmp +} +def createPythonLicenseWith = { license -> + return createLicenseWith(license, '', '', '', true) +} +def createJavaLicenseWith = { license -> + return createLicenseWith(license, '/*', ' */', ' * ', false) +} - def generateManifestFilesTask = project.tasks.findByName('generateComponentManifestClassFiles') - if (generateManifestFilesTask != null) { - licenseTask.dependsOn generateManifestFilesTask - } +// We are the spotless exclusions rules using file tree. It seems the excludeTarget option is super finicky in a +// monorepo setup and it doesn't actually exclude directories reliably. This code makes the behavior predictable. +def createSpotlessTarget = { pattern -> + def excludes = [ + '.gradle', + 'node_modules', + '.eggs', + '.mypy_cache', + '.venv', + '*.egg-info', + 'build', + 'dbt-project-template', + 'dbt-project-template-mssql', + 'dbt-project-template-mysql', + 'dbt-project-template-oracle', + 'dbt-project-template-clickhouse', + 'dbt-project-template-snowflake', + 'dbt-project-template-tidb', + 'dbt-project-template-duckdb', + 'dbt_test_config', + 'normalization_test_output', + 'tools', + 'secrets', + 'charts', // Helm charts often have injected template strings that will fail general linting. Helm linting is done separately. + 'resources/seed/*_catalog.json', // Do not remove - this is also necessary to prevent diffs in our github workflows + 'resources/seed/*_registry.json', // Do not remove - this is also necessary to prevent diffs in our github workflows + 'resources/seed/specs_secrets_mask.yaml', // Downloaded externally. + 'airbyte-integrations/connectors/source-amplitude/unit_tests/api_data/zipped.json', // Zipped file presents as non-UTF-8 making spotless sad + 'airbyte-connector-builder-server/connector_builder/generated', // autogenerated code doesn't need to be formatted + 'airbyte-ci/connectors/metadata_service/lib/tests/fixtures/**/invalid', // These are deliberately invalid and unformattable. + + ] + + if (System.getenv().containsKey("SUB_BUILD")) { + excludes.add("airbyte-integrations/connectors") + } + + return fileTree(dir: rootDir, include: pattern, exclude: excludes.collect { "**/${it}" }) +} + +// node is required by the root project to apply the prettier formatter repo-wide. +node { + download = true + version = '18.16.1' + npmVersion = '9.5.1' + // when setting both these directories, npm and node will be in separate directories + workDir = file("${buildDir}/nodejs") + npmWorkDir = file("${buildDir}/npm") +} + +// Spotless is used by 'format'. +spotless { + java { + target createSpotlessTarget('**/*.java') + + importOrder() + + eclipse('4.21.0').configFile(rootProject.file('tools/gradle/codestyle/java-google-style.xml')) + + licenseHeaderFile createJavaLicenseWith(rootProject.file('LICENSE_SHORT')) + removeUnusedImports() + trimTrailingWhitespace() + } + groovyGradle { + target createSpotlessTarget('**/*.gradle') + } + sql { + target createSpotlessTarget('**/*.sql') + + dbeaver().configFile(rootProject.file('tools/gradle/codestyle/sql-dbeaver.properties')) + } + format 'styling', { + target createSpotlessTarget(['**/*.yaml', '**/*.json']) + + prettier() + .npmExecutable("${tasks.named('npmSetup').get().npmDir.get()}/bin/npm") // get the npm executable path from gradle-node-plugin + .nodeExecutable("${tasks.named('nodeSetup').get().nodeDir.get()}/bin/node") // get the node executable path from gradle-node-plugin } } +tasks.named('spotlessStyling').configure { + dependsOn tasks.named('nodeSetup') + dependsOn tasks.named('npmSetup') +} +tasks.matching { it.name =~ /spotless.*Check/ }.configureEach { + enabled = false +} +// python is required by the root project to apply python formatters like isort or black. python { envPath = '.venv' minPythonVersion = '3.9' scope = 'VIRTUALENV' installVirtualenv = true pip 'pip:21.3.1' - // https://github.com/csachs/pyproject-flake8/issues/13 - pip 'flake8:4.0.1' - // flake8 doesn't support pyproject.toml files - // and thus there is the wrapper "pyproject-flake8" for this - pip 'pyproject-flake8:0.0.1a2' pip 'black:22.3.0' pip 'mypy:1.4.1' pip 'isort:5.6.4' - pip 'coverage[toml]:6.3.1' } -task('generate') { - dependsOn subprojects.collect { it.getTasksByName('generateComponentManifestClassFiles', true) } - dependsOn subprojects.collect { it.getTasksByName('generateJsonSchema2Pojo', true) } +// code and config generation is required for 'format' +def generateGlobal = tasks.register('generateGlobal') +generateGlobal.configure { + dependsOn allprojects.collect { tasks.matching { it.name == 'generate' } } } +// python license header generation is part of 'format' license { header rootProject.file("LICENSE_SHORT") } -task licensePythonGlobalFormat(type: com.hierynomus.gradle.license.tasks.LicenseFormat) { +def licensePythonGlobalFormat = tasks.register('licensePythonGlobalFormat', LicenseFormat) { header = createPythonLicenseWith(rootProject.file('LICENSE_SHORT')) source = fileTree(dir: rootProject.rootDir) .include("**/*.py") @@ -635,63 +503,78 @@ task licensePythonGlobalFormat(type: com.hierynomus.gradle.license.tasks.License .exclude("tools/git_hooks/tests/test_spec_linter.py") .exclude("tools/schema_generator/schema_generator/infer_schemas.py") strictCheck = true - dependsOn generate +} +licensePythonGlobalFormat.configure { + dependsOn generateGlobal } -task isortGlobalFormat(type: PythonTask) { +def isortGlobalFormat = tasks.register('isortGlobalFormat', PythonTask) { module = "isort" command = "--settings-file=${rootProject.file('pyproject.toml').absolutePath} ./" - dependsOn generate +} +isortGlobalFormat.configure { + dependsOn generateGlobal + dependsOn licensePythonGlobalFormat } -task blackGlobalFormat(type: PythonTask) { +def blackGlobalFormat = tasks.register('blackGlobalFormat', PythonTask) { module = "black" // the line length should match .isort.cfg command = "--config ${rootProject.file('pyproject.toml').absolutePath} ./" - dependsOn generate } - -task('format') { - dependsOn generate - dependsOn spotlessApply +blackGlobalFormat.configure { + dependsOn generateGlobal dependsOn licensePythonGlobalFormat dependsOn isortGlobalFormat +} + +def format = tasks.register('format') {} +format.configure { + dependsOn spotlessApply dependsOn blackGlobalFormat - tasks.findByName('spotlessApply').mustRunAfter 'generate' - tasks.findByName('licensePythonGlobalFormat').mustRunAfter 'generate' - tasks.findByName('isortGlobalFormat').mustRunAfter 'licensePythonGlobalFormat' - tasks.findByName('blackGlobalFormat').mustRunAfter 'isortGlobalFormat' +} +tasks.named('spotlessApply').configure { + dependsOn generateGlobal +} + +// integration and performance test tasks per project +allprojects { + tasks.register('integrationTest') { + dependsOn tasks.matching { + [ + 'integrationTestJava', + 'customIntegrationTests', // python integration tests + 'connectorAcceptanceTest', + 'standardSourceTestFile', + ].contains(it.name) + } + } + + tasks.register('performanceTest') { + dependsOn tasks.matching { + [ + 'performanceTestJava', + ].contains(it.name) + } + } } + +// convenience task to list all dependencies per project subprojects { - task listAllDependencies(type: DependencyReportTask) {} + tasks.register('listAllDependencies', DependencyReportTask) {} } // produce reproducible archives // (see https://docs.gradle.org/current/userguide/working_with_files.html#sec:reproducible_archives) -tasks.withType(AbstractArchiveTask) { +tasks.withType(AbstractArchiveTask).configureEach { preserveFileTimestamps = false reproducibleFileOrder = true } -// definition for publishing +// pin dependency versions according to ./deps.toml catalog { versionCatalog { from(files("deps.toml")) } } - -publishing { - publications { - // This block is present for dependency catalog publishing. - maven(MavenPublication) { - groupId = 'io.airbyte' - artifactId = 'oss-catalog' - - from components.versionCatalog - // Gradle will by default use the subproject path as the group id and the subproject name as the artifact id. - // e.g. the subproject :airbyte-example:example-models is imported at io.airbyte.airbyte-config-oss:config-persistence:. - } - } - repositories.add(rootProject.repositories.getByName('cloudrepo')) -} diff --git a/buildSrc/build.gradle b/buildSrc/build.gradle index 6b031e31d4e1..73ceef41fd21 100644 --- a/buildSrc/build.gradle +++ b/buildSrc/build.gradle @@ -3,13 +3,14 @@ plugins { } repositories { - jcenter() + mavenCentral() } dependencies { implementation 'ru.vyarus:gradle-use-python-plugin:2.3.0' + implementation 'org.apache.commons:commons-text:1.10.0' } -tasks.withType(Jar) { +tasks.withType(Jar).configureEach { duplicatesStrategy DuplicatesStrategy.INCLUDE } diff --git a/buildSrc/src/main/groovy/airbyte-connector-acceptance-test.gradle b/buildSrc/src/main/groovy/airbyte-connector-acceptance-test.gradle index b72aedb83ec2..15bfb83cb61e 100644 --- a/buildSrc/src/main/groovy/airbyte-connector-acceptance-test.gradle +++ b/buildSrc/src/main/groovy/airbyte-connector-acceptance-test.gradle @@ -6,18 +6,11 @@ class AirbyteConnectorAcceptanceTestPlugin implements Plugin { void apply(Project project) { - project.task('connectorAcceptanceTest') { - dependsOn project.build - dependsOn project.airbyteDocker - + def connectorAcceptanceTest = project.tasks.register('connectorAcceptanceTest') { if (!project.hasProperty('connectorAcceptanceTestVersion')) { project.ext.connectorAcceptanceTestVersion = 'latest' } - if (project.connectorAcceptanceTestVersion == 'dev') { - project.connectorAcceptanceTest.dependsOn(':airbyte-integrations:bases:connector-acceptance-test:airbyteDocker') - } - doFirst { if (project.connectorAcceptanceTestVersion != 'dev') { project.exec { @@ -53,19 +46,12 @@ class AirbyteConnectorAcceptanceTestPlugin implements Plugin { outputs.upToDateWhen { false } } - - - - if (project.hasProperty('airbyteDockerTest')){ - project.connectorAcceptanceTest.dependsOn(project.airbyteDockerTest) - } - - // make sure we create the integrationTest task once - if (!project.tasks.findByName('integrationTest')) { - project.task('integrationTest') + connectorAcceptanceTest.configure { + dependsOn project.tasks.named('assemble') + if (project.connectorAcceptanceTestVersion == 'dev') { + dependsOn project(':airbyte-integrations:bases:connector-acceptance-test').tasks.named('assemble') + } } - - project.integrationTest.dependsOn(project.connectorAcceptanceTest) } } diff --git a/buildSrc/src/main/groovy/airbyte-docker.gradle b/buildSrc/src/main/groovy/airbyte-docker.gradle index 275bbcff1bea..7ced4074047c 100644 --- a/buildSrc/src/main/groovy/airbyte-docker.gradle +++ b/buildSrc/src/main/groovy/airbyte-docker.gradle @@ -1,251 +1,342 @@ +import java.util.concurrent.ConcurrentHashMap import org.gradle.api.DefaultTask +import org.gradle.api.GradleException import org.gradle.api.Plugin import org.gradle.api.Project +import org.gradle.api.file.ConfigurableFileTree import org.gradle.api.file.FileCollection import org.gradle.api.tasks.CacheableTask import org.gradle.api.tasks.Input -import org.gradle.api.tasks.InputDirectory +import org.gradle.api.tasks.InputFile import org.gradle.api.tasks.InputFiles -import org.gradle.api.tasks.Internal import org.gradle.api.tasks.OutputFile import org.gradle.api.tasks.PathSensitive import org.gradle.api.tasks.PathSensitivity import org.gradle.api.tasks.TaskAction -import org.slf4j.Logger -import java.nio.file.Path import java.security.MessageDigest import java.nio.file.Paths +import org.apache.commons.text.StringSubstitutor + @CacheableTask -abstract class AirbyteDockerTask extends DefaultTask { - @Internal - abstract File rootDir +abstract class AirbyteDockerBaseTask extends DefaultTask { @InputFiles @PathSensitive(PathSensitivity.RELATIVE) - abstract FileCollection projectFiles + FileCollection filesInDockerImage @Input - abstract Set baseImageHashes + Map baseImageHashes - @InputDirectory - @PathSensitive(PathSensitivity.RELATIVE) - abstract File projectDir + @InputFile + File dockerFile - @Input - String dockerfileName + @OutputFile + File idFileOutput +} - @Input - boolean followSymlinks = false +abstract class AirbyteDockerTask extends AirbyteDockerBaseTask { - @OutputFile - abstract File idFileOutput + @InputFile + File buildScript = project.rootProject.file('tools/bin/build_image.sh') - def buildDockerfile(String scriptPath, String fileName) { - if (project.file(fileName).exists()) { - def tag = DockerHelpers.getDevTaggedImage(projectDir, dockerfileName) + @TaskAction + def dockerTask() { + project.exec { + commandLine( + buildScript.absolutePath, + project.rootDir.absolutePath, + project.projectDir.absolutePath, + dockerFile.name, + DockerHelpers.getDevTaggedImage(project.projectDir, dockerFile.name), + idFileOutput.absolutePath, + ) + } + } +} - def arch = System.getProperty("os.arch").toLowerCase() - def isArm64 = arch == "aarch64" || arch == "arm64" - def buildPlatform = System.getenv('DOCKER_BUILD_PLATFORM') ?: isArm64 ? 'linux/arm64' : 'amd64' +abstract class AirbyteDockerWithLocalCDKLegacyTask extends AirbyteDockerBaseTask { - project.exec { - commandLine scriptPath, rootDir.absolutePath, projectDir.absolutePath, dockerfileName, tag, idFileOutput.absolutePath, followSymlinks, buildPlatform - } + @InputFile + File buildScript = project.rootProject.file('airbyte-integrations/scripts/build-connector-image-with-local-cdk.sh') + + @TaskAction + def dockerTask() { + project.exec { + environment "CONNECTOR_TAG", DockerHelpers.getDevTaggedImage(project.projectDir, dockerFile.name) + environment "CONNECTOR_NAME", project.findProperty('connectorAcceptanceTest.connectorName') + commandLine buildScript.absolutePath } } +} + +/** + * AirbyteDockerTaskFactory is a convenience object to avoid passing the current project around. + */ +class AirbyteDockerTaskFactory { + + private AirbyteDockerTaskFactory() {} + + Project project + String dockerFileName + + File dockerFile() { + return project.file(dockerFileName) + } + + // This hash of the full path to the Dockerfile is the name of the task's output file. + String dockerfilePathHash() { + return MessageDigest.getInstance("MD5") + .digest(dockerFile().absolutePath.getBytes()) + .encodeHex() + .toString() + } - def buildDockerfileWithLocalCdk(String scriptPath, String fileName) { - if (project.file(fileName).exists()) { - def tag = DockerHelpers.getDevTaggedImage(projectDir, dockerfileName) - project.exec { - environment "CONNECTOR_TAG", tag - environment "CONNECTOR_NAME", project.findProperty('connectorAcceptanceTest.connectorName') - commandLine scriptPath + // A superset of the files which are COPYed into the image, defined as the project file set + // with the .dockerignore rules applied to it. + // We could be more precise by parsing the Dockerfile but this is good enough in practice. + FileCollection filteredProjectFiles() { + ConfigurableFileTree files = project.fileTree(project.projectDir) + def dockerignore = project.file('.dockerignore') + if (!dockerignore.exists()) { + return files.filter { + file -> !file.toString().contains(".venv") + } + } + for (def rule : dockerignore.readLines()) { + if (rule.startsWith("#")) { + continue } + rule = rule.trim() + files = (rule.startsWith("!") ? files.include(rule.substring(1)) : files.exclude(rule)) as ConfigurableFileTree } + return files } - @TaskAction - def dockerTask() { - if ( - project.hasProperty('connectorAcceptanceTest.useLocalCdk') && - project.properties["connectorAcceptanceTest.useLocalCdk"] && - project.parent.project.name.equals("connectors") - ) { - def scriptPath = Paths.get(rootDir.absolutePath, 'airbyte-integrations/scripts/build-connector-image-with-local-cdk.sh').toString() - buildDockerfileWithLocalCdk(scriptPath, dockerfileName) - } - else { - def scriptPath = Paths.get(rootDir.absolutePath, 'tools/bin/build_image.sh').toString() - buildDockerfile(scriptPath, dockerfileName) + // Queries docker for all images and their hashes. + static synchronized Map collectKnownImageHashes(Project project) { + def stdout = new ByteArrayOutputStream() + project.rootProject.exec { + commandLine "docker", "images", "--no-trunc", "-f", "dangling=false", "--format", "{{.Repository}}:{{.Tag}} {{.ID}}" + standardOutput = stdout } + Map map = [:] + stdout.toString().eachLine {line -> + def splits = line.split() + map.put(splits[0], splits[1].trim()) + } + return map } -} -class AirbyteDockerPlugin implements Plugin { + // Query all docker images at most once for all tasks, at task creation time. + static def lazyImageHashesAtTaskCreationTime = new LazyImageHashesCache() - static def getBaseTaggedImages(File dockerfile) { - def result = [] as Set + static class LazyImageHashesCache { + private Map lazyValue + + synchronized Map get(Project project) { + if (lazyValue == null) { + lazyValue = collectKnownImageHashes(project) + } + return lazyValue + } + } + + // Global mapping of tagged image name to gradle project. + // This is populated at configuration time and accessed at task creation time. + // All keys verify isTaggedImageOwnedByThisRepo. + static def taggedImageToProject = new ConcurrentHashMap() + + static boolean isTaggedImageOwnedByThisRepo(String taggedImage) { + if (!taggedImage.startsWith("airbyte/")) { + // Airbyte's docker images are all prefixed like this. + // Anything not with this prefix is therefore not owned by this repo. + return false + } + if (taggedImage.startsWith("airbyte/base-airbyte-protocol-python:")) { + // Special case: this image is not built by this repo. + return false + } + if (!taggedImage.endsWith(":dev")) { + // Special case: this image is owned by this repo but built separate. e.g. source-file-secure + return false + } + // Otherwise, assume the image is built by this repo. + return true + } + + // Returns a mapping of each base image referenced in the Dockerfile to the corresponding hash + // in the results of collectKnownImageHashes(). If no hash was found, map to "???" instead. + Map baseTaggedImagesAndHashes(Map allKnownImageHashes) { + def taggedImages = new HashSet() // Look for "FROM foo AS bar" directives, and add them to the map with .put("bar", "foo") Map imageAliases = [:] - dockerfile.eachLine { line -> + dockerFile().eachLine { line -> def parts = line.split() if (parts.length >= 4 && parts[0].equals("FROM") && parts[parts.length - 2].equals("AS")) { imageAliases.put(parts[parts.length - 1], parts[1]) } } - dockerfile.eachLine { line -> + dockerFile().eachLine { line -> if (line.startsWith("FROM ")) { def image = line.split()[1] assert !image.isEmpty() - result.add(image) + taggedImages.add(image) } else if (line.startsWith("COPY --from=")) { def image = line.substring("COPY --from=".length()).split()[0] assert !image.isEmpty() if (imageAliases[image] != null) { - result.add(imageAliases[image]) + taggedImages.add(imageAliases[image]) } else { - result.add(image) + taggedImages.add(image) } } } - return result - } - - static def getBaseImageHashes(Map imageToHash, File dockerfile) { - def result = [] as Set - - getBaseTaggedImages(dockerfile).forEach { taggedImage -> - result.add((String) imageToHash.get(taggedImage)) + Map result = [:] + for (def taggedImage : taggedImages) { + // Some image tags rely on environment variables (e.g. "FROM amazoncorretto:${JDK_VERSION}"). + taggedImage = new StringSubstitutor(System.getenv()).replace(taggedImage).trim() + result.put(taggedImage, allKnownImageHashes.getOrDefault(taggedImage, "???")) } - return result } - static String getImageHash(Project project, String taggedImage) { - def stdout = new ByteArrayOutputStream() - - project.exec { - commandLine "docker", "images", "--no-trunc", "-f", "dangling=false", "--format", "{{.ID}}", resolveEnvironmentVariables(project, taggedImage) - standardOutput = stdout; + // Create the task lazily: we shouldn't invoke 'docker' unless the task is created as part of the build. + def createTask(String taskName) { + if (!dockerFile().exists()) { + // This might not actually be necessary. It doesn't seem harmful either. + return project.tasks.register(taskName) { + logger.info "Skipping ${taskName} because ${dockerFile()} does not exist." + } } - - return "$stdout".toString().trim() - } - - // Some image tags rely on environment variables (e.g. "FROM amazoncorretto:${JDK_VERSION}"). - // dump those into a "sh -c 'echo ...'" command to resolve them (e.g. "amazoncorretto:17.0.4") - static String resolveEnvironmentVariables(Project project, String str) { - def stdout = new ByteArrayOutputStream() - - project.exec { - commandLine "sh", "-c", "echo " + str - standardOutput = stdout; + Class taskClass = AirbyteDockerTask + if (project.hasProperty('connectorAcceptanceTest.useLocalCdk') && project.parent.project.name == "connectors") { + // This is only used by the legacy test slash command, for connectors for which + // airbyte-ci isn't supported yet. + taskClass = AirbyteDockerWithLocalCDKLegacyTask } - return "$stdout".toString().trim() - } - - static boolean isUpToDate(Logger logger, File idFileOutput, Project project, String dockerFile, Path dockerPath) { - if (idFileOutput.exists()) { - def taggedImage = DockerHelpers.getDevTaggedImage(project.projectDir, dockerFile) - logger.debug "taggedImage " + taggedImage - - def current = getImageHash(project, taggedImage) - logger.debug "current " + current - def stored = (String) project.rootProject.imageToHash.get(taggedImage) - logger.debug "stored " + stored - - def notUpToDate = new ArrayList(getBaseTaggedImages(dockerPath.toFile())).any { baseImage -> - logger.debug "checking base image " + baseImage - def storedBase = (String) project.rootProject.imageToHash.get(resolveEnvironmentVariables(project, baseImage)) - def currentBase = getImageHash(project, baseImage) - - logger.debug "storedBase " + storedBase - logger.debug "currentBase " + currentBase - if (!currentBase.equals(storedBase)) { - logger.debug "did not match" - return true - } else { - logger.debug "did match" - return false + // Tagged name of the image to be built by this task. + def taggedImage = DockerHelpers.getDevTaggedImage(project.projectDir, dockerFileName) + // Map this project to the tagged name of the image built by this task. + taggedImageToProject.put(taggedImage, project) + // Path to the ID file to be generated by this task. + // The ID file contains the hash of the image. + def idFilePath = Paths.get(project.rootProject.rootDir.absolutePath, '.dockerversions', dockerfilePathHash()) + // Register the task (lazy creation). + def airbyteDockerTask = project.tasks.register(taskName, taskClass) { task -> + // Set inputs. + task.filesInDockerImage = filteredProjectFiles() + task.dockerFile = this.dockerFile() + task.baseImageHashes = baseTaggedImagesAndHashes(lazyImageHashesAtTaskCreationTime.get(project)) + // Set dependencies on base images built by this repo. + for (String taggedImageDependency : task.baseImageHashes.keySet()) { + if (isTaggedImageOwnedByThisRepo(taggedImageDependency)) { + task.logger.info("adding airbyteDocker task dependency: image ${taggedImage} is based on ${taggedImageDependency}") + def dependentProject = taggedImageToProject.get(taggedImageDependency) + if (dependentProject == null) { + throw new GradleException("no known project for image ${taggedImageDependency}") + } + // Depend on 'assemble' instead of 'airbyteDocker' or 'airbyteDockerTest', it's simpler that way. + task.dependsOn(dependentProject.tasks.named('assemble')) } } - - if (notUpToDate) { - return false; + // Set outputs. + task.idFileOutput = idFilePath.toFile() + task.outputs.upToDateWhen { + // Because the baseImageHashes is computed at task creation time, it may be stale + // at task execution time. Let's double-check. + + // Missing dependency declarations in the gradle build may result in the airbyteDocker tasks + // to be created in the wrong order. Not worth breaking the build over. + for (Map.Entry e : task.baseImageHashes) { + if (isTaggedImageOwnedByThisRepo(e.key) && e.value == "???") { + task.logger.info "Not up to date: missing at least one airbyte base image in docker" + return false + } + } + // Fetch the hashes of the required based images anew. + def allImageHashes = collectKnownImageHashes(task.project) + // If the image to be built by this task doesn't exist in docker, then it definitely should + // be built regardless of the status of the ID file. + // For instance, it's possible that a `docker image rm` occurred between consecutive + // identical gradle builds: the ID file remains untouched but the image still needs to be rebuilt. + if (!allImageHashes.containsKey(taggedImage)) { + task.logger.info "Not up to date: ID file exists but target image not found in docker" + return false + } + // If the depended-upon base images have changed in the meantime, then it follows that the target + // image needs to be rebuilt regardless of the status of the ID file. + def currentBaseImageHashes = baseTaggedImagesAndHashes(allImageHashes) + if (!task.baseImageHashes.equals(currentBaseImageHashes)) { + task.logger.info "Not up to date: at last one base image has changed in docker since task creation" + return false + } + // In all other cases, if the ID file hasn't been touched, then the task can be skipped. + return true } - - logger.debug "stored " + stored - - def upToDate = current.equals(stored) - - logger.debug "uptodate " + upToDate.toString() - - return upToDate - } else { - return false } - } - - static def createTask(Project project, String taskName, String dockerFile) { - if (project.file(dockerFile).exists()) { - def filteredProjectFiles = project.fileTree(project.projectDir).filter { - file -> !file.toString().contains(".venv") - } - project.task(taskName, type: AirbyteDockerTask) { - def dockerPath = Paths.get(project.projectDir.absolutePath, dockerFile) - def hash = MessageDigest.getInstance("MD5").digest(dockerPath.getBytes()).encodeHex().toString() - dockerfileName = dockerFile - rootDir = project.rootProject.rootDir - projectDir = project.projectDir - projectFiles = filteredProjectFiles - idFileOutput = project.file(Paths.get(project.rootProject.rootDir.absolutePath, '.dockerversions', hash).toString()) - baseImageHashes = getBaseImageHashes(project.rootProject.imageToHash, dockerPath.toFile()) - dependsOn project.assemble - - outputs.upToDateWhen { - return isUpToDate(logger, idFileOutput, project, dockerFile, dockerPath) - } - } - } else { - project.task(taskName) { - logger.info "Skipping ${taskName} because ${dockerFile} does not exist." - } + airbyteDockerTask.configure { + // Images for java projects always rely on the distribution tarball. + dependsOn project.tasks.matching { it.name == 'distTar' } + // Ensure that all files exist beforehand. + dependsOn project.tasks.matching { it.name == 'generate' } + } + project.tasks.named('assemble').configure { + // We may revisit the dependency on assemble but the dependency should always be on a base task. + dependsOn airbyteDockerTask } + // Add a task to clean up when doing a gradle clean. + // Don't actually mess with docker, just delete the output file. + def airbyteDockerCleanTask = project.tasks.register(taskName + "Clean", Delete) { + delete idFilePath + } + project.tasks.named('clean').configure { + dependsOn airbyteDockerCleanTask + } + return airbyteDockerTask } - void apply(Project project) { - // set (and cache) global image to version map - project.rootProject.ext.imageToHash = { - if (!project.rootProject.hasProperty("imageToHash")) { - def imageToHash = [:] - def stdout = new ByteArrayOutputStream() - project.exec { - commandLine "docker", "images", "--no-trunc", "-f", "dangling=false", "--format", "{{.Repository}}:{{.Tag}} {{.ID}}" - standardOutput = stdout; - } - - "$stdout".eachLine { line -> - def splits = line.split() - imageToHash.put(splits[0], splits[1].trim()) - } + static def build(Project project, String taskName, String dockerFileName) { + def f = new AirbyteDockerTaskFactory() + f.project = project + f.dockerFileName = dockerFileName + f.createTask(taskName) + } +} - return imageToHash - } else { - return project.rootProject.imageToHash - } - }() +/** + * AirbyteDockerPlugin creates an airbyteDocker task for the project when a Dockerfile is present. + * + * Following the same logic, it creates airbyteDockerTest when Dockerfile.test is present, though + * that behavior is not used anywhere except in the source-mongo connector and is therefore deprecated + * through the use of airbyte-ci. + */ +class AirbyteDockerPlugin implements Plugin { - createTask(project, 'airbyteDocker', 'Dockerfile') - createTask(project, 'airbyteDockerTest', 'Dockerfile.test') + void apply(Project project) { + AirbyteDockerTaskFactory.build(project, 'airbyteDocker', 'Dockerfile') + + // Used only for source-mongodb. Consider removing entirely. + AirbyteDockerTaskFactory.build(project, 'airbyteDockerTest', 'Dockerfile.test') + + // Used for base-normalization. + [ 'airbyteDockerMSSql': 'mssql', + 'airbyteDockerMySql': 'mysql', + 'airbyteDockerOracle': 'oracle', + 'airbyteDockerClickhouse': 'clickhouse', + 'airbyteDockerSnowflake': 'snowflake', + 'airbyteDockerRedshift': 'redshift', + 'airbyteDockerTiDB': 'tidb', + 'airbyteDockerDuckDB': 'duckdb' + ].forEach {taskName, customConnector -> + AirbyteDockerTaskFactory.build(project, taskName, "${customConnector}.Dockerfile") + } - project.build.dependsOn project.airbyteDocker } } diff --git a/buildSrc/src/main/groovy/airbyte-integration-test-java.gradle b/buildSrc/src/main/groovy/airbyte-integration-test-java.gradle index e650889c417c..659a9cdff84c 100644 --- a/buildSrc/src/main/groovy/airbyte-integration-test-java.gradle +++ b/buildSrc/src/main/groovy/airbyte-integration-test-java.gradle @@ -14,16 +14,16 @@ class AirbyteIntegrationTestJavaPlugin implements Plugin { } } } - project.test.dependsOn('compileIntegrationTestJavaJava') + project.tasks.named('test').configure { + dependsOn project.tasks.named('compileIntegrationTestJavaJava') + } project.configurations { integrationTestJavaImplementation.extendsFrom testImplementation integrationTestJavaRuntimeOnly.extendsFrom testRuntimeOnly } - project.task('integrationTestJava', type: Test) { - mustRunAfter project.test - + def integrationTestJava = project.tasks.register('integrationTestJava', Test) { testClassesDirs = project.sourceSets.integrationTestJava.output.classesDirs classpath += project.sourceSets.integrationTestJava.runtimeClasspath @@ -41,31 +41,30 @@ class AirbyteIntegrationTestJavaPlugin implements Plugin { outputs.upToDateWhen { false } - if(project.hasProperty('airbyteDocker')) { - dependsOn project.airbyteDocker + maxParallelForks = Runtime.runtime.availableProcessors() + // This allows to set up a `gradle.properties` file inside the connector folder to reduce parallelization. + // This is especially useful for connectors that shares resources (like Redshift or Snowflake). + if (project.hasProperty('numberThreads')) { + int numberThreads = 0 + String numberThreadsString = project.property('numberThreads').toString() + if (numberThreadsString.isInteger()) { + numberThreads = numberThreadsString as int + } + if (numberThreads > 0 && numberThreads < maxParallelForks) { + maxParallelForks = numberThreads + } } - - //This allows to set up a `gradle.properties` file inside the connector folder to reduce number of threads and reduce parallelization. - //Specially useful for connectors that shares resources (like Redshift or Snowflake). - ext.numberThreads = project.hasProperty('numberThreads') ? project.getProperty('numberThreads') as int : Runtime.runtime.availableProcessors() ?: 1 maxHeapSize = '3g' - maxParallelForks = numberThreads - - // This is needed to make the destination-snowflake tests succeed - https://github.com/snowflakedb/snowflake-jdbc/issues/589#issuecomment-983944767 - jvmArgs = ["--add-opens=java.base/java.nio=ALL-UNNAMED"] systemProperties = [ // Allow tests to set @Execution(ExecutionMode.CONCURRENT) 'junit.jupiter.execution.parallel.enabled': 'true' ] } - - // make sure we create the integrationTest task once in case a standard source test was already initialized - if(!project.hasProperty('integrationTest')) { - project.task('integrationTest') + integrationTestJava.configure { + mustRunAfter project.tasks.named('test') + dependsOn project.tasks.matching { it.name == 'assemble' } + dependsOn project.tasks.matching { it.name == 'spotbugsMain' } } - - project.integrationTest.dependsOn(project.integrationTestJava) - project.integrationTest.dependsOn(project.spotbugsMain) } } diff --git a/buildSrc/src/main/groovy/airbyte-performance-test-java.gradle b/buildSrc/src/main/groovy/airbyte-performance-test-java.gradle index 38e8ab20fbdf..6a59bb3c375f 100644 --- a/buildSrc/src/main/groovy/airbyte-performance-test-java.gradle +++ b/buildSrc/src/main/groovy/airbyte-performance-test-java.gradle @@ -14,14 +14,16 @@ class AirbytePerformanceTestJavaPlugin implements Plugin { } } } - project.test.dependsOn('compilePerformanceTestJavaJava') + project.tasks.named('test').configure { + dependsOn project.tasks.named('compilePerformanceTestJavaJava') + } project.configurations { performanceTestJavaImplementation.extendsFrom testImplementation performanceTestJavaRuntimeOnly.extendsFrom testRuntimeOnly } - project.task('performanceTestJava', type: Test) { + def performanceTestJava = project.tasks.register('performanceTestJava', Test) { testClassesDirs = project.sourceSets.performanceTestJava.output.classesDirs classpath += project.sourceSets.performanceTestJava.runtimeClasspath @@ -35,21 +37,11 @@ class AirbytePerformanceTestJavaPlugin implements Plugin { } outputs.upToDateWhen { false } - - if(project.hasProperty('airbyteDocker')) { - dependsOn project.airbyteDocker - } - maxHeapSize = '3g' - - mustRunAfter project.test } - - // make sure we create the performanceTest task once in case a standard source test was already initialized - if(!project.hasProperty('performanceTest')) { - project.task('performanceTest') + performanceTestJava.configure { + mustRunAfter project.tasks.named('test') + dependsOn project.tasks.matching { it.name == 'assemble' } } - - project.performanceTest.dependsOn(project.performanceTestJava) } } diff --git a/buildSrc/src/main/groovy/airbyte-python-docker.gradle b/buildSrc/src/main/groovy/airbyte-python-docker.gradle deleted file mode 100644 index 91eee0eeb355..000000000000 --- a/buildSrc/src/main/groovy/airbyte-python-docker.gradle +++ /dev/null @@ -1,38 +0,0 @@ -import org.gradle.api.Plugin -import org.gradle.api.Project -import org.gradle.api.tasks.Exec - -/* -This plugin exists to build & test a python module via Gradle without requiring the developer to install Python on their machine. It achieves this by mounting the module into a Python Docker image and running the tests. - -Modules consuming this plugin must define two scripts `run_tests.sh` and `run_format.sh`. -*/ - -class AirbytePythonDockerConfiguration { - String moduleDirectory -} - -class AirbytePythonDockerPlugin implements Plugin { - - void apply(Project project) { - def extension = project.extensions.create('airbytePythonDocker', AirbytePythonDockerConfiguration) - - project.task('airbytePythonDockerApply', type: Exec) { - /* - Install the dependencies and run the tests from a docker container - */ - commandLine "docker", "run", "-v", "${project.projectDir.getAbsolutePath()}:/home", "--entrypoint", "/bin/bash", "python:3.9-slim", "-c", "chmod +x /home/run_tests.sh && /home/run_tests.sh /home" - } - - project.task('blackFormat', type: Exec) { - /* - Run formatter and static analysis from a docker container - */ - commandLine "docker", "run", "-v", "${project.projectDir.getAbsolutePath()}:/home", "--entrypoint", "/bin/bash", "python:3.9-slim", "-c", "chmod +x /home/run_tests.sh && /home/run_format.sh /home" - } - - project.assemble.dependsOn project.airbytePythonDockerApply - project.test.dependsOn project.airbytePythonDockerApply - } -} - diff --git a/buildSrc/src/main/groovy/airbyte-python.gradle b/buildSrc/src/main/groovy/airbyte-python.gradle index b7884f661ee2..f950f641ad99 100644 --- a/buildSrc/src/main/groovy/airbyte-python.gradle +++ b/buildSrc/src/main/groovy/airbyte-python.gradle @@ -30,42 +30,67 @@ class Helpers { See https://github.com/airbytehq/airbyte/issues/4979 for original context """ + boolean requiresTasks = false if (project.file(testFilesDirectory).exists()) { - def outputArg = project.hasProperty('reports_folder') ?"-otemp_coverage.xml" : "--skip-empty" - def coverageFormat = project.hasProperty('reports_folder') ? 'xml' : 'report' + project.projectDir.toPath().resolve(testFilesDirectory).traverse(type: FileType.FILES, + nameFilter: ~/(^test_.*|.*_test)\.py$/) {file -> + requiresTasks = true + // If a file is found, terminate the traversal, thus causing this task to be declared at most once + return FileVisitResult.TERMINATE + } + } + if (!requiresTasks) { + return + } + + def coverageTask = project.tasks.register("_${taskName}Coverage", PythonTask) { + def dataFile = "${testFilesDirectory}/.coverage.${taskName}" + def rcFile = project.rootProject.file('pyproject.toml').absolutePath def testConfig = project.file('pytest.ini').exists() ? 'pytest.ini' : project.rootProject.file('pyproject.toml').absolutePath - project.projectDir.toPath().resolve(testFilesDirectory).traverse(type: FileType.FILES, nameFilter: ~/(^test_.*|.*_test)\.py$/) { file -> - project.task("_${taskName}Coverage", type: PythonTask, dependsOn: taskDependencies) { - module = "coverage" - command = "run --data-file=${testFilesDirectory}/.coverage.${taskName} --rcfile=${project.rootProject.file('pyproject.toml').absolutePath} -m pytest -s ${testFilesDirectory} -c ${testConfig}" - } - // generation of coverage report is optional and we should skip it if tests are empty - - project.task(taskName, type: Exec){ - commandLine = ".venv/bin/python" - args "-m", "coverage", coverageFormat, "--data-file=${testFilesDirectory}/.coverage.${taskName}", "--rcfile=${project.rootProject.file('pyproject.toml').absolutePath}", outputArg - dependsOn project.tasks.findByName("_${taskName}Coverage") - setIgnoreExitValue true - doLast { - // try to move a generated report to custom report folder if needed - if (project.file('temp_coverage.xml').exists() && project.hasProperty('reports_folder')) { - project.file('temp_coverage.xml').renameTo(project.file("${project.reports_folder}/coverage.xml")) - } - } + module = "coverage" + command = "run --data-file=${dataFile} --rcfile=${rcFile} -m pytest -s ${testFilesDirectory} -c ${testConfig}" + } + coverageTask.configure { + dependsOn taskDependencies + } + // generation of coverage report is optional and we should skip it if tests are empty + + def testTask = project.tasks.register(taskName, Exec){ + def dataFile = "${testFilesDirectory}/.coverage.${taskName}" + def rcFile = project.rootProject.file('pyproject.toml').absolutePath + def coverageFormat = project.hasProperty('reports_folder') ? 'xml' : 'report' + def outputArg = project.hasProperty('reports_folder') ? "-otemp_coverage.xml" : "--skip-empty" + + commandLine = ".venv/bin/python" + args "-m", "coverage", coverageFormat, "--data-file=${dataFile}", "--rcfile=${rcFile}", outputArg + setIgnoreExitValue true + + doLast { + // try to move a generated report to custom report folder if needed + if (project.file('temp_coverage.xml').exists() && project.hasProperty('reports_folder')) { + project.file('temp_coverage.xml').renameTo(project.file("${project.reports_folder}/coverage.xml")) } - // If a file is found, terminate the traversal, thus causing this task to be declared at most once - return FileVisitResult.TERMINATE } } + testTask.configure { + dependsOn coverageTask + } + } - // If the task doesn't exist then we didn't find a matching file. So add an empty task since other tasks will - // probably rely on this one existing. - if (!project.hasProperty(taskName)) { - project.task(taskName) { - logger.info "Skipping task ${taskName} because ${testFilesDirectory} doesn't exist." + static boolean isPyenvInPath() { + String path = System.getenv('PATH') + if (path == null || path.empty) { + return false + } + for (final String p : path.split(File.pathSeparator)) { + for (final String d : p.split(File.separator)) { + if (".pyenv" == d) { + return true + } } } + return false } } @@ -75,10 +100,25 @@ class AirbytePythonPlugin implements Plugin { def extension = project.extensions.create('airbytePython', AirbytePythonConfiguration) def venvDirectoryName = '.venv' + + // Add a task that allows cleaning up venvs to every python project + def cleanPythonVenv = project.tasks.register('cleanPythonVenv', Exec) { + commandLine 'rm' + args '-rf', "$project.projectDir.absolutePath/$venvDirectoryName" + } + project.tasks.named('clean').configure { + dependsOn cleanPythonVenv + } + project.plugins.apply 'ru.vyarus.use-python' + // Configure gradle python plugin. project.python { envPath = venvDirectoryName + if (Helpers.isPyenvInPath()) { + // When using pyenv, prefer 'python' instead of 'python3'. + pythonBinary = 'python' + } minPythonVersion = '3.9' scope = 'VIRTUALENV' installVirtualenv = true @@ -96,55 +136,39 @@ class AirbytePythonPlugin implements Plugin { pip 'coverage[toml]:6.3.1' } - - project.task('isortFormat', type: PythonTask) { - module = "isort" - command = "--settings-file=${project.rootProject.file('pyproject.toml').absolutePath} ./" - } - - project.task('isortReport', type: PythonTask) { + def isortReport = project.tasks.register('isortReport', PythonTask) { module = "isort" command = "--settings-file=${project.rootProject.file('pyproject.toml').absolutePath} --diff --quiet ./" outputPrefix = '' } - project.task('blackFormat', type: PythonTask) { - module = "black" - // the line length should match .isort.cfg - command = "--config ${project.rootProject.file('pyproject.toml').absolutePath} ./" - dependsOn project.rootProject.licenseFormat - dependsOn project.isortFormat - } - - project.task('blackReport', type: PythonTask) { + def blackReport = project.tasks.register('blackReport', PythonTask) { module = "black" command = "--config ${project.rootProject.file('pyproject.toml').absolutePath} --diff --quiet ./" outputPrefix = '' } - project.task('flakeCheck', type: PythonTask, dependsOn: project.blackFormat) { + def flakeCheck = project.tasks.register('flakeCheck', PythonTask) { module = "pflake8" command = "--config ${project.rootProject.file('pyproject.toml').absolutePath} ./" } - project.task('flakeReport', type: PythonTask) { + def flakeReport = project.tasks.register('flakeReport', PythonTask) { module = "pflake8" command = "--exit-zero --config ${project.rootProject.file('pyproject.toml').absolutePath} ./" outputPrefix = '' } - project.task("mypyReport", type: Exec){ + def mypyReport = project.tasks.register("mypyReport", Exec){ commandLine = ".venv/bin/python" args "-m", "mypy", "--config-file", "${project.rootProject.file('pyproject.toml').absolutePath}", "./" setIgnoreExitValue true } - - - // attempt to install anything in requirements.txt. by convention this should only be dependencies whose source is located in the project. - + // Attempt to install anything in requirements.txt. + // By convention this should only be dependencies whose source is located in the project. if (project.file('requirements.txt').exists()) { - project.task('installLocalReqs', type: PythonTask) { + project.tasks.register('installLocalReqs', PythonTask) { module = "pip" command = "install -r requirements.txt" inputs.file('requirements.txt') @@ -153,56 +177,59 @@ class AirbytePythonPlugin implements Plugin { } else if (project.file('setup.py').exists()) { // If requirements.txt does not exists, install from setup.py instead, assume a dev or "tests" profile exists. // In this case, there is no need to depend on the base python modules since everything should be contained in the setup.py. - project.task('installLocalReqs', type: PythonTask) { + project.tasks.register('installLocalReqs', PythonTask) { module = "pip" command = "install .[dev,tests]" } } else { throw new GradleException('Error: Python module lacks requirement.txt and setup.py') } + def installLocalReqs = project.tasks.named('installLocalReqs') - project.task('installReqs', type: PythonTask, dependsOn: project.installLocalReqs) { + def installReqs = project.tasks.register('installReqs', PythonTask) { module = "pip" command = "install .[main]" inputs.file('setup.py') outputs.file('build/installedreqs.txt') } - - project.task('installTestReqs', type: PythonTask, dependsOn: project.installReqs) { - module = "pip" - command = "install .[tests]" - inputs.file('setup.py') - outputs.file('build/installedtestreqs.txt') + installReqs.configure { + dependsOn installLocalReqs } - Helpers.addTestTaskIfTestFilesFound(project, 'unit_tests', 'unitTest', project.installTestReqs) - - Helpers.addTestTaskIfTestFilesFound(project, 'integration_tests', 'customIntegrationTests', project.installTestReqs) - if (!project.tasks.findByName('integrationTest')) { - project.task('integrationTest') + project.tasks.named('check').configure { + dependsOn installReqs + dependsOn flakeCheck } - project.integrationTest.dependsOn(project.customIntegrationTests) if (extension.moduleDirectory) { - project.task('mypyCheck', type: PythonTask) { + def mypyCheck = project.tasks.register('mypyCheck', PythonTask) { module = "mypy" command = "-m ${extension.moduleDirectory} --config-file ${project.rootProject.file('pyproject.toml').absolutePath}" } - project.check.dependsOn mypyCheck + project.tasks.named('check').configure { + dependsOn mypyCheck + } + } + + def installTestReqs = project.tasks.register('installTestReqs', PythonTask) { + module = "pip" + command = "install .[tests]" + inputs.file('setup.py') + outputs.file('build/installedtestreqs.txt') + } + installTestReqs.configure { + dependsOn installReqs } - project.task('airbytePythonFormat', type: DefaultTask) { - dependsOn project.blackFormat - dependsOn project.isortFormat - dependsOn project.flakeCheck + Helpers.addTestTaskIfTestFilesFound(project, 'unit_tests', 'unitTest', installTestReqs) + project.tasks.named('check').configure { + dependsOn project.tasks.matching { it.name == 'unitTest' } } - project.task('airbytePythonReport', type: DefaultTask) { - dependsOn project.blackReport - dependsOn project.isortReport - dependsOn project.flakeReport - dependsOn project.mypyReport + Helpers.addTestTaskIfTestFilesFound(project, 'integration_tests', 'customIntegrationTests', installTestReqs) + + def airbytePythonReport = project.tasks.register('airbytePythonReport') { doLast { if (project.hasProperty('reports_folder')) { // Gradles adds some log messages to files and we must remote them @@ -227,36 +254,14 @@ class AirbytePythonPlugin implements Plugin { } } } - - project.task('airbytePythonApply', type: DefaultTask) { - dependsOn project.installReqs - dependsOn project.airbytePythonFormat - } - - - project.task('airbytePythonTest', type: DefaultTask) { - dependsOn project.airbytePythonApply - dependsOn project.installTestReqs - dependsOn project.unitTest - } - - // Add a task that allows cleaning up venvs to every python project - project.task('cleanPythonVenv', type: Exec) { - commandLine 'rm' - args '-rf', "$project.projectDir.absolutePath/$venvDirectoryName" + airbytePythonReport.configure { + dependsOn blackReport + dependsOn isortReport + dependsOn flakeReport + dependsOn mypyReport } - // Add a task which can be run at the root project level to delete all python venvs - if (!project.rootProject.hasProperty('cleanPythonVenvs')) { - project.rootProject.task('cleanPythonVenvs') - } - project.rootProject.cleanPythonVenvs.dependsOn(project.cleanPythonVenv) - - project.assemble.dependsOn project.airbytePythonApply - project.assemble.dependsOn project.airbytePythonTest - project.test.dependsOn project.airbytePythonTest - - // saves tools reports to a custom folder + // saves tools reports to a custom folder def reportsFolder = project.hasProperty('reports_folder') ? project.reports_folder : '' if ( reportsFolder != '' ) { @@ -264,9 +269,7 @@ class AirbytePythonPlugin implements Plugin { project.file(reportsFolder).deleteDir() project.file(reportsFolder).mkdirs() - - - project.tasks.blackReport.configure { + blackReport.configure { it.logging.addStandardOutputListener(new StandardOutputListener() { @Override void onOutput(CharSequence charSequence) { @@ -274,7 +277,7 @@ class AirbytePythonPlugin implements Plugin { } }) } - project.tasks.isortReport.configure { + isortReport.configure { it.logging.addStandardOutputListener(new StandardOutputListener() { @Override void onOutput(CharSequence charSequence) { @@ -283,7 +286,7 @@ class AirbytePythonPlugin implements Plugin { }) } - project.tasks.flakeReport.configure { + flakeReport.configure { it.logging.addStandardOutputListener(new StandardOutputListener() { @Override void onOutput(CharSequence charSequence) { @@ -292,7 +295,7 @@ class AirbytePythonPlugin implements Plugin { }) } - project.tasks.mypyReport.configure { + mypyReport.configure { it.logging.addStandardOutputListener(new StandardOutputListener() { @Override void onOutput(CharSequence charSequence) { diff --git a/buildSrc/src/main/groovy/airbyte-standard-source-test-file.gradle b/buildSrc/src/main/groovy/airbyte-standard-source-test-file.gradle index 3eede9b6321b..9d737bd40cfd 100644 --- a/buildSrc/src/main/groovy/airbyte-standard-source-test-file.gradle +++ b/buildSrc/src/main/groovy/airbyte-standard-source-test-file.gradle @@ -26,7 +26,7 @@ class AirbyteStandardSourceTestFilePlugin implements Plugin { void apply(Project project) { def config = project.extensions.create('airbyteStandardSourceTestFile', AirbyteStandardSourceTestFileConfiguration) - project.task('standardSourceTestFile') { + def standardSourceTestFile = project.tasks.register('standardSourceTestFile') { doFirst { try { config.prehook.call() @@ -64,20 +64,10 @@ class AirbyteStandardSourceTestFilePlugin implements Plugin { outputs.upToDateWhen { false } } - - project.standardSourceTestFile.dependsOn(':airbyte-integrations:bases:base-standard-source-test-file:airbyteDocker') - project.standardSourceTestFile.dependsOn(project.build) - project.standardSourceTestFile.dependsOn(project.airbyteDocker) - if (project.hasProperty('airbyteDockerTest')){ - project.standardSourceTestFile.dependsOn(project.airbyteDockerTest) - } - - // make sure we create the integrationTest task once in case a java integration test was already initialized - if (!project.tasks.findByName('integrationTest')) { - project.task('integrationTest') + standardSourceTestFile.configure { + dependsOn project.project(':airbyte-integrations:bases:base-standard-source-test-file').tasks.named('assemble') + dependsOn project.tasks.named('assemble') } - - project.integrationTest.dependsOn(project.standardSourceTestFile) } } diff --git a/deps.toml b/deps.toml index 4a33456a7e48..d6187e55b7ac 100644 --- a/deps.toml +++ b/deps.toml @@ -1,16 +1,7 @@ [versions] airbyte-protocol = "0.3.6" commons_io = "2.7" -connectors-destination-testcontainers-clickhouse = "1.17.3" -connectors-destination-testcontainers-elasticsearch = "1.17.3" -connectors-destination-testcontainers-oracle-xe = "1.17.3" -connectors-source-testcontainers-clickhouse = "1.17.3" -connectors-testcontainers = "1.15.3" -connectors-testcontainers-cassandra = "1.16.0" -connectors-testcontainers-mariadb = "1.16.2" -connectors-testcontainers-pulsar = "1.16.2" -connectors-testcontainers-scylla = "1.16.2" -connectors-testcontainers-tidb = "1.16.3" +testcontainers = "1.19.0" datadog-version = "0.111.0" fasterxml_version = "2.14.0" flyway = "7.14.0" @@ -42,25 +33,23 @@ appender-log4j2 = { module = "com.therealvan:appender-log4j2", version = "3.6.0" assertj-core = { module = "org.assertj:assertj-core", version = "3.21.0" } aws-java-sdk-s3 = { module = "com.amazonaws:aws-java-sdk-s3", version = "1.12.6" } commons-io = { module = "commons-io:commons-io", version.ref = "commons_io" } -connectors-destination-testcontainers-clickhouse = { module = "org.testcontainers:clickhouse", version.ref = "connectors-destination-testcontainers-clickhouse" } -connectors-destination-testcontainers-oracle-xe = { module = "org.testcontainers:oracle-xe", version.ref = "connectors-destination-testcontainers-oracle-xe" } -connectors-source-testcontainers-clickhouse = { module = "org.testcontainers:clickhouse", version.ref = "connectors-source-testcontainers-clickhouse" } -connectors-source-testcontainers-oracle-xe = { module = "org.testcontainers:oracle-xe", version.ref = "connectors-testcontainers" } -connectors-testcontainers = { module = "org.testcontainers:testcontainers", version.ref = "connectors-testcontainers" } -connectors-testcontainers-cassandra = { module = "org.testcontainers:cassandra", version.ref = "connectors-testcontainers-cassandra" } -connectors-testcontainers-cockroachdb = { module = "org.testcontainers:cockroachdb", version.ref = "connectors-testcontainers" } -connectors-testcontainers-db2 = { module = "org.testcontainers:db2", version.ref = "connectors-testcontainers" } -connectors-testcontainers-elasticsearch = { module = "org.testcontainers:elasticsearch", version.ref = "connectors-destination-testcontainers-elasticsearch" } -connectors-testcontainers-jdbc = { module = "org.testcontainers:jdbc", version.ref = "connectors-testcontainers" } -connectors-testcontainers-kafka = { module = "org.testcontainers:kafka", version.ref = "connectors-testcontainers" } -connectors-testcontainers-mariadb = { module = "org.testcontainers:mariadb", version.ref = "connectors-testcontainers-mariadb" } -connectors-testcontainers-mongodb = { module = "org.testcontainers:mongodb", version.ref = "connectors-testcontainers" } -connectors-testcontainers-mssqlserver = { module = "org.testcontainers:mssqlserver", version.ref = "connectors-testcontainers" } -connectors-testcontainers-mysql = { module = "org.testcontainers:mysql", version.ref = "connectors-testcontainers" } -connectors-testcontainers-postgresql = { module = "org.testcontainers:postgresql", version.ref = "connectors-testcontainers" } -connectors-testcontainers-pulsar = { module = "org.testcontainers:pulsar", version.ref = "connectors-testcontainers-pulsar" } -connectors-testcontainers-scylla = { module = "org.testcontainers:testcontainers", version.ref = "connectors-testcontainers-scylla" } -connectors-testcontainers-tidb = { module = "org.testcontainers:testcontainers", version.ref = "connectors-testcontainers-tidb" } +testcontainers = { module = "org.testcontainers:testcontainers", version.ref = "testcontainers" } +testcontainers-cassandra = { module = "org.testcontainers:cassandra", version.ref = "testcontainers" } +testcontainers-clickhouse = { module = "org.testcontainers:clickhouse", version.ref = "testcontainers" } +testcontainers-cockroachdb = { module = "org.testcontainers:cockroachdb", version.ref = "testcontainers" } +testcontainers-db2 = { module = "org.testcontainers:db2", version.ref = "testcontainers" } +testcontainers-elasticsearch = { module = "org.testcontainers:elasticsearch", version.ref = "testcontainers" } +testcontainers-jdbc = { module = "org.testcontainers:jdbc", version.ref = "testcontainers" } +testcontainers-kafka = { module = "org.testcontainers:kafka", version.ref = "testcontainers" } +testcontainers-mariadb = { module = "org.testcontainers:mariadb", version.ref = "testcontainers" } +testcontainers-mongodb = { module = "org.testcontainers:mongodb", version.ref = "testcontainers" } +testcontainers-mssqlserver = { module = "org.testcontainers:mssqlserver", version.ref = "testcontainers" } +testcontainers-mysql = { module = "org.testcontainers:mysql", version.ref = "testcontainers" } +testcontainers-oracle-xe = { module = "org.testcontainers:oracle-xe", version.ref = "testcontainers" } +testcontainers-postgresql = { module = "org.testcontainers:postgresql", version.ref = "testcontainers" } +testcontainers-pulsar = { module = "org.testcontainers:pulsar", version.ref = "testcontainers" } +testcontainers-scylla = { module = "org.testcontainers:testcontainers", version.ref = "testcontainers" } +testcontainers-tidb = { module = "org.testcontainers:testcontainers", version.ref = "testcontainers" } datadog-trace-api = { module = "com.datadoghq:dd-trace-api", version.ref = "datadog-version" } datadog-trace-ot = { module = "com.datadoghq:dd-trace-ot", version.ref = "datadog-version" } fasterxml = { module = "com.fasterxml.jackson:jackson-bom", version.ref = "fasterxml_version" } @@ -103,10 +92,6 @@ otel-bom = { module = "io.opentelemetry:opentelemetry-bom", version = "1.14.0" } otel-sdk = { module = "io.opentelemetry:opentelemetry-sdk-metrics", version = "1.14.0" } otel-sdk-testing = { module = "io.opentelemetry:opentelemetry-sdk-metrics-testing", version = "1.13.0-alpha" } otel-semconv = { module = "io.opentelemetry:opentelemetry-semconv", version = "1.14.0-alpha" } -platform-testcontainers = { module = "org.testcontainers:testcontainers", version.ref = "platform-testcontainers" } -platform-testcontainers-cockroachdb = { module = "org.testcontainers:cockroachdb", version.ref = "platform-testcontainers" } -platform-testcontainers-jdbc = { module = "org.testcontainers:jdbc", version.ref = "platform-testcontainers" } -platform-testcontainers-postgresql = { module = "org.testcontainers:postgresql", version.ref = "platform-testcontainers" } postgresql = { module = "org.postgresql:postgresql", version.ref = "postgresql" } quartz-scheduler = { module = "org.quartz-scheduler:quartz", version = "2.3.2" } reactor-core = { module = "io.projectreactor:reactor-core", version.ref = "reactor" } diff --git a/docs/.gitbook/assets/add-a-source/getting-started-source-list.png b/docs/.gitbook/assets/add-a-source/getting-started-source-list.png new file mode 100644 index 000000000000..dc6dc6c7fbd8 Binary files /dev/null and b/docs/.gitbook/assets/add-a-source/getting-started-source-list.png differ diff --git a/docs/.gitbook/assets/add-a-source/getting-started-source-page.png b/docs/.gitbook/assets/add-a-source/getting-started-source-page.png new file mode 100644 index 000000000000..32d8c65717c5 Binary files /dev/null and b/docs/.gitbook/assets/add-a-source/getting-started-source-page.png differ diff --git a/docs/airbyte-enterprise.md b/docs/airbyte-enterprise.md index df04379d8445..158683a3e702 100644 --- a/docs/airbyte-enterprise.md +++ b/docs/airbyte-enterprise.md @@ -59,4 +59,4 @@ Your Okta app is now set up and you're ready to deploy Airbyte with SSO! Take no - Client ID - Client Secret -Visit [Airbyte Enterprise deployment](/deploying-airbyte/on-kubernetes-via-helm#alpha-airbyte-pro-deployment) for instructions on how to deploy Airbyte Enterprise using `kubernetes`, `kubectl` and `helm`. +Visit [Airbyte Enterprise deployment](/deploying-airbyte/on-kubernetes-via-helm#early-access-airbyte-enterprise-deployment) for instructions on how to deploy Airbyte Enterprise using `kubernetes`, `kubectl` and `helm`. diff --git a/docs/connector-development/cdk-python/README.md b/docs/connector-development/cdk-python/README.md index 5e2c63af32e2..3809d26ee331 100644 --- a/docs/connector-development/cdk-python/README.md +++ b/docs/connector-development/cdk-python/README.md @@ -1,5 +1,14 @@ # Connector Development Kit +:::info +Over the next few months, the project will only accept connector contributions that are made using the [Low-Code CDK](https://docs.airbyte.com/connector-development/config-based/low-code-cdk-overview) or the [Connector Builder](https://docs.airbyte.com/connector-development/connector-builder-ui/overview). + +Contributions made with the Python CDK will be closed, but we will inquire to understand why it wasn't done with Low-Code/Connector Builder so we can address missing features. +This decision is aimed at improving maintenance and providing a larger catalog with high-quality connectors. + +You can continue to use the Python CDK to build connectors to help your company or projects. +::: + :::info Developer updates will be announced via our #help-connector-development Slack channel. If you are using the CDK, please join to stay up to date on changes and issues. ::: diff --git a/docs/connector-development/config-based/low-code-cdk-overview.md b/docs/connector-development/config-based/low-code-cdk-overview.md index a012de473c24..58f74eb8d8d8 100644 --- a/docs/connector-development/config-based/low-code-cdk-overview.md +++ b/docs/connector-development/config-based/low-code-cdk-overview.md @@ -7,7 +7,7 @@ Developer updates will be announced via our #help-connector-development Slack ch ::: :::note -The low-code framework is in [beta](https://docs.airbyte.com/project-overview/product-release-stages/#beta), which means that while it will be backwards compatible, it’s still in active development. Share feedback and requests with us on our [Slack channel](https://slack.airbyte.com/) or email us at [feedback@airbyte.io](mailto:feedback@airbyte.io) +The low-code framework is in **beta**, which means that while it will be backwards compatible, it’s still in active development. Share feedback and requests with us on our [Slack channel](https://slack.airbyte.com/) or email us at [feedback@airbyte.io](mailto:feedback@airbyte.io) ::: ## Why low-code? @@ -138,7 +138,7 @@ For a deep dive into each of the components, refer to [Understanding the YAML fi ## Tutorial -This section a tutorial that will guide you through the end-to-end process of implementing a low-code connector. +This section is a tutorial that will guide you through the end-to-end process of implementing a low-code connector. 0. [Getting started](tutorial/0-getting-started.md) 1. [Creating a source](tutorial/1-create-source.md) diff --git a/docs/connector-development/config-based/tutorial/0-getting-started.md b/docs/connector-development/config-based/tutorial/0-getting-started.md index da65aad47914..e1a7b0fd64c9 100644 --- a/docs/connector-development/config-based/tutorial/0-getting-started.md +++ b/docs/connector-development/config-based/tutorial/0-getting-started.md @@ -1,6 +1,6 @@ # Getting Started -:warning: This framework is in [alpha](https://docs.airbyte.com/project-overview/product-release-stages/#alpha). It is still in active development and may include backward-incompatible changes. Please share feedback and requests directly with us at feedback@airbyte.io :warning: +:warning: This framework is in **alpha**. It is still in active development and may include backward-incompatible changes. Please share feedback and requests directly with us at feedback@airbyte.io :warning: ## Summary @@ -31,12 +31,12 @@ The output schema of our stream will look like the following: ## Exchange Rates API Setup Before we get started, you'll need to generate an API access key for the Exchange Rates API. -This can be done by signing up for the Free tier plan on [Exchange Rates API](https://exchangeratesapi.io/): +This can be done by signing up for the Free tier plan on [Exchange Rates Data API](https://apilayer.com/marketplace/exchangerates_data-api), not [Exchange Rates API](https://exchangeratesapi.io/): -1. Visit https://exchangeratesapi.io and click "Get free API key" on the top right -2. You'll be taken to https://apilayer.com -- finish the sign up process, signing up for the free tier -3. Once you're signed in, visit https://apilayer.com/marketplace/exchangerates_data-api#documentation-tab and click "Live Demo" -4. Inside that editor, you'll see an API key. This is your API key. +1. Visit https://apilayer.com/ and click "Sign In" on the top +2. Finish the sign up process, signing up for the free tier +3. Once you're signed in, visit https://apilayer.com/marketplace/exchangerates_data-api and click "Subscribe" for free +4. On the top right, you'll see an API key. This is your API key. ## Requirements diff --git a/docs/connector-development/connector-metadata-file.md b/docs/connector-development/connector-metadata-file.md index 67434609b45a..31d225295e4f 100644 --- a/docs/connector-development/connector-metadata-file.md +++ b/docs/connector-development/connector-metadata-file.md @@ -123,5 +123,5 @@ releases: breakingChanges: 1.0.0: message: "This version changes the connector’s authentication by removing ApiKey authentication, which is now deprecated by the [upstream source](upsteam-docs-url.com). Users currently using ApiKey auth will need to reauthenticate with OAuth after upgrading to continue syncing." - upgradeDeadline: "2023-12-31" # The date that the upstream API stops support for ApiKey authentication + upgradeDeadline: "2023-12-31" ``` diff --git a/docs/connector-development/testing-connectors/connector-acceptance-tests-reference.md b/docs/connector-development/testing-connectors/connector-acceptance-tests-reference.md index 2d9196626f3a..722f69b6bd93 100644 --- a/docs/connector-development/testing-connectors/connector-acceptance-tests-reference.md +++ b/docs/connector-development/testing-connectors/connector-acceptance-tests-reference.md @@ -227,9 +227,7 @@ This test verifies that all streams in the input catalog which support increment | :------------------------ | :----- | :------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | `config_path` | string | `secrets/config.json` | Path to a JSON object representing a valid connector configuration | | `configured_catalog_path` | string | `integration_tests/configured_catalog.json` | Path to configured catalog | -| `cursor_paths` | dict | {} | For each stream, the path of its cursor field in the output state messages. If omitted the path will be taken from the last piece of path from stream cursor_field. | | `timeout_seconds` | int | 20\*60 | Test execution timeout in seconds | -| `threshold_days` | int | 0 | For date-based cursors, allow records to be emitted with a cursor value this number of days before the state value. | ### TestReadSequentialSlices @@ -239,9 +237,7 @@ This test offers more comprehensive verification that all streams in the input c | :------------------------------------- | :----- | :------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | `config_path` | string | `secrets/config.json` | Path to a JSON object representing a valid connector configuration | | `configured_catalog_path` | string | `integration_tests/configured_catalog.json` | Path to configured catalog | -| `cursor_paths` | dict | {} | For each stream, the path of its cursor field in the output state messages. If omitted the path will be taken from the last piece of path from stream cursor_field. | | `timeout_seconds` | int | 20\*60 | Test execution timeout in seconds | -| `threshold_days` | int | 0 | For date-based cursors, allow records to be emitted with a cursor value this number of days before the state value. | | `skip_comprehensive_incremental_tests` | bool | false | For non-GA and in-development connectors, control whether the more comprehensive incremental tests will be skipped | **Note that this test samples a fraction of stream slices across an incremental sync in order to reduce test duration and avoid spamming partner APIs** @@ -367,7 +363,6 @@ acceptance_tests: tests: - config_path: secrets/config.json configured_catalog_path: integration_tests/configured_catalog.json - cursor_paths: ... future_state: future_state_path: integration_tests/abnormal_state.json diff --git a/docs/connector-development/tutorials/cdk-tutorial-python-http/getting-started.md b/docs/connector-development/tutorials/cdk-tutorial-python-http/getting-started.md index 6a813f32895a..dce0f253bbec 100644 --- a/docs/connector-development/tutorials/cdk-tutorial-python-http/getting-started.md +++ b/docs/connector-development/tutorials/cdk-tutorial-python-http/getting-started.md @@ -14,7 +14,7 @@ All the commands below assume that `python` points to a version of python >=3 ## Exchange Rates API Setup -For this guide we will be making API calls to the Exchange Rates API. In order to generate the API access key that will be used by the new connector, you will have to follow steps on the [Exchange Rates API](https://exchangeratesapi.io/) by signing up for the Free tier plan. Once you have an API access key, you can continue with the guide. +For this guide we will be making API calls to the Exchange Rates API. In order to generate the API access key that will be used by the new connector, you will have to follow steps on the [Exchange Rates Data API](https://apilayer.com/marketplace/exchangerates_data-api/) by signing up for the Free tier plan. Once you have an API access key, you can continue with the guide. ## Checklist diff --git a/docs/contributing-to-airbyte/README.md b/docs/contributing-to-airbyte/README.md index b8dda6f8b28c..e2b9669e46ea 100644 --- a/docs/contributing-to-airbyte/README.md +++ b/docs/contributing-to-airbyte/README.md @@ -20,8 +20,9 @@ A great place to start looking will be our GitHub projects for: Due to project priorities, we may not be able to accept all contributions at this time. We are prioritizing the following contributions: * Bug fixes, features, and enhancements to existing API source connectors -* New connector sources built with the Low-Code CDK and Connector Builder, as these connectors are easier to maintain. -* Bug fixes, features, and enhancements to the following database sources: MongoDB, Postgres, MySQL, MSSQL +* Migrate Pyhon CDK to Low-code or No-Code Framework. +* New connector sources built with the Low-Code CDK or Connector Builder, as these connectors are easier to maintain. +* Bug fixes, features, and enhancements to the following database sources: Postgres, MySQL, MSSQL * Bug fixes to the following destinations: BigQuery, Snowflake, Redshift, S3, and Postgres * Helm Charts features, bug fixes, and other platform bug fixes diff --git a/docs/contributing-to-airbyte/resources/pull-requests-handbook.md b/docs/contributing-to-airbyte/resources/pull-requests-handbook.md index b4517652e67e..b38d7606bb52 100644 --- a/docs/contributing-to-airbyte/resources/pull-requests-handbook.md +++ b/docs/contributing-to-airbyte/resources/pull-requests-handbook.md @@ -43,6 +43,7 @@ When creating or updating connectors, we spend a lot of time manually transcribi Changes to connector behavior should always be accompanied by a version bump and a changelog entry. We use [semantic versioning](https://semver.org/) to version changes to connectors. Since connectors are a bit different from APIs, we have our own take on semantic versioning, focusing on maintaining the best user experience of using a connector. - Major: a version in which a change is made which requires manual intervention (update to config or configured catalog) for an existing connection to continue to succeed, or one in which data that was previously being synced will no longer be synced + - Note that a category of "user intervention" is a schema change in the destination, as users will be required to update downstream reports and tools. A change that leads to a differnt final table in the destination is a breaking change - Minor: a version that introduces user-facing functionality in a backwards compatible manner - Patch: a version that introduces backwards compatible bug fixes or performance improvements diff --git a/docs/deploying-airbyte/local-deployment.md b/docs/deploying-airbyte/local-deployment.md index 3be4e715984f..ff94ad68c885 100644 --- a/docs/deploying-airbyte/local-deployment.md +++ b/docs/deploying-airbyte/local-deployment.md @@ -12,7 +12,7 @@ These instructions have been tested on MacOS, Windows 10 and Ubuntu 22.04. ```bash # clone Airbyte from GitHub -git clone https://github.com/airbytehq/airbyte.git +git clone --depth=1 https://github.com/airbytehq/airbyte.git # switch into Airbyte directory cd airbyte @@ -56,7 +56,7 @@ Make sure to select the options: **3. You're done!** ```bash -git clone https://github.com/airbytehq/airbyte.git +git clone --depth=1 https://github.com/airbytehq/airbyte.git cd airbyte bash run-ab-platform.sh ``` diff --git a/docs/deploying-airbyte/on-aws-ec2.md b/docs/deploying-airbyte/on-aws-ec2.md index 909bcfa391df..cd45e33d1f65 100644 --- a/docs/deploying-airbyte/on-aws-ec2.md +++ b/docs/deploying-airbyte/on-aws-ec2.md @@ -41,6 +41,7 @@ sudo usermod -a -G docker $USER sudo yum install -y docker-compose-plugin docker compose version ``` +If you encounter an error on this part, you might prefer to follow the documentation to [install the docker compose plugin manually](https://docs.docker.com/compose/install/linux/#install-the-plugin-manually) (_make sure to do it for all users_). 4. To close the SSH connection, run the following command in your SSH session on the instance terminal: diff --git a/docs/deploying-airbyte/on-kubernetes-via-helm.md b/docs/deploying-airbyte/on-kubernetes-via-helm.md index 1efea587491b..9f8f04dab34c 100644 --- a/docs/deploying-airbyte/on-kubernetes-via-helm.md +++ b/docs/deploying-airbyte/on-kubernetes-via-helm.md @@ -116,16 +116,16 @@ After specifying your own configuration, run the following command: helm install --values path/to/values.yaml %release_name% airbyte/airbyte ``` -### (Alpha) Airbyte Enterprise deployment +### (Early Access) Airbyte Enterprise deployment -[Airbyte Enterprise](/airbyte-enterprise) is in early alpha stages, so this section will likely evolve. That said, if you have an Airbyte Enterprise license key and wish to install Airbyte Enterprise via helm, follow these steps: +[Airbyte Enterprise](/airbyte-enterprise) is in an early access stage, so this section will likely evolve. That said, if you have an Airbyte Enterprise license key and wish to install Airbyte Enterprise via helm, follow these steps: 1. Checkout the latest revision of the [airbyte-platform repository](https://github.com/airbytehq/airbyte-platform) -2. Add your Airbyte Enterprise license key and [auth configuration details](/airbyte-enterprise#single-sign-on-sso) to a file called `airbyte.yml` in the root directory of `airbyte-platform`. You can copy `airbyte.sample.yml` to use as a template: +2. Add your Airbyte Enterprise license key and [auth configuration details](/airbyte-enterprise#single-sign-on-sso) to a file called `airbyte.yml` in the `configs` directory of `airbyte-platform`. You can copy `airbyte.sample.yml` to use as a template: -```text -cp airbyte.sample.yml airbyte.yml +```sh +cp configs/airbyte.sample.yml configs/airbyte.yml ``` Then, open up `airbyte.yml` in your text editor to fill in the indicated fields. @@ -145,10 +145,11 @@ helm repo update 4. Install Airbyte Enterprise on helm using the following command: ```text -RELEASE_NAME=./tools/bin/install_airbyte_pro_on_helm.sh +./tools/bin/install_airbyte_pro_on_helm.sh ``` -If unspecified, the default release name is `airbyte-pro`. You can change this by editing the `install_airbyte_pro_on_helm.sh` script. +The default release name is `airbyte-pro`. You can change this via the `RELEASE_NAME` environment +variable. ## Migrate from old charts to new ones diff --git a/docs/integrations/README.md b/docs/integrations/README.md index 01da3eae1fb2..fef3f532394d 100644 --- a/docs/integrations/README.md +++ b/docs/integrations/README.md @@ -2,17 +2,15 @@ import ConnectorRegistry from '@site/src/components/ConnectorRegistry'; # Connector Catalog -## Connector Release Stages +## Connector Support Levels -Airbyte uses a grading system for connectors to help you understand what to expect from a connector: +Airbyte uses a two tiered system for connectors to help you understand what to expect from a connector: -**Generally Available**: A generally available connector has been deemed ready for use in a production environment and is officially supported by Airbyte. Its documentation is considered sufficient to support widespread adoption. +**Certified**: A certified connector is actively maintained and supported by the Airbyte team and maintains a high quality bar. It is production ready. -**Beta**: A beta connector is considered stable with no backwards incompatible changes but has not been validated by a broader group of users. We expect to find and fix a few issues and bugs in the release before it’s ready for GA. +**Community**: A community connector is maintained by the Airbyte community until it becomes Certified. Airbyte has over 800 code contributors and 15,000 people in the Slack community to help. The Airbyte team is continually certifying Community connectors as usage grows. As these connectors are not maintained by Airbyte, we do not offer support SLAs around them, and we encourage caution when using them in production. -**Alpha**: An alpha connector signifies a connector under development and helps Airbyte gather early feedback and issues reported by early adopters. We strongly discourage using alpha releases for production use cases and do not offer Cloud Support SLAs around these products, features, or connectors. - -For more information about the grading system, see [Product Release Stages](https://docs.airbyte.com/project-overview/product-release-stages) +For more information about the system, see [Product Support Levels](https://docs.airbyte.com/project-overview/product-support-levels) _[View the connector registries in full](https://connectors.airbyte.com/files/generated_reports/connector_registry_report.html)_ diff --git a/docs/integrations/destinations/bigquery-denormalized-migrations.md b/docs/integrations/destinations/bigquery-denormalized-migrations.md new file mode 100644 index 000000000000..71bea137ff66 --- /dev/null +++ b/docs/integrations/destinations/bigquery-denormalized-migrations.md @@ -0,0 +1,7 @@ +# BigQuery (denormalized typed struct) Migration Guide + +## Upgrading to 2.0.0 + +`destination-bigquery-denormalized` is being retired in favor of `destination-bigquery`, and is no longer maintained. Please switch to `destination-bigquery`, which will produce similar tables and contains many improvements. We are retiring `destination-bigquery-denormalized` because it now heavily overlaps with Destinations V2, except for being slower and less reliable. Destinations V2 is now available for BigQuery. To learn more about the feature and speed improvements of Destinations V2, please [click here](https://docs.airbyte.com/release_notes/upgrading_to_destinations_v2)! + +This connector will be retired on November 1, 2023. Retired connectors will be removed from the Airbyte connector registry, and no new connections can be created with this connector. Your existing connection(s) will be disabled, with no possibility to re-eneable. diff --git a/docs/integrations/destinations/bigquery-denormalized.md b/docs/integrations/destinations/bigquery-denormalized.md index a69a2c5ac896..6d1071a3e96b 100644 --- a/docs/integrations/destinations/bigquery-denormalized.md +++ b/docs/integrations/destinations/bigquery-denormalized.md @@ -8,6 +8,7 @@ See [destinations/bigquery](https://docs.airbyte.com/integrations/destinations/b | Version | Date | Pull Request | Subject | | :------ | :--------- | :--------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------- | +| 2.0.0 | 2023-09-11 | [\#28488](https://github.com/airbytehq/airbyte/pull/28488) | Retire destination-bigquery-denormalized | | 1.5.3 | 2023-07-14 | [\#28345](https://github.com/airbytehq/airbyte/pull/28345) | Increment patch to trigger a rebuild | | 1.5.2 | 2023-07-05 | [\#27936](https://github.com/airbytehq/airbyte/pull/27936) | Internal code change | | 1.5.1 | 2023-06-30 | [\#27891](https://github.com/airbytehq/airbyte/pull/27891) | Revert bugged update | diff --git a/docs/integrations/destinations/bigquery.md b/docs/integrations/destinations/bigquery.md index 14a2b1895b9b..a87ddf628549 100644 --- a/docs/integrations/destinations/bigquery.md +++ b/docs/integrations/destinations/bigquery.md @@ -131,12 +131,21 @@ Now that you have set up the BigQuery destination connector, check out the follo ## Changelog -### bigquery - | Version | Date | Pull Request | Subject | -| :------ | :--------- | :--------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| 2.0.1 | 2023-08-29 | [29972](https://github.com/airbytehq/airbyte/pull/29972) | Publish a new version to supersede old v2.0.0 | -| 2.0.0 | 2023-08-27 | [29783](https://github.com/airbytehq/airbyte/pull/29783) | Destinations V2 | +|:--------|:-----------|:-----------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------| +| 2.0.12 | 2023-09-19 | [\#30319](https://github.com/airbytehq/airbyte/pull/30319) | Improved testing | +| 2.0.11 | 2023-09-18 | [\#30551](https://github.com/airbytehq/airbyte/pull/30551) | GCS Staging is first loading method option | +| 2.0.10 | 2023-09-15 | [\#30491](https://github.com/airbytehq/airbyte/pull/30491) | Improve error message display | +| 2.0.9 | 2023-09-14 | [\#30439](https://github.com/airbytehq/airbyte/pull/30439) | Fix a transient error | +| 2.0.8 | 2023-09-12 | [\#30364](https://github.com/airbytehq/airbyte/pull/30364) | Add log message | +| 2.0.7 | 2023-08-29 | [\#29878](https://github.com/airbytehq/airbyte/pull/29878) | Internal code changes | +| 2.0.6 | 2023-09-05 | [\#29917](https://github.com/airbytehq/airbyte/pull/29917) | Improve performance by changing metadata error array construction from ARRAY_CONCAT to ARRAY_AGG | +| 2.0.5 | 2023-08-31 | [\#30020](https://github.com/airbytehq/airbyte/pull/30020) | Run typing and deduping tasks in parallel | +| 2.0.4 | 2023-09-05 | [\#30117](https://github.com/airbytehq/airbyte/pull/30117) | Type and Dedupe at sync start and then every 6 hours | +| 2.0.3 | 2023-09-01 | [\#30056](https://github.com/airbytehq/airbyte/pull/30056) | Internal refactor, no behavior change | +| 2.0.2 | 2023-09-01 | [\#30120](https://github.com/airbytehq/airbyte/pull/30120) | Improve performance on very wide streams by skipping SAFE_CAST on strings | +| 2.0.1 | 2023-08-29 | [\#29972](https://github.com/airbytehq/airbyte/pull/29972) | Publish a new version to supersede old v2.0.0 | +| 2.0.0 | 2023-08-27 | [\#29783](https://github.com/airbytehq/airbyte/pull/29783) | Destinations V2 | | 1.10.2 | 2023-08-24 | [\#29805](https://github.com/airbytehq/airbyte/pull/29805) | Destinations v2: Don't soft reset in migration | | 1.10.1 | 2023-08-23 | [\#29774](https://github.com/airbytehq/airbyte/pull/29774) | Destinations v2: Don't soft reset overwrite syncs | | 1.10.0 | 2023-08-21 | [\#29636](https://github.com/airbytehq/airbyte/pull/29636) | Destinations v2: Several Critical Bug Fixes (cursorless dedup, improved floating-point handling, improved special characters handling; improved error handling) | diff --git a/docs/integrations/destinations/chroma.md b/docs/integrations/destinations/chroma.md new file mode 100644 index 000000000000..fcdb4fa98cb2 --- /dev/null +++ b/docs/integrations/destinations/chroma.md @@ -0,0 +1,78 @@ +# Chroma +This page guides you through the process of setting up the [Chroma](https://docs.trychroma.com/?lang=py) destination connector. + + + +## Features + +| Feature | Supported?\(Yes/No\) | Notes | +| :----------------------------- | :------------------- | :---- | +| Full Refresh Sync | Yes | | +| Incremental - Append Sync | Yes | | +| Incremental - Append + Deduped | Yes | | + +#### Output Schema + +Only one stream will exist to collect data from all source streams. This will be in a [collection](https://docs.trychroma.com/usage-guide#using-collections) in [Chroma](https://docs.trychroma.com/?lang=py) whose name will be defined by the user, and validated and corrected by Airbyte. + +For each record, a UUID string is generated and used as the document id. The embeddings generated as defined will be stored as embeddings. Data in the text fields will be stored as documents and those in the metadata fields will be stored as metadata. + +## Getting Started \(Airbyte Open-Source\) + + +You can connect to a Chroma instance either in client/server mode or in a local persistent mode. For the local persistent mode, the database file will be saved in the path defined in the `path` config parameter. Note that `path` must be an absolute path, prefixed with `/local`. + +:::danger + +Persistent Client mode is not supported on Kubernetes + +::: + +By default, the `LOCAL_ROOT` env variable in the `.env` file is set `/tmp/airbyte_local`. + +The local mount is mounted by Docker onto `LOCAL_ROOT`. This means the `/local` is substituted by `/tmp/airbyte_local` by default. + +:::caution + +Please make sure that Docker Desktop has access to `/tmp` (and `/private` on a MacOS, as /tmp has a symlink that points to /private. It will not work otherwise). You allow it with "File sharing" in `Settings -> Resources -> File sharing -> add the one or two above folder` and hit the "Apply & restart" button. + +::: + +#### Requirements + +To use the Chroma destination, you'll need: +- An account with API access for OpenAI, Cohere (depending on which embedding method you want to use) or neither (if you want to use the [default chroma embedding function](https://docs.trychroma.com/embeddings#default-all-minilm-l6-v2)) +- A Chroma db instance (client/server mode or persistent mode) +- Credentials (for cient/server mode) +- Local File path (for Persistent mode) + +#### Configure Network Access + +Make sure your Chroma database can be accessed by Airbyte. If your database is within a VPC, you may need to allow access from the IP you're using to expose Airbyte. + + +### Setup the Chroma Destination in Airbyte + +You should now have all the requirements needed to configure Chroma as a destination in the UI. You'll need the following information to configure the Chroma destination: + +- (Required) **Text fields to embed** +- (Required) **Fields to store as metadata** +- (Required) **Collection** The name of the collection in Chroma db to store your data +- (Required) Authentication method + - For client/server mode + - **Host** for example localhost + - **Port** for example 8000 + - **Username** (Optional) + - **Password** (Optional) + - For persistent mode + - **Path** The path to the local database file. Note that `path` must be an absolute path, prefixed with `/local`. +- (Optional) Embedding + - **OpenAI API key** if using OpenAI for embedding + - **Cohere API key** if using Cohere for embedding + - Embedding **Field name** and **Embedding dimensions** if getting the embeddings from stream records + +## Changelog + +| Version | Date | Pull Request | Subject | +| :------ | :--------- | :--------------------------------------------------------- | :----------------------------------------- | +| 0.0.1 | 2023-09-08 | [#30023](https://github.com/airbytehq/airbyte/pull/30023) | 🎉 New Destination: Chroma (Vector Database) | diff --git a/docs/integrations/destinations/langchain-migrations.md b/docs/integrations/destinations/langchain-migrations.md new file mode 100644 index 000000000000..005845d0382c --- /dev/null +++ b/docs/integrations/destinations/langchain-migrations.md @@ -0,0 +1,9 @@ +# Vector Database (powered by LangChain) Migration Guide + +## Upgrading to 0.1.0 + +This version changes the way record ids are tracked internally. If you are using a stream in **append-dedup** mode, you need to reset the connection after doing the upgrade to avoid duplicates. + +Prior to this version, deduplication only considered the primary key per record, without disambiugating between streams. This could lead to data loss if records from two different streams had the same primary key. + +The problem is fixed by appending the namespace and stream name to the `_ab_record_id` field to disambiguate between records originating from different streams. If a connection using **append-dedup** mode is not reset after the upgrade, it will consider all records as new and will not deduplicate them, leading to stale vectors in the destination. \ No newline at end of file diff --git a/docs/integrations/destinations/langchain.md b/docs/integrations/destinations/langchain.md index 8f3c9a8625d5..31a9ddcae93d 100644 --- a/docs/integrations/destinations/langchain.md +++ b/docs/integrations/destinations/langchain.md @@ -18,7 +18,7 @@ When specifying text fields, you can access nested fields in the record by using The chunk length is measured in tokens produced by the `tiktoken` library. The maximum is 8191 tokens, which is the maximum length supported by the `text-embedding-ada-002` model. -The stream name gets added as a metadata field `_airbyte_stream` to each document. If available, the primary key of the record is used to identify the document to avoid duplications when updated versions of records are indexed. It is added as the `_natural_id` metadata field. +The stream name gets added as a metadata field `_airbyte_stream` to each document. If available, the primary key of the record is used to identify the document to avoid duplications when updated versions of records are indexed. It is added as the `_record_id` metadata field. ### Embedding @@ -59,6 +59,7 @@ For Pinecone pods of type starter, only up to 10,000 chunks can be indexed. For ::: + #### Chroma vector store The [Chroma vector store](https://trychroma.com) is running the Chroma embedding database as persistent client and stores the vectors in a local file. @@ -133,12 +134,14 @@ DocArrayHnswSearch is meant to be used on a local workstation and won't work on Please make sure that Docker Desktop has access to `/tmp` (and `/private` on a MacOS, as /tmp has a symlink that points to /private. It will not work otherwise). You allow it with "File sharing" in `Settings -> Resources -> File sharing -> add the one or two above folder` and hit the "Apply & restart" button. ::: - + ## CHANGELOG | Version | Date | Pull Request | Subject | |:--------| :--------- |:--------------------------------------------------------------|:-----------------------------------------------------------------------------------------------------------------------------------------------------| +| 0.1.1 | 2023-09-01 | [#30282](https://github.com/airbytehq/airbyte/pull/30282) | Use embedders from CDK | +| 0.1.0 | 2023-09-01 | [#30080](https://github.com/airbytehq/airbyte/pull/30080) | Fix bug with potential data loss on append+dedup syncing. 🚨 Streams using append+dedup mode need to be reset after upgrade. | | 0.0.8 | 2023-08-21 | [#29515](https://github.com/airbytehq/airbyte/pull/29515) | Clean up generated schema spec | | 0.0.7 | 2023-08-18 | [#29513](https://github.com/airbytehq/airbyte/pull/29513) | Fix for starter pods | | 0.0.6 | 2023-08-02 | [#28977](https://github.com/airbytehq/airbyte/pull/28977) | Validate pinecone index dimensions during check | diff --git a/docs/integrations/destinations/milvus.md b/docs/integrations/destinations/milvus.md new file mode 100644 index 000000000000..3bf7da5efda5 --- /dev/null +++ b/docs/integrations/destinations/milvus.md @@ -0,0 +1,106 @@ +# Milvus + +## Overview + +This page guides you through the process of setting up the [Milvus](https://milvus.io/) destination connector. + +There are three parts to this: +* Processing - split up individual records in chunks so they will fit the context window and decide which fields to use as context and which are supplementary metadata. +* Embedding - convert the text into a vector representation using a pre-trained model (Currently, OpenAI's `text-embedding-ada-002` and Cohere's `embed-english-light-v2.0` are supported.) +* Indexing - store the vectors in a vector database for similarity search + +## Prerequisites + +To use the Milvus destination, you'll need: + +- An account with API access for OpenAI or Cohere (depending on which embedding method you want to use) +- Either a running self-managed Milvus instance or a [Zilliz](https://zilliz.com/) account + +You'll need the following information to configure the destination: + +- **Embedding service API Key** - The API key for your OpenAI or Cohere account +- **Milvus Endpoint URL** - The URL of your Milvus instance +- Either **Milvus API token** or **Milvus Instance Username and Password** +- **Milvus Collection name** - The name of the collection to load data into + +## Features + +| Feature | Supported? | Notes | +| :----------------------------- | :------------------- | :---- | +| Full Refresh Sync | Yes | | +| Incremental - Append Sync | Yes | | +| Incremental - Append + Deduped | Yes | Deleting records via CDC is not supported (see issue [#29827](https://github.com/airbytehq/airbyte/issues/29827)) | +| Partitions | No | | +| Record-defined ID | No | Auto-id needs to be enabled | + +## Configuration + +### Processing + +Each record will be split into text fields and meta fields as configured in the "Processing" section. All text fields are concatenated into a single string and then split into chunks of configured length. If specified, the metadata fields are stored as-is along with the embedded text chunks. + +When specifying text fields, you can access nested fields in the record by using dot notation, e.g. `user.name` will access the `name` field in the `user` object. It's also possible to use wildcards to access all fields in an object, e.g. `users.*.name` will access all `names` fields in all entries of the `users` array. + +The chunk length is measured in tokens produced by the `tiktoken` library. The maximum is 8191 tokens, which is the maximum length supported by the `text-embedding-ada-002` model. + +The stream name gets added as a metadata field `_ab_stream` to each document. If available, the primary key of the record is used to identify the document to avoid duplications when updated versions of records are indexed. It is added as the `_ab_record_id` metadata field. + +### Embedding + +The connector can use one of the following embedding methods: + +1. OpenAI - using [OpenAI API](https://beta.openai.com/docs/api-reference/text-embedding) , the connector will produce embeddings using the `text-embedding-ada-002` model with **1536 dimensions**. This integration will be constrained by the [speed of the OpenAI embedding API](https://platform.openai.com/docs/guides/rate-limits/overview). + +2. Cohere - using the [Cohere API](https://docs.cohere.com/reference/embed), the connector will produce embeddings using the `embed-english-light-v2.0` model with **1024 dimensions**. + +For testing purposes, it's also possible to use the [Fake embeddings](https://python.langchain.com/docs/modules/data_connection/text_embedding/integrations/fake) integration. It will generate random embeddings and is suitable to test a data pipeline without incurring embedding costs. + +### Indexing + +To get started, create a new collection in your Milvus instance. Make sure that +* The primary key field is set to [auto_id](https://milvus.io/docs/create_collection.md) +* There is a vector field with the correct dimensionality (1536 for OpenAI, 1024 for Cohere) and [a configured index](https://milvus.io/docs/build_index.md) + +### Setting up a collection + +When using the Zilliz cloud, this can be done using the UI - in this case only the colleciton name and the vector dimensionality needs to be configured, the vector field with index will be automatically created under the name `vector`. Using the REST API, the following command will create the index: +``` +POST /v1/vector/collections/create +{ + "collectionName": "my-collection", + "dimension": 1536, + "metricType": "L2", + "vectorField": "vector", + “primaryField”: “pk” +} +``` + +When using a self-hosted Milvus clustger, the collection needs to be created using the Milvus CLI or Python client. The following commands will create a collection set up for loading data via Airbyte: +```python +from pymilvus import CollectionSchema, FieldSchema, DataType + +pk = FieldSchema(name="pk",dtype=DataType.INT64, is_primary=True, auto_id=True) +vector = FieldSchema(name="vector",dtype=DataType.FLOAT_VECTOR,dim=1536) +schema = CollectionSchema(fields=[id, vector], enable_dynamic_field=True) +collection = Collection(name="test_collection", schema=schema) +collection.create_index(field_name="vector", index_params={ "metric_type":"L2", "index_type":"IVF_FLAT", "params":{"nlist":1024} }) +``` + +### Langchain integration + +To initialize a langchain vector store based on the indexed data, use the following code: +```python +embeddings = OpenAIEmbeddings(openai_api_key="my-key") +vector_store = Milvus(embeddings=embeddings, collection_name="my-collection", connection_args={"uri": "my-zilliz-endpoint", "token": "my-api-key"}) +vector_store.fields.append("text") +# call vs.fields.append() for all fields you need from the metadata + +vector_store.similarity_search("test") +``` + + +## CHANGELOG + +| Version | Date | Pull Request | Subject | +|:--------| :--------- |:--------------------------------------------------------------|:-----------------------------------------------------------------------------------------------------------------------------------------------------| +| 0.0.1 | 2023-08-12 | [#29442](https://github.com/airbytehq/airbyte/pull/29442) | Milvus connector with some embedders | \ No newline at end of file diff --git a/docs/integrations/destinations/pinecone.md b/docs/integrations/destinations/pinecone.md index d373b6655121..e60684f6928e 100644 --- a/docs/integrations/destinations/pinecone.md +++ b/docs/integrations/destinations/pinecone.md @@ -74,5 +74,12 @@ OpenAI and Fake embeddings produce vectors with 1536 dimensions, and the Cohere | Version | Date | Pull Request | Subject | |:--------| :--------- |:--------------------------------------------------------------|:-----------------------------------------------------------------------------------------------------------------------------------------------------| -| 0.0.2 | 2023-09-01 | [#29442](https://github.com/airbytehq/airbyte/pull/29946) | Improve test coverage | +| 0.0.9 | 2023-09-18 | [#30510](https://github.com/airbytehq/airbyte/pull/30510) | Fix bug with overwrite mode on starter pods | +| 0.0.8 | 2023-09-14 | [#30296](https://github.com/airbytehq/airbyte/pull/30296) | Add Azure embedder | +| 0.0.7 | 2023-09-13 | [#30382](https://github.com/airbytehq/airbyte/pull/30382) | Promote to certified/beta | +| 0.0.6 | 2023-09-09 | [#30193](https://github.com/airbytehq/airbyte/pull/30193) | Improve documentation | +| 0.0.5 | 2023-09-07 | [#30133](https://github.com/airbytehq/airbyte/pull/30133) | Refactor internal structure of connector | +| 0.0.4 | 2023-09-05 | [#30086](https://github.com/airbytehq/airbyte/pull/30079) | Switch to GRPC client for improved performance. | +| 0.0.3 | 2023-09-01 | [#30079](https://github.com/airbytehq/airbyte/pull/30079) | Fix bug with potential data loss on append+dedup syncing. 🚨 Streams using append+dedup mode need to be reset after upgrade. | +| 0.0.2 | 2023-08-31 | [#29442](https://github.com/airbytehq/airbyte/pull/29946) | Improve test coverage | | 0.0.1 | 2023-08-29 | [#29539](https://github.com/airbytehq/airbyte/pull/29539) | Pinecone connector with some embedders | diff --git a/docs/integrations/destinations/qdrant.md b/docs/integrations/destinations/qdrant.md new file mode 100644 index 000000000000..88b731174390 --- /dev/null +++ b/docs/integrations/destinations/qdrant.md @@ -0,0 +1,73 @@ +# Qdrant +This page guides you through the process of setting up the [Qdrant](https://qdrant.tech/documentation/) destination connector. + + + +## Features + +| Feature | Supported?\(Yes/No\) | Notes | +| :----------------------------- | :------------------- | :---- | +| Full Refresh Sync | Yes | | +| Incremental - Append Sync | Yes | | +| Incremental - Append + Deduped | Yes | | + +#### Output Schema + +Only one stream will exist to collect payload and vectors (optional) from all source streams. This will be in a [collection](https://qdrant.tech/documentation/concepts/collections/) in [Qdrant](https://qdrant.tech/documentation/) whose name will be defined by the user. If the collection does not already exist in the Qdrant instance, a new collection with the same name will be created. + +For each [point](https://qdrant.tech/documentation/concepts/points/) in the collection, a UUID string is generated and used as the [point id](https://qdrant.tech/documentation/concepts/points/#point-ids). The embeddings generated as defined or extracted from the source stream will be stored as the point vectors. The point payload will contain primarily the record metadata. The text field will then be stored in a field (as defined in the config) in the point payload. + +## Getting Started + +You can connect to a Qdrant instance either in local mode or cloud mode. + - For the local mode, you will need to set it up using Docker. Check the Qdrant docs [here](https://qdrant.tech/documentation/guides/installation/#docker) for an official guide. After setting up, you would need your host, port and if applicable, your gRPC port. + - To setup to an instance in Qdrant cloud, check out [this official guide](https://qdrant.tech/documentation/cloud/) to get started. After setting up the instance, you would need the instance url and an API key to connect. + +Note that this connector does not support a local persistent mode. To test, use the docker option. + + +#### Requirements + +To use the Qdrant destination, you'll need: +- An account with API access for OpenAI, Cohere (depending on which embedding method you want to use) or neither (if you want to extract the vectors from the source stream) +- A Qdrant db instance (local mode or cloud mode) +- Qdrant API Credentials (for cloud mode) +- Host and Port (for local mode) +- gRPC port (if applicable in local mode) + +#### Configure Network Access + +Make sure your Qdrant database can be accessed by Airbyte. If your database is within a VPC, you may need to allow access from the IP you're using to expose Airbyte. + + +### Setup the Qdrant Destination in Airbyte + +You should now have all the requirements needed to configure Qdrant as a destination in the UI. You'll need the following information to configure the Qdrant destination: + +- (Required) **Text fields to embed** +- (Required) **Fields to store as metadata** +- (Required) **Collection** The name of the collection in Qdrant db to store your data +- (Required) **The field in the payload that contains the embedded text** +- (Required) **Prefer gRPC** Whether to prefer gRPC over HTTP. +- (Required) **Distance Metric** The Distance metrics used to measure similarities among vectors. Select from: + - [Dot product](https://en.wikipedia.org/wiki/Dot_product) + - [Cosine similarity](https://en.wikipedia.org/wiki/Cosine_similarity) + - [Euclidean distance](https://en.wikipedia.org/wiki/Euclidean_distance) +- (Required) Authentication method + - For local mode + - **Host** for example localhost + - **Port** for example 8000 + - **gRPC Port** (Optional) + - For cloud mode + - **Url** The url of the cloud Qdrant instance. + - **API Key** The API Key for the cloud Qdrant instance +- (Optional) Embedding + - **OpenAI API key** if using OpenAI for embedding + - **Cohere API key** if using Cohere for embedding + - Embedding **Field name** and **Embedding dimensions** if getting the embeddings from stream records + +## Changelog + +| Version | Date | Pull Request | Subject | +| :------ | :--------- | :--------------------------------------------------------- | :----------------------------------------- | +| 0.0.1 | 2023-09-22 | [#30332](https://github.com/airbytehq/airbyte/pull/30332) | 🎉 New Destination: Qdrant (Vector Database) | \ No newline at end of file diff --git a/docs/integrations/destinations/snowflake.md b/docs/integrations/destinations/snowflake.md index 81c197de18d8..af9c3ffa6bef 100644 --- a/docs/integrations/destinations/snowflake.md +++ b/docs/integrations/destinations/snowflake.md @@ -270,7 +270,19 @@ Otherwise, make sure to grant the role the required permissions in the desired n ## Changelog | Version | Date | Pull Request | Subject | -| :-------------- | :--------- | :--------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------- | +|:----------------|:-----------|:-----------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------| +| 3.1.10 | 2023-09-18 | [\#30546](https://github.com/airbytehq/airbyte/pull/30546) | Make sure that the async buffer are flush every 5 minutes | +| 3.1.9 | 2023-09-19 | [\#30319](https://github.com/airbytehq/airbyte/pull/30319) | Support column names that are reserved | +| 3.1.8 | 2023-09-18 | [\#30479](https://github.com/airbytehq/airbyte/pull/30479) | Fix async memory management | +| 3.1.7 | 2023-09-15 | [\#30491](https://github.com/airbytehq/airbyte/pull/30491) | Improve error message display | +| 3.1.6 | 2023-09-14 | [\#30439](https://github.com/airbytehq/airbyte/pull/30439) | Fix a transient error | +| 3.1.5 | 2023-09-13 | [\#30416](https://github.com/airbytehq/airbyte/pull/30416) | Support `${` in stream name/namespace, and in column names | +| 3.1.4 | 2023-09-12 | [\#30364](https://github.com/airbytehq/airbyte/pull/30364) | Add log message | +| 3.1.3 | 2023-08-29 | [\#29878](https://github.com/airbytehq/airbyte/pull/29878) | Reenable incremental typing and deduping | +| 3.1.2 | 2023-08-31 | [\#30020](https://github.com/airbytehq/airbyte/pull/30020) | Run typing and deduping tasks in parallel | +| 3.1.1 | 2023-09-05 | [\#30117](https://github.com/airbytehq/airbyte/pull/30117) | Type and Dedupe at sync start and then every 6 hours | +| 3.1.0 | 2023-09-01 | [\#30056](https://github.com/airbytehq/airbyte/pull/30056) | Upcase final table names to allow case-insensitive references | +| 3.0.2 | 2023-09-01 | [\#30121](https://github.com/airbytehq/airbyte/pull/30121) | Improve performance on very wide streams by skipping TRY_CAST on strings | | 3.0.1 | 2023-08-27 | [\#30065](https://github.com/airbytehq/airbyte/pull/30065) | Clearer error thrown when records are missing a primary key | | 3.0.0 | 2023-08-27 | [\#29783](https://github.com/airbytehq/airbyte/pull/29783) | Destinations V2 | | 2.1.7 | 2023-08-29 | [\#29949](https://github.com/airbytehq/airbyte/pull/29949) | Destinations V2: Fix checking for empty table by ensuring upper-case DB names | diff --git a/docs/integrations/sources/amazon-ads.md b/docs/integrations/sources/amazon-ads.md index 746abd65e84b..25dc221cdb6b 100644 --- a/docs/integrations/sources/amazon-ads.md +++ b/docs/integrations/sources/amazon-ads.md @@ -109,6 +109,7 @@ Information about expected report generation waiting time you may find [here](ht | Version | Date | Pull Request | Subject | |:--------|:-----------|:---------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------| +| 3.2.0 | 2023-09-18 | [30517](https://github.com/airbytehq/airbyte/pull/30517) | Add suggested streams; fix unexpected column issue | | 3.1.2 | 2023-08-16 | [29233](https://github.com/airbytehq/airbyte/pull/29233) | Add filter for Marketplace IDs | | 3.1.1 | 2023-08-28 | [29900](https://github.com/airbytehq/airbyte/pull/29900) | Add 404 handling for no assotiated with bid ad groups | | 3.1.0 | 2023-08-08 | [00000](https://github.com/airbytehq/airbyte/pull/00000) | Add `T00030` tactic support for `sponsored_display_report_stream` | diff --git a/docs/integrations/sources/amplitude.md b/docs/integrations/sources/amplitude.md index c729b8ba854d..1d1cb424902d 100644 --- a/docs/integrations/sources/amplitude.md +++ b/docs/integrations/sources/amplitude.md @@ -43,6 +43,9 @@ The Amplitude connector ideally should gracefully handle Amplitude API limitatio | Version | Date | Pull Request | Subject | |:--------|:-----------|:---------------------------------------------------------|:----------------------------------------------------------------------------------------------------------| +| 0.3.2 | 2023-09-18 | [30525](https://github.com/airbytehq/airbyte/pull/30525) | Fix `KeyError` while getting `data_region` from config | +| 0.3.1 | 2023-09-15 | [30471](https://github.com/airbytehq/airbyte/pull/30471) | Fix `Event` stream: Use `start_time` instead of cursor in the case of more recent | +| 0.3.0 | 2023-09-13 | [30378](https://github.com/airbytehq/airbyte/pull/30378) | Switch to latest CDK version | | 0.2.4 | 2023-05-05 | [25842](https://github.com/airbytehq/airbyte/pull/25842) | added missing attrs in events schema, enabled default availability strategy | | 0.2.3 | 2023-04-20 | [25317](https://github.com/airbytehq/airbyte/pull/25317) | Refactor Events Stream, use pre-YAML version based on Python CDK | | 0.2.2 | 2023-04-19 | [25315](https://github.com/airbytehq/airbyte/pull/25315) | Refactor to only fetch date_time_fields once per request | diff --git a/docs/integrations/sources/bigcommerce.md b/docs/integrations/sources/bigcommerce.md index 968597242761..251d0e4376eb 100644 --- a/docs/integrations/sources/bigcommerce.md +++ b/docs/integrations/sources/bigcommerce.md @@ -55,6 +55,7 @@ BigCommerce has some [rate limit restrictions](https://developer.bigcommerce.com | Version | Date | Pull Request | Subject | |:--------|:-----------|:---------------------------------------------------------|:------------------------------------------------------------| +| 0.2.0 | 2023-08-16 | [29469](https://github.com/airbytehq/airbyte/pull/29469) | Migrate Python CDK to Low Code | | 0.1.10 | 2022-12-16 | [20518](https://github.com/airbytehq/airbyte/pull/20518) | Add brands and categories streams | | 0.1.9 | 2022-12-15 | [20540](https://github.com/airbytehq/airbyte/pull/20540) | Rebuild on CDK 0.15.0 | | 0.1.8 | 2022-12-15 | [20090](https://github.com/airbytehq/airbyte/pull/20090) | Add order_products stream | diff --git a/docs/integrations/sources/bing-ads.md b/docs/integrations/sources/bing-ads.md index 20910a85be35..4066bc71ed9f 100644 --- a/docs/integrations/sources/bing-ads.md +++ b/docs/integrations/sources/bing-ads.md @@ -122,8 +122,9 @@ The Bing Ads API limits the number of requests for all Microsoft Advertising cli ## Changelog | Version | Date | Pull Request | Subject | -| :------ | :--------- | :------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------- | -| 0.2.0 | 2023-08-17 | [27619](https://github.com/airbytehq/airbyte/pull/27619) | Add Geographic Performance Report | +|:--------|:-----------|:---------------------------------------------------------------------------------------------------------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------------| +| 0.2.1 | 2023-09-04 | [30128](https://github.com/airbytehq/airbyte/pull/30128) | Add increasing download timeout if ReportingDownloadException occurs | +| 0.2.0 | 2023-08-17 | [27619](https://github.com/airbytehq/airbyte/pull/27619) | Add Geographic Performance Report | | 0.1.24 | 2023-06-22 | [27619](https://github.com/airbytehq/airbyte/pull/27619) | Retry request after facing temporary name resolution error. | | 0.1.23 | 2023-05-11 | [25996](https://github.com/airbytehq/airbyte/pull/25996) | Implement a retry logic if SSL certificate validation fails. | | 0.1.22 | 2023-05-08 | [24223](https://github.com/airbytehq/airbyte/pull/24223) | Add CampaignLabels report column in campaign performance report | diff --git a/docs/integrations/sources/delighted.md b/docs/integrations/sources/delighted.md index 5491a650b605..02e6c9f7b366 100644 --- a/docs/integrations/sources/delighted.md +++ b/docs/integrations/sources/delighted.md @@ -50,9 +50,10 @@ This source is capable of syncing the following core streams: ## Changelog | Version | Date | Pull Request | Subject | -| :------ | :--------- | :------------------------------------------------------- | :--------------------------------------------------------------------------------------------------- | -| 0.2.2 | 2023-03-09 | [23909](https://github.com/airbytehq/airbyte/pull/23909) | Updated the input config pattern to accept both `RFC3339` and `datetime string` formats in UI | -| 0.2.1 | 2023-02-14 | [23009](https://github.com/airbytehq/airbyte/pull/23009) | Specified date formatting in specification | +|:--------|:-----------|:---------------------------------------------------------|:-----------------------------------------------------------------------------------------------------| +| 0.2.3 | 2023-09-08 | [27946](https://github.com/airbytehq/airbyte/pull/27946) | Changed `Date Since` input field title to `Replication Start Date` | +| 0.2.2 | 2023-03-09 | [23909](https://github.com/airbytehq/airbyte/pull/23909) | Updated the input config pattern to accept both `RFC3339` and `datetime string` formats in UI | +| 0.2.1 | 2023-02-14 | [23009](https://github.com/airbytehq/airbyte/pull/23009) |Specified date formatting in specification | | 0.2.0 | 2022-11-22 | [19822](https://github.com/airbytehq/airbyte/pull/19822) | Migrate to Low code + certify to Beta | | 0.1.4 | 2022-06-10 | [13439](https://github.com/airbytehq/airbyte/pull/13439) | Change since parameter input to iso date | | 0.1.3 | 2022-01-31 | [9550](https://github.com/airbytehq/airbyte/pull/9550) | Output only records in which cursor field is greater than the value in state for incremental streams | diff --git a/docs/integrations/sources/exchange-rates.md b/docs/integrations/sources/exchange-rates.md index 3d5f8d623131..65226ef63ba8 100644 --- a/docs/integrations/sources/exchange-rates.md +++ b/docs/integrations/sources/exchange-rates.md @@ -4,7 +4,7 @@ The exchange rates integration is a toy integration to demonstrate how Airbyte works with a very simple source. -It pulls all its data from [https://exchangeratesapi.io](https://exchangeratesapi.io) +It pulls all its data from [https://apilayer.com/marketplace/exchangerates_data-api](https://apilayer.com/marketplace/exchangerates_data-api) #### Output schema diff --git a/docs/integrations/sources/facebook-marketing.md b/docs/integrations/sources/facebook-marketing.md index 2f8055158b75..6a35258d3dbd 100644 --- a/docs/integrations/sources/facebook-marketing.md +++ b/docs/integrations/sources/facebook-marketing.md @@ -48,7 +48,7 @@ To set up Facebook Marketing as a source in Airbyte Open Source, you will first #### Facebook Marketing Source Settings: 1. For **Account ID**, enter the [Facebook Ad Account ID Number](https://www.facebook.com/business/help/1492627900875762) to use when pulling data from the Facebook Marketing API. To find this ID, open your Meta Ads Manager. The Ad Account ID number is in the **Account** dropdown menu or in your browser's address bar. Refer to the [Facebook docs](https://www.facebook.com/business/help/1492627900875762) for more information. -2. For **Start Date**, use the provided datepicker, or enter the date programmatically in the `YYYY-MM-DDTHH:mm:ssZ` format. The data added on and after this date will be replicated. If this field is left blank, Airbyte will replicate all data. +2. (Optional) For **Start Date**, use the provided datepicker, or enter the date programmatically in the `YYYY-MM-DDTHH:mm:ssZ` format. If not set then all data will be replicated for usual streams and only last 2 years for insight streams. :::warning Insight tables are only able to pull data from the last 37 months. If you are syncing insight tables and your start date is older than 37 months, your sync will fail. @@ -178,6 +178,9 @@ The Facebook Marketing connector uses the `lookback_window` parameter to repeate | Version | Date | Pull Request | Subject | |:--------|:-----------|:---------------------------------------------------------|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| 1.1.10 | 2023-09-15 | [30485](https://github.com/airbytehq/airbyte/pull/30485) | added 'status' and 'configured_status' fields for campaigns stream schema | +| 1.1.9 | 2023-08-31 | [29994](https://github.com/airbytehq/airbyte/pull/29994) | Removed batch processing, updated description in specs, added user-friendly error message, removed start_date from required attributes | +| 1.1.8 | 2023-09-04 | [29666](https://github.com/airbytehq/airbyte/pull/29666) | Adding custom field `boosted_object_id` to a streams schema in `campaigns` catalog `CustomAudiences` | | 1.1.7 | 2023-08-21 | [29674](https://github.com/airbytehq/airbyte/pull/29674) | Exclude `rule` from stream `CustomAudiences` | | 1.1.6 | 2023-08-18 | [29642](https://github.com/airbytehq/airbyte/pull/29642) | Stop batch requests if only 1 left in a batch | | 1.1.5 | 2023-08-18 | [29610](https://github.com/airbytehq/airbyte/pull/29610) | Automatically reduce batch size | diff --git a/docs/integrations/sources/google-ads.md b/docs/integrations/sources/google-ads.md index 13b35b9277d9..bcae9656b110 100644 --- a/docs/integrations/sources/google-ads.md +++ b/docs/integrations/sources/google-ads.md @@ -97,6 +97,19 @@ The Google Ads source connector supports the following [sync modes](https://docs - [Incremental Sync - Append](https://docs.airbyte.com/understanding-airbyte/connections/incremental-append) - [Incremental Sync - Append + Deduped](https://docs.airbyte.com/understanding-airbyte/connections/incremental-append-deduped) +#### Incremental events streams +List of stream: +- [ad_group_criterions](https://developers.google.com/google-ads/api/fields/v14/ad_group_criterion) +- [ad_listing_group_criterions](https://developers.google.com/google-ads/api/fields/v14/ad_group_criterion) +- [campaign_criterion](https://developers.google.com/google-ads/api/fields/v14/campaign_criterion) + +These streams support incremental updates, including deletions, leveraging the Change Status stream. However, they only capture updates from the most recent three months. + +The initial sync operates as a full refresh. Subsequent syncs begin by reading updates from the Change Status stream, followed by syncing records based on their IDs. + +:::warning +It's important to note that the Google Ads API resource ChangeStatus has a limit of 10,000 records per request. That's why you cannot sync stream with more than 10,000 updates in a single microsecond. In such cases, it's recommended to use a full refresh sync to ensure all updates are captured. +::: ## Supported Streams The Google Ads source connector can sync the following tables. It can also sync custom queries using GAQL. @@ -190,7 +203,10 @@ Due to a limitation in the Google Ads API which does not allow getting performan ## Changelog | Version | Date | Pull Request | Subject | -| :------- | :--------- | :------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------- | +|:---------|:-----------| :------------------------------------------------------- |:-------------------------------------------------------------------------------------------------------------------------------------| +| `0.9.0` | 2023-09-14 | [28970](https://github.com/airbytehq/airbyte/pull/28970) | Add incremental deletes for Campaign and Ad Group Criterion streams | +| `0.8.1` | 2023-09-13 | [30376](https://github.com/airbytehq/airbyte/pull/30376) | Revert pagination changes from 0.8.0 | +| `0.8.0` | 2023-09-01 | [30071](https://github.com/airbytehq/airbyte/pull/30071) | Delete start_date from required parameters and fix pagination | | `0.7.4` | 2023-07-28 | [28832](https://github.com/airbytehq/airbyte/pull/28832) | Update field descriptions | | `0.7.3` | 2023-07-24 | [28510](https://github.com/airbytehq/airbyte/pull/28510) | Set dates with client's timezone | | `0.7.2` | 2023-07-20 | [28535](https://github.com/airbytehq/airbyte/pull/28535) | UI improvement: Make the query field in custom reports a multi-line string field | diff --git a/docs/integrations/sources/google-analytics-data-api.md b/docs/integrations/sources/google-analytics-data-api.md index 857918a2bd6b..f6b8c4bd0dde 100644 --- a/docs/integrations/sources/google-analytics-data-api.md +++ b/docs/integrations/sources/google-analytics-data-api.md @@ -29,7 +29,7 @@ For **Airbyte Cloud** users, we highly recommend using OAuth for authentication, If the Property Settings shows a "Tracking Id" such as "UA-123...-1", this denotes that the property is a Universal Analytics property, and the Analytics data for that property cannot be reported on using this connector. You can create a new Google Analytics 4 property by following [these instructions](https://support.google.com/analytics/answer/9744165?hl=en). ::: -7. In the **Start Date** field, use the provided datepicker or enter a date programmatically in the format `YYYY-MM-DD`. All data added from this date onward will be replicated. Note that this setting is _not_ applied to custom Cohort reports. +7. (Optional) In the **Start Date** field, use the provided datepicker or enter a date programmatically in the format `YYYY-MM-DD`. All data added from this date onward will be replicated. Note that this setting is _not_ applied to custom Cohort reports. 8. (Optional) In the **Custom Reports** field, you may optionally provide a JSON array describing any custom reports you want to sync from Google Analytics. See the [Custom Reports](#custom-reports) section below for more information on formulating these reports. 9. (Optional) In the **Data Request Interval (Days)** field, you can specify the interval in days (ranging from 1 to 364) used when requesting data from the Google Analytics API. The bigger this value is, the faster the sync will be, but the more likely that sampling will be applied to your data, potentially causing inaccuracies in the returned results. We recommend setting this to 1 unless you have a hard requirement to make the sync faster at the expense of accuracy. This field does not apply to custom Cohort reports. See the [Data Sampling](#data-sampling-and-data-request-intervals) section below for more context on this field. @@ -80,7 +80,16 @@ Before you can use the service account to access Google Analytics data, you need If the Property Settings shows a "Tracking Id" such as "UA-123...-1", this denotes that the property is a Universal Analytics property, and the Analytics data for that property cannot be reported on in the Data API. You can create a new Google Analytics 4 property by following [these instructions](https://support.google.com/analytics/answer/9744165?hl=en). ::: -6. In the **Start Date** field, use the provided datepicker or enter a date programmatically in the format `YYYY-MM-DD`. All data added from this date onward will be replicated. Note that this setting is _not_ applied to custom Cohort reports. +6. (Optional) In the **Start Date** field, use the provided datepicker or enter a date programmatically in the format `YYYY-MM-DD`. All data added from this date onward will be replicated. Note that this setting is _not_ applied to custom Cohort reports. + +:::note +If the start date is not provided, the default value will be used, which is two years from the initial sync. +::: + +:::caution +Many analyses and data investigations may require 24-48 hours to process information from your website or app. To ensure the accuracy of the data, we subtract two days from the starting date. For more details, please refer to [Google's documentation](https://support.google.com/analytics/answer/9333790?hl=en). +::: + 7. (Optional) In the **Custom Reports** field, you may optionally provide a JSON array describing any custom reports you want to sync from Google Analytics. See the [Custom Reports](#custom-reports) section below for more information on formulating these reports. 8. (Optional) In the **Data Request Interval (Days)** field, you can specify the interval in days (ranging from 1 to 364) used when requesting data from the Google Analytics API. The bigger this value is, the faster the sync will be, but the more likely that sampling will be applied to your data, potentially causing inaccuracies in the returned results. We recommend setting this to 1 unless you have a hard requirement to make the sync faster at the expense of accuracy. This field does not apply to custom Cohort reports. See the [Data Sampling](#data-sampling-and-data-request-intervals) section below for more context on this field. @@ -117,6 +126,55 @@ This connector outputs the following incremental streams: - [traffic_sources](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) - [website_overview](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) - [weekly_active_users](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [user_acquisition_first_user_medium_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [user_acquisition_first_user_source_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [user_acquisition_first_user_source_medium_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [user_acquisition_first_user_source_platform_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [user_acquisition_first_user_campaign_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [user_acquisition_first_user_google_ads_ad_network_type_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [user_acquisition_first_user_google_ads_ad_group_name_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [traffic_acquisition_session_source_medium_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [traffic_acquisition_session_medium_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [traffic_acquisition_session_source_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [traffic_acquisition_session_campaign_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [traffic_acquisition_session_default_channel_grouping_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [traffic_acquisition_session_source_platform_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [events_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [weekly_events_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [conversions_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [pages_title_and_screen_class_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [pages_path_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [pages_title_and_screen_name_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [content_group_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [ecommerce_purchases_item_name_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [ecommerce_purchases_item_id_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [ecommerce_purchases_item_category_report_combined](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [ecommerce_purchases_item_category_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [ecommerce_purchases_item_category_2_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [ecommerce_purchases_item_category_3_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [ecommerce_purchases_item_category_4_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [ecommerce_purchases_item_category_5_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [ecommerce_purchases_item_brand_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [publisher_ads_ad_unit_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [publisher_ads_page_path_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [publisher_ads_ad_format_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [publisher_ads_ad_source_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [demographic_country_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [demographic_region_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [demographic_city_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [demographic_language_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [demographic_age_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [demographic_gender_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [demographic_interest_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [tech_browser_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [tech_device_category_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [tech_device_model_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [tech_screen_resolution_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [tech_app_version_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [tech_platform_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [tech_platform_device_category_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [tech_operating_system_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) + - [tech_os_with_version_report](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) - [Custom stream\(s\)](https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/runReport) ## Connector-specific features @@ -206,34 +264,39 @@ The Google Analytics connector is subject to Google Analytics Data API quotas. P ## Data type map -| Integration Type | Airbyte Type | Notes | -| :--------------- | :----------- | :---- | -| `string` | `string` | | -| `number` | `number` | | -| `array` | `array` | | -| `object` | `object` | | +| Integration Type | Airbyte Type | +|:-----------------|:-------------| +| `string` | `string` | +| `number` | `number` | +| `array` | `array` | +| `object` | `object` | ## Changelog -| Version | Date | Pull Request | Subject | -|:--------|:-----------|:---------------------------------------------------------|:------------------------------------------------------------------------------| -| 1.1.3 | 2023-08-04 | [29103](https://github.com/airbytehq/airbyte/pull/29103) | Update input field descriptions | -| 1.1.2 | 2023-07-03 | [27909](https://github.com/airbytehq/airbyte/pull/27909) | Limit the page size of custom report streams | -| 1.1.1 | 2023-06-26 | [27718](https://github.com/airbytehq/airbyte/pull/27718) | Limit the page size when calling `check()` | -| 1.1.0 | 2023-06-26 | [27738](https://github.com/airbytehq/airbyte/pull/27738) | License Update: Elv2 | -| 1.0.0 | 2023-06-22 | [26283](https://github.com/airbytehq/airbyte/pull/26283) | Added primary_key and lookback window | -| 0.2.7 | 2023-06-21 | [27531](https://github.com/airbytehq/airbyte/pull/27531) | Fix formatting | -| 0.2.6 | 2023-06-09 | [27207](https://github.com/airbytehq/airbyte/pull/27207) | Improve api rate limit messages | -| 0.2.5 | 2023-06-08 | [27175](https://github.com/airbytehq/airbyte/pull/27175) | Improve Error Messages | -| 0.2.4 | 2023-06-01 | [26887](https://github.com/airbytehq/airbyte/pull/26887) | Remove `authSpecification` from connector spec in favour of `advancedAuth` | -| 0.2.3 | 2023-05-16 | [26126](https://github.com/airbytehq/airbyte/pull/26126) | Fix pagination | -| 0.2.2 | 2023-05-12 | [25987](https://github.com/airbytehq/airbyte/pull/25987) | Categorized Config Errors Accurately | -| 0.2.1 | 2023-05-11 | [26008](https://github.com/airbytehq/airbyte/pull/26008) | Added handling for `429 - potentiallyThresholdedRequestsPerHour` error | -| 0.2.0 | 2023-04-13 | [25179](https://github.com/airbytehq/airbyte/pull/25179) | Implement support for custom Cohort and Pivot reports | -| 0.1.3 | 2023-03-10 | [23872](https://github.com/airbytehq/airbyte/pull/23872) | Fix parse + cursor for custom reports | -| 0.1.2 | 2023-03-07 | [23822](https://github.com/airbytehq/airbyte/pull/23822) | Improve `rate limits` customer faced error messages and retry logic for `429` | -| 0.1.1 | 2023-01-10 | [21169](https://github.com/airbytehq/airbyte/pull/21169) | Slicer updated, unit tests added | -| 0.1.0 | 2023-01-08 | [20889](https://github.com/airbytehq/airbyte/pull/20889) | Improved config validation, SAT | -| 0.0.3 | 2022-08-15 | [15229](https://github.com/airbytehq/airbyte/pull/15229) | Source Google Analytics Data Api: code refactoring | -| 0.0.2 | 2022-07-27 | [15087](https://github.com/airbytehq/airbyte/pull/15087) | fix documentationUrl | -| 0.0.1 | 2022-05-09 | [12701](https://github.com/airbytehq/airbyte/pull/12701) | Introduce Google Analytics Data API source | +| Version | Date | Pull Request | Subject | +|:--------|:-----------|:---------------------------------------------------------|:--------------------------------------------------------------------------------| +| 1.5.0 | 2023-09-18 | [30421](https://github.com/airbytehq/airbyte/pull/30421) | Add `yearWeek`, `yearMonth`, `year` dimensions cursor | +| 1.4.1 | 2023-09-17 | [30506](https://github.com/airbytehq/airbyte/pull/30506) | Fix None type error when metrics or dimensions response does not have name | +| 1.4.0 | 2023-09-15 | [30417](https://github.com/airbytehq/airbyte/pull/30417) | Change start date to optional; add suggested streams and update errors handling | +| 1.3.1 | 2023-09-14 | [30424](https://github.com/airbytehq/airbyte/pull/30424) | Fixed duplicated stream issue | +| 1.2.0 | 2023-09-11 | [30290](https://github.com/airbytehq/airbyte/pull/30290) | Add new preconfigured reports | +| 1.1.3 | 2023-08-04 | [29103](https://github.com/airbytehq/airbyte/pull/29103) | Update input field descriptions | +| 1.1.2 | 2023-07-03 | [27909](https://github.com/airbytehq/airbyte/pull/27909) | Limit the page size of custom report streams | +| 1.1.1 | 2023-06-26 | [27718](https://github.com/airbytehq/airbyte/pull/27718) | Limit the page size when calling `check()` | +| 1.1.0 | 2023-06-26 | [27738](https://github.com/airbytehq/airbyte/pull/27738) | License Update: Elv2 | +| 1.0.0 | 2023-06-22 | [26283](https://github.com/airbytehq/airbyte/pull/26283) | Added primary_key and lookback window | +| 0.2.7 | 2023-06-21 | [27531](https://github.com/airbytehq/airbyte/pull/27531) | Fix formatting | +| 0.2.6 | 2023-06-09 | [27207](https://github.com/airbytehq/airbyte/pull/27207) | Improve api rate limit messages | +| 0.2.5 | 2023-06-08 | [27175](https://github.com/airbytehq/airbyte/pull/27175) | Improve Error Messages | +| 0.2.4 | 2023-06-01 | [26887](https://github.com/airbytehq/airbyte/pull/26887) | Remove `authSpecification` from connector spec in favour of `advancedAuth` | +| 0.2.3 | 2023-05-16 | [26126](https://github.com/airbytehq/airbyte/pull/26126) | Fix pagination | +| 0.2.2 | 2023-05-12 | [25987](https://github.com/airbytehq/airbyte/pull/25987) | Categorized Config Errors Accurately | +| 0.2.1 | 2023-05-11 | [26008](https://github.com/airbytehq/airbyte/pull/26008) | Added handling for `429 - potentiallyThresholdedRequestsPerHour` error | +| 0.2.0 | 2023-04-13 | [25179](https://github.com/airbytehq/airbyte/pull/25179) | Implement support for custom Cohort and Pivot reports | +| 0.1.3 | 2023-03-10 | [23872](https://github.com/airbytehq/airbyte/pull/23872) | Fix parse + cursor for custom reports | +| 0.1.2 | 2023-03-07 | [23822](https://github.com/airbytehq/airbyte/pull/23822) | Improve `rate limits` customer faced error messages and retry logic for `429` | +| 0.1.1 | 2023-01-10 | [21169](https://github.com/airbytehq/airbyte/pull/21169) | Slicer updated, unit tests added | +| 0.1.0 | 2023-01-08 | [20889](https://github.com/airbytehq/airbyte/pull/20889) | Improved config validation, SAT | +| 0.0.3 | 2022-08-15 | [15229](https://github.com/airbytehq/airbyte/pull/15229) | Source Google Analytics Data Api: code refactoring | +| 0.0.2 | 2022-07-27 | [15087](https://github.com/airbytehq/airbyte/pull/15087) | fix documentationUrl | +| 0.0.1 | 2022-05-09 | [12701](https://github.com/airbytehq/airbyte/pull/12701) | Introduce Google Analytics Data API source | diff --git a/docs/integrations/sources/google-search-console.inapp.md b/docs/integrations/sources/google-search-console.inapp.md index 5dbd50cc87b0..2224bd12ac60 100644 --- a/docs/integrations/sources/google-search-console.inapp.md +++ b/docs/integrations/sources/google-search-console.inapp.md @@ -21,7 +21,7 @@ 5. (Optional) For **End Date**, you may optionally provide a date in the format `YYYY-MM-DD`. Any data created between the defined Start Date and End Date will be replicated. Leaving this field blank will replicate all data created on or after the Start Date to the present. -6. (Optional) For **Custom Reports**, you may optionally provide an array of JSON objects representing any custom reports you wish to query the API with. Refer to the [Custom reports](https://docs.airbyte.com/integrations/sources/google-search-console#custom-reports) section in our full documentation for more information on formulating these reports. +6. (Optional) For **Custom Reports**, you may optionally provide a custom report representing any additional report you wish to query the API with. Refer to the [Custom reports](https://docs.airbyte.com/integrations/sources/google-search-console#custom-reports) section in our full documentation for more information on formulating these reports. 7. (Optional) For **Data Freshness**, you may choose whether to include "fresh" data that has not been finalized by Google, and may be subject to change. Please note that if you are using Incremental sync mode, we highly recommend leaving this option to its default value of `final`. Refer to the [Data Freshness](https://docs.airbyte.com/integrations/sources/google-search-console#data-freshness) section in our full documentation for more information on this parameter. 8. Click **Set up source** and wait for the tests to complete. diff --git a/docs/integrations/sources/google-search-console.md b/docs/integrations/sources/google-search-console.md index 79ccf752a790..bc3e2b6d1210 100644 --- a/docs/integrations/sources/google-search-console.md +++ b/docs/integrations/sources/google-search-console.md @@ -127,34 +127,27 @@ The granularity for the cursor is 1 day, so Incremental Sync in Append mode may ### Custom reports -Custom reports allow you to query the API with a custom set of dimensions to group results by. Results are grouped in the order that you supply these dimensions. Each custom report should be constructed as a JSON object in the following format: +Custom reports allow you to query the API with a custom set of dimensions to group results by. Results are grouped in the order that you supply these dimensions. Each custom report should be constructed like following: -```json -{ - "name": "", - "dimensions": ["", "", ...] - } -``` +1. Click `Add` under the `Custom Reports` section +2. Enter the `Name` of the report, this will be the name of the stream +3. Select one or more `Dimensions` from the available dropdown list -The available dimensions are: +The available `Dimensions` are: - `country` - `date` - `device` - `page` - `query` -- `searchAppearance` +- `search_type` For example, to query the API for a report that groups results by country, then by date, you could enter the following custom report: -```json -[ - { - "name": "country_date", - "dimensions": ["country", "date"] - } -] -``` +* Name: country_date +* Dimensions: ["country", "date"] + +The information you provide via UI Custom report builder will then be transformed into the custom stream by it's `Name` You can use the [Google APIS Explorer](https://developers.google.com/webmaster-tools/v1/searchanalytics/query) to build and test the reports you want to use. @@ -186,6 +179,7 @@ This connector attempts to back off gracefully when it hits Reports API's rate l | Version | Date | Pull Request | Subject | | :------- | :--------- | :------------------------------------------------------------------------------------------------------------ | :----------------------------------------------------------------------------------------------------------------------------- | +| `1.3.3` | 2023-08-29 | [29941](https://github.com/airbytehq/airbyte/pull/29941) | Added `primary key` to each stream, added `custom_report` config migration | | `1.3.2` | 2023-08-25 | [29829](https://github.com/airbytehq/airbyte/pull/29829) | Make `Start Date` a non-required, added the `suggested streams`, corrected public docs | | `1.3.1` | 2023-08-24 | [29329](https://github.com/airbytehq/airbyte/pull/29329) | Update tooltip descriptions | | `1.3.0` | 2023-08-24 | [29750](https://github.com/airbytehq/airbyte/pull/29750) | Add new `Keyword-Site-Report-By-Site` stream | diff --git a/docs/integrations/sources/google-sheets.md b/docs/integrations/sources/google-sheets.md index b40cbf6a2317..196c9eac0688 100644 --- a/docs/integrations/sources/google-sheets.md +++ b/docs/integrations/sources/google-sheets.md @@ -8,15 +8,15 @@ The Google Sheets source connector pulls data from a single Google Sheets spread ### Prerequisites - Spreadsheet Link - The link to the Google spreadsheet you want to sync. - + - **For Airbyte Cloud** A Google Workspace user with access to the spreadsheet - - + + - **For Airbyte Open Source:** - A GCP project - Enable the Google Sheets API in your GCP project - Service Account Key with access to the Spreadsheet you want to replicate - + ## Setup guide diff --git a/docs/integrations/sources/hubplanner.md b/docs/integrations/sources/hubplanner.md index 4256522aacb4..429f71763413 100644 --- a/docs/integrations/sources/hubplanner.md +++ b/docs/integrations/sources/hubplanner.md @@ -39,4 +39,5 @@ The Okta source connector supports the following [sync modes](https://docs.airby | Version | Date | Pull Request | Subject | |:--------|:-----------|:---------------------------------------------------------|:-------------------------------------------------------------------------------| +| 0.2.0 | 2021-09-31 | [29311](https://github.com/airbytehq/airbyte/pull/29311) | Migrated to LowCode CDK | | 0.1.0 | 2021-08-10 | [12145](https://github.com/airbytehq/airbyte/pull/12145) | Initial Release | diff --git a/docs/integrations/sources/jira.md b/docs/integrations/sources/jira.md index aea4d3cac20d..8044de04b10e 100644 --- a/docs/integrations/sources/jira.md +++ b/docs/integrations/sources/jira.md @@ -26,9 +26,7 @@ This page contains the setup guide and reference information for the Jira source 6. Enter the **Email** for your Jira account which you used to generate the API token. This field is used for Authorization to your account by BasicAuth. 7. Enter the list of **Projects (Optional)** for which you need to replicate data, or leave it empty if you want to replicate data for all projects. 8. Enter the **Start Date (Optional)** from which you'd like to replicate data for Jira in the format YYYY-MM-DDTHH:MM:SSZ. All data generated after this date will be replicated, or leave it empty if you want to replicate all data. Note that it will be used only in the following streams:BoardIssues, IssueComments, IssueProperties, IssueRemoteLinks, IssueVotes, IssueWatchers, IssueWorklogs, Issues, PullRequests, SprintIssues. For other streams it will replicate all data. -9. Toggle **Expand Issue Changelog** allows you to get a list of recent updates to every issue in the Issues stream. -10. Toggle **Render Issue Fields** allows returning field values rendered in HTML format in the Issues stream. -11. Toggle **Enable Experimental Streams** enables experimental PullRequests stream. +9. Fill in **Expand Issues stream** with values from the suggested list. See `expand` in [Query parameters](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-search/#api-rest-api-3-search-get-request-Query%20parameters) for more info. ## Supported sync modes @@ -65,6 +63,7 @@ This connector outputs the following full refresh streams: - [Issue remote links](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-remote-links/#api-rest-api-3-issue-issueidorkey-remotelink-get) - [Issue resolutions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-resolutions/#api-rest-api-3-resolution-search-get) - [Issue security schemes](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-security-schemes/#api-rest-api-3-issuesecurityschemes-get) +- [Issue transitions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issues/#api-rest-api-3-issue-issueidorkey-transitions-get) - [Issue type schemes](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-type-schemes/#api-rest-api-3-issuetypescheme-get) - [Issue type screen schemes](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-type-screen-schemes/#api-rest-api-3-issuetypescreenscheme-get) - [Issue votes](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-votes/#api-group-issue-votes) @@ -125,7 +124,13 @@ The Jira connector should not run into Jira API limitations under normal usage. ## CHANGELOG | Version | Date | Pull Request | Subject | -| :------ | :--------- | :--------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------- | +|:--------|:-----------|:-----------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------| +| 0.6.2 | 2023-09-19 | [\#30578](https://github.com/airbytehq/airbyte/pull/30578) | Fetch deleted and archived Projects | +| 0.6.1 | 2023-09-17 | [\#30550](https://github.com/airbytehq/airbyte/pull/30550) | Update `Issues` expand settings | +| 0.6.0 | 2023-09-17 | [\#30507](https://github.com/airbytehq/airbyte/pull/30507) | Add new stream `IssueTransitions` | +| 0.5.0 | 2023-09-14 | [\#29960](https://github.com/airbytehq/airbyte/pull/29960) | Add `boardId` to `sprints` stream | +| 0.3.14 | 2023-09-11 | [\#30297](https://github.com/airbytehq/airbyte/pull/30297) | Remove `requests` and `pendulum` from setup dependencies | +| 0.3.13 | 2023-09-01 | [\#30108](https://github.com/airbytehq/airbyte/pull/30108) | Skip 404 error for stream `IssueWatchers` | | 0.3.12 | 2023-06-01 | [\#26652](https://github.com/airbytehq/airbyte/pull/26652) | Expand on `leads` for `projects` stream | | 0.3.11 | 2023-06-01 | [\#26906](https://github.com/airbytehq/airbyte/pull/26906) | Handle project permissions error | | 0.3.10 | 2023-05-26 | [\#26652](https://github.com/airbytehq/airbyte/pull/26652) | Fixed bug when `board` doesn't support `sprints` | diff --git a/docs/integrations/sources/lemlist.md b/docs/integrations/sources/lemlist.md index 1fea1df4cec7..f55473da227b 100644 --- a/docs/integrations/sources/lemlist.md +++ b/docs/integrations/sources/lemlist.md @@ -37,5 +37,6 @@ The Lemlist connector should not run into Lemlist API limitations under normal u | Version | Date | Pull Request | Subject | | :------ | :--------- | :----------------------------------------------------- | :-------------- | -| 0.1.1 | Unknown | Unknown | Bump Version | -| 0.1.0 | 2021-10-14 | [7062](https://github.com/airbytehq/airbyte/pull/7062) | Initial Release | +| 0.2.0 | 2023-08-14 | [29406](https://github.com/airbytehq/airbyte/pull/29406) | Migrated to LowCode Cdk | +| 0.1.1 | Unknown | Unknown | Bump Version | +| 0.1.0 | 2021-10-14 | [7062](https://github.com/airbytehq/airbyte/pull/7062) | Initial Release | diff --git a/docs/integrations/sources/marketo.md b/docs/integrations/sources/marketo.md index b179e2515660..f121c9017d24 100644 --- a/docs/integrations/sources/marketo.md +++ b/docs/integrations/sources/marketo.md @@ -81,13 +81,19 @@ The Marketo source connector supports the following[ sync modes](https://docs.ai This connector can be used to sync the following tables from Marketo: -- **activities_X** where X is an activity type contains information about lead activities of the type X. For example, activities_send_email contains information about lead activities related to the activity type `send_email`. See the [Marketo docs](https://developers.marketo.com/rest-api/endpoint-reference/lead-database-endpoint-reference/#!/Activities/getLeadActivitiesUsingGET) for a detailed explanation of what each column means. -- **activity_types.** Contains metadata about activity types. See the [Marketo docs](https://developers.marketo.com/rest-api/endpoint-reference/lead-database-endpoint-reference/#!/Activities/getAllActivityTypesUsingGET) for a detailed explanation of columns. -- **campaigns.** Contains info about your Marketo campaigns. [Marketo docs](https://developers.marketo.com/rest-api/endpoint-reference/lead-database-endpoint-reference/#!/Campaigns/getCampaignsUsingGET). -- **leads.** Contains info about your Marketo leads. [Marketo docs](https://developers.marketo.com/rest-api/endpoint-reference/lead-database-endpoint-reference/#!/Leads/getLeadByIdUsingGET). -- **lists.** Contains info about your Marketo static lists. [Marketo docs](https://developers.marketo.com/rest-api/endpoint-reference/lead-database-endpoint-reference/#!/Static_Lists/getListByIdUsingGET). -- **programs.** Contains info about your Marketo programs. [Marketo docs](https://developers.marketo.com/rest-api/endpoint-reference/asset-endpoint-reference/#!/Programs/browseProgramsUsingGET). -- **segmentations.** Contains info about your Marketo programs. [Marketo docs](https://developers.marketo.com/rest-api/endpoint-reference/asset-endpoint-reference/#!/Segments/getSegmentationUsingGET). +- **Activities_X** where X is an activity type contains information about lead activities of the type X. For example, activities_send_email contains information about lead activities related to the activity type `send_email`. See the [Marketo docs](https://developers.marketo.com/rest-api/endpoint-reference/lead-database-endpoint-reference/#!/Activities/getLeadActivitiesUsingGET) for a detailed explanation of what each column means. +- **Activity types** Contains metadata about activity types. See the [Marketo docs](https://developers.marketo.com/rest-api/endpoint-reference/lead-database-endpoint-reference/#!/Activities/getAllActivityTypesUsingGET) for a detailed explanation of columns. +- **[Campaigns](https://developers.marketo.com/rest-api/endpoint-reference/lead-database-endpoint-reference/#!/Campaigns/getCampaignsUsingGET)**: Contains info about your Marketo campaigns. +- **[Leads](https://developers.marketo.com/rest-api/endpoint-reference/lead-database-endpoint-reference/#!/Leads/getLeadByIdUsingGET)**: Contains info about your Marketo leads. + +:::caution + +Available fields are limited by what is presented in the static schema. + +::: +- **[Lists](https://developers.marketo.com/rest-api/endpoint-reference/lead-database-endpoint-reference/#!/Static_Lists/getListByIdUsingGET)**: Contains info about your Marketo static lists. +- **[Programs](https://developers.marketo.com/rest-api/endpoint-reference/asset-endpoint-reference/#!/Programs/browseProgramsUsingGET)**: Contains info about your Marketo programs. +- **[Segmentations](https://developers.marketo.com/rest-api/endpoint-reference/asset-endpoint-reference/#!/Segments/getSegmentationUsingGET)**: Contains info about your Marketo programs. ## Performance considerations @@ -100,7 +106,7 @@ If the 50,000 limit is too stringent, contact Marketo support for a quota increa ## Data type map | Integration Type | Airbyte Type | Notes | -| :--------------- | :----------- | :------------------------------------------------------------------------------ | +|:-----------------|:-------------|:--------------------------------------------------------------------------------| | `array` | `array` | primitive arrays are converted into arrays of the types described in this table | | `int`, `long` | `number` | | | `object` | `object` | | @@ -110,7 +116,8 @@ If the 50,000 limit is too stringent, contact Marketo support for a quota increa ## Changelog | Version | Date | Pull Request | Subject | -| :------- | :--------- | :------------------------------------------------------- | :----------------------------------------------------------------------------------------------- | +|:---------|:-----------|:---------------------------------------------------------|:-------------------------------------------------------------------------------------------------| +| `1.2.1` | 2023-09-18 | [30533](https://github.com/airbytehq/airbyte/pull/30533) | Fix `json_schema` for stream `Leads` | | `1.2.0` | 2023-06-26 | [27726](https://github.com/airbytehq/airbyte/pull/27726) | License Update: Elv2 | | `1.1.0` | 2023-04-18 | [23956](https://github.com/airbytehq/airbyte/pull/23956) | Add `Segmentations` Stream | | `1.0.4` | 2023-04-25 | [25481](https://github.com/airbytehq/airbyte/pull/25481) | Minor fix for bug caused by `<=` producing additional API call when there is a single date slice | diff --git a/docs/integrations/sources/mixpanel.md b/docs/integrations/sources/mixpanel.md index b0f31a65d224..220ccdb3e500 100644 --- a/docs/integrations/sources/mixpanel.md +++ b/docs/integrations/sources/mixpanel.md @@ -50,11 +50,13 @@ Syncing huge date windows may take longer due to Mixpanel's low API rate-limits ## CHANGELOG | Version | Date | Pull Request | Subject | -| :------ | :--------- | :------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------- | -| 0.1.37 | 2022-07-20 | [27932](https://github.com/airbytehq/airbyte/pull/27932) | Fix spec: change start/end date format to `date` | -| 0.1.36 | 2022-06-27 | [27752](https://github.com/airbytehq/airbyte/pull/27752) | Partially revert version 0.1.32; Use exponential backoff; | -| 0.1.35 | 2022-06-12 | [27252](https://github.com/airbytehq/airbyte/pull/27252) | Add should_retry False for 402 error | -| 0.1.34 | 2022-05-15 | [21837](https://github.com/airbytehq/airbyte/pull/21837) | Add "insert_id" field to "export" stream schema | +|:--------|:-----------|:---------------------------------------------------------|:------------------------------------------------------------------------------------------------------------| +| 0.1.39 | 2023-09-15 | [30469](https://github.com/airbytehq/airbyte/pull/30469) | Add default primary key `distinct_id` to `Export` stream | +| 0.1.38 | 2023-08-31 | [30028](https://github.com/airbytehq/airbyte/pull/30028) | Handle gracefully project timezone mismatch | +| 0.1.37 | 2023-07-20 | [27932](https://github.com/airbytehq/airbyte/pull/27932) | Fix spec: change start/end date format to `date` | +| 0.1.36 | 2023-06-27 | [27752](https://github.com/airbytehq/airbyte/pull/27752) | Partially revert version 0.1.32; Use exponential backoff; | +| 0.1.35 | 2023-06-12 | [27252](https://github.com/airbytehq/airbyte/pull/27252) | Add should_retry False for 402 error | +| 0.1.34 | 2023-05-15 | [21837](https://github.com/airbytehq/airbyte/pull/21837) | Add "insert_id" field to "export" stream schema | | 0.1.33 | 2023-04-25 | [25543](https://github.com/airbytehq/airbyte/pull/25543) | Set should_retry for 104 error in stream export | | 0.1.32 | 2023-04-11 | [25056](https://github.com/airbytehq/airbyte/pull/25056) | Set HttpAvailabilityStrategy, add exponential backoff, streams export and annotations add undeclared fields | | 0.1.31 | 2023-02-13 | [22936](https://github.com/airbytehq/airbyte/pull/22936) | Specified date formatting in specification | diff --git a/docs/integrations/sources/mysql.md b/docs/integrations/sources/mysql.md index c2b1b8067b7a..8aaf6e9e1f14 100644 --- a/docs/integrations/sources/mysql.md +++ b/docs/integrations/sources/mysql.md @@ -264,6 +264,11 @@ WHERE actor_definition_id ='435bb9a5-7887-4809-aa58-28c27df0d7ad' AND (configura | Version | Date | Pull Request | Subject | |:--------|:-----------|:-----------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------| +| 3.0.8 | 2023-09-14 | [30333](https://github.com/airbytehq/airbyte/pull/30333) | CDC : Update the correct timezone parameter passed to Debezium to `database.connectionTimezone` | +| 3.0.7 | 2023-09-13 | [30375](https://github.com/airbytehq/airbyte/pull/30375) | Fix a bug causing a failure when DB views are included in sync | +| 3.0.6 | 2023-09-12 | [30308](https://github.com/airbytehq/airbyte/pull/30308) | CDC : Enable compression of schema history blob in state | +| 3.0.5 | 2023-09-12 | [30289](https://github.com/airbytehq/airbyte/pull/30289) | CDC : Introduce logic for compression of schema history blob in state | +| 3.0.4 | 2023-09-06 | [30213](https://github.com/airbytehq/airbyte/pull/30213) | CDC : Checkpointable initial snapshot | | 3.0.3 | 2023-08-31 | [29821](https://github.com/airbytehq/airbyte/pull/29821) | Set replication_method display_type to radio | | 3.0.2 | 2023-08-30 | [30015](https://github.com/airbytehq/airbyte/pull/30015) | Logging : Log storage engines associated with tables in the sync | | 3.0.1 | 2023-08-21 | [29308](https://github.com/airbytehq/airbyte/pull/29308) | CDC: Enable frequent state emissions during incremental runs | diff --git a/docs/integrations/sources/paypal-transaction.md b/docs/integrations/sources/paypal-transaction.md index 85277858c465..18831b894cb3 100644 --- a/docs/integrations/sources/paypal-transaction.md +++ b/docs/integrations/sources/paypal-transaction.md @@ -87,6 +87,7 @@ Transactions sync is performed with default `stream_slice_period` = 1 day, it me | Version | Date | Pull Request | Subject | |:--------|:-----------|:---------------------------------------------------------|:-----------------------------------------------------------------------------------------------------------------------------| +| 2.1.0 | 2023-08-14 | [29223](https://github.com/airbytehq/airbyte/pull/29223) | Migrate Python CDK to Low Code schema | | 2.0.0 | 2023-07-05 | [27916](https://github.com/airbytehq/airbyte/pull/27916) | Update `Balances` schema | | 1.0.0 | 2023-07-03 | [27968](https://github.com/airbytehq/airbyte/pull/27968) | mark `Client ID` and `Client Secret` as required fields | | 0.1.13 | 2023-02-20 | [22916](https://github.com/airbytehq/airbyte/pull/22916) | Specified date formatting in specification | diff --git a/docs/integrations/sources/postgres.md b/docs/integrations/sources/postgres.md index 6acec36bd9fe..77d28248b62b 100644 --- a/docs/integrations/sources/postgres.md +++ b/docs/integrations/sources/postgres.md @@ -291,9 +291,10 @@ According to Postgres [documentation](https://www.postgresql.org/docs/14/datatyp | Version | Date | Pull Request | Subject | |---------|------------|----------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| 3.1.7 | 2023-09-05 | [29672](https://github.com/airbytehq/airbyte/pull/29672) | Handle VACUUM happening during initial sync | | 3.1.6 | 2023-08-24 | [29821](https://github.com/airbytehq/airbyte/pull/29821) | Set replication_method display_type to radio, update titles and descriptions, and make CDC the default choice | | 3.1.5 | 2023-08-22 | [29534](https://github.com/airbytehq/airbyte/pull/29534) | Support "options" JDBC URL parameter | -| 3.1.4 | 2023-08-21 | [28687](https://github.com/airbytehq/airbyte/pull/28687) | Under the hood: Add dependency on Java CDK v0.0.2. | +| 3.1.4 | 2023-08-21 | [28687](https://github.com/airbytehq/airbyte/pull/28687) | Under the hood: Add dependency on Java CDK v0.0.2. | | 3.1.3 | 2023-08-03 | [28708](https://github.com/airbytehq/airbyte/pull/28708) | Enable checkpointing snapshots in CDC connections | | 3.1.2 | 2023-08-01 | [28954](https://github.com/airbytehq/airbyte/pull/28954) | Fix an issue that prevented use of tables with names containing uppercase letters | | 3.1.1 | 2023-07-31 | [28892](https://github.com/airbytehq/airbyte/pull/28892) | Fix an issue that prevented use of cursor columns with names containing uppercase letters | diff --git a/docs/integrations/sources/recharge.md b/docs/integrations/sources/recharge.md index ce15a8559e2a..35b5a57d6c51 100644 --- a/docs/integrations/sources/recharge.md +++ b/docs/integrations/sources/recharge.md @@ -76,6 +76,7 @@ The Recharge connector should gracefully handle Recharge API limitations under n | Version | Date | Pull Request | Subject | |:--------|:-----------|:---------------------------------------------------------|:------------------------------------------------------------------------------------------| +| 1.0.1 | 2023-08-30 | [29992](https://github.com/airbytehq/airbyte/pull/29992) | Revert for orders stream to use old API version 2021-01 | | 1.0.0 | 2023-06-22 | [27612](https://github.com/airbytehq/airbyte/pull/27612) | Change data type of the `shopify_variant_id_not_found` field of the `Charges` stream | | 0.2.10 | 2023-06-20 | [27503](https://github.com/airbytehq/airbyte/pull/27503) | Update API version to 2021-11 | | 0.2.9 | 2023-04-10 | [25009](https://github.com/airbytehq/airbyte/pull/25009) | Fix owner slicing for `Metafields` stream | diff --git a/docs/integrations/sources/s3-migrations.md b/docs/integrations/sources/s3-migrations.md new file mode 100644 index 000000000000..18e6bdb11947 --- /dev/null +++ b/docs/integrations/sources/s3-migrations.md @@ -0,0 +1,28 @@ +# S3 Migration Guide + +## Upgrading to 4.0.4 + +Note: This change is only breaking if you created S3 sources using the API and did not provide `streams.*.format`. + +Following 4.0.0 config change, we are removing `streams.*.file_type` field which was redundant with `streams.*.format`. This is a breaking change as `format` now needs to be required. Given that the UI would always populate `format`, only users creating actors using the API and not providing `format` are be affected. In order to fix that, simply set `streams.*.format` to `{"filetype": }`. + + +## Upgrading to 4.0.0 + +We have revamped the implementation to use the File-Based CDK. The goal is to increase resiliency and reduce development time. Here are the breaking changes: +* [CSV] Mapping of type `array` and `object`: before, they were mapped as `large_string` and hence casted as strings. Given the new changes, if `array` or `object` is specified, the value will be casted as `array` and `object` respectively. +* [CSV] `decimal_point` option is deprecated: It is not possible anymore to use another character than `.` to separate the integer part from non-integer part. Given that the float is format with another character than this, it will be considered as a string. +* [Parquet] `columns` option is deprecated: You can use Airbyte column selection in order to have the same behavior. We don't expect it, but this could have impact on the performance as payload could be bigger. + +Given that you are not affected by the above, your migration should proceed automatically once you run a sync with the new connector. To leverage this: +* Upgrade source-s3 to use v4.0.0 +* Run at least one sync for all your source-s3 connectors + * Migration will be performed and an AirbyteControlMessage will be emitted to the platform so that the migrated config is persisted + +If a user tries to modify the config after source-s3 is upgraded to v4.0.0 and before there was a sync or a periodic discover check, they will have to update the already provided fields manually. To avoid this, a sync can be executed on any of the connections for this source. + +Other than breaking changes, we have changed the UI from which the user configures the source: +* You can now configure multiple streams by clicking on `Add` under `Streams`. +* `Output Stream Name` has been renamed to `Name` when configuring a specific stream. +* `Pattern of files to replicate` field has been renamed `Globs` under the stream configuration. + diff --git a/docs/integrations/sources/s3.md b/docs/integrations/sources/s3.md index 2c974b35199b..1738ae29edcb 100644 --- a/docs/integrations/sources/s3.md +++ b/docs/integrations/sources/s3.md @@ -9,12 +9,13 @@ Please note that using cloud storage may incur egress costs. Egress refers to da ## Prerequisites - Access to the S3 bucket containing the files to replicate. +- For **private buckets**, an AWS account with the ability to grant permissions to read from the bucket. ## Setup guide ### Step 1: Set up Amazon S3 -**If you are syncing from a private bucket**, you will need to provide your `AWS Access Key ID` and `AWS Secret Access Key` to authenticate the connection, and ensure that the IAM user associated with the credentials has `read` and `list` permissions for the bucket. If you are unfamiliar with configuring AWS permissions, you can follow these steps to obtain the necessary permissions and credentials: +**If you are syncing from a private bucket**, you will need to provide both an `AWS Access Key ID` and `AWS Secret Access Key` to authenticate the connection. The IAM user associated with the credentials must be granted `read` and `list` permissions for the bucket and its objects. If you are unfamiliar with configuring AWS permissions, you can follow these steps to obtain the necessary permissions and credentials: 1. Log in to your Amazon AWS account and open the [IAM console](https://console.aws.amazon.com/iam/home#home). 2. In the IAM dashboard, select **Policies**, then click **Create Policy**. @@ -39,6 +40,10 @@ Please note that using cloud storage may incur egress costs. Egress refers to da } ``` +:::note +At this time, object-level permissions alone are not sufficient to successfully authenticate the connection. Please ensure you include the **bucket-level** permissions as provided in the example above. +::: + 4. Give your policy a descriptive name, then click **Create policy**. 5. In the IAM dashboard, click **Users**. Select an existing IAM user or create a new one by clicking **Add users**. 6. If you are using an _existing_ IAM user, click the **Add permissions** dropdown menu and select **Add permissions**. If you are creating a _new_ user, you will be taken to the Permissions screen after selecting a name. @@ -57,24 +62,26 @@ For more information on managing your access keys, please refer to the 1. [Log in to your Airbyte Cloud](https://cloud.airbyte.com/workspaces) account, or navigate to your Airbyte Open Source dashboard. 2. In the left navigation bar, click **Sources**. In the top-right corner, click **+ New source**. 3. Find and select **S3** from the list of available sources. -4. Enter the **Output Stream Name**. This will be the name of the table in the destination (can contain letters, numbers and underscores). -5. Enter the **Pattern of files to replicate**. This is a regular expression that allows Airbyte to pattern match the specific files to replicate. If you are replicating all the files within your bucket, use `**` as the pattern. For more precise pattern matching options, refer to the [Path Patterns section](#path-patterns) below. -6. Enter the name of the **Bucket** containing your files to replicate. -7. Toggle the **Optional fields** under the **Bucket** field to expand additional configuration options. **If you are syncing from a private bucket**, you must fill the **AWS Access Key ID** and **AWS Secret Access Key** fields with the appropriate credentials to authenticate the connection. All other fields are optional and can be left empty. Refer to the [S3 Provider Settings section](#s3-provider-settings) below for more information on each field. -8. In the **File Format** box, use the dropdown menu to select the format of the files you'd like to replicate. The supported formats are **CSV**, **Parquet**, **Avro** and **JSONL**. Toggling the **Optional fields** button within the **File Format** box will allow you to enter additional configurations based on the selected format. For a detailed breakdown of these settings, refer to the [File Format section](#file-format-settings) below. -6. (Optional) - If you want to enforce a specific schema, you can enter a **Manually enforced data schema**. By default, this value is set to `{}` and will automatically infer the schema from the file\(s\) you are replicating. For details on providing a custom schema, refer to the [User Schema section](#user-schema). +4. Enter the name of the **Bucket** containing your files to replicate. +5. Add a stream + 1. Write the **File Type** + 2. In the **Format** box, use the dropdown menu to select the format of the files you'd like to replicate. The supported formats are **CSV**, **Parquet**, **Avro** and **JSONL**. Toggling the **Optional fields** button within the **Format** box will allow you to enter additional configurations based on the selected format. For a detailed breakdown of these settings, refer to the [File Format section](#file-format-settings) below. + 3. Give a **Name** to the stream + 4. (Optional) - If you want to enforce a specific schema, you can enter a **Input schema**. By default, this value is set to `{}` and will automatically infer the schema from the file\(s\) you are replicating. For details on providing a custom schema, refer to the [User Schema section](#user-schema). + 5. Optionally, enter the **Globs** which dictates which files to be synced. This is a regular expression that allows Airbyte to pattern match the specific files to replicate. If you are replicating all the files within your bucket, use `**` as the pattern. For more precise pattern matching options, refer to the [Path Patterns section](#path-patterns) below. +6. **If you are syncing from a private bucket**, you must fill the **AWS Access Key ID** and **AWS Secret Access Key** fields with the appropriate credentials to authenticate the connection. All other fields are optional and can be left empty. Refer to the [S3 Provider Settings section](#s3-provider-settings) below for more information on each field. ## Supported sync modes The Amazon S3 source connector supports the following [sync modes](https://docs.airbyte.com/cloud/core-concepts#connection-sync-modes): | Feature | Supported? | -| :--------------------------------------------- | :--------- | +| :--------------------------------------------- |:-----------| | Full Refresh Sync | Yes | | Incremental Sync | Yes | | Replicate Incremental Deletes | No | | Replicate Multiple Files \(pattern matching\) | Yes | -| Replicate Multiple Streams \(distinct tables\) | No | +| Replicate Multiple Streams \(distinct tables\) | Yes | | Namespaces | No | ## File Compressions @@ -187,19 +194,14 @@ Please note, the S3 Source connector used to infer schemas from all the availabl ## File Format Settings -The Reader in charge of loading the file format is currently based on [PyArrow](https://arrow.apache.org/docs/python/generated/pyarrow.csv.open_csv.html) \(Apache Arrow\). - -:::note -All files within one stream must adhere to the same read options for every provided format. -::: - ### CSV Since CSV files are effectively plain text, providing specific reader options is often required for correct parsing of the files. These settings are applied when a CSV is created or exported so please ensure that this process happens consistently over time. +- **Header Definition**: How headers will be defined. `User Provided` assumes the CSV does not have a header row and uses the headers provided and `Autogenerated` assumes the CSV does not have a header row and the CDK will generate headers using for `f{i}` where `i` is the index starting from 0. Else, the default behavior is to use the header from the CSV file. If a user wants to autogenerate or provide column names for a CSV having headers, they can set a value for the "Skip rows before header" option to ignore the header row. - **Delimiter**: Even though CSV is an acronym for Comma Separated Values, it is used more generally as a term for flat file data that may or may not be comma separated. The delimiter field lets you specify which character acts as the separator. To use [tab-delimiters](https://en.wikipedia.org/wiki/Tab-separated_values), you can set this value to `\t`. By default, this value is set to `,`. -- **Infer Datatypes**: This option determines whether a schema for the source should be inferred from the current data. When set to False and a custom schema is provided, the manually enforced schema takes precedence. If no custom schema is set and this option is set to False, all fields will be read as strings. Set to True by default. -- **Quote Character**: In some cases, data values may contain instances of reserved characters \(like a comma, if that's the delimiter\). CSVs can handle this by wrapping a value in defined quote characters so that on read it can parse it correctly. By default, this is set to `"`. +- **Double Quote**: This option determines whether two quotes in a quoted CSV value denote a single quote in the data. Set to True by default. +- **Encoding**: Some data may use a different character set \(typically when different alphabets are involved\). See the [list of allowable encodings here](https://docs.python.org/3/library/codecs.html#standard-encodings). By default, this is set to `utf8`. - **Escape Character**: An escape character can be used to prefix a reserved character and ensure correct parsing. A commonly used character is the backslash (`\`). For example, given the following data: ``` @@ -211,78 +213,42 @@ The backslash (`\`) is used directly before the second double quote (`"`) to ind Leaving this field blank (default option) will disallow escaping. -- **Encoding**: Some data may use a different character set \(typically when different alphabets are involved\). See the [list of allowable encodings here](https://docs.python.org/3/library/codecs.html#standard-encodings). By default, this is set to `utf8`. -- **Double Quote**: This option determines whether two quotes in a quoted CSV value denote a single quote in the data. Set to True by default. -- **Allow newlines in values**: Also known as _multiline_, this option addresses situations where newline characters occur within text data. Typically, newline characters signify the end of a row in a CSV, but when this option is set to True, parsing correctly handles newlines within values. Set to False by default. -- **Additional Reader Options**: This allows for editing the less commonly used CSV [ConvertOptions](https://arrow.apache.org/docs/python/generated/pyarrow.csv.ConvertOptions.html#pyarrow.csv.ConvertOptions). The value must be a valid JSON string, e.g.: - - ``` - { - "timestamp_parsers": [ - "%m/%d/%Y %H:%M", "%Y/%m/%d %H:%M" - ], - "strings_can_be_null": true, - "null_values": [ - "NA", "NULL" - ] - } - ``` - -- **Advanced Options**: This allows for editing the less commonly used CSV [ReadOptions](https://arrow.apache.org/docs/python/generated/pyarrow.csv.ReadOptions.html#pyarrow.csv.ReadOptions). The value must be a valid JSON string. One use case for this is when your CSV has no header, or if you want to use custom column names. You can specify `column_names` using this option. For example: - - ``` - { - "column_names": [ - "column1", "column2", "column3" - ] - } - ``` +- **False Values**: A set of case-sensitive strings that should be interpreted as false values. +- **Null Values**: A set of case-sensitive strings that should be interpreted as null values. For example, if the value 'NA' should be interpreted as null, enter 'NA' in this field. +- **Quote Character**: In some cases, data values may contain instances of reserved characters \(like a comma, if that's the delimiter\). CSVs can handle this by wrapping a value in defined quote characters so that on read it can parse it correctly. By default, this is set to `"`. +- **Skip Rows After Header**: The number of rows to skip after the header row. +- **Skip Rows Before Header**: The number of rows to skip before the header row. +- **Strings Can Be Null**: Whether strings can be interpreted as null values. If true, strings that match the null_values set will be interpreted as null. If false, strings that match the null_values set will be interpreted as the string itself. +- **True Values**: A set of case-sensitive strings that should be interpreted as true values. -- **Block Size**: This is the number of bytes to process in memory at a time while reading files. The default value of `10000` is usually suitable, but if your files are particularly wide (lots of columns, or the values in the columns are particularly large), increasing this might help avoid schema detection failures. - -:::caution -Be cautious when raising this value too high, as it may result in Out Of Memory issues due to increased memory usage. -::: ### Parquet Apache Parquet is a column-oriented data storage format of the Apache Hadoop ecosystem. It provides efficient data compression and encoding schemes with enhanced performance to handle complex data in bulk. At the moment, partitioned parquet datasets are unsupported. The following settings are available: -- **Selected Columns**: If you only want to sync a subset of the columns from the file(s), enter the desired columns here as a comma-delimited list. Leave this field empty to sync all columns. -- **Record Batch Size**: Sets the maximum number of records per batch. Batches may be smaller if there aren’t enough rows in the file. This option can help avoid out-of-memory errors if your data is particularly wide. Set to `65536` by default. -- **Buffer Size**: If set to a positive number, read buffering is performed during the deserializing of individual column chunks. Otherwise I/O calls are unbuffered. Set to `2` by default. - -For more information on these fields, please refer to the [Apache documentation](https://arrow.apache.org/docs/python/generated/pyarrow.parquet.ParquetFile.html#pyarrow.parquet.ParquetFile.iter_batches). +- **Convert Decimal Fields to Floats**: Whether to convert decimal fields to floats. There is a loss of precision when converting decimals to floats, so this is not recommended. ### Avro -The Avro parser uses the [Fastavro library](https://fastavro.readthedocs.io/en/latest/). Currently, no additional options are supported. +The Avro parser uses the [Fastavro library](https://fastavro.readthedocs.io/en/latest/). The following settings are available: +- **Convert Double Fields to Strings**: Whether to convert double fields to strings. This is recommended if you have decimal numbers with a high degree of precision because there can be a loss precision when handling floating point numbers. ### JSONL -The JSONL parser uses the PyArrow library, which only supports the line-delimited JSON format. For more detailed info, please refer to the [official docs](https://arrow.apache.org/docs/python/json.html). +There are currently no options for JSONL parsing. -- **Allow newlines in values**: While JSONL typically has each JSON object on a separate line, there are cases where newline characters may appear within JSON values, such as multiline strings. This option enables the parser to correctly interpret and treat newline characters within values. Please note that setting this option to True may affect performance. Set to False by default. - -- **Unexpected field behavior**: This parameter determines how any JSON fields outside of the explicit schema (if defined) are handled. Possible behaviors include: - - - `ignore`: Unexpected JSON fields are ignored. - - `error`: Error out on unexpected JSON fields. - - `infer`: Unexpected JSON fields are type-inferred and included in the output. - -Set to `infer` by default. - -- **Block Size**: This sets the number of bytes to process in memory at a time while reading files. The default value of `10000` is usually suitable, but if your files are particularly wide (lots of columns or the values in the columns are particularly large), increasing this might help avoid schema detection failures. - -:::caution -Be cautious when raising this value too high, as it may result in Out Of Memory issues due to increased memory usage. -::: ## Changelog | Version | Date | Pull Request | Subject | -|:--------|:-----------|:----------------------------------------------------------------------------------------------------------------|:---------------------------------------------------------------------------------------------------------------------| -| 3.1.10 | 2023-08-29 | [29943](https://github.com/airbytehq/airbyte/pull/29943) | Add config error for arrow invalide rror | +|:--------|:-----------| :-------------------------------------------------------------------------------------------------------------- |:---------------------------------------------------------------------------------------------------------------------| +| 4.0.4 | 2023-09-18 | [30476](https://github.com/airbytehq/airbyte/pull/30476) | Remove streams.*.file_type from source-s3 configuration | +| 4.0.3 | 2023-09-13 | [30387](https://github.com/airbytehq/airbyte/pull/30387) | Bump Airbyte-CDK version to improve messages for record parse errors | +| 4.0.2 | 2023-09-07 | [28639](https://github.com/airbytehq/airbyte/pull/28639) | Always show S3 Key fields | +| 4.0.1 | 2023-09-06 | [30217](https://github.com/airbytehq/airbyte/pull/30217) | Migrate inference error to config errors and avoir sentry alerts | +| 4.0.0 | 2023-09-05 | [29757](https://github.com/airbytehq/airbyte/pull/29757) | New version using file-based CDK | +| 3.1.11 | 2023-08-30 | [29986](https://github.com/airbytehq/airbyte/pull/29986) | Add config error for conversion error | +| 3.1.10 | 2023-08-29 | [29943](https://github.com/airbytehq/airbyte/pull/29943) | Add config error for arrow invalid error | | 3.1.9 | 2023-08-23 | [29753](https://github.com/airbytehq/airbyte/pull/29753) | Feature parity update for V4 release | | 3.1.8 | 2023-08-17 | [29520](https://github.com/airbytehq/airbyte/pull/29520) | Update legacy state and error handling | | 3.1.7 | 2023-08-17 | [29505](https://github.com/airbytehq/airbyte/pull/29505) | v4 StreamReader and Cursor fixes | diff --git a/docs/integrations/sources/salesforce.inapp.md b/docs/integrations/sources/salesforce.inapp.md index d60a552e465a..591744bbb4b4 100644 --- a/docs/integrations/sources/salesforce.inapp.md +++ b/docs/integrations/sources/salesforce.inapp.md @@ -78,11 +78,11 @@ Airbyte fetches and handles all the possible and available streams dynamically b ### Incremental Deletes -The Salesforce connector retrieves deleted records from Salesforce. For the streams which support it, a deleted record will be marked with the `isDeleted=true` value in the respective field. +The Salesforce connector supports retrieving deleted records from the Salesforce recycle bin. For the streams which support it, a deleted record will be marked with `isDeleted=true`. To find out more about how Salesforce manages records in the recycle bin, please visit their [docs](https://help.salesforce.com/s/articleView?id=sf.home_delete.htm&type=5). ### Syncing Formula Fields The Salesforce connector syncs formula field outputs from Salesforce. If the formula of a field changes in Salesforce and no other field on the record is updated, you will need to reset the stream to pull in all the updated values of the field. For detailed information on supported sync modes, supported streams and performance considerations, refer to the -[full documentation for Salesforce](https://docs.airbyte.com/integrations/sources/google-analytics-v4). +[full documentation for Salesforce](https://docs.airbyte.com/integrations/sources/salesforce). diff --git a/docs/integrations/sources/salesforce.md b/docs/integrations/sources/salesforce.md index ca9b189c2107..b78cbb4173ef 100644 --- a/docs/integrations/sources/salesforce.md +++ b/docs/integrations/sources/salesforce.md @@ -88,7 +88,7 @@ The Salesforce source connector supports the following sync modes: ### Incremental Deletes sync -The Salesforce connector retrieves deleted records from Salesforce. For the streams which support it, a deleted record will be marked with `isDeleted=true`. +The Salesforce connector supports retrieving deleted records from the Salesforce recycle bin. For the streams which support it, a deleted record will be marked with `isDeleted=true`. To find out more about how Salesforce manages records in the recycle bin, please visit their [docs](https://help.salesforce.com/s/articleView?id=sf.home_delete.htm&type=5). ## Performance considerations diff --git a/docs/integrations/sources/sentry.md b/docs/integrations/sources/sentry.md index 3e06271bebc8..cb6749812ff0 100644 --- a/docs/integrations/sources/sentry.md +++ b/docs/integrations/sources/sentry.md @@ -47,6 +47,7 @@ The Sentry source connector supports the following [sync modes](https://docs.air | Version | Date | Pull Request | Subject | |:--------|:-----------|:---------------------------------------------------------|:------------------------------------------------------------------------| +| 0.3.0 | 2023-09-05 | [30192](https://github.com/airbytehq/airbyte/pull/30192) | Added undeclared fields to schema | | 0.2.4 | 2023-08-14 | [29401](https://github.com/airbytehq/airbyte/pull/29401) | Fix `null` value in stream state | | 0.2.3 | 2023-08-03 | [29023](https://github.com/airbytehq/airbyte/pull/29023) | Add incremental for `issues` stream | | 0.2.2 | 2023-05-02 | [25759](https://github.com/airbytehq/airbyte/pull/25759) | Change stream that used in check_connection | diff --git a/docs/integrations/sources/shopify.md b/docs/integrations/sources/shopify.md index 16e8537b40aa..0fd8aa41478e 100644 --- a/docs/integrations/sources/shopify.md +++ b/docs/integrations/sources/shopify.md @@ -127,6 +127,14 @@ For better experience with `Incremental Refresh` the following is recommended: If child streams are synced alone from the parent stream - the full sync will take place, and the records are filtered out afterwards. +## Capturing Deleted Records +The connector captures deletions for records in the `Articles`, `Blogs`, `CustomCollections`, `Orders`, `Pages`, `PriceRules` and `Products` streams. + +When a record is deleted, the connector outputs a record with the `ID` of that record and the `deleted_at`, `deleted_message`, and `deleted_description` fields filled out. No other fields are filled out for the deleted records. + +Check the following Shopify documentation for more information about the [Retrieving Deleted Records](https://shopify.dev/docs/api/admin-rest/2023-07/resources/event) + + ## Data type mapping | Integration Type | Airbyte Type | @@ -159,6 +167,8 @@ This is expected when the connector hits the 429 - Rate Limit Exceeded HTTP Erro | Version | Date | Pull Request | Subject | | :------ | :--------- | :------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------ | +| 1.1.1 | 2023-09-18 | [30560](https://github.com/airbytehq/airbyte/pull/30560) | Performance testing - include socat binary in docker image | +| 1.1.0 | 2023-09-07 | [30246](https://github.com/airbytehq/airbyte/pull/30246) | Added ability to fetch `destroyed` records for `Articles, Blogs, CustomCollections, Orders, Pages, PriceRules, Products` | | 1.0.0 | 2023-08-11 | [29361](https://github.com/airbytehq/airbyte/pull/29361) | Migrate to the `2023-07` Shopify API Version | | 0.6.2 | 2023-08-09 | [29302](https://github.com/airbytehq/airbyte/pull/29302) | Handle the `Internal Server Error` when entity could be fetched | | 0.6.1 | 2023-08-08 | [28291](https://github.com/airbytehq/airbyte/pull/28291) | Allow `shop` field to accept `*.myshopify.com` shop names, updated `OAuth Spec` | diff --git a/docs/integrations/sources/stripe-migrations.md b/docs/integrations/sources/stripe-migrations.md new file mode 100644 index 000000000000..5dc7fa19f9b5 --- /dev/null +++ b/docs/integrations/sources/stripe-migrations.md @@ -0,0 +1,6 @@ +# Stripe Migration Guide + +## Upgrading to 4.0.0 + +A major update of most streams to support event-based incremental sync mode. This allows the connector to pull not only the newly created data since the last sync, but the modified data as well. +A schema refresh is required for the connector to use the new cursor format. \ No newline at end of file diff --git a/docs/integrations/sources/stripe.md b/docs/integrations/sources/stripe.md index 9a69d906d11a..a5617add9fab 100644 --- a/docs/integrations/sources/stripe.md +++ b/docs/integrations/sources/stripe.md @@ -30,20 +30,21 @@ For more information on Stripe API Keys, see the [Stripe documentation](https:// 5. For **Account ID**, enter your Stripe Account ID. This ID begins with `acct_`, and can be found in the top-right corner of your Stripe [account settings page](https://dashboard.stripe.com/settings/account). 6. For **Secret Key**, enter the restricted key you created for the connection. 7. For **Replication Start Date**, use the provided datepicker or enter a UTC date and time programmatically in the format `YYYY-MM-DDTHH:mm:ssZ`. The data added on and after this date will be replicated. -8. (Optional) For **Lookback Window**, you may specify a number of days from the present day to reread data. This allows the connector to retrieve data that might have been updated after its initial creation, and is useful for handling any post-transaction adjustments (such as tips, refunds, chargebacks, etc). +8. (Optional) For **Lookback Window**, you may specify a number of days from the present day to reread data. This allows the connector to retrieve data that might have been updated after its initial creation, and is useful for handling any post-transaction adjustments. This applies only to streams that do not support event-based incremental syncs, please see the list below. - - Leaving the **Lookback Window** at its default value of 0 means Airbyte will not re-export data after it has been synced. - - Setting the **Lookback Window** to 1 means Airbyte will re-export data from the past day, capturing any changes made in the last 24 hours. - - Setting the **Lookback Window** to 7 means Airbyte will re-export and capture any data changes within the last week. + - Leaving the **Lookback Window** at its default value of 0 means Airbyte will not re-export data after it has been synced. + - Setting the **Lookback Window** to 1 means Airbyte will re-export data from the past day, capturing any changes made in the last 24 hours. + - Setting the **Lookback Window** to 7 means Airbyte will re-export and capture any data changes within the last week. 9. (Optional) For **Data Request Window**, you may specify the time window in days used by the connector when requesting data from the Stripe API. This window defines the span of time covered in each request, with larger values encompassing more days in a single request. Generally speaking, the lack of overhead from making fewer requests means a larger window is faster to sync. However, this also means the state of the sync will persist less frequently. If an issue occurs or the sync is interrupted, a larger window means more data will need to be resynced, potentially causing a delay in the overall process. - For example, if you are replicating three years worth of data: + For example, if you are replicating three years worth of data: - - A **Data Request Window** of 365 days means Airbyte makes 3 requests, each for a year. This is generally faster but risks needing to resync up to a year's data if the sync is interrupted. - - A **Data Request Window** of 30 days means 36 requests, each for a month. This may be slower but minimizes the amount of data that needs to be resynced if an issue occurs. + - A **Data Request Window** of 365 days means Airbyte makes 3 requests, each for a year. This is generally faster but risks needing to resync up to a year's data if the sync is interrupted. + - A **Data Request Window** of 30 days means 36 requests, each for a month. This may be slower but minimizes the amount of data that needs to be resynced if an issue occurs. + + If you are unsure of which value to use, we recommend leaving this setting at its default value of 365 days. - If you are unsure of which value to use, we recommend leaving this setting at its default value of 365 days. 10. Click **Set up source** and wait for the tests to complete. ## Supported sync modes @@ -54,30 +55,39 @@ The Stripe source connector supports the following [sync modes](https://docs.air - Incremental :::note -Since the Stripe API does not allow querying objects which were updated since the last sync, the Stripe connector uses the `created` field to query for new data in your Stripe account. -::: +Since the Stripe API does not allow querying objects which were updated since the last sync, the Stripe connector uses the Events API under the hood to implement incremental syncs and export data based on its update date. +However, not all the entities are supported by the Events API, so the Stripe connector uses the `created` field to query for new data in your Stripe account. These are the entities synced based on the date of creation: + +- `CheckoutSessionLineItems` +- `Events` +- `SetupAttempts` +- `ShippingRates` +- `BalanceTransactions` +- `Files` +- `FileLinks` + ::: ## Supported streams The Stripe source connector supports the following streams: -- [Accounts](https://stripe.com/docs/api/accounts/list) \(Incremental\) +- [Accounts](https://stripe.com/docs/api/accounts/list) - [Application Fees](https://stripe.com/docs/api/application_fees) \(Incremental\) -- [Application Fee Refunds](https://stripe.com/docs/api/fee_refunds/list) +- [Application Fee Refunds](https://stripe.com/docs/api/fee_refunds/list) \(Incremental\) - [Authorizations](https://stripe.com/docs/api/issuing/authorizations/list) \(Incremental\) - [Balance Transactions](https://stripe.com/docs/api/balance_transactions/list) \(Incremental\) -- [Bank accounts](https://stripe.com/docs/api/customer_bank_accounts/list) +- [Bank accounts](https://stripe.com/docs/api/customer_bank_accounts/list) \(Incremental\) - [Cardholders](https://stripe.com/docs/api/issuing/cardholders/list) \(Incremental\) - [Cards](https://stripe.com/docs/api/issuing/cards/list) \(Incremental\) - [Charges](https://stripe.com/docs/api/charges/list) \(Incremental\) :::note The `amount` column defaults to the smallest currency unit. Check [the Stripe docs](https://stripe.com/docs/api/charges/object) for more details. ::: -- [Checkout Sessions](https://stripe.com/docs/api/checkout/sessions/list) -- [Checkout Sessions Line Items](https://stripe.com/docs/api/checkout/sessions/line_items) +- [Checkout Sessions](https://stripe.com/docs/api/checkout/sessions/list) \(Incremental\) +- [Checkout Sessions Line Items](https://stripe.com/docs/api/checkout/sessions/line_items) \(Incremental\) - [Coupons](https://stripe.com/docs/api/coupons/list) \(Incremental\) -- [Credit Notes](https://stripe.com/docs/api/credit_notes/list) \(Full Refresh\) -- [Customer Balance Transactions](https://stripe.com/docs/api/customer_balance_transactions/list) +- [Credit Notes](https://stripe.com/docs/api/credit_notes/list) \(Incremental\) +- [Customer Balance Transactions](https://stripe.com/docs/api/customer_balance_transactions/list) \(Incremental\) - [Customers](https://stripe.com/docs/api/customers/list) \(Incremental\) :::note This endpoint does _not_ include deleted customers @@ -85,6 +95,8 @@ The Stripe source connector supports the following streams: - [Disputes](https://stripe.com/docs/api/disputes/list) \(Incremental\) - [Early Fraud Warnings](https://stripe.com/docs/api/radar/early_fraud_warnings/list) \(Incremental\) - [Events](https://stripe.com/docs/api/events/list) \(Incremental\) +- [External Account Bank Accounts](https://stripe.com/docs/api/external_account_bank_accounts/list) \(Incremental\) +- [External Account Cards](https://stripe.com/docs/api/external_account_cards/list) \(Incremental\) - [File Links](https://stripe.com/docs/api/file_links/list) \(Incremental\) - [Files](https://stripe.com/docs/api/files/list) \(Incremental\) - [Invoice Items](https://stripe.com/docs/api/invoiceitems/list) \(Incremental\) @@ -114,6 +126,7 @@ The Stripe source connector supports the following streams: :::warning **Stripe API Restriction on Events Data**: Access to the events endpoint is [guaranteed only for the last 30 days](https://stripe.com/docs/api/events) by Stripe. If you use the Full Refresh Overwrite sync, be aware that any events data older than 30 days will be **deleted** from your target destination and replaced with the data from the last 30 days only. Use an Append sync mode to ensure historical data is retained. +Please be aware: this also means that any change older than 30 days will not be replicated using the incremental sync mode. If you want all your synced data to remain up to date, please set up your sync frequency to no more than 30 days. ::: ### Data type mapping @@ -127,8 +140,12 @@ The Stripe connector should not run into Stripe API limitations under normal usa ## Changelog | Version | Date | Pull Request | Subject | -|:--------|:-----------|:---------------------------------------------------------|:-----------------------------------------------------------------------------------------------------------------------------------------------------| -| 3.17.4 | 2023-08-15 | [00000](https://github.com/airbytehq/airbyte/pull/00000) | Revert 3.17.3 | +| :------ | :--------- | :------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------- | +| 4.1.1 | 2023-09-15 | [30494](https://github.com/airbytehq/airbyte/pull/30494) | Fix datatype of invoices.lines property | +| 4.1.0 | 2023-08-29 | [29950](https://github.com/airbytehq/airbyte/pull/29950) | Implement incremental deletes, add suggested streams | +| 4.0.1 | 2023-09-07 | [30254](https://github.com/airbytehq/airbyte/pull/30254) | Fix cursorless incremental streams | +| 4.0.0 | 2023-08-15 | [29330](https://github.com/airbytehq/airbyte/pull/29330) | Implement incremental syncs based on date of update | +| 3.17.4 | 2023-08-15 | [29425](https://github.com/airbytehq/airbyte/pull/29425) | Revert 3.17.3 | | 3.17.3 | 2023-08-01 | [28911](https://github.com/airbytehq/airbyte/pull/28911) | Revert 3.17.2 and fix atm_fee property | | 3.17.2 | 2023-08-01 | [28911](https://github.com/airbytehq/airbyte/pull/28911) | Fix stream schemas, remove custom 403 error handling | | 3.17.1 | 2023-08-01 | [28887](https://github.com/airbytehq/airbyte/pull/28887) | Fix `Invoices` schema | diff --git a/docs/integrations/sources/trello-migrations.md b/docs/integrations/sources/trello-migrations.md new file mode 100644 index 000000000000..8ac92ffecb8a --- /dev/null +++ b/docs/integrations/sources/trello-migrations.md @@ -0,0 +1,7 @@ +# Trello Migration Guide + +## Upgrading to 1.0.0 + +This version upgrades the connector to the low-code framework for better maintainability. This migration includes a breaking change to the state format of the `actions` stream. + +Any connection using the `actions` stream in `incremental` mode will need to be reset after the upgrade to avoid sync failures. diff --git a/docs/integrations/sources/trello.md b/docs/integrations/sources/trello.md index de088670a6e2..16f7b27374d8 100644 --- a/docs/integrations/sources/trello.md +++ b/docs/integrations/sources/trello.md @@ -76,6 +76,7 @@ The Trello connector should not run into Trello API limitations under normal usa | Version | Date | Pull Request | Subject | |:--------|:-----------|:---------------------------------------------------------|:-----------------------------------------------------------| +| 1.0.0 | 2023-09-08 | [29876](https://github.com/airbytehq/airbyte/pull/29876) | Migrate to Low Code CDK | | 0.3.4 | 2023-07-31 | [28734](https://github.com/airbytehq/airbyte/pull/28734) | Updated `expected records` for CAT test and fixed `advancedAuth` broken references | | 0.3.3 | 2023-06-19 | [27470](https://github.com/airbytehq/airbyte/pull/27470) | Update Organizations schema | | 0.3.2 | 2023-05-05 | [25870](https://github.com/airbytehq/airbyte/pull/25870) | Added `CDK typeTransformer` to guarantee JSON schema types | diff --git a/docs/integrations/sources/typeform-migrations.md b/docs/integrations/sources/typeform-migrations.md new file mode 100644 index 000000000000..9f9726cb55b6 --- /dev/null +++ b/docs/integrations/sources/typeform-migrations.md @@ -0,0 +1,7 @@ +# Typeform Migration Guide + +## Upgrading to 1.1.0 + +This version upgrades the connector to the low-code framework for better maintainability. This migration includes a breaking change to the state format of the `responses` stream. + +Any connection using the `responses` stream in `incremental` mode will need to be reset after the upgrade to avoid sync failures. \ No newline at end of file diff --git a/docs/integrations/sources/typeform.md b/docs/integrations/sources/typeform.md index 16c94f432aa0..59751b4c76ed 100644 --- a/docs/integrations/sources/typeform.md +++ b/docs/integrations/sources/typeform.md @@ -90,6 +90,7 @@ API rate limits \(2 requests per second\): [https://developer.typeform.com/get-s | Version | Date | Pull Request | Subject | |:--------|:-----------|:---------------------------------------------------------|:------------------------------------------------------------------------| +| 1.1.0 | 2023-09-04 | [29916](https://github.com/airbytehq/airbyte/pull/29916) | Migrate to Low-Code Framework | | 1.0.0 | 2023-06-26 | [27240](https://github.com/airbytehq/airbyte/pull/27240) | Add OAuth support | | 0.3.0 | 2023-06-23 | [27653](https://github.com/airbytehq/airbyte/pull/27653) | Add `form_id` to records of `responses` stream | | 0.2.0 | 2023-06-17 | [27455](https://github.com/airbytehq/airbyte/pull/27455) | Add missing schema fields in `forms`, `themes`, `images`, `workspaces`, and `responses` streams | diff --git a/docs/integrations/sources/zendesk-sell.md b/docs/integrations/sources/zendesk-sell.md index 46a5b3afed77..c3947ff973af 100644 --- a/docs/integrations/sources/zendesk-sell.md +++ b/docs/integrations/sources/zendesk-sell.md @@ -76,4 +76,5 @@ We recommend creating a restricted, read-only key specifically for Airbyte acces | Version | Date | Pull Request | Subject | | :--- | :--- | :--- | :--- | | 0.1.0 | 2022-10-27 | [17888](https://github.com/airbytehq/airbyte/pull/17888) | Initial Release | +| 0.1.1 | 2023-08-30 | [29830](https://github.com/airbytehq/airbyte/pull/29830) | Change phone_number in Calls to string (bug in zendesk sell api documentation) | diff --git a/docs/integrations/sources/zendesk-support.md b/docs/integrations/sources/zendesk-support.md index 9e4263b50f89..d4f7b5b994e3 100644 --- a/docs/integrations/sources/zendesk-support.md +++ b/docs/integrations/sources/zendesk-support.md @@ -53,8 +53,8 @@ If you prefer to authenticate with OAuth for **Airbyte Open Source**, you can fo - **For Airbyte Open Source**: To authenticate using an API key, select **API Token** from the Authentication dropdown and enter the API token you generated, as well as the email address associated with your Zendesk Support account. -6. For **Start Date**, use the provided datepicker or enter a UTC date and time programmatically in the format `YYYY-MM-DDTHH:mm:ssZ`. The data added on and after this date will be replicated. -7. For **Subdomain**, enter your Zendesk subdomain. This is the subdomain found in your account URL. For example, if your account URL is `https://MY_SUBDOMAIN.zendesk.com/`, then `MY_SUBDOMAIN` is your subdomain. +6. For **Subdomain**, enter your Zendesk subdomain. This is the subdomain found in your account URL. For example, if your account URL is `https://MY_SUBDOMAIN.zendesk.com/`, then `MY_SUBDOMAIN` is your subdomain. +7. (Optional) For **Start Date**, use the provided datepicker or enter a UTC date and time programmatically in the format `YYYY-MM-DDTHH:mm:ssZ`. The data added on and after this date will be replicated. If this field is left blank, Airbyte will replicate the data for the last two years by default. 8. Click **Set up source** and wait for the tests to complete. ## Supported sync modes @@ -79,10 +79,14 @@ The Zendesk Support source connector supports the following streams: - [Account Attributes](https://developer.zendesk.com/api-reference/ticketing/ticket-management/skill_based_routing/#list-account-attributes) - [Articles](https://developer.zendesk.com/api-reference/help_center/help-center-api/articles/#list-articles) \(Incremental\) +- [Article Votes](https://developer.zendesk.com/api-reference/help_center/help-center-api/votes/#list-votes) \(Incremental\) +- [Article Comments](https://developer.zendesk.com/api-reference/help_center/help-center-api/article_comments/#list-comments) \(Incremental\) +- [Article Comment Votes](https://developer.zendesk.com/api-reference/help_center/help-center-api/votes/#list-votes) \(Incremental\) - [Attribute Definitions](https://developer.zendesk.com/api-reference/ticketing/ticket-management/skill_based_routing/#list-routing-attribute-definitions) - [Audit Logs](https://developer.zendesk.com/api-reference/ticketing/account-configuration/audit_logs/#list-audit-logs)\(Incremental\) (Only available for enterprise accounts) - [Brands](https://developer.zendesk.com/api-reference/ticketing/account-configuration/brands/#list-brands) -- [Custom Roles](https://developer.zendesk.com/api-reference/ticketing/account-configuration/custom_roles/#list-custom-roles) +- [Custom Roles](https://developer.zendesk.com/api-reference/ticketing/account-configuration/custom_roles/#list-custom-roles) \(Incremental\) +- [Deleted Tickets](https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#list-deleted-tickets) \(Incremental\) - [Groups](https://developer.zendesk.com/rest_api/docs/support/groups) \(Incremental\) - [Group Memberships](https://developer.zendesk.com/rest_api/docs/support/group_memberships) \(Incremental\) - [Macros](https://developer.zendesk.com/rest_api/docs/support/macros) \(Incremental\) @@ -90,12 +94,12 @@ The Zendesk Support source connector supports the following streams: - [Organization Fields](https://developer.zendesk.com/api-reference/ticketing/organizations/organization_fields/#list-organization-fields) \(Incremental\) - [Organization Memberships](https://developer.zendesk.com/api-reference/ticketing/organizations/organization_memberships/) \(Incremental\) - [Posts](https://developer.zendesk.com/api-reference/help_center/help-center-api/posts/#list-posts) \(Incremental\) -- [Post Comments](https://developer.zendesk.com/api-reference/help_center/help-center-api/post_comments/#list-comments) -- [Post Comment Votes](https://developer.zendesk.com/api-reference/help_center/help-center-api/votes/#list-votes) -- [Post Votes](https://developer.zendesk.com/api-reference/help_center/help-center-api/votes/#list-votes) +- [Post Comments](https://developer.zendesk.com/api-reference/help_center/help-center-api/post_comments/#list-comments) \(Incremental\) +- [Post Comment Votes](https://developer.zendesk.com/api-reference/help_center/help-center-api/votes/#list-votes) \(Incremental\) +- [Post Votes](https://developer.zendesk.com/api-reference/help_center/help-center-api/votes/#list-votes) \(Incremental\) - [Satisfaction Ratings](https://developer.zendesk.com/rest_api/docs/support/satisfaction_ratings) \(Incremental\) -- [Schedules](https://developer.zendesk.com/api-reference/ticketing/ticket-management/schedules/#list-schedules) -- [SLA Policies](https://developer.zendesk.com/rest_api/docs/support/sla_policies) +- [Schedules](https://developer.zendesk.com/api-reference/ticketing/ticket-management/schedules/#list-schedules) \(Incremental\) +- [SLA Policies](https://developer.zendesk.com/rest_api/docs/support/sla_policies) \(Incremental\) - [Tags](https://developer.zendesk.com/rest_api/docs/support/tags) - [Tickets](https://developer.zendesk.com/api-reference/ticketing/ticket-management/incremental_exports/#incremental-ticket-export-time-based) \(Incremental\) - [Ticket Audits](https://developer.zendesk.com/rest_api/docs/support/ticket_audits) \(Client-Side Incremental\) @@ -119,7 +123,12 @@ The Zendesk connector ideally should not run into Zendesk API limitations under | Version | Date | Pull Request | Subject | |:---------|:-----------|:---------------------------------------------------------|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| `1.3.0` | 2023-08-30 | [29998](https://github.com/airbytehq/airbyte/pull/29998) | Add new streams: `Articles`, `Organization Fields` | +| `1.7.0` | 2023-09-11 | [30259](https://github.com/airbytehq/airbyte/pull/30259) | Add stream `Deleted Tickets` | +| `1.6.0` | 2023-09-09 | [30168](https://github.com/airbytehq/airbyte/pull/30168) | Make `start_date` field optional | +| `1.5.1` | 2023-09-05 | [30142](https://github.com/airbytehq/airbyte/pull/30142) | Handle non-JSON Response | +| `1.5.0` | 2023-09-04 | [30138](https://github.com/airbytehq/airbyte/pull/30138) | Add new Streams: `Article Votes`, `Article Comments`, `Article Comment Votes` | +| `1.4.0` | 2023-09-04 | [30134](https://github.com/airbytehq/airbyte/pull/30134) | Add incremental support for streams: `custom Roles`, `Schedules`, `SLA Policies` | +| `1.3.0` | 2023-08-30 | [30031](https://github.com/airbytehq/airbyte/pull/30031) | Add new streams: `Articles`, `Organization Fields` | | `1.2.2` | 2023-08-30 | [29998](https://github.com/airbytehq/airbyte/pull/29998) | Fix typo in stream `AttributeDefinitions`: field condition | | `1.2.1` | 2023-08-30 | [29991](https://github.com/airbytehq/airbyte/pull/29991) | Remove Custom availability strategy | | `1.2.0` | 2023-08-29 | [29940](https://github.com/airbytehq/airbyte/pull/29940) | Add undeclared fields to schemas | diff --git a/docs/operator-guides/configuring-airbyte.md b/docs/operator-guides/configuring-airbyte.md index 62bc2d1c9028..8f234a915090 100644 --- a/docs/operator-guides/configuring-airbyte.md +++ b/docs/operator-guides/configuring-airbyte.md @@ -42,14 +42,6 @@ The following variables are relevant to both Docker and Kubernetes. 4. `CONFIG_ROOT` - Defines the configs directory. Applies only to Docker, and is present in Kubernetes for backward compatibility. 5. `WORKSPACE_ROOT` - Defines the Airbyte workspace directory. Applies only to Docker, and is present in Kubernetes for backward compatibility. -#### Access - -Set to empty values, e.g. "" to disable basic auth. **Be sure to change these values**. - -1. BASIC_AUTH_USERNAME=airbyte -2. BASIC_AUTH_PASSWORD=password -3. BASIC_AUTH_PROXY_TIMEOUT=600 - Defines the proxy timeout time for requests to Airbyte Server. Main use should be for dynamic discover when creating a connection (S3, JDBC, etc) that takes a long time. - #### Secrets 1. `SECRET_PERSISTENCE` - Defines the Secret Persistence type. Defaults to NONE. Set to GOOGLE_SECRET_MANAGER to use Google Secret Manager. Set to AWS_SECRET_MANAGER to use AWS Secret Manager. Set to TESTING_CONFIG_DB_TABLE to use the database as a test. Set to VAULT to use Hashicorp Vault, currently only the token based authentication is supported. Alpha support. Undefined behavior will result if this is turned on and then off. @@ -126,6 +118,14 @@ Set to empty values, e.g. "" to disable basic auth. **Be sure to change these va 2. `DOCKER_NETWORK` - Defines the docker network the new Scheduler launches jobs on. 3. `LOCAL_DOCKER_MOUNT` - Defines the name of the docker mount that is used for local file handling. On Docker, this allows connector pods to interact with a volume for "local file" operations. +#### Access + +Set to empty values, e.g. "" to disable basic auth. **Be sure to change these values**. + +1. `BASIC_AUTH_USERNAME=airbyte` +2. `BASIC_AUTH_PASSWORD=password` +3. `BASIC_AUTH_PROXY_TIMEOUT=600` - Defines the proxy timeout time for requests to Airbyte Server. Main use should be for dynamic discover when creating a connection (S3, JDBC, etc) that takes a long time. + ### Kubernetes-Only #### Jobs diff --git a/docs/operator-guides/contact-support.md b/docs/operator-guides/contact-support.md index 659a35e0b854..49965d7701a2 100644 --- a/docs/operator-guides/contact-support.md +++ b/docs/operator-guides/contact-support.md @@ -1,6 +1,6 @@ # Airbyte Support -Hold up! Have you looked at [our docs](https://docs.airbyte.com/) yet? We recommend searching the wealth of knowledge in our documentation as many times the answer you are looking for is there! +Hold up! Have you looked at [our docs](https://docs.airbyte.com/) yet? We recommend searching the wealth of knowledge in our documentation as many times the answer you are looking for is there! ## Airbyte Open Source Support @@ -26,7 +26,7 @@ If you have questions about connector setup, error resolution, or want to report If you couldn't find the information you need in our docs or Help Center, open a ticket within the Airbyte Cloud platform by selecting the "Support" icon in the lower left navigation bar. Alternatively, you can submit a ticket through our [Help Center](https://support.airbyte.com/hc/en-us) by completing an Airbyte Cloud Support Request. -If you're unsure about the supported connectors, refer to our [connector catalog](https://docs.airbyte.com/integrations/) & [release phases](https://docs.airbyte.com/project-overview/product-release-stages/). +If you're unsure about the supported connectors, refer to our [Connector Catalog](https://docs.airbyte.com/integrations/) & [Connector Support Levels](https://docs.airbyte.com/project-overview/product-support-levels/). For account or credit-related inquiries, contact our [sales team](https://airbyte.com/talk-to-sales). @@ -48,7 +48,7 @@ Submitting a Pull Request for review? * If you are submitting a Platform PR we accept Platform PRs in the areas below: * Helm * Environment variable configurations - * Bug Fixes + * Bug Fixes * Security version bumps * **If outside these areas, please open up an issue to help the team understand the need and if we are able to consider a PR** diff --git a/docs/operator-guides/security.md b/docs/operator-guides/security.md index 2cd005c4cbe1..a887e8bd5b91 100644 --- a/docs/operator-guides/security.md +++ b/docs/operator-guides/security.md @@ -56,7 +56,7 @@ You can secure access to Airbyte using the following methods: } } ``` -- Change the default username and password in your environment's `.env` file: +- *Only for docker compose deployments:* Change the default username and password in your environment's `.env` file: ``` # Proxy Configuration # Set to empty values, e.g. "" to disable basic auth diff --git a/docs/operator-guides/upgrading-airbyte.md b/docs/operator-guides/upgrading-airbyte.md index f4d436f7d92a..834262eca21c 100644 --- a/docs/operator-guides/upgrading-airbyte.md +++ b/docs/operator-guides/upgrading-airbyte.md @@ -117,7 +117,7 @@ If you are upgrading from (i.e. your current version of Airbyte is) Airbyte vers Here's an example of what it might look like with the values filled in. It assumes that the downloaded `airbyte_archive.tar.gz` is in `/tmp`. ```bash - docker run --rm -v /tmp:/config airbyte/migration:0.50.25 --\ + docker run --rm -v /tmp:/config airbyte/migration:0.50.30 --\ --input /config/airbyte_archive.tar.gz\ --output /config/airbyte_archive_migrated.tar.gz ``` diff --git a/docs/project-overview/product-release-stages.md b/docs/project-overview/product-release-stages.md deleted file mode 100644 index 5eebc97556e3..000000000000 --- a/docs/project-overview/product-release-stages.md +++ /dev/null @@ -1,39 +0,0 @@ -# Product Release Stages - -The following release stages describe the lifecycle of an Airbyte product, feature, or connector. - -| Expectations | Alpha | Beta | General Availability (GA)| -|:-------------|:------|:-----|:-------------------------| -| Customer Availability | Alpha features and products may have limited availability (by invitation only)

Alpha connectors are available to all users | Beta features and products may have limited availability (by invitation only)

Beta connectors are available to all users | Available to all users | -|Support | Cloud: No Support SLAs

Open-source: Community Slack Support | Cloud: Official Beta Support SLA

Open-source: Community Slack Support | Cloud: Official GA Support SLA

Open-source: Community Slack Support | -| Production Readiness | No | Yes (with caveats) | Yes | - -## Alpha -An alpha release signifies a product, feature, or connector under development and helps Airbyte gather early feedback and issues reported by early adopters. We strongly discourage using alpha releases for production use cases and do not offer Cloud Support SLAs around these products, features, or connectors. - -### What you should know about an alpha release - -- An alpha release might not be feature-complete (features planned for the release are under development) and may include backward-incompatible/breaking API changes. -- Access for alpha features and products may not be enabled for all Airbyte users by default. Depending on the feature, you may enable the feature either from the Airbyte UI or by contacting Airbyte Support. Alpha connectors are available to all users. -- Alpha releases may be announced via email, in the Airbyte UI, and/or through certain pages of the Airbyte docs. - -## Beta -A beta release is considered stable and reliable with no backwards incompatible changes but has not been validated by a broader group of users. We expect to find and fix a few issues and bugs in the release before it’s ready for GA. - -### What you should know about a beta release - -- A beta release is generally feature-complete (features planned for the release have been mostly implemented) and does not include backward-incompatible/breaking API changes. -- Access may be enabled for all Airbyte users by default. Depending on the feature, you may enable the feature either from the Airbyte UI or by contacting Airbyte Support. Beta connectors are available to all users. -- Beta releases may be announced via email, in the Airbyte UI, and/or through certain pages of the Airbyte docs. - -## General availability (GA) -A generally available release has been deemed ready for use in a production environment and is officially supported by Airbyte. Its documentation is considered sufficient to support widespread adoption. - -### What you should know about a GA release - -- A GA release is feature-complete (features planned for the release have been fully implemented) and does not include backward-incompatible/breaking API changes. -- Access is enabled for all Airbyte users by default. Depending on the feature, you may enable the feature either from the Airbyte UI or by contacting Airbyte Support. -- GA releases may be announced via email, in the Airbyte UI, and/or through certain pages of the Airbyte docs. - -## Deprecated -A deprecated feature, product, or connector is no longer officially supported by Airbyte. It might continue to work for a period of time but Airbyte recommends that you migrate away from and avoid relying on deprecated releases. diff --git a/docs/project-overview/product-support-levels.md b/docs/project-overview/product-support-levels.md new file mode 100644 index 000000000000..47e533d90f40 --- /dev/null +++ b/docs/project-overview/product-support-levels.md @@ -0,0 +1,39 @@ +# Connector Support Levels + +The following table describes the support levels of Airbyte connectors. + +| | Certified | Custom | Community | +| --------------------------------- | -------------------------- | -------------------------- | ---------------------- | +| **Availability** | Available to all users | Available to all users | Available to all users | +| **Support: Cloud** | Supported* | Supported** | No Support | +| **Support: Powered by Airbyte** | Supported* | Supported** | No Support | +| **Support: Self-Managed Enterprise** | Supported* | Supported** | No Support | +| **Support: Community (OSS)** | Slack Support only | Slack Support only | No Support | +| **Who builds them?** | Either the community or the Airbyte team. | Anyone can build custom connectors. We recommend using our [Connector Builder](https://docs.airbyte.com/connector-development/connector-builder-ui/overview) or [Low-code CDK](https://docs.airbyte.com/connector-development/config-based/low-code-cdk-overview). | Typically they are built by the community. The Airbyte team may upgrade them to Certified at any time. | +| **Who maintains them?** | The Airbyte team | Users | Users | +| **Production Readiness** | Guaranteed by Airbyte | Not guaranteed | Not guaranteed | + +\*For Certified connectors, Official Support SLAs are only available to customers with Premium Support included in their contract. Otherwise, please use our support portal and we will address your issues as soon as possible. + +\*\*For Custom connectors, Official Support SLAs are only available to customers with Premium Support included in their contract. This support is provided with best efforts, and maintenance/upgrades are owned by the customer. + +## Certified + +A **Certified** connector is actively maintained and supported by the Airbyte team and maintains a high quality bar. It is production ready. + +### What you should know about Certified connectors: + +- Certified connectors are available to all users. +- These connectors have been tested and vetted in order to be certified and are production ready. +- Certified connectors should go through minimal breaking change but in the event an upgrade is needed users will be given an adequate upgrade window. + +## Community + +A **Community** connector is maintained by the Airbyte community until it becomes Certified. Airbyte has over 800 code contributors and 15,000 people in the Slack community to help. The Airbyte team is continually certifying Community connectors as usage grows. As these connectors are not maintained by Airbyte, we do not offer support SLAs around them, and we encourage caution when using them in production. + +### What you should know about Community connectors: + +- Community connectors are available to all users. +- Community connectors may be upgraded to Certified at any time, and we will notify users of these upgrades via our Slack Community and in our Connector Catalog. +- Community connectors might not be feature-complete (features planned for release are under development or not prioritized) and may include backward-incompatible/breaking API changes with no or short notice. +- Community connectors have no Support SLAs. diff --git a/docs/quickstart/add-a-source.md b/docs/quickstart/add-a-source.md index e6fbc1473109..2e59a7bc2751 100644 --- a/docs/quickstart/add-a-source.md +++ b/docs/quickstart/add-a-source.md @@ -1,18 +1,22 @@ # Add a Source -You can either follow this tutorial from the onboarding or through the UI, where you can first navigate to the `Sources` tab on the left bar. +Setting up a new source in Airbyte is a quick and simple process! When viewing the Airbyte UI, you'll see the main navigation bar on the left side of your screen. Click the `Sources` tab to bring up a list of all available sources. -Our demo source will pull data from an external API, which will pull down the information on one specified Pokémon. +![](../.gitbook/assets/add-a-source/getting-started-source-list.png) -To set it up, just follow the instructions on the screenshot below. +You can use the provided search bar, or simply scroll down the list to find the source you want to replicate data from. Let's use Google Sheets as an example. Clicking on the Google Sheets card will bring us to its setup page. -:::info +![](../.gitbook/assets/add-a-source/getting-started-source-page.png) + +The left half of the page contains a set of fields that you will have to fill out. In the **Source name** field, you can enter a name of your choosing to help you identify this instance of the connector. By default, this will be set to the name of the source (ie, `Google Sheets`). -You might have to wait ~30 seconds before the fields show up because it is the first time you're using Airbyte. +Each connector in Airbyte will have its own set of authentication methods and configurable parameters. In the case of Google Sheets, you can select one of two authentication methods (OAuth2.0 or a Service Account Key), and must provide the link to the Google Sheet you want to replicate. You can always refer to your source's provided setup guide for specific instructions on filling out each field. +:::info +Some sources will also have an **Optional Fields** tab. You can open this tab to view and configure any additional optional parameters that exist for the souce, but you do not have to do so to successfully set up the connector. ::: -![](../.gitbook/assets/getting-started-source.png) +Once you've filled out all the required fields, click on the **Set up source** button and Airbyte will run a check to verify the connection. Happy replicating! -Can't find the connectors that you want? Try your hand at easily building one yourself using our [Python CDK for HTTP API sources!](../connector-development/cdk-python/) +Can't find the connectors that you want? Try your hand at easily building one yourself using our [Connector Builder!](../connector-development/connector-builder-ui/overview.md) diff --git a/docs/reference/api/generated-api-html/index.html b/docs/reference/api/generated-api-html/index.html index 0a7a2d70b2d0..5dbff2a0eeae 100644 --- a/docs/reference/api/generated-api-html/index.html +++ b/docs/reference/api/generated-api-html/index.html @@ -184,7 +184,7 @@

Airbyte Configuration API

https://airbyte.io.

The Configuration API is an internal Airbyte API that is designed for communications between different Airbyte components.

    -
  • It's main purpose is to enable the Airbyte Engineering team to configure the internal state of Airbyte Cloud
  • +
  • Its main purpose is to enable the Airbyte Engineering team to configure the internal state of Airbyte Cloud
  • It is also sometimes used by OSS users to configure their own Self-Hosted Airbyte deployment (internal state, etc)

WARNING

@@ -199,7 +199,7 @@

Airbyte Configuration API

  • All endpoints are http POST methods.
  • All endpoints accept data via application/json request bodies. The API does not accept any data via query params.
  • -
  • The naming convention for endpoints is: localhost:8000/{VERSION}/{METHOD_FAMILY}/{METHOD_NAME} e.g. localhost:8000/v1/connections/create.
  • +
  • The naming convention for endpoints is: localhost:8000/api/{VERSION}/{METHOD_FAMILY}/{METHOD_NAME} e.g. localhost:8000/api/v1/connections/create.
  • For all update methods, the whole object must be passed in, even the fields that did not change.

Authentication (OSS):

diff --git a/docs/release_notes/destinations_v2.js b/docs/release_notes/destinations_v2.js index f8c8494d8f19..99eb227ded9d 100644 --- a/docs/release_notes/destinations_v2.js +++ b/docs/release_notes/destinations_v2.js @@ -84,8 +84,8 @@ export const SnowflakeMigrationGenerator = () => { let v2RawTableName = '"' + concatenateRawTableName(new_namespace, name) + '"'; let v1namespace = snowflakeConvertStreamName(og_namespace); let v1name = snowflakeConvertStreamName("_airbyte_raw_" + name); - return `CREATE SCHEMA IF NOT EXISTS "${raw_schema}"; -CREATE OR REPLACE TABLE "${raw_schema}".${v2RawTableName} ( + return `CREATE SCHEMA IF NOT EXISTS "${raw_schema.toUpperCase()}"; +CREATE OR REPLACE TABLE "${raw_schema.toUpperCase()}".${v2RawTableName.toUpperCase()} ( "_airbyte_raw_id" STRING NOT NULL PRIMARY KEY, "_airbyte_extracted_at" TIMESTAMP_TZ DEFAULT CURRENT_TIMESTAMP(), "_airbyte_loaded_at" TIMESTAMP_TZ, @@ -96,7 +96,7 @@ AS ( _airbyte_emitted_at AS "_airbyte_extracted_at", CAST(NULL AS TIMESTAMP_TZ) AS "_airbyte_loaded_at", _airbyte_data AS "_airbyte_data" - FROM ${v1namespace}.${v1name} + FROM ${v1namespace.toUpperCase()}.${v1name.toUpperCase()} )`; } return ( diff --git a/docs/release_notes/upgrading_to_destinations_v2.md b/docs/release_notes/upgrading_to_destinations_v2.md index c80b6eaffa4f..fd0c5f231d1e 100644 --- a/docs/release_notes/upgrading_to_destinations_v2.md +++ b/docs/release_notes/upgrading_to_destinations_v2.md @@ -25,6 +25,8 @@ The upgrade to Destinations V2 is handled by moving your connections to use [upd As a Cloud user, existing connections using legacy normalization will be paused on **November 1, 2023**. As an Open Source user, you may choose to upgrade at your convenience. However, destination connector versions prior to Destinations V2 will no longer be supported as of **Nov 1, 2023**. +Note that Destinations V2 also removes the option to _only_ replicate raw data. The vast majority of Airbyte users prefer typed final tables, and our future feature development will rely on this implementation. Learn more [below](#upgrading-as-a-user-of-raw-tables). + ### Breakdown of Breaking Changes The following table details the delivered data modified by Destinations V2: @@ -41,7 +43,11 @@ Whenever possible, we've taken this opportunity to use the best data type for st ## Quick Start to Upgrading -**Self-hosted Airbyte users will need to be on at least version 0.50.24 of the Airbte Platform.** +:::caution + +**[Airbyte Open Source Only]** You should upgrade to 0.50.24+ of the Airbyte Platform _before_ updating to Destinations V2. Failure to do so may cause upgraded connections to fail. + +::: The quickest path to upgrading is to click upgrade on any out-of-date connection in the UI: @@ -55,11 +61,7 @@ After upgrading the out-of-date destination to a [Destinations V2 compatible ver 4. The new raw tables will be typed and de-duplicated according to the Destinations V2 format. 5. Once typing and de-duplication has completed successfully, your previous final table will be replaced with the updated data. -:::caution - -Due to the amount of operations to be completed, this first sync after upgrading to Destination V2 **will be longer than normal**. Once your first sync has completed successfully, you may need to make changes to downstream models (dbt, sql, etc.) transforming data. See this [walkthrough of top changes to expect for more details](#updating-downstream-transformations). - -::: +Due to the amount of operations to be completed, the first sync after upgrading to Destination V2 **will be longer than normal**. Once your first sync has completed successfully, you may need to make changes to downstream models (dbt, sql, etc.) transforming data. See this [walkthrough of top changes to expect for more details](#updating-downstream-transformations). Pre-existing raw tables, SCD tables and "unnested" tables will always be left untouched. You can delete these at your convenience, but these tables will no longer be kept up-to-date by Airbyte syncs. Each destination version is managed separately, so if you have multiple destinations, they all need to be upgraded one by one. @@ -72,10 +74,6 @@ Versions are tied to the destination. When you update the destination, **all con - [Upgrading as a User of Raw Tables](#upgrading-as-a-user-of-raw-tables) - [Rolling back to Legacy Normalization](#oss-only-rolling-back-to-legacy-normalization) -:::info -If you were a Destinations V2 "Early Access" user, you will still need to opt-into the latest connector version. However, you will not experience the data migration and syncs will continue to work as they have been since the "early access" period began. -::: - ## Advanced Upgrade Paths ### Upgrading Connections One by One with Dual-Writing @@ -136,7 +134,9 @@ If you have written downstream transformations directly from the output of raw t - When you upgrade to a [Destinations V2 compatible version](#destinations-v2-effective-versions) of your destination, we will never alter your existing raw data. Although existing downstream dashboards will go stale, they will never be broken. - You can dual write by following the [steps above](#upgrading-connections-one-by-one-with-dual-writing) and copying your raw data to the schema of your newly created connection. -We may make further changes to raw tables in the future, as these tables are intended to be a staging ground for Airbyte to optimize the performance of your syncs. We cannot guarantee the same level of stability as for final tables in your destination schema. +We may make further changes to raw tables in the future, as these tables are intended to be a staging ground for Airbyte to optimize the performance of your syncs. We cannot guarantee the same level of stability as for final tables in your destination schema, nor will features like error handling be implemented in the raw tables. + +As a user previously not running Normalization, Upgrading to Destinations V2 will increase the compute costs in your destination data warehouse. This is because Destinations V2 will now be performing the operations to generate a final typed table. ### Upgrade Paths for Connections using CDC @@ -154,8 +154,8 @@ For each destination connector, Destinations V2 is effective as of the following | Destination Connector | Safe Rollback Version | Destinations V2 Compatible | | --------------------- | --------------------- | -------------------------- | -| BigQuery | 1.4.4 | 2.0.0+ | -| Snowflake | 2.0.0 | 3.0.0+ | +| BigQuery | 1.4.4 | 2.0.6+ | +| Snowflake | 2.0.0 | 3.1.0+ | | Redshift | 0.4.8 | 2.0.0+ | | MSSQL | 0.1.24 | 2.0.0+ | | MySQL | 0.1.20 | 2.0.0+ | @@ -164,7 +164,21 @@ For each destination connector, Destinations V2 is effective as of the following | DuckDB | 0.1.0 | 2.0.0+ | | Clickhouse | 0.2.3 | 2.0.0+ | -Note: If you encounter errors while upgrading from a V1 to a V2 destination, please reach out to support. It may be advantagous to only drop probematic V2 tables rather than to do a full reset, depending on tye type of error. +### [Open Source Only] Rolling Back to Legacy Normalization + +If you upgrade to Destinations V2 and start encountering issues, as an Open Source user you can optionally roll back. If you are running an outdated Airbyte Platform version (prior to `v0.50.24`), this may occur more frequently by accidentally upgrading to Destinations V2. However: + +- Rolling back will require resetting each of your upgraded connections. +- If you are hoping to receive support from the Airbyte team, you will need to re-upgrade to Destinations V2 by **November 1, 2023**. + +To roll back, follow these steps: + +1. In the Airbyte UI, go to the 'Settings page, then to 'Destinations'. +2. Manually type in the previous destination version you were running, or one of the versions listed in the table above. +3. Enter this older version to roll back to the previous connector version. +4. Reset all connections which synced at least once to a previously upgraded destination. To be safe, you may reset all connections sending data to a previously upgraded destination. + +If you are an Airbyte Cloud customer, and encounter errors while upgrading from a V1 to a V2 destination, please reach out to support. We do not always recommend doing a full reset, depending on the type of error. ## Destinations V2 Implementation Differences @@ -175,12 +189,6 @@ In addition to the changes which apply for all destinations described above, the 1. [Object and array properties](https://docs.airbyte.com/understanding-airbyte/supported-data-types/#the-types) are properly stored as JSON columns. Previously, we had used TEXT, which made querying sub-properties more difficult. - In certain cases, numbers within sub-properties with long decimal values will need to be converted to float representations due to a _quirk_ of Bigquery. Learn more [here](https://github.com/airbytehq/airbyte/issues/29594). -### Snowflake - -1. `destination-snowflake` is now case-sensitive, and was not previously. This means that if you have a source stream "users", `destination-snowflake` would have previously created a "USERS" table in your data warehouse. We now correctly create a "users" table. - - Note that to properly query case-sensitive tables and columns in Snowflake, you will need to quote your table and column names, e.g. `select "first_name" from "users";` - - If you are migrating from Destinations v1 to Destinations V2, we will leave your old "USERS" table, and create a new "users" table - please note the case sensitivity. - ## Updating Downstream Transformations _This section is targeted towards analysts updating downstream models after you've successfully upgraded to Destinations V2._ diff --git a/docs/snowflake-native-apps/linkedin-ads-ui.gif b/docs/snowflake-native-apps/linkedin-ads-ui.gif new file mode 100644 index 000000000000..db237252bed6 Binary files /dev/null and b/docs/snowflake-native-apps/linkedin-ads-ui.gif differ diff --git a/docs/snowflake-native-apps/linkedin-ads.md b/docs/snowflake-native-apps/linkedin-ads.md new file mode 100644 index 000000000000..d9c0b33a0f7a --- /dev/null +++ b/docs/snowflake-native-apps/linkedin-ads.md @@ -0,0 +1,171 @@ +# LinkedIn Ads Connector + +The LinkedIn Ads Connector by Airbyte is a Snowflake Native Application that allows you to extract data from your LinkedIn Ads account and load records into a Snowflake database of your choice. + +:::info +The Snowflake Native Apps platform is new and rapidly evolving. The LinkedIn Ads Connector by Airbyte is in _private preview_ and is subject to further development that may affect setup and configuration of the application. Please note that, at this time, only a full table refresh without dedupe is supported. +::: + +# Getting started + +## Prerequisites +A LinkedIn Ads account with permission to access data from accounts you want to sync. + +## Installing the App + +:::warning +Do not refresh the Apps page while the application is being installed. This may cause installation to fail. +::: + +1. Log into your Snowflake account. +2. On the left sidebar, click `Marketplace`. +3. Search for `Linkedin Ads Connector` by Airbyte or navigate to https://app.snowflake.com/marketplace/listing/GZTYZ9BCRSJ/airbyte-linkedin-ads-connector-by-airbyte +4. Click `Request`. This will send a request that we will manually service as soon as we can. +5. On the left sidebar, click `Apps`. +6. Under the `Recently Shared with You` section, you should see the `Linkedin Ads Connector by Airbyte`. Click `Get`. +7. Expand `Options`. + 1. You can rename the application or leave the default. This is how you will reference the application from a worksheet. + 2. Specify the warehouse that the application will be installed to. +8. Click `Get`. +9. Wait for the application to install. Once complete, the pop-up window should automatically close. + +You should now see the LinkedIn Ads Connector by Airbyte application under `Installed Apps`. You may need to refresh the page. + +## LinkedIn Ads Account +In order for the LinkedIn Ads Connector by Airbyte to query LinkedIn, you will need an account with the right permissions. Please follow the [LinkedIn Ads authentication guide](https://docs.airbyte.com/integrations/sources/linkedin-ads/#set-up-linkedin-ads-authentication-airbyte-open-source) for further information. + +## Snowflake Native App Authorizations + +:::note +By default the app will be installed using the name `AIRBYTE_LINKEDIN_ADS`, but if you renamed the app during installation, you will have to use that name as a reference. +::: + +1. Create the database where the app will access the authorization. This database can be different from the database where the sync will output records. +``` +CREATE DATABASE ; +USE ; +``` + +2. The native app will validate the output database and create it if it does not exist. In order to do that, the app needs access to the database: +``` +GRANT CREATE DATABASE ON ACCOUNT TO APPLICATION ; +``` + +3. You will need to allow outgoing network traffic based on the domain of the source. In the case of LinkedIn Ads, simply run: +``` +CREATE OR REPLACE NETWORK RULE linkedin_apis_network_rule + MODE = EGRESS + TYPE = HOST_PORT + VALUE_LIST = ('api.linkedin.com', 'www.linkedin.com', 'linkedin.com'); +``` + +:::note +As of 2023-09-13, the [Snowflake documentation](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) mentions that direct external access is a preview feature and that it is `available to all accounts on AWS` which might restrict the number of users able to use the connector. +::: + +4. Once you have external access configured, you need define your authorization/authentication. Provide the credentials to the app as such: +``` +CREATE OR REPLACE SECRET integration_linkedin_ads_oauth + TYPE = GENERIC_STRING + SECRET_STRING = '{ + "auth_method": "oAuth2.0", + "client_id": , + "client_secret": , + "refresh_token": + }'; +``` +... where `client_id`, `client_secret` and `refresh_token` are strings. For more information, see the [LinkedIn Ads authentication guide](https://docs.airbyte.com/integrations/sources/linkedin-ads/#set-up-linkedin-ads-authentication-airbyte-open-source). + +5. Once the network rule and the secret are defined in Snowflake, you need to make them available to the app by using an external access integration. +``` +CREATE OR REPLACE EXTERNAL ACCESS INTEGRATION integration_linkedin_ads + ALLOWED_NETWORK_RULES = (linkedin_apis_network_rule) + ALLOWED_AUTHENTICATION_SECRETS = (integration_linkedin_ads_oauth) + ENABLED = true; +``` + +6. Grant permission for the app to access the integration. +``` +GRANT USAGE ON INTEGRATION integration_linkedin_ads TO APPLICATION AIRBYTE_LINKEDIN_ADS; +``` + +7. Grant permissions for the app to access the database that houses the secret and read the secret. +``` +GRANT USAGE ON DATABASE TO APPLICATION AIRBYTE_LINKEDIN_ADS; +GRANT USAGE ON SCHEMA TO APPLICATION AIRBYTE_LINKEDIN_ADS; +GRANT READ ON SECRET integration_linkedin_ads_oauth TO APPLICATION AIRBYTE_LINKEDIN_ADS; +``` + + +## Configure a connection +Once this is all set up, you can now configure a connection. To do so, use the Streamlit app by going in the `Apps` section and selecting `AIRBYTE_LINKEDIN_ADS`. You will have to accept the Anaconda terms in order to use Streamlit. + +![](./linkedin-ads-ui.gif) + +Once you have access to the app, select `New Connection` and fill the following fields: + +--- + +`Secret` + +The name of the secret prefixed by which database and schema. Based on the previous steps: `..integration_linkedin_ads_oauth`. + +--- + +`External Access Integration` + +Name of the Snowflake integration where the secret and network rules are configured. Based on the previous steps: `integration_linkedin_ads`. + +--- + +`start_date` + +UTC date in the format 2020-09-17. Any data before this date will not be replicated. + +--- + +`account_ids` + +Leave empty, if you want to pull the data from all associated accounts. To specify individual account IDs to pull data from, separate them by a space. See the [LinkedIn Ads docs](https://www.linkedin.com/help/linkedin/answer/a424270/find-linkedin-ads-account-details) for more info. + +--- + +`Output Database` + +The database where the records will be saved. Snowflake's database naming restriction applies here. + +--- + +`Output Schema` + +The table where the schema will be saved. Snowflake's table naming restriction applies here. + +--- + +`Connection name` + +How the connection will be referred in the Streamlit app. + +--- + +`Replication Frequency` + +How often records are fetched. + +--- + +## Run a sync +Once a connection is configured, go in `Connections List` and click on `Sync Now` for the connection you want to sync. Once the sync is complete, you should be able to validate that the records have been stored in `.` + +### Supported Streams +As of now, all supported streams perform a full refresh. Incremental syncs are not yet supported. Here are the list of supported streams: +* Accounts +* Account Users +* Ad Analytics by Campaign +* Ad Analytics by Creative +* Campaigns +* Campaign Groups +* Creatives + +# Contact Us +snowflake-native-apps@airbyte.io diff --git a/docs/terraform-documentation.md b/docs/terraform-documentation.md index 416cf5e19a4f..84acc3ffc501 100644 --- a/docs/terraform-documentation.md +++ b/docs/terraform-documentation.md @@ -1,4 +1,4 @@ -# Airbtye Terraform Provider +# Airbyte Terraform Provider Airbyte's Terraform provider enables you to automate & version-control your Airbyte configuration as code. Save time managing Airbyte and collaborate on Airbyte configuration changes with your teammates. Airbyte's Terraform provider is built off our [Airbyte API](https://api.airbyte.com). diff --git a/docusaurus/docusaurus.config.js b/docusaurus/docusaurus.config.js index f3a9b258481a..5f80659091d3 100644 --- a/docusaurus/docusaurus.config.js +++ b/docusaurus/docusaurus.config.js @@ -1,9 +1,15 @@ // @ts-check // Note: type annotations allow type checking and IDEs autocompletion +const yaml = require('js-yaml'); +const fs = require("node:fs"); +const path = require("node:path"); + const lightCodeTheme = require("prism-react-renderer/themes/github"); const darkCodeTheme = require("prism-react-renderer/themes/dracula"); +const redirects = yaml.load(fs.readFileSync(path.join(__dirname, "redirects.yml"), "utf-8")); + /** @type {import('@docusaurus/types').Config} */ const config = { title: "Airbyte Documentation", @@ -24,81 +30,7 @@ const config = { "@docusaurus/plugin-client-redirects", { fromExtensions: ["html", "htm"], // /myPage.html -> /myPage - redirects: [ - // /docs/oldDoc -> /docs/newDoc - { - from: "/airbyte-pro", - to: "/airbyte-enterprise" - }, - { - from: "/upgrading-airbyte", - to: "/operator-guides/upgrading-airbyte", - }, - { - from: "/catalog", - to: "/understanding-airbyte/airbyte-protocol", - }, - { - from: "/integrations/sources/google-analytics-data-api", - to: "/integrations/sources/google-analytics-v4", - }, - { - from: "/integrations/sources/appstore", - to: "/integrations/sources/appstore-singer", - }, - { - from: "/project-overview/security", - to: "/operator-guides/security", - }, - { - from: "/operator-guides/securing-airbyte", - to: "/operator-guides/security", - }, - { - from: "/connector-development/config-based/", - to: "/connector-development/config-based/low-code-cdk-overview", - }, - { - from: "/project-overview/changelog", - to: "/category/release-notes", - }, - { - from: "/connector-development/config-based/understanding-the-yaml-file/stream-slicers/", - to: "/connector-development/config-based/understanding-the-yaml-file/partition-router", - }, - { - from: "/cloud/managing-airbyte-cloud", - to: "/category/using-airbyte-cloud", - }, - { - from: "/category/managing-airbyte-cloud", - to: "/category/using-airbyte-cloud", - }, - { - from: "/category/airbyte-open-source-quick-start", - to: "/category/getting-started" - }, - { - from: "/cloud/dbt-cloud-integration", - to: "/cloud/managing-airbyte-cloud/dbt-cloud-integration", - }, - { - from: "/cloud/managing-airbyte-cloud/review-sync-summary", - to: "/cloud/managing-airbyte-cloud/review-sync-history", - }, - { - from: "/cloud/managing-airbyte-cloud/review-connection-state", - to: "/cloud/managing-airbyte-cloud/manage-connection-state", - }, - { - from: "/cloud/managing-airbyte-cloud/edit-stream-configuration", - to: "/cloud/managing-airbyte-cloud/configuring-connections", - }, - // { - // from: '/some-lame-path', - // to: '/a-much-cooler-uri', - // }, - ], + redirects: redirects, }, ], () => ({ @@ -118,6 +50,10 @@ const config = { }), ], + clientModules: [ + require.resolve("./src/scripts/cloudStatus.js"), + ], + presets: [ [ "classic", @@ -135,10 +71,6 @@ const config = { theme: { customCss: require.resolve("./src/css/custom.css"), }, - gtag: { - trackingID: "UA-156258629-2", - anonymizeIP: true, - }, }), ], ], @@ -165,19 +97,13 @@ const config = { alt: "Simple, secure and extensible data integration", src: "img/logo-dark.png", srcDark: "img/logo-light.png", - width: 140, height: 40, }, items: [ { href: "https://airbyte.io/", position: "left", - label: "Home", - }, - { - href: "https://status.airbyte.io/", - label: "Status", - position: "left", + label: "About Airbyte", }, { href: "https://airbyte.com/tutorials", @@ -189,11 +115,25 @@ const config = { label: "Support", position: "left", }, + // --- Right side --- + { + href: "https://status.airbyte.com", + label: "Cloud Status", + id: "cloudStatusLink", + position: "right", + }, { href: "https://cloud.airbyte.io/signup?utm_campaign=22Q1_AirbyteCloudSignUpCampaign_Trial&utm_source=Docs&utm_content=NavBar", label: "Try Airbyte Cloud", - position: "left", + position: "right", + className: "header-button", }, + { + href: "https://github.com/airbytehq", + position: "right", + "aria-label": "Airbyte on GitHub", + className: "header-github-link", + } ], }, prism: { diff --git a/docusaurus/package.json b/docusaurus/package.json index afe1ee0b013d..338ef146bc38 100644 --- a/docusaurus/package.json +++ b/docusaurus/package.json @@ -80,8 +80,6 @@ "@docusaurus/module-type-aliases": "^2.1.0", "@docusaurus/plugin-client-redirects": "^2.1.0", "@docusaurus/plugin-debug": "^2.1.0", - "@docusaurus/plugin-google-analytics": "^2.1.0", - "@docusaurus/plugin-google-gtag": "^2.1.0", "@docusaurus/plugin-sitemap": "^2.1.0", "@docusaurus/preset-classic": "^2.1.0", "@docusaurus/theme-classic": "^2.1.0", @@ -100,6 +98,7 @@ "del": "6.1.1", "docusaurus-plugin-hubspot": "^1.0.0", "docusaurus-plugin-segment": "^1.0.3", + "js-yaml": "^4.1.0", "nth-check": "2.0.1", "postcss-convert-values": "5.1.2", "postcss-discard-comments": "5.1.2", diff --git a/docusaurus/redirects.yml b/docusaurus/redirects.yml new file mode 100644 index 000000000000..1014d9a7758c --- /dev/null +++ b/docusaurus/redirects.yml @@ -0,0 +1,35 @@ +# A list of URLs that should be redirected to new pathes +- from: /airbyte-pro + to: /airbyte-enterprise +- from: /upgrading-airbyte + to: /operator-guides/upgrading-airbyte +- from: /catalog + to: /understanding-airbyte/airbyte-protocol +- from: /integrations/sources/appstore + to: /integrations/sources/appstore-singer +- from: + - /project-overview/security + - /operator-guides/securing-airbyte + to: /operator-guides/security +- from: /connector-development/config-based/ + to: /connector-development/config-based/low-code-cdk-overview +- from: /project-overview/changelog + to: /category/release-notes +- from: /connector-development/config-based/understanding-the-yaml-file/stream-slicers/ + to: /connector-development/config-based/understanding-the-yaml-file/partition-router +- from: /cloud/managing-airbyte-cloud + to: /category/using-airbyte-cloud +- from: /category/managing-airbyte-cloud + to: /category/using-airbyte-cloud +- from: /category/airbyte-open-source-quick-start + to: /category/getting-started +- from: /cloud/dbt-cloud-integration + to: /cloud/managing-airbyte-cloud/dbt-cloud-integration +- from: /cloud/managing-airbyte-cloud/review-sync-summary + to: /cloud/managing-airbyte-cloud/review-sync-history +- from: /cloud/managing-airbyte-cloud/review-connection-state + to: /cloud/managing-airbyte-cloud/manage-connection-state +- from: /cloud/managing-airbyte-cloud/edit-stream-configuration + to: /cloud/managing-airbyte-cloud/configuring-connections +- from: /project-overview/product-release-stages + to: /project-overview/product-support-levels diff --git a/docusaurus/sidebars.js b/docusaurus/sidebars.js index c7c472554116..447c5ef35be8 100644 --- a/docusaurus/sidebars.js +++ b/docusaurus/sidebars.js @@ -511,7 +511,7 @@ module.exports = { label: "Roadmap", href: "https://go.airbyte.com/roadmap", }, - "project-overview/product-release-stages", + "project-overview/product-support-levels", "project-overview/slack-code-of-conduct", "project-overview/code-of-conduct", { diff --git a/docusaurus/src/components/ConnectorRegistry.jsx b/docusaurus/src/components/ConnectorRegistry.jsx index b9b4900d6092..3b81708e3192 100644 --- a/docusaurus/src/components/ConnectorRegistry.jsx +++ b/docusaurus/src/components/ConnectorRegistry.jsx @@ -16,13 +16,11 @@ async function fetchCatalog(url, setter) { Sorts connectors by release stage and then name */ function connectorSort(a, b) { - if (a.releaseStage_oss !== b.releaseStage_oss) { - if (a.releaseStage_oss === "generally_available") return -3; - if (b.releaseStage_oss === "generally_available") return 3; - if (a.releaseStage_oss === "beta") return -2; - if (b.releaseStage_oss === "beta") return 2; - if (a.releaseStage_oss === "alpha") return -1; - if (b.releaseStage_oss === "alpha") return 1; + if (a.supportLevel_oss !== b.supportLevel_oss) { + if (a.supportLevel_oss === "certified") return -2; + if (b.supportLevel_oss === "certified") return 2; + if (a.supportLevel_oss === "community") return -1; + if (b.supportLevel_oss === "community") return 1; } if (a.name_oss < b.name_oss) return -1; @@ -50,7 +48,7 @@ export default function ConnectorRegistry({ type }) { Connector Name Icon Links - Release Stage + Support Level OSS Cloud Docker Image @@ -82,7 +80,7 @@ export default function ConnectorRegistry({ type }) { 🐛 - {connector.releaseStage_oss} + {connector.supportLevel_oss} {connector.is_oss ? "✅" : "❌"} {connector.is_cloud ? "✅" : "❌"} diff --git a/docusaurus/src/css/custom.css b/docusaurus/src/css/custom.css index 8e48effb6770..f45fed5d151f 100644 --- a/docusaurus/src/css/custom.css +++ b/docusaurus/src/css/custom.css @@ -58,12 +58,58 @@ html[data-theme="dark"] .docusaurus-highlight-code-line { display: none; } -/* .navbar { - padding: 0 63px; -} */ +.navbar__logo img { + /* Correct for visual imbalance in the logo */ + transform: translateY(-2px); +} + +.navbar__items--right { + gap: 4px; +} + +.header-github-link:hover { + opacity: 0.6; +} + +.header-github-link::before { + content: ''; + width: 24px; + height: 24px; + display: flex; + background: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12'/%3E%3C/svg%3E") + no-repeat; +} -.navbar__brand { - margin: 0 75px; +[data-theme='dark'] .header-github-link::before { + background: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='white' d='M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12'/%3E%3C/svg%3E") + no-repeat; +} + +.navbar .header-button.navbar__link { + background: var(--ifm-color-primary); + color: white !important; + border-radius: 1.5em; +} + +.navbar .header-button svg { + display: none; +} + +.navbar .header-button:hover { + background: var(--ifm-color-primary-dark); +} + +.navbar .navbar__link { + color: var(--ifm-menu-color); +} + +.navbar .navbar__link:hover { + color: var(--ifm-color-primary-light); +} + +/* Disable external link icons. */ +.navbar .navbar__link svg { + display: none; } .navbar__link--active { @@ -87,6 +133,31 @@ html[data-theme="dark"] .docusaurus-highlight-code-line { background-color: var(--ifm-hover-overlay); } +#cloudStatusLink { + display: flex; + gap: 4px; + align-items: center; +} + +#cloudStatusLink::before { + content: ""; + display: inline-block; + height: 10px; + width: 10px; + border-radius: 100%; + background: #D1D1D1; + transition: background 0.3s ease; +} + +#cloudStatusLink.status-up::before, +#cloudStatusLink.status-undermaintenance::before { + background: #00B093; +} + +#cloudStatusLink.status-hasissues::before { + background: #ED8936; +} + .codeBlockContainer_I0IT { box-shadow: none !important; } diff --git a/docusaurus/src/scripts/cloudStatus.js b/docusaurus/src/scripts/cloudStatus.js new file mode 100644 index 000000000000..b9f70f128450 --- /dev/null +++ b/docusaurus/src/scripts/cloudStatus.js @@ -0,0 +1,30 @@ +import ExecutionEnvironment from "@docusaurus/ExecutionEnvironment"; + +if (ExecutionEnvironment.canUseDOM) { + function updateCloudStatus() { + // Load status from instatus and attach page status as CSS class + // https://instatus.com/help/widgets/custom + fetch("https://status.airbyte.com/summary.json") + .then((resp) => resp.json()) + .then((summary) => { + const status = summary.page.status; + const el = document.getElementById("cloudStatusLink"); + el.classList.forEach((className) => { + if (className.startsWith("status-")) { + el.classList.remove(className); + } + }); + el.classList.add(`status-${status.toLowerCase()}`) + }); + } + + setInterval(() => { + // Check Cloud status every 10 minutes + updateCloudStatus(); + }, 10 * 60 * 1000); + + setTimeout(() => { + // Wait 1 execution slot for first status load, since the navigation bar might not have rendered yet + updateCloudStatus(); + }); +} \ No newline at end of file diff --git a/docusaurus/static/img/logo-dark.png b/docusaurus/static/img/logo-dark.png index 1917e5c468d3..3aace85b4ade 100644 Binary files a/docusaurus/static/img/logo-dark.png and b/docusaurus/static/img/logo-dark.png differ diff --git a/docusaurus/static/img/logo-light.png b/docusaurus/static/img/logo-light.png index d300008f435a..52f9fa85c393 100644 Binary files a/docusaurus/static/img/logo-light.png and b/docusaurus/static/img/logo-light.png differ diff --git a/docusaurus/yarn.lock b/docusaurus/yarn.lock index 2a0eb7df9081..6c8b21c02e0d 100644 --- a/docusaurus/yarn.lock +++ b/docusaurus/yarn.lock @@ -1885,7 +1885,7 @@ react-json-view "^1.21.3" tslib "^2.4.0" -"@docusaurus/plugin-google-analytics@2.3.1", "@docusaurus/plugin-google-analytics@^2.1.0": +"@docusaurus/plugin-google-analytics@2.3.1": version "2.3.1" resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-2.3.1.tgz#e2e7db4cf6a7063e8ba5e128d4e413f4d6a0c862" integrity sha512-OHip0GQxKOFU8n7gkt3TM4HOYTXPCFDjqKbMClDD3KaDnyTuMp/Zvd9HSr770lLEscgPWIvzhJByRAClqsUWiQ== @@ -1895,7 +1895,7 @@ "@docusaurus/utils-validation" "2.3.1" tslib "^2.4.0" -"@docusaurus/plugin-google-gtag@2.3.1", "@docusaurus/plugin-google-gtag@^2.1.0": +"@docusaurus/plugin-google-gtag@2.3.1": version "2.3.1" resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-2.3.1.tgz#b8da54a60c0a50aca609c3643faef78cb4f247a0" integrity sha512-uXtDhfu4+Hm+oqWUySr3DNI5cWC/rmP6XJyAk83Heor3dFjZqDwCbkX8yWPywkRiWev3Dk/rVF8lEn0vIGVocA== diff --git a/gradle.properties b/gradle.properties index 74db58801985..a4ff0b051e86 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,4 +1,4 @@ -VERSION=0.50.25 +VERSION=0.50.30 # NOTE: some of these values are overwritten in CI! # NOTE: if you want to override this for your local machine, set overrides in ~/.gradle/gradle.properties diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index ef89f5aef35f..f398c33c4b08 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionPath=wrapper/dists distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-bin.zip networkTimeout=10000 zipStoreBase=GRADLE_USER_HOME -zipStorePath=wrapper/dists \ No newline at end of file +zipStorePath=wrapper/dists diff --git a/octavia-cli/README.md b/octavia-cli/README.md index 2529e1dbf94c..d5761a5d789e 100644 --- a/octavia-cli/README.md +++ b/octavia-cli/README.md @@ -178,7 +178,7 @@ headers: | ----------------------------------------- | ------------------------------------------------------------------------------------------ | | **`octavia init`** | Initialize required directories for the project. | | **`octavia list connectors sources`** | List all sources connectors available on the remote Airbyte instance. | -| **`octavia list connectors destination`** | List all destinations connectors available on the remote Airbyte instance. | +| **`octavia list connectors destinations`** | List all destinations connectors available on the remote Airbyte instance. | | **`octavia list workspace sources`** | List existing sources in current the Airbyte workspace. | | **`octavia list workspace destinations`** | List existing destinations in the current Airbyte workspace. | | **`octavia list workspace connections`** | List existing connections in the current Airbyte workspace. | diff --git a/octavia-cli/build.gradle b/octavia-cli/build.gradle index ea29a91ffa36..b20d1a7c5d83 100644 --- a/octavia-cli/build.gradle +++ b/octavia-cli/build.gradle @@ -10,16 +10,17 @@ airbytePython { moduleDirectory 'octavia_cli' } - -task generateApiClient(type: GenerateTask) { +def generateApiClient = tasks.register('generateApiClient', GenerateTask) { inputSpec = "$rootDir.absolutePath/airbyte-api/src/main/openapi/config.yaml" outputDir = "$buildDir/airbyte_api_client" generatorName = "python" packageName = "airbyte_api_client" } +tasks.register('generate').configure { + dependsOn generateApiClient +} -blackFormat.dependsOn generateApiClient -isortFormat.dependsOn generateApiClient -flakeCheck.dependsOn generateApiClient -installReqs.dependsOn generateApiClient +tasks.named('installReqs').configure { + dependsOn generateApiClient +} diff --git a/publish-repositories.gradle b/publish-repositories.gradle deleted file mode 100644 index 3496c5cce752..000000000000 --- a/publish-repositories.gradle +++ /dev/null @@ -1,10 +0,0 @@ -repositories { - maven { - name = 'cloudrepo' - url = 'https://airbyte.mycloudrepo.io/repositories/airbyte-public-jars' - credentials { - username System.getenv('CLOUDREPO_USER') - password System.getenv('CLOUDREPO_PASSWORD') - } - } -} diff --git a/run-ab-platform.sh b/run-ab-platform.sh index 017217b7b174..62aba7ed32ca 100755 --- a/run-ab-platform.sh +++ b/run-ab-platform.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=0.50.25 +VERSION=0.50.30 # Run away from anything even a little scary set -o nounset # -u exit if a variable is not set set -o errexit # -f exit for any command failure" diff --git a/settings.gradle b/settings.gradle index 370b82463b14..27bebf625269 100644 --- a/settings.gradle +++ b/settings.gradle @@ -23,7 +23,7 @@ pluginManagement { // Configure the gradle enterprise plugin to enable build scans. Enabling the plugin at the top of the settings file allows the build scan to record // as much information as possible. plugins { - id "com.gradle.enterprise" version "3.4.1" + id "com.gradle.enterprise" version "3.13.1" id 'com.github.burrunan.s3-build-cache' version "1.5" } @@ -40,18 +40,20 @@ gradleEnterprise { ext.isCiServer = System.getenv().containsKey("CI") +ext.isAirbyteCI = System.getenv().containsKey("RUN_IN_AIRBYTE_CI") buildCache { local { // Local build cache is dangerous as it might produce inconsistent results // in case developer modifies files while the build is running - enabled = false + enabled = isAirbyteCI } remote(com.github.burrunan.s3cache.AwsS3BuildCache) { region = 'us-east-2' bucket = 'airbyte-buildcache' prefix = 'cache/' push = isCiServer + enabled = !isAirbyteCI // Credentials will be taken from S3_BUILD_CACHE_... environment variables // anonymous access will be used if environment variables are missing } @@ -86,7 +88,7 @@ if (!System.getenv().containsKey("SUB_BUILD")) { if (!System.getenv().containsKey("SUB_BUILD") || System.getenv().get("SUB_BUILD") == "CDK" || System.getenv().get("SUB_BUILD") == "ALL_CONNECTORS") { include ':airbyte-commons' // this wouldn't be necessary if it wasn't from https://github.com/airbytehq/airbyte/blob/645558b74aab0b91fda1b4628b37b7095d92b4cc/build.gradle - include ':tools:code-generator:airbyteDocker' + include ':tools:code-generator' include ':airbyte-cdk:python' } diff --git a/tools/bin/build_image.sh b/tools/bin/build_image.sh index 14d17e1df92f..d31232ca8c39 100755 --- a/tools/bin/build_image.sh +++ b/tools/bin/build_image.sh @@ -7,7 +7,6 @@ PROJECT_DIR="$2" DOCKERFILE="$3" TAGGED_IMAGE="$4" ID_FILE="$5" -FOLLOW_SYMLINKS="$6" DOCKER_BUILD_ARCH="${DOCKER_BUILD_ARCH:-amd64}" # https://docs.docker.com/develop/develop-images/build_enhancements/ export DOCKER_BUILDKIT=1 @@ -18,34 +17,15 @@ assert_root cd "$PROJECT_DIR" -function validate_dockerignore() { - excludes_all=$(grep -w '^\*$' .dockerignore || true) - excludes_except=$(grep -w '^!.*' .dockerignore || true) - if [ -n "$excludes_all" ] || [ -n "$excludes_except" ]; then - error "Cannot include exclusion exceptions when following symlinks. Please use an exclude pattern that doesn't use exclude-all (e.g: *) or exclude-except (e.g: !/some/pattern)" - fi -} - args=( -f "$DOCKERFILE" -t "$TAGGED_IMAGE" --iidfile "$ID_FILE" ) -if [ "$FOLLOW_SYMLINKS" == "true" ]; then - exclusions=() - if [ -f ".dockerignore" ]; then - validate_dockerignore - exclusions+=(--exclude-from .dockerignore) - fi - # Docker does not follow symlinks in the build context. So we create a tar of the directory, following symlinks, and provide the archive to Docker - # to use as the build context - tar cL "${exclusions[@]}" . | docker build - "${args[@]}" +JDK_VERSION="${JDK_VERSION:-17.0.4}" +if [[ -z "${DOCKER_BUILD_PLATFORM}" ]]; then + docker build --build-arg JDK_VERSION="$JDK_VERSION" --build-arg DOCKER_BUILD_ARCH="$DOCKER_BUILD_ARCH" . "${args[@]}" else - JDK_VERSION="${JDK_VERSION:-17.0.4}" - if [[ -z "${DOCKER_BUILD_PLATFORM}" ]]; then - docker build --build-arg JDK_VERSION="$JDK_VERSION" --build-arg DOCKER_BUILD_ARCH="$DOCKER_BUILD_ARCH" . "${args[@]}" - else - docker build --build-arg JDK_VERSION="$JDK_VERSION" --build-arg DOCKER_BUILD_ARCH="$DOCKER_BUILD_ARCH" --platform="$DOCKER_BUILD_PLATFORM" . "${args[@]}" - fi + docker build --build-arg JDK_VERSION="$JDK_VERSION" --build-arg DOCKER_BUILD_ARCH="$DOCKER_BUILD_ARCH" --platform="$DOCKER_BUILD_PLATFORM" . "${args[@]}" fi diff --git a/tools/integrations/manage.sh b/tools/integrations/manage.sh index a3ba97e43807..9a5557b89371 100755 --- a/tools/integrations/manage.sh +++ b/tools/integrations/manage.sh @@ -64,7 +64,7 @@ cmd_build() { if [ "$run_tests" = false ] ; then echo "Building and skipping unit tests + integration tests..." - ./gradlew --no-daemon --scan "$(_to_gradle_path "$path" build)" -x test + ./gradlew --no-daemon --scan "$(_to_gradle_path "$path" build)" -x check else echo "Building and running unit tests + integration tests..." ./gradlew --no-daemon --scan "$(_to_gradle_path "$path" build)"